{"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/utils/modules.ts"],"names":[],"mappings":";;AAAA,uCAAiD;AAEjD;;;;GAIG;AACH,KAAK,UAAU,SAAS,CAAC,IAAY;IACnC,IAAI;QACF,OAAO,MAAM,eAAI,CAAC,IAAI,CAAC,CAAC;KACzB;IAAC,WAAM;QACN,OAAO,IAAI,CAAC;KACb;AACH,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,IAAY;;IAChD,mBAAO,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC,0CAAE,MAAM,qCAAM,KAAK,CAAC;AACpD,CAAC;AAFD,0CAEC;AAEM,KAAK,UAAU,oBAAoB,CAAC,IAAY;;IACrD,mBAAO,CAAC,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC,0CAAE,WAAW,qCAAM,KAAK,CAAC;AACzD,CAAC;AAFD,oDAEC;AAED,SAAgB,UAAU,CAAC,IAAY;IACrC,IAAI;QACF,OAAO,mBAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;KAChC;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAND,gCAMC","sourcesContent":["import { stat, Stats, statSync } from 'fs-extra';\n\n/**\n * A non-failing version of async FS stat.\n *\n * @param file\n */\nasync function statAsync(file: string): Promise {\n try {\n return await stat(file);\n } catch {\n return null;\n }\n}\n\nexport async function fileExistsAsync(file: string): Promise {\n return (await statAsync(file))?.isFile() ?? false;\n}\n\nexport async function directoryExistsAsync(file: string): Promise {\n return (await statAsync(file))?.isDirectory() ?? false;\n}\n\nexport function fileExists(file: string): boolean {\n try {\n return statSync(file).isFile();\n } catch (e) {\n return false;\n }\n}\n"]}