@vxrn/vite-plugin-metro 2.7.7 → 2.8.0
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 +1 -1
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.cjs +1 -1
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js +1 -1
- package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
- package/dist/cjs/index.cjs +0 -4
- package/dist/cjs/index.native.cjs +0 -4
- package/dist/cjs/index.native.js +0 -4
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +2 -2
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.cjs +2 -2
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +2 -2
- package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.cjs +5 -11
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.cjs +5 -11
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js +5 -11
- package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
- package/dist/cjs/transformer/metroNativeWorker.cjs +1 -1
- package/dist/cjs/transformer/metroNativeWorker.native.cjs +1 -1
- package/dist/cjs/transformer/metroNativeWorker.native.js +1 -1
- package/dist/cjs/transformer/metroNativeWorker.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/index.js +1 -2
- package/dist/esm/index.mjs +1 -2
- package/dist/esm/index.native.js +1 -2
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +2 -2
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +2 -2
- package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs +5 -11
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs.map +1 -1
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js +5 -11
- package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.mjs +1 -1
- package/dist/esm/transformer/metroNativeWorker.mjs.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.native.js +1 -1
- package/dist/esm/transformer/metroNativeWorker.native.js.map +1 -1
- package/package.json +17 -22
- package/src/babel-plugins/import-meta-env-plugin.ts +1 -1
- package/src/index.ts +0 -8
- package/src/metro-config/getMetroConfigFromViteConfig.ts +2 -2
- package/src/plugins/metroPlugin.ts +1 -2
- package/src/rn-commands/bundle/getBuildBundleFn.ts +8 -26
- package/src/transformer/expoVirtualEnv.integration.test.ts +7 -1
- package/src/transformer/metroNativeWorker.ts +1 -1
- package/types/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
- package/types/plugins/metroPlugin.d.ts.map +1 -1
- package/types/rn-commands/bundle/getBuildBundleFn.d.ts +4 -4
- package/types/rn-commands/bundle/getBuildBundleFn.d.ts.map +1 -1
- package/dist/cjs/env/platformEnv.cjs +0 -76
- package/dist/cjs/env/platformEnv.native.cjs +0 -95
- package/dist/cjs/env/platformEnv.native.js +0 -97
- package/dist/cjs/env/platformEnv.native.js.map +0 -1
- package/dist/esm/env/platformEnv.mjs +0 -52
- package/dist/esm/env/platformEnv.mjs.map +0 -1
- package/dist/esm/env/platformEnv.native.js +0 -69
- package/dist/esm/env/platformEnv.native.js.map +0 -1
- package/empty.js +0 -1
- package/src/env/platformEnv.test.ts +0 -44
- package/src/env/platformEnv.ts +0 -75
- package/types/env/platformEnv.d.ts +0 -19
- package/types/env/platformEnv.d.ts.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platformEnv.native.js","names":[],"sources":["esm/env/platformEnv.native.js"],"sourcesContent":["var platformEnvMap = {\n client: {\n VITE_ENVIRONMENT: \"client\",\n VITE_NATIVE: \"\",\n ONE_PLATFORM: \"web\",\n TAMAGUI_TARGET: \"web\",\n TAMAGUI_ENVIRONMENT: \"client\"\n },\n ssr: {\n VITE_ENVIRONMENT: \"ssr\",\n VITE_NATIVE: \"\",\n ONE_PLATFORM: \"web\",\n TAMAGUI_TARGET: \"web\",\n TAMAGUI_ENVIRONMENT: \"ssr\"\n },\n ios: {\n VITE_ENVIRONMENT: \"ios\",\n VITE_NATIVE: \"1\",\n ONE_PLATFORM: \"ios\",\n EXPO_OS: \"ios\",\n TAMAGUI_TARGET: \"native\",\n TAMAGUI_ENVIRONMENT: \"ios\"\n },\n android: {\n VITE_ENVIRONMENT: \"android\",\n VITE_NATIVE: \"1\",\n ONE_PLATFORM: \"android\",\n EXPO_OS: \"android\",\n TAMAGUI_TARGET: \"native\",\n TAMAGUI_ENVIRONMENT: \"android\"\n }\n};\nfunction getPlatformEnv(environment) {\n return platformEnvMap[environment];\n}\nfunction metroPlatformToViteEnvironment(platform) {\n if (platform === \"ios\") return \"ios\";\n if (platform === \"android\") return \"android\";\n return \"client\";\n}\nfunction getPlatformEnvDefine(environment) {\n var env = getPlatformEnv(environment);\n var define = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(env)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [key, value] = _step.value;\n define[`process.env.${key}`] = JSON.stringify(value);\n define[`import.meta.env.${key}`] = JSON.stringify(value);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return define;\n}\nexport {\n getPlatformEnv,\n getPlatformEnvDefine,\n metroPlatformToViteEnvironment\n};\n//# sourceMappingURL=platformEnv.js.map\n"],"mappings":";AAAA,IAAI,iBAAiB;CACnB,QAAQ;EACN,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,gBAAgB;EAChB,qBAAqB;CACvB;CACA,KAAK;EACH,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,gBAAgB;EAChB,qBAAqB;CACvB;CACA,KAAK;EACH,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,SAAS;EACT,gBAAgB;EAChB,qBAAqB;CACvB;CACA,SAAS;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,SAAS;EACT,gBAAgB;EAChB,qBAAqB;CACvB;AACF;AACA,SAAS,eAAe,aAAa;CACnC,OAAO,eAAe;AACxB;AACA,SAAS,+BAA+B,UAAU;CAChD,IAAI,aAAa,OAAO,OAAO;CAC/B,IAAI,aAAa,WAAW,OAAO;CACnC,OAAO;AACT;AACA,SAAS,qBAAqB,aAAa;CACzC,IAAI,MAAM,eAAe,WAAW;CACpC,IAAI,SAAS,CAAC;CACd,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;CACvF,IAAI;EACF,KAAK,IAAI,YAAY,OAAO,QAAQ,GAAG,CAAC,CAAC,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;GACpK,IAAI,CAAC,KAAK,SAAS,MAAM;GACzB,OAAO,eAAe,SAAS,KAAK,UAAU,KAAK;GACnD,OAAO,mBAAmB,SAAS,KAAK,UAAU,KAAK;EACzD;CACF,SAAS,KAAK;EACZ,oBAAoB;EACpB,iBAAiB;CACnB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;IAC1D,UAAU,OAAO;GACnB;EACF,UAAU;GACR,IAAI,mBAAmB;IACrB,MAAM;GACR;EACF;CACF;CACA,OAAO;AACT"}
|
package/empty.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default {}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest'
|
|
2
|
-
import {
|
|
3
|
-
getPlatformEnv,
|
|
4
|
-
getPlatformEnvDefine,
|
|
5
|
-
metroPlatformToViteEnvironment,
|
|
6
|
-
} from './platformEnv'
|
|
7
|
-
|
|
8
|
-
describe('one platform env contract', () => {
|
|
9
|
-
it('exposes ONE_PLATFORM for every vite environment', () => {
|
|
10
|
-
expect(getPlatformEnv('ios').ONE_PLATFORM).toBe('ios')
|
|
11
|
-
expect(getPlatformEnv('android').ONE_PLATFORM).toBe('android')
|
|
12
|
-
expect(getPlatformEnv('client').ONE_PLATFORM).toBe('web')
|
|
13
|
-
expect(getPlatformEnv('ssr').ONE_PLATFORM).toBe('web')
|
|
14
|
-
})
|
|
15
|
-
|
|
16
|
-
it('defines the Expo platform alias only on native', () => {
|
|
17
|
-
for (const environment of ['ios', 'android'] as const) {
|
|
18
|
-
expect(getPlatformEnv(environment).EXPO_OS).toBe(
|
|
19
|
-
getPlatformEnv(environment).ONE_PLATFORM
|
|
20
|
-
)
|
|
21
|
-
const define = getPlatformEnvDefine(environment)
|
|
22
|
-
expect(define['process.env.EXPO_OS']).toBe(define['process.env.ONE_PLATFORM'])
|
|
23
|
-
expect(define['import.meta.env.EXPO_OS']).toBe(
|
|
24
|
-
define['import.meta.env.ONE_PLATFORM']
|
|
25
|
-
)
|
|
26
|
-
}
|
|
27
|
-
for (const environment of ['client', 'ssr'] as const) {
|
|
28
|
-
expect(getPlatformEnv(environment)).not.toHaveProperty('EXPO_OS')
|
|
29
|
-
const define = getPlatformEnvDefine(environment)
|
|
30
|
-
expect(define).not.toHaveProperty('process.env.EXPO_OS')
|
|
31
|
-
expect(define).not.toHaveProperty('import.meta.env.EXPO_OS')
|
|
32
|
-
}
|
|
33
|
-
const define = getPlatformEnvDefine('ios')
|
|
34
|
-
expect(define['process.env.ONE_PLATFORM']).toBe('"ios"')
|
|
35
|
-
expect(define['import.meta.env.ONE_PLATFORM']).toBe('"ios"')
|
|
36
|
-
})
|
|
37
|
-
|
|
38
|
-
it('maps metro platforms to vite environments without probing', () => {
|
|
39
|
-
expect(metroPlatformToViteEnvironment('ios')).toBe('ios')
|
|
40
|
-
expect(metroPlatformToViteEnvironment('android')).toBe('android')
|
|
41
|
-
expect(metroPlatformToViteEnvironment(null)).toBe('client')
|
|
42
|
-
expect(metroPlatformToViteEnvironment(undefined)).toBe('client')
|
|
43
|
-
})
|
|
44
|
-
})
|
package/src/env/platformEnv.ts
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
export type Platform = 'ios' | 'android' | 'web'
|
|
2
|
-
export type ViteEnvironment = 'client' | 'ssr' | 'ios' | 'android'
|
|
3
|
-
|
|
4
|
-
export type PlatformEnv = {
|
|
5
|
-
VITE_ENVIRONMENT: ViteEnvironment
|
|
6
|
-
VITE_NATIVE: '' | '1'
|
|
7
|
-
ONE_PLATFORM: 'web' | 'ios' | 'android'
|
|
8
|
-
EXPO_OS?: 'ios' | 'android'
|
|
9
|
-
TAMAGUI_TARGET: 'web' | 'native'
|
|
10
|
-
TAMAGUI_ENVIRONMENT: ViteEnvironment
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
const platformEnvMap: Record<ViteEnvironment, PlatformEnv> = {
|
|
14
|
-
client: {
|
|
15
|
-
VITE_ENVIRONMENT: 'client',
|
|
16
|
-
VITE_NATIVE: '',
|
|
17
|
-
ONE_PLATFORM: 'web',
|
|
18
|
-
TAMAGUI_TARGET: 'web',
|
|
19
|
-
TAMAGUI_ENVIRONMENT: 'client',
|
|
20
|
-
},
|
|
21
|
-
ssr: {
|
|
22
|
-
VITE_ENVIRONMENT: 'ssr',
|
|
23
|
-
VITE_NATIVE: '',
|
|
24
|
-
ONE_PLATFORM: 'web',
|
|
25
|
-
TAMAGUI_TARGET: 'web',
|
|
26
|
-
TAMAGUI_ENVIRONMENT: 'ssr',
|
|
27
|
-
},
|
|
28
|
-
ios: {
|
|
29
|
-
VITE_ENVIRONMENT: 'ios',
|
|
30
|
-
VITE_NATIVE: '1',
|
|
31
|
-
ONE_PLATFORM: 'ios',
|
|
32
|
-
EXPO_OS: 'ios',
|
|
33
|
-
TAMAGUI_TARGET: 'native',
|
|
34
|
-
TAMAGUI_ENVIRONMENT: 'ios',
|
|
35
|
-
},
|
|
36
|
-
android: {
|
|
37
|
-
VITE_ENVIRONMENT: 'android',
|
|
38
|
-
VITE_NATIVE: '1',
|
|
39
|
-
ONE_PLATFORM: 'android',
|
|
40
|
-
EXPO_OS: 'android',
|
|
41
|
-
TAMAGUI_TARGET: 'native',
|
|
42
|
-
TAMAGUI_ENVIRONMENT: 'android',
|
|
43
|
-
},
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export function getPlatformEnv(environment: ViteEnvironment): PlatformEnv {
|
|
47
|
-
return platformEnvMap[environment]
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export function metroPlatformToViteEnvironment(
|
|
51
|
-
platform: Platform | string | null | undefined
|
|
52
|
-
): ViteEnvironment {
|
|
53
|
-
if (platform === 'ios') return 'ios'
|
|
54
|
-
if (platform === 'android') return 'android'
|
|
55
|
-
return 'client'
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* Format platform env for Vite's define config.
|
|
60
|
-
* Returns both process.env.* and import.meta.env.* definitions.
|
|
61
|
-
* VITE_NATIVE is "1" or "" (truthy/falsy string) to avoid polluting process.env types.
|
|
62
|
-
*/
|
|
63
|
-
export function getPlatformEnvDefine(
|
|
64
|
-
environment: ViteEnvironment
|
|
65
|
-
): Record<string, string> {
|
|
66
|
-
const env = getPlatformEnv(environment)
|
|
67
|
-
const define: Record<string, string> = {}
|
|
68
|
-
|
|
69
|
-
for (const [key, value] of Object.entries(env)) {
|
|
70
|
-
define[`process.env.${key}`] = JSON.stringify(value)
|
|
71
|
-
define[`import.meta.env.${key}`] = JSON.stringify(value)
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
return define
|
|
75
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export type Platform = 'ios' | 'android' | 'web';
|
|
2
|
-
export type ViteEnvironment = 'client' | 'ssr' | 'ios' | 'android';
|
|
3
|
-
export type PlatformEnv = {
|
|
4
|
-
VITE_ENVIRONMENT: ViteEnvironment;
|
|
5
|
-
VITE_NATIVE: '' | '1';
|
|
6
|
-
ONE_PLATFORM: 'web' | 'ios' | 'android';
|
|
7
|
-
EXPO_OS?: 'ios' | 'android';
|
|
8
|
-
TAMAGUI_TARGET: 'web' | 'native';
|
|
9
|
-
TAMAGUI_ENVIRONMENT: ViteEnvironment;
|
|
10
|
-
};
|
|
11
|
-
export declare function getPlatformEnv(environment: ViteEnvironment): PlatformEnv;
|
|
12
|
-
export declare function metroPlatformToViteEnvironment(platform: Platform | string | null | undefined): ViteEnvironment;
|
|
13
|
-
/**
|
|
14
|
-
* Format platform env for Vite's define config.
|
|
15
|
-
* Returns both process.env.* and import.meta.env.* definitions.
|
|
16
|
-
* VITE_NATIVE is "1" or "" (truthy/falsy string) to avoid polluting process.env types.
|
|
17
|
-
*/
|
|
18
|
-
export declare function getPlatformEnvDefine(environment: ViteEnvironment): Record<string, string>;
|
|
19
|
-
//# sourceMappingURL=platformEnv.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"platformEnv.d.ts","sourceRoot":"","sources":["../../src/env/platformEnv.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,KAAK,CAAA;AAChD,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAAA;AAElE,MAAM,MAAM,WAAW,GAAG;IACxB,gBAAgB,EAAE,eAAe,CAAA;IACjC,WAAW,EAAE,EAAE,GAAG,GAAG,CAAA;IACrB,YAAY,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAAA;IACvC,OAAO,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IAC3B,cAAc,EAAE,KAAK,GAAG,QAAQ,CAAA;IAChC,mBAAmB,EAAE,eAAe,CAAA;CACrC,CAAA;AAmCD,wBAAgB,cAAc,CAAC,WAAW,EAAE,eAAe,GAAG,WAAW,CAExE;AAED,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAC7C,eAAe,CAIjB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,eAAe,GAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUxB"}
|