@expo/metro-config 56.0.5 → 56.0.7

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.
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.buildHermesBundleAsync = buildHermesBundleAsync;
7
- const metro_source_map_1 = require("@expo/metro/metro-source-map");
8
7
  const spawn_async_1 = __importDefault(require("@expo/spawn-async"));
9
8
  const chalk_1 = __importDefault(require("chalk"));
10
9
  const fs_1 = __importDefault(require("fs"));
@@ -12,6 +11,7 @@ const os_1 = __importDefault(require("os"));
12
11
  const path_1 = __importDefault(require("path"));
13
12
  const process_1 = __importDefault(require("process"));
14
13
  const resolve_from_1 = __importDefault(require("resolve-from"));
14
+ const sourceMap_1 = require("./sourceMap");
15
15
  const debug = require('debug')('expo:metro:hermes');
16
16
  function importHermesCommandFromProject(projectRoot) {
17
17
  const platformExecutable = getHermesCommandPlatform();
@@ -113,6 +113,6 @@ async function createHermesSourcemapAsync(sourcemap, hermesMapFile) {
113
113
  const bundlerSourcemap = JSON.parse(sourcemap);
114
114
  const hermesSourcemapContent = await fs_1.default.promises.readFile(hermesMapFile, 'utf8');
115
115
  const hermesSourcemap = JSON.parse(hermesSourcemapContent);
116
- return JSON.stringify((0, metro_source_map_1.composeSourceMaps)([bundlerSourcemap, hermesSourcemap]));
116
+ return JSON.stringify((0, sourceMap_1.composeSourceMaps)([bundlerSourcemap, hermesSourcemap]));
117
117
  }
118
118
  //# sourceMappingURL=exportHermes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"exportHermes.js","sourceRoot":"","sources":["../../src/serializer/exportHermes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exportHermes.js","sourceRoot":"","sources":["../../src/serializer/exportHermes.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,16 @@
7
7
  import type { types as t } from '@babel/core';
8
8
  import type { FBSourceFunctionMap, MetroSourceMapSegmentTuple } from '@expo/metro/metro-source-map';
9
9
  import type { JsTransformerConfig } from '@expo/metro/metro-transform-worker';
10
+ import type { PackedMap, SerializableSourceMap } from './packedMap';
10
11
  import type { Options as CollectDependenciesOptions } from '../transform-worker/collect-dependencies';
11
12
  export type JSFileType = 'js/script' | 'js/module' | 'js/module/asset';
13
+ export type ModuleSourceMap = SerializableSourceMap | MetroSourceMapSegmentTuple[];
12
14
  export type JsOutput = {
13
15
  data: {
14
16
  code: string;
15
17
  lineCount: number;
16
- map: MetroSourceMapSegmentTuple[];
18
+ map: ModuleSourceMap;
19
+ readonly __packedMap?: PackedMap;
17
20
  functionMap: FBSourceFunctionMap | null;
18
21
  css?: {
19
22
  code: string;
@@ -1 +1 @@
1
- {"version":3,"file":"jsOutput.js","sourceRoot":"","sources":["../../src/serializer/jsOutput.ts"],"names":[],"mappings":";;AAiFA,wCAEC;AAID,0DAEC;AARD,SAAgB,cAAc,CAAC,MAAW;IACxC,OAAO,MAAM,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC7D,CAAC;AAED,+FAA+F;AAC/F,sDAAsD;AACtD,SAAgB,uBAAuB,CAAC,MAAW;IACjD,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,GAAG,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"jsOutput.js","sourceRoot":"","sources":["../../src/serializer/jsOutput.ts"],"names":[],"mappings":";;AA8FA,wCAEC;AAID,0DAEC;AARD,SAAgB,cAAc,CAAC,MAAW;IACxC,OAAO,MAAM,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC7D,CAAC;AAED,+FAA+F;AAC/F,sDAAsD;AACtD,SAAgB,uBAAuB,CAAC,MAAW;IACjD,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,GAAG,CAAC;AAChE,CAAC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Copyright © 2026 650 Industries.
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
+ import type { BabelSourceMapSegment, MetroSourceMapSegmentTuple } from '@expo/metro/metro-source-map';
8
+ export declare const STRIDE = 5;
9
+ export declare const SENTINEL = -1;
10
+ export interface SerializableSourceMap {
11
+ __packed: number[];
12
+ __names: string[];
13
+ __count: number;
14
+ __version: 1;
15
+ }
16
+ export declare function isSerializableSourceMap(x: unknown): x is SerializableSourceMap;
17
+ export declare class PackedMap {
18
+ readonly count: number;
19
+ readonly names: string[];
20
+ readonly buf: Int32Array;
21
+ private constructor();
22
+ static deserialize(input: SerializableSourceMap): PackedMap;
23
+ static fromInts(buf: Int32Array, names: string[], count: number): PackedMap;
24
+ serialize(): SerializableSourceMap;
25
+ }
26
+ export declare function tupleAt(p: PackedMap, i: number): MetroSourceMapSegmentTuple | undefined;
27
+ export declare function installPackedMap(data: {
28
+ map?: unknown;
29
+ __packedMap?: PackedMap;
30
+ }, source: SerializableSourceMap | readonly MetroSourceMapSegmentTuple[]): void;
31
+ export declare function wrapTransformResultMaps<T extends {
32
+ output?: readonly unknown[] | null;
33
+ }>(result: T): T;
34
+ export declare function patchTransformFileForPackedMaps(bundler: {
35
+ transformFile: (...args: any[]) => Promise<unknown>;
36
+ }): void;
37
+ export declare function materializeMap(map: SerializableSourceMap | readonly MetroSourceMapSegmentTuple[] | null | undefined): MetroSourceMapSegmentTuple[];
38
+ export declare function emptySourceMap(): SerializableSourceMap;
39
+ export declare function packRawMappings(rawMappings: readonly BabelSourceMapSegment[]): SerializableSourceMap;
40
+ export declare function packDecodedMappings(input: {
41
+ mappings: string;
42
+ names: readonly string[];
43
+ }): SerializableSourceMap;
44
+ export declare function countLinesAndTerminateSourceMap(code: string, sourceMap: SerializableSourceMap): {
45
+ lineCount: number;
46
+ sourceMap: SerializableSourceMap;
47
+ };
48
+ export declare function makeProxy(packed: PackedMap): MetroSourceMapSegmentTuple[];
@@ -0,0 +1,416 @@
1
+ "use strict";
2
+ /**
3
+ * Copyright © 2026 650 Industries.
4
+ *
5
+ * This source code is licensed under the MIT license found in the
6
+ * LICENSE file in the root directory of this source tree.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.PackedMap = exports.SENTINEL = exports.STRIDE = void 0;
10
+ exports.isSerializableSourceMap = isSerializableSourceMap;
11
+ exports.tupleAt = tupleAt;
12
+ exports.installPackedMap = installPackedMap;
13
+ exports.wrapTransformResultMaps = wrapTransformResultMaps;
14
+ exports.patchTransformFileForPackedMaps = patchTransformFileForPackedMaps;
15
+ exports.materializeMap = materializeMap;
16
+ exports.emptySourceMap = emptySourceMap;
17
+ exports.packRawMappings = packRawMappings;
18
+ exports.packDecodedMappings = packDecodedMappings;
19
+ exports.countLinesAndTerminateSourceMap = countLinesAndTerminateSourceMap;
20
+ exports.makeProxy = makeProxy;
21
+ // Layout per segment, starting at `i * STRIDE`. Fixed stride so segments
22
+ // are indexable in O(1); missing fields use sentinel `-1`. Lines are
23
+ // 1-based to match `MetroSourceMapSegmentTuple`.
24
+ // [0] generated line
25
+ // [1] generated column
26
+ // [2] source line (-1 if sourceless)
27
+ // [3] source column (-1 if sourceless)
28
+ // [4] name index (-1 if no name)
29
+ exports.STRIDE = 5;
30
+ exports.SENTINEL = -1;
31
+ function isSerializableSourceMap(x) {
32
+ if (x == null || typeof x !== 'object')
33
+ return false;
34
+ const o = x;
35
+ return (o.__version === 1 &&
36
+ Array.isArray(o.__packed) &&
37
+ Array.isArray(o.__names) &&
38
+ typeof o.__count === 'number');
39
+ }
40
+ class PackedMap {
41
+ count;
42
+ names;
43
+ // `Int32Array` storage: 4 bytes/int off-heap vs 8 bytes/slot for the
44
+ // tagged `number[]` shape that `SerializableSourceMap` carries.
45
+ // Materialized eagerly so a `data.map` whose encoder never iterates
46
+ // (e.g. SSR-eval'd modules — the bundle is concatenated and
47
+ // `_compile`-ed without anyone calling `.buf`) doesn't strand a
48
+ // serialized-shape array on the JS heap.
49
+ buf;
50
+ constructor(buf, names, count) {
51
+ this.buf = buf;
52
+ this.names = names;
53
+ this.count = count;
54
+ }
55
+ static deserialize(input) {
56
+ return new PackedMap(Int32Array.from(input.__packed), input.__names, input.__count);
57
+ }
58
+ static fromInts(buf, names, count) {
59
+ return new PackedMap(buf, names, count);
60
+ }
61
+ serialize() {
62
+ const buf = this.buf;
63
+ const out = new Array(buf.length);
64
+ for (let i = 0; i < buf.length; i++)
65
+ out[i] = buf[i];
66
+ return {
67
+ __version: 1,
68
+ __count: this.count,
69
+ __names: this.names.slice(),
70
+ __packed: out,
71
+ };
72
+ }
73
+ }
74
+ exports.PackedMap = PackedMap;
75
+ // Returns the variable-length form (2, 4, or 5) that matches Metro's
76
+ // tuple union. A fixed-length-5 tuple with `-1` sentinels would fool
77
+ // `symbolicate.js`'s `mapping.length < 4` sourceless-check and resolve to
78
+ // garbage source positions.
79
+ function tupleAt(p, i) {
80
+ if (i < 0 || i >= p.count)
81
+ return undefined;
82
+ const buf = p.buf;
83
+ const off = i * exports.STRIDE;
84
+ const genL = buf[off];
85
+ const genC = buf[off + 1];
86
+ const srcL = buf[off + 2];
87
+ if (srcL === exports.SENTINEL) {
88
+ return [genL, genC];
89
+ }
90
+ const srcC = buf[off + 3];
91
+ const nameIdx = buf[off + 4];
92
+ if (nameIdx === exports.SENTINEL) {
93
+ return [genL, genC, srcL, srcC];
94
+ }
95
+ // A `SerializableSourceMap` with `nameIdx >= __names.length` is malformed; throw a
96
+ // clear error rather than silently producing `[..., undefined]`, which
97
+ // would corrupt names through the encoder without any obvious symptom.
98
+ const name = p.names[nameIdx];
99
+ if (name === undefined) {
100
+ throw new Error(`[expo-metro-config] PackedMap segment ${i} references name index ${nameIdx}, ` +
101
+ `but only ${p.names.length} names exist. The serialized entry is corrupt; ` +
102
+ `clear the metro cache (\`expo start --clear\`) and rebuild.`);
103
+ }
104
+ return [genL, genC, srcL, srcC, name];
105
+ }
106
+ function* iterateTuples(p) {
107
+ for (let i = 0; i < p.count; i++) {
108
+ yield tupleAt(p, i);
109
+ }
110
+ }
111
+ const NODE_INSPECT = Symbol.for('nodejs.util.inspect.custom');
112
+ // Replace `data.map` with the `Array.isArray`-true Proxy and attach the
113
+ // underlying `PackedMap` as non-enumerable `data.__packedMap` for the
114
+ // encoder fast path. Accepts either a `SerializableSourceMap` (worker output,
115
+ // cache hits) or plain tuples (reconcile-style serializer plugins).
116
+ // Idempotent: both fields are defined `configurable: true`, so re-running
117
+ // on a previously-installed `data` object is safe.
118
+ function installPackedMap(data, source) {
119
+ // Tuple input goes straight to a typed-array-backed `PackedMap` — going
120
+ // via `packTuples` would allocate a `number[]` that
121
+ // `PackedMap.deserialize` would then drop on first `.buf` access.
122
+ const packed = isSerializableSourceMap(source)
123
+ ? PackedMap.deserialize(source)
124
+ : packTuplesToPackedMap(source);
125
+ // Lazy accessor for `data.map`: builds that never symbolicate (typical
126
+ // CI / quiet dev sessions) read `data.__packedMap` exclusively via the
127
+ // encoder fast path, so the Proxy is never allocated. Cached on first
128
+ // read so consumers that hold onto `data.map` (e.g.
129
+ // `getExplodedSourceMap`) see a stable identity.
130
+ let cachedProxy;
131
+ Object.defineProperty(data, 'map', {
132
+ get() {
133
+ if (!cachedProxy)
134
+ cachedProxy = makeProxy(packed);
135
+ return cachedProxy;
136
+ },
137
+ enumerable: true,
138
+ configurable: true,
139
+ });
140
+ Object.defineProperty(data, '__packedMap', {
141
+ value: packed,
142
+ enumerable: false,
143
+ writable: false,
144
+ configurable: true,
145
+ });
146
+ }
147
+ // The single chokepoint between "worker emits SerializableSourceMap" and "main-thread
148
+ // readers expect array-shaped tuples". Used in production via the
149
+ // `Bundler.transformFile` patch and called directly in tests.
150
+ function wrapTransformResultMaps(result) {
151
+ if (!result || !Array.isArray(result.output))
152
+ return result;
153
+ for (const out of result.output) {
154
+ const data = out?.data;
155
+ if (!data)
156
+ continue;
157
+ // Skip without touching `data.map` — reading it would fire the lazy
158
+ // getter and materialize a Proxy we don't need.
159
+ if (data.__packedMap)
160
+ continue;
161
+ if (isSerializableSourceMap(data.map)) {
162
+ installPackedMap(data, data.map);
163
+ }
164
+ }
165
+ return result;
166
+ }
167
+ // Idempotent: chaining is safe because `installPackedMap` only fires
168
+ // when `data.map` is still a `SerializableSourceMap`.
169
+ function patchTransformFileForPackedMaps(bundler) {
170
+ const originalTransformFile = bundler.transformFile.bind(bundler);
171
+ bundler.transformFile = async (...args) => {
172
+ return wrapTransformResultMaps((await originalTransformFile(...args)));
173
+ };
174
+ }
175
+ // Materialize any `data.map` shape (serialized, Proxy, or plain tuples) into a
176
+ // plain `MetroSourceMapSegmentTuple[]`. NOT a hot path — allocates a
177
+ // fresh tuple per segment; production readers go through the Proxy or
178
+ // the encoder fast path.
179
+ function materializeMap(map) {
180
+ if (map == null)
181
+ return [];
182
+ if (isSerializableSourceMap(map)) {
183
+ const packed = PackedMap.deserialize(map);
184
+ const out = new Array(packed.count);
185
+ for (let i = 0; i < packed.count; i++) {
186
+ out[i] = tupleAt(packed, i);
187
+ }
188
+ return out;
189
+ }
190
+ // The Proxy is `Array.isArray`-true and iterates via `Symbol.iterator`.
191
+ return Array.isArray(map) ? Array.from(map) : [];
192
+ }
193
+ function indexOrInsert(names, name) {
194
+ const existing = names.get(name);
195
+ if (existing !== undefined)
196
+ return existing;
197
+ const idx = names.size;
198
+ names.set(name, idx);
199
+ return idx;
200
+ }
201
+ function emptySourceMap() {
202
+ return { __version: 1, __count: 0, __names: [], __packed: [] };
203
+ }
204
+ // Convert Babel’s `result.rawMappings` directly to a `SerializableSourceMap`. The
205
+ // worker's terminal storage is `SerializableSourceMap`, so going via an
206
+ // intermediate `MetroSourceMapSegmentTuple[]` (one heap-allocated Array
207
+ // per segment) is wasted work; for an N-module bundle averaging M
208
+ // segments per module that's N×M transient tuple allocations per
209
+ // transform pass. `BabelSourceMapSegment` lines are 1-based (matching
210
+ // the serialized shape).
211
+ function packRawMappings(rawMappings) {
212
+ const names = new Map();
213
+ const out = new Array(rawMappings.length * exports.STRIDE);
214
+ let off = 0;
215
+ for (const m of rawMappings) {
216
+ out[off] = m.generated.line;
217
+ out[off + 1] = m.generated.column;
218
+ if (m.original == null) {
219
+ out[off + 2] = exports.SENTINEL;
220
+ out[off + 3] = exports.SENTINEL;
221
+ out[off + 4] = exports.SENTINEL;
222
+ }
223
+ else {
224
+ out[off + 2] = m.original.line;
225
+ out[off + 3] = m.original.column;
226
+ out[off + 4] = typeof m.name === 'string' ? indexOrInsert(names, m.name) : exports.SENTINEL;
227
+ }
228
+ off += exports.STRIDE;
229
+ }
230
+ return {
231
+ __version: 1,
232
+ __count: rawMappings.length,
233
+ __names: [...names.keys()],
234
+ __packed: out,
235
+ };
236
+ }
237
+ // Decode a minifier’s encoded sourcemap straight to a `SerializableSourceMap`. `decode`
238
+ // returns 0-based outer indices and 0-based source lines; the serialized form is
239
+ // 1-based for both — adjust at the boundary. The minifier already
240
+ // deduplicates names, so `input.names` becomes the output `__names`
241
+ // directly without re-interning.
242
+ function packDecodedMappings(input) {
243
+ const decoded = loadSourceMapCodec().decode(input.mappings);
244
+ let total = 0;
245
+ for (const line of decoded)
246
+ total += line.length;
247
+ const out = new Array(total * exports.STRIDE);
248
+ let off = 0;
249
+ let count = 0;
250
+ for (let lineIdx = 0; lineIdx < decoded.length; lineIdx++) {
251
+ const genLine = lineIdx + 1;
252
+ for (const seg of decoded[lineIdx]) {
253
+ out[off] = genLine;
254
+ out[off + 1] = seg[0];
255
+ if (seg.length === 1) {
256
+ out[off + 2] = exports.SENTINEL;
257
+ out[off + 3] = exports.SENTINEL;
258
+ out[off + 4] = exports.SENTINEL;
259
+ }
260
+ else {
261
+ out[off + 2] = seg[2] + 1;
262
+ out[off + 3] = seg[3];
263
+ out[off + 4] = seg.length === 5 ? seg[4] : exports.SENTINEL;
264
+ }
265
+ off += exports.STRIDE;
266
+ count++;
267
+ }
268
+ }
269
+ return {
270
+ __version: 1,
271
+ __count: count,
272
+ __names: input.names.slice(),
273
+ __packed: out,
274
+ };
275
+ }
276
+ // Append the trailing `(lineCount+1, lastLineLength)` terminator to the
277
+ // `SerializableSourceMap`’s `__packed` if it isn’t already there. Without this, an
278
+ // out-of-bounds lookup at the tail of the bundle would alias to the
279
+ // last real mapping rather than resolving to nothing — same invariant
280
+ // as the legacy tuple-array form, but applied in place on the flat
281
+ // `number[]` storage.
282
+ //
283
+ // ASSUMPTION: Mappings are generated in order of increasing line and
284
+ // column.
285
+ function countLinesAndTerminateSourceMap(code, sourceMap) {
286
+ const NEWLINE = /\r\n?|\n|\u2028|\u2029/g;
287
+ let lineCount = 1;
288
+ let lastLineStart = 0;
289
+ for (const match of code.matchAll(NEWLINE)) {
290
+ if (match.index == null)
291
+ continue;
292
+ lineCount++;
293
+ lastLineStart = match.index + match[0].length;
294
+ }
295
+ const lastLineLength = code.length - lastLineStart;
296
+ const lastIdx = sourceMap.__count - 1;
297
+ if (lastIdx >= 0) {
298
+ const off = lastIdx * exports.STRIDE;
299
+ if (sourceMap.__packed[off] === lineCount && sourceMap.__packed[off + 1] === lastLineLength) {
300
+ return { lineCount, sourceMap };
301
+ }
302
+ }
303
+ return {
304
+ lineCount,
305
+ sourceMap: {
306
+ __version: 1,
307
+ __count: sourceMap.__count + 1,
308
+ __names: sourceMap.__names,
309
+ __packed: [...sourceMap.__packed, lineCount, lastLineLength, exports.SENTINEL, exports.SENTINEL, exports.SENTINEL],
310
+ },
311
+ };
312
+ }
313
+ let _sourceMapCodec;
314
+ function loadSourceMapCodec() {
315
+ if (!_sourceMapCodec) {
316
+ _sourceMapCodec = require('@jridgewell/sourcemap-codec');
317
+ }
318
+ return _sourceMapCodec;
319
+ }
320
+ // Pack tuples straight into an `Int32Array`-backed `PackedMap`, skipping
321
+ // a `SerializableSourceMap`. Used by `installPackedMap` when the caller already lives
322
+ // on the main thread (reconcile, in-memory refits) and never needs the
323
+ // JSON-faithful serialized shape for IPC.
324
+ function packTuplesToPackedMap(tuples) {
325
+ const names = new Map();
326
+ const buf = new Int32Array(tuples.length * exports.STRIDE);
327
+ let off = 0;
328
+ for (const tuple of tuples) {
329
+ buf[off] = tuple[0];
330
+ buf[off + 1] = tuple[1];
331
+ if (tuple.length === 2) {
332
+ buf[off + 2] = exports.SENTINEL;
333
+ buf[off + 3] = exports.SENTINEL;
334
+ buf[off + 4] = exports.SENTINEL;
335
+ }
336
+ else {
337
+ buf[off + 2] = tuple[2];
338
+ buf[off + 3] = tuple[3];
339
+ buf[off + 4] = tuple.length === 5 ? indexOrInsert(names, tuple[4]) : exports.SENTINEL;
340
+ }
341
+ off += exports.STRIDE;
342
+ }
343
+ return PackedMap.fromInts(buf, [...names.keys()], tuples.length);
344
+ }
345
+ // Target is `[]` (a real Array) so `Array.isArray(proxy)` returns true
346
+ // per ECMA-262 §7.2.2 — required by Metro's `symbolicate`.
347
+ function makeProxy(packed) {
348
+ const target = [];
349
+ const handler = {
350
+ get(_t, prop) {
351
+ if (prop === 'length')
352
+ return packed.count;
353
+ if (prop === Symbol.iterator)
354
+ return () => iterateTuples(packed);
355
+ if (prop === 'toJSON')
356
+ return () => packed.serialize();
357
+ if (prop === NODE_INSPECT) {
358
+ return () => `PackedMap(count=${packed.count})`;
359
+ }
360
+ if (typeof prop === 'string') {
361
+ const n = +prop;
362
+ if (Number.isInteger(n) && String(n) === prop && n >= 0) {
363
+ return tupleAt(packed, n);
364
+ }
365
+ }
366
+ // Array.prototype methods (`forEach`, `map`, …) reach us back
367
+ // through numeric-index `get` and `length`, both covered above.
368
+ return Reflect.get(target, prop);
369
+ },
370
+ has(_t, prop) {
371
+ if (prop === 'length' || prop === Symbol.iterator || prop === 'toJSON')
372
+ return true;
373
+ if (typeof prop === 'string') {
374
+ const n = +prop;
375
+ if (Number.isInteger(n) && String(n) === prop && n >= 0 && n < packed.count) {
376
+ return true;
377
+ }
378
+ }
379
+ return Reflect.has(target, prop);
380
+ },
381
+ ownKeys(t) {
382
+ const keys = new Array(packed.count);
383
+ for (let i = 0; i < packed.count; i++)
384
+ keys[i] = String(i);
385
+ return keys.concat(Reflect.ownKeys(t));
386
+ },
387
+ getOwnPropertyDescriptor(t, prop) {
388
+ if (typeof prop === 'string') {
389
+ const n = +prop;
390
+ if (Number.isInteger(n) && String(n) === prop && n >= 0 && n < packed.count) {
391
+ return {
392
+ value: tupleAt(packed, n),
393
+ writable: false,
394
+ enumerable: true,
395
+ configurable: true,
396
+ };
397
+ }
398
+ }
399
+ // Delegate `length` to the real Array target so the Proxy invariant
400
+ // for non-configurable own keys holds.
401
+ return Reflect.getOwnPropertyDescriptor(t, prop);
402
+ },
403
+ set() {
404
+ throw new TypeError('[expo-metro-config] data.map is read-only — backed by a PackedMap. ' +
405
+ 'Modify the underlying source map or rebuild with a fresh transform instead.');
406
+ },
407
+ deleteProperty() {
408
+ throw new TypeError('[expo-metro-config] data.map is read-only — backed by a PackedMap.');
409
+ },
410
+ defineProperty() {
411
+ throw new TypeError('[expo-metro-config] data.map is read-only — backed by a PackedMap.');
412
+ },
413
+ };
414
+ return new Proxy(target, handler);
415
+ }
416
+ //# sourceMappingURL=packedMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packedMap.js","sourceRoot":"","sources":["../../src/serializer/packedMap.ts"],"names":[],"mappings":"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"}
@@ -43,14 +43,13 @@ const generator_1 = __importDefault(require("@babel/generator"));
43
43
  const JsFileWrapping = __importStar(require("@expo/metro/metro/ModuleGraph/worker/JsFileWrapping"));
44
44
  const importLocationsPlugin_1 = require("@expo/metro/metro/ModuleGraph/worker/importLocationsPlugin");
45
45
  const isResolvedDependency_1 = require("@expo/metro/metro/lib/isResolvedDependency");
46
- const metro_source_map_1 = require("@expo/metro/metro-source-map");
47
46
  const metro_transform_plugins_1 = require("@expo/metro/metro-transform-plugins");
48
47
  const assert_1 = __importDefault(require("assert"));
49
48
  const node_util_1 = __importDefault(require("node:util"));
50
49
  const jsOutput_1 = require("./jsOutput");
50
+ const packedMap_1 = require("./packedMap");
51
51
  const sideEffects_1 = require("./sideEffects");
52
52
  const collect_dependencies_1 = __importStar(require("../transform-worker/collect-dependencies"));
53
- const count_lines_1 = require("../transform-worker/count-lines");
54
53
  const metro_transform_worker_1 = require("../transform-worker/metro-transform-worker");
55
54
  const debug = require('debug')('expo:treeshaking');
56
55
  const FORCE_REQUIRE_NAME_HINTS = false;
@@ -229,31 +228,38 @@ async function reconcileTransformSerializerPlugin(entryPoint, preModules, graph,
229
228
  sourceFileName: value.path,
230
229
  sourceMaps: true,
231
230
  }, outputItem.data.code);
232
- // @ts-expect-error: incorrectly typed upstream
233
- let map = result.rawMappings ? result.rawMappings.map(metro_source_map_1.toSegmentTuple) : [];
231
+ // `rawMappings` is omitted from `@types/babel__generator`'s
232
+ // `GeneratorResult`, but Babel emits it whenever `sourceMaps: true`.
233
+ const rawMappings = result.rawMappings ?? [];
234
234
  let code = result.code;
235
+ let sourceMap;
235
236
  if (reconcile.minify) {
236
237
  const source = value.getSource().toString('utf-8');
237
- ({ map, code } = await (0, metro_transform_worker_1.minifyCode)(reconcile.minify, value.path, result.code, source, map, reserved));
238
+ ({ sourceMap, code } = await (0, metro_transform_worker_1.minifyCode)(reconcile.minify, value.path, result.code, source, rawMappings, reserved));
239
+ }
240
+ else {
241
+ sourceMap = (0, packedMap_1.packRawMappings)(rawMappings);
238
242
  }
239
243
  let lineCount;
240
- ({ lineCount, map } = (0, count_lines_1.countLinesAndTerminateMap)(code, map));
241
- return {
242
- ...outputItem,
243
- data: {
244
- ...outputItem.data,
245
- code,
246
- map,
247
- lineCount,
248
- functionMap:
249
- // @ts-expect-error: https://github.com/facebook/metro/blob/6151e7eb241b15f3bb13b6302abeafc39d2ca3ad/packages/metro-transform-worker/src/index.js#L508-L512
250
- ast.metadata?.metro?.functionMap ??
251
- // @ts-expect-error: Fallback to deprecated explicitly-generated `functionMap`
252
- ast.functionMap ??
253
- outputItem.data.functionMap ??
254
- null,
255
- },
244
+ ({ lineCount, sourceMap } = (0, packedMap_1.countLinesAndTerminateSourceMap)(code, sourceMap));
245
+ const newData = {
246
+ ...outputItem.data,
247
+ code,
248
+ lineCount,
249
+ functionMap:
250
+ // @ts-expect-error: https://github.com/facebook/metro/blob/6151e7eb241b15f3bb13b6302abeafc39d2ca3ad/packages/metro-transform-worker/src/index.js#L508-L512
251
+ ast.metadata?.metro?.functionMap ??
252
+ // @ts-expect-error: Fallback to deprecated explicitly-generated `functionMap`
253
+ ast.functionMap ??
254
+ outputItem.data.functionMap ??
255
+ null,
256
256
  };
257
+ // Reconcile runs post-graph-build, so it bypasses the
258
+ // `Bundler.transformFile` wrapper that normally installs the packed
259
+ // shape from worker output. Install it here directly so the encoder
260
+ // fast path stays live for reconciled modules.
261
+ (0, packedMap_1.installPackedMap)(newData, sourceMap);
262
+ return { ...outputItem, data: newData };
257
263
  }
258
264
  }
259
265
  //# sourceMappingURL=reconcileTransformSerializerPlugin.js.map