metro 0.83.2 → 0.83.4

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 (192) hide show
  1. package/package.json +25 -23
  2. package/src/Assets.js +50 -30
  3. package/src/Assets.js.flow +26 -15
  4. package/src/Bundler/util.js +33 -22
  5. package/src/Bundler/util.js.flow +2 -2
  6. package/src/Bundler.js +5 -1
  7. package/src/Bundler.js.flow +1 -1
  8. package/src/DeltaBundler/DeltaCalculator.js +9 -5
  9. package/src/DeltaBundler/DeltaCalculator.js.flow +8 -8
  10. package/src/DeltaBundler/Graph.js +21 -17
  11. package/src/DeltaBundler/Graph.js.flow +30 -30
  12. package/src/DeltaBundler/Serializers/baseJSBundle.js +5 -1
  13. package/src/DeltaBundler/Serializers/baseJSBundle.js.flow +1 -1
  14. package/src/DeltaBundler/Serializers/getAllFiles.js.flow +2 -2
  15. package/src/DeltaBundler/Serializers/getAssets.js +5 -1
  16. package/src/DeltaBundler/Serializers/getAssets.js.flow +2 -2
  17. package/src/DeltaBundler/Serializers/getExplodedSourceMap.js.flow +2 -2
  18. package/src/DeltaBundler/Serializers/getRamBundleInfo.js +5 -1
  19. package/src/DeltaBundler/Serializers/getRamBundleInfo.js.flow +8 -8
  20. package/src/DeltaBundler/Serializers/helpers/js.js +33 -22
  21. package/src/DeltaBundler/Serializers/helpers/js.js.flow +6 -6
  22. package/src/DeltaBundler/Serializers/helpers/processModules.js.flow +3 -3
  23. package/src/DeltaBundler/Serializers/hmrJSBundle.js +33 -22
  24. package/src/DeltaBundler/Serializers/hmrJSBundle.js.flow +5 -5
  25. package/src/DeltaBundler/Serializers/sourceMapGenerator.js +5 -1
  26. package/src/DeltaBundler/Serializers/sourceMapGenerator.js.flow +6 -6
  27. package/src/DeltaBundler/Serializers/sourceMapObject.js.flow +2 -2
  28. package/src/DeltaBundler/Serializers/sourceMapString.js.flow +2 -2
  29. package/src/DeltaBundler/Transformer.js +5 -1
  30. package/src/DeltaBundler/Transformer.js.flow +3 -3
  31. package/src/DeltaBundler/Worker.flow.js +5 -1
  32. package/src/DeltaBundler/Worker.flow.js.flow +1 -1
  33. package/src/DeltaBundler/WorkerFarm.js +1 -1
  34. package/src/DeltaBundler/WorkerFarm.js.flow +26 -13
  35. package/src/DeltaBundler/buildSubgraph.js +9 -5
  36. package/src/DeltaBundler/buildSubgraph.js.flow +8 -8
  37. package/src/DeltaBundler/getTransformCacheKey.js +5 -1
  38. package/src/DeltaBundler/types.js +5 -1
  39. package/src/DeltaBundler/types.js.flow +36 -34
  40. package/src/DeltaBundler.js +5 -1
  41. package/src/DeltaBundler.js.flow +2 -2
  42. package/src/HmrServer.js +42 -30
  43. package/src/HmrServer.js.flow +17 -12
  44. package/src/IncrementalBundler.js +37 -22
  45. package/src/IncrementalBundler.js.flow +13 -9
  46. package/src/ModuleGraph/worker/JsFileWrapping.js +33 -22
  47. package/src/ModuleGraph/worker/JsFileWrapping.js.flow +10 -5
  48. package/src/ModuleGraph/worker/collectDependencies.js +33 -22
  49. package/src/ModuleGraph/worker/collectDependencies.js.flow +27 -21
  50. package/src/ModuleGraph/worker/generateImportNames.js +5 -1
  51. package/src/ModuleGraph/worker/generateImportNames.js.flow +4 -2
  52. package/src/ModuleGraph/worker/importLocationsPlugin.js.flow +7 -3
  53. package/src/Server/MultipartResponse.js +5 -1
  54. package/src/Server/MultipartResponse.js.flow +1 -1
  55. package/src/Server/symbolicate.js.flow +4 -4
  56. package/src/Server.js +112 -40
  57. package/src/Server.js.flow +110 -47
  58. package/src/cli/parseKeyValueParamArray.js.flow +1 -1
  59. package/src/cli-utils.js +5 -1
  60. package/src/cli-utils.js.flow +2 -2
  61. package/src/commands/build.js +5 -1
  62. package/src/commands/build.js.flow +11 -10
  63. package/src/commands/dependencies.js +5 -1
  64. package/src/commands/dependencies.js.flow +8 -4
  65. package/src/commands/serve.js +2 -0
  66. package/src/commands/serve.js.flow +14 -9
  67. package/src/index.flow.js +38 -27
  68. package/src/index.flow.js.flow +25 -20
  69. package/src/integration_tests/basic_bundle/AssetRegistry.js.flow +1 -1
  70. package/src/integration_tests/basic_bundle/ErrorBundle.js.flow +1 -1
  71. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-import.js +5 -1
  72. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-import.js.flow +1 -1
  73. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-multi-line-import-with-escapes.js.flow +1 -1
  74. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-multi-line-import.js.flow +1 -1
  75. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-require-with-embedded-comment.js.flow +1 -1
  76. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-require.js.flow +1 -1
  77. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-specifier-with-escapes.js.flow +1 -1
  78. package/src/integration_tests/basic_bundle/build-errors/inline-requires-cannot-resolve-import.js +5 -1
  79. package/src/integration_tests/basic_bundle/build-errors/inline-requires-cannot-resolve-import.js.flow +1 -1
  80. package/src/integration_tests/basic_bundle/build-errors/inline-requires-cannot-resolve-require.js.flow +1 -1
  81. package/src/integration_tests/basic_bundle/import-export/index.js +33 -22
  82. package/src/integration_tests/basic_bundle/import-export/index.js.flow +3 -3
  83. package/src/integration_tests/basic_bundle/import-export/utils.js.flow +2 -2
  84. package/src/integration_tests/basic_bundle/loadBundleAsyncForTest.js.flow +1 -1
  85. package/src/integration_tests/basic_bundle/optional-dependencies/index.js.flow +1 -1
  86. package/src/integration_tests/basic_bundle/require-context/conflict.js.flow +1 -1
  87. package/src/integration_tests/basic_bundle/require-context/empty.js.flow +1 -1
  88. package/src/integration_tests/basic_bundle/require-context/matching.js.flow +1 -1
  89. package/src/integration_tests/basic_bundle/require-context/mode-eager.js.flow +1 -1
  90. package/src/integration_tests/basic_bundle/require-context/mode-lazy-once.js.flow +1 -1
  91. package/src/integration_tests/basic_bundle/require-context/mode-lazy.js.flow +1 -1
  92. package/src/integration_tests/basic_bundle/require-context/mode-sync.js.flow +2 -2
  93. package/src/integration_tests/basic_bundle/require-context/utils.js.flow +1 -1
  94. package/src/integration_tests/basic_bundle/require-resolveWeak/import-and-resolveWeak.js.flow +1 -1
  95. package/src/integration_tests/basic_bundle/require-resolveWeak/multiple.js.flow +1 -1
  96. package/src/integration_tests/basic_bundle/require-resolveWeak/never-required.js.flow +1 -1
  97. package/src/integration_tests/basic_bundle/require-resolveWeak/require-and-resolveWeak.js.flow +1 -1
  98. package/src/integration_tests/execBundle.js +5 -1
  99. package/src/integration_tests/execBundle.js.flow +1 -1
  100. package/src/lib/BatchProcessor.js +10 -3
  101. package/src/lib/BatchProcessor.js.flow +10 -7
  102. package/src/lib/CountingSet.js.flow +4 -4
  103. package/src/lib/JsonReporter.js +5 -3
  104. package/src/lib/JsonReporter.js.flow +19 -17
  105. package/src/lib/RamBundleParser.js +5 -1
  106. package/src/lib/RamBundleParser.js.flow +1 -1
  107. package/src/lib/TerminalReporter.js +39 -28
  108. package/src/lib/TerminalReporter.js.flow +15 -15
  109. package/src/lib/contextModule.js +5 -1
  110. package/src/lib/contextModule.js.flow +1 -1
  111. package/src/lib/contextModuleTemplates.js +28 -21
  112. package/src/lib/countLines.js +4 -3
  113. package/src/lib/countLines.js.flow +3 -4
  114. package/src/lib/createWebsocketServer.js +14 -3
  115. package/src/lib/createWebsocketServer.js.flow +16 -9
  116. package/src/lib/debounceAsyncQueue.js.flow +1 -1
  117. package/src/lib/formatBundlingError.js +5 -1
  118. package/src/lib/formatBundlingError.js.flow +1 -1
  119. package/src/lib/getAppendScripts.js +5 -1
  120. package/src/lib/getAppendScripts.js.flow +4 -4
  121. package/src/lib/getGraphId.js +5 -1
  122. package/src/lib/getGraphId.js.flow +1 -1
  123. package/src/lib/getPreludeCode.js +4 -0
  124. package/src/lib/getPreludeCode.js.flow +10 -3
  125. package/src/lib/getPrependedScripts.js +44 -23
  126. package/src/lib/getPrependedScripts.js.flow +10 -3
  127. package/src/lib/logToConsole.js +5 -1
  128. package/src/lib/logToConsole.js.flow +2 -2
  129. package/src/lib/parseBundleOptionsFromBundleRequestUrl.js +33 -22
  130. package/src/lib/parseCustomResolverOptions.js.flow +2 -2
  131. package/src/lib/parseCustomTransformOptions.js.flow +1 -1
  132. package/src/lib/parseJsonBody.js.flow +11 -1
  133. package/src/lib/pathUtils.js +28 -21
  134. package/src/lib/pathUtils.js.flow +1 -1
  135. package/src/lib/relativizeSourceMap.js +5 -1
  136. package/src/lib/reporting.js +5 -1
  137. package/src/lib/reporting.js.flow +4 -4
  138. package/src/lib/transformHelpers.js +16 -10
  139. package/src/lib/transformHelpers.js.flow +17 -15
  140. package/src/node-haste/DependencyGraph/ModuleResolution.js +56 -43
  141. package/src/node-haste/DependencyGraph/ModuleResolution.js.flow +35 -32
  142. package/src/node-haste/DependencyGraph/createFileMap.js +64 -39
  143. package/src/node-haste/DependencyGraph/createFileMap.js.flow +44 -18
  144. package/src/node-haste/DependencyGraph.js +45 -32
  145. package/src/node-haste/DependencyGraph.js.flow +35 -37
  146. package/src/node-haste/Package.js +5 -1
  147. package/src/node-haste/PackageCache.js +5 -1
  148. package/src/node-haste/lib/AssetPaths.js +7 -3
  149. package/src/node-haste/lib/AssetPaths.js.flow +4 -4
  150. package/src/node-haste/lib/parsePlatformFilePath.js +11 -7
  151. package/src/node-haste/lib/parsePlatformFilePath.js.flow +4 -4
  152. package/src/shared/output/RamBundle/as-assets.js +5 -1
  153. package/src/shared/output/RamBundle/as-assets.js.flow +6 -6
  154. package/src/shared/output/RamBundle/as-indexed-file.js +5 -1
  155. package/src/shared/output/RamBundle/as-indexed-file.js.flow +5 -5
  156. package/src/shared/output/RamBundle/buildSourcemapWithMetadata.js.flow +5 -5
  157. package/src/shared/output/RamBundle/util.js +5 -1
  158. package/src/shared/output/RamBundle/util.js.flow +5 -5
  159. package/src/shared/output/RamBundle/write-sourcemap.js +5 -1
  160. package/src/shared/output/RamBundle/write-sourcemap.js.flow +1 -1
  161. package/src/shared/output/RamBundle.js +5 -1
  162. package/src/shared/output/RamBundle.js.flow +1 -1
  163. package/src/shared/output/bundle.flow.js +5 -1
  164. package/src/shared/output/bundle.flow.js.flow +3 -3
  165. package/src/shared/output/meta.js +7 -3
  166. package/src/shared/output/meta.js.flow +1 -1
  167. package/src/shared/output/writeFile.js +13 -4
  168. package/src/shared/output/writeFile.js.flow +8 -2
  169. package/src/shared/types.js.flow +20 -5
  170. package/src/Asset.d.ts +0 -25
  171. package/src/Bundler.d.ts +0 -39
  172. package/src/DeltaBundler/Graph.d.ts +0 -40
  173. package/src/DeltaBundler/Serializers/getExplodedSourceMap.d.ts +0 -26
  174. package/src/DeltaBundler/Serializers/getRamBundleInfo.d.ts +0 -18
  175. package/src/DeltaBundler/Worker.d.ts +0 -45
  176. package/src/DeltaBundler/types.d.ts +0 -166
  177. package/src/DeltaBundler.d.ts +0 -58
  178. package/src/IncrementalBundler.d.ts +0 -98
  179. package/src/ModuleGraph/test-helpers.js +0 -75
  180. package/src/ModuleGraph/worker/collectDependencies.d.ts +0 -27
  181. package/src/Server/MultipartResponse.d.ts +0 -31
  182. package/src/Server/symbolicate.d.ts +0 -31
  183. package/src/Server.d.ts +0 -118
  184. package/src/index.d.ts +0 -193
  185. package/src/lib/CountingSet.d.ts +0 -48
  186. package/src/lib/TerminalReporter.d.ts +0 -27
  187. package/src/lib/contextModule.d.ts +0 -22
  188. package/src/lib/getGraphId.d.ts +0 -11
  189. package/src/lib/reporting.d.ts +0 -144
  190. package/src/node-haste/DependencyGraph.d.ts +0 -62
  191. package/src/shared/output/bundle.d.ts +0 -35
  192. package/src/shared/types.d.ts +0 -130
@@ -14,13 +14,23 @@ import type {IncomingMessage} from 'http';
14
14
  const CONTENT_TYPE = 'application/json';
15
15
  const SIZE_LIMIT = 100 * 1024 * 1024; // 100MB
16
16
 
17
+ export type JsonData =
18
+ | {
19
+ [string]: JsonData,
20
+ }
21
+ | Array<JsonData>
22
+ | string
23
+ | number
24
+ | boolean
25
+ | null;
26
+
17
27
  /**
18
28
  * Attempt to parse a request body as JSON.
19
29
  */
20
30
  export default function parseJsonBody(
21
31
  req: IncomingMessage,
22
32
  options: {strict?: boolean} = {},
23
- ): Promise<$FlowFixMe> {
33
+ ): Promise<JsonData> {
24
34
  const {strict = true} = options;
25
35
 
26
36
  return new Promise((resolve, reject) => {
@@ -5,28 +5,35 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.normalizePathSeparatorsToPosix = void 0;
7
7
  var path = _interopRequireWildcard(require("path"));
8
- function _getRequireWildcardCache(e) {
9
- if ("function" != typeof WeakMap) return null;
10
- var r = new WeakMap(),
11
- t = new WeakMap();
12
- return (_getRequireWildcardCache = function (e) {
13
- return e ? t : r;
14
- })(e);
15
- }
16
- function _interopRequireWildcard(e, r) {
17
- if (!r && e && e.__esModule) return e;
18
- if (null === e || ("object" != typeof e && "function" != typeof e))
19
- return { default: e };
20
- var t = _getRequireWildcardCache(r);
21
- if (t && t.has(e)) return t.get(e);
22
- var n = { __proto__: null },
23
- a = Object.defineProperty && Object.getOwnPropertyDescriptor;
24
- for (var u in e)
25
- if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
26
- var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
27
- i && (i.get || i.set) ? Object.defineProperty(n, u, i) : (n[u] = e[u]);
8
+ function _interopRequireWildcard(e, t) {
9
+ if ("function" == typeof WeakMap)
10
+ var r = new WeakMap(),
11
+ n = new WeakMap();
12
+ return (_interopRequireWildcard = function (e, t) {
13
+ if (!t && e && e.__esModule) return e;
14
+ var o,
15
+ i,
16
+ f = {
17
+ __proto__: null,
18
+ default: e,
19
+ };
20
+ if (null === e || ("object" != typeof e && "function" != typeof e))
21
+ return f;
22
+ if ((o = t ? n : r)) {
23
+ if (o.has(e)) return o.get(e);
24
+ o.set(e, f);
28
25
  }
29
- return ((n.default = e), t && t.set(e, n), n);
26
+ for (const t in e)
27
+ "default" !== t &&
28
+ {}.hasOwnProperty.call(e, t) &&
29
+ ((i =
30
+ (o = Object.defineProperty) &&
31
+ Object.getOwnPropertyDescriptor(e, t)) &&
32
+ (i.get || i.set)
33
+ ? o(f, t, i)
34
+ : (f[t] = e[t]));
35
+ return f;
36
+ })(e, t);
30
37
  }
31
38
  const normalizePathSeparatorsToPosix = (exports.normalizePathSeparatorsToPosix =
32
39
  path.sep === "/"
@@ -4,8 +4,8 @@
4
4
  * This source code is licensed under the MIT license found in the
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  *
7
- * @format
8
7
  * @flow strict
8
+ * @format
9
9
  */
10
10
 
11
11
  import * as path from 'path';
@@ -6,7 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = relativizeSourceMapInline;
7
7
  var _path = _interopRequireDefault(require("path"));
8
8
  function _interopRequireDefault(e) {
9
- return e && e.__esModule ? e : { default: e };
9
+ return e && e.__esModule
10
+ ? e
11
+ : {
12
+ default: e,
13
+ };
10
14
  }
11
15
  function relativizeSourceMapInline(sourceMap, sourcesRoot) {
12
16
  if (sourceMap.mappings === undefined) {
@@ -10,7 +10,11 @@ exports.nullReporter = void 0;
10
10
  var _chalk = _interopRequireDefault(require("chalk"));
11
11
  var _util = _interopRequireDefault(require("util"));
12
12
  function _interopRequireDefault(e) {
13
- return e && e.__esModule ? e : { default: e };
13
+ return e && e.__esModule
14
+ ? e
15
+ : {
16
+ default: e,
17
+ };
14
18
  }
15
19
  function logWarning(terminal, format, ...args) {
16
20
  const str = _util.default.format(format, ...args);
@@ -126,7 +126,7 @@ export type ReportableEvent =
126
126
  | 'groupCollapsed'
127
127
  | 'groupEnd'
128
128
  | 'debug',
129
- data: Array<mixed>,
129
+ data: Array<unknown>,
130
130
  ...
131
131
  }
132
132
  | {
@@ -187,7 +187,7 @@ export type Reporter = interface {update(event: ReportableEvent): void};
187
187
  export function logWarning(
188
188
  terminal: Terminal,
189
189
  format: string,
190
- ...args: Array<mixed>
190
+ ...args: Array<unknown>
191
191
  ): void {
192
192
  const str = util.format(format, ...args);
193
193
  terminal.log('%s %s', chalk.yellow.inverse.bold(' WARN '), str);
@@ -199,7 +199,7 @@ export function logWarning(
199
199
  export function logError(
200
200
  terminal: Terminal,
201
201
  format: string,
202
- ...args: Array<mixed>
202
+ ...args: Array<unknown>
203
203
  ): void {
204
204
  terminal.log(
205
205
  '%s %s',
@@ -221,7 +221,7 @@ export function logError(
221
221
  export function logInfo(
222
222
  terminal: Terminal,
223
223
  format: string,
224
- ...args: Array<mixed>
224
+ ...args: Array<unknown>
225
225
  ): void {
226
226
  const str = util.format(format, ...args);
227
227
  terminal.log('%s %s', chalk.cyan.inverse.bold(' INFO '), str);
@@ -10,7 +10,11 @@ var _isAssetFile = _interopRequireDefault(
10
10
  require("metro-resolver/private/utils/isAssetFile"),
11
11
  );
12
12
  function _interopRequireDefault(e) {
13
- return e && e.__esModule ? e : { default: e };
13
+ return e && e.__esModule
14
+ ? e
15
+ : {
16
+ default: e,
17
+ };
14
18
  }
15
19
  const baseIgnoredInlineRequires = [
16
20
  "React",
@@ -31,8 +35,8 @@ async function calcTransformerOptions(
31
35
  const baseOptions = {
32
36
  customTransformOptions: options.customTransformOptions,
33
37
  dev: options.dev,
34
- inlineRequires: false,
35
38
  inlinePlatform: true,
39
+ inlineRequires: false,
36
40
  minify: options.minify,
37
41
  platform: options.platform,
38
42
  unstable_transformProfile: options.unstable_transformProfile,
@@ -45,11 +49,14 @@ async function calcTransformerOptions(
45
49
  }
46
50
  const getDependencies = async (path) => {
47
51
  const dependencies = await deltaBundler.getDependencies([path], {
52
+ lazy: false,
53
+ onProgress: null,
48
54
  resolve: await getResolveDependencyFn(
49
55
  bundler,
50
56
  options.platform,
51
57
  resolverOptions,
52
58
  ),
59
+ shallow: false,
53
60
  transform: await getTransformFn(
54
61
  [path],
55
62
  bundler,
@@ -62,13 +69,12 @@ async function calcTransformerOptions(
62
69
  resolverOptions,
63
70
  ),
64
71
  transformOptions: options,
65
- onProgress: null,
66
- lazy: false,
67
72
  unstable_allowRequireContext:
68
73
  config.transformer.unstable_allowRequireContext,
69
74
  unstable_enablePackageExports:
70
75
  config.resolver.unstable_enablePackageExports,
71
- shallow: false,
76
+ unstable_incrementalResolution:
77
+ config.resolver.unstable_incrementalResolution,
72
78
  });
73
79
  return Array.from(dependencies.keys());
74
80
  };
@@ -83,15 +89,15 @@ async function calcTransformerOptions(
83
89
  );
84
90
  return {
85
91
  ...baseOptions,
86
- inlineRequires: transform?.inlineRequires || false,
87
92
  experimentalImportSupport: transform?.experimentalImportSupport || false,
93
+ inlineRequires: transform?.inlineRequires || false,
94
+ nonInlinedRequires:
95
+ transform?.nonInlinedRequires || baseIgnoredInlineRequires,
96
+ type: "module",
88
97
  unstable_memoizeInlineRequires:
89
98
  transform?.unstable_memoizeInlineRequires || false,
90
99
  unstable_nonMemoizedInlineRequires:
91
100
  transform?.unstable_nonMemoizedInlineRequires || [],
92
- nonInlinedRequires:
93
- transform?.nonInlinedRequires || baseIgnoredInlineRequires,
94
- type: "module",
95
101
  };
96
102
  }
97
103
  function removeInlineRequiresBlockListFromOptions(path, inlineRequires) {
@@ -138,11 +144,11 @@ async function getTransformFn(
138
144
  modulePath,
139
145
  {
140
146
  ...transformOptions,
141
- type: getType(transformOptions.type, modulePath, assetExts),
142
147
  inlineRequires: removeInlineRequiresBlockListFromOptions(
143
148
  modulePath,
144
149
  inlineRequires,
145
150
  ),
151
+ type: getType(transformOptions.type, modulePath, assetExts),
146
152
  },
147
153
  templateBuffer,
148
154
  );
@@ -10,7 +10,7 @@
10
10
  */
11
11
 
12
12
  import type Bundler from '../Bundler';
13
- import type DeltaBundler, {TransformFn} from '../DeltaBundler';
13
+ import type {TransformFn, default as DeltaBundler} from '../DeltaBundler';
14
14
  import type {
15
15
  BundlerResolution,
16
16
  TransformInputOptions,
@@ -26,10 +26,10 @@ import {getContextModuleTemplate} from './contextModuleTemplates';
26
26
  import isAssetFile from 'metro-resolver/private/utils/isAssetFile';
27
27
 
28
28
  type InlineRequiresRaw =
29
- | $ReadOnly<{blockList: $ReadOnly<{[string]: true, ...}>, ...}>
29
+ | Readonly<{blockList: Readonly<{[string]: true, ...}>, ...}>
30
30
  | boolean;
31
31
 
32
- type TransformOptionsWithRawInlines = $ReadOnly<{
32
+ type TransformOptionsWithRawInlines = Readonly<{
33
33
  ...TransformOptions,
34
34
  inlineRequires: InlineRequiresRaw,
35
35
  }>;
@@ -44,7 +44,7 @@ const baseIgnoredInlineRequires = [
44
44
  ];
45
45
 
46
46
  async function calcTransformerOptions(
47
- entryFiles: $ReadOnlyArray<string>,
47
+ entryFiles: ReadonlyArray<string>,
48
48
  bundler: Bundler,
49
49
  deltaBundler: DeltaBundler<>,
50
50
  config: ConfigT,
@@ -54,8 +54,8 @@ async function calcTransformerOptions(
54
54
  const baseOptions = {
55
55
  customTransformOptions: options.customTransformOptions,
56
56
  dev: options.dev,
57
- inlineRequires: false,
58
57
  inlinePlatform: true,
58
+ inlineRequires: false,
59
59
  minify: options.minify,
60
60
  platform: options.platform,
61
61
  unstable_transformProfile: options.unstable_transformProfile,
@@ -73,11 +73,14 @@ async function calcTransformerOptions(
73
73
 
74
74
  const getDependencies = async (path: string) => {
75
75
  const dependencies = await deltaBundler.getDependencies([path], {
76
+ lazy: false,
77
+ onProgress: null,
76
78
  resolve: await getResolveDependencyFn(
77
79
  bundler,
78
80
  options.platform,
79
81
  resolverOptions,
80
82
  ),
83
+ shallow: false,
81
84
  transform: await getTransformFn(
82
85
  [path],
83
86
  bundler,
@@ -90,13 +93,12 @@ async function calcTransformerOptions(
90
93
  resolverOptions,
91
94
  ),
92
95
  transformOptions: options,
93
- onProgress: null,
94
- lazy: false,
95
96
  unstable_allowRequireContext:
96
97
  config.transformer.unstable_allowRequireContext,
97
98
  unstable_enablePackageExports:
98
99
  config.resolver.unstable_enablePackageExports,
99
- shallow: false,
100
+ unstable_incrementalResolution:
101
+ config.resolver.unstable_incrementalResolution,
100
102
  });
101
103
 
102
104
  return Array.from(dependencies.keys());
@@ -110,15 +112,15 @@ async function calcTransformerOptions(
110
112
 
111
113
  return {
112
114
  ...baseOptions,
113
- inlineRequires: transform?.inlineRequires || false,
114
115
  experimentalImportSupport: transform?.experimentalImportSupport || false,
116
+ inlineRequires: transform?.inlineRequires || false,
117
+ nonInlinedRequires:
118
+ transform?.nonInlinedRequires || baseIgnoredInlineRequires,
119
+ type: 'module',
115
120
  unstable_memoizeInlineRequires:
116
121
  transform?.unstable_memoizeInlineRequires || false,
117
122
  unstable_nonMemoizedInlineRequires:
118
123
  transform?.unstable_nonMemoizedInlineRequires || [],
119
- nonInlinedRequires:
120
- transform?.nonInlinedRequires || baseIgnoredInlineRequires,
121
- type: 'module',
122
124
  };
123
125
  }
124
126
 
@@ -134,7 +136,7 @@ function removeInlineRequiresBlockListFromOptions(
134
136
  }
135
137
 
136
138
  export async function getTransformFn(
137
- entryFiles: $ReadOnlyArray<string>,
139
+ entryFiles: ReadonlyArray<string>,
138
140
  bundler: Bundler,
139
141
  deltaBundler: DeltaBundler<>,
140
142
  config: ConfigT,
@@ -181,11 +183,11 @@ export async function getTransformFn(
181
183
  modulePath,
182
184
  {
183
185
  ...transformOptions,
184
- type: getType(transformOptions.type, modulePath, assetExts),
185
186
  inlineRequires: removeInlineRequiresBlockListFromOptions(
186
187
  modulePath,
187
188
  inlineRequires,
188
189
  ),
190
+ type: getType(transformOptions.type, modulePath, assetExts),
189
191
  },
190
192
  templateBuffer,
191
193
  );
@@ -195,7 +197,7 @@ export async function getTransformFn(
195
197
  function getType(
196
198
  type: string,
197
199
  filePath: string,
198
- assetExts: $ReadOnlySet<string>,
200
+ assetExts: ReadonlySet<string>,
199
201
  ): Type {
200
202
  if (type === 'script') {
201
203
  return type;
@@ -13,31 +13,42 @@ var _createDefaultContext = _interopRequireDefault(
13
13
  );
14
14
  var _path = _interopRequireDefault(require("path"));
15
15
  var _util = _interopRequireDefault(require("util"));
16
- function _getRequireWildcardCache(e) {
17
- if ("function" != typeof WeakMap) return null;
18
- var r = new WeakMap(),
19
- t = new WeakMap();
20
- return (_getRequireWildcardCache = function (e) {
21
- return e ? t : r;
22
- })(e);
23
- }
24
- function _interopRequireWildcard(e, r) {
25
- if (!r && e && e.__esModule) return e;
26
- if (null === e || ("object" != typeof e && "function" != typeof e))
27
- return { default: e };
28
- var t = _getRequireWildcardCache(r);
29
- if (t && t.has(e)) return t.get(e);
30
- var n = { __proto__: null },
31
- a = Object.defineProperty && Object.getOwnPropertyDescriptor;
32
- for (var u in e)
33
- if ("default" !== u && {}.hasOwnProperty.call(e, u)) {
34
- var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;
35
- i && (i.get || i.set) ? Object.defineProperty(n, u, i) : (n[u] = e[u]);
16
+ function _interopRequireWildcard(e, t) {
17
+ if ("function" == typeof WeakMap)
18
+ var r = new WeakMap(),
19
+ n = new WeakMap();
20
+ return (_interopRequireWildcard = function (e, t) {
21
+ if (!t && e && e.__esModule) return e;
22
+ var o,
23
+ i,
24
+ f = {
25
+ __proto__: null,
26
+ default: e,
27
+ };
28
+ if (null === e || ("object" != typeof e && "function" != typeof e))
29
+ return f;
30
+ if ((o = t ? n : r)) {
31
+ if (o.has(e)) return o.get(e);
32
+ o.set(e, f);
36
33
  }
37
- return ((n.default = e), t && t.set(e, n), n);
34
+ for (const t in e)
35
+ "default" !== t &&
36
+ {}.hasOwnProperty.call(e, t) &&
37
+ ((i =
38
+ (o = Object.defineProperty) &&
39
+ Object.getOwnPropertyDescriptor(e, t)) &&
40
+ (i.get || i.set)
41
+ ? o(f, t, i)
42
+ : (f[t] = e[t]));
43
+ return f;
44
+ })(e, t);
38
45
  }
39
46
  function _interopRequireDefault(e) {
40
- return e && e.__esModule ? e : { default: e };
47
+ return e && e.__esModule
48
+ ? e
49
+ : {
50
+ default: e,
51
+ };
41
52
  }
42
53
  class ModuleResolver {
43
54
  constructor(options) {
@@ -51,13 +62,13 @@ class ModuleResolver {
51
62
  emptyModule = this.resolveDependency(
52
63
  this._projectRootFakeModulePath,
53
64
  {
54
- name: this._options.emptyModulePath,
55
65
  data: {
56
- key: this._options.emptyModulePath,
57
66
  asyncType: null,
58
67
  isESMImport: false,
68
+ key: this._options.emptyModulePath,
59
69
  locs: [],
60
70
  },
71
+ name: this._options.emptyModulePath,
61
72
  },
62
73
  false,
63
74
  null,
@@ -91,6 +102,7 @@ class ModuleResolver {
91
102
  unstable_conditionNames,
92
103
  unstable_conditionsByPlatform,
93
104
  unstable_enablePackageExports,
105
+ unstable_incrementalResolution,
94
106
  } = this._options;
95
107
  try {
96
108
  const result = Resolver.resolve(
@@ -98,31 +110,32 @@ class ModuleResolver {
98
110
  {
99
111
  allowHaste,
100
112
  assetExts,
113
+ customResolverOptions: resolverOptions.customResolverOptions ?? {},
101
114
  dev: resolverOptions.dev,
102
115
  disableHierarchicalLookup,
103
116
  doesFileExist,
104
117
  extraNodeModules,
105
118
  fileSystemLookup,
119
+ getPackage: this._getPackage,
120
+ getPackageForModule: (absoluteModulePath) =>
121
+ this._getPackageForModule(absoluteModulePath),
106
122
  isESMImport: dependency.data.isESMImport,
107
123
  mainFields,
108
124
  nodeModulesPaths,
125
+ originModulePath,
109
126
  preferNativePlatform,
110
127
  resolveAsset,
128
+ resolveHasteModule: (name) =>
129
+ this._options.getHasteModulePath(name, platform),
130
+ resolveHastePackage: (name) =>
131
+ this._options.getHastePackagePath(name, platform),
111
132
  resolveRequest,
112
133
  sourceExts,
113
134
  unstable_conditionNames,
114
135
  unstable_conditionsByPlatform,
115
136
  unstable_enablePackageExports,
137
+ unstable_incrementalResolution,
116
138
  unstable_logWarning: this._logWarning,
117
- customResolverOptions: resolverOptions.customResolverOptions ?? {},
118
- originModulePath,
119
- resolveHasteModule: (name) =>
120
- this._options.getHasteModulePath(name, platform),
121
- resolveHastePackage: (name) =>
122
- this._options.getHastePackagePath(name, platform),
123
- getPackage: this._getPackage,
124
- getPackageForModule: (absoluteModulePath) =>
125
- this._getPackageForModule(absoluteModulePath),
126
139
  },
127
140
  dependency,
128
141
  ),
@@ -198,9 +211,9 @@ class ModuleResolver {
198
211
  } catch (e) {}
199
212
  return result != null
200
213
  ? {
201
- rootPath: _path.default.dirname(result.pkg.path),
202
214
  packageJson: result.pkg.read(),
203
215
  packageRelativePath: result.packageRelativePath,
216
+ rootPath: _path.default.dirname(result.pkg.path),
204
217
  }
205
218
  : null;
206
219
  };
@@ -212,8 +225,8 @@ class ModuleResolver {
212
225
  const arbitrary = getArrayLowestItem(resolution.filePaths);
213
226
  (0, _invariant.default)(arbitrary != null, "invalid asset resolution");
214
227
  return {
215
- type: "sourceFile",
216
228
  filePath: arbitrary,
229
+ type: "sourceFile",
217
230
  };
218
231
  case "empty":
219
232
  return this._getEmptyModule();
@@ -224,8 +237,8 @@ class ModuleResolver {
224
237
  }
225
238
  _logWarning = (message) => {
226
239
  this._options.reporter.update({
227
- type: "resolver_warning",
228
240
  message,
241
+ type: "resolver_warning",
229
242
  });
230
243
  };
231
244
  _removeRoot(candidates) {
@@ -313,8 +326,8 @@ function refineDependencyLocation(loc, fileContents, targetSpecifier) {
313
326
  if (isQuote(maybeQuoteBefore) && maybeQuoteBefore === maybeQuoteAfter) {
314
327
  return {
315
328
  start: {
316
- line: line + 1,
317
329
  column: minColumn + offset + 1,
330
+ line: line + 1,
318
331
  },
319
332
  };
320
333
  }
@@ -322,20 +335,20 @@ function refineDependencyLocation(loc, fileContents, targetSpecifier) {
322
335
  }
323
336
  if (loc.start.line === loc.end.line) {
324
337
  return {
325
- start: {
326
- line: loc.start.line,
327
- column: loc.start.column + 1,
328
- },
329
338
  end: {
330
- line: loc.end.line,
331
339
  column: loc.end.column + 1,
340
+ line: loc.end.line,
341
+ },
342
+ start: {
343
+ column: loc.start.column + 1,
344
+ line: loc.start.line,
332
345
  },
333
346
  };
334
347
  }
335
348
  return {
336
349
  start: {
337
- line: loc.start.line,
338
350
  column: loc.start.column + 1,
351
+ line: loc.start.line,
339
352
  },
340
353
  };
341
354
  }