metro 0.83.4 → 0.83.5

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 (161) hide show
  1. package/package.json +17 -15
  2. package/src/Assets.d.ts +83 -0
  3. package/src/Assets.js +2 -9
  4. package/src/Bundler/util.d.ts +27 -0
  5. package/src/Bundler/util.js +2 -9
  6. package/src/Bundler.d.ts +38 -0
  7. package/src/Bundler.js +1 -5
  8. package/src/DeltaBundler/DeltaCalculator.d.ts +71 -0
  9. package/src/DeltaBundler/DeltaCalculator.js +1 -5
  10. package/src/DeltaBundler/Graph.d.ts +167 -0
  11. package/src/DeltaBundler/Graph.js +1 -5
  12. package/src/DeltaBundler/Serializers/baseJSBundle.d.ts +20 -0
  13. package/src/DeltaBundler/Serializers/baseJSBundle.js +1 -5
  14. package/src/DeltaBundler/Serializers/getAllFiles.d.ts +22 -0
  15. package/src/DeltaBundler/Serializers/getAssets.d.ts +25 -0
  16. package/src/DeltaBundler/Serializers/getAssets.js +1 -5
  17. package/src/DeltaBundler/Serializers/getExplodedSourceMap.d.ts +26 -0
  18. package/src/DeltaBundler/Serializers/getRamBundleInfo.d.ts +48 -0
  19. package/src/DeltaBundler/Serializers/getRamBundleInfo.js +1 -5
  20. package/src/DeltaBundler/Serializers/helpers/getInlineSourceMappingURL.d.ts +12 -0
  21. package/src/DeltaBundler/Serializers/helpers/getSourceMapInfo.d.ts +33 -0
  22. package/src/DeltaBundler/Serializers/helpers/getTransitiveDependencies.d.ts +17 -0
  23. package/src/DeltaBundler/Serializers/helpers/js.d.ts +30 -0
  24. package/src/DeltaBundler/Serializers/helpers/js.js +2 -9
  25. package/src/DeltaBundler/Serializers/helpers/processModules.d.ts +25 -0
  26. package/src/DeltaBundler/Serializers/hmrJSBundle.d.ts +30 -0
  27. package/src/DeltaBundler/Serializers/hmrJSBundle.js +2 -9
  28. package/src/DeltaBundler/Serializers/sourceMapGenerator.d.ts +29 -0
  29. package/src/DeltaBundler/Serializers/sourceMapGenerator.js +1 -5
  30. package/src/DeltaBundler/Serializers/sourceMapObject.d.ts +23 -0
  31. package/src/DeltaBundler/Serializers/sourceMapString.d.ts +22 -0
  32. package/src/DeltaBundler/Transformer.d.ts +38 -0
  33. package/src/DeltaBundler/Transformer.js +1 -5
  34. package/src/DeltaBundler/Worker.d.ts +37 -0
  35. package/src/DeltaBundler/Worker.flow.js +1 -5
  36. package/src/DeltaBundler/WorkerFarm.d.ts +70 -0
  37. package/src/DeltaBundler/buildSubgraph.d.ts +30 -0
  38. package/src/DeltaBundler/buildSubgraph.js +1 -5
  39. package/src/DeltaBundler/getTransformCacheKey.d.ts +18 -0
  40. package/src/DeltaBundler/getTransformCacheKey.js +1 -5
  41. package/src/DeltaBundler/mergeDeltas.d.ts +17 -0
  42. package/src/DeltaBundler/types.d.ts +163 -0
  43. package/src/DeltaBundler/types.js +1 -5
  44. package/src/DeltaBundler.d.ts +60 -0
  45. package/src/DeltaBundler.js +1 -5
  46. package/src/HmrServer.d.ts +79 -0
  47. package/src/HmrServer.js +2 -9
  48. package/src/IncrementalBundler/GraphNotFoundError.d.ts +17 -0
  49. package/src/IncrementalBundler/ResourceNotFoundError.d.ts +15 -0
  50. package/src/IncrementalBundler/RevisionNotFoundError.d.ts +17 -0
  51. package/src/IncrementalBundler.d.ts +96 -0
  52. package/src/IncrementalBundler.js +2 -9
  53. package/src/ModuleGraph/worker/JsFileWrapping.d.ts +29 -0
  54. package/src/ModuleGraph/worker/JsFileWrapping.js +2 -9
  55. package/src/ModuleGraph/worker/collectDependencies.d.ts +131 -0
  56. package/src/ModuleGraph/worker/collectDependencies.js +2 -9
  57. package/src/ModuleGraph/worker/generateImportNames.d.ts +19 -0
  58. package/src/ModuleGraph/worker/generateImportNames.js +1 -5
  59. package/src/ModuleGraph/worker/importLocationsPlugin.d.ts +26 -0
  60. package/src/Server/MultipartResponse.d.ts +30 -0
  61. package/src/Server/MultipartResponse.js +1 -5
  62. package/src/Server/symbolicate.d.ts +31 -0
  63. package/src/Server.d.ts +271 -0
  64. package/src/Server.js +47 -15
  65. package/src/Server.js.flow +57 -10
  66. package/src/cli/parseKeyValueParamArray.d.ts +14 -0
  67. package/src/cli-utils.d.ts +19 -0
  68. package/src/cli-utils.js +1 -5
  69. package/src/commands/build.d.ts +16 -0
  70. package/src/commands/build.js +1 -5
  71. package/src/commands/dependencies.d.ts +16 -0
  72. package/src/commands/dependencies.js +1 -5
  73. package/src/commands/serve.d.ts +16 -0
  74. package/src/index.d.ts +180 -0
  75. package/src/index.flow.js +26 -19
  76. package/src/index.flow.js.flow +25 -10
  77. package/src/integration_tests/basic_bundle/build-errors/cannot-resolve-import.js +1 -5
  78. package/src/integration_tests/basic_bundle/build-errors/inline-requires-cannot-resolve-import.js +1 -5
  79. package/src/integration_tests/basic_bundle/import-export/index.js +2 -9
  80. package/src/integration_tests/execBundle.js +1 -5
  81. package/src/lib/BatchProcessor.d.ts +54 -0
  82. package/src/lib/BatchProcessor.js +1 -5
  83. package/src/lib/CountingSet.d.ts +48 -0
  84. package/src/lib/JsonReporter.d.ts +37 -0
  85. package/src/lib/RamBundleParser.d.ts +29 -0
  86. package/src/lib/RamBundleParser.js +1 -5
  87. package/src/lib/TerminalReporter.d.ts +118 -0
  88. package/src/lib/TerminalReporter.js +8 -16
  89. package/src/lib/TerminalReporter.js.flow +6 -15
  90. package/src/lib/bundleProgressUtils.d.ts +26 -0
  91. package/src/lib/bundleProgressUtils.js +19 -0
  92. package/src/lib/bundleProgressUtils.js.flow +35 -0
  93. package/src/lib/bundleToString.d.ts +19 -0
  94. package/src/lib/contextModule.d.ts +33 -0
  95. package/src/lib/contextModule.js +1 -5
  96. package/src/lib/contextModuleTemplates.d.ts +25 -0
  97. package/src/lib/contextModuleTemplates.js +1 -4
  98. package/src/lib/countLines.d.ts +12 -0
  99. package/src/lib/createWebsocketServer.d.ts +43 -0
  100. package/src/lib/createWebsocketServer.js +1 -5
  101. package/src/lib/debounceAsyncQueue.d.ts +15 -0
  102. package/src/lib/formatBundlingError.d.ts +23 -0
  103. package/src/lib/formatBundlingError.js +1 -5
  104. package/src/lib/getAppendScripts.d.ts +31 -0
  105. package/src/lib/getAppendScripts.js +1 -5
  106. package/src/lib/getGraphId.d.ts +25 -0
  107. package/src/lib/getGraphId.js +1 -5
  108. package/src/lib/getPreludeCode.d.ts +18 -0
  109. package/src/lib/getPrependedScripts.d.ts +24 -0
  110. package/src/lib/getPrependedScripts.js +2 -9
  111. package/src/lib/isResolvedDependency.d.ts +15 -0
  112. package/src/lib/logToConsole.d.ts +19 -0
  113. package/src/lib/logToConsole.js +1 -5
  114. package/src/lib/parseBundleOptionsFromBundleRequestUrl.d.ts +17 -0
  115. package/src/lib/parseBundleOptionsFromBundleRequestUrl.js +2 -9
  116. package/src/lib/parseCustomResolverOptions.d.ts +16 -0
  117. package/src/lib/parseCustomTransformOptions.d.ts +16 -0
  118. package/src/lib/parseJsonBody.d.ts +27 -0
  119. package/src/lib/pathUtils.d.ts +14 -0
  120. package/src/lib/pathUtils.js +1 -4
  121. package/src/lib/relativizeSourceMap.d.ts +17 -0
  122. package/src/lib/relativizeSourceMap.js +1 -5
  123. package/src/lib/reporting.d.ts +128 -0
  124. package/src/lib/reporting.js +1 -5
  125. package/src/lib/splitBundleOptions.d.ts +16 -0
  126. package/src/lib/transformHelpers.d.ts +35 -0
  127. package/src/lib/transformHelpers.js +1 -5
  128. package/src/node-haste/DependencyGraph/ModuleResolution.d.ts +126 -0
  129. package/src/node-haste/DependencyGraph/ModuleResolution.js +2 -9
  130. package/src/node-haste/DependencyGraph/createFileMap.d.ts +29 -0
  131. package/src/node-haste/DependencyGraph/createFileMap.js +2 -9
  132. package/src/node-haste/DependencyGraph.d.ts +86 -0
  133. package/src/node-haste/DependencyGraph.js +1 -5
  134. package/src/node-haste/Package.d.ts +21 -0
  135. package/src/node-haste/Package.js +1 -5
  136. package/src/node-haste/PackageCache.d.ts +34 -0
  137. package/src/node-haste/PackageCache.js +1 -5
  138. package/src/node-haste/lib/AssetPaths.d.ts +29 -0
  139. package/src/node-haste/lib/AssetPaths.js +1 -5
  140. package/src/node-haste/lib/parsePlatformFilePath.d.ts +25 -0
  141. package/src/node-haste/lib/parsePlatformFilePath.js +1 -5
  142. package/src/shared/output/RamBundle/as-assets.d.ts +25 -0
  143. package/src/shared/output/RamBundle/as-assets.js +1 -5
  144. package/src/shared/output/RamBundle/as-indexed-file.d.ts +38 -0
  145. package/src/shared/output/RamBundle/as-indexed-file.js +1 -5
  146. package/src/shared/output/RamBundle/buildSourcemapWithMetadata.d.ts +23 -0
  147. package/src/shared/output/RamBundle/magic-number.d.ts +14 -0
  148. package/src/shared/output/RamBundle/util.d.ts +41 -0
  149. package/src/shared/output/RamBundle/util.js +1 -5
  150. package/src/shared/output/RamBundle/write-sourcemap.d.ts +16 -0
  151. package/src/shared/output/RamBundle/write-sourcemap.js +1 -5
  152. package/src/shared/output/RamBundle.d.ts +26 -0
  153. package/src/shared/output/RamBundle.js +1 -5
  154. package/src/shared/output/bundle.d.ts +27 -0
  155. package/src/shared/output/bundle.flow.js +1 -5
  156. package/src/shared/output/meta.d.ts +15 -0
  157. package/src/shared/output/meta.js +1 -5
  158. package/src/shared/output/unbundle.d.ts +11 -0
  159. package/src/shared/output/writeFile.d.ts +16 -0
  160. package/src/shared/output/writeFile.js +1 -5
  161. package/src/shared/types.d.ts +145 -0
@@ -6,11 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = writeSourcemap;
7
7
  var _writeFile = _interopRequireDefault(require("../writeFile"));
8
8
  function _interopRequireDefault(e) {
9
- return e && e.__esModule
10
- ? e
11
- : {
12
- default: e,
13
- };
9
+ return e && e.__esModule ? e : { default: e };
14
10
  }
15
11
  function writeSourcemap(fileName, contents, log) {
16
12
  if (!fileName) {
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ * @oncall react_native
9
+ */
10
+
11
+ import type {RamBundleInfo} from '../../DeltaBundler/Serializers/getRamBundleInfo';
12
+ import type {OutputOptions, RequestOptions} from '../types';
13
+
14
+ import Server from '../../Server';
15
+
16
+ export declare function build(
17
+ packagerClient: Server,
18
+ requestOptions: RequestOptions,
19
+ ): Promise<RamBundleInfo>;
20
+ export declare function save(
21
+ bundle: RamBundleInfo,
22
+ options: OutputOptions,
23
+ log: (x: string) => void,
24
+ ): Promise<unknown>;
25
+ export declare const formatName: 'bundle';
26
+ export declare type formatName = typeof formatName;
@@ -10,11 +10,7 @@ var _Server = _interopRequireDefault(require("../../Server"));
10
10
  var _asAssets = _interopRequireDefault(require("./RamBundle/as-assets"));
11
11
  var _asIndexedFile = require("./RamBundle/as-indexed-file");
12
12
  function _interopRequireDefault(e) {
13
- return e && e.__esModule
14
- ? e
15
- : {
16
- default: e,
17
- };
13
+ return e && e.__esModule ? e : { default: e };
18
14
  }
19
15
  async function build(packagerClient, requestOptions) {
20
16
  const options = {
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ * @oncall react_native
9
+ */
10
+
11
+ import type {AssetData} from '../../Assets';
12
+ import type {BuildOptions, OutputOptions, RequestOptions} from '../types';
13
+
14
+ import Server from '../../Server';
15
+
16
+ export declare function build(
17
+ packagerClient: Server,
18
+ requestOptions: RequestOptions,
19
+ buildOptions?: BuildOptions,
20
+ ): Promise<{code: string; map: string; assets?: ReadonlyArray<AssetData>}>;
21
+ export declare function save(
22
+ bundle: {code: string; map: string},
23
+ options: OutputOptions,
24
+ log: ($$PARAM_0$$: string) => void,
25
+ ): Promise<unknown>;
26
+ export declare const formatName: 'bundle';
27
+ export declare type formatName = typeof formatName;
@@ -12,11 +12,7 @@ var _relativizeSourceMap = _interopRequireDefault(
12
12
  var _Server = _interopRequireDefault(require("../../Server"));
13
13
  var _writeFile = _interopRequireDefault(require("./writeFile"));
14
14
  function _interopRequireDefault(e) {
15
- return e && e.__esModule
16
- ? e
17
- : {
18
- default: e,
19
- };
15
+ return e && e.__esModule ? e : { default: e };
20
16
  }
21
17
  const DEFAULTS = _Server.default.DEFAULT_BUNDLE_OPTIONS;
22
18
  function build(packagerClient, requestOptions, buildOptions = {}) {
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ * @oncall react_native
9
+ */
10
+
11
+ declare function meta(
12
+ code: Buffer | string,
13
+ encoding?: 'ascii' | 'utf16le' | 'utf8',
14
+ ): Buffer;
15
+ export default meta;
@@ -6,11 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = meta;
7
7
  var _crypto = _interopRequireDefault(require("crypto"));
8
8
  function _interopRequireDefault(e) {
9
- return e && e.__esModule
10
- ? e
11
- : {
12
- default: e,
13
- };
9
+ return e && e.__esModule ? e : { default: e };
14
10
  }
15
11
  const isUTF8 = (encoding) => /^utf-?8$/i.test(encoding);
16
12
  const constantFor = (encoding) =>
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ * @oncall react_native
9
+ */
10
+
11
+ export * from './RamBundle';
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ * @oncall react_native
9
+ */
10
+
11
+ declare function writeFile(
12
+ filePath: string,
13
+ data: string | Buffer | Uint8Array,
14
+ encoding?: string,
15
+ ): Promise<void>;
16
+ export default writeFile;
@@ -7,11 +7,7 @@ exports.default = writeFile;
7
7
  var _fs = _interopRequireDefault(require("fs"));
8
8
  var _throat = _interopRequireDefault(require("throat"));
9
9
  function _interopRequireDefault(e) {
10
- return e && e.__esModule
11
- ? e
12
- : {
13
- default: e,
14
- };
10
+ return e && e.__esModule ? e : { default: e };
15
11
  }
16
12
  const writeFileWithThroat = (0, _throat.default)(
17
13
  128,
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ * @oncall react_native
9
+ */
10
+
11
+ import type {
12
+ Options as DeltaBundlerOptions,
13
+ TransformInputOptions,
14
+ } from '../DeltaBundler/types';
15
+ import type {TransformProfile} from 'metro-babel-transformer';
16
+ import type {CustomResolverOptions} from 'metro-resolver';
17
+ import type {
18
+ MetroSourceMapSegmentTuple,
19
+ MixedSourceMap,
20
+ } from 'metro-source-map';
21
+ import type {
22
+ CustomTransformOptions,
23
+ MinifierOptions,
24
+ } from 'metro-transform-worker';
25
+
26
+ type MetroSourceMapOrMappings =
27
+ | MixedSourceMap
28
+ | Array<MetroSourceMapSegmentTuple>;
29
+ export declare enum SourcePathsMode {
30
+ Absolute = 'absolute',
31
+ ServerUrl = 'url-server',
32
+ }
33
+ export declare namespace SourcePathsMode {
34
+ export function cast(value: string | null | undefined): SourcePathsMode;
35
+ export function isValid(
36
+ value: string | null | undefined,
37
+ ): value is SourcePathsMode;
38
+ export function members(): IterableIterator<SourcePathsMode>;
39
+ export function getName(value: SourcePathsMode): string;
40
+ }
41
+ export type ReadonlySourceLocation = Readonly<{
42
+ start: Readonly<{line: number; column: number}>;
43
+ end: Readonly<{line: number; column: number}>;
44
+ }>;
45
+ export type BundleOptions = {
46
+ readonly customResolverOptions: CustomResolverOptions;
47
+ customTransformOptions: CustomTransformOptions;
48
+ dev: boolean;
49
+ entryFile: string;
50
+ readonly excludeSource: boolean;
51
+ readonly inlineSourceMap: boolean;
52
+ readonly lazy: boolean;
53
+ minify: boolean;
54
+ readonly modulesOnly: boolean;
55
+ onProgress:
56
+ | null
57
+ | undefined
58
+ | ((doneCont: number, totalCount: number) => unknown);
59
+ readonly platform: null | undefined | string;
60
+ readonly runModule: boolean;
61
+ readonly shallow: boolean;
62
+ sourceMapUrl: null | undefined | string;
63
+ sourceUrl: null | undefined | string;
64
+ createModuleIdFactory?: () => (path: string) => number;
65
+ readonly unstable_transformProfile: TransformProfile;
66
+ readonly sourcePaths: SourcePathsMode;
67
+ };
68
+ export type BuildOptions = Readonly<{withAssets?: boolean}>;
69
+ export type ResolverInputOptions = Readonly<{
70
+ customResolverOptions?: CustomResolverOptions;
71
+ dev: boolean;
72
+ }>;
73
+ export type SerializerOptions = {
74
+ readonly sourceMapUrl: null | undefined | string;
75
+ readonly sourceUrl: null | undefined | string;
76
+ readonly runModule: boolean;
77
+ readonly excludeSource: boolean;
78
+ readonly inlineSourceMap: boolean;
79
+ readonly modulesOnly: boolean;
80
+ readonly sourcePaths: SourcePathsMode;
81
+ };
82
+ export type GraphOptions = {
83
+ readonly lazy: boolean;
84
+ readonly shallow: boolean;
85
+ };
86
+ export type SplitBundleOptions = Readonly<{
87
+ entryFile: string;
88
+ resolverOptions: ResolverInputOptions;
89
+ transformOptions: TransformInputOptions;
90
+ serializerOptions: SerializerOptions;
91
+ graphOptions: GraphOptions;
92
+ onProgress: DeltaBundlerOptions['onProgress'];
93
+ }>;
94
+ export type ModuleGroups = {
95
+ groups: Map<number, Set<number>>;
96
+ modulesById: Map<number, ModuleTransportLike>;
97
+ modulesInGroups: Set<number>;
98
+ };
99
+ export type ModuleTransportLike = {
100
+ readonly code: string;
101
+ readonly id: number;
102
+ readonly map: null | undefined | MetroSourceMapOrMappings;
103
+ readonly name?: string;
104
+ readonly sourcePath: string;
105
+ };
106
+ export type ModuleTransportLikeStrict = {
107
+ readonly code: string;
108
+ readonly id: number;
109
+ readonly map: null | undefined | MetroSourceMapOrMappings;
110
+ readonly name?: string;
111
+ readonly sourcePath: string;
112
+ };
113
+ export type RamModuleTransport = Omit<
114
+ ModuleTransportLikeStrict,
115
+ keyof {readonly source: string; readonly type: string}
116
+ > & {readonly source: string; readonly type: string};
117
+ export type OutputOptions = {
118
+ bundleOutput: string;
119
+ bundleEncoding?: 'utf8' | 'utf16le' | 'ascii';
120
+ dev?: boolean;
121
+ indexedRamBundle?: boolean;
122
+ platform: string;
123
+ sourcemapOutput?: string;
124
+ sourcemapSourcesRoot?: string;
125
+ sourcemapUseAbsolutePath?: boolean;
126
+ };
127
+ type SafeOptionalProps<T> = {
128
+ [K in keyof T]: T[K] extends void ? void | T[K] : T[K];
129
+ };
130
+ export type RequestOptions = Readonly<
131
+ SafeOptionalProps<{
132
+ entryFile: string;
133
+ inlineSourceMap?: boolean;
134
+ sourceMapUrl?: string;
135
+ dev?: boolean;
136
+ minify: boolean;
137
+ platform: string;
138
+ createModuleIdFactory?: () => (path: string) => number;
139
+ onProgress?: (transformedFileCount: number, totalFileCount: number) => void;
140
+ customResolverOptions?: CustomResolverOptions;
141
+ customTransformOptions?: CustomTransformOptions;
142
+ unstable_transformProfile?: TransformProfile;
143
+ }>
144
+ >;
145
+ export type {MinifierOptions};