one 1.2.24 → 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.
@@ -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 getSetupFileImport(environmentName) {
30
- const envVar = {
31
- client: "ONE_SETUP_FILE_CLIENT",
32
- ssr: "ONE_SETUP_FILE_SERVER",
33
- ios: "ONE_SETUP_FILE_IOS",
34
- android: "ONE_SETUP_FILE_ANDROID"
35
- }[environmentName];
36
- return envVar ? `
37
- if (process.env.${envVar}) {
38
- import(/* @vite-ignore */ process.env.${envVar})
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) return `
54
- ${(0, import_vxrn.isNativeEnvironment)(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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
- if (id === import_virtualEntryConstants.resolvedVirtualEntryIdNative) return `
77
- ${(0, import_vxrn.isNativeEnvironment)(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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 getSetupFileImport(environmentName) {
22
- const envVar = {
23
- client: "ONE_SETUP_FILE_CLIENT",
24
- ssr: "ONE_SETUP_FILE_SERVER",
25
- ios: "ONE_SETUP_FILE_IOS",
26
- android: "ONE_SETUP_FILE_ANDROID"
27
- }[environmentName];
28
- return envVar ? `
29
- if (process.env.${envVar}) {
30
- import(/* @vite-ignore */ process.env.${envVar})
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
- ${(0, import_vxrn.isNativeEnvironment)(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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
- if (id === import_virtualEntryConstants.resolvedVirtualEntryIdNative)
96
+ }
97
+ if (id === import_virtualEntryConstants.resolvedVirtualEntryIdNative) {
98
+ const isNative = (0, import_vxrn.isNativeEnvironment)(this.environment);
74
99
  return `
75
- ${(0, import_vxrn.isNativeEnvironment)(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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;AAEP,SAAS,mBAAmB,iBAAiC;AAQ3D,QAAM,SAPY;AAAA,IAChB,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AAAA,IACL,SAAS;AAAA,EACX,EAEyB,eAAe;AACxC,SAAK,SAEE;AAAA,kBACS,MAAM;AAAA,0CACkB,MAAM;AAAA;AAAA,IAJ1B;AAOtB;AAEO,SAAS,mBAAmB,SAMxB;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;AAEhE,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;AAIT,eAAO;AAAA,MAHa,iCAAoB,KAAK,WAAW,IACpD,KACA,mBAAmB,KAAK,YAAY,IAAI,CAEvC;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;AAKlC,UAAI,OAAO;AAIT,eAAO;AAAA,MAHa,iCAAoB,KAAK,WAAW,IACpD,KACA,mBAAmB,KAAK,YAAY,IAAI,CAEvC;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,IAIpC;AAAA,EACF;AACF;",
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 getSetupFileImport(environmentName) {
32
- var envVarMap = {
33
- client: "ONE_SETUP_FILE_CLIENT",
34
- ssr: "ONE_SETUP_FILE_SERVER",
35
- ios: "ONE_SETUP_FILE_IOS",
36
- android: "ONE_SETUP_FILE_ANDROID"
37
- },
38
- envVar = envVarMap[environmentName];
39
- return envVar ? `
40
- if (process.env.${envVar}) {
41
- import(/* @vite-ignore */ process.env.${envVar})
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 prependCode = (0, import_vxrn.isNativeEnvironment)(this.environment) ? "" : (/* `import()` will not work on native */
62
- getSetupFileImport(this.environment.name));
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 prependCode1 = (0, import_vxrn.isNativeEnvironment)(this.environment) ? "" : (/* `import()` will not work on native */
91
- getSetupFileImport(this.environment.name));
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","envVarMap","client","ssr","ios","android","envVar","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","prependCode","isNativeEnvironment","environment","JSON","stringify","ROUTE_WEB_EXCLUSION_GLOB_PATTERNS","p","flags","prependCode1"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,0BAAA;AAAAC,QAAA,CAAAD,0BAAA;EAAAE,kBAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAT,YAAoC,CAAAK,0BACpC;AAcA,IAAAK,WAAS,GAAAC,OAAA,OAAmB;EAAAC,oBAAiC,GAAAD,OAAA;EAAAE,4BAAA,GAAAF,OAAA;AAQ3D,SAAMG,kBAPYA,CAAAC,eAAA;EAAA,IAChBC,SAAQ;MACRC,MAAK;MACLC,GAAA,EAAK;MACLC,GAAA,sBAAS;MAGcC,OAAA;IACzB;IAAAC,MAAK,GAAAL,SAEE,CAAAD,eAAA;EAAA,OAAAM,MAAA,GACS;AAAM,kBAAAA,MAAA;AACwB,0CAAAA,MAAA;AAAA;AAGhD;AAEO;AAOL,SAAMd,kBAAaA,CAAAe,OAAA;EAAA,IACjBC,iCAAoB;IAAAC,eAAA;IAAAC,UAAkB,IACtC,IAAIH,OAAQ,CAAAI,IAAA,IAAQd,oBAAmB,CAAAe,kBAAiB,EAAK,EAC/D,IACM,EAAAH,eAAgB,GAAIF,OAAQ,CAAAM,MAAQ,cAAAJ,eAAA,eAAsB,CAAAD,iCAAA,GAAAC,eAAA,CAAAK,iBAAA,cAAAN,iCAAA,uBAAAA,iCAAA,CAAAO,GAAA,WAAAC,OAAA;MAEhE,OAAO,KAAAT,OAAA,CAAAI,IAAA,IAAAK,OAAA;IACL,OAAM;IACNC,aAAS,OAAAV,OAAA,CAAAI,IAAA,IAAAd,oBAAA,CAAAqB,sBAAA;EAAA,OAET;IACEC,IAAA,EAAI,mBAAO;IACTC,OAAA,OAAO;IAETC,SAAIA,CAAAC,EAAA,EAAO;MACT,IAAAA,EAAA,KAAOxB,4BAAA,CAAAyB,cAAA,EAEX,OAAAzB,4BAAA,CAAA0B,sBAAA;MAEA,IAAKF,EAAA,KAAIxB,4BAAA,CAAA2B,oBAAA,EACP,OAAI3B,4BAAO,CAAA4B,4BAAA;IAIT;IAAOC,IAHaA,CAAAL,EAAA;MAIf,IAAAA,EAAA,KAAAxB,4BAAA,CAAA0B,sBAAA;QAAA,IAAAI,WAAA,OAAAjC,WAAA,CAAAkC,mBAAA,OAAAC,WAAA;QAAA/B,kBAAA,MAAA+B,WAAA,CAAAX,IAAA;QAAA;AAAA,EAAAS,WAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAe2B;AAAA;AAE8E;AAC1E;AACJ;AAAA;AAKlC,cAAIG,IAAO,CAAAC,SAAA,CAAAtB,UAAA;AAIT;AAAO,6BAHaqB,IAAA,CAAAC,SAAoB,CAAK,CAIxC,GAAAtB,UAAA,KAAAb,oBAAA,CAAAoC,iCAAA,CAAAlB,GAAA,WAAAmB,CAAA;UAAA,WAAAA,CAAA;QAAA,GAI2B;AAAA,gBAAAH,IAAA,CAAAC,SAEX,CAAAzB,OAAK,CAAAI,IAAA,CAAU;AAAkG,WAAAoB,IAAA,CAC9HC,SAAK,CAAAzB,OAAU,CAAA4B,KAAQ;AAAK;AACJ;MAAA;MAIpC,IAAAb,EAAA,KAAAxB,4BAAA,CAAA4B,4BAAA;QACF,IAAAU,YAAA,OAAAzC,WAAA,CAAAkC,mBAAA,OAAAC,WAAA,UACF","ignoreList":[]}
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":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,0BAAA;AAAAC,QAAA,CAAAD,0BAAA;EAAAE,kBAAA,EAAAA,CAAA,KAAAA;AAAA;AACAC,MAAA,CAAAC,OAAA,GAAAT,YAAoC,CAAAK,0BACpC;AAqBA,IAAAK,WAAS,GAAAC,OAAA,OAAmB;EAAAC,oBAAiE,GAAAD,OAAA;EAAAE,4BAAA,GAAAF,OAAA;AAC3F,SAAKG,kBAAmBA,CAAAC,SAAA;EACxB,IAAI,CAAAA,SAAO,UAAc;EACvB,WAAOA,SAAA,qBACL;IACAC,MAAA,EAAQD,SAAA;IACRE,MAAK,EAAAF,SAAA;IACLG,GAAA,EAAAH,SAAS;IACXI,OAAA,EAAAJ;EAEF;EACE,YAAO,IAAAA,SAAA,SACL;IACAC,MAAA,EAAQD,SAAA,CAAUC,MAAA;IAClBC,MAAK,EAAAF,SAAU,CAAAE,MAAA;IACfC,GAAA,EAAAH,SAAS,CAAAK,MAAU;IACrBD,OAAA,EAAAJ,SAAA,CAAAK;EAEF;EACA,IAAAC,EAAA,GAAON,SAAA;EAAA,OACL;IACAC,MAAA,EAAQK,EAAA,CAAGL,MAAA;IACXC,MAAK,EAAGI,EAAA,CAAAJ,MAAA;IACRC,GAAA,EAAAG,EAAA,CAAAH,GAAS;IACXC,OAAA,EAAAE,EAAA,CAAAF;EACF;AAEA;AAYE,SAAMG,kBAPqDA,CAAAC,eAAA,EAAAC,UAAA,EAAAC,eAAA;EAAA,IACzDC,MAAQ;MACRV,MAAK;MACLW,GAAA,EAAK;MACLT,GAAA,OAAS;MAGQC,OAAA;IACnB;IAAAS,GAAK,GAAKF,MAAA,CAAAH,eAAO;EAEjB,KAAAK,GAAM,WAAY;EAClB,IAAAb,SAAK,GAAAS,UAID,CAAAI,GAAA;EAKN,OAAAb,SAAA,GAAAU,eAAA,aAAAI,IAAA,CAAAC,SAAA,CAAAf,SAAA,yCAAAc,IAAA,CAAAC,SAAA,CAAAf,SAAA;AAEO;AAQL,SAAMR,kBAAaA,CAAAwB,OAAA;EAAA,IACjBC,iCAAoB;IAAAC,eAAA;IAAAC,UAAkB,IACtC,IAAIH,OAAQ,CAAAI,IAAA,IAAQvB,oBAAmB,CAAAwB,kBAAiB,EAAK,EAC/D,IACM,EAAAH,eAAgB,GAAIF,OAAQ,CAAAM,MAAQ,cAAAJ,eAAA,eAAsB,CAAAD,iCAE7C,GAAmBC,eAAiB,CAAAK,iBAAA,cAAAN,iCAAA,uBAAAA,iCAAA,CAAAO,GAAA,WAAAC,OAAA;MAEvD,OAAO,KAAAT,OAAA,CAAAI,IAAA,IAAAK,OAAA;IACL,OAAM;IACNC,aAAS,OAAAV,OAAA,CAAAI,IAAA,IAAAvB,oBAAA,CAAA8B,sBAAA;IAAAlB,UAAA,GAAAV,kBAAA,CAAAiB,OAAA,CAAAhB,SAAA;EAAA,OAET;IACE4B,IAAA,EAAI,mBAAO;IACTC,OAAA,OAAO;IAETC,SAAIA,CAAAC,EAAA,EAAO;MACT,IAAAA,EAAA,KAAOjC,4BAAA,CAAAkC,cAAA,EAEX,OAAAlC,4BAAA,CAAAmC,sBAAA;MAEA,IAAKF,EAAA,KAAIjC,4BAAA,CAAAoC,oBAAA,EACP,OAAIpC,4BAAO,CAAAqC,4BAAwB;IACjC;IAEAC,KAAAL,EAAA;MADoB,IAAAA,EAAA,KAAAjC,4BAA0C,CAAAmC,sBAEzD;QAAA,IAAAI,QAAA,OAAA1C,WAAA,CAAA2C,mBAAA,OAAAC,WAAA;UAAAC,WAAA,GAAAjC,kBAAA,MAAAgC,WAAA,CAAAX,IAAA,EAAAnB,UAAA,EAAA4B,QAAA;QAAA;AAAA,EAAAG,WAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAe2B;AAAA;AAE8E,cAAA1B,IACtG,CAAAC,SAAK,CAAAI,UAAkB;AAAK;AACJ,6BAAAL,IAAA,CAAAC,SAAA,KAAAI,UAAA,EAGlC,GAAAtB,oBAAA,CAAA4C,iCAAA,CAAAjB,GAAA,WAAAkB,CAAA;UAEI,OAAO,IAAAA,CAAA;QACT,GAEA;AAAO,gBADa5B,IAAA,CAAmBC,SAAK,CAAAC,OAAY,CAAAI,IAAA,CAAM;AAEzD,WAAAN,IAAA,CAAAC,SAAA,CAAAC,OAAA,CAAA2B,KAAA;AAAA;AAAA;MAAA;MAI2B,IAAAZ,EAAA,KAAAjC,4BAAA,CAAAqC,4BAAA;QAAA,IAAAS,SAAA,OAAAjD,WAEN,CAAA2C,mBAAc,EAAY,IAAG,CAAAC,WAAA;UAAAM,YAAA,GAAAtC,kBAAA,MAAAgC,WAA0C,CAAAX,IAAM,EAAKnB,UAAS,EAAAmC,SAAA,CAAa;QAAI;AAClG,EAAAC,YACjC;AAA6B;AAAA;AAAA;AAGlC,cACF/B,IAAA,CAAAC,SAAA,CAAAI,UAAA;AAAA;AAEJ,6BAAAL,IAAA,CAAAC,SAAA,E","ignoreList":[]}
@@ -11,24 +11,46 @@ import {
11
11
  virtualEntryId,
12
12
  virtualEntryIdNative
13
13
  } from "./virtualEntryConstants";
14
- function getSetupFileImport(environmentName) {
15
- const envVar = {
16
- client: "ONE_SETUP_FILE_CLIENT",
17
- ssr: "ONE_SETUP_FILE_SERVER",
18
- ios: "ONE_SETUP_FILE_IOS",
19
- android: "ONE_SETUP_FILE_ANDROID"
20
- }[environmentName];
21
- return envVar ? `
22
- if (process.env.${envVar}) {
23
- import(/* @vite-ignore */ process.env.${envVar})
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
- ${isNativeEnvironment(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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
- if (id === resolvedVirtualEntryIdNative)
89
+ }
90
+ if (id === resolvedVirtualEntryIdNative) {
91
+ const isNative = isNativeEnvironment(this.environment);
67
92
  return `
68
- ${isNativeEnvironment(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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;AAEP,SAAS,mBAAmB,iBAAiC;AAQ3D,QAAM,SAPY;AAAA,IAChB,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AAAA,IACL,SAAS;AAAA,EACX,EAEyB,eAAe;AACxC,SAAK,SAEE;AAAA,kBACS,MAAM;AAAA,0CACkB,MAAM;AAAA;AAAA,IAJ1B;AAOtB;AAEO,SAAS,mBAAmB,SAMxB;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;AAEhE,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;AAIT,eAAO;AAAA,EAHa,oBAAoB,KAAK,WAAW,IACpD,KACA,mBAAmB,KAAK,YAAY,IAAI,CAEvC;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;AAKlC,UAAI,OAAO;AAIT,eAAO;AAAA,EAHa,oBAAoB,KAAK,WAAW,IACpD,KACA,mBAAmB,KAAK,YAAY,IAAI,CAEvC;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,IAIpC;AAAA,EACF;AACF;",
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 getSetupFileImport(environmentName) {
5
- const envVar = {
6
- client: "ONE_SETUP_FILE_CLIENT",
7
- ssr: "ONE_SETUP_FILE_SERVER",
8
- ios: "ONE_SETUP_FILE_IOS",
9
- android: "ONE_SETUP_FILE_ANDROID"
10
- }[environmentName];
11
- return envVar ? `
12
- if (process.env.${envVar}) {
13
- import(/* @vite-ignore */ process.env.${envVar})
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) return `
29
- ${isNativeEnvironment(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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
- if (id === resolvedVirtualEntryIdNative) return `
52
- ${isNativeEnvironment(this.environment) ? "" : getSetupFileImport(this.environment.name)}
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","envVar","client","ssr","ios","android","createVirtualEntry","options","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","environment","JSON","stringify","p","flags"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,mBAAA,QAA2B;AACpC,SACEC,sBAAA,EACAC,kBAAA,EACAC,oCAAA,EACAC,iCAAA,QACK;AAEP,SACEC,sBAAA,EACAC,4BAAA,EACAC,cAAA,EACAC,oBAAA,QACK;AAEP,SAASC,mBAAmBC,eAAA,EAAiC;EAQ3D,MAAMC,MAAA,GAPY;IAChBC,MAAA,EAAQ;IACRC,GAAA,EAAK;IACLC,GAAA,EAAK;IACLC,OAAA,EAAS;EACX,EAEyBL,eAAe;EACxC,OAAKC,MAAA,GAEE;AAAA,kBACSA,MAAM;AAAA,0CACkBA,MAAM;AAAA;AAAA,IAJ1B;AAOtB;AAEO,SAASK,mBAAmBC,OAAA,EAMxB;EACT,MAAMC,UAAA,GAAa,CACjB,IAAID,OAAA,CAAQE,IAAI,IAAIjB,kBAAkB,IACtC,IAAIe,OAAA,CAAQG,MAAA,EAAQC,iBAAA,EAAmBC,GAAA,CAAKC,OAAA,IAAY,KAAKN,OAAA,CAAQE,IAAI,IAAII,OAAO,EAAE,KAAK,EAAC,EAC9F;IACMC,aAAA,GAAgB,IAAIP,OAAA,CAAQE,IAAI,IAAIlB,sBAAsB;EAEhE,OAAO;IACLwB,IAAA,EAAM;IACNC,OAAA,EAAS;IAETC,UAAUC,EAAA,EAAI;MACZ,IAAIA,EAAA,KAAOrB,cAAA,EACT,OAAOF,sBAAA;MAET,IAAIuB,EAAA,KAAOpB,oBAAA,EACT,OAAOF,4BAAA;IAEX;IAEAuB,KAAKD,EAAA,EAAI;MACP,IAAIA,EAAA,KAAOvB,sBAAA,EAIT,OAAO;AAAA,EAHaL,mBAAA,CAAoB,KAAK8B,WAAW,IACpD,KACArB,kBAAA,CAAmB,KAAKqB,WAAA,CAAYL,IAAI,CAEvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAeCM,IAAA,CAAKC,SAAA,CAAUd,UAAU,CAAC;AAAA;AAAA,6BAEXa,IAAA,CAAKC,SAAA,CAAU,CAAC,GAAGd,UAAA,EAAY,GAAGd,iCAAA,CAAkCkB,GAAA,CAAKW,CAAA,IAAM,IAAIA,CAAC,EAAE,CAAC,CAAC,CAAC;AAAA,gBACtGF,IAAA,CAAKC,SAAA,CAAUf,OAAA,CAAQE,IAAI,CAAC;AAAA,WACjCY,IAAA,CAAKC,SAAA,CAAUf,OAAA,CAAQiB,KAAK,CAAC;AAAA;AAAA;MAKlC,IAAIN,EAAA,KAAOtB,4BAAA,EAIT,OAAO;AAAA,EAHaN,mBAAA,CAAoB,KAAK8B,WAAW,IACpD,KACArB,kBAAA,CAAmB,KAAKqB,WAAA,CAAYL,IAAI,CAEvC;AAAA;AAAA;AAAA;AAAA,cAICM,IAAA,CAAKC,SAAA,CAAUd,UAAU,CAAC;AAAA;AAAA,6BAEXa,IAAA,CAAKC,SAAA,CAAU,CAAC,GAAGd,UAAA,EAAY,GAAGf,oCAAA,CAAqCmB,GAAA,CAAKW,CAAA,IAAM,IAAIA,CAAC,EAAE,GAAG,IAAIT,aAAa,EAAE,CAAC,CAAC;AAAA,gBAC9HO,IAAA,CAAKC,SAAA,CAAUf,OAAA,CAAQE,IAAI,CAAC;AAAA,WACjCY,IAAA,CAAKC,SAAA,CAAUf,OAAA,CAAQiB,KAAK,CAAC;AAAA;AAAA;IAIpC;EACF;AACF","ignoreList":[]}
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 getSetupFileImport(environmentName) {
5
- var envVarMap = {
6
- client: "ONE_SETUP_FILE_CLIENT",
7
- ssr: "ONE_SETUP_FILE_SERVER",
8
- ios: "ONE_SETUP_FILE_IOS",
9
- android: "ONE_SETUP_FILE_ANDROID"
10
- },
11
- envVar = envVarMap[environmentName];
12
- return envVar ? `
13
- if (process.env.${envVar}) {
14
- import(/* @vite-ignore */ process.env.${envVar})
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 prependCode = isNativeEnvironment(this.environment) ? "" : (/* `import()` will not work on native */
35
- getSetupFileImport(this.environment.name));
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 prependCode1 = isNativeEnvironment(this.environment) ? "" : (/* `import()` will not work on native */
64
- getSetupFileImport(this.environment.name));
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","envVarMap","client","ssr","ios","android","envVar","createVirtualEntry","options","_options_router_ignoredRouteFiles","_options_router","routeGlobs","root","router","ignoredRouteFiles","map","pattern","apiRouteGlobs","name","enforce","resolveId","id","load","prependCode","environment","JSON","stringify","p","flags","prependCode1"],"sources":["../../../../src/vite/plugins/virtualEntryPlugin.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,mBAAA,QAA2B;AACpC,SAAAC,sBAAA,EAAAC,kBAAA,EAAAC,oCAAA,EAAAC,iCAAA;AAAA,SACEC,sBAAA,EAAAC,4BAAA,EAAAC,cAAA,EAAAC,oBAAA;AAAA,SACAC,mBAAAC,eAAA;EACA,IAAAC,SAAA;MACAC,MAAA;MAAAC,GACK;MAEPC,GAAA;MACEC,OAAA;IACA;IAAAC,MAAA,GAAAL,SAAA,CAAAD,eAAA;EACA,OAAAM,MAAA;AAAA,kBACAA,MAAA;AAAA,0CACKA,MAAA;AAEP;AAQE;AAPkB;AACR,SACHC,mBAAAC,OAAA;EAAA,IACLC,iCAAK;IAAAC,eAAA;IAAAC,UAAA,IACL,IAAAH,OAAS,CAAAI,IAAA,IAAApB,kBAAA,IAGc,MAAAkB,eAAe,GAAAF,OAAA,CAAAK,MAAA,cAAAH,eAAA,gBAAAD,iCAAA,GAAAC,eAAA,CAAAI,iBAAA,cAAAL,iCAAA,uBAAAA,iCAAA,CAAAM,GAAA,WAAAC,OAAA;MACxC,OAAK,KAEER,OAAA,CAAAI,IAAA,IAAAI,OAAA;IAAA,WACe;IAAAC,aAAA,OAAAT,OAAA,CAAAI,IAAA,IAAArB,sBACwB;EAAA;IAJ1B2B,IAAA;IAOtBC,OAAA;IAEOC,SAASA,CAAAC,EAAA;MAOd,IAAMA,EAAA,KAAAxB,cAAa,EACb,OAAAF,sBAAgB;MACpB,IAAI0B,EAAA,KAAQvB,oBAAQ,EAEhB,OAAAF,4BAAoC;IAE1C;IACE0B,KAAAD,EAAM;MACN,IAAAA,EAAA,KAAS1B,sBAAA;QAET,IAAA4B,WAAc,GAAAjC,mBAAA,MAAAkC,WAAA,UACR;QACFzB,kBAAO,MAAAyB,WAAA,CAAAN,IAAA,EAET;QACE,OAAO;AAAA,EAAAK,WAEX;AAAA;AAGE;AAIE;AAAO;AACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAAAE,IAAA,CAAAC,SAAA,CAAAf,UAAA;AAAA;AAAA,6BAAAc,IAAA,CAAAC,SAAA,KAAAf,UAAA,KAAAjB,iCAe2B,CAAAqB,GAAA,WAAAY,CAAA;UAAA,WAAAA,CAAA;QAAA,GAE8E;AAC1E,gBAC5BF,IAAA,CAAAC,SAAU,CAAAlB,OAAQ,CAAKI,IAAC;AAAA,WAAAa,IAAA,CAAAC,SAAA,CAAAlB,OAAA,CAAAoB,KAAA;AAAA;AAKlC;MAIE;MAHoB,IAAAP,EAAA,KAAAzB,4BAChB,EACA;QAEC,IAAAiC,YAAA,GAAAvC,mBAAA,MAAAkC,WAAA;QAAAzB,kBAAA,MAAAyB,WAAA,CAAAN,IAAA;QAI2B;AAAA,EAAAW,YAAA;AAEsG;AAClG;AACJ;AAAA,cAAAJ,IAAA,CAAAC,SAAA,CAAAf,UAAA;AAAA;AAIpC,6BACFc,IAAA,CAAAC,SAAA,EACF,GAAAf,UAAA,E","ignoreList":[]}
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":"AACA,SAASA,mBAAA,QAA2B;AACpC,SAAAC,sBAAA,EAAAC,kBAAA,EAAAC,oCAAA,EAAAC,iCAAA;AAAA,SACEC,sBAAA,EAAAC,4BAAA,EAAAC,cAAA,EAAAC,oBAAA;AAAA,SACAC,mBAAAC,SAAA;EACA,KAAAA,SAAA;EACA,WAAAA,SAAA,qBACK;IAEPC,MAAA,EAAAD,SAAA;IACEE,MAAA,EAAAF,SAAA;IACAG,GAAA,EAAAH,SAAA;IACAI,OAAA,EAAAJ;EACA;EAAA,YACK,IAAAA,SAAA,EASP,OAAS;IACHC,MAAC,EAAAD,SAAW,CAAAC,MAAQ;IACpBC,MAAA,EAAOF,SAAA,CAAAE,MAAc;IACvBC,GAAA,EAAOH,SAAA,CAAAK,MAAA;IACLD,OAAA,EAAQJ,SAAA,CAAAK;EAAA;EACA,IACRC,EAAA,GAAKN,SAAA;EAAA,OACL;IACFC,MAAA,EAAAK,EAAA,CAAAL,MAAA;IAEFC,MAAI,EAAAI,EAAA,CAAAJ,MAAY;IACdC,GAAA,EAAAG,EAAO,CAAAH,GAAA;IAAAC,OACL,EAAAE,EAAQ,CAAAF;EAAU;AACA;AACH,SACfG,kBAAmBA,CAAAC,eAAA,EAAAC,UAAA,EAAAC,eAAA;EAAA,IACrBC,MAAA;MAEFV,MAAM,UAAK;MACXW,GAAA,EAAO;MACLT,GAAA,OAAQ;MACRC,OAAA,EAAQ;IAAG;IACXS,GAAA,GAAKF,MAAG,CAAAH,eAAA;EAAA,IACR,CAAAK,GAAA,SAAY;EACd,IAAAb,SAAA,GAAAS,UAAA,CAAAI,GAAA;EACF,OAAAb,SAAA,GAAAU,eAAA,aAAAI,IAAA,CAAAC,SAAA,CAAAf,SAAA,yCAAAc,IAAA,CAAAC,SAAA,CAAAf,SAAA;AAEA;AAYE,SAAMgB,kBAPqDA,CAAAC,OAAA;EAAA,IACzDC,iCAAQ;IAAAC,eAAA;IAAAC,UAAA,IACR,IAAAH,OAAK,CAAAI,IAAA,IAAA7B,kBAAA,IACL,MAAK2B,eAAA,GAAAF,OAAA,CAAAK,MAAA,cAAAH,eAAA,gBAAAD,iCAAA,GAAAC,eAAA,CAAAI,iBAAA,cAAAL,iCAAA,uBAAAA,iCAAA,CAAAM,GAAA,WAAAC,OAAA;MACL,OAAS,KAAAR,OAAA,CAAAI,IAAA,IAAAI,OAAA;IAGQ,WACnB;IAAAC,aAAU,GAAO,IAAAT,OAAA,CAAAI,IAAA,IAAA9B,sBAAA;IAAAkB,UAAA,GAAAV,kBAAA,CAAAkB,OAAA,CAAAjB,SAAA;EAEjB,OAAM;IACN2B,IAAA,EAAK,mBAID;IAKNC,OAAA;IAEOC,SAASA,CAAAC,EAAA;MAQd,IAAMA,EAAA,KAAAjC,cAAa,EACb,OAAAF,sBAAgB;MACpB,IAAImC,EAAA,KAAQhC,oBAAQ,EAEhB,OAAAF,4BAAoC;IAI1C;IACEmC,KAAAD,EAAM;MACN,IAAAA,EAAA,KAASnC,sBAAA;QAET,IAAAqC,QAAc,GAAA1C,mBAAA,MAAA2C,WAAA;UAAAC,WAAA,GAAA3B,kBAAA,MAAA0B,WAAA,CAAAN,IAAA,EAAAlB,UAAA,EAAAuB,QAAA;QACZ,OAAI;AACF,EAAAE,WAAA;AAEF;AACE;AAAO;AAEX;AAGE;AACE;AAEA;AAAO;AACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAAApB,IAAA,CAAAC,SAAA,CAAAK,UAAA;AAAA;AAAA,6BAAAN,IAAA,CAAAC,SAAA,KAAAK,UAAA,KAAA1B,iCAAA,CAAA8B,GAAA,WAAAW,CAAA;UAAA,WAAAA,CAAA;QAAA;AAAA,gBAeCrB,IAAK,CAAAC,SAAU,CAAAE,OAAA,CAAUI,IAAC;AAAA,WAAAP,IAAA,CAAAC,SAAA,CAAAE,OAAA,CAAAmB,KAAA;AAAA;AAE8E;MAC1E;MACJ,IAAAN,EAAA,KAAAlC,4BAAA;QAAA,IAAAyC,SAAA,GAAA/C,mBAAA,MAAA2C,WAAA;UAAAK,YAAA,GAAA/B,kBAAA,MAAA0B,WAAA,CAAAN,IAAA,EAAAlB,UAAA,EAAA4B,SAAA;QAGlC;AAEA,EAAAC,YAAI;AACF;AAEA;AAAO;AACF,cAAAxB,IAAA,CAAAC,SAAA,CAAAK,UAAA;AAAA;AAAA,6BAAAN,IAAA,CAAAC,SAAA,KAAAK,UAIM,EAAqB,GAAA3B,oCAAA,CAAA+B,GAAA,WAAAW,CAAA;UAAA,WAAAA,CAAA;QAEsG,IAClG,IACjCT,aAAe,GAAc;AAAA,gBAAAZ,IAAA,CAAAC,SAAA,CAAAE,OAAA,CAAAI,IAAA;AAAA,WAGlCP,IAAA,CAAAC,SAAA,CAAAE,OAAA,CAAAmB,KAAA;AAAA;AACF,SACF;MACF","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one",
3
- "version": "1.2.24",
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.24",
125
- "@vxrn/resolve": "1.2.24",
126
- "@vxrn/tslib-lite": "1.2.24",
127
- "@vxrn/universal-color-scheme": "1.2.24",
128
- "@vxrn/use-isomorphic-layout-effect": "1.2.24",
129
- "@vxrn/vite-plugin-metro": "1.2.24",
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.24",
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.24",
160
+ "vxrn": "1.2.26",
161
161
  "ws": "^8.18.0",
162
162
  "xxhashjs": "^0.2.2"
163
163
  },
@@ -14,22 +14,65 @@ import {
14
14
  virtualEntryIdNative,
15
15
  } from './virtualEntryConstants'
16
16
 
17
- function getSetupFileImport(environmentName: string): string {
18
- const envVarMap = {
19
- client: 'ONE_SETUP_FILE_CLIENT',
20
- ssr: 'ONE_SETUP_FILE_SERVER',
21
- ios: 'ONE_SETUP_FILE_IOS',
22
- android: 'ONE_SETUP_FILE_ANDROID',
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
- const envVar = envVarMap[environmentName]
26
- if (!envVar) return ''
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
- return `
29
- if (process.env.${envVar}) {
30
- import(/* @vite-ignore */ process.env.${envVar})
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 prependCode = isNativeEnvironment(this.environment)
64
- ? '' /* `import()` will not work on native */
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 prependCode = isNativeEnvironment(this.environment)
93
- ? '' /* `import()` will not work on native */
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
 
@@ -6,5 +6,6 @@ export declare function createVirtualEntry(options: {
6
6
  ignoredRouteFiles?: Array<string>;
7
7
  };
8
8
  flags: One.Flags;
9
+ setupFile?: One.PluginOptions['setupFile'];
9
10
  }): Plugin;
10
11
  //# sourceMappingURL=virtualEntryPlugin.d.ts.map
@@ -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;AA0BnC,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;CACjB,GAAG,MAAM,CAqET"}
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"}