@vxrn/vite-plugin-metro 2.0.0-beta.53.1 → 2.0.0-beta.57.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.
Files changed (115) hide show
  1. package/dist/cjs/index.cjs +0 -2
  2. package/dist/cjs/index.native.cjs +0 -2
  3. package/dist/cjs/index.native.js +0 -2
  4. package/dist/cjs/index.native.js.map +1 -1
  5. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +48 -38
  6. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.cjs +62 -42
  7. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +62 -42
  8. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  9. package/dist/cjs/transformer/babel-transformer.cjs +53 -4
  10. package/dist/cjs/transformer/babel-transformer.native.cjs +65 -6
  11. package/dist/cjs/transformer/babel-transformer.native.js +65 -6
  12. package/dist/cjs/transformer/babel-transformer.native.js.map +1 -1
  13. package/dist/cjs/transformer/expoVirtualEnv.cjs +92 -0
  14. package/dist/cjs/transformer/expoVirtualEnv.native.cjs +113 -0
  15. package/dist/cjs/transformer/expoVirtualEnv.native.js +115 -0
  16. package/dist/cjs/transformer/expoVirtualEnv.native.js.map +1 -0
  17. package/dist/cjs/transformer/loadBabelConfig.cjs +1 -1
  18. package/dist/cjs/transformer/loadBabelConfig.native.cjs +1 -1
  19. package/dist/cjs/transformer/loadBabelConfig.native.js +1 -1
  20. package/dist/cjs/transformer/loadBabelConfig.native.js.map +1 -1
  21. package/dist/cjs/transformer/metroNativeWorker.cjs +8 -20
  22. package/dist/cjs/transformer/metroNativeWorker.native.cjs +8 -20
  23. package/dist/cjs/transformer/metroNativeWorker.native.js +8 -20
  24. package/dist/cjs/transformer/metroNativeWorker.native.js.map +1 -1
  25. package/dist/cjs/transformer/transformSync.cjs +3 -3
  26. package/dist/cjs/transformer/transformSync.native.cjs +3 -3
  27. package/dist/cjs/transformer/transformSync.native.js +3 -3
  28. package/dist/cjs/transformer/transformSync.native.js.map +1 -1
  29. package/dist/cjs/utils/exit.cjs +1 -1
  30. package/dist/cjs/utils/exit.native.cjs +1 -1
  31. package/dist/cjs/utils/exit.native.js +1 -1
  32. package/dist/cjs/utils/exit.native.js.map +1 -1
  33. package/dist/esm/index.js +1 -2
  34. package/dist/esm/index.mjs +1 -2
  35. package/dist/esm/index.native.js +1 -2
  36. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +48 -38
  37. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
  38. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +62 -42
  39. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  40. package/dist/esm/transformer/babel-transformer.mjs +133 -96
  41. package/dist/esm/transformer/babel-transformer.mjs.map +1 -1
  42. package/dist/esm/transformer/babel-transformer.native.js +147 -103
  43. package/dist/esm/transformer/babel-transformer.native.js.map +1 -1
  44. package/dist/esm/transformer/expoVirtualEnv.mjs +67 -0
  45. package/dist/esm/transformer/expoVirtualEnv.mjs.map +1 -0
  46. package/dist/esm/transformer/expoVirtualEnv.native.js +86 -0
  47. package/dist/esm/transformer/expoVirtualEnv.native.js.map +1 -0
  48. package/dist/esm/transformer/loadBabelConfig.mjs +1 -1
  49. package/dist/esm/transformer/loadBabelConfig.mjs.map +1 -1
  50. package/dist/esm/transformer/loadBabelConfig.native.js +1 -1
  51. package/dist/esm/transformer/loadBabelConfig.native.js.map +1 -1
  52. package/dist/esm/transformer/metroNativeWorker.mjs +8 -20
  53. package/dist/esm/transformer/metroNativeWorker.mjs.map +1 -1
  54. package/dist/esm/transformer/metroNativeWorker.native.js +8 -20
  55. package/dist/esm/transformer/metroNativeWorker.native.js.map +1 -1
  56. package/dist/esm/transformer/transformSync.mjs +3 -3
  57. package/dist/esm/transformer/transformSync.mjs.map +1 -1
  58. package/dist/esm/transformer/transformSync.native.js +3 -3
  59. package/dist/esm/transformer/transformSync.native.js.map +1 -1
  60. package/dist/esm/utils/exit.mjs +1 -1
  61. package/dist/esm/utils/exit.mjs.map +1 -1
  62. package/dist/esm/utils/exit.native.js +1 -1
  63. package/dist/esm/utils/exit.native.js.map +1 -1
  64. package/package.json +7 -9
  65. package/src/index.ts +0 -2
  66. package/src/metro-config/getMetroConfigFromViteConfig.test.ts +5 -0
  67. package/src/metro-config/getMetroConfigFromViteConfig.ts +81 -96
  68. package/src/plugins/metroPlugin.ts +3 -6
  69. package/src/transformer/babel-transformer.test.ts +118 -0
  70. package/src/transformer/babel-transformer.ts +82 -15
  71. package/src/transformer/expoVirtualEnv.integration.test.ts +106 -0
  72. package/src/transformer/expoVirtualEnv.test.ts +72 -0
  73. package/src/transformer/expoVirtualEnv.ts +115 -0
  74. package/src/transformer/loadBabelConfig.ts +1 -1
  75. package/src/transformer/metroNativeWorker.test.ts +105 -1
  76. package/src/transformer/metroNativeWorker.ts +12 -33
  77. package/src/transformer/transformSync.test.ts +22 -0
  78. package/src/transformer/transformSync.ts +4 -4
  79. package/src/utils/exit.ts +2 -2
  80. package/src/utils/getTerminalReporter.ts +1 -1
  81. package/src/utils/projectImport.ts +2 -2
  82. package/types/index.d.ts +0 -2
  83. package/types/index.d.ts.map +1 -1
  84. package/types/metro-config/getMetroConfigFromViteConfig.d.ts +2 -2
  85. package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -1
  86. package/types/plugins/metroPlugin.d.ts +2 -4
  87. package/types/plugins/metroPlugin.d.ts.map +1 -1
  88. package/types/transformer/babel-transformer.d.ts +10 -1
  89. package/types/transformer/babel-transformer.d.ts.map +1 -1
  90. package/types/transformer/expoVirtualEnv.d.ts +8 -0
  91. package/types/transformer/expoVirtualEnv.d.ts.map +1 -0
  92. package/types/transformer/metroNativeWorker.d.ts.map +1 -1
  93. package/types/utils/projectImport.d.ts +2 -2
  94. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.cjs +0 -59
  95. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.cjs +0 -62
  96. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js +0 -64
  97. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js.map +0 -1
  98. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs +0 -35
  99. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.cjs +0 -37
  100. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +0 -39
  101. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +0 -1
  102. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs +0 -40
  103. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs.map +0 -1
  104. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js +0 -41
  105. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js.map +0 -1
  106. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs +0 -15
  107. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs.map +0 -1
  108. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +0 -15
  109. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +0 -1
  110. package/src/plugins/expoManifestRequestHandlerPlugin.ts +0 -88
  111. package/src/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.ts +0 -28
  112. package/types/plugins/expoManifestRequestHandlerPlugin.d.ts +0 -14
  113. package/types/plugins/expoManifestRequestHandlerPlugin.d.ts.map +0 -1
  114. package/types/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.d.ts +0 -5
  115. package/types/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.d.ts.map +0 -1
@@ -512,7 +512,7 @@ describe('metroNativeWorker', () => {
512
512
  expect(configDefault.defaultConfig.transformerPath).toContain('metroNativeWorker')
513
513
  expect(configDefault.defaultConfig.transformer.transformerPath).toBeUndefined()
514
514
 
515
- // Opting back into babel via metroPluginOptions leaves expo's default
515
+ // Opting back into babel via metroPluginOptions leaves Metro's default
516
516
  // worker in the key, which is itself proof that top level is where metro
517
517
  // reads it from.
518
518
  const configOptOff = await buildMetroConfigInputFromViteConfig(mockViteConfig, {
@@ -1569,3 +1569,107 @@ export const all = { ...import.meta.env };`,
1569
1569
  expect(out).toContain('"EXPO_PUBLIC_API":"one"')
1570
1570
  })
1571
1571
  })
1572
+
1573
+ describe('optional expo virtual env', () => {
1574
+ const virtualFilename = '/proj/node_modules/expo/virtual/env.js'
1575
+ const virtualSource = 'export const env = process.env;'
1576
+
1577
+ function runFactory(
1578
+ code: string,
1579
+ opts: { requireImpl: (...args: any[]) => any; procEnv: Record<string, string> }
1580
+ ) {
1581
+ const module = { exports: {} as any }
1582
+ vm.runInNewContext(code, {
1583
+ __d(factory: any) {
1584
+ factory(
1585
+ {},
1586
+ opts.requireImpl,
1587
+ (v: any) => v,
1588
+ (v: any) => v,
1589
+ module,
1590
+ module.exports,
1591
+ []
1592
+ )
1593
+ },
1594
+ process: { env: opts.procEnv },
1595
+ console,
1596
+ })
1597
+ return module.exports
1598
+ }
1599
+
1600
+ const noRequire = () => {
1601
+ throw new Error('unexpected require call')
1602
+ }
1603
+
1604
+ it('merges .env files over process.env in dev like upstream', async () => {
1605
+ const result = await transform({}, '/proj', virtualFilename, Buffer.from(virtualSource), {
1606
+ dev: true,
1607
+ minify: false,
1608
+ platform: 'ios',
1609
+ type: 'module',
1610
+ customTransformOptions: { environment: 'client' },
1611
+ })
1612
+ const code = result.output[0].data.code
1613
+ expect(code).toContain('dotEnvModules')
1614
+ expect(code).toContain('.env.development.local')
1615
+ const contextModule: any = () => ({
1616
+ default: { EXPO_PUBLIC_SENTINEL_DOTENV: 'dotenv-sentinel-value' },
1617
+ })
1618
+ contextModule.keys = () => ['./.env']
1619
+ // metro lowers require.context(rel) to require(contextId, rel)
1620
+ const requireImpl: any = (_id: unknown, _rel?: unknown) => contextModule
1621
+ const mod = runFactory(code, {
1622
+ requireImpl,
1623
+ procEnv: { EXPO_PUBLIC_SENTINEL_PROC: 'proc-sentinel-value' },
1624
+ })
1625
+ expect(mod.env.EXPO_PUBLIC_SENTINEL_DOTENV).toBe('dotenv-sentinel-value')
1626
+ expect(mod.env.EXPO_PUBLIC_SENTINEL_PROC).toBe('proc-sentinel-value')
1627
+ })
1628
+
1629
+ it('throws a naming error in production like upstream', async () => {
1630
+ const result = await transform({}, '/proj', virtualFilename, Buffer.from(virtualSource), {
1631
+ dev: false,
1632
+ minify: false,
1633
+ platform: 'ios',
1634
+ type: 'module',
1635
+ customTransformOptions: { environment: 'client' },
1636
+ })
1637
+ const mod = runFactory(result.output[0].data.code, {
1638
+ requireImpl: noRequire,
1639
+ procEnv: {},
1640
+ })
1641
+ expect(() => mod.env.EXPO_PUBLIC_ANYTHING).toThrow(
1642
+ 'not supported in production bundles'
1643
+ )
1644
+ })
1645
+
1646
+ it('leaves .env files alone without Expo installed', async () => {
1647
+ const result = await transform(
1648
+ {},
1649
+ '/proj-no-expo',
1650
+ '/proj-no-expo/.env',
1651
+ Buffer.from('EXPO_PUBLIC_A=1\nSECRET=2\n'),
1652
+ {
1653
+ dev: true,
1654
+ minify: false,
1655
+ platform: 'ios',
1656
+ type: 'module',
1657
+ customTransformOptions: { environment: 'client' },
1658
+ }
1659
+ )
1660
+ const code = result.output[0].data.code
1661
+ expect(code).toContain('EXPO_PUBLIC_A')
1662
+ expect(code).not.toContain('EXPO_PUBLIC_A":"1')
1663
+ })
1664
+
1665
+ it('leaves the virtual module alone outside client environments', async () => {
1666
+ const result = await transform({}, '/proj', virtualFilename, Buffer.from(virtualSource), {
1667
+ dev: true,
1668
+ minify: false,
1669
+ platform: 'ios',
1670
+ type: 'module',
1671
+ customTransformOptions: { environment: 'react-server' },
1672
+ })
1673
+ expect(result.output[0].data.code).not.toContain('require.context')
1674
+ })
1675
+ })
@@ -14,6 +14,8 @@ import {
14
14
  transformReactNativeCodegen,
15
15
  } from '@vxrn/compiler'
16
16
  import { withExpoPublicEnvAliases } from '@vxrn/utils/publicEnv'
17
+
18
+ import { substituteExpoVirtualEnvSource } from './expoVirtualEnv'
17
19
  import { getPlatformEnv, metroPlatformToViteEnvironment } from '../env/platformEnv'
18
20
 
19
21
  /**
@@ -1896,39 +1898,16 @@ export async function transform(
1896
1898
 
1897
1899
  let sourceCode = typeof data === 'string' ? data : data.toString('utf8')
1898
1900
 
1899
- // expo's own transform worker substitutes the source of two virtual files
1900
- // before transforming them. this worker replaces that worker outright, so
1901
- // without the same substitution `expo/virtual/env` stays a bare
1902
- // `process.env` re-export and no .env file ever reaches the bundle.
1903
- const environment = options.customTransformOptions?.environment
1904
- const isClientEnvironment = environment !== 'node' && environment !== 'react-server'
1905
-
1906
- if (isClientEnvironment && /[\\/]expo[\\/]virtual[\\/]env\.js$/.test(filename)) {
1907
- if (options.dev) {
1908
- const rel = path
1909
- .relative(path.dirname(filename), projectRoot)
1910
- .split(path.sep)
1911
- .join('/')
1912
- sourceCode = `const dotEnvModules = require.context(${JSON.stringify(rel)},false,/^\\.\\/\\.env/);
1913
- export const env = !dotEnvModules.keys().length ? process.env : { ...process.env, ...['.env', '.env.development', '.env.local', '.env.development.local'].reduce((acc, file) => {
1914
- return { ...acc, ...(dotEnvModules(file)?.default ?? {}) };
1915
- }, {}) };`
1916
- } else {
1917
- // production inlines every value at its use site, so reaching this module
1918
- // at all is a bug worth naming rather than silently returning undefined.
1919
- sourceCode = `export const env = new Proxy({}, {
1920
- get(target, key) {
1921
- throw new Error(\`Attempting to access internal environment variable "\${String(key)}" is not supported in production bundles.\`);
1922
- },
1923
- });`
1924
- }
1925
- } else if (
1926
- /(^|[\\/])\.env(\.(local|(development|production)(\.local)?))?$/.test(filename)
1927
- ) {
1928
- const { parseEnvFile } =
1929
- await import('@expo/metro-config/build/transform-worker/dot-env-development')
1930
- sourceCode = `export default ${JSON.stringify(parseEnvFile(sourceCode, isClientEnvironment))};`
1931
- }
1901
+ // narrow optional Expo compatibility, shared with the babel
1902
+ // transformer: only expo/virtual/env.js and .env files are special, and
1903
+ // apps without Expo installed never resolve or load any Expo module.
1904
+ sourceCode = substituteExpoVirtualEnvSource({
1905
+ filename,
1906
+ src: sourceCode,
1907
+ projectRoot,
1908
+ dev: options.dev,
1909
+ environment: options.customTransformOptions?.environment,
1910
+ })
1932
1911
 
1933
1912
  checkReservedStrings(sourceCode, config, options)
1934
1913
 
@@ -47,4 +47,26 @@ describe('transformSync', () => {
47
47
  )
48
48
  ).toThrow('use `importForwarding.moduleNames`')
49
49
  })
50
+
51
+ it('parses the readonly Flow interfaces shipped by React Native 0.87', () => {
52
+ const result = transformSync(
53
+ `// @flow strict
54
+ interface Registration<TArgs> {
55
+ readonly context: unknown;
56
+ readonly listener: (...args: TArgs) => unknown;
57
+ }
58
+ export function readContext(registration: Registration<[]>): unknown {
59
+ return registration.context;
60
+ }`,
61
+ {
62
+ filename: '/project/node_modules/react-native/EventEmitter.js',
63
+ babelrc: false,
64
+ configFile: false,
65
+ presets: [require('@react-native/babel-preset')],
66
+ },
67
+ { hermesParser: true }
68
+ )
69
+
70
+ expect(result?.code).toContain('function readContext(registration)')
71
+ })
50
72
  })
@@ -25,7 +25,7 @@ export function transformSync(
25
25
  ) as babel.TransformOptions | null
26
26
  if (!loadedBabelConfig) return null
27
27
 
28
- // expo adds worklets automatically. keep the app's earlier configured pass so a
28
+ // presets can add worklets automatically. keep the app's earlier configured pass so a
29
29
  // later preset pass cannot serialize the closure with different options.
30
30
  let hasWorkletsPlugin = false
31
31
  loadedBabelConfig.plugins = loadedBabelConfig.plugins?.filter((plugin) => {
@@ -60,14 +60,14 @@ export function transformSync(
60
60
  // We can try to quickly detect if the file uses flow syntax by checking for the @flow pragma which is present in every React Native file.
61
61
  (hermesParser || src.includes(' @flow'))
62
62
  ) {
63
- return parseWithHermes(src, loadedBabelConfig)
63
+ return parseWithFlow(src, loadedBabelConfig)
64
64
  }
65
65
 
66
66
  return parseWithBabel(src, loadedBabelConfig)
67
67
  }
68
68
 
69
- function parseWithHermes(src: string, babelConfig: babel.TransformOptions) {
70
- const sourceAst = require('hermes-parser').parse(src, {
69
+ function parseWithFlow(src: string, babelConfig: babel.TransformOptions) {
70
+ const sourceAst = require('flow-parser').parse(src, {
71
71
  babel: true,
72
72
  sourceType: babelConfig.sourceType,
73
73
  })
package/src/utils/exit.ts CHANGED
@@ -191,7 +191,7 @@ function killActiveChildProcesses(signal: NodeJS.Signals): number {
191
191
  *
192
192
  * @example ```bash
193
193
  * Done writing bundle output
194
- * Detected 2 processes preventing Expo from exiting, forcefully exiting now.
194
+ * Detected 2 processes preventing the command from exiting, forcefully exiting now.
195
195
  * - node /Users/cedric/../node_modules/nativewind/dist/metro/tailwind/v3/child.js
196
196
  * - node /Users/cedric/../node_modules/nativewind/dist/metro/tailwind/v3/child.js
197
197
  * ```
@@ -213,7 +213,7 @@ function tryWarnActiveProcesses() {
213
213
  }
214
214
 
215
215
  if (!activeProcesses.length) {
216
- warn('Something prevented Expo from exiting, forcefully exiting now.')
216
+ warn('Something prevented the command from exiting, forcefully exiting now.')
217
217
  } else {
218
218
  const singularOrPlural =
219
219
  activeProcesses.length === 1 ? '1 process' : `${activeProcesses.length} processes`
@@ -1,4 +1,4 @@
1
- // For Metro and Expo, we only import types here.
1
+ // only import Metro types here.
2
2
  // We use `projectImport` to dynamically import the actual modules
3
3
  // at runtime to ensure they are loaded from the user's project root.
4
4
  import type { TerminalReporter as TerminalReporterT, Terminal as TerminalT } from 'metro'
@@ -7,8 +7,8 @@ export const { debug } = createDebugger('vite-metro:projectImport')
7
7
  /**
8
8
  * Dynamically imports a module from the user's project root instead of this package's location.
9
9
  *
10
- * This avoids issues in monorepos or complex setups where dependencies like Expo or Metro
11
- * might be installed in nested `node_modules` directories.
10
+ * This avoids issues in monorepos or complex setups where Metro might be
11
+ * installed in a nested `node_modules` directory.
12
12
  */
13
13
  export async function projectImport<T = any>(
14
14
  projectRoot: string,
package/types/index.d.ts CHANGED
@@ -1,7 +1,5 @@
1
1
  export { metroPlugin } from './plugins/metroPlugin';
2
2
  export type { MetroPluginOptions } from './plugins/metroPlugin';
3
- export { expoManifestRequestHandlerPlugin } from './plugins/expoManifestRequestHandlerPlugin';
4
- export type { ExpoManifestRequestHandlerPluginPluginOptions } from './plugins/expoManifestRequestHandlerPlugin';
5
3
  export { getPlatformEnv, getPlatformEnvDefine, metroPlatformToViteEnvironment, type Platform, type PlatformEnv, type ViteEnvironment, } from './env/platformEnv';
6
4
  export { checkAndClearMetroCacheFromVite } from './utils/metroCacheManager';
7
5
  export { getMetroConfigFromViteConfig, buildMetroConfigInputFromViteConfig, } from './metro-config/getMetroConfigFromViteConfig';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EAAE,gCAAgC,EAAE,MAAM,4CAA4C,CAAA;AAC7F,YAAY,EAAE,6CAA6C,EAAE,MAAM,4CAA4C,CAAA;AAC/G,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,8BAA8B,EAC9B,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAA;AAC3E,OAAO,EACL,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAE,mDAAmD,EAAE,MAAM,oEAAoE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,8BAA8B,EAC9B,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAA;AAC3E,OAAO,EACL,4BAA4B,EAC5B,mCAAmC,GACpC,MAAM,6CAA6C,CAAA;AACpD,OAAO,EAAE,mDAAmD,EAAE,MAAM,oEAAoE,CAAA"}
@@ -1,11 +1,11 @@
1
- import type { ResolvedConfig } from 'vite';
1
+ import { type ResolvedConfig } from 'vite';
2
2
  import type { MetroPluginOptions } from '../plugins/metroPlugin';
3
3
  import type { ExtraConfig, MetroConfigExtended } from './types';
4
4
  /**
5
5
  * Build the Metro config input WITHOUT calling Metro's `loadConfig`. Returns
6
6
  * the same shape Metro `loadConfig` expects as its second argument. Use this
7
7
  * from a project's `metro.config.cjs` so the outer `loadConfig` (driven by
8
- * Expo CLI / Metro CLI) is the only one that runs — avoids infinite
8
+ * the Metro CLI) is the only one that runs. this avoids infinite
9
9
  * recursion that would happen if the inner pipeline also called `loadConfig`
10
10
  * and re-read the same metro.config.cjs.
11
11
  */
@@ -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;AAe1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAuJ/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,CAsJhF;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,cAAc,EACtB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAAC,mBAAmB,CAAC,CAkL9B"}
1
+ {"version":3,"file":"getMetroConfigFromViteConfig.d.ts","sourceRoot":"","sources":["../../src/metro-config/getMetroConfigFromViteConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,MAAM,CAAA;AAalE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAA;AAkL/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,CAqIhF;AAED,wBAAsB,4BAA4B,CAChD,MAAM,EAAE,cAAc,EACtB,kBAAkB,EAAE,kBAAkB,GACrC,OAAO,CAAC,mBAAmB,CAAC,CA2J9B"}
@@ -46,10 +46,8 @@ export type MetroPluginOptions = {
46
46
  /**
47
47
  * Overrides the main module name which is normally defined as the `main` field in `package.json`.
48
48
  *
49
- * This will affect how `/.expo/.virtual-metro-entry.bundle` behaves.
50
- *
51
- * It can be used to change the entry point of the React Native app without the need of using
52
- * the `main` field in `package.json`.
49
+ * Changes the React Native entry point without requiring a `main` field in
50
+ * `package.json`.
53
51
  */
54
52
  mainModuleName?: string;
55
53
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"metroPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/metroPlugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAYxC,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,OAAO,CAAA;AAOtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAIjE,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;AAC3D,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;AAEzD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,sBAAsB,CAAC,EACnB,gBAAgB,GAChB,CAAC,CAAC,aAAa,EAAE,gBAAgB,KAAK,gBAAgB,CAAC,CAAA;IAC3D;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,kDAAkD;IAClD,WAAW,CAAC,EAAE,gBAAgB,CAAA;IAC9B,oBAAoB,CAAC,EAAE,CAAC,aAAa,EAAE,gBAAgB,KAAK,gBAAgB,CAAA;IAC5E;;;;;;;;;;OAUG;IACH,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAA;IACjC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC1B;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,YAAY,CAuT1E"}
1
+ {"version":3,"file":"metroPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/metroPlugin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAWxC,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,OAAO,CAAA;AAOtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAIjE,KAAK,kBAAkB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;AAC3D,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;AAEzD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,CAAC,EAAE,kBAAkB,CAAA;IACzB,sBAAsB,CAAC,EACnB,gBAAgB,GAChB,CAAC,CAAC,aAAa,EAAE,gBAAgB,KAAK,gBAAgB,CAAC,CAAA;IAC3D;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,kDAAkD;IAClD,WAAW,CAAC,EAAE,gBAAgB,CAAA;IAC9B,oBAAoB,CAAC,EAAE,CAAC,aAAa,EAAE,gBAAgB,KAAK,gBAAgB,CAAA;IAC5E;;;;;;;;;;OAUG;IACH,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAA;IACjC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;IACjC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC1B;;;;;;;;OAQG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,YAAY,CAuT1E"}
@@ -1,5 +1,13 @@
1
+ /**
2
+ * Copyright (c) 650 Industries (Expo). All rights reserved.
3
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
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
+ import type { BabelTransformerCacheKeyOptions } from 'metro-babel-transformer';
1
9
  import type { TransformOptions } from './babel-core';
2
- export type ExpoBabelCaller = TransformOptions['caller'] & {
10
+ export type MetroBabelCaller = TransformOptions['caller'] & {
3
11
  supportsReactCompiler?: boolean;
4
12
  isReactServer?: boolean;
5
13
  isHMREnabled?: boolean;
@@ -16,4 +24,5 @@ export type ExpoBabelCaller = TransformOptions['caller'] & {
16
24
  projectRoot: string;
17
25
  oneViteMetroBabelConfig?: boolean;
18
26
  };
27
+ export declare function getCacheKey(options?: BabelTransformerCacheKeyOptions): string;
19
28
  //# sourceMappingURL=babel-transformer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"babel-transformer.d.ts","sourceRoot":"","sources":["../../src/transformer/babel-transformer.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAKpD,MAAM,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,GAAG;IACzD,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC,CAAA"}
1
+ {"version":3,"file":"babel-transformer.d.ts","sourceRoot":"","sources":["../../src/transformer/babel-transformer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAGV,+BAA+B,EAChC,MAAM,yBAAyB,CAAA;AAMhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAMpD,MAAM,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,QAAQ,CAAC,GAAG;IAC1D,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;IACrC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC,CAAA;AAuND,wBAAgB,WAAW,CAAC,OAAO,CAAC,EAAE,+BAA+B,GAAG,MAAM,CA8C7E"}
@@ -0,0 +1,8 @@
1
+ export declare function substituteExpoVirtualEnvSource({ filename, src, projectRoot, dev, environment, }: {
2
+ filename: string;
3
+ src: string;
4
+ projectRoot: string;
5
+ dev: boolean | undefined;
6
+ environment: unknown;
7
+ }): string;
8
+ //# sourceMappingURL=expoVirtualEnv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expoVirtualEnv.d.ts","sourceRoot":"","sources":["../../src/transformer/expoVirtualEnv.ts"],"names":[],"mappings":"AA4CA,wBAAgB,8BAA8B,CAAC,EAC7C,QAAQ,EACR,GAAG,EACH,WAAW,EACX,GAAG,EACH,WAAW,GACZ,EAAE;IACD,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,OAAO,GAAG,SAAS,CAAA;IACxB,WAAW,EAAE,OAAO,CAAA;CACrB,GAAG,MAAM,CA0DT"}
@@ -1 +1 @@
1
- {"version":3,"file":"metroNativeWorker.d.ts","sourceRoot":"","sources":["../../src/transformer/metroNativeWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metroNativeWorker.d.ts","sourceRoot":"","sources":["../../src/transformer/metroNativeWorker.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@ export declare const debug: (((...args: any[]) => any) & {
4
4
  /**
5
5
  * Dynamically imports a module from the user's project root instead of this package's location.
6
6
  *
7
- * This avoids issues in monorepos or complex setups where dependencies like Expo or Metro
8
- * might be installed in nested `node_modules` directories.
7
+ * This avoids issues in monorepos or complex setups where Metro might be
8
+ * installed in a nested `node_modules` directory.
9
9
  */
10
10
  export declare function projectImport<T = any>(projectRoot: string, path: string): Promise<T>;
11
11
  export declare function projectResolve(projectRoot: string, path: string): string;
@@ -1,59 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all) __defProp(target, name, {
7
- get: all[name],
8
- enumerable: true
9
- });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
- get: () => from[key],
15
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
- });
17
- }
18
- return to;
19
- };
20
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
- var expoManifestRequestHandlerPlugin_exports = {};
22
- __export(expoManifestRequestHandlerPlugin_exports, { expoManifestRequestHandlerPlugin: () => expoManifestRequestHandlerPlugin });
23
- module.exports = __toCommonJS(expoManifestRequestHandlerPlugin_exports);
24
- var import_node_path = require("node:path");
25
- var import_node_tls = require("node:tls");
26
- var import_projectImport = require("../utils/projectImport.cjs");
27
- var import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require("../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs");
28
- function expoManifestRequestHandlerPlugin(options) {
29
- return {
30
- name: "expo-manifest-request-handler",
31
- configureServer(server) {
32
- const projectRoot = (0, import_node_path.resolve)(server.config.root);
33
- let ExpoGoManifestHandlerMiddleware;
34
- const importPromise = (0, import_projectImport.projectImport)(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js").then((mod) => {
35
- ExpoGoManifestHandlerMiddleware = mod.default.ExpoGoManifestHandlerMiddleware;
36
- });
37
- server.middlewares.use(async (req, res, next) => {
38
- if (!req.headers["expo-platform"]) {
39
- return next();
40
- }
41
- if (!ExpoGoManifestHandlerMiddleware) {
42
- await importPromise;
43
- }
44
- const protocol = req.socket instanceof import_node_tls.TLSSocket && req.socket.encrypted ? "https" : "http";
45
- const manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, { constructUrl: ({ scheme, hostname }) => {
46
- const host = req.headers["x-forwarded-host"] || req.headers.host || hostname;
47
- if (!scheme) {
48
- return host;
49
- }
50
- return `${protocol || scheme}://${host}`;
51
- } });
52
- if (options?.mainModuleName) {
53
- (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, options.mainModuleName);
54
- }
55
- manifestHandlerMiddleware.handleRequestAsync(req, res, next);
56
- });
57
- }
58
- };
59
- }
@@ -1,62 +0,0 @@
1
- "use strict";
2
-
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: true
11
- });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
- get: () => from[key],
17
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
- });
19
- }
20
- return to;
21
- };
22
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
23
- var expoManifestRequestHandlerPlugin_exports = {};
24
- __export(expoManifestRequestHandlerPlugin_exports, { expoManifestRequestHandlerPlugin: () => expoManifestRequestHandlerPlugin });
25
- module.exports = __toCommonJS(expoManifestRequestHandlerPlugin_exports);
26
- var import_path = require("path");
27
- var import_tls = require("tls");
28
- var import_projectImport = require("../utils/projectImport.native.js");
29
- var import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require("../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js");
30
- function expoManifestRequestHandlerPlugin(options) {
31
- return {
32
- name: "expo-manifest-request-handler",
33
- configureServer(server) {
34
- var projectRoot = (0, import_path.resolve)(server.config.root);
35
- var ExpoGoManifestHandlerMiddleware;
36
- var importPromise = (0, import_projectImport.projectImport)(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js").then(function(mod) {
37
- ExpoGoManifestHandlerMiddleware = mod.default.ExpoGoManifestHandlerMiddleware;
38
- });
39
- server.middlewares.use(async function(req, res, next) {
40
- if (!req.headers["expo-platform"]) {
41
- return next();
42
- }
43
- if (!ExpoGoManifestHandlerMiddleware) {
44
- await importPromise;
45
- }
46
- var protocol = req.socket instanceof import_tls.TLSSocket && req.socket.encrypted ? "https" : "http";
47
- var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, { constructUrl: function(param) {
48
- var { scheme, hostname } = param;
49
- var host = req.headers["x-forwarded-host"] || req.headers.host || hostname;
50
- if (!scheme) {
51
- return host;
52
- }
53
- return `${protocol || scheme}://${host}`;
54
- } });
55
- if (options === null || options === void 0 ? void 0 : options.mainModuleName) {
56
- (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, options.mainModuleName);
57
- }
58
- manifestHandlerMiddleware.handleRequestAsync(req, res, next);
59
- });
60
- }
61
- };
62
- }
@@ -1,64 +0,0 @@
1
- "use strict";
2
-
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all) __defProp(target, name, {
9
- get: all[name],
10
- enumerable: true
11
- });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
- get: () => from[key],
17
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
- });
19
- }
20
- return to;
21
- };
22
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
23
- var expoManifestRequestHandlerPlugin_exports = {};
24
- __export(expoManifestRequestHandlerPlugin_exports, { expoManifestRequestHandlerPlugin: () => expoManifestRequestHandlerPlugin });
25
- module.exports = __toCommonJS(expoManifestRequestHandlerPlugin_exports);
26
- var import_path = require("path");
27
- var import_tls = require("tls");
28
- var import_projectImport = require("../utils/projectImport.native.js");
29
- var import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require("../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js");
30
- function expoManifestRequestHandlerPlugin(options) {
31
- return {
32
- name: "expo-manifest-request-handler",
33
- configureServer(server) {
34
- var projectRoot = (0, import_path.resolve)(server.config.root);
35
- var ExpoGoManifestHandlerMiddleware;
36
- var importPromise = (0, import_projectImport.projectImport)(projectRoot, "@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js").then(function(mod) {
37
- ExpoGoManifestHandlerMiddleware = mod.default.ExpoGoManifestHandlerMiddleware;
38
- });
39
- server.middlewares.use(async function(req, res, next) {
40
- if (!req.headers["expo-platform"]) {
41
- return next();
42
- }
43
- if (!ExpoGoManifestHandlerMiddleware) {
44
- await importPromise;
45
- }
46
- var protocol = req.socket instanceof import_tls.TLSSocket && req.socket.encrypted ? "https" : "http";
47
- var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, { constructUrl: function(param) {
48
- var { scheme, hostname } = param;
49
- var host = req.headers["x-forwarded-host"] || req.headers.host || hostname;
50
- if (!scheme) {
51
- return host;
52
- }
53
- return `${protocol || scheme}://${host}`;
54
- } });
55
- if (options === null || options === void 0 ? void 0 : options.mainModuleName) {
56
- (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, options.mainModuleName);
57
- }
58
- manifestHandlerMiddleware.handleRequestAsync(req, res, next);
59
- });
60
- }
61
- };
62
- }
63
-
64
- //# sourceMappingURL=expoManifestRequestHandlerPlugin.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expoManifestRequestHandlerPlugin.native.js","names":[],"sources":["cjs/plugins/expoManifestRequestHandlerPlugin.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar expoManifestRequestHandlerPlugin_exports = {};\n__export(expoManifestRequestHandlerPlugin_exports, {\n expoManifestRequestHandlerPlugin: () => expoManifestRequestHandlerPlugin\n});\nmodule.exports = __toCommonJS(expoManifestRequestHandlerPlugin_exports);\nvar import_path = require(\"path\");\nvar import_tls = require(\"tls\");\nvar import_projectImport = require(\"../utils/projectImport\");\nvar import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName = require(\"../utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName\");\nfunction expoManifestRequestHandlerPlugin(options) {\n return {\n name: \"expo-manifest-request-handler\",\n // configResolved(config) {\n // projectRoot = config.root\n // },\n configureServer(server) {\n var projectRoot = (0, import_path.resolve)(server.config.root);\n var ExpoGoManifestHandlerMiddleware;\n var importPromise = (0, import_projectImport.projectImport)(projectRoot, \"@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js\").then(function(mod) {\n ExpoGoManifestHandlerMiddleware = mod.default.ExpoGoManifestHandlerMiddleware;\n });\n server.middlewares.use(async function(req, res, next) {\n if (!req.headers[\"expo-platform\"]) {\n return next();\n }\n if (!ExpoGoManifestHandlerMiddleware) {\n await importPromise;\n }\n var protocol = req.socket instanceof import_tls.TLSSocket && req.socket.encrypted ? \"https\" : \"http\";\n var manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, {\n constructUrl: function(param) {\n var { scheme, hostname } = param;\n var host = req.headers[\"x-forwarded-host\"] || req.headers.host || hostname;\n if (!scheme) {\n return host;\n }\n return `${protocol || scheme}://${host}`;\n }\n });\n if (options === null || options === void 0 ? void 0 : options.mainModuleName) {\n (0, import_patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName)(manifestHandlerMiddleware, options.mainModuleName);\n }\n manifestHandlerMiddleware.handleRequestAsync(req, res, next);\n });\n }\n };\n}\n//# sourceMappingURL=expoManifestRequestHandlerPlugin.js.map\n"],"mappings":";;;AACA,IAAI,YAAY,OAAO;AACvB,IAAI,mBAAmB,OAAO;AAC9B,IAAI,oBAAoB,OAAO;AAC/B,IAAI,eAAe,OAAO,UAAU;AACpC,IAAI,YAAY,QAAQ,QAAQ;CAC9B,KAAK,IAAI,QAAQ,KACf,UAAU,QAAQ,MAAM;EAAE,KAAK,IAAI;EAAO,YAAY;CAAK,CAAC;AAChE;AACA,IAAI,eAAe,IAAI,MAAM,QAAQ,SAAS;CAC5C,IAAI,QAAQ,OAAO,SAAS,YAAY,OAAO,SAAS,YAAY;EAClE,KAAK,IAAI,OAAO,kBAAkB,IAAI,GACpC,IAAI,CAAC,aAAa,KAAK,IAAI,GAAG,KAAK,QAAQ,QACzC,UAAU,IAAI,KAAK;GAAE,WAAW,KAAK;GAAM,YAAY,EAAE,OAAO,iBAAiB,MAAM,GAAG,MAAM,KAAK;EAAW,CAAC;CACvH;CACA,OAAO;AACT;AACA,IAAI,gBAAgB,QAAQ,YAAY,UAAU,CAAC,GAAG,cAAc,EAAE,OAAO,KAAK,CAAC,GAAG,GAAG;AACzF,IAAI,2CAA2C,CAAC;AAChD,SAAS,0CAA0C,EACjD,wCAAwC,iCAC1C,CAAC;AACD,OAAO,UAAU,aAAa,wCAAwC;AACtE,IAAI,cAAc,QAAQ,MAAM;AAChC,IAAI,aAAa,QAAQ,KAAK;AAC9B,IAAI,uBAAuB,QAAQ,kCAAwB;AAC3D,IAAI,sEAAsE,QAAQ,iFAAuE;AACzJ,SAAS,iCAAiC,SAAS;CACjD,OAAO;EACL,MAAM;EAIN,gBAAgB,QAAQ;GACtB,IAAI,eAAe,GAAG,YAAY,QAAO,CAAE,OAAO,OAAO,IAAI;GAC7D,IAAI;GACJ,IAAI,iBAAiB,GAAG,qBAAqB,cAAa,CAAE,aAAa,gFAAgF,CAAC,CAAC,KAAK,SAAS,KAAK;IAC5K,kCAAkC,IAAI,QAAQ;GAChD,CAAC;GACD,OAAO,YAAY,IAAI,eAAe,KAAK,KAAK,MAAM;IACpD,IAAI,CAAC,IAAI,QAAQ,kBAAkB;KACjC,OAAO,KAAK;IACd;IACA,IAAI,CAAC,iCAAiC;KACpC,MAAM;IACR;IACA,IAAI,WAAW,IAAI,kBAAkB,WAAW,aAAa,IAAI,OAAO,YAAY,UAAU;IAC9F,IAAI,4BAA4B,IAAI,gCAAgC,aAAa,EAC/E,cAAc,SAAS,OAAO;KAC5B,IAAI,EAAE,QAAQ,aAAa;KAC3B,IAAI,OAAO,IAAI,QAAQ,uBAAuB,IAAI,QAAQ,QAAQ;KAClE,IAAI,CAAC,QAAQ;MACX,OAAO;KACT;KACA,OAAO,GAAG,YAAY,OAAO,KAAK;IACpC,EACF,CAAC;IACD,IAAI,YAAY,QAAQ,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,gBAAgB;KAC5E,CAAC,GAAG,oEAAoE,6DAA4D,CAAE,2BAA2B,QAAQ,cAAc;IACzL;IACA,0BAA0B,mBAAmB,KAAK,KAAK,IAAI;GAC7D,CAAC;EACH;CACF;AACF"}