one 1.2.23 → 1.2.26
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/vite/plugins/virtualEntryPlugin.cjs +43 -16
- package/dist/cjs/vite/plugins/virtualEntryPlugin.js +42 -16
- package/dist/cjs/vite/plugins/virtualEntryPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +38 -17
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.js +42 -16
- package/dist/esm/vite/plugins/virtualEntryPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +43 -16
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +38 -17
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/package.json +10 -10
- package/src/vite/plugins/virtualEntryPlugin.ts +63 -19
- package/types/vite/plugins/virtualEntryPlugin.d.ts +1 -0
- package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
|
@@ -26,22 +26,43 @@ module.exports = __toCommonJS(virtualEntryPlugin_exports);
|
|
|
26
26
|
var import_vxrn = require("vxrn"),
|
|
27
27
|
import_glob_patterns = require("../../router/glob-patterns.cjs"),
|
|
28
28
|
import_virtualEntryConstants = require("./virtualEntryConstants.cjs");
|
|
29
|
-
function
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
if (
|
|
38
|
-
|
|
29
|
+
function normalizeSetupFile(setupFile) {
|
|
30
|
+
if (!setupFile) return {};
|
|
31
|
+
if (typeof setupFile == "string") return {
|
|
32
|
+
client: setupFile,
|
|
33
|
+
server: setupFile,
|
|
34
|
+
ios: setupFile,
|
|
35
|
+
android: setupFile
|
|
36
|
+
};
|
|
37
|
+
if ("native" in setupFile) return {
|
|
38
|
+
client: setupFile.client,
|
|
39
|
+
server: setupFile.server,
|
|
40
|
+
ios: setupFile.native,
|
|
41
|
+
android: setupFile.native
|
|
42
|
+
};
|
|
43
|
+
const sf = setupFile;
|
|
44
|
+
return {
|
|
45
|
+
client: sf.client,
|
|
46
|
+
server: sf.server,
|
|
47
|
+
ios: sf.ios,
|
|
48
|
+
android: sf.android
|
|
49
|
+
};
|
|
39
50
|
}
|
|
40
|
-
|
|
51
|
+
function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
|
|
52
|
+
const key = {
|
|
53
|
+
client: "client",
|
|
54
|
+
ssr: "server",
|
|
55
|
+
ios: "ios",
|
|
56
|
+
android: "android"
|
|
57
|
+
}[environmentName];
|
|
58
|
+
if (!key) return "";
|
|
59
|
+
const setupFile = setupFiles[key];
|
|
60
|
+
return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
|
|
41
61
|
}
|
|
42
62
|
function createVirtualEntry(options) {
|
|
43
63
|
const routeGlobs = [`/${options.root}/${import_glob_patterns.ROUTE_GLOB_PATTERN}`, ...(options.router?.ignoredRouteFiles?.map(pattern => `!/${options.root}/${pattern}`) || [])],
|
|
44
|
-
apiRouteGlobs = `/${options.root}/${import_glob_patterns.API_ROUTE_GLOB_PATTERN}
|
|
64
|
+
apiRouteGlobs = `/${options.root}/${import_glob_patterns.API_ROUTE_GLOB_PATTERN}`,
|
|
65
|
+
setupFiles = normalizeSetupFile(options.setupFile);
|
|
45
66
|
return {
|
|
46
67
|
name: "one-virtual-entry",
|
|
47
68
|
enforce: "pre",
|
|
@@ -50,8 +71,10 @@ function createVirtualEntry(options) {
|
|
|
50
71
|
if (id === import_virtualEntryConstants.virtualEntryIdNative) return import_virtualEntryConstants.resolvedVirtualEntryIdNative;
|
|
51
72
|
},
|
|
52
73
|
load(id) {
|
|
53
|
-
if (id === import_virtualEntryConstants.resolvedVirtualEntryId)
|
|
54
|
-
|
|
74
|
+
if (id === import_virtualEntryConstants.resolvedVirtualEntryId) {
|
|
75
|
+
const isNative = (0, import_vxrn.isNativeEnvironment)(this.environment);
|
|
76
|
+
return `
|
|
77
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
55
78
|
|
|
56
79
|
import { createApp, registerPreloadedRoute as _registerPreloadedRoute } from 'one'
|
|
57
80
|
|
|
@@ -73,8 +96,11 @@ export default createApp({
|
|
|
73
96
|
flags: ${JSON.stringify(options.flags)},
|
|
74
97
|
})
|
|
75
98
|
`;
|
|
76
|
-
|
|
77
|
-
|
|
99
|
+
}
|
|
100
|
+
if (id === import_virtualEntryConstants.resolvedVirtualEntryIdNative) {
|
|
101
|
+
const isNative = (0, import_vxrn.isNativeEnvironment)(this.environment);
|
|
102
|
+
return `
|
|
103
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
78
104
|
|
|
79
105
|
import { createApp } from 'one'
|
|
80
106
|
|
|
@@ -85,6 +111,7 @@ export default createApp({
|
|
|
85
111
|
flags: ${JSON.stringify(options.flags)},
|
|
86
112
|
})
|
|
87
113
|
`;
|
|
114
|
+
}
|
|
88
115
|
}
|
|
89
116
|
};
|
|
90
117
|
}
|
|
@@ -18,24 +18,46 @@ __export(virtualEntryPlugin_exports, {
|
|
|
18
18
|
});
|
|
19
19
|
module.exports = __toCommonJS(virtualEntryPlugin_exports);
|
|
20
20
|
var import_vxrn = require("vxrn"), import_glob_patterns = require("../../router/glob-patterns"), import_virtualEntryConstants = require("./virtualEntryConstants");
|
|
21
|
-
function
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
21
|
+
function normalizeSetupFile(setupFile) {
|
|
22
|
+
if (!setupFile) return {};
|
|
23
|
+
if (typeof setupFile == "string")
|
|
24
|
+
return {
|
|
25
|
+
client: setupFile,
|
|
26
|
+
server: setupFile,
|
|
27
|
+
ios: setupFile,
|
|
28
|
+
android: setupFile
|
|
29
|
+
};
|
|
30
|
+
if ("native" in setupFile)
|
|
31
|
+
return {
|
|
32
|
+
client: setupFile.client,
|
|
33
|
+
server: setupFile.server,
|
|
34
|
+
ios: setupFile.native,
|
|
35
|
+
android: setupFile.native
|
|
36
|
+
};
|
|
37
|
+
const sf = setupFile;
|
|
38
|
+
return {
|
|
39
|
+
client: sf.client,
|
|
40
|
+
server: sf.server,
|
|
41
|
+
ios: sf.ios,
|
|
42
|
+
android: sf.android
|
|
43
|
+
};
|
|
31
44
|
}
|
|
32
|
-
|
|
45
|
+
function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
|
|
46
|
+
const key = {
|
|
47
|
+
client: "client",
|
|
48
|
+
ssr: "server",
|
|
49
|
+
ios: "ios",
|
|
50
|
+
android: "android"
|
|
51
|
+
}[environmentName];
|
|
52
|
+
if (!key) return "";
|
|
53
|
+
const setupFile = setupFiles[key];
|
|
54
|
+
return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
|
|
33
55
|
}
|
|
34
56
|
function createVirtualEntry(options) {
|
|
35
57
|
const routeGlobs = [
|
|
36
58
|
`/${options.root}/${import_glob_patterns.ROUTE_GLOB_PATTERN}`,
|
|
37
59
|
...options.router?.ignoredRouteFiles?.map((pattern) => `!/${options.root}/${pattern}`) || []
|
|
38
|
-
], apiRouteGlobs = `/${options.root}/${import_glob_patterns.API_ROUTE_GLOB_PATTERN}
|
|
60
|
+
], apiRouteGlobs = `/${options.root}/${import_glob_patterns.API_ROUTE_GLOB_PATTERN}`, setupFiles = normalizeSetupFile(options.setupFile);
|
|
39
61
|
return {
|
|
40
62
|
name: "one-virtual-entry",
|
|
41
63
|
enforce: "pre",
|
|
@@ -46,9 +68,10 @@ function createVirtualEntry(options) {
|
|
|
46
68
|
return import_virtualEntryConstants.resolvedVirtualEntryIdNative;
|
|
47
69
|
},
|
|
48
70
|
load(id) {
|
|
49
|
-
if (id === import_virtualEntryConstants.resolvedVirtualEntryId)
|
|
71
|
+
if (id === import_virtualEntryConstants.resolvedVirtualEntryId) {
|
|
72
|
+
const isNative = (0, import_vxrn.isNativeEnvironment)(this.environment);
|
|
50
73
|
return `
|
|
51
|
-
${
|
|
74
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
52
75
|
|
|
53
76
|
import { createApp, registerPreloadedRoute as _registerPreloadedRoute } from 'one'
|
|
54
77
|
|
|
@@ -70,9 +93,11 @@ export default createApp({
|
|
|
70
93
|
flags: ${JSON.stringify(options.flags)},
|
|
71
94
|
})
|
|
72
95
|
`;
|
|
73
|
-
|
|
96
|
+
}
|
|
97
|
+
if (id === import_virtualEntryConstants.resolvedVirtualEntryIdNative) {
|
|
98
|
+
const isNative = (0, import_vxrn.isNativeEnvironment)(this.environment);
|
|
74
99
|
return `
|
|
75
|
-
${
|
|
100
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
76
101
|
|
|
77
102
|
import { createApp } from 'one'
|
|
78
103
|
|
|
@@ -83,6 +108,7 @@ export default createApp({
|
|
|
83
108
|
flags: ${JSON.stringify(options.flags)},
|
|
84
109
|
})
|
|
85
110
|
`;
|
|
111
|
+
}
|
|
86
112
|
}
|
|
87
113
|
};
|
|
88
114
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/vite/plugins/virtualEntryPlugin.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAoC,iBACpC,uBAKO,uCAEP,+BAKO;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAoC,iBACpC,uBAKO,uCAEP,+BAKO;AASP,SAAS,mBAAmB,WAAiE;AAC3F,MAAI,CAAC,UAAW,QAAO,CAAC;AACxB,MAAI,OAAO,aAAc;AACvB,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,SAAS;AAAA,IACX;AAEF,MAAI,YAAY;AACd,WAAO;AAAA,MACL,QAAQ,UAAU;AAAA,MAClB,QAAQ,UAAU;AAAA,MAClB,KAAK,UAAU;AAAA,MACf,SAAS,UAAU;AAAA,IACrB;AAEF,QAAM,KAAK;AACX,SAAO;AAAA,IACL,QAAQ,GAAG;AAAA,IACX,QAAQ,GAAG;AAAA,IACX,KAAK,GAAG;AAAA,IACR,SAAS,GAAG;AAAA,EACd;AACF;AAEA,SAAS,mBACP,iBACA,YACA,iBACQ;AAQR,QAAM,MAPqD;AAAA,IACzD,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AAAA,IACL,SAAS;AAAA,EACX,EAEmB,eAAe;AAClC,MAAI,CAAC,IAAK,QAAO;AAEjB,QAAM,YAAY,WAAW,GAAG;AAChC,SAAK,YAID,kBACK,UAAU,KAAK,UAAU,SAAS,CAAC,KAGrC,mCAAmC,KAAK,UAAU,SAAS,CAAC,MAR5C;AASzB;AAEO,SAAS,mBAAmB,SAOxB;AACT,QAAM,aAAa;AAAA,IACjB,IAAI,QAAQ,IAAI,IAAI,uCAAkB;AAAA,IACtC,GAAI,QAAQ,QAAQ,mBAAmB,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,OAAO,EAAE,KAAK,CAAC;AAAA,EAC9F,GACM,gBAAgB,IAAI,QAAQ,IAAI,IAAI,2CAAsB,IAE1D,aAAa,mBAAmB,QAAQ,SAAS;AAEvD,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IAET,UAAU,IAAI;AACZ,UAAI,OAAO;AACT,eAAO;AAET,UAAI,OAAO;AACT,eAAO;AAAA,IAEX;AAAA,IAEA,KAAK,IAAI;AACP,UAAI,OAAO,qDAAwB;AACjC,cAAM,eAAW,iCAAoB,KAAK,WAAW;AAErD,eAAO;AAAA,EADa,mBAAmB,KAAK,YAAY,MAAM,YAAY,QAAQ,CAE7E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAeC,KAAK,UAAU,UAAU,CAAC;AAAA;AAAA,6BAEX,KAAK,UAAU,CAAC,GAAG,YAAY,GAAG,uDAAkC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AAAA,gBACtG,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,WACjC,KAAK,UAAU,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA,MAGlC;AAEA,UAAI,OAAO,2DAA8B;AACvC,cAAM,eAAW,iCAAoB,KAAK,WAAW;AAErD,eAAO;AAAA,EADa,mBAAmB,KAAK,YAAY,MAAM,YAAY,QAAQ,CAE7E;AAAA;AAAA;AAAA;AAAA,cAIC,KAAK,UAAU,UAAU,CAAC;AAAA;AAAA,6BAEX,KAAK,UAAU,CAAC,GAAG,YAAY,GAAG,0DAAqC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,GAAG,IAAI,aAAa,EAAE,CAAC,CAAC;AAAA,gBAC9H,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,WACjC,KAAK,UAAU,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA,MAGlC;AAAA,IACF;AAAA,EACF;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -28,19 +28,39 @@ module.exports = __toCommonJS(virtualEntryPlugin_exports);
|
|
|
28
28
|
var import_vxrn = require("vxrn"),
|
|
29
29
|
import_glob_patterns = require("../../router/glob-patterns.native.js"),
|
|
30
30
|
import_virtualEntryConstants = require("./virtualEntryConstants.native.js");
|
|
31
|
-
function
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
31
|
+
function normalizeSetupFile(setupFile) {
|
|
32
|
+
if (!setupFile) return {};
|
|
33
|
+
if (typeof setupFile == "string") return {
|
|
34
|
+
client: setupFile,
|
|
35
|
+
server: setupFile,
|
|
36
|
+
ios: setupFile,
|
|
37
|
+
android: setupFile
|
|
38
|
+
};
|
|
39
|
+
if ("native" in setupFile) return {
|
|
40
|
+
client: setupFile.client,
|
|
41
|
+
server: setupFile.server,
|
|
42
|
+
ios: setupFile.native,
|
|
43
|
+
android: setupFile.native
|
|
44
|
+
};
|
|
45
|
+
var sf = setupFile;
|
|
46
|
+
return {
|
|
47
|
+
client: sf.client,
|
|
48
|
+
server: sf.server,
|
|
49
|
+
ios: sf.ios,
|
|
50
|
+
android: sf.android
|
|
51
|
+
};
|
|
42
52
|
}
|
|
43
|
-
|
|
53
|
+
function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
|
|
54
|
+
var envMap = {
|
|
55
|
+
client: "client",
|
|
56
|
+
ssr: "server",
|
|
57
|
+
ios: "ios",
|
|
58
|
+
android: "android"
|
|
59
|
+
},
|
|
60
|
+
key = envMap[environmentName];
|
|
61
|
+
if (!key) return "";
|
|
62
|
+
var setupFile = setupFiles[key];
|
|
63
|
+
return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
|
|
44
64
|
}
|
|
45
65
|
function createVirtualEntry(options) {
|
|
46
66
|
var _options_router_ignoredRouteFiles,
|
|
@@ -48,7 +68,8 @@ function createVirtualEntry(options) {
|
|
|
48
68
|
routeGlobs = [`/${options.root}/${import_glob_patterns.ROUTE_GLOB_PATTERN}`, ...(((_options_router = options.router) === null || _options_router === void 0 || (_options_router_ignoredRouteFiles = _options_router.ignoredRouteFiles) === null || _options_router_ignoredRouteFiles === void 0 ? void 0 : _options_router_ignoredRouteFiles.map(function (pattern) {
|
|
49
69
|
return `!/${options.root}/${pattern}`;
|
|
50
70
|
})) || [])],
|
|
51
|
-
apiRouteGlobs = `/${options.root}/${import_glob_patterns.API_ROUTE_GLOB_PATTERN}
|
|
71
|
+
apiRouteGlobs = `/${options.root}/${import_glob_patterns.API_ROUTE_GLOB_PATTERN}`,
|
|
72
|
+
setupFiles = normalizeSetupFile(options.setupFile);
|
|
52
73
|
return {
|
|
53
74
|
name: "one-virtual-entry",
|
|
54
75
|
enforce: "pre",
|
|
@@ -58,8 +79,8 @@ function createVirtualEntry(options) {
|
|
|
58
79
|
},
|
|
59
80
|
load(id) {
|
|
60
81
|
if (id === import_virtualEntryConstants.resolvedVirtualEntryId) {
|
|
61
|
-
var
|
|
62
|
-
|
|
82
|
+
var isNative = (0, import_vxrn.isNativeEnvironment)(this.environment),
|
|
83
|
+
prependCode = getSetupFileImport(this.environment.name, setupFiles, isNative);
|
|
63
84
|
return `
|
|
64
85
|
${prependCode}
|
|
65
86
|
|
|
@@ -87,8 +108,8 @@ export default createApp({
|
|
|
87
108
|
`;
|
|
88
109
|
}
|
|
89
110
|
if (id === import_virtualEntryConstants.resolvedVirtualEntryIdNative) {
|
|
90
|
-
var
|
|
91
|
-
|
|
111
|
+
var isNative1 = (0, import_vxrn.isNativeEnvironment)(this.environment),
|
|
112
|
+
prependCode1 = getSetupFileImport(this.environment.name, setupFiles, isNative1);
|
|
92
113
|
return `
|
|
93
114
|
${prependCode1}
|
|
94
115
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","virtualEntryPlugin_exports","__export","createVirtualEntry","module","exports","import_vxrn","require","import_glob_patterns","import_virtualEntryConstants","getSetupFileImport","environmentName","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","virtualEntryPlugin_exports","__export","createVirtualEntry","module","exports","import_vxrn","require","import_glob_patterns","import_virtualEntryConstants","normalizeSetupFile","setupFile","client","server","ios","android","native","sf","getSetupFileImport","environmentName","setupFiles","useStaticImport","envMap","ssr","key","JSON","stringify","options","_options_router_ignoredRouteFiles","_options_router","routeGlobs","root","ROUTE_GLOB_PATTERN","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","API_ROUTE_GLOB_PATTERN","name","enforce","resolveId","id","virtualEntryId","resolvedVirtualEntryId","virtualEntryIdNative","resolvedVirtualEntryIdNative","load","isNative","isNativeEnvironment","environment","prependCode","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","p","flags","isNative1","prependCode1"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -11,24 +11,46 @@ import {
|
|
|
11
11
|
virtualEntryId,
|
|
12
12
|
virtualEntryIdNative
|
|
13
13
|
} from "./virtualEntryConstants";
|
|
14
|
-
function
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
14
|
+
function normalizeSetupFile(setupFile) {
|
|
15
|
+
if (!setupFile) return {};
|
|
16
|
+
if (typeof setupFile == "string")
|
|
17
|
+
return {
|
|
18
|
+
client: setupFile,
|
|
19
|
+
server: setupFile,
|
|
20
|
+
ios: setupFile,
|
|
21
|
+
android: setupFile
|
|
22
|
+
};
|
|
23
|
+
if ("native" in setupFile)
|
|
24
|
+
return {
|
|
25
|
+
client: setupFile.client,
|
|
26
|
+
server: setupFile.server,
|
|
27
|
+
ios: setupFile.native,
|
|
28
|
+
android: setupFile.native
|
|
29
|
+
};
|
|
30
|
+
const sf = setupFile;
|
|
31
|
+
return {
|
|
32
|
+
client: sf.client,
|
|
33
|
+
server: sf.server,
|
|
34
|
+
ios: sf.ios,
|
|
35
|
+
android: sf.android
|
|
36
|
+
};
|
|
24
37
|
}
|
|
25
|
-
|
|
38
|
+
function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
|
|
39
|
+
const key = {
|
|
40
|
+
client: "client",
|
|
41
|
+
ssr: "server",
|
|
42
|
+
ios: "ios",
|
|
43
|
+
android: "android"
|
|
44
|
+
}[environmentName];
|
|
45
|
+
if (!key) return "";
|
|
46
|
+
const setupFile = setupFiles[key];
|
|
47
|
+
return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
|
|
26
48
|
}
|
|
27
49
|
function createVirtualEntry(options) {
|
|
28
50
|
const routeGlobs = [
|
|
29
51
|
`/${options.root}/${ROUTE_GLOB_PATTERN}`,
|
|
30
52
|
...options.router?.ignoredRouteFiles?.map((pattern) => `!/${options.root}/${pattern}`) || []
|
|
31
|
-
], apiRouteGlobs = `/${options.root}/${API_ROUTE_GLOB_PATTERN}
|
|
53
|
+
], apiRouteGlobs = `/${options.root}/${API_ROUTE_GLOB_PATTERN}`, setupFiles = normalizeSetupFile(options.setupFile);
|
|
32
54
|
return {
|
|
33
55
|
name: "one-virtual-entry",
|
|
34
56
|
enforce: "pre",
|
|
@@ -39,9 +61,10 @@ function createVirtualEntry(options) {
|
|
|
39
61
|
return resolvedVirtualEntryIdNative;
|
|
40
62
|
},
|
|
41
63
|
load(id) {
|
|
42
|
-
if (id === resolvedVirtualEntryId)
|
|
64
|
+
if (id === resolvedVirtualEntryId) {
|
|
65
|
+
const isNative = isNativeEnvironment(this.environment);
|
|
43
66
|
return `
|
|
44
|
-
${
|
|
67
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
45
68
|
|
|
46
69
|
import { createApp, registerPreloadedRoute as _registerPreloadedRoute } from 'one'
|
|
47
70
|
|
|
@@ -63,9 +86,11 @@ export default createApp({
|
|
|
63
86
|
flags: ${JSON.stringify(options.flags)},
|
|
64
87
|
})
|
|
65
88
|
`;
|
|
66
|
-
|
|
89
|
+
}
|
|
90
|
+
if (id === resolvedVirtualEntryIdNative) {
|
|
91
|
+
const isNative = isNativeEnvironment(this.environment);
|
|
67
92
|
return `
|
|
68
|
-
${
|
|
93
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
69
94
|
|
|
70
95
|
import { createApp } from 'one'
|
|
71
96
|
|
|
@@ -76,6 +101,7 @@ export default createApp({
|
|
|
76
101
|
flags: ${JSON.stringify(options.flags)},
|
|
77
102
|
})
|
|
78
103
|
`;
|
|
104
|
+
}
|
|
79
105
|
}
|
|
80
106
|
};
|
|
81
107
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/vite/plugins/virtualEntryPlugin.ts"],
|
|
4
|
-
"mappings": "AACA,SAAS,2BAA2B;AACpC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;
|
|
4
|
+
"mappings": "AACA,SAAS,2BAA2B;AACpC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AASP,SAAS,mBAAmB,WAAiE;AAC3F,MAAI,CAAC,UAAW,QAAO,CAAC;AACxB,MAAI,OAAO,aAAc;AACvB,WAAO;AAAA,MACL,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,KAAK;AAAA,MACL,SAAS;AAAA,IACX;AAEF,MAAI,YAAY;AACd,WAAO;AAAA,MACL,QAAQ,UAAU;AAAA,MAClB,QAAQ,UAAU;AAAA,MAClB,KAAK,UAAU;AAAA,MACf,SAAS,UAAU;AAAA,IACrB;AAEF,QAAM,KAAK;AACX,SAAO;AAAA,IACL,QAAQ,GAAG;AAAA,IACX,QAAQ,GAAG;AAAA,IACX,KAAK,GAAG;AAAA,IACR,SAAS,GAAG;AAAA,EACd;AACF;AAEA,SAAS,mBACP,iBACA,YACA,iBACQ;AAQR,QAAM,MAPqD;AAAA,IACzD,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AAAA,IACL,SAAS;AAAA,EACX,EAEmB,eAAe;AAClC,MAAI,CAAC,IAAK,QAAO;AAEjB,QAAM,YAAY,WAAW,GAAG;AAChC,SAAK,YAID,kBACK,UAAU,KAAK,UAAU,SAAS,CAAC,KAGrC,mCAAmC,KAAK,UAAU,SAAS,CAAC,MAR5C;AASzB;AAEO,SAAS,mBAAmB,SAOxB;AACT,QAAM,aAAa;AAAA,IACjB,IAAI,QAAQ,IAAI,IAAI,kBAAkB;AAAA,IACtC,GAAI,QAAQ,QAAQ,mBAAmB,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,IAAI,OAAO,EAAE,KAAK,CAAC;AAAA,EAC9F,GACM,gBAAgB,IAAI,QAAQ,IAAI,IAAI,sBAAsB,IAE1D,aAAa,mBAAmB,QAAQ,SAAS;AAEvD,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IAET,UAAU,IAAI;AACZ,UAAI,OAAO;AACT,eAAO;AAET,UAAI,OAAO;AACT,eAAO;AAAA,IAEX;AAAA,IAEA,KAAK,IAAI;AACP,UAAI,OAAO,wBAAwB;AACjC,cAAM,WAAW,oBAAoB,KAAK,WAAW;AAErD,eAAO;AAAA,EADa,mBAAmB,KAAK,YAAY,MAAM,YAAY,QAAQ,CAE7E;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAeC,KAAK,UAAU,UAAU,CAAC;AAAA;AAAA,6BAEX,KAAK,UAAU,CAAC,GAAG,YAAY,GAAG,kCAAkC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AAAA,gBACtG,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,WACjC,KAAK,UAAU,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA,MAGlC;AAEA,UAAI,OAAO,8BAA8B;AACvC,cAAM,WAAW,oBAAoB,KAAK,WAAW;AAErD,eAAO;AAAA,EADa,mBAAmB,KAAK,YAAY,MAAM,YAAY,QAAQ,CAE7E;AAAA;AAAA;AAAA;AAAA,cAIC,KAAK,UAAU,UAAU,CAAC;AAAA;AAAA,6BAEX,KAAK,UAAU,CAAC,GAAG,YAAY,GAAG,qCAAqC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,GAAG,IAAI,aAAa,EAAE,CAAC,CAAC;AAAA,gBAC9H,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,WACjC,KAAK,UAAU,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA,MAGlC;AAAA,IACF;AAAA,EACF;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,22 +1,43 @@
|
|
|
1
1
|
import { isNativeEnvironment } from "vxrn";
|
|
2
2
|
import { API_ROUTE_GLOB_PATTERN, ROUTE_GLOB_PATTERN, ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS, ROUTE_WEB_EXCLUSION_GLOB_PATTERNS } from "../../router/glob-patterns.mjs";
|
|
3
3
|
import { resolvedVirtualEntryId, resolvedVirtualEntryIdNative, virtualEntryId, virtualEntryIdNative } from "./virtualEntryConstants.mjs";
|
|
4
|
-
function
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
if (
|
|
13
|
-
|
|
4
|
+
function normalizeSetupFile(setupFile) {
|
|
5
|
+
if (!setupFile) return {};
|
|
6
|
+
if (typeof setupFile == "string") return {
|
|
7
|
+
client: setupFile,
|
|
8
|
+
server: setupFile,
|
|
9
|
+
ios: setupFile,
|
|
10
|
+
android: setupFile
|
|
11
|
+
};
|
|
12
|
+
if ("native" in setupFile) return {
|
|
13
|
+
client: setupFile.client,
|
|
14
|
+
server: setupFile.server,
|
|
15
|
+
ios: setupFile.native,
|
|
16
|
+
android: setupFile.native
|
|
17
|
+
};
|
|
18
|
+
const sf = setupFile;
|
|
19
|
+
return {
|
|
20
|
+
client: sf.client,
|
|
21
|
+
server: sf.server,
|
|
22
|
+
ios: sf.ios,
|
|
23
|
+
android: sf.android
|
|
24
|
+
};
|
|
14
25
|
}
|
|
15
|
-
|
|
26
|
+
function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
|
|
27
|
+
const key = {
|
|
28
|
+
client: "client",
|
|
29
|
+
ssr: "server",
|
|
30
|
+
ios: "ios",
|
|
31
|
+
android: "android"
|
|
32
|
+
}[environmentName];
|
|
33
|
+
if (!key) return "";
|
|
34
|
+
const setupFile = setupFiles[key];
|
|
35
|
+
return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
|
|
16
36
|
}
|
|
17
37
|
function createVirtualEntry(options) {
|
|
18
38
|
const routeGlobs = [`/${options.root}/${ROUTE_GLOB_PATTERN}`, ...(options.router?.ignoredRouteFiles?.map(pattern => `!/${options.root}/${pattern}`) || [])],
|
|
19
|
-
apiRouteGlobs = `/${options.root}/${API_ROUTE_GLOB_PATTERN}
|
|
39
|
+
apiRouteGlobs = `/${options.root}/${API_ROUTE_GLOB_PATTERN}`,
|
|
40
|
+
setupFiles = normalizeSetupFile(options.setupFile);
|
|
20
41
|
return {
|
|
21
42
|
name: "one-virtual-entry",
|
|
22
43
|
enforce: "pre",
|
|
@@ -25,8 +46,10 @@ function createVirtualEntry(options) {
|
|
|
25
46
|
if (id === virtualEntryIdNative) return resolvedVirtualEntryIdNative;
|
|
26
47
|
},
|
|
27
48
|
load(id) {
|
|
28
|
-
if (id === resolvedVirtualEntryId)
|
|
29
|
-
|
|
49
|
+
if (id === resolvedVirtualEntryId) {
|
|
50
|
+
const isNative = isNativeEnvironment(this.environment);
|
|
51
|
+
return `
|
|
52
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
30
53
|
|
|
31
54
|
import { createApp, registerPreloadedRoute as _registerPreloadedRoute } from 'one'
|
|
32
55
|
|
|
@@ -48,8 +71,11 @@ export default createApp({
|
|
|
48
71
|
flags: ${JSON.stringify(options.flags)},
|
|
49
72
|
})
|
|
50
73
|
`;
|
|
51
|
-
|
|
52
|
-
|
|
74
|
+
}
|
|
75
|
+
if (id === resolvedVirtualEntryIdNative) {
|
|
76
|
+
const isNative = isNativeEnvironment(this.environment);
|
|
77
|
+
return `
|
|
78
|
+
${getSetupFileImport(this.environment.name, setupFiles, isNative)}
|
|
53
79
|
|
|
54
80
|
import { createApp } from 'one'
|
|
55
81
|
|
|
@@ -60,6 +86,7 @@ export default createApp({
|
|
|
60
86
|
flags: ${JSON.stringify(options.flags)},
|
|
61
87
|
})
|
|
62
88
|
`;
|
|
89
|
+
}
|
|
63
90
|
}
|
|
64
91
|
};
|
|
65
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","getSetupFileImport","environmentName","
|
|
1
|
+
{"version":3,"names":["isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","normalizeSetupFile","setupFile","client","server","ios","android","native","sf","getSetupFileImport","environmentName","setupFiles","useStaticImport","key","ssr","JSON","stringify","createVirtualEntry","options","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","isNative","environment","p","flags"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,19 +1,39 @@
|
|
|
1
1
|
import { isNativeEnvironment } from "vxrn";
|
|
2
2
|
import { API_ROUTE_GLOB_PATTERN, ROUTE_GLOB_PATTERN, ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS, ROUTE_WEB_EXCLUSION_GLOB_PATTERNS } from "../../router/glob-patterns.native.js";
|
|
3
3
|
import { resolvedVirtualEntryId, resolvedVirtualEntryIdNative, virtualEntryId, virtualEntryIdNative } from "./virtualEntryConstants.native.js";
|
|
4
|
-
function
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
4
|
+
function normalizeSetupFile(setupFile) {
|
|
5
|
+
if (!setupFile) return {};
|
|
6
|
+
if (typeof setupFile == "string") return {
|
|
7
|
+
client: setupFile,
|
|
8
|
+
server: setupFile,
|
|
9
|
+
ios: setupFile,
|
|
10
|
+
android: setupFile
|
|
11
|
+
};
|
|
12
|
+
if ("native" in setupFile) return {
|
|
13
|
+
client: setupFile.client,
|
|
14
|
+
server: setupFile.server,
|
|
15
|
+
ios: setupFile.native,
|
|
16
|
+
android: setupFile.native
|
|
17
|
+
};
|
|
18
|
+
var sf = setupFile;
|
|
19
|
+
return {
|
|
20
|
+
client: sf.client,
|
|
21
|
+
server: sf.server,
|
|
22
|
+
ios: sf.ios,
|
|
23
|
+
android: sf.android
|
|
24
|
+
};
|
|
15
25
|
}
|
|
16
|
-
|
|
26
|
+
function getSetupFileImport(environmentName, setupFiles, useStaticImport) {
|
|
27
|
+
var envMap = {
|
|
28
|
+
client: "client",
|
|
29
|
+
ssr: "server",
|
|
30
|
+
ios: "ios",
|
|
31
|
+
android: "android"
|
|
32
|
+
},
|
|
33
|
+
key = envMap[environmentName];
|
|
34
|
+
if (!key) return "";
|
|
35
|
+
var setupFile = setupFiles[key];
|
|
36
|
+
return setupFile ? useStaticImport ? `import ${JSON.stringify(setupFile)}` : `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})` : "";
|
|
17
37
|
}
|
|
18
38
|
function createVirtualEntry(options) {
|
|
19
39
|
var _options_router_ignoredRouteFiles,
|
|
@@ -21,7 +41,8 @@ function createVirtualEntry(options) {
|
|
|
21
41
|
routeGlobs = [`/${options.root}/${ROUTE_GLOB_PATTERN}`, ...(((_options_router = options.router) === null || _options_router === void 0 || (_options_router_ignoredRouteFiles = _options_router.ignoredRouteFiles) === null || _options_router_ignoredRouteFiles === void 0 ? void 0 : _options_router_ignoredRouteFiles.map(function (pattern) {
|
|
22
42
|
return `!/${options.root}/${pattern}`;
|
|
23
43
|
})) || [])],
|
|
24
|
-
apiRouteGlobs = `/${options.root}/${API_ROUTE_GLOB_PATTERN}
|
|
44
|
+
apiRouteGlobs = `/${options.root}/${API_ROUTE_GLOB_PATTERN}`,
|
|
45
|
+
setupFiles = normalizeSetupFile(options.setupFile);
|
|
25
46
|
return {
|
|
26
47
|
name: "one-virtual-entry",
|
|
27
48
|
enforce: "pre",
|
|
@@ -31,8 +52,8 @@ function createVirtualEntry(options) {
|
|
|
31
52
|
},
|
|
32
53
|
load(id) {
|
|
33
54
|
if (id === resolvedVirtualEntryId) {
|
|
34
|
-
var
|
|
35
|
-
|
|
55
|
+
var isNative = isNativeEnvironment(this.environment),
|
|
56
|
+
prependCode = getSetupFileImport(this.environment.name, setupFiles, isNative);
|
|
36
57
|
return `
|
|
37
58
|
${prependCode}
|
|
38
59
|
|
|
@@ -60,8 +81,8 @@ export default createApp({
|
|
|
60
81
|
`;
|
|
61
82
|
}
|
|
62
83
|
if (id === resolvedVirtualEntryIdNative) {
|
|
63
|
-
var
|
|
64
|
-
|
|
84
|
+
var isNative1 = isNativeEnvironment(this.environment),
|
|
85
|
+
prependCode1 = getSetupFileImport(this.environment.name, setupFiles, isNative1);
|
|
65
86
|
return `
|
|
66
87
|
${prependCode1}
|
|
67
88
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","getSetupFileImport","environmentName","
|
|
1
|
+
{"version":3,"names":["isNativeEnvironment","API_ROUTE_GLOB_PATTERN","ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","resolvedVirtualEntryId","resolvedVirtualEntryIdNative","virtualEntryId","virtualEntryIdNative","normalizeSetupFile","setupFile","client","server","ios","android","native","sf","getSetupFileImport","environmentName","setupFiles","useStaticImport","envMap","ssr","key","JSON","stringify","createVirtualEntry","options","_options_router_ignoredRouteFiles","_options_router","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","isNative","environment","prependCode","p","flags","isNative1","prependCode1"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "one",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.26",
|
|
4
4
|
"license": "BSD-3-Clause",
|
|
5
5
|
"sideEffects": [
|
|
6
6
|
"setup.mjs",
|
|
@@ -121,17 +121,17 @@
|
|
|
121
121
|
"@react-navigation/routers": "~7.5.1",
|
|
122
122
|
"@swc/core": "^1.14.0",
|
|
123
123
|
"@ungap/structured-clone": "^1.2.0",
|
|
124
|
-
"@vxrn/compiler": "1.2.
|
|
125
|
-
"@vxrn/resolve": "1.2.
|
|
126
|
-
"@vxrn/tslib-lite": "1.2.
|
|
127
|
-
"@vxrn/universal-color-scheme": "1.2.
|
|
128
|
-
"@vxrn/use-isomorphic-layout-effect": "1.2.
|
|
129
|
-
"@vxrn/vite-plugin-metro": "1.2.
|
|
124
|
+
"@vxrn/compiler": "1.2.26",
|
|
125
|
+
"@vxrn/resolve": "1.2.26",
|
|
126
|
+
"@vxrn/tslib-lite": "1.2.26",
|
|
127
|
+
"@vxrn/universal-color-scheme": "1.2.26",
|
|
128
|
+
"@vxrn/use-isomorphic-layout-effect": "1.2.26",
|
|
129
|
+
"@vxrn/vite-plugin-metro": "1.2.26",
|
|
130
130
|
"babel-dead-code-elimination": "^1.0.10",
|
|
131
131
|
"babel-plugin-module-resolver": "^5.0.2",
|
|
132
132
|
"citty": "^0.1.6",
|
|
133
133
|
"core-js": "^3.38.1",
|
|
134
|
-
"create-vxrn": "1.2.
|
|
134
|
+
"create-vxrn": "1.2.26",
|
|
135
135
|
"escape-string-regexp": "^5.0.0",
|
|
136
136
|
"expo-linking": "~8.0.8",
|
|
137
137
|
"expo-modules-core": "~3.0.24",
|
|
@@ -157,7 +157,7 @@
|
|
|
157
157
|
"vite": "^7.1.12",
|
|
158
158
|
"vite-plugin-barrel": "^0.4.1",
|
|
159
159
|
"vite-tsconfig-paths": "^5.1.4",
|
|
160
|
-
"vxrn": "1.2.
|
|
160
|
+
"vxrn": "1.2.26",
|
|
161
161
|
"ws": "^8.18.0",
|
|
162
162
|
"xxhashjs": "^0.2.2"
|
|
163
163
|
},
|
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
"devDependencies": {
|
|
176
176
|
"@react-navigation/core": "^7.13.0",
|
|
177
177
|
"@react-navigation/native": "~7.1.19",
|
|
178
|
-
"@tamagui/build": "^1.139.
|
|
178
|
+
"@tamagui/build": "^1.139.2",
|
|
179
179
|
"@types/node": "^24.10.0",
|
|
180
180
|
"@types/react-dom": "^19.2.2",
|
|
181
181
|
"@types/xxhashjs": "^0.2.4",
|
|
@@ -14,22 +14,65 @@ import {
|
|
|
14
14
|
virtualEntryIdNative,
|
|
15
15
|
} from './virtualEntryConstants'
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
17
|
+
type NormalizedSetupFiles = {
|
|
18
|
+
client?: string
|
|
19
|
+
server?: string
|
|
20
|
+
ios?: string
|
|
21
|
+
android?: string
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function normalizeSetupFile(setupFile: One.PluginOptions['setupFile']): NormalizedSetupFiles {
|
|
25
|
+
if (!setupFile) return {}
|
|
26
|
+
if (typeof setupFile === 'string') {
|
|
27
|
+
return {
|
|
28
|
+
client: setupFile,
|
|
29
|
+
server: setupFile,
|
|
30
|
+
ios: setupFile,
|
|
31
|
+
android: setupFile,
|
|
32
|
+
}
|
|
23
33
|
}
|
|
34
|
+
if ('native' in setupFile) {
|
|
35
|
+
return {
|
|
36
|
+
client: setupFile.client,
|
|
37
|
+
server: setupFile.server,
|
|
38
|
+
ios: setupFile.native,
|
|
39
|
+
android: setupFile.native,
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
const sf = setupFile as { client?: string; server?: string; ios?: string; android?: string }
|
|
43
|
+
return {
|
|
44
|
+
client: sf.client,
|
|
45
|
+
server: sf.server,
|
|
46
|
+
ios: sf.ios,
|
|
47
|
+
android: sf.android,
|
|
48
|
+
}
|
|
49
|
+
}
|
|
24
50
|
|
|
25
|
-
|
|
26
|
-
|
|
51
|
+
function getSetupFileImport(
|
|
52
|
+
environmentName: string,
|
|
53
|
+
setupFiles: NormalizedSetupFiles,
|
|
54
|
+
useStaticImport: boolean
|
|
55
|
+
): string {
|
|
56
|
+
const envMap: Record<string, keyof NormalizedSetupFiles> = {
|
|
57
|
+
client: 'client',
|
|
58
|
+
ssr: 'server',
|
|
59
|
+
ios: 'ios',
|
|
60
|
+
android: 'android',
|
|
61
|
+
}
|
|
27
62
|
|
|
28
|
-
|
|
29
|
-
if (
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
63
|
+
const key = envMap[environmentName]
|
|
64
|
+
if (!key) return ''
|
|
65
|
+
|
|
66
|
+
const setupFile = setupFiles[key]
|
|
67
|
+
if (!setupFile) return ''
|
|
68
|
+
|
|
69
|
+
// For native, use static import since dynamic import doesn't work
|
|
70
|
+
// For web, use top-level await with dynamic import to ensure setup runs before app
|
|
71
|
+
if (useStaticImport) {
|
|
72
|
+
return `import ${JSON.stringify(setupFile)}`
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
return `await import(/* @vite-ignore */ ${JSON.stringify(setupFile)})`
|
|
33
76
|
}
|
|
34
77
|
|
|
35
78
|
export function createVirtualEntry(options: {
|
|
@@ -38,6 +81,7 @@ export function createVirtualEntry(options: {
|
|
|
38
81
|
ignoredRouteFiles?: Array<string>
|
|
39
82
|
}
|
|
40
83
|
flags: One.Flags
|
|
84
|
+
setupFile?: One.PluginOptions['setupFile']
|
|
41
85
|
}): Plugin {
|
|
42
86
|
const routeGlobs = [
|
|
43
87
|
`/${options.root}/${ROUTE_GLOB_PATTERN}`,
|
|
@@ -45,6 +89,8 @@ export function createVirtualEntry(options: {
|
|
|
45
89
|
]
|
|
46
90
|
const apiRouteGlobs = `/${options.root}/${API_ROUTE_GLOB_PATTERN}`
|
|
47
91
|
|
|
92
|
+
const setupFiles = normalizeSetupFile(options.setupFile)
|
|
93
|
+
|
|
48
94
|
return {
|
|
49
95
|
name: 'one-virtual-entry',
|
|
50
96
|
enforce: 'pre',
|
|
@@ -60,9 +106,8 @@ export function createVirtualEntry(options: {
|
|
|
60
106
|
|
|
61
107
|
load(id) {
|
|
62
108
|
if (id === resolvedVirtualEntryId) {
|
|
63
|
-
const
|
|
64
|
-
|
|
65
|
-
: getSetupFileImport(this.environment.name)
|
|
109
|
+
const isNative = isNativeEnvironment(this.environment)
|
|
110
|
+
const prependCode = getSetupFileImport(this.environment.name, setupFiles, isNative)
|
|
66
111
|
return `
|
|
67
112
|
${prependCode}
|
|
68
113
|
|
|
@@ -89,9 +134,8 @@ export default createApp({
|
|
|
89
134
|
}
|
|
90
135
|
|
|
91
136
|
if (id === resolvedVirtualEntryIdNative) {
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
: getSetupFileImport(this.environment.name)
|
|
137
|
+
const isNative = isNativeEnvironment(this.environment)
|
|
138
|
+
const prependCode = getSetupFileImport(this.environment.name, setupFiles, isNative)
|
|
95
139
|
return `
|
|
96
140
|
${prependCode}
|
|
97
141
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"virtualEntryPlugin.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/virtualEntryPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAQlC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"virtualEntryPlugin.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/virtualEntryPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAQlC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAqEnC,wBAAgB,kBAAkB,CAAC,OAAO,EAAE;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE;QACP,iBAAiB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;KAClC,CAAA;IACD,KAAK,EAAE,GAAG,CAAC,KAAK,CAAA;IAChB,SAAS,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;CAC3C,GAAG,MAAM,CAqET"}
|