UNPKG

one

Version:

One is a React framework for web, iOS, and Android apps.

1 lines • 2.96 kB
{"version":3,"file":"findDepsToOptimize.js","names":[],"sources":["esm/vite/findDepsToOptimize.js"],"sourcesContent":["import fs from \"node:fs/promises\";\nimport { createRequire } from \"node:module\";\nimport path, { dirname } from \"node:path\";\nimport FSExtra from \"fs-extra\";\nasync function getAllDependencies(root, depth = 20) {\n if (depth === 0) {\n return [];\n }\n const pkgJsonPath = await findClosestPkgJsonPath(root);\n if (!pkgJsonPath) {\n throw new Error(`Cannot find package.json from ${root}`);\n }\n return await crawl(pkgJsonPath, depth - 1);\n}\nasync function crawl(pkgJsonPath, depth = Number.POSITIVE_INFINITY) {\n const pkgJson = await FSExtra.readJson(pkgJsonPath).catch((e) => {\n throw new Error(`Unable to read ${pkgJsonPath}`, { cause: e });\n });\n let dependencies = pkgJson.dependencies ? Object.keys(pkgJson.dependencies) : [];\n await Promise.all(\n dependencies.map(async (depName) => {\n try {\n const resolved = createRequire(dirname(pkgJsonPath)).resolve(depName);\n const subDeps = await getAllDependencies(resolved, depth - 1);\n if (subDeps) {\n dependencies = [...dependencies, ...subDeps];\n }\n } catch (err) {\n }\n })\n );\n return [...new Set(dependencies)];\n}\nasync function findClosestPkgJsonPath(dir, predicate) {\n if (dir.endsWith(\"package.json\")) {\n dir = path.dirname(dir);\n }\n while (dir) {\n const pkg = path.join(dir, \"package.json\");\n try {\n const stat = await fs.stat(pkg);\n if (stat.isFile() && (!predicate || await predicate(pkg))) {\n return pkg;\n }\n } catch {\n }\n const nextDir = path.dirname(dir);\n if (nextDir === dir) break;\n dir = nextDir;\n }\n return void 0;\n}\nexport {\n getAllDependencies\n};\n//# sourceMappingURL=findDepsToOptimize.js.map\n"],"mappings":";;;;;;AAIA,eAAe,mBAAmB,MAAM,QAAQ,IAAI;CAClD,IAAI,UAAU,GAAG;EACf,OAAO,CAAC;CACV;CACA,MAAM,cAAc,MAAM,uBAAuB,IAAI;CACrD,IAAI,CAAC,aAAa;EAChB,MAAM,IAAI,MAAM,iCAAiC,MAAM;CACzD;CACA,OAAO,MAAM,MAAM,aAAa,QAAQ,CAAC;AAC3C;AACA,eAAe,MAAM,aAAa,QAAQ,OAAO,mBAAmB;CAClE,MAAM,UAAU,MAAM,QAAQ,SAAS,WAAW,CAAC,CAAC,OAAO,MAAM;EAC/D,MAAM,IAAI,MAAM,kBAAkB,eAAe,EAAE,OAAO,EAAE,CAAC;CAC/D,CAAC;CACD,IAAI,eAAe,QAAQ,eAAe,OAAO,KAAK,QAAQ,YAAY,IAAI,CAAC;CAC/E,MAAM,QAAQ,IACZ,aAAa,IAAI,OAAO,YAAY;EAClC,IAAI;GACF,MAAM,WAAW,cAAc,QAAQ,WAAW,CAAC,CAAC,CAAC,QAAQ,OAAO;GACpE,MAAM,UAAU,MAAM,mBAAmB,UAAU,QAAQ,CAAC;GAC5D,IAAI,SAAS;IACX,eAAe,CAAC,GAAG,cAAc,GAAG,OAAO;GAC7C;EACF,SAAS,KAAK,CACd;CACF,CAAC,CACH;CACA,OAAO,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC;AAClC;AACA,eAAe,uBAAuB,KAAK,WAAW;CACpD,IAAI,IAAI,SAAS,cAAc,GAAG;EAChC,MAAM,KAAK,QAAQ,GAAG;CACxB;CACA,OAAO,KAAK;EACV,MAAM,MAAM,KAAK,KAAK,KAAK,cAAc;EACzC,IAAI;GACF,MAAM,OAAO,MAAM,GAAG,KAAK,GAAG;GAC9B,IAAI,KAAK,OAAO,MAAM,CAAC,aAAa,MAAM,UAAU,GAAG,IAAI;IACzD,OAAO;GACT;EACF,QAAQ,CACR;EACA,MAAM,UAAU,KAAK,QAAQ,GAAG;EAChC,IAAI,YAAY,KAAK;EACrB,MAAM;CACR;CACA,OAAO,KAAK;AACd"}