@thomas.f/prnext 0.1.17-alpha → 0.1.19-alpha

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/README.md +27 -868
  2. package/build/actions.mjs +27 -15
  3. package/build/analyze.mjs +180 -24
  4. package/build/app-config.mjs +13 -0
  5. package/build/app-static.mjs +34 -12
  6. package/build/app-styles.mjs +79 -0
  7. package/build/app.mjs +122 -46
  8. package/build/bundle-runtime.mjs +22 -9
  9. package/build/cache-components.mjs +1 -1
  10. package/build/cache-handlers.mjs +1 -1
  11. package/build/compact-css.mjs +53 -0
  12. package/build/compilation-cache.mjs +269 -0
  13. package/build/compilation-store.mjs +142 -0
  14. package/build/compiler.mjs +34 -10
  15. package/build/config.mjs +34 -3
  16. package/build/create.mjs +239 -0
  17. package/build/css-modules.mjs +56 -12
  18. package/build/deployment-assets.mjs +89 -0
  19. package/build/deployment-config.mjs +18 -0
  20. package/build/dev-css-assets.mjs +173 -0
  21. package/build/dev-css-update.mjs +18 -14
  22. package/build/dev-dependencies.mjs +1 -1
  23. package/build/dev-discovery.mjs +3 -3
  24. package/build/dev-lazy-build.mjs +77 -0
  25. package/build/dev.mjs +15 -8
  26. package/build/dynamic.mjs +14 -7
  27. package/build/edge.mjs +3 -3
  28. package/build/fonts.mjs +1 -1
  29. package/build/framework-imports.mjs +15 -5
  30. package/build/html-only-config.mjs +53 -0
  31. package/build/html-only-graph.mjs +67 -0
  32. package/build/incremental.mjs +112 -18
  33. package/build/index.mjs +90 -28
  34. package/build/instrumentation.mjs +30 -0
  35. package/build/lazy-dynamic-imports.mjs +137 -0
  36. package/build/metadata-routes.mjs +1 -1
  37. package/build/migrate.mjs +4 -4
  38. package/build/migration-audit.mjs +19 -31
  39. package/build/migration-imports.mjs +245 -0
  40. package/build/migration-scenarios-runner.mjs +73 -0
  41. package/build/migration-scenarios.mjs +72 -0
  42. package/build/native-discovery.mjs +65 -5
  43. package/build/native-packages.mjs +2 -0
  44. package/build/native-type-config.mjs +37 -0
  45. package/build/npm-packages.mjs +1 -0
  46. package/build/persistent-cache.mjs +18 -3
  47. package/build/precompress.mjs +1 -1
  48. package/build/prerender-cache.mjs +70 -0
  49. package/build/prerender-config.mjs +29 -0
  50. package/build/prerender-pages.mjs +19 -9
  51. package/build/prerender-pool.mjs +165 -0
  52. package/build/prerender-process-worker.mjs +58 -0
  53. package/build/prerender-worker.mjs +5 -5
  54. package/build/production-builder.mjs +59 -10
  55. package/build/react-compiler-report.mjs +225 -0
  56. package/build/react-compiler.mjs +139 -0
  57. package/build/runtime-contract.mjs +2 -2
  58. package/build/standalone.mjs +21 -3
  59. package/build/static-export.mjs +4 -4
  60. package/build/styles.mjs +6 -4
  61. package/build/transform.mjs +1 -1
  62. package/build/typed-routes.mjs +4 -0
  63. package/build/typescript-dev.mjs +35 -8
  64. package/build/typescript-native-worker.mjs +55 -0
  65. package/build/typescript-native.mjs +18 -0
  66. package/build/typescript-toolchain.mjs +19 -0
  67. package/build/typescript.mjs +6 -4
  68. package/build/webpack-graph.mjs +19 -6
  69. package/build/worker-memory.mjs +9 -0
  70. package/cli.mjs +70 -5
  71. package/compat/activity-cache.cjs +26 -0
  72. package/compat/after.cjs +6 -4
  73. package/compat/app-dynamic.cjs +12 -1
  74. package/compat/app-layout-context.cjs +52 -2
  75. package/compat/base64.cjs +10 -0
  76. package/compat/cache-handlers.cjs +15 -3
  77. package/compat/cache-wire.cjs +28 -0
  78. package/compat/cache.cjs +2 -1
  79. package/compat/cache.d.cts +4 -0
  80. package/compat/cookies.cjs +21 -5
  81. package/compat/data-cache.cjs +12 -8
  82. package/compat/flight-delta.cjs +152 -0
  83. package/compat/headers.cjs +4 -2
  84. package/compat/incremental-cache.cjs +20 -7
  85. package/compat/index.d.ts +69 -4
  86. package/compat/link.cjs +13 -10
  87. package/compat/navigation-authorization.cjs +9 -0
  88. package/compat/navigation-stages.cjs +19 -0
  89. package/compat/offline-store.cjs +11 -0
  90. package/compat/offline.cjs +5 -0
  91. package/compat/offline.d.cts +2 -0
  92. package/compat/redis-cache.cjs +201 -0
  93. package/compat/redis-cache.d.cts +37 -0
  94. package/compat/server-primitives.cjs +31 -11
  95. package/compat/server.d.cts +15 -2
  96. package/compat/static-generation.cjs +7 -0
  97. package/compat/use-cache.cjs +3 -0
  98. package/docs/ai/compatibility.md +248 -2
  99. package/docs/ai/data.md +165 -5
  100. package/docs/ai/deployment.md +158 -0
  101. package/docs/ai/quickstart.md +29 -4
  102. package/docs/ai/routing.md +93 -0
  103. package/docs/ai/troubleshooting.md +116 -2
  104. package/package.json +40 -9
  105. package/runtime/action-client.mjs +10 -4
  106. package/runtime/action-server.mjs +2 -0
  107. package/runtime/app-client.mjs +316 -92
  108. package/runtime/app-content.mjs +4 -3
  109. package/runtime/app-partial-client.mjs +3 -0
  110. package/runtime/app-partial.mjs +1 -1
  111. package/runtime/app-prefetch-constants.mjs +4 -0
  112. package/runtime/app-prefetch.mjs +2 -3
  113. package/runtime/app-render-key.mjs +5 -0
  114. package/runtime/app-render.mjs +88 -28
  115. package/runtime/app-routing.mjs +22 -9
  116. package/runtime/app-static.mjs +18 -8
  117. package/runtime/app-stream-html.mjs +10 -53
  118. package/runtime/app-style-selection.mjs +34 -0
  119. package/runtime/app-styles.mjs +154 -0
  120. package/runtime/atomic-file.mjs +27 -0
  121. package/runtime/cache-components-rsc.mjs +7 -2
  122. package/runtime/cache-request.mjs +2 -1
  123. package/runtime/deployment-client.mjs +19 -0
  124. package/runtime/dev-client.mjs +13 -3
  125. package/runtime/dev-compiler-broker.mjs +42 -0
  126. package/runtime/dev-file-changes.mjs +123 -8
  127. package/runtime/dev-indicator.mjs +8 -3
  128. package/runtime/dev-lazy-imports.mjs +121 -0
  129. package/runtime/dev-lazy-staging.mjs +14 -0
  130. package/runtime/dev-lazy-tool.mjs +16 -0
  131. package/runtime/dev-style-retention.mjs +15 -0
  132. package/runtime/development.mjs +83 -25
  133. package/runtime/document.mjs +1 -1
  134. package/runtime/edge.mjs +6 -5
  135. package/runtime/fetch-cache.mjs +10 -8
  136. package/runtime/flight-delta.mjs +74 -0
  137. package/runtime/flight-tap.mjs +28 -0
  138. package/runtime/fs.mjs +15 -8
  139. package/runtime/html-only.mjs +27 -0
  140. package/runtime/http.mjs +2 -0
  141. package/runtime/incremental-cache.mjs +25 -4
  142. package/runtime/instrumentation.mjs +49 -0
  143. package/runtime/lazy-import-client.mjs +38 -0
  144. package/runtime/navigation-recovery.mjs +36 -0
  145. package/runtime/navigation.mjs +7 -0
  146. package/runtime/node-html-stream.mjs +47 -0
  147. package/runtime/pages-client.mjs +14 -7
  148. package/runtime/pages-navigation.mjs +48 -63
  149. package/runtime/prefetch-scheduler.mjs +110 -0
  150. package/runtime/profile.mjs +14 -0
  151. package/runtime/profiles.json +2 -2
  152. package/runtime/render.mjs +3 -0
  153. package/runtime/route-pattern.mjs +44 -0
  154. package/runtime/rsc-worker.mjs +34 -12
  155. package/runtime/trace.mjs +78 -0
  156. package/runtime/watch-project.mjs +19 -15
  157. package/runtime/worker.mjs +70 -26
  158. package/vendor/nft/LICENSE +7 -0
  159. package/vendor/nft/README.md +16 -0
  160. package/vendor/nft/out/analyze.d.ts +8 -0
  161. package/vendor/nft/out/analyze.js +1216 -0
  162. package/vendor/nft/out/analyze.js.map +1 -0
  163. package/vendor/nft/out/cli.d.ts +2 -0
  164. package/vendor/nft/out/cli.js +94 -0
  165. package/vendor/nft/out/cli.js.map +1 -0
  166. package/vendor/nft/out/fs.d.ts +22 -0
  167. package/vendor/nft/out/fs.js +106 -0
  168. package/vendor/nft/out/fs.js.map +1 -0
  169. package/vendor/nft/out/index.d.ts +4 -0
  170. package/vendor/nft/out/index.js +25 -0
  171. package/vendor/nft/out/index.js.map +1 -0
  172. package/vendor/nft/out/node-file-trace.d.ts +41 -0
  173. package/vendor/nft/out/node-file-trace.js +380 -0
  174. package/vendor/nft/out/node-file-trace.js.map +1 -0
  175. package/vendor/nft/out/resolve-dependency.d.ts +6 -0
  176. package/vendor/nft/out/resolve-dependency.js +427 -0
  177. package/vendor/nft/out/resolve-dependency.js.map +1 -0
  178. package/vendor/nft/out/types.d.ts +66 -0
  179. package/vendor/nft/out/types.js +2 -0
  180. package/vendor/nft/out/types.js.map +1 -0
  181. package/vendor/nft/out/utils/ast-helpers.js +49 -0
  182. package/vendor/nft/out/utils/ast-helpers.js.map +1 -0
  183. package/vendor/nft/out/utils/binary-locators.js +88 -0
  184. package/vendor/nft/out/utils/binary-locators.js.map +1 -0
  185. package/vendor/nft/out/utils/get-package-base.js +30 -0
  186. package/vendor/nft/out/utils/get-package-base.js.map +1 -0
  187. package/vendor/nft/out/utils/interop-require.js +24 -0
  188. package/vendor/nft/out/utils/interop-require.js.map +1 -0
  189. package/vendor/nft/out/utils/node-version.js +10 -0
  190. package/vendor/nft/out/utils/node-version.js.map +1 -0
  191. package/vendor/nft/out/utils/sharedlib-emit.js +33 -0
  192. package/vendor/nft/out/utils/sharedlib-emit.js.map +1 -0
  193. package/vendor/nft/out/utils/special-cases.js +347 -0
  194. package/vendor/nft/out/utils/special-cases.js.map +1 -0
  195. package/vendor/nft/out/utils/static-eval.js +579 -0
  196. package/vendor/nft/out/utils/static-eval.js.map +1 -0
  197. package/vendor/nft/out/utils/types.js +2 -0
  198. package/vendor/nft/out/utils/types.js.map +1 -0
  199. package/vendor/nft/out/utils/wrappers.js +659 -0
  200. package/vendor/nft/out/utils/wrappers.js.map +1 -0
  201. package/vendor/nft/package.json +4 -0
  202. package/vendor/nft/upstream.json +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,94 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const path_1 = require("path");
5
+ const graceful_fs_1 = require("graceful-fs");
6
+ const { copyFile, mkdir, rm } = graceful_fs_1.promises;
7
+ const node_file_trace_1 = require("./node-file-trace");
8
+ function printStack(file, reasons, stdout, cwd) {
9
+ stdout.push(file);
10
+ const reason = reasons.get(file);
11
+ if (!reason ||
12
+ !reason.parents ||
13
+ (reason.type.length === 1 &&
14
+ reason.type.includes('initial') &&
15
+ reason.parents.size === 0)) {
16
+ return;
17
+ }
18
+ for (let parent of reason.parents) {
19
+ printStack(parent, reasons, stdout, cwd);
20
+ }
21
+ }
22
+ async function cli(action = process.argv[2], entrypoint = process.argv[3], exitpoint = process.argv[4], outputDir = 'dist', cwd = process.cwd()) {
23
+ const opts = {
24
+ ts: true,
25
+ base: cwd,
26
+ mixedModules: true,
27
+ log: action == 'print' || action == 'build',
28
+ };
29
+ const { fileList, esmFileList, warnings, reasons } = await (0, node_file_trace_1.nodeFileTrace)([entrypoint], opts);
30
+ const allFiles = [...fileList].concat([...esmFileList]).sort();
31
+ const stdout = [];
32
+ if (action === 'print') {
33
+ stdout.push('FILELIST:');
34
+ stdout.push(...allFiles);
35
+ stdout.push('\n');
36
+ if (warnings.size > 0) {
37
+ stdout.push('WARNINGS:');
38
+ for (var warning of warnings) {
39
+ stdout.push(warning.toString());
40
+ }
41
+ }
42
+ }
43
+ else if (action === 'build') {
44
+ await rm((0, path_1.join)(cwd, outputDir), { recursive: true, force: true });
45
+ for (const f of allFiles) {
46
+ const src = (0, path_1.join)(cwd, f);
47
+ const dest = (0, path_1.join)(cwd, outputDir, f);
48
+ const dir = (0, path_1.dirname)(dest);
49
+ await mkdir(dir, { recursive: true });
50
+ await copyFile(src, dest);
51
+ }
52
+ }
53
+ else if (action === 'size') {
54
+ const isSymbolicLink = (m) => (m & 61440) === 40960;
55
+ let bytes = 0;
56
+ for (const f of allFiles) {
57
+ const lstat = (0, graceful_fs_1.lstatSync)(f);
58
+ if (isSymbolicLink(lstat.mode)) {
59
+ bytes += lstat.size;
60
+ }
61
+ else {
62
+ const stat = (0, graceful_fs_1.statSync)(f);
63
+ bytes += stat.size;
64
+ }
65
+ }
66
+ stdout.push(`${bytes} bytes total`);
67
+ }
68
+ else if (action === 'why') {
69
+ if (!exitpoint) {
70
+ throw new Error('Expected additional argument for "why" action');
71
+ }
72
+ const normalizedExitPoint = ((0, path_1.isAbsolute)(exitpoint) ? (0, path_1.relative)(cwd, exitpoint) : exitpoint).replace(/[/\\]/g, path_1.sep);
73
+ printStack(normalizedExitPoint, reasons, stdout, cwd);
74
+ }
75
+ else {
76
+ stdout.push(`△ nft ${require('../package.json').version}`);
77
+ stdout.push('');
78
+ stdout.push('Usage:');
79
+ stdout.push('');
80
+ stdout.push(` $ nft [command] <file>`);
81
+ stdout.push('');
82
+ stdout.push('Commands:');
83
+ stdout.push('');
84
+ stdout.push(' build [entrypoint] trace and copy to the dist directory');
85
+ stdout.push(' print [entrypoint] trace and print to stdout');
86
+ stdout.push(' size [entrypoint] trace and print size in bytes');
87
+ stdout.push(' why [entrypoint] [file] trace and print stack why file was included');
88
+ }
89
+ return stdout.join('\n');
90
+ }
91
+ if (require.main === module) {
92
+ cli().then(console.log).catch(console.error);
93
+ }
94
+ module.exports = cli;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { Stats } from 'fs';
2
+ export declare class CachedFileSystem {
3
+ private fileCache;
4
+ private statCache;
5
+ private symlinkCache;
6
+ private fileIOQueue;
7
+ constructor({ cache, fileIOConcurrency, }: {
8
+ cache?: {
9
+ fileCache?: Map<string, Promise<string | null>>;
10
+ statCache?: Map<string, Promise<Stats | null>>;
11
+ symlinkCache?: Map<string, Promise<string | null>>;
12
+ };
13
+ fileIOConcurrency: number;
14
+ });
15
+ readlink(path: string): Promise<string | null>;
16
+ readFile(path: string): Promise<string | null>;
17
+ stat(path: string): Promise<Stats | null>;
18
+ private _internalReadlink;
19
+ private _internalReadFile;
20
+ private _internalStat;
21
+ private executeFileIO;
22
+ }
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CachedFileSystem = void 0;
7
+ const path_1 = require("path");
8
+ const graceful_fs_1 = __importDefault(require("graceful-fs"));
9
+ const async_sema_1 = require("async-sema");
10
+ const fsReadFile = graceful_fs_1.default.promises.readFile;
11
+ const fsReadlink = graceful_fs_1.default.promises.readlink;
12
+ const fsStat = graceful_fs_1.default.promises.stat;
13
+ class CachedFileSystem {
14
+ fileCache;
15
+ statCache;
16
+ symlinkCache;
17
+ fileIOQueue;
18
+ constructor({ cache, fileIOConcurrency, }) {
19
+ this.fileIOQueue = new async_sema_1.Sema(fileIOConcurrency);
20
+ this.fileCache = cache?.fileCache ?? new Map();
21
+ this.statCache = cache?.statCache ?? new Map();
22
+ this.symlinkCache = cache?.symlinkCache ?? new Map();
23
+ if (cache) {
24
+ cache.fileCache = this.fileCache;
25
+ cache.statCache = this.statCache;
26
+ cache.symlinkCache = this.symlinkCache;
27
+ }
28
+ }
29
+ async readlink(path) {
30
+ const cached = this.symlinkCache.get(path);
31
+ if (cached !== undefined)
32
+ return cached;
33
+ // This is not awaiting the response, so that the cache is instantly populated and
34
+ // future calls serve the Promise from the cache
35
+ const readlinkPromise = this.executeFileIO(path, this._internalReadlink);
36
+ this.symlinkCache.set(path, readlinkPromise);
37
+ return readlinkPromise;
38
+ }
39
+ async readFile(path) {
40
+ const cached = this.fileCache.get(path);
41
+ if (cached !== undefined)
42
+ return cached;
43
+ // This is not awaiting the response, so that the cache is instantly populated and
44
+ // future calls serve the Promise from the cache
45
+ const readFilePromise = this.executeFileIO(path, this._internalReadFile);
46
+ this.fileCache.set(path, readFilePromise);
47
+ return readFilePromise;
48
+ }
49
+ async stat(path) {
50
+ const cached = this.statCache.get(path);
51
+ if (cached !== undefined)
52
+ return cached;
53
+ // This is not awaiting the response, so that the cache is instantly populated and
54
+ // future calls serve the Promise from the cache
55
+ const statPromise = this.executeFileIO(path, this._internalStat);
56
+ this.statCache.set(path, statPromise);
57
+ return statPromise;
58
+ }
59
+ async _internalReadlink(path) {
60
+ try {
61
+ const link = await fsReadlink(path);
62
+ // also copy stat cache to symlink
63
+ const stats = this.statCache.get(path);
64
+ if (stats)
65
+ this.statCache.set((0, path_1.resolve)(path, link), stats);
66
+ return link;
67
+ }
68
+ catch (e) {
69
+ if (e.code !== 'EINVAL' && e.code !== 'ENOENT' && e.code !== 'UNKNOWN')
70
+ throw e;
71
+ return null;
72
+ }
73
+ }
74
+ async _internalReadFile(path) {
75
+ try {
76
+ return (await fsReadFile(path)).toString();
77
+ }
78
+ catch (e) {
79
+ if (e.code === 'ENOENT' || e.code === 'EISDIR') {
80
+ return null;
81
+ }
82
+ throw e;
83
+ }
84
+ }
85
+ async _internalStat(path) {
86
+ try {
87
+ return await fsStat(path);
88
+ }
89
+ catch (e) {
90
+ if (e.code === 'ENOENT') {
91
+ return null;
92
+ }
93
+ throw e;
94
+ }
95
+ }
96
+ async executeFileIO(path, fileIO) {
97
+ await this.fileIOQueue.acquire();
98
+ try {
99
+ return await fileIO.call(this, path);
100
+ }
101
+ finally {
102
+ this.fileIOQueue.release();
103
+ }
104
+ }
105
+ }
106
+ exports.CachedFileSystem = CachedFileSystem;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../src/fs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './types';
2
+ export { nodeFileTrace } from './node-file-trace';
3
+ import resolveDependency from './resolve-dependency';
4
+ export { resolveDependency as resolve };
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.resolve = exports.nodeFileTrace = void 0;
21
+ __exportStar(require("./types"), exports);
22
+ var node_file_trace_1 = require("./node-file-trace");
23
+ Object.defineProperty(exports, "nodeFileTrace", { enumerable: true, get: function () { return node_file_trace_1.nodeFileTrace; } });
24
+ const resolve_dependency_1 = __importDefault(require("./resolve-dependency"));
25
+ exports.resolve = resolve_dependency_1.default;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,qDAAkD;AAAzC,gHAAA,aAAa,OAAA;AACtB,8EAAqD;AACvB,kBADvB,4BAAiB,CACa"}
@@ -0,0 +1,41 @@
1
+ import { NodeFileTraceOptions, NodeFileTraceResult, NodeFileTraceReasons, NodeFileTraceReasonType } from './types';
2
+ export declare function nodeFileTrace(files: string[], opts?: NodeFileTraceOptions): Promise<NodeFileTraceResult>;
3
+ export declare class Job {
4
+ ts: boolean;
5
+ base: string;
6
+ cwd: string;
7
+ conditions: string[];
8
+ exportsOnly: boolean;
9
+ moduleSyncCatchall: boolean;
10
+ paths: Record<string, string>;
11
+ ignoreFn: (path: string, parent?: string) => boolean;
12
+ log: boolean;
13
+ depth: number;
14
+ mixedModules: boolean;
15
+ analysis: {
16
+ emitGlobs?: boolean;
17
+ computeFileReferences?: boolean;
18
+ evaluatePureExpressions?: boolean;
19
+ };
20
+ private analysisCache;
21
+ fileList: Set<string>;
22
+ esmFileList: Set<string>;
23
+ processed: Set<string>;
24
+ warnings: Set<Error>;
25
+ reasons: NodeFileTraceReasons;
26
+ private cachedFileSystem;
27
+ private remappings;
28
+ constructor({ base, processCwd, exports, conditions, exportsOnly, moduleSyncCatchall, paths, ignore, log, mixedModules, ts, analysis, cache, fileIOConcurrency, depth, }: NodeFileTraceOptions);
29
+ addRemapping(path: string, dep: string): void;
30
+ readlink(path: string): Promise<string | null>;
31
+ isFile(path: string): Promise<boolean>;
32
+ isDir(path: string): Promise<boolean>;
33
+ stat(path: string): Promise<import("node:fs").Stats | null>;
34
+ private maybeEmitDep;
35
+ resolve(id: string, parent: string, job: Job, cjsResolve: boolean): Promise<string | string[]>;
36
+ readFile(path: string): Promise<Buffer | string | null>;
37
+ realpath(path: string, parent?: string, seen?: Set<unknown>): Promise<string>;
38
+ emitFile(path: string, reasonType: NodeFileTraceReasonType, parent?: string, isRealpath?: boolean): Promise<boolean>;
39
+ getPjsonBoundary(path: string): Promise<string | undefined>;
40
+ emitDependency(path: string, parent?: string, depth?: number): Promise<void>;
41
+ }