one
Version:
One is a React framework for web, iOS, and Android apps.
1 lines • 1.86 kB
Source Map (JSON)
{"version":3,"file":"trackLoaderDependencies.js","names":[],"sources":["esm/utils/trackLoaderDependencies.js"],"sourcesContent":["import { AsyncLocalStorage } from \"node:async_hooks\";\nimport { _registerWatchFileImpl } from \"./watchFile\";\nconst LOADER_DEPS_KEY = \"__oneLoaderDepsContext\";\nconst LOADER_DEPS_STORE = {\n get current() {\n if (globalThis[LOADER_DEPS_KEY]) return globalThis[LOADER_DEPS_KEY];\n const als = new AsyncLocalStorage();\n globalThis[LOADER_DEPS_KEY] = als;\n return als;\n }\n};\nconst debugLoaderDeps = process.env.ONE_DEBUG_LOADER_DEPS;\nfunction watchFileImpl(path) {\n const store = LOADER_DEPS_STORE.current.getStore();\n if (store) {\n store.deps.add(path);\n }\n}\n_registerWatchFileImpl(watchFileImpl);\nasync function trackLoaderDependencies(fn) {\n const deps = /* @__PURE__ */ new Set();\n const context = LOADER_DEPS_STORE.current;\n const result = await context.run({ deps }, async () => {\n return await fn();\n });\n if (debugLoaderDeps && deps.size > 0) {\n console.info(\"[loader-deps] tracked dependencies:\", [...deps]);\n }\n return {\n result,\n dependencies: deps\n };\n}\nexport {\n trackLoaderDependencies\n};\n//# sourceMappingURL=trackLoaderDependencies.js.map\n"],"mappings":";;;;AAEA,MAAM,kBAAkB;AACxB,MAAM,oBAAoB,EACxB,IAAI,UAAU;CACZ,IAAI,WAAW,kBAAkB,OAAO,WAAW;CACnD,MAAM,MAAM,IAAI,kBAAkB;CAClC,WAAW,mBAAmB;CAC9B,OAAO;AACT,EACF;AACA,MAAM,kBAAkB,QAAQ,IAAI;AACpC,SAAS,cAAc,MAAM;CAC3B,MAAM,QAAQ,kBAAkB,QAAQ,SAAS;CACjD,IAAI,OAAO;EACT,MAAM,KAAK,IAAI,IAAI;CACrB;AACF;AACA,uBAAuB,aAAa;AACpC,eAAe,wBAAwB,IAAI;CACzC,MAAM,uBAAuB,IAAI,IAAI;CACrC,MAAM,UAAU,kBAAkB;CAClC,MAAM,SAAS,MAAM,QAAQ,IAAI,EAAE,KAAK,GAAG,YAAY;EACrD,OAAO,MAAM,GAAG;CAClB,CAAC;CACD,IAAI,mBAAmB,KAAK,OAAO,GAAG;EACpC,QAAQ,KAAK,uCAAuC,CAAC,GAAG,IAAI,CAAC;CAC/D;CACA,OAAO;EACL;EACA,cAAc;CAChB;AACF"}