@vxrn/vite-plugin-metro 1.26.0 → 2.0.0-beta.33.1
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.
- package/dist/cjs/babel-plugins/import-meta-env-plugin.cjs +14 -25
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js +14 -25
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +3 -4
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +3 -4
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/cjs/transformer/metroNativeWorker.native.js.map +1 -1
- package/dist/cjs/transformer/metroNativeWorker.test.cjs +11 -0
- package/dist/cjs/transformer/metroNativeWorker.test.native.js +15 -0
- package/dist/cjs/transformer/metroNativeWorker.test.native.js.map +1 -1
- package/dist/esm/babel-plugins/import-meta-env-plugin.mjs +1 -1
- package/dist/esm/babel-plugins/import-meta-env-plugin.mjs.map +1 -1
- package/dist/esm/babel-plugins/import-meta-env-plugin.native.js +1 -1
- package/dist/esm/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +3 -4
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +3 -4
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.mjs.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.native.js.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.test.mjs +11 -0
- package/dist/esm/transformer/metroNativeWorker.test.mjs.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.test.native.js +15 -0
- package/dist/esm/transformer/metroNativeWorker.test.native.js.map +1 -1
- package/package.json +4 -5
- package/src/babel-plugins/import-meta-env-plugin.ts +1 -2
- package/src/metro-config/getMetroConfigFromViteConfig.ts +11 -18
- package/src/transformer/metroNativeWorker.test.ts +173 -87
- package/src/transformer/metroNativeWorker.ts +241 -62
- package/types/babel-plugins/import-meta-env-plugin.d.ts +1 -1
- package/types/babel-plugins/import-meta-env-plugin.d.ts.map +1 -1
- package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -1
- package/types/transformer/metroNativeWorker.d.ts.map +1 -1
|
@@ -82,7 +82,10 @@ export type MetroDependencyData = {
|
|
|
82
82
|
key?: string
|
|
83
83
|
asyncType?: 'async' | 'weak' | 'maybeSync' | null
|
|
84
84
|
contextParams?: MetroContextParams
|
|
85
|
-
locs: Array<{
|
|
85
|
+
locs: Array<{
|
|
86
|
+
start: { line: number; column: number }
|
|
87
|
+
end: { line: number; column: number }
|
|
88
|
+
}>
|
|
86
89
|
isOptional?: boolean
|
|
87
90
|
isESMImportAtSource?: boolean
|
|
88
91
|
isESMImport?: boolean
|
|
@@ -172,11 +175,17 @@ export type OneRouterMetroOptions = {
|
|
|
172
175
|
* transformer reads them from, as the options of its `one-router-metro` plugin
|
|
173
176
|
* entry.
|
|
174
177
|
*/
|
|
175
|
-
export function getOneRouterMetroOptions(
|
|
178
|
+
export function getOneRouterMetroOptions(
|
|
179
|
+
options: MetroWorkerOptions
|
|
180
|
+
): OneRouterMetroOptions | undefined {
|
|
176
181
|
const plugins = (options.customTransformOptions as any)?.vite?.babelConfig?.plugins
|
|
177
182
|
if (!Array.isArray(plugins)) return undefined
|
|
178
183
|
for (const plugin of plugins) {
|
|
179
|
-
if (
|
|
184
|
+
if (
|
|
185
|
+
Array.isArray(plugin) &&
|
|
186
|
+
typeof plugin[0] === 'string' &&
|
|
187
|
+
plugin[0].includes('one-router-metro')
|
|
188
|
+
) {
|
|
180
189
|
return plugin[1] as OneRouterMetroOptions
|
|
181
190
|
}
|
|
182
191
|
}
|
|
@@ -452,7 +461,12 @@ export function applyModuleResolverAliases(
|
|
|
452
461
|
|
|
453
462
|
function rewrite(sourceNode: any) {
|
|
454
463
|
if (sourceNode?.type !== 'Literal' || typeof sourceNode.value !== 'string') return
|
|
455
|
-
const resolved = resolveAliasSpecifier(
|
|
464
|
+
const resolved = resolveAliasSpecifier(
|
|
465
|
+
sourceNode.value,
|
|
466
|
+
filename,
|
|
467
|
+
projectRoot,
|
|
468
|
+
aliases
|
|
469
|
+
)
|
|
456
470
|
if (resolved === undefined) return
|
|
457
471
|
ms.overwrite(sourceNode.start, sourceNode.end, JSON.stringify(resolved))
|
|
458
472
|
changed = true
|
|
@@ -477,7 +491,15 @@ export function applyModuleResolverAliases(
|
|
|
477
491
|
}
|
|
478
492
|
|
|
479
493
|
for (const k of Object.keys(node)) {
|
|
480
|
-
if (
|
|
494
|
+
if (
|
|
495
|
+
k === 'start' ||
|
|
496
|
+
k === 'end' ||
|
|
497
|
+
k === 'loc' ||
|
|
498
|
+
k === 'range' ||
|
|
499
|
+
k === 'parent' ||
|
|
500
|
+
k === 'comments'
|
|
501
|
+
)
|
|
502
|
+
continue
|
|
481
503
|
const child = node[k]
|
|
482
504
|
if (Array.isArray(child)) {
|
|
483
505
|
for (const item of child) walk(item)
|
|
@@ -544,7 +566,11 @@ export function applyInlineEnvVars(
|
|
|
544
566
|
}
|
|
545
567
|
|
|
546
568
|
function isImportMeta(node: any): boolean {
|
|
547
|
-
return
|
|
569
|
+
return (
|
|
570
|
+
node?.type === 'MetaProperty' &&
|
|
571
|
+
node.meta?.name === 'import' &&
|
|
572
|
+
node.property?.name === 'meta'
|
|
573
|
+
)
|
|
548
574
|
}
|
|
549
575
|
|
|
550
576
|
function walk(node: any, parent: any) {
|
|
@@ -552,7 +578,8 @@ export function applyInlineEnvVars(
|
|
|
552
578
|
|
|
553
579
|
if (node.type === 'MemberExpression' || node.type === 'OptionalMemberExpression') {
|
|
554
580
|
const obj = node.object
|
|
555
|
-
const isMember =
|
|
581
|
+
const isMember =
|
|
582
|
+
obj?.type === 'MemberExpression' || obj?.type === 'OptionalMemberExpression'
|
|
556
583
|
const isProcessEnv =
|
|
557
584
|
isMember &&
|
|
558
585
|
obj.object?.type === 'Identifier' &&
|
|
@@ -608,7 +635,15 @@ export function applyInlineEnvVars(
|
|
|
608
635
|
}
|
|
609
636
|
|
|
610
637
|
for (const k of Object.keys(node)) {
|
|
611
|
-
if (
|
|
638
|
+
if (
|
|
639
|
+
k === 'start' ||
|
|
640
|
+
k === 'end' ||
|
|
641
|
+
k === 'loc' ||
|
|
642
|
+
k === 'range' ||
|
|
643
|
+
k === 'parent' ||
|
|
644
|
+
k === 'comments'
|
|
645
|
+
)
|
|
646
|
+
continue
|
|
612
647
|
const child = node[k]
|
|
613
648
|
if (Array.isArray(child)) {
|
|
614
649
|
for (const item of child) walk(item, node)
|
|
@@ -627,7 +662,10 @@ export function applyInlineEnvVars(
|
|
|
627
662
|
const inner = testValue(node.argument)
|
|
628
663
|
return inner === undefined ? undefined : !inner
|
|
629
664
|
}
|
|
630
|
-
if (
|
|
665
|
+
if (
|
|
666
|
+
node?.type === 'BinaryExpression' &&
|
|
667
|
+
(node.operator === '===' || node.operator === '!==')
|
|
668
|
+
) {
|
|
631
669
|
const left = known.has(node.left) ? known.get(node.left) : undefined
|
|
632
670
|
const right = node.right?.type === 'Literal' ? node.right.value : undefined
|
|
633
671
|
if (!known.has(node.left) || node.right?.type !== 'Literal') return undefined
|
|
@@ -666,7 +704,15 @@ export function applyInlineEnvVars(
|
|
|
666
704
|
}
|
|
667
705
|
}
|
|
668
706
|
for (const k of Object.keys(node)) {
|
|
669
|
-
if (
|
|
707
|
+
if (
|
|
708
|
+
k === 'start' ||
|
|
709
|
+
k === 'end' ||
|
|
710
|
+
k === 'loc' ||
|
|
711
|
+
k === 'range' ||
|
|
712
|
+
k === 'parent' ||
|
|
713
|
+
k === 'comments'
|
|
714
|
+
)
|
|
715
|
+
continue
|
|
670
716
|
foldWalk(node[k])
|
|
671
717
|
}
|
|
672
718
|
})(parsed.program)
|
|
@@ -767,7 +813,9 @@ export function applyOneRouterMetro(
|
|
|
767
813
|
}
|
|
768
814
|
if (key === 'ONE_ROUTER_LINKING_CONFIG') {
|
|
769
815
|
// gated to the entry so a user module reading this name is left alone
|
|
770
|
-
return isMetroEntry
|
|
816
|
+
return isMetroEntry
|
|
817
|
+
? JSON.stringify(options.ONE_ROUTER_LINKING_CONFIG ?? null)
|
|
818
|
+
: undefined
|
|
771
819
|
}
|
|
772
820
|
if (key === 'ONE_SETUP_FILE_NATIVE') {
|
|
773
821
|
return options.ONE_SETUP_FILE_NATIVE
|
|
@@ -811,7 +859,15 @@ export function applyOneRouterMetro(
|
|
|
811
859
|
}
|
|
812
860
|
|
|
813
861
|
for (const k of Object.keys(node)) {
|
|
814
|
-
if (
|
|
862
|
+
if (
|
|
863
|
+
k === 'start' ||
|
|
864
|
+
k === 'end' ||
|
|
865
|
+
k === 'loc' ||
|
|
866
|
+
k === 'range' ||
|
|
867
|
+
k === 'parent' ||
|
|
868
|
+
k === 'comments'
|
|
869
|
+
)
|
|
870
|
+
continue
|
|
815
871
|
const child = node[k]
|
|
816
872
|
if (Array.isArray(child)) {
|
|
817
873
|
for (const item of child) walk(item, node)
|
|
@@ -887,7 +943,15 @@ export function collectHoistedBindings(node: any, names: Set<string>) {
|
|
|
887
943
|
}
|
|
888
944
|
|
|
889
945
|
for (const key of Object.keys(n)) {
|
|
890
|
-
if (
|
|
946
|
+
if (
|
|
947
|
+
key === 'start' ||
|
|
948
|
+
key === 'end' ||
|
|
949
|
+
key === 'loc' ||
|
|
950
|
+
key === 'range' ||
|
|
951
|
+
key === 'parent' ||
|
|
952
|
+
key === 'comments'
|
|
953
|
+
)
|
|
954
|
+
continue
|
|
891
955
|
const child = n[key]
|
|
892
956
|
if (Array.isArray(child)) {
|
|
893
957
|
for (const item of child) traverse(item)
|
|
@@ -985,18 +1049,37 @@ export function getCacheKey(config: MetroWorkerConfig = {}, opts?: any): string
|
|
|
985
1049
|
*/
|
|
986
1050
|
export function convertSourceMapToMetroRawMappings(
|
|
987
1051
|
composedMap: any
|
|
988
|
-
): Array<
|
|
1052
|
+
): Array<
|
|
1053
|
+
| [number, number]
|
|
1054
|
+
| [number, number, number, number]
|
|
1055
|
+
| [number, number, number, number, string]
|
|
1056
|
+
> {
|
|
989
1057
|
if (!composedMap) return []
|
|
990
1058
|
const tracer = new TraceMap(composedMap)
|
|
991
|
-
const rawMappings: Array<
|
|
1059
|
+
const rawMappings: Array<
|
|
1060
|
+
| [number, number]
|
|
1061
|
+
| [number, number, number, number]
|
|
1062
|
+
| [number, number, number, number, string]
|
|
1063
|
+
> = []
|
|
992
1064
|
|
|
993
1065
|
eachMapping(tracer, (m) => {
|
|
994
1066
|
if (m.originalLine == null) {
|
|
995
1067
|
rawMappings.push([m.generatedLine, m.generatedColumn])
|
|
996
1068
|
} else if (m.name == null) {
|
|
997
|
-
rawMappings.push([
|
|
1069
|
+
rawMappings.push([
|
|
1070
|
+
m.generatedLine,
|
|
1071
|
+
m.generatedColumn,
|
|
1072
|
+
m.originalLine,
|
|
1073
|
+
m.originalColumn,
|
|
1074
|
+
])
|
|
998
1075
|
} else {
|
|
999
|
-
rawMappings.push([
|
|
1076
|
+
rawMappings.push([
|
|
1077
|
+
m.generatedLine,
|
|
1078
|
+
m.generatedColumn,
|
|
1079
|
+
m.originalLine,
|
|
1080
|
+
m.originalColumn,
|
|
1081
|
+
m.name,
|
|
1082
|
+
])
|
|
1000
1083
|
}
|
|
1001
1084
|
})
|
|
1002
1085
|
|
|
@@ -1007,7 +1090,11 @@ export function convertSourceMapToMetroRawMappings(
|
|
|
1007
1090
|
})
|
|
1008
1091
|
|
|
1009
1092
|
// Deduplicate consecutive identical (generatedLine, generatedColumn) tuples
|
|
1010
|
-
const deduped: Array<
|
|
1093
|
+
const deduped: Array<
|
|
1094
|
+
| [number, number]
|
|
1095
|
+
| [number, number, number, number]
|
|
1096
|
+
| [number, number, number, number, string]
|
|
1097
|
+
> = []
|
|
1011
1098
|
for (const mapping of rawMappings) {
|
|
1012
1099
|
const prev = deduped[deduped.length - 1]
|
|
1013
1100
|
if (prev && prev[0] === mapping[0] && prev[1] === mapping[1]) {
|
|
@@ -1024,8 +1111,19 @@ export function convertSourceMapToMetroRawMappings(
|
|
|
1024
1111
|
*/
|
|
1025
1112
|
export function countLinesAndTerminateMap(
|
|
1026
1113
|
code: string,
|
|
1027
|
-
map: Array<
|
|
1028
|
-
|
|
1114
|
+
map: Array<
|
|
1115
|
+
| [number, number]
|
|
1116
|
+
| [number, number, number, number]
|
|
1117
|
+
| [number, number, number, number, string]
|
|
1118
|
+
> = []
|
|
1119
|
+
): {
|
|
1120
|
+
lineCount: number
|
|
1121
|
+
map: Array<
|
|
1122
|
+
| [number, number]
|
|
1123
|
+
| [number, number, number, number]
|
|
1124
|
+
| [number, number, number, number, string]
|
|
1125
|
+
>
|
|
1126
|
+
} {
|
|
1029
1127
|
const NEWLINE = /\r\n?|\n|\u2028|\u2029/g
|
|
1030
1128
|
let lineCount = 1
|
|
1031
1129
|
let lastLineStart = 0
|
|
@@ -1037,7 +1135,10 @@ export function countLinesAndTerminateMap(
|
|
|
1037
1135
|
const lastLineIndex1Based = lineCount
|
|
1038
1136
|
const lastLineNextColumn0Based = lastLineLength
|
|
1039
1137
|
const lastMapping = map[map.length - 1]
|
|
1040
|
-
const terminatingMapping: [number, number] = [
|
|
1138
|
+
const terminatingMapping: [number, number] = [
|
|
1139
|
+
lastLineIndex1Based,
|
|
1140
|
+
lastLineNextColumn0Based,
|
|
1141
|
+
]
|
|
1041
1142
|
if (
|
|
1042
1143
|
!lastMapping ||
|
|
1043
1144
|
lastMapping[0] !== terminatingMapping[0] ||
|
|
@@ -1084,14 +1185,12 @@ export function wrapJson(
|
|
|
1084
1185
|
* Wraps CommonJS code in Metro's standard define wrapper:
|
|
1085
1186
|
* __d(function (global, _$$_REQUIRE, _$$_IMPORT_DEFAULT, _$$_IMPORT_ALL, module, exports, _dependencyMap) { ... }, moduleId, [dependencyIds])
|
|
1086
1187
|
*/
|
|
1087
|
-
export function wrapModule(
|
|
1088
|
-
code: string,
|
|
1089
|
-
options?: WrapModuleOptions
|
|
1090
|
-
): string {
|
|
1188
|
+
export function wrapModule(code: string, options?: WrapModuleOptions): string {
|
|
1091
1189
|
const globalPrefix = options?.globalPrefix || ''
|
|
1092
1190
|
const depMap = options?.dependencyMapName || '_dependencyMap'
|
|
1093
1191
|
const header = `function (global, _$$_REQUIRE, _$$_IMPORT_DEFAULT, _$$_IMPORT_ALL, module, exports, ${depMap}) {`
|
|
1094
|
-
const requireAlias =
|
|
1192
|
+
const requireAlias =
|
|
1193
|
+
options?.requireAlias !== false ? 'var require = _$$_REQUIRE;\n' : ''
|
|
1095
1194
|
const footer = `}`
|
|
1096
1195
|
|
|
1097
1196
|
if (options?.moduleId !== undefined) {
|
|
@@ -1287,7 +1386,11 @@ export function rewriteDependencyCalls(
|
|
|
1287
1386
|
dependencies.find((d) => d.name === arg.value && d.data.asyncType == null)
|
|
1288
1387
|
if (dep) {
|
|
1289
1388
|
const index = dep.data.index ?? dependencies.indexOf(dep)
|
|
1290
|
-
ms.overwrite(
|
|
1389
|
+
ms.overwrite(
|
|
1390
|
+
arg.start,
|
|
1391
|
+
arg.end,
|
|
1392
|
+
`${depMapName}[${index}], ${JSON.stringify(arg.value)}`
|
|
1393
|
+
)
|
|
1291
1394
|
}
|
|
1292
1395
|
}
|
|
1293
1396
|
} else if (
|
|
@@ -1327,7 +1430,15 @@ export function rewriteDependencyCalls(
|
|
|
1327
1430
|
}
|
|
1328
1431
|
|
|
1329
1432
|
for (const key of Object.keys(node)) {
|
|
1330
|
-
if (
|
|
1433
|
+
if (
|
|
1434
|
+
key === 'start' ||
|
|
1435
|
+
key === 'end' ||
|
|
1436
|
+
key === 'loc' ||
|
|
1437
|
+
key === 'range' ||
|
|
1438
|
+
key === 'parent' ||
|
|
1439
|
+
key === 'comments'
|
|
1440
|
+
)
|
|
1441
|
+
continue
|
|
1331
1442
|
const child = node[key]
|
|
1332
1443
|
if (Array.isArray(child)) {
|
|
1333
1444
|
for (const item of child) walk(item)
|
|
@@ -1395,7 +1506,9 @@ export function extractDependencies(
|
|
|
1395
1506
|
try {
|
|
1396
1507
|
parseResult = parseSync(filename, code, { lang: langForFilename(filename) })
|
|
1397
1508
|
} catch (err: any) {
|
|
1398
|
-
throw new Error(
|
|
1509
|
+
throw new Error(
|
|
1510
|
+
`[vxrn/metro] Failed to parse ${filename} for dependency extraction: ${err.message || err}`
|
|
1511
|
+
)
|
|
1399
1512
|
}
|
|
1400
1513
|
|
|
1401
1514
|
// oxc reports syntax errors on the result rather than throwing. ignoring them
|
|
@@ -1563,7 +1676,9 @@ export function extractDependencies(
|
|
|
1563
1676
|
addDep(node.source.value, true, 'async', node.start, node.end)
|
|
1564
1677
|
addDep(asyncRequirePath, false, null, node.start, node.end)
|
|
1565
1678
|
} else {
|
|
1566
|
-
throw new Error(
|
|
1679
|
+
throw new Error(
|
|
1680
|
+
`[vxrn/metro] Dynamic import with non-string literal is not supported by Metro in ${filename}`
|
|
1681
|
+
)
|
|
1567
1682
|
}
|
|
1568
1683
|
} else if (
|
|
1569
1684
|
node.type === 'CallExpression' &&
|
|
@@ -1582,7 +1697,8 @@ export function extractDependencies(
|
|
|
1582
1697
|
node.start,
|
|
1583
1698
|
node.end,
|
|
1584
1699
|
undefined,
|
|
1585
|
-
node.arguments[0].value !== asyncRequirePath &&
|
|
1700
|
+
node.arguments[0].value !== asyncRequirePath &&
|
|
1701
|
+
isOptionalHere(node.arguments[0].value)
|
|
1586
1702
|
)
|
|
1587
1703
|
}
|
|
1588
1704
|
} else if (
|
|
@@ -1653,7 +1769,15 @@ export function extractDependencies(
|
|
|
1653
1769
|
}
|
|
1654
1770
|
|
|
1655
1771
|
for (const key of Object.keys(node)) {
|
|
1656
|
-
if (
|
|
1772
|
+
if (
|
|
1773
|
+
key === 'start' ||
|
|
1774
|
+
key === 'end' ||
|
|
1775
|
+
key === 'loc' ||
|
|
1776
|
+
key === 'range' ||
|
|
1777
|
+
key === 'parent' ||
|
|
1778
|
+
key === 'comments'
|
|
1779
|
+
)
|
|
1780
|
+
continue
|
|
1657
1781
|
const child = node[key]
|
|
1658
1782
|
if (Array.isArray(child)) {
|
|
1659
1783
|
for (const item of child) walk(item)
|
|
@@ -1672,11 +1796,13 @@ export function extractDependencies(
|
|
|
1672
1796
|
return Array.from(depMap.values())
|
|
1673
1797
|
}
|
|
1674
1798
|
|
|
1675
|
-
function checkReservedStrings(
|
|
1799
|
+
function checkReservedStrings(
|
|
1800
|
+
sourceCode: string,
|
|
1801
|
+
config: MetroWorkerConfig,
|
|
1802
|
+
options: MetroWorkerOptions
|
|
1803
|
+
) {
|
|
1676
1804
|
const reservedStrings: string[] = []
|
|
1677
|
-
if (
|
|
1678
|
-
options.customTransformOptions?.unstable_staticHermesOptimizedRequire === true
|
|
1679
|
-
) {
|
|
1805
|
+
if (options.customTransformOptions?.unstable_staticHermesOptimizedRequire === true) {
|
|
1680
1806
|
reservedStrings.push('_$$_METRO_MODULE_ID')
|
|
1681
1807
|
}
|
|
1682
1808
|
if (config.unstable_dependencyMapReservedName != null) {
|
|
@@ -1767,7 +1893,10 @@ export async function transform(
|
|
|
1767
1893
|
|
|
1768
1894
|
if (isClientEnvironment && /[\\/]expo[\\/]virtual[\\/]env\.js$/.test(filename)) {
|
|
1769
1895
|
if (options.dev) {
|
|
1770
|
-
const rel = path
|
|
1896
|
+
const rel = path
|
|
1897
|
+
.relative(path.dirname(filename), projectRoot)
|
|
1898
|
+
.split(path.sep)
|
|
1899
|
+
.join('/')
|
|
1771
1900
|
sourceCode = `const dotEnvModules = require.context(${JSON.stringify(rel)},false,/^\\.\\/\\.env/);
|
|
1772
1901
|
export const env = !dotEnvModules.keys().length ? process.env : { ...process.env, ...['.env', '.env.development', '.env.local', '.env.development.local'].reduce((acc, file) => {
|
|
1773
1902
|
return { ...acc, ...(dotEnvModules(file)?.default ?? {}) };
|
|
@@ -1781,10 +1910,11 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
1781
1910
|
},
|
|
1782
1911
|
});`
|
|
1783
1912
|
}
|
|
1784
|
-
} else if (
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1913
|
+
} else if (
|
|
1914
|
+
/(^|[\\/])\.env(\.(local|(development|production)(\.local)?))?$/.test(filename)
|
|
1915
|
+
) {
|
|
1916
|
+
const { parseEnvFile } =
|
|
1917
|
+
await import('@expo/metro-config/build/transform-worker/dot-env-development')
|
|
1788
1918
|
sourceCode = `export default ${JSON.stringify(parseEnvFile(sourceCode, isClientEnvironment))};`
|
|
1789
1919
|
}
|
|
1790
1920
|
|
|
@@ -1795,7 +1925,9 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
1795
1925
|
try {
|
|
1796
1926
|
JSON.parse(sourceCode)
|
|
1797
1927
|
} catch (err: any) {
|
|
1798
|
-
throw new Error(
|
|
1928
|
+
throw new Error(
|
|
1929
|
+
`[vxrn/metro] JSON parse error in ${filename}: ${err.message || err}`
|
|
1930
|
+
)
|
|
1799
1931
|
}
|
|
1800
1932
|
|
|
1801
1933
|
let code =
|
|
@@ -1822,7 +1954,9 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
1822
1954
|
})
|
|
1823
1955
|
code = minified.code
|
|
1824
1956
|
} catch (err: any) {
|
|
1825
|
-
throw new Error(
|
|
1957
|
+
throw new Error(
|
|
1958
|
+
`[vxrn/metro] Minifier failed for ${filename}: ${err.message || err}`
|
|
1959
|
+
)
|
|
1826
1960
|
}
|
|
1827
1961
|
}
|
|
1828
1962
|
|
|
@@ -1881,7 +2015,9 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
1881
2015
|
properDescriptor = copied
|
|
1882
2016
|
}
|
|
1883
2017
|
} catch (err: any) {
|
|
1884
|
-
throw new Error(
|
|
2018
|
+
throw new Error(
|
|
2019
|
+
`[vxrn/metro] Asset resolution failed for ${filename}: ${err.message || err}`
|
|
2020
|
+
)
|
|
1885
2021
|
}
|
|
1886
2022
|
}
|
|
1887
2023
|
|
|
@@ -1963,7 +2099,9 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
1963
2099
|
// matches on paths (include/exclude lists, node_modules skips) or stamps
|
|
1964
2100
|
// a location into the output would otherwise get a different answer here
|
|
1965
2101
|
// than the babel plugin it replaced, which is handed an absolute path.
|
|
1966
|
-
filename: path.isAbsolute(filename)
|
|
2102
|
+
filename: path.isAbsolute(filename)
|
|
2103
|
+
? filename
|
|
2104
|
+
: path.resolve(projectRoot, filename),
|
|
1967
2105
|
platform: options.platform,
|
|
1968
2106
|
dev: options.dev,
|
|
1969
2107
|
projectRoot,
|
|
@@ -1979,7 +2117,6 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
1979
2117
|
code = applyOneRouterMetro(code, filename, oneRouterOptions)
|
|
1980
2118
|
}
|
|
1981
2119
|
|
|
1982
|
-
|
|
1983
2120
|
// Step A0b: React Native codegen. `codegenNativeComponent('RNSScreen')` is a
|
|
1984
2121
|
// spec that has to become a real view config registration; without it the
|
|
1985
2122
|
// component has no view config and the screen never mounts. Metro's default
|
|
@@ -2020,12 +2157,16 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2020
2157
|
code = flowResult.code
|
|
2021
2158
|
if (flowResult.map) {
|
|
2022
2159
|
intermediateMaps.push(
|
|
2023
|
-
typeof flowResult.map === 'string'
|
|
2160
|
+
typeof flowResult.map === 'string'
|
|
2161
|
+
? JSON.parse(flowResult.map)
|
|
2162
|
+
: flowResult.map
|
|
2024
2163
|
)
|
|
2025
2164
|
}
|
|
2026
2165
|
}
|
|
2027
2166
|
} catch (err: any) {
|
|
2028
|
-
throw new Error(
|
|
2167
|
+
throw new Error(
|
|
2168
|
+
`[vxrn/metro] Flow transform failed for ${filename}: ${err.message || err}`
|
|
2169
|
+
)
|
|
2029
2170
|
}
|
|
2030
2171
|
}
|
|
2031
2172
|
|
|
@@ -2112,7 +2253,8 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2112
2253
|
// asked for the compiler and silently got nothing.
|
|
2113
2254
|
const shouldRunReactCompiler =
|
|
2114
2255
|
Boolean(options.customTransformOptions?.reactCompiler) ||
|
|
2115
|
-
(hasBabelPlugin(options, 'babel-plugin-react-compiler') &&
|
|
2256
|
+
(hasBabelPlugin(options, 'babel-plugin-react-compiler') &&
|
|
2257
|
+
isReactCompilerCandidate(filename)) ||
|
|
2116
2258
|
code.includes('"use memo"') ||
|
|
2117
2259
|
code.includes("'use memo'")
|
|
2118
2260
|
|
|
@@ -2132,12 +2274,16 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2132
2274
|
code = compilerRes.code
|
|
2133
2275
|
if (compilerRes.map) {
|
|
2134
2276
|
intermediateMaps.push(
|
|
2135
|
-
typeof compilerRes.map === 'string'
|
|
2277
|
+
typeof compilerRes.map === 'string'
|
|
2278
|
+
? JSON.parse(compilerRes.map)
|
|
2279
|
+
: compilerRes.map
|
|
2136
2280
|
)
|
|
2137
2281
|
}
|
|
2138
2282
|
}
|
|
2139
2283
|
} catch (err: any) {
|
|
2140
|
-
throw new Error(
|
|
2284
|
+
throw new Error(
|
|
2285
|
+
`[vxrn/metro] React Compiler failed for ${filename}: ${err.message || err}`
|
|
2286
|
+
)
|
|
2141
2287
|
}
|
|
2142
2288
|
}
|
|
2143
2289
|
|
|
@@ -2155,12 +2301,16 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2155
2301
|
code = workletRes.code
|
|
2156
2302
|
if (workletRes.map) {
|
|
2157
2303
|
intermediateMaps.push(
|
|
2158
|
-
typeof workletRes.map === 'string'
|
|
2304
|
+
typeof workletRes.map === 'string'
|
|
2305
|
+
? JSON.parse(workletRes.map)
|
|
2306
|
+
: workletRes.map
|
|
2159
2307
|
)
|
|
2160
2308
|
}
|
|
2161
2309
|
}
|
|
2162
2310
|
} catch (err: any) {
|
|
2163
|
-
throw new Error(
|
|
2311
|
+
throw new Error(
|
|
2312
|
+
`[vxrn/metro] Worklets transform failed for ${filename}: ${err.message || err}`
|
|
2313
|
+
)
|
|
2164
2314
|
}
|
|
2165
2315
|
}
|
|
2166
2316
|
|
|
@@ -2183,7 +2333,9 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2183
2333
|
sourcemap: true,
|
|
2184
2334
|
})
|
|
2185
2335
|
} catch (err: any) {
|
|
2186
|
-
throw new Error(
|
|
2336
|
+
throw new Error(
|
|
2337
|
+
`[vxrn/metro] Oxc transform failed for ${filename}: ${err.message || err}`
|
|
2338
|
+
)
|
|
2187
2339
|
}
|
|
2188
2340
|
|
|
2189
2341
|
// oxc reports errors on the result rather than throwing. falling back to the
|
|
@@ -2205,7 +2357,10 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2205
2357
|
// run after worklets, including scripts; only module wrapping is conditional.
|
|
2206
2358
|
try {
|
|
2207
2359
|
const esbuildRes = await transformHermesAsync(
|
|
2208
|
-
code,
|
|
2360
|
+
code,
|
|
2361
|
+
filename,
|
|
2362
|
+
true,
|
|
2363
|
+
options.type === 'script' ? undefined : 'cjs'
|
|
2209
2364
|
)
|
|
2210
2365
|
if (esbuildRes) {
|
|
2211
2366
|
code = esbuildRes.code
|
|
@@ -2214,7 +2369,9 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2214
2369
|
}
|
|
2215
2370
|
}
|
|
2216
2371
|
} catch (err: any) {
|
|
2217
|
-
throw new Error(
|
|
2372
|
+
throw new Error(
|
|
2373
|
+
`[vxrn/metro] native async/CJS lowering failed for ${filename}: ${err.message || err}`
|
|
2374
|
+
)
|
|
2218
2375
|
}
|
|
2219
2376
|
|
|
2220
2377
|
// Step E2: per-iteration loop bindings for Hermes.
|
|
@@ -2271,15 +2428,29 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2271
2428
|
`\n})(typeof globalThis !== 'undefined' ? globalThis : typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : this);`
|
|
2272
2429
|
)
|
|
2273
2430
|
code = msScript.toString()
|
|
2274
|
-
intermediateMaps.push(
|
|
2431
|
+
intermediateMaps.push(
|
|
2432
|
+
msScript.generateMap({ source: filename, hires: true, includeContent: true })
|
|
2433
|
+
)
|
|
2275
2434
|
} else if (config.unstable_disableModuleWrapping === true) {
|
|
2276
|
-
const rewriteRes = rewriteDependencyCalls(
|
|
2435
|
+
const rewriteRes = rewriteDependencyCalls(
|
|
2436
|
+
code,
|
|
2437
|
+
dependencies,
|
|
2438
|
+
depMapName,
|
|
2439
|
+
filename,
|
|
2440
|
+
asyncRequirePath
|
|
2441
|
+
)
|
|
2277
2442
|
code = rewriteRes.code
|
|
2278
2443
|
if (rewriteRes.map) {
|
|
2279
2444
|
intermediateMaps.push(rewriteRes.map)
|
|
2280
2445
|
}
|
|
2281
2446
|
} else {
|
|
2282
|
-
const rewriteRes = rewriteDependencyCalls(
|
|
2447
|
+
const rewriteRes = rewriteDependencyCalls(
|
|
2448
|
+
code,
|
|
2449
|
+
dependencies,
|
|
2450
|
+
depMapName,
|
|
2451
|
+
filename,
|
|
2452
|
+
asyncRequirePath
|
|
2453
|
+
)
|
|
2283
2454
|
if (rewriteRes.map) {
|
|
2284
2455
|
intermediateMaps.push(rewriteRes.map)
|
|
2285
2456
|
}
|
|
@@ -2297,7 +2468,9 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2297
2468
|
}
|
|
2298
2469
|
|
|
2299
2470
|
code = msWrap.toString()
|
|
2300
|
-
intermediateMaps.push(
|
|
2471
|
+
intermediateMaps.push(
|
|
2472
|
+
msWrap.generateMap({ source: filename, hires: true, includeContent: true })
|
|
2473
|
+
)
|
|
2301
2474
|
}
|
|
2302
2475
|
|
|
2303
2476
|
// Step G: Minification
|
|
@@ -2329,12 +2502,18 @@ export const env = !dotEnvModules.keys().length ? process.env : { ...process.env
|
|
|
2329
2502
|
intermediateMaps.length = 0
|
|
2330
2503
|
}
|
|
2331
2504
|
} catch (err: any) {
|
|
2332
|
-
throw new Error(
|
|
2505
|
+
throw new Error(
|
|
2506
|
+
`[vxrn/metro] Minifier failed for ${filename}: ${err.message || err}`
|
|
2507
|
+
)
|
|
2333
2508
|
}
|
|
2334
2509
|
}
|
|
2335
2510
|
|
|
2336
2511
|
// Step H: Compose all pipeline maps and convert to Metro raw mapping segment tuples
|
|
2337
|
-
let rawMappings: Array<
|
|
2512
|
+
let rawMappings: Array<
|
|
2513
|
+
| [number, number]
|
|
2514
|
+
| [number, number, number, number]
|
|
2515
|
+
| [number, number, number, number, string]
|
|
2516
|
+
> = []
|
|
2338
2517
|
|
|
2339
2518
|
if (intermediateMaps.length > 0) {
|
|
2340
2519
|
const cleanMaps = intermediateMaps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import-meta-env-plugin.d.ts","sourceRoot":"","sources":["../../src/babel-plugins/import-meta-env-plugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"import-meta-env-plugin.d.ts","sourceRoot":"","sources":["../../src/babel-plugins/import-meta-env-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,aAAa,CAAA;AAIxD,KAAK,aAAa,GAAG;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAA;CACnD,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,mBAAmB,0HA2I9B,CAAA;AAEF,eAAe,mBAAmB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getMetroConfigFromViteConfig.d.ts","sourceRoot":"","sources":["../../src/metro-config/getMetroConfigFromViteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAc1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"getMetroConfigFromViteConfig.d.ts","sourceRoot":"","sources":["../../src/metro-config/getMetroConfigFromViteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAc1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AA4E/D;;;;;;;GAOG;AACH,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,cAAc,EACtB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAAC;IAAE,aAAa,EAAE,GAAG,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,WAAW,CAAA;CAAE,CAAC,CAqJhF;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,cAAc,EACtB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAAC,mBAAmB,CAAC,CAqL9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metroNativeWorker.d.ts","sourceRoot":"","sources":["../../src/transformer/metroNativeWorker.ts"],"names":[],"mappings":"AA0EA,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,EAAE,OAAO,CAAA;IAClB,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC1C,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,WAAW,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,GAAG,IAAI,CAAA;IACjD,aAAa,CAAC,EAAE,kBAAkB,CAAA;IAClC,IAAI,EAAE,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"metroNativeWorker.d.ts","sourceRoot":"","sources":["../../src/transformer/metroNativeWorker.ts"],"names":[],"mappings":"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"}
|