UNPKG

@sanity/util

Version:

Utilities shared across projects of Sanity

1 lines 1.57 kB
{"version":3,"file":"fs.mjs","sources":["../src/fsTools.ts"],"sourcesContent":["import fs from 'node:fs/promises'\nimport os from 'node:os'\nimport path from 'node:path'\n\nexport async function pathIsEmpty(dir: string): Promise<boolean> {\n try {\n const content = await fs.readdir(absolutify(dir))\n return content.length === 0\n } catch (err) {\n if (err.code === 'ENOENT') {\n return true\n }\n\n throw err\n }\n}\n\nexport function expandHome(filePath: string): string {\n if (\n filePath.charCodeAt(0) === 126\n /* ~ */\n ) {\n if (\n filePath.charCodeAt(1) === 43\n /* + */\n ) {\n return path.join(process.cwd(), filePath.slice(2))\n }\n\n const home = os.homedir()\n return home ? path.join(home, filePath.slice(1)) : filePath\n }\n\n return filePath\n}\n\nexport function absolutify(dir: string): string {\n const pathName = expandHome(dir)\n return path.isAbsolute(pathName) ? pathName : path.resolve(process.cwd(), pathName)\n}\n"],"names":[],"mappings":";;;AAIA,eAAsB,YAAY,KAA+B;AAC/D,MAAI;AAEF,YADgB,MAAM,GAAG,QAAQ,WAAW,GAAG,CAAC,GACjC,WAAW;AAAA,EAC5B,SAAS,KAAK;AACZ,QAAI,IAAI,SAAS;AACf,aAAO;AAGT,UAAM;AAAA,EACR;AACF;AAEO,SAAS,WAAW,UAA0B;AACnD,MACE,SAAS,WAAW,CAAC,MAAM,KAE3B;AACA,QACE,SAAS,WAAW,CAAC,MAAM;AAG3B,aAAO,KAAK,KAAK,QAAQ,IAAA,GAAO,SAAS,MAAM,CAAC,CAAC;AAGnD,UAAM,OAAO,GAAG,QAAA;AAChB,WAAO,OAAO,KAAK,KAAK,MAAM,SAAS,MAAM,CAAC,CAAC,IAAI;AAAA,EACrD;AAEA,SAAO;AACT;AAEO,SAAS,WAAW,KAAqB;AAC9C,QAAM,WAAW,WAAW,GAAG;AAC/B,SAAO,KAAK,WAAW,QAAQ,IAAI,WAAW,KAAK,QAAQ,QAAQ,IAAA,GAAO,QAAQ;AACpF;"}