@vxrn/vite-plugin-metro 2.0.0-beta.46.1 → 2.0.0-beta.50.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/env/platformEnv.cjs +4 -4
- package/dist/cjs/env/platformEnv.native.cjs +4 -4
- package/dist/cjs/env/platformEnv.native.js +4 -4
- package/dist/cjs/env/platformEnv.native.js.map +1 -1
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.cjs +14 -3
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.cjs +48 -20
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js +48 -20
- package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
- package/dist/cjs/transformer/metroNativeWorker.cjs +4 -15
- package/dist/cjs/transformer/metroNativeWorker.native.cjs +5 -16
- package/dist/cjs/transformer/metroNativeWorker.native.js +5 -16
- package/dist/cjs/transformer/metroNativeWorker.native.js.map +1 -1
- package/dist/esm/env/platformEnv.mjs +4 -4
- package/dist/esm/env/platformEnv.mjs.map +1 -1
- package/dist/esm/env/platformEnv.native.js +4 -4
- package/dist/esm/env/platformEnv.native.js.map +1 -1
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs +14 -3
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs.map +1 -1
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js +48 -20
- package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.mjs +4 -15
- package/dist/esm/transformer/metroNativeWorker.mjs.map +1 -1
- package/dist/esm/transformer/metroNativeWorker.native.js +5 -16
- package/dist/esm/transformer/metroNativeWorker.native.js.map +1 -1
- package/package.json +4 -4
- package/src/babel-plugins/import-meta-env-plugin.ts +1 -1
- package/src/env/platformEnv.test.ts +34 -0
- package/src/env/platformEnv.ts +5 -5
- package/src/metro-config/getMetroBabelConfigFromViteConfig.test.ts +58 -0
- package/src/metro-config/getMetroBabelConfigFromViteConfig.ts +24 -4
- package/src/transformer/metroNativeWorker.test.ts +40 -0
- package/src/transformer/metroNativeWorker.ts +20 -22
- package/types/babel-plugins/import-meta-env-plugin.d.ts +1 -1
- package/types/env/platformEnv.d.ts +1 -1
- package/types/env/platformEnv.d.ts.map +1 -1
- package/types/metro-config/getMetroBabelConfigFromViteConfig.d.ts +1 -1
- package/types/metro-config/getMetroBabelConfigFromViteConfig.d.ts.map +1 -1
- package/types/transformer/metroNativeWorker.d.ts +9 -8
- package/types/transformer/metroNativeWorker.d.ts.map +1 -1
|
@@ -2,28 +2,28 @@ const platformEnvMap = {
|
|
|
2
2
|
client: {
|
|
3
3
|
VITE_ENVIRONMENT: "client",
|
|
4
4
|
VITE_NATIVE: "",
|
|
5
|
-
|
|
5
|
+
ONE_PLATFORM: "web",
|
|
6
6
|
TAMAGUI_TARGET: "web",
|
|
7
7
|
TAMAGUI_ENVIRONMENT: "client"
|
|
8
8
|
},
|
|
9
9
|
ssr: {
|
|
10
10
|
VITE_ENVIRONMENT: "ssr",
|
|
11
11
|
VITE_NATIVE: "",
|
|
12
|
-
|
|
12
|
+
ONE_PLATFORM: "web",
|
|
13
13
|
TAMAGUI_TARGET: "web",
|
|
14
14
|
TAMAGUI_ENVIRONMENT: "ssr"
|
|
15
15
|
},
|
|
16
16
|
ios: {
|
|
17
17
|
VITE_ENVIRONMENT: "ios",
|
|
18
18
|
VITE_NATIVE: "1",
|
|
19
|
-
|
|
19
|
+
ONE_PLATFORM: "ios",
|
|
20
20
|
TAMAGUI_TARGET: "native",
|
|
21
21
|
TAMAGUI_ENVIRONMENT: "ios"
|
|
22
22
|
},
|
|
23
23
|
android: {
|
|
24
24
|
VITE_ENVIRONMENT: "android",
|
|
25
25
|
VITE_NATIVE: "1",
|
|
26
|
-
|
|
26
|
+
ONE_PLATFORM: "android",
|
|
27
27
|
TAMAGUI_TARGET: "native",
|
|
28
28
|
TAMAGUI_ENVIRONMENT: "android"
|
|
29
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platformEnv.js","names":[],"sources":["esm/env/platformEnv.js"],"sourcesContent":["const platformEnvMap = {\n client: {\n VITE_ENVIRONMENT: \"client\",\n VITE_NATIVE: \"\",\n
|
|
1
|
+
{"version":3,"file":"platformEnv.js","names":[],"sources":["esm/env/platformEnv.js"],"sourcesContent":["const 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 TAMAGUI_TARGET: \"native\",\n TAMAGUI_ENVIRONMENT: \"ios\"\n },\n android: {\n VITE_ENVIRONMENT: \"android\",\n VITE_NATIVE: \"1\",\n ONE_PLATFORM: \"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 const env = getPlatformEnv(environment);\n const define = {};\n for (const [key, value] of Object.entries(env)) {\n define[`process.env.${key}`] = JSON.stringify(value);\n define[`import.meta.env.${key}`] = JSON.stringify(value);\n }\n return define;\n}\nexport {\n getPlatformEnv,\n getPlatformEnvDefine,\n metroPlatformToViteEnvironment\n};\n//# sourceMappingURL=platformEnv.js.map\n"],"mappings":";AAAA,MAAM,iBAAiB;CACrB,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,gBAAgB;EAChB,qBAAqB;CACvB;CACA,SAAS;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,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,MAAM,MAAM,eAAe,WAAW;CACtC,MAAM,SAAS,CAAC;CAChB,KAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,GAAG,GAAG;EAC9C,OAAO,eAAe,SAAS,KAAK,UAAU,KAAK;EACnD,OAAO,mBAAmB,SAAS,KAAK,UAAU,KAAK;CACzD;CACA,OAAO;AACT"}
|
|
@@ -2,28 +2,28 @@ var platformEnvMap = {
|
|
|
2
2
|
client: {
|
|
3
3
|
VITE_ENVIRONMENT: "client",
|
|
4
4
|
VITE_NATIVE: "",
|
|
5
|
-
|
|
5
|
+
ONE_PLATFORM: "web",
|
|
6
6
|
TAMAGUI_TARGET: "web",
|
|
7
7
|
TAMAGUI_ENVIRONMENT: "client"
|
|
8
8
|
},
|
|
9
9
|
ssr: {
|
|
10
10
|
VITE_ENVIRONMENT: "ssr",
|
|
11
11
|
VITE_NATIVE: "",
|
|
12
|
-
|
|
12
|
+
ONE_PLATFORM: "web",
|
|
13
13
|
TAMAGUI_TARGET: "web",
|
|
14
14
|
TAMAGUI_ENVIRONMENT: "ssr"
|
|
15
15
|
},
|
|
16
16
|
ios: {
|
|
17
17
|
VITE_ENVIRONMENT: "ios",
|
|
18
18
|
VITE_NATIVE: "1",
|
|
19
|
-
|
|
19
|
+
ONE_PLATFORM: "ios",
|
|
20
20
|
TAMAGUI_TARGET: "native",
|
|
21
21
|
TAMAGUI_ENVIRONMENT: "ios"
|
|
22
22
|
},
|
|
23
23
|
android: {
|
|
24
24
|
VITE_ENVIRONMENT: "android",
|
|
25
25
|
VITE_NATIVE: "1",
|
|
26
|
-
|
|
26
|
+
ONE_PLATFORM: "android",
|
|
27
27
|
TAMAGUI_TARGET: "native",
|
|
28
28
|
TAMAGUI_ENVIRONMENT: "android"
|
|
29
29
|
}
|
|
@@ -1 +1 @@
|
|
|
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
|
|
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 TAMAGUI_TARGET: \"native\",\n TAMAGUI_ENVIRONMENT: \"ios\"\n },\n android: {\n VITE_ENVIRONMENT: \"android\",\n VITE_NATIVE: \"1\",\n ONE_PLATFORM: \"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,gBAAgB;EAChB,qBAAqB;CACvB;CACA,SAAS;EACP,kBAAkB;EAClB,aAAa;EACb,cAAc;EACd,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"}
|
|
@@ -6,9 +6,17 @@ function getMetroBabelConfigFromViteConfig(config) {
|
|
|
6
6
|
DEV: config.mode === "development",
|
|
7
7
|
SSR: false
|
|
8
8
|
};
|
|
9
|
-
const envPrefix = config.envPrefix || ["VITE_", "
|
|
9
|
+
const envPrefix = config.envPrefix || ["VITE_", "ONE_PUBLIC_"];
|
|
10
10
|
const prefixes = Array.isArray(envPrefix) ? envPrefix : [envPrefix];
|
|
11
|
+
for (const prefix of prefixes) {
|
|
12
|
+
if (prefix.startsWith("EXPO_")) {
|
|
13
|
+
throw new Error(`[vxrn/metro] env prefix "${prefix}" is removed. rename it to ONE_PUBLIC_*`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
11
16
|
for (const key of Object.keys(config.env)) {
|
|
17
|
+
if (key.startsWith("EXPO_PUBLIC_")) {
|
|
18
|
+
throw new Error(`[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`);
|
|
19
|
+
}
|
|
12
20
|
if (prefixes.some((p) => key.startsWith(p))) {
|
|
13
21
|
importMetaEnv[key] = process.env[key];
|
|
14
22
|
}
|
|
@@ -16,13 +24,16 @@ function getMetroBabelConfigFromViteConfig(config) {
|
|
|
16
24
|
const definePrefixes = Array.from(/* @__PURE__ */ new Set([
|
|
17
25
|
...prefixes,
|
|
18
26
|
"VITE_",
|
|
19
|
-
"
|
|
20
|
-
"
|
|
27
|
+
"ONE_PUBLIC_",
|
|
28
|
+
"ONE_"
|
|
21
29
|
]));
|
|
22
30
|
for (const defineKey of Object.keys(config.define || {})) {
|
|
23
31
|
const m = defineKey.match(/^process\.env\.([A-Z][A-Z0-9_]*)$/);
|
|
24
32
|
if (!m) continue;
|
|
25
33
|
const key = m[1];
|
|
34
|
+
if (key.startsWith("EXPO_PUBLIC_") || key === "EXPO_OS") {
|
|
35
|
+
throw new Error(`[vxrn/metro] ${key} uses the removed expo contract. rename it to ONE_PUBLIC_* or ONE_PLATFORM`);
|
|
36
|
+
}
|
|
26
37
|
if (key in importMetaEnv) continue;
|
|
27
38
|
if (!definePrefixes.some((p) => key.startsWith(p))) continue;
|
|
28
39
|
const raw = config.define[defineKey];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getMetroBabelConfigFromViteConfig.js","names":[],"sources":["esm/metro-config/getMetroBabelConfigFromViteConfig.js"],"sourcesContent":["function getMetroBabelConfigFromViteConfig(config) {\n const importMetaEnv = {\n MODE: config.mode,\n BASE_URL: config.base,\n PROD: config.mode === \"production\",\n DEV: config.mode === \"development\",\n SSR: false\n };\n const envPrefix = config.envPrefix || [\"VITE_\", \"
|
|
1
|
+
{"version":3,"file":"getMetroBabelConfigFromViteConfig.js","names":[],"sources":["esm/metro-config/getMetroBabelConfigFromViteConfig.js"],"sourcesContent":["function getMetroBabelConfigFromViteConfig(config) {\n const importMetaEnv = {\n MODE: config.mode,\n BASE_URL: config.base,\n PROD: config.mode === \"production\",\n DEV: config.mode === \"development\",\n SSR: false\n };\n const envPrefix = config.envPrefix || [\"VITE_\", \"ONE_PUBLIC_\"];\n const prefixes = Array.isArray(envPrefix) ? envPrefix : [envPrefix];\n for (const prefix of prefixes) {\n if (prefix.startsWith(\"EXPO_\")) {\n throw new Error(\n `[vxrn/metro] env prefix \"${prefix}\" is removed. rename it to ONE_PUBLIC_*`\n );\n }\n }\n for (const key of Object.keys(config.env)) {\n if (key.startsWith(\"EXPO_PUBLIC_\")) {\n throw new Error(\n `[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`\n );\n }\n if (prefixes.some((p) => key.startsWith(p))) {\n importMetaEnv[key] = process.env[key];\n }\n }\n const definePrefixes = Array.from(\n /* @__PURE__ */ new Set([...prefixes, \"VITE_\", \"ONE_PUBLIC_\", \"ONE_\"])\n );\n for (const defineKey of Object.keys(config.define || {})) {\n const m = defineKey.match(/^process\\.env\\.([A-Z][A-Z0-9_]*)$/);\n if (!m) continue;\n const key = m[1];\n if (key.startsWith(\"EXPO_PUBLIC_\") || key === \"EXPO_OS\") {\n throw new Error(\n `[vxrn/metro] ${key} uses the removed expo contract. rename it to ONE_PUBLIC_* or ONE_PLATFORM`\n );\n }\n if (key in importMetaEnv) continue;\n if (!definePrefixes.some((p) => key.startsWith(p))) continue;\n const raw = config.define[defineKey];\n try {\n importMetaEnv[key] = typeof raw === \"string\" ? JSON.parse(raw) : raw;\n } catch {\n importMetaEnv[key] = raw;\n }\n }\n return {\n plugins: [\n [\n \"@vxrn/vite-plugin-metro/babel-plugins/import-meta-env-plugin\",\n { env: importMetaEnv }\n ]\n ]\n };\n}\nexport {\n getMetroBabelConfigFromViteConfig\n};\n//# sourceMappingURL=getMetroBabelConfigFromViteConfig.js.map\n"],"mappings":";AAAA,SAAS,kCAAkC,QAAQ;CACjD,MAAM,gBAAgB;EACpB,MAAM,OAAO;EACb,UAAU,OAAO;EACjB,MAAM,OAAO,SAAS;EACtB,KAAK,OAAO,SAAS;EACrB,KAAK;CACP;CACA,MAAM,YAAY,OAAO,aAAa,CAAC,SAAS,aAAa;CAC7D,MAAM,WAAW,MAAM,QAAQ,SAAS,IAAI,YAAY,CAAC,SAAS;CAClE,KAAK,MAAM,UAAU,UAAU;EAC7B,IAAI,OAAO,WAAW,OAAO,GAAG;GAC9B,MAAM,IAAI,MACR,4BAA4B,OAAO,wCACrC;EACF;CACF;CACA,KAAK,MAAM,OAAO,OAAO,KAAK,OAAO,GAAG,GAAG;EACzC,IAAI,IAAI,WAAW,cAAc,GAAG;GAClC,MAAM,IAAI,MACR,gBAAgB,IAAI,yDACtB;EACF;EACA,IAAI,SAAS,MAAM,MAAM,IAAI,WAAW,CAAC,CAAC,GAAG;GAC3C,cAAc,OAAO,QAAQ,IAAI;EACnC;CACF;CACA,MAAM,iBAAiB,MAAM,qBACX,IAAI,IAAI;EAAC,GAAG;EAAU;EAAS;EAAe;CAAM,CAAC,CACvE;CACA,KAAK,MAAM,aAAa,OAAO,KAAK,OAAO,UAAU,CAAC,CAAC,GAAG;EACxD,MAAM,IAAI,UAAU,MAAM,mCAAmC;EAC7D,IAAI,CAAC,GAAG;EACR,MAAM,MAAM,EAAE;EACd,IAAI,IAAI,WAAW,cAAc,KAAK,QAAQ,WAAW;GACvD,MAAM,IAAI,MACR,gBAAgB,IAAI,2EACtB;EACF;EACA,IAAI,OAAO,eAAe;EAC1B,IAAI,CAAC,eAAe,MAAM,MAAM,IAAI,WAAW,CAAC,CAAC,GAAG;EACpD,MAAM,MAAM,OAAO,OAAO;EAC1B,IAAI;GACF,cAAc,OAAO,OAAO,QAAQ,WAAW,KAAK,MAAM,GAAG,IAAI;EACnE,QAAQ;GACN,cAAc,OAAO;EACvB;CACF;CACA,OAAO,EACL,SAAS,CACP,CACE,gEACA,EAAE,KAAK,cAAc,CACvB,CACF,EACF;AACF"}
|
|
@@ -6,19 +6,16 @@ function getMetroBabelConfigFromViteConfig(config) {
|
|
|
6
6
|
DEV: config.mode === "development",
|
|
7
7
|
SSR: false
|
|
8
8
|
};
|
|
9
|
-
var envPrefix = config.envPrefix || ["VITE_", "
|
|
9
|
+
var envPrefix = config.envPrefix || ["VITE_", "ONE_PUBLIC_"];
|
|
10
10
|
var prefixes = Array.isArray(envPrefix) ? envPrefix : [envPrefix];
|
|
11
11
|
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
12
12
|
try {
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
if (
|
|
16
|
-
|
|
17
|
-
})) {
|
|
18
|
-
importMetaEnv[key] = process.env[key];
|
|
13
|
+
for (var _iterator = prefixes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
14
|
+
var prefix = _step.value;
|
|
15
|
+
if (prefix.startsWith("EXPO_")) {
|
|
16
|
+
throw new Error(`[vxrn/metro] env prefix "${prefix}" is removed. rename it to ONE_PUBLIC_*`);
|
|
19
17
|
}
|
|
20
|
-
}
|
|
21
|
-
for (var _iterator = Object.keys(config.env)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();
|
|
18
|
+
}
|
|
22
19
|
} catch (err) {
|
|
23
20
|
_didIteratorError = true;
|
|
24
21
|
_iteratorError = err;
|
|
@@ -33,19 +30,50 @@ function getMetroBabelConfigFromViteConfig(config) {
|
|
|
33
30
|
}
|
|
34
31
|
}
|
|
35
32
|
}
|
|
33
|
+
var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;
|
|
34
|
+
try {
|
|
35
|
+
var _loop = function() {
|
|
36
|
+
var key = _step1.value;
|
|
37
|
+
if (key.startsWith("EXPO_PUBLIC_")) {
|
|
38
|
+
throw new Error(`[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`);
|
|
39
|
+
}
|
|
40
|
+
if (prefixes.some(function(p) {
|
|
41
|
+
return key.startsWith(p);
|
|
42
|
+
})) {
|
|
43
|
+
importMetaEnv[key] = process.env[key];
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
for (var _iterator1 = Object.keys(config.env)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) _loop();
|
|
47
|
+
} catch (err) {
|
|
48
|
+
_didIteratorError1 = true;
|
|
49
|
+
_iteratorError1 = err;
|
|
50
|
+
} finally {
|
|
51
|
+
try {
|
|
52
|
+
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
53
|
+
_iterator1.return();
|
|
54
|
+
}
|
|
55
|
+
} finally {
|
|
56
|
+
if (_didIteratorError1) {
|
|
57
|
+
throw _iteratorError1;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
36
61
|
var definePrefixes = Array.from(/* @__PURE__ */ new Set([
|
|
37
62
|
...prefixes,
|
|
38
63
|
"VITE_",
|
|
39
|
-
"
|
|
40
|
-
"
|
|
64
|
+
"ONE_PUBLIC_",
|
|
65
|
+
"ONE_"
|
|
41
66
|
]));
|
|
42
|
-
var
|
|
67
|
+
var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;
|
|
43
68
|
try {
|
|
44
69
|
var _loop1 = function() {
|
|
45
|
-
var defineKey =
|
|
70
|
+
var defineKey = _step2.value;
|
|
46
71
|
var m = defineKey.match(/^process\.env\.([A-Z][A-Z0-9_]*)$/);
|
|
47
72
|
if (!m) return "continue";
|
|
48
73
|
var key = m[1];
|
|
74
|
+
if (key.startsWith("EXPO_PUBLIC_") || key === "EXPO_OS") {
|
|
75
|
+
throw new Error(`[vxrn/metro] ${key} uses the removed expo contract. rename it to ONE_PUBLIC_* or ONE_PLATFORM`);
|
|
76
|
+
}
|
|
49
77
|
if (key in importMetaEnv) return "continue";
|
|
50
78
|
if (!definePrefixes.some(function(p) {
|
|
51
79
|
return key.startsWith(p);
|
|
@@ -57,18 +85,18 @@ function getMetroBabelConfigFromViteConfig(config) {
|
|
|
57
85
|
importMetaEnv[key] = raw;
|
|
58
86
|
}
|
|
59
87
|
};
|
|
60
|
-
for (var
|
|
88
|
+
for (var _iterator2 = Object.keys(config.define || {})[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) _loop1();
|
|
61
89
|
} catch (err) {
|
|
62
|
-
|
|
63
|
-
|
|
90
|
+
_didIteratorError2 = true;
|
|
91
|
+
_iteratorError2 = err;
|
|
64
92
|
} finally {
|
|
65
93
|
try {
|
|
66
|
-
if (!
|
|
67
|
-
|
|
94
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
|
95
|
+
_iterator2.return();
|
|
68
96
|
}
|
|
69
97
|
} finally {
|
|
70
|
-
if (
|
|
71
|
-
throw
|
|
98
|
+
if (_didIteratorError2) {
|
|
99
|
+
throw _iteratorError2;
|
|
72
100
|
}
|
|
73
101
|
}
|
|
74
102
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getMetroBabelConfigFromViteConfig.native.js","names":[],"sources":["esm/metro-config/getMetroBabelConfigFromViteConfig.native.js"],"sourcesContent":["function getMetroBabelConfigFromViteConfig(config) {\n var importMetaEnv = {\n MODE: config.mode,\n BASE_URL: config.base,\n PROD: config.mode === \"production\",\n DEV: config.mode === \"development\",\n SSR: false\n };\n var envPrefix = config.envPrefix || [\n \"VITE_\",\n \"
|
|
1
|
+
{"version":3,"file":"getMetroBabelConfigFromViteConfig.native.js","names":[],"sources":["esm/metro-config/getMetroBabelConfigFromViteConfig.native.js"],"sourcesContent":["function getMetroBabelConfigFromViteConfig(config) {\n var importMetaEnv = {\n MODE: config.mode,\n BASE_URL: config.base,\n PROD: config.mode === \"production\",\n DEV: config.mode === \"development\",\n SSR: false\n };\n var envPrefix = config.envPrefix || [\n \"VITE_\",\n \"ONE_PUBLIC_\"\n ];\n var prefixes = Array.isArray(envPrefix) ? envPrefix : [\n envPrefix\n ];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = prefixes[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var prefix = _step.value;\n if (prefix.startsWith(\"EXPO_\")) {\n throw new Error(`[vxrn/metro] env prefix \"${prefix}\" is removed. rename it to ONE_PUBLIC_*`);\n }\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 var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n var _loop = function() {\n var key = _step1.value;\n if (key.startsWith(\"EXPO_PUBLIC_\")) {\n throw new Error(`[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`);\n }\n if (prefixes.some(function(p) {\n return key.startsWith(p);\n })) {\n importMetaEnv[key] = process.env[key];\n }\n };\n for (var _iterator1 = Object.keys(config.env)[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) _loop();\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var definePrefixes = Array.from(/* @__PURE__ */ new Set([\n ...prefixes,\n \"VITE_\",\n \"ONE_PUBLIC_\",\n \"ONE_\"\n ]));\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n var _loop1 = function() {\n var defineKey = _step2.value;\n var m = defineKey.match(/^process\\.env\\.([A-Z][A-Z0-9_]*)$/);\n if (!m) return \"continue\";\n var key = m[1];\n if (key.startsWith(\"EXPO_PUBLIC_\") || key === \"EXPO_OS\") {\n throw new Error(`[vxrn/metro] ${key} uses the removed expo contract. rename it to ONE_PUBLIC_* or ONE_PLATFORM`);\n }\n if (key in importMetaEnv) return \"continue\";\n if (!definePrefixes.some(function(p) {\n return key.startsWith(p);\n })) return \"continue\";\n var raw = config.define[defineKey];\n try {\n importMetaEnv[key] = typeof raw === \"string\" ? JSON.parse(raw) : raw;\n } catch (unused) {\n importMetaEnv[key] = raw;\n }\n };\n for (var _iterator2 = Object.keys(config.define || {})[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) _loop1();\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n return {\n plugins: [\n [\n \"@vxrn/vite-plugin-metro/babel-plugins/import-meta-env-plugin\",\n {\n env: importMetaEnv\n }\n ]\n ]\n };\n}\nexport {\n getMetroBabelConfigFromViteConfig\n};\n//# sourceMappingURL=getMetroBabelConfigFromViteConfig.js.map\n"],"mappings":"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"}
|
|
@@ -241,7 +241,6 @@ function applyInlineEnvVars(code, filename, isProduction, env = {}) {
|
|
|
241
241
|
}
|
|
242
242
|
if (!parsed?.program) return code;
|
|
243
243
|
const ms = new MagicString(code);
|
|
244
|
-
let needsEnvImport = false;
|
|
245
244
|
const edits = [];
|
|
246
245
|
const known = /* @__PURE__ */ new Map();
|
|
247
246
|
function replace(node, value) {
|
|
@@ -274,16 +273,10 @@ function applyInlineEnvVars(code, filename, isProduction, env = {}) {
|
|
|
274
273
|
return;
|
|
275
274
|
}
|
|
276
275
|
if (isProcessEnv && !isAssignmentTarget && key?.startsWith("EXPO_PUBLIC_")) {
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
start: node.start,
|
|
282
|
-
end: node.end,
|
|
283
|
-
text: `_$$_EXPO_ENV.${key}`
|
|
284
|
-
});
|
|
285
|
-
needsEnvImport = true;
|
|
286
|
-
}
|
|
276
|
+
throw new Error(`[vxrn/metro] ${key} uses the removed expo prefix. rename it to ONE_PUBLIC_*`);
|
|
277
|
+
}
|
|
278
|
+
if (isProcessEnv && !isAssignmentTarget && key?.startsWith("ONE_PUBLIC_")) {
|
|
279
|
+
replace(node, env[key] ?? process.env[key] ?? void 0);
|
|
287
280
|
return;
|
|
288
281
|
}
|
|
289
282
|
if (!isAssignmentTarget && isMember && isImportMeta(obj.object) && keyOf(obj.property, obj.computed) === "env" && key !== void 0) {
|
|
@@ -375,10 +368,6 @@ function applyInlineEnvVars(code, filename, isProduction, env = {}) {
|
|
|
375
368
|
if (dead.some((d) => edit.start >= d.start && edit.end <= d.end)) continue;
|
|
376
369
|
ms.overwrite(edit.start, edit.end, edit.text);
|
|
377
370
|
}
|
|
378
|
-
if (needsEnvImport) {
|
|
379
|
-
ms.prepend(`import { env as _$$_EXPO_ENV } from "expo/virtual/env";
|
|
380
|
-
`);
|
|
381
|
-
}
|
|
382
371
|
return ms.hasChanged() ? ms.toString() : code;
|
|
383
372
|
}
|
|
384
373
|
const GUARD_SPECIFIERS = /* @__PURE__ */ new Set([
|