vxrn 1.4.11 → 1.4.13
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/config/getBaseVitePlugins.js +7 -3
- package/dist/config/getBaseVitePlugins.js.map +1 -1
- package/dist/config/getBaseVitePlugins.mjs +4 -3
- package/dist/config/getBaseVitePlugins.mjs.map +1 -1
- package/dist/config/getBaseVitePlugins.native.js +4 -3
- package/dist/config/getBaseVitePlugins.native.js.map +1 -1
- package/dist/config/getOptimizeDeps.js +0 -1
- package/dist/config/getOptimizeDeps.js.map +1 -1
- package/dist/config/getOptimizeDeps.mjs +1 -1
- package/dist/config/getOptimizeDeps.mjs.map +1 -1
- package/dist/config/getOptimizeDeps.native.js +1 -1
- package/dist/config/getOptimizeDeps.native.js.map +1 -1
- package/dist/constants.js +2 -1
- package/dist/constants.js.map +1 -1
- package/dist/constants.mjs +3 -2
- package/dist/constants.mjs.map +1 -1
- package/dist/constants.native.js +3 -2
- package/dist/constants.native.js.map +1 -1
- package/dist/plugins/serverExtensions.test.js +54 -0
- package/dist/plugins/serverExtensions.test.js.map +6 -0
- package/dist/plugins/serverExtensions.test.mjs +66 -0
- package/dist/plugins/serverExtensions.test.mjs.map +1 -0
- package/dist/plugins/serverExtensions.test.native.js +87 -0
- package/dist/plugins/serverExtensions.test.native.js.map +1 -0
- package/dist/utils/scanDepsToOptimize.js +17 -24
- package/dist/utils/scanDepsToOptimize.js.map +1 -1
- package/dist/utils/scanDepsToOptimize.mjs +1 -8
- package/dist/utils/scanDepsToOptimize.mjs.map +1 -1
- package/dist/utils/scanDepsToOptimize.native.js +3 -8
- package/dist/utils/scanDepsToOptimize.native.js.map +1 -1
- package/package.json +14 -14
- package/src/config/getBaseVitePlugins.ts +10 -3
- package/src/config/getOptimizeDeps.ts +0 -1
- package/src/constants.ts +2 -0
- package/src/plugins/serverExtensions.test.ts +124 -0
- package/types/config/getBaseVitePlugins.d.ts.map +1 -1
- package/types/config/getOptimizeDeps.d.ts.map +1 -1
- package/types/constants.d.ts +1 -0
- package/types/constants.d.ts.map +1 -1
- package/types/plugins/serverExtensions.test.d.ts +2 -0
- package/types/plugins/serverExtensions.test.d.ts.map +1 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { webExtensions } from "../constants";
|
|
1
|
+
import { ssrExtensions, webExtensions } from "../constants";
|
|
2
2
|
import FSExtra from "fs-extra";
|
|
3
3
|
import { extname } from "node:path";
|
|
4
4
|
import { createVXRNCompilerPlugin } from "@vxrn/compiler";
|
|
@@ -18,7 +18,7 @@ function getBaseVitePlugins() {
|
|
|
18
18
|
environments: {
|
|
19
19
|
ssr: {
|
|
20
20
|
resolve: {
|
|
21
|
-
extensions:
|
|
21
|
+
extensions: ssrExtensions,
|
|
22
22
|
conditions: ["vxrn-web"],
|
|
23
23
|
externalConditions: ["vxrn-web"]
|
|
24
24
|
}
|
|
@@ -38,9 +38,13 @@ function getBaseVitePlugins() {
|
|
|
38
38
|
const resolved = await this.resolve(source, importer, options);
|
|
39
39
|
if (!resolved || resolved.id.includes("node_modules"))
|
|
40
40
|
return resolved;
|
|
41
|
+
if (this.environment.name !== "ssr" && /\.server\.\w+$/.test(resolved.id))
|
|
42
|
+
throw new Error(
|
|
43
|
+
`[one] .server file cannot be imported on ${this.environment.name}: ${source} (imported by ${importer})`
|
|
44
|
+
);
|
|
41
45
|
const jsExtension = extname(resolved.id), withoutExt = resolved.id.replace(new RegExp(`\\${jsExtension}$`), ""), platformSpecificExtension = {
|
|
42
46
|
client: ["web"],
|
|
43
|
-
ssr: ["web"],
|
|
47
|
+
ssr: ["server", "web"],
|
|
44
48
|
ios: ["ios", "native"],
|
|
45
49
|
android: ["android", "native"]
|
|
46
50
|
}[this.environment.name];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/config/getBaseVitePlugins.ts"],
|
|
4
|
-
"mappings": "AACA,SAAS,qBAAqB;
|
|
4
|
+
"mappings": "AACA,SAAS,eAAe,qBAAqB;AAC7C,OAAO,aAAa;AACpB,SAAS,eAAe;AACxB,SAAS,gCAAgC;AAIlC,SAAS,qBAAqC;AACnD,SAAO;AAAA,IACL;AAAA,MACE,MAAM;AAAA,MACN,SAAS;AAAA,MACT,SAAS;AACP,eAAO;AAAA,UACL,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA,UAKT;AAAA,UAEA,cAAc;AAAA,YACZ,KAAK;AAAA,cACH,SAAS;AAAA,gBACP,YAAY;AAAA,gBACZ,YAAY,CAAC,UAAU;AAAA,gBACvB,oBAAoB,CAAC,UAAU;AAAA,cACjC;AAAA,YACF;AAAA,YAEA,QAAQ;AAAA,cACN,SAAS;AAAA,gBACP,YAAY;AAAA,gBACZ,YAAY,CAAC,UAAU;AAAA,cACzB;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA;AAAA,MAGA,MAAM,UAAU,QAAQ,UAAU,SAAS;AAKzC,YAAI,SAAS,KAAM;AAOnB,cAAM,WAAW,MAAM,KAAK,QAAQ,QAAQ,UAAU,OAAO;AAE7D,YAAI,CAAC,YAAY,SAAS,GAAG,SAAS,cAAc;AAClD,iBAAO;AAIT,YAAI,KAAK,YAAY,SAAS,SAAS,iBAAiB,KAAK,SAAS,EAAE;AACtE,gBAAM,IAAI;AAAA,YACR,4CAA4C,KAAK,YAAY,IAAI,KAAK,MAAM,iBAAiB,QAAQ;AAAA,UACvG;AAIF,cAAM,cAAc,QAAQ,SAAS,EAAE,GACjC,aAAa,SAAS,GAAG,QAAQ,IAAI,OAAO,KAAK,WAAW,GAAG,GAAG,EAAE,GASpE,4BAP0B;AAAA,UAC9B,QAAQ,CAAC,KAAK;AAAA,UACd,KAAK,CAAC,UAAU,KAAK;AAAA,UACrB,KAAK,CAAC,OAAO,QAAQ;AAAA,UACrB,SAAS,CAAC,WAAW,QAAQ;AAAA,QAC/B,EAE0D,KAAK,YAAY,IAAI;AAE/E,YAAI;AACF,qBAAW,qBAAqB,2BAA2B;AACzD,kBAAM,WAAW,GAAG,UAAU,IAAI,iBAAiB,GAAG,WAAW;AACjE,gBAAI,MAAM,QAAQ,WAAW,QAAQ;AACnC,qBAAO;AAAA,gBACL,IAAI;AAAA,cACN;AAAA,UAEJ;AAAA,MAEJ;AAAA,IACF;AAAA;AAAA;AAAA;AAAA,IAKA;AAAA,MACE,MAAM;AAAA,MAEN,kBAAkB;AAChB,cAAM,SAAS,QAAQ;AACvB,gBAAQ,OAAO,IAAI,SAAgB;AACjC,cACE,SAAO,KAAK,CAAC,KAAM,YACnB,KAAK,CAAC,EAAE,WAAW,+BAA+B;AAIpD,mBAAO,OAAO,GAAG,IAAI;AAAA,QACvB;AAAA,MACF;AAAA,IACF;AAAA,IAEA,yBAAyB,CAAC,CAAC;AAAA,EAC7B;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { webExtensions } from "../constants.mjs";
|
|
1
|
+
import { ssrExtensions, webExtensions } from "../constants.mjs";
|
|
2
2
|
import FSExtra from "fs-extra";
|
|
3
3
|
import { extname } from "node:path";
|
|
4
4
|
import { createVXRNCompilerPlugin } from "@vxrn/compiler";
|
|
@@ -17,7 +17,7 @@ function getBaseVitePlugins() {
|
|
|
17
17
|
environments: {
|
|
18
18
|
ssr: {
|
|
19
19
|
resolve: {
|
|
20
|
-
extensions:
|
|
20
|
+
extensions: ssrExtensions,
|
|
21
21
|
conditions: ["vxrn-web"],
|
|
22
22
|
externalConditions: ["vxrn-web"]
|
|
23
23
|
}
|
|
@@ -36,11 +36,12 @@ function getBaseVitePlugins() {
|
|
|
36
36
|
if (options?.scan) return;
|
|
37
37
|
const resolved = await this.resolve(source, importer, options);
|
|
38
38
|
if (!resolved || resolved.id.includes("node_modules")) return resolved;
|
|
39
|
+
if (this.environment.name !== "ssr" && /\.server\.\w+$/.test(resolved.id)) throw new Error(`[one] .server file cannot be imported on ${this.environment.name}: ${source} (imported by ${importer})`);
|
|
39
40
|
const jsExtension = extname(resolved.id),
|
|
40
41
|
withoutExt = resolved.id.replace(new RegExp(`\\${jsExtension}$`), ""),
|
|
41
42
|
platformSpecificExtension = {
|
|
42
43
|
client: ["web"],
|
|
43
|
-
ssr: ["web"],
|
|
44
|
+
ssr: ["server", "web"],
|
|
44
45
|
ios: ["ios", "native"],
|
|
45
46
|
android: ["android", "native"]
|
|
46
47
|
}[this.environment.name];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["webExtensions","FSExtra","extname","createVXRNCompilerPlugin","getBaseVitePlugins","name","enforce","config","resolve","environments","ssr","extensions","conditions","externalConditions","client","resolveId","source","importer","options","scan","resolved","id","includes","jsExtension","withoutExt","replace","RegExp","platformSpecificExtension","ios","android","
|
|
1
|
+
{"version":3,"names":["ssrExtensions","webExtensions","FSExtra","extname","createVXRNCompilerPlugin","getBaseVitePlugins","name","enforce","config","resolve","environments","ssr","extensions","conditions","externalConditions","client","resolveId","source","importer","options","scan","resolved","id","includes","environment","test","Error","jsExtension","withoutExt","replace","RegExp","platformSpecificExtension","ios","android","platformExtension","fullPath","pathExists","configureServer","ogWarn","console","warn","args","startsWith"],"sources":["../../src/config/getBaseVitePlugins.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,aAAA,EAAeC,aAAA,QAAqB;AAC7C,OAAOC,OAAA,MAAa;AACpB,SAASC,OAAA,QAAe;AACxB,SAASC,wBAAA,QAAgC;AAIlC,SAASC,mBAAA,EAAqC;EACnD,OAAO,CACL;IACEC,IAAA,EAAM;IACNC,OAAA,EAAS;IACTC,OAAA,EAAS;MACP,OAAO;QACLC,OAAA,EAAS;UAAA;UAAA;UAAA;UAAA;QAAA,CAKT;QAEAC,YAAA,EAAc;UACZC,GAAA,EAAK;YACHF,OAAA,EAAS;cACPG,UAAA,EAAYZ,aAAA;cACZa,UAAA,EAAY,CAAC,UAAU;cACvBC,kBAAA,EAAoB,CAAC,UAAU;YACjC;UACF;UAEAC,MAAA,EAAQ;YACNN,OAAA,EAAS;cACPG,UAAA,EAAYX,aAAA;cACZY,UAAA,EAAY,CAAC,UAAU;YACzB;UACF;QACF;MACF;IACF;IAAA;IAGA,MAAMG,UAAUC,MAAA,EAAQC,QAAA,EAAUC,OAAA,EAAS;MAKzC,IAAIA,OAAA,EAASC,IAAA,EAAM;MAOnB,MAAMC,QAAA,GAAW,MAAM,KAAKZ,OAAA,CAAQQ,MAAA,EAAQC,QAAA,EAAUC,OAAO;MAE7D,IAAI,CAACE,QAAA,IAAYA,QAAA,CAASC,EAAA,CAAGC,QAAA,CAAS,cAAc,GAClD,OAAOF,QAAA;MAIT,IAAI,KAAKG,WAAA,CAAYlB,IAAA,KAAS,SAAS,iBAAiBmB,IAAA,CAAKJ,QAAA,CAASC,EAAE,GACtE,MAAM,IAAII,KAAA,CACR,4CAA4C,KAAKF,WAAA,CAAYlB,IAAI,KAAKW,MAAM,iBAAiBC,QAAQ,GACvG;MAIF,MAAMS,WAAA,GAAcxB,OAAA,CAAQkB,QAAA,CAASC,EAAE;QACjCM,UAAA,GAAaP,QAAA,CAASC,EAAA,CAAGO,OAAA,CAAQ,IAAIC,MAAA,CAAO,KAAKH,WAAW,GAAG,GAAG,EAAE;QASpEI,yBAAA,GAP0B;UAC9BhB,MAAA,EAAQ,CAAC,KAAK;UACdJ,GAAA,EAAK,CAAC,UAAU,KAAK;UACrBqB,GAAA,EAAK,CAAC,OAAO,QAAQ;UACrBC,OAAA,EAAS,CAAC,WAAW,QAAQ;QAC/B,EAE0D,KAAKT,WAAA,CAAYlB,IAAI;MAE/E,IAAIyB,yBAAA,EACF,WAAWG,iBAAA,IAAqBH,yBAAA,EAA2B;QACzD,MAAMI,QAAA,GAAW,GAAGP,UAAU,IAAIM,iBAAiB,GAAGP,WAAW;QACjE,IAAI,MAAMzB,OAAA,CAAQkC,UAAA,CAAWD,QAAQ,GACnC,OAAO;UACLb,EAAA,EAAIa;QACN;MAEJ;IAEJ;EACF;EAAA;EAAA;EAAA;EAKA;IACE7B,IAAA,EAAM;IAEN+B,gBAAA,EAAkB;MAChB,MAAMC,MAAA,GAASC,OAAA,CAAQC,IAAA;MACvBD,OAAA,CAAQC,IAAA,GAAO,IAAIC,IAAA,KAAgB;QACjC,IACE,SAAOA,IAAA,CAAK,CAAC,KAAM,YACnBA,IAAA,CAAK,CAAC,EAAEC,UAAA,CAAW,+BAA+B,IAIpD,OAAOJ,MAAA,CAAO,GAAGG,IAAI;MACvB;IACF;EACF,GAEArC,wBAAA,CAAyB,CAAC,CAAC,EAC7B;AACF","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { webExtensions } from "../constants.native.js";
|
|
1
|
+
import { ssrExtensions, webExtensions } from "../constants.native.js";
|
|
2
2
|
import FSExtra from "fs-extra";
|
|
3
3
|
import { extname } from "path";
|
|
4
4
|
import { createVXRNCompilerPlugin } from "@vxrn/compiler";
|
|
@@ -16,7 +16,7 @@ function getBaseVitePlugins() {
|
|
|
16
16
|
environments: {
|
|
17
17
|
ssr: {
|
|
18
18
|
resolve: {
|
|
19
|
-
extensions:
|
|
19
|
+
extensions: ssrExtensions,
|
|
20
20
|
conditions: ["vxrn-web"],
|
|
21
21
|
externalConditions: ["vxrn-web"]
|
|
22
22
|
}
|
|
@@ -35,11 +35,12 @@ function getBaseVitePlugins() {
|
|
|
35
35
|
if (!options?.scan) {
|
|
36
36
|
var resolved = await this.resolve(source, importer, options);
|
|
37
37
|
if (!resolved || resolved.id.includes("node_modules")) return resolved;
|
|
38
|
+
if (this.environment.name !== "ssr" && /\.server\.\w+$/.test(resolved.id)) throw new Error(`[one] .server file cannot be imported on ${this.environment.name}: ${source} (imported by ${importer})`);
|
|
38
39
|
var jsExtension = extname(resolved.id),
|
|
39
40
|
withoutExt = resolved.id.replace(new RegExp(`\\${jsExtension}$`), ""),
|
|
40
41
|
extensionsByEnvironment = {
|
|
41
42
|
client: ["web"],
|
|
42
|
-
ssr: ["web"],
|
|
43
|
+
ssr: ["server", "web"],
|
|
43
44
|
ios: ["ios", "native"],
|
|
44
45
|
android: ["android", "native"]
|
|
45
46
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["webExtensions","FSExtra","extname","createVXRNCompilerPlugin","getBaseVitePlugins","name","enforce","config","resolve","environments","ssr","extensions","conditions","externalConditions","client","resolveId","source","importer","options","scan","resolved","id","includes","jsExtension","withoutExt","replace","RegExp","extensionsByEnvironment","ios","android","platformSpecificExtension","
|
|
1
|
+
{"version":3,"names":["ssrExtensions","webExtensions","FSExtra","extname","createVXRNCompilerPlugin","getBaseVitePlugins","name","enforce","config","resolve","environments","ssr","extensions","conditions","externalConditions","client","resolveId","source","importer","options","scan","resolved","id","includes","environment","test","Error","jsExtension","withoutExt","replace","RegExp","extensionsByEnvironment","ios","android","platformSpecificExtension","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","platformExtension","value","fullPath","pathExists","err"],"sources":["../../src/config/getBaseVitePlugins.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,aAAA,EAAeC,aAAA,QAAqB;AAC7C,OAAOC,OAAA,MAAa;AACpB,SAASC,OAAA,QAAe;AACxB,SAASC,wBAAA,QAAgC;AAIlC,SAASC,mBAAA,EAAqC;EACnD,OAAO,CACL;IACEC,IAAA,EAAM;IACNC,OAAA,EAAS;IACTC,OAAA,EAAS;MACP,OAAO;QACLC,OAAA,EAAS;QAAA;QAAA;QAAA;QAAA;QAKTC,YAAA;UAEAC,GAAA;YACEF,OAAK;cACHG,UAAS,EAAAZ,aAAA;cACPa,UAAA,EAAY,CACZ,UAAY,CACZ;cACFC,kBAAA,GACF;YAGE;UAAS;UACKC,MACZ;YACFN,OAAA;cACFG,UAAA,EAAAX,aAAA;cACFY,UAAA,GACF;YACF;UAGM;QAKJ;MAOA;IAEA;IACE;IAIF,MAAIG,SAAKA,CAAAC,MAAA,EAAYC,QAAS,EAAAC,OAAS;MACrC,KAAAA,OAAU,EAAAC,IAAA;QAAA,IACRC,QAAA,cAAAZ,OAAA,CAAAQ,MAAA,EAAAC,QAA4C,EAAKC,OAAA;QACnD,KAAAE,QAAA,IAAAA,QAAA,CAAAC,EAAA,CAAAC,QAAA,kBAIF,OAAMF,QAAA;QAIJ,QAAQ,CAACG,WAAK,CAAAlB,IAAA,+BAAAmB,IAAA,CAAAJ,QAAA,CAAAC,EAAA,GACd,MAAM,IAAAI,KAAU,6CAAK,KAAAF,WAAA,CAAAlB,IAAA,KAAAW,MAAA,iBAAAC,QAAA;QACrB,IAAAS,WAAa,GAAAxB,OAAQ,CAAAkB,QAAA,CAAAC,EAAA;UAAAM,UAAA,GAAAP,QAAA,CAAAC,EAAA,CAAAO,OAAA,KAAAC,MAAA,MAAAH,WAAA;UAAAI,uBAAA;YACrBhB,MAAA,EAAU,CAG8C,KAAK,CAE3D;YACFJ,GAAA,GACE,QAAM,EACN,KAAI,CACF;YAAOqB,GAAA,EACL,CACF,OAEJ,SAEJ;YACFC,OAAA;UAKA;UAAAC,yBAAA,GAAAH,uBAAA,MAAAP,WAAA,CAAAlB,IAAA;QACE,IAAM4B,yBAAA;UAEN,IAAAC,yBAAkB;YAAAC,iBAAA;YAAAC,cAAA;UAChB,IAAM;YACN,KAAQ,IAAOC,SAAI,GAAAJ,yBAAgB,CAAAK,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;cAE/B,IAAAS,iBAAmB,GAAAH,KAAA,CACnBI,KAAK;gBAACC,QAAE,MAAWlB,UAAA,IAAAgB,iBAA+B,GAAAjB,WAAA;cAIpD,IAAO,MAAOzB,OAAO,CAAA6C,UAAA,CAAAD,QAAA,GACvB;gBACFxB,EAAA,EAAAwB;cACF;YAEA;UACF,SAAAE,GAAA;YACFZ,iBAAA,OAAAC,cAAA,GAAAW,GAAA","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/config/getOptimizeDeps.ts"],
|
|
4
|
-
"mappings": "AACA,SAAS,qBAAqB;AAIvB,SAAS,gBAAgB,MAAyB;AACvD,QAAM,eAAe;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAEM,iBAAiB;AAAA,IACrB,GAAG;AAAA,IAEH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA
|
|
4
|
+
"mappings": "AACA,SAAS,qBAAqB;AAIvB,SAAS,gBAAgB,MAAyB;AACvD,QAAM,eAAe;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IAEA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAEM,iBAAiB;AAAA,IACrB,GAAG;AAAA,IAEH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IAEA;AAAA,IACA;AAAA;AAAA,IAGA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAEA,SAAI,SAAS,WAEX,eAAe,KAAK,gBAAgB,GAG/B;AAAA,IACL;AAAA,IACA;AAAA,IACA,cAAc;AAAA,MACZ,SAAS;AAAA,MACT,SAAS,CAAC,QAAQ,aAAa,0BAA0B,aAAa;AAAA,MACtE;AAAA;AAAA;AAAA,MAGA,mBAAmB;AAAA,MACnB,gBAAgB;AAAA,QACd,mBAAmB;AAAA;AAAA,QAEnB,QAAQ,EAAE,OAAO,MAAM;AAAA,MACzB;AAAA,IACF;AAAA,EACF;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { webExtensions } from "../constants.mjs";
|
|
2
2
|
function getOptimizeDeps(mode) {
|
|
3
3
|
const needsInterop = ["nativewind/jsx-dev-runtime", "nativewind/jsx-runtime", "nativewind", "react-native-css-interop/jsx-runtime", "react-native-css-interop/jsx-dev-runtime", "react-native-css-interop", "secure-json-parse", "@react-native/normalize-colors", "@vxrn/safe-area", "@vxrn/vendor/react-19-prod", "@vxrn/vendor/react-19", "@vxrn/vendor/react-19-compiler-runtime", "@vxrn/vendor/react-dom-19", "@vxrn/vendor/react-dom-client-19", "@vxrn/vendor/react-dom-server.browser-19", "@vxrn/vendor/react-jsx-19", "@vxrn/vendor/react-jsx-dev-19", "react", "react/jsx-runtime", "react/jsx-dev-runtime", "react/compiler-runtime", "react-dom", "react-dom/server", "react-dom/client", "react-native-web-internals", "react-native-web", "@react-native-masked-view/masked-view", "url-parse", "query-string", "escape-string-regexp", "use-latest-callback", "react-is", "fast-deep-equal", "@supabase/auth-helpers-react", "@supabase/postgres-js", "core-js", "parse-numeric-range", "use-sync-external-store", "use-sync-external-store/shim", "expo-constants", "expo-linking", "inline-style-prefixer", "@docsearch/react", "@algolia/autocomplete-core", "@algolia/autocomplete-plugin-algolia-insights", "@algolia/autocomplete-shared", "moti"],
|
|
4
|
-
depsToOptimize = [...needsInterop, "fast-xml-parser", "set-cookie-parser", "ipaddr.js", "cross-fetch", "pg", "react-native-svg", "react-native-screens", "ws", "lodash",
|
|
4
|
+
depsToOptimize = [...needsInterop, "fast-xml-parser", "set-cookie-parser", "ipaddr.js", "cross-fetch", "pg", "react-native-svg", "react-native-screens", "ws", "lodash",
|
|
5
5
|
// added these when using a worker env
|
|
6
6
|
"reading-time", "mdx-bundler/client", "gray-matter", "glob", "memoize-one", "css-in-js-utils", "hyphenate-style-name", "use-sync-external-store", "react-native-reanimated",
|
|
7
7
|
// uses .web.js extensions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["webExtensions","getOptimizeDeps","mode","needsInterop","depsToOptimize","push","optimizeDeps","include","exclude","holdUntilCrawlEnd","esbuildOptions","resolveExtensions","loader"],"sources":["../../src/config/getOptimizeDeps.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,aAAA,QAAqB;AAIvB,SAASC,gBAAgBC,IAAA,EAAyB;EACvD,MAAMC,YAAA,GAAe,CACnB,8BACA,0BACA,cAEA,wCACA,4CACA,4BAEA,qBAEA,kCACA,mBACA,8BACA,yBACA,0CACA,6BACA,oCACA,4CACA,6BACA,iCACA,SACA,qBACA,yBACA,0BACA,aACA,oBACA,oBACA,8BACA,oBACA,yCACA,aACA,gBACA,wBACA,uBACA,YACA,mBACA,gCACA,yBACA,WACA,uBACA,2BACA,gCACA,kBACA,gBACA,yBACA,oBACA,8BACA,iDACA,gCACA,OACF;IAEMC,cAAA,GAAiB,CACrB,GAAGD,YAAA,EAEH,mBACA,qBACA,aACA,eACA,MACA,oBACA,wBAEA,MACA
|
|
1
|
+
{"version":3,"names":["webExtensions","getOptimizeDeps","mode","needsInterop","depsToOptimize","push","optimizeDeps","include","exclude","holdUntilCrawlEnd","esbuildOptions","resolveExtensions","loader"],"sources":["../../src/config/getOptimizeDeps.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,aAAA,QAAqB;AAIvB,SAASC,gBAAgBC,IAAA,EAAyB;EACvD,MAAMC,YAAA,GAAe,CACnB,8BACA,0BACA,cAEA,wCACA,4CACA,4BAEA,qBAEA,kCACA,mBACA,8BACA,yBACA,0CACA,6BACA,oCACA,4CACA,6BACA,iCACA,SACA,qBACA,yBACA,0BACA,aACA,oBACA,oBACA,8BACA,oBACA,yCACA,aACA,gBACA,wBACA,uBACA,YACA,mBACA,gCACA,yBACA,WACA,uBACA,2BACA,gCACA,kBACA,gBACA,yBACA,oBACA,8BACA,iDACA,gCACA,OACF;IAEMC,cAAA,GAAiB,CACrB,GAAGD,YAAA,EAEH,mBACA,qBACA,aACA,eACA,MACA,oBACA,wBAEA,MACA;IAAA;IAGA,gBACA,sBACA,eACA,QACA,eACA,mBACA,wBACA,2BACA;IAAA;IACA,0BACA,4BACA,8BACA,iCACA,kCACA,OACA,UACA,QACA,gCACA,sBACA,iBACA,kBACA,oBACA,qBACA,wBACA,wBACA,kBACA,cACA,aACA,aACA,gCACA,wBACA,sBACA,UACA,OACA,gBACA,OACA,YACA,sBACA,aACA,2BACA,iCACA,qBACA,mBACA,oBACA,yBACA,gBACA,sBACA,0BACA,WACA,oBACA,WACF;EAEA,OAAID,IAAA,KAAS,WAEXE,cAAA,CAAeC,IAAA,CAAK,gBAAgB,GAG/B;IACLF,YAAA;IACAC,cAAA;IACAE,YAAA,EAAc;MACZC,OAAA,EAASH,cAAA;MACTI,OAAA,EAAS,CAAC,QAAQ,aAAa,0BAA0B,aAAa;MACtEL,YAAA;MAAA;MAAA;MAGAM,iBAAA,EAAmB;MACnBC,cAAA,EAAgB;QACdC,iBAAA,EAAmBX,aAAA;QAAA;QAEnBY,MAAA,EAAQ;UAAE,OAAO;QAAM;MACzB;IACF;EACF;AACF","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { webExtensions } from "../constants.native.js";
|
|
2
2
|
function getOptimizeDeps(mode) {
|
|
3
3
|
var needsInterop = ["nativewind/jsx-dev-runtime", "nativewind/jsx-runtime", "nativewind", "react-native-css-interop/jsx-runtime", "react-native-css-interop/jsx-dev-runtime", "react-native-css-interop", "secure-json-parse", "@react-native/normalize-colors", "@vxrn/safe-area", "@vxrn/vendor/react-19-prod", "@vxrn/vendor/react-19", "@vxrn/vendor/react-19-compiler-runtime", "@vxrn/vendor/react-dom-19", "@vxrn/vendor/react-dom-client-19", "@vxrn/vendor/react-dom-server.browser-19", "@vxrn/vendor/react-jsx-19", "@vxrn/vendor/react-jsx-dev-19", "react", "react/jsx-runtime", "react/jsx-dev-runtime", "react/compiler-runtime", "react-dom", "react-dom/server", "react-dom/client", "react-native-web-internals", "react-native-web", "@react-native-masked-view/masked-view", "url-parse", "query-string", "escape-string-regexp", "use-latest-callback", "react-is", "fast-deep-equal", "@supabase/auth-helpers-react", "@supabase/postgres-js", "core-js", "parse-numeric-range", "use-sync-external-store", "use-sync-external-store/shim", "expo-constants", "expo-linking", "inline-style-prefixer", "@docsearch/react", "@algolia/autocomplete-core", "@algolia/autocomplete-plugin-algolia-insights", "@algolia/autocomplete-shared", "moti"],
|
|
4
|
-
depsToOptimize = [...needsInterop, "fast-xml-parser", "set-cookie-parser", "ipaddr.js", "cross-fetch", "pg", "react-native-svg", "react-native-screens", "ws", "lodash",
|
|
4
|
+
depsToOptimize = [...needsInterop, "fast-xml-parser", "set-cookie-parser", "ipaddr.js", "cross-fetch", "pg", "react-native-svg", "react-native-screens", "ws", "lodash",
|
|
5
5
|
// added these when using a worker env
|
|
6
6
|
"reading-time", "mdx-bundler/client", "gray-matter", "glob", "memoize-one", "css-in-js-utils", "hyphenate-style-name", "use-sync-external-store", "react-native-reanimated",
|
|
7
7
|
// uses .web.js extensions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["webExtensions","getOptimizeDeps","mode","needsInterop","depsToOptimize","push","optimizeDeps","include","exclude","holdUntilCrawlEnd","esbuildOptions","resolveExtensions"],"sources":["../../src/config/getOptimizeDeps.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,aAAA,QAAqB;AAIvB,SAASC,gBAAgBC,IAAA,EAAyB;EACvD,IAAAC,YAAM,IACJ,8BACA,0BACA,cAEA,wCACA,4CACA,4BAEA,qBAEA,kCACA,mBACA,8BACA,yBACA,0CACA,6BACA,oCACA,4CACA,6BACA,iCACA,SACA,qBACA,yBACA,0BACA,aACA,oBACA,oBACA,8BACA,oBACA,yCACA,aACA,gBACA,wBACA,uBACA,YACA,mBACA,gCACA,yBACA,WACA,uBACA,2BACA,gCACA,kBACA,gBACA,yBACA,oBACA,8BACA,iDACA,gCACA,OACF;IAEMC,cAAA,GAAiB,CACrB,GAAGD,YAAA,EAEH,mBACA,qBACA,aACA,eACA,MACA,oBACA,wBAEA,MACA
|
|
1
|
+
{"version":3,"names":["webExtensions","getOptimizeDeps","mode","needsInterop","depsToOptimize","push","optimizeDeps","include","exclude","holdUntilCrawlEnd","esbuildOptions","resolveExtensions"],"sources":["../../src/config/getOptimizeDeps.ts"],"sourcesContent":[null],"mappings":"AACA,SAASA,aAAA,QAAqB;AAIvB,SAASC,gBAAgBC,IAAA,EAAyB;EACvD,IAAAC,YAAM,IACJ,8BACA,0BACA,cAEA,wCACA,4CACA,4BAEA,qBAEA,kCACA,mBACA,8BACA,yBACA,0CACA,6BACA,oCACA,4CACA,6BACA,iCACA,SACA,qBACA,yBACA,0BACA,aACA,oBACA,oBACA,8BACA,oBACA,yCACA,aACA,gBACA,wBACA,uBACA,YACA,mBACA,gCACA,yBACA,WACA,uBACA,2BACA,gCACA,kBACA,gBACA,yBACA,oBACA,8BACA,iDACA,gCACA,OACF;IAEMC,cAAA,GAAiB,CACrB,GAAGD,YAAA,EAEH,mBACA,qBACA,aACA,eACA,MACA,oBACA,wBAEA,MACA;IAAA;IAGA,gBACA,sBACA,eACA,QACA,eACA,mBACA,wBACA,2BACA;IAAA;IACA,0BACA,4BACA,8BACA,iCACA,kCACA,OACA,UACA,QACA,gCACA,sBACA,iBACA,kBACA,oBACA,qBACA,wBACA,wBACA,kBACA,cACA,aACA,aACA,gCACA,wBACA,sBACA,UACA,OACA,gBACA,OACA,YACA,sBACA,aACA,2BACA,iCACA,qBACA,mBACA,oBACA,yBACA,gBACA,sBACA,0BACA,WACA,oBACA,WACF;EAEA,OAAID,IAAA,KAAS,WAEXE,cAAA,CAAeC,IAAA,CAAK,gBAAgB,GAG/B;IACLF,YAAA;IACAC,cAAA;IACAE,YAAA,EAAc;MACZC,OAAA,EAASH,cAAA;MACTI,OAAA,EAAS,CACT,+CAGA,cACA;MAAgBL,YACd;MAAmB;MAAA;MAGrBM,iBAAA;MACFC,cAAA;QACFC,iBAAA,EAAAX,aAAA;QACF","ignoreList":[]}
|
package/dist/constants.js
CHANGED
|
@@ -11,9 +11,10 @@ const DEFAULT_PORT = 8081, viteDefaultExtensions = [
|
|
|
11
11
|
".web.mjs",
|
|
12
12
|
".web.js",
|
|
13
13
|
...viteDefaultExtensions
|
|
14
|
-
];
|
|
14
|
+
], ssrExtensions = [".server.tsx", ".server.ts", ...webExtensions];
|
|
15
15
|
export {
|
|
16
16
|
DEFAULT_PORT,
|
|
17
|
+
ssrExtensions,
|
|
17
18
|
webExtensions
|
|
18
19
|
};
|
|
19
20
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/constants.ts"],
|
|
4
|
-
"mappings": "AAAO,MAAM,eAAe,MAEtB,wBAAwB;AAAA;AAAA,EAE5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEa,gBAAgB;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL;",
|
|
4
|
+
"mappings": "AAAO,MAAM,eAAe,MAEtB,wBAAwB;AAAA;AAAA,EAE5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAEa,gBAAgB;AAAA,EAC3B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,GAEa,gBAAgB,CAAC,eAAe,cAAc,GAAG,aAAa;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
package/dist/constants.mjs
CHANGED
|
@@ -2,6 +2,7 @@ const DEFAULT_PORT = 8081,
|
|
|
2
2
|
viteDefaultExtensions = [
|
|
3
3
|
// keep indent
|
|
4
4
|
".mjs", ".js", ".ts", ".tsx", ".json"],
|
|
5
|
-
webExtensions = [".web.tsx", ".web.ts", ".web.mjs", ".web.js", ...viteDefaultExtensions]
|
|
6
|
-
|
|
5
|
+
webExtensions = [".web.tsx", ".web.ts", ".web.mjs", ".web.js", ...viteDefaultExtensions],
|
|
6
|
+
ssrExtensions = [".server.tsx", ".server.ts", ...webExtensions];
|
|
7
|
+
export { DEFAULT_PORT, ssrExtensions, webExtensions };
|
|
7
8
|
//# sourceMappingURL=constants.mjs.map
|
package/dist/constants.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_PORT","viteDefaultExtensions","webExtensions"],"sources":["../src/constants.ts"],"sourcesContent":[null],"mappings":"AAAO,MAAMA,YAAA,GAAe;EAEtBC,qBAAA,GAAwB;EAAA;EAE5B,QACA,OACA,OACA,QACA,QACF;EAEaC,aAAA,GAAgB,CAC3B,YACA,WACA,YACA,WACA,GAAGD,qBAAA,CACL","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DEFAULT_PORT","viteDefaultExtensions","webExtensions","ssrExtensions"],"sources":["../src/constants.ts"],"sourcesContent":[null],"mappings":"AAAO,MAAMA,YAAA,GAAe;EAEtBC,qBAAA,GAAwB;EAAA;EAE5B,QACA,OACA,OACA,QACA,QACF;EAEaC,aAAA,GAAgB,CAC3B,YACA,WACA,YACA,WACA,GAAGD,qBAAA,CACL;EAEaE,aAAA,GAAgB,CAAC,eAAe,cAAc,GAAGD,aAAa","ignoreList":[]}
|
package/dist/constants.native.js
CHANGED
|
@@ -2,6 +2,7 @@ var DEFAULT_PORT = 8081,
|
|
|
2
2
|
viteDefaultExtensions = [
|
|
3
3
|
// keep indent
|
|
4
4
|
".mjs", ".js", ".ts", ".tsx", ".json"],
|
|
5
|
-
webExtensions = [".web.tsx", ".web.ts", ".web.mjs", ".web.js", ...viteDefaultExtensions]
|
|
6
|
-
|
|
5
|
+
webExtensions = [".web.tsx", ".web.ts", ".web.mjs", ".web.js", ...viteDefaultExtensions],
|
|
6
|
+
ssrExtensions = [".server.tsx", ".server.ts", ...webExtensions];
|
|
7
|
+
export { DEFAULT_PORT, ssrExtensions, webExtensions };
|
|
7
8
|
//# sourceMappingURL=constants.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_PORT","viteDefaultExtensions","webExtensions"],"sources":["../src/constants.ts"],"sourcesContent":[null],"mappings":"AAAO,IAAAA,YAAM,OAAe;EAAAC,qBAEtB;EAAwB;EAE5B,QACA,OACA,OACA,QACA,QACF;EAEaC,aAAA,GAAgB,CAC3B,YACA,WACA,YACA,WACA,GAAGD,qBAAA,CACL","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DEFAULT_PORT","viteDefaultExtensions","webExtensions","ssrExtensions"],"sources":["../src/constants.ts"],"sourcesContent":[null],"mappings":"AAAO,IAAAA,YAAM,OAAe;EAAAC,qBAEtB;EAAwB;EAE5B,QACA,OACA,OACA,QACA,QACF;EAEaC,aAAA,GAAgB,CAC3B,YACA,WACA,YACA,WACA,GAAGD,qBAAA,CACL;EAEaE,aAAA,GAAgB,C","ignoreList":[]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
async function getPlatformResolvePlugin() {
|
|
3
|
+
const { getBaseVitePlugins } = await import("../config/getBaseVitePlugins"), plugin = getBaseVitePlugins().find(
|
|
4
|
+
(p) => typeof p == "object" && p !== null && "name" in p && p.name === "platform-specific-resolve"
|
|
5
|
+
);
|
|
6
|
+
if (!plugin || typeof plugin != "object" || !("resolveId" in plugin))
|
|
7
|
+
throw new Error("platform-specific-resolve plugin not found");
|
|
8
|
+
return plugin;
|
|
9
|
+
}
|
|
10
|
+
function createMockContext(envName, resolvedId) {
|
|
11
|
+
return {
|
|
12
|
+
resolve: vi.fn().mockResolvedValue(resolvedId ? { id: resolvedId } : null),
|
|
13
|
+
environment: { name: envName }
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
describe("platform-specific-resolve", () => {
|
|
17
|
+
describe(".server extension", () => {
|
|
18
|
+
it("ssr resolves .server files", async () => {
|
|
19
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId, FSExtra = await import("fs-extra");
|
|
20
|
+
vi.spyOn(FSExtra.default, "pathExists").mockImplementation(async (path) => String(path).includes(".server."));
|
|
21
|
+
const ctx = createMockContext("ssr", "/src/db.ts"), result = await resolveId.call(ctx, "./db", "/src/app.tsx", {});
|
|
22
|
+
expect(result).toEqual({ id: "/src/db.server.ts" }), vi.restoreAllMocks();
|
|
23
|
+
}), it("client does not resolve .server files", async () => {
|
|
24
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId, FSExtra = await import("fs-extra");
|
|
25
|
+
vi.spyOn(FSExtra.default, "pathExists").mockImplementation(async (path) => String(path).includes(".web."));
|
|
26
|
+
const ctx = createMockContext("client", "/src/db.ts"), result = await resolveId.call(ctx, "./db", "/src/app.tsx", {});
|
|
27
|
+
expect(result).toEqual({ id: "/src/db.web.ts" }), vi.restoreAllMocks();
|
|
28
|
+
}), it("errors when .server file is explicitly imported on client", async () => {
|
|
29
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId, ctx = createMockContext("client", "/src/db.server.ts");
|
|
30
|
+
await expect(
|
|
31
|
+
resolveId.call(ctx, "./db.server", "/src/page.tsx", {})
|
|
32
|
+
).rejects.toThrow(".server file cannot be imported on client");
|
|
33
|
+
}), it("errors when .server file is explicitly imported on ios", async () => {
|
|
34
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId, ctx = createMockContext("ios", "/src/db.server.ts");
|
|
35
|
+
await expect(
|
|
36
|
+
resolveId.call(ctx, "./db.server", "/src/page.tsx", {})
|
|
37
|
+
).rejects.toThrow(".server file cannot be imported on ios");
|
|
38
|
+
}), it("allows .server file import on ssr", async () => {
|
|
39
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId, FSExtra = await import("fs-extra");
|
|
40
|
+
vi.spyOn(FSExtra.default, "pathExists").mockResolvedValue(!1);
|
|
41
|
+
const ctx = createMockContext("ssr", "/src/db.server.ts"), result = await resolveId.call(ctx, "./db.server", "/src/page.tsx", {});
|
|
42
|
+
expect(result).toBeUndefined(), vi.restoreAllMocks();
|
|
43
|
+
});
|
|
44
|
+
}), describe("config extensions", () => {
|
|
45
|
+
it("ssr includes .server extensions", async () => {
|
|
46
|
+
const ssrExts = (await getPlatformResolvePlugin()).config().environments.ssr.resolve.extensions;
|
|
47
|
+
expect(ssrExts).toContain(".server.ts"), expect(ssrExts).toContain(".server.tsx"), expect(ssrExts).toContain(".web.ts");
|
|
48
|
+
}), it("client does not include .server extensions", async () => {
|
|
49
|
+
const clientExts = (await getPlatformResolvePlugin()).config().environments.client.resolve.extensions;
|
|
50
|
+
expect(clientExts).not.toContain(".server.ts"), expect(clientExts).not.toContain(".server.tsx");
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
//# sourceMappingURL=serverExtensions.test.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/plugins/serverExtensions.test.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
async function getPlatformResolvePlugin() {
|
|
3
|
+
const {
|
|
4
|
+
getBaseVitePlugins
|
|
5
|
+
} = await import("../config/getBaseVitePlugins.mjs"),
|
|
6
|
+
plugin = getBaseVitePlugins().find(p => typeof p == "object" && p !== null && "name" in p && p.name === "platform-specific-resolve");
|
|
7
|
+
if (!plugin || typeof plugin != "object" || !("resolveId" in plugin)) throw new Error("platform-specific-resolve plugin not found");
|
|
8
|
+
return plugin;
|
|
9
|
+
}
|
|
10
|
+
function createMockContext(envName, resolvedId) {
|
|
11
|
+
return {
|
|
12
|
+
resolve: vi.fn().mockResolvedValue(resolvedId ? {
|
|
13
|
+
id: resolvedId
|
|
14
|
+
} : null),
|
|
15
|
+
environment: {
|
|
16
|
+
name: envName
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
describe("platform-specific-resolve", () => {
|
|
21
|
+
describe(".server extension", () => {
|
|
22
|
+
it("ssr resolves .server files", async () => {
|
|
23
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId,
|
|
24
|
+
FSExtra = await import("fs-extra");
|
|
25
|
+
vi.spyOn(FSExtra.default, "pathExists").mockImplementation(async path => String(path).includes(".server."));
|
|
26
|
+
const ctx = createMockContext("ssr", "/src/db.ts"),
|
|
27
|
+
result = await resolveId.call(ctx, "./db", "/src/app.tsx", {});
|
|
28
|
+
expect(result).toEqual({
|
|
29
|
+
id: "/src/db.server.ts"
|
|
30
|
+
}), vi.restoreAllMocks();
|
|
31
|
+
}), it("client does not resolve .server files", async () => {
|
|
32
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId,
|
|
33
|
+
FSExtra = await import("fs-extra");
|
|
34
|
+
vi.spyOn(FSExtra.default, "pathExists").mockImplementation(async path => String(path).includes(".web."));
|
|
35
|
+
const ctx = createMockContext("client", "/src/db.ts"),
|
|
36
|
+
result = await resolveId.call(ctx, "./db", "/src/app.tsx", {});
|
|
37
|
+
expect(result).toEqual({
|
|
38
|
+
id: "/src/db.web.ts"
|
|
39
|
+
}), vi.restoreAllMocks();
|
|
40
|
+
}), it("errors when .server file is explicitly imported on client", async () => {
|
|
41
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId,
|
|
42
|
+
ctx = createMockContext("client", "/src/db.server.ts");
|
|
43
|
+
await expect(resolveId.call(ctx, "./db.server", "/src/page.tsx", {})).rejects.toThrow(".server file cannot be imported on client");
|
|
44
|
+
}), it("errors when .server file is explicitly imported on ios", async () => {
|
|
45
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId,
|
|
46
|
+
ctx = createMockContext("ios", "/src/db.server.ts");
|
|
47
|
+
await expect(resolveId.call(ctx, "./db.server", "/src/page.tsx", {})).rejects.toThrow(".server file cannot be imported on ios");
|
|
48
|
+
}), it("allows .server file import on ssr", async () => {
|
|
49
|
+
const resolveId = (await getPlatformResolvePlugin()).resolveId,
|
|
50
|
+
FSExtra = await import("fs-extra");
|
|
51
|
+
vi.spyOn(FSExtra.default, "pathExists").mockResolvedValue(!1);
|
|
52
|
+
const ctx = createMockContext("ssr", "/src/db.server.ts"),
|
|
53
|
+
result = await resolveId.call(ctx, "./db.server", "/src/page.tsx", {});
|
|
54
|
+
expect(result).toBeUndefined(), vi.restoreAllMocks();
|
|
55
|
+
});
|
|
56
|
+
}), describe("config extensions", () => {
|
|
57
|
+
it("ssr includes .server extensions", async () => {
|
|
58
|
+
const ssrExts = (await getPlatformResolvePlugin()).config().environments.ssr.resolve.extensions;
|
|
59
|
+
expect(ssrExts).toContain(".server.ts"), expect(ssrExts).toContain(".server.tsx"), expect(ssrExts).toContain(".web.ts");
|
|
60
|
+
}), it("client does not include .server extensions", async () => {
|
|
61
|
+
const clientExts = (await getPlatformResolvePlugin()).config().environments.client.resolve.extensions;
|
|
62
|
+
expect(clientExts).not.toContain(".server.ts"), expect(clientExts).not.toContain(".server.tsx");
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
//# sourceMappingURL=serverExtensions.test.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["describe","expect","it","vi","getPlatformResolvePlugin","getBaseVitePlugins","plugin","find","p","name","Error","createMockContext","envName","resolvedId","resolve","fn","mockResolvedValue","id","environment","resolveId","FSExtra","spyOn","default","mockImplementation","path","String","includes","ctx","result","call","toEqual","restoreAllMocks","rejects","toThrow","toBeUndefined","ssrExts","config","environments","ssr","extensions","toContain","clientExts","client","not"],"sources":["../../src/plugins/serverExtensions.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
function _type_of(obj) {
|
|
3
|
+
"@swc/helpers - typeof";
|
|
4
|
+
|
|
5
|
+
return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
6
|
+
}
|
|
7
|
+
async function getPlatformResolvePlugin() {
|
|
8
|
+
var {
|
|
9
|
+
getBaseVitePlugins
|
|
10
|
+
} = await import("../config/getBaseVitePlugins.native.js"),
|
|
11
|
+
plugins = getBaseVitePlugins(),
|
|
12
|
+
plugin = plugins.find(function (p) {
|
|
13
|
+
return (typeof p > "u" ? "undefined" : _type_of(p)) === "object" && p !== null && "name" in p && p.name === "platform-specific-resolve";
|
|
14
|
+
});
|
|
15
|
+
if (!plugin || (typeof plugin > "u" ? "undefined" : _type_of(plugin)) !== "object" || !("resolveId" in plugin)) throw new Error("platform-specific-resolve plugin not found");
|
|
16
|
+
return plugin;
|
|
17
|
+
}
|
|
18
|
+
function createMockContext(envName, resolvedId) {
|
|
19
|
+
return {
|
|
20
|
+
resolve: vi.fn().mockResolvedValue(resolvedId ? {
|
|
21
|
+
id: resolvedId
|
|
22
|
+
} : null),
|
|
23
|
+
environment: {
|
|
24
|
+
name: envName
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
describe("platform-specific-resolve", function () {
|
|
29
|
+
describe(".server extension", function () {
|
|
30
|
+
it("ssr resolves .server files", async function () {
|
|
31
|
+
var plugin = await getPlatformResolvePlugin(),
|
|
32
|
+
resolveId = plugin.resolveId,
|
|
33
|
+
FSExtra = await import("fs-extra");
|
|
34
|
+
vi.spyOn(FSExtra.default, "pathExists").mockImplementation(async function (path) {
|
|
35
|
+
return String(path).includes(".server.");
|
|
36
|
+
});
|
|
37
|
+
var ctx = createMockContext("ssr", "/src/db.ts"),
|
|
38
|
+
result = await resolveId.call(ctx, "./db", "/src/app.tsx", {});
|
|
39
|
+
expect(result).toEqual({
|
|
40
|
+
id: "/src/db.server.ts"
|
|
41
|
+
}), vi.restoreAllMocks();
|
|
42
|
+
}), it("client does not resolve .server files", async function () {
|
|
43
|
+
var plugin = await getPlatformResolvePlugin(),
|
|
44
|
+
resolveId = plugin.resolveId,
|
|
45
|
+
FSExtra = await import("fs-extra");
|
|
46
|
+
vi.spyOn(FSExtra.default, "pathExists").mockImplementation(async function (path) {
|
|
47
|
+
return String(path).includes(".web.");
|
|
48
|
+
});
|
|
49
|
+
var ctx = createMockContext("client", "/src/db.ts"),
|
|
50
|
+
result = await resolveId.call(ctx, "./db", "/src/app.tsx", {});
|
|
51
|
+
expect(result).toEqual({
|
|
52
|
+
id: "/src/db.web.ts"
|
|
53
|
+
}), vi.restoreAllMocks();
|
|
54
|
+
}), it("errors when .server file is explicitly imported on client", async function () {
|
|
55
|
+
var plugin = await getPlatformResolvePlugin(),
|
|
56
|
+
resolveId = plugin.resolveId,
|
|
57
|
+
ctx = createMockContext("client", "/src/db.server.ts");
|
|
58
|
+
await expect(resolveId.call(ctx, "./db.server", "/src/page.tsx", {})).rejects.toThrow(".server file cannot be imported on client");
|
|
59
|
+
}), it("errors when .server file is explicitly imported on ios", async function () {
|
|
60
|
+
var plugin = await getPlatformResolvePlugin(),
|
|
61
|
+
resolveId = plugin.resolveId,
|
|
62
|
+
ctx = createMockContext("ios", "/src/db.server.ts");
|
|
63
|
+
await expect(resolveId.call(ctx, "./db.server", "/src/page.tsx", {})).rejects.toThrow(".server file cannot be imported on ios");
|
|
64
|
+
}), it("allows .server file import on ssr", async function () {
|
|
65
|
+
var plugin = await getPlatformResolvePlugin(),
|
|
66
|
+
resolveId = plugin.resolveId,
|
|
67
|
+
FSExtra = await import("fs-extra");
|
|
68
|
+
vi.spyOn(FSExtra.default, "pathExists").mockResolvedValue(!1);
|
|
69
|
+
var ctx = createMockContext("ssr", "/src/db.server.ts"),
|
|
70
|
+
result = await resolveId.call(ctx, "./db.server", "/src/page.tsx", {});
|
|
71
|
+
expect(result).toBeUndefined(), vi.restoreAllMocks();
|
|
72
|
+
});
|
|
73
|
+
}), describe("config extensions", function () {
|
|
74
|
+
it("ssr includes .server extensions", async function () {
|
|
75
|
+
var plugin = await getPlatformResolvePlugin(),
|
|
76
|
+
config = plugin.config(),
|
|
77
|
+
ssrExts = config.environments.ssr.resolve.extensions;
|
|
78
|
+
expect(ssrExts).toContain(".server.ts"), expect(ssrExts).toContain(".server.tsx"), expect(ssrExts).toContain(".web.ts");
|
|
79
|
+
}), it("client does not include .server extensions", async function () {
|
|
80
|
+
var plugin = await getPlatformResolvePlugin(),
|
|
81
|
+
config = plugin.config(),
|
|
82
|
+
clientExts = config.environments.client.resolve.extensions;
|
|
83
|
+
expect(clientExts).not.toContain(".server.ts"), expect(clientExts).not.toContain(".server.tsx");
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
//# sourceMappingURL=serverExtensions.test.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["describe","expect","it","vi","_type_of","obj","Symbol","constructor","getPlatformResolvePlugin","getBaseVitePlugins","plugins","plugin","find","p","name","Error","createMockContext","envName","resolvedId","resolve","fn","mockResolvedValue","id","environment","resolveId","FSExtra","spyOn","default","mockImplementation","path","String","includes","ctx","result","call","toEqual","restoreAllMocks","rejects","toThrow"],"sources":["../../src/plugins/serverExtensions.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAGzC,SAAAC,QAAeA,CAAAC,GAAA;EACb,uBAAQ;;EAGe,OACpBA,GACC,WAAaC,MAAA,MACb,IAAAD,GAAM,CAAAE,WACN,KAAUD,MACV,GAAE,QAAS,UAAAD,GAAA;AAAA;AAGf,eAAKG,wBAA4BA,CAAA;EAC/B;MAAAC;IAAgB,yDAA4C;IAAAC,OAAA,GAAAD,kBAAA;IAAAE,MAAA,GAAAD,OAAA,CAAAE,IAAA,WAAAC,CAAA;MAG9D,OAAO,QAAAA,CAAA,uBAAAT,QAAA,CAAAS,CAAA,mBAAAA,CAAA,uBAAAA,CAAA,IAAAA,CAAA,CAAAC,IAAA;IACT;EAEA,KAAAH,MAAS,YAAAA,MAAkB,MAAiB,cAAqB,GAAAP,QAAA,CAAAO,MAAA,oCAAAA,MAAA,GAC/D,MAAO,IAAAI,KAAA;EAAA,OACLJ,MAAS;AAAgE;AAC5C,SAC/BK,kBAAAC,OAAA,EAAAC,UAAA;EACF;IAEAC,OAAS,EAAAhB,EAAA,CAAAiB,EAAA,GAAAC,iBAA6B,CAAAH,UAAM;MAC1CI,EAAA,EAAAJ;IACE,IAAG;IAEDK,WAAM;MAGNT,IAAG,EAAAG;IAIH;EAGA;AAEmB;AAKnBjB,QAAA,4BADqB;EAIrBA,QAAG,oBAAc,EAAS;IAI1BE,EAAA,6BAAY,EAAkB,kBAAU;MAGxC,IAAAS,MAAO,GAAM,MAAEH,wBAAc;QAAkBgB,SAE5C,GAAAb,MAAA,CAAAa,SAAgB;QAAAC,OAAA;MACpBtB,EAED,CAAAuB,KAAG,CAAAD,OAAA,CAAAE,OAAA,gBAAAC,kBAAA,iBAA6DC,IAAY;QAE1E,OAAMC,MAAA,CAAAD,IADS,EAAAE,QAAM;MAKrB;MAAM,IACJC,GAAA,GAAAhB,iBAAoB,oBAAe;QAAAiB,MAAmB,SAAAT,SAAA,CAAAU,IAAA,CAAAF,GAAA;MACxD/B,MAAE,CAAAgC,MAAQ,EAAAE,OAAQ;QAGpBb,EAAA,EAAG;MAED,IAAAnB,EAAM,CAAAiC,eADS;IAKf,IAAAlC,EAAA,wCAAM;MAAA,IACJS,MAAA,GAAU,MAAKH,wBAAoB;QAAAgB,SAAmB,GAAAb,MAAA,CAAAa,SAAA;QAAAC,OAAA;MACxDtB,EAAE,CAAAuB,KAAA,CAAAD,OAAQ,CAAAE,OAAQ,gBAAAC,kBAAwC,iBAAAC,IAAA;QAG5D,OAAGC,MAAA,CAAAD,IAAA,EAAAE,QAAA;MAED;MAGA,IAAGC,GAAA,GAAMhB,iBAAiB,WAAY,YAAE;QAAAiB,MAAkB,GAAY,MAAAT,SAAA,CAAAU,IAAA,CAAAF,GAAA;MAEtE/B,MAAM,CAAAgC,MAAM,EAAAE,OAAA;QAGZb,EAAA;MAGD,IAAAnB,EAAA,CAAAiC,eAAA;IACF,EAED,EAAAlC,EAAA,4DAAoC;MAClC,IAAGS,MAAA,SAAAH,wBAAmC;QAAAgB,SAAY,GAAAb,MAAA,CAAAa,SAAA;QAAAQ,GAAA,GAAAhB,iBAAA;MAIhD,MAAMf,MAAA,CAAAuB,SAHS,CAAMU,IAAA,CAAAF,GAAA,iBAAyB,eAGvB,OAAAK,OAAiB,CAAAC,OAAQ;IAChD,IAAApC,EAAA,yDACgB,oBAAuB;MAExC,IAEDS,MAAG,SAAAH,wBAAA;QAAAgB,SAA8C,GAAAb,MAAY,CAAAa,SAAA;QAAAQ,GAAA,GAAAhB,iBAAA;MAI3D,MAAMf,MAAA,CAAAuB,SAHS,CAAAU,IAAM,CAAAF,GAAA,gCAGK,OAAAK,OAAa,CAAAC,OAAO,yCAAQ;IACtD,IAAApC,EAAA,oCAAiC,oBAC1B;MACR,IAAAS,MAAA,SAAAH,wBAAA;QAAAgB,SAAA,GAAAb,MAAA,CAAAa,SAAA;QAAAC,OAAA;MACFtB,EAAA,CAAAuB,KAAA,CAAAD,OAAA,CAAAE,OAAA,gBAAAN,iBAAA;MACF,IAAAW,GAAA,GAAAhB,iBAAA;QAAAiB,MAAA,SAAAT,SAAA,CAAAU,IAAA,CAAAF,GAAA","ignoreList":[]}
|
|
@@ -105,30 +105,23 @@ async function scanDepsToOptimize(packageJsonPath, options = rootOptions) {
|
|
|
105
105
|
const depPkgJsonExports = depPkgJson.exports || {}, definedExports = Object.keys(depPkgJsonExports).filter((k) => {
|
|
106
106
|
const expData = depPkgJsonExports[k], imp = typeof expData == "string" ? expData : expData?.import;
|
|
107
107
|
return !(typeof imp != "string" || !imp.endsWith(".js") || !k.match(/^(\.\/)?[a-zA-Z0-9-_]+$/));
|
|
108
|
-
}).map((k) => k.replace(/^\.\/?/, "")).map((k) => `${dep}/${k}`), specialExports =
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
"SimpleLineIcons",
|
|
126
|
-
"Zocial"
|
|
127
|
-
].map((n) => `${dep}/${n}`);
|
|
128
|
-
default:
|
|
129
|
-
return [];
|
|
130
|
-
}
|
|
131
|
-
})(), mainExport = depPkgJson.main || depPkgJson.module || definedExports["."], exports = [...definedExports, ...specialExports].filter(
|
|
108
|
+
}).map((k) => k.replace(/^\.\/?/, "")).map((k) => `${dep}/${k}`), specialExports = dep === "react-native-vector-icons" ? [
|
|
109
|
+
"AntDesign",
|
|
110
|
+
"Entypo",
|
|
111
|
+
"EvilIcons",
|
|
112
|
+
"Feather",
|
|
113
|
+
"FontAwesome",
|
|
114
|
+
"FontAwesome5",
|
|
115
|
+
"FontAwesome5Pro",
|
|
116
|
+
"Fontisto",
|
|
117
|
+
"Foundation",
|
|
118
|
+
"Ionicons",
|
|
119
|
+
"MaterialCommunityIcons",
|
|
120
|
+
"MaterialIcons",
|
|
121
|
+
"Octicons",
|
|
122
|
+
"SimpleLineIcons",
|
|
123
|
+
"Zocial"
|
|
124
|
+
].map((n) => `${dep}/${n}`) : [], mainExport = depPkgJson.main || depPkgJson.module || definedExports["."], exports = [...definedExports, ...specialExports].filter(
|
|
132
125
|
(d) => !EXCLUDE_LIST_SET.has(d)
|
|
133
126
|
);
|
|
134
127
|
return mainExport && await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport)) && exports.unshift(dep), exports;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/utils/scanDepsToOptimize.ts"],
|
|
4
|
-
"mappings": "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
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["path"]
|
|
6
6
|
}
|
|
@@ -71,14 +71,7 @@ async function scanDepsToOptimize(packageJsonPath, options = rootOptions) {
|
|
|
71
71
|
imp = typeof expData == "string" ? expData : expData?.import;
|
|
72
72
|
return !(typeof imp != "string" || !imp.endsWith(".js") || !k.match(/^(\.\/)?[a-zA-Z0-9-_]+$/));
|
|
73
73
|
}).map(k => k.replace(/^\.\/?/, "")).map(k => `${dep}/${k}`),
|
|
74
|
-
specialExports = (
|
|
75
|
-
switch (dep) {
|
|
76
|
-
case "react-native-vector-icons":
|
|
77
|
-
return ["AntDesign", "Entypo", "EvilIcons", "Feather", "FontAwesome", "FontAwesome5", "FontAwesome5Pro", "Fontisto", "Foundation", "Ionicons", "MaterialCommunityIcons", "MaterialIcons", "Octicons", "SimpleLineIcons", "Zocial"].map(n => `${dep}/${n}`);
|
|
78
|
-
default:
|
|
79
|
-
return [];
|
|
80
|
-
}
|
|
81
|
-
})(),
|
|
74
|
+
specialExports = dep === "react-native-vector-icons" ? ["AntDesign", "Entypo", "EvilIcons", "Feather", "FontAwesome", "FontAwesome5", "FontAwesome5Pro", "Fontisto", "Foundation", "Ionicons", "MaterialCommunityIcons", "MaterialIcons", "Octicons", "SimpleLineIcons", "Zocial"].map(n => `${dep}/${n}`) : [],
|
|
82
75
|
mainExport = depPkgJson.main || depPkgJson.module || definedExports["."],
|
|
83
76
|
exports = [...definedExports, ...specialExports].filter(d => !EXCLUDE_LIST_SET.has(d));
|
|
84
77
|
return mainExport && (await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport))) && exports.unshift(dep), exports;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createDebugger","FSExtra","path","dirname","extname","join","sep","debug","EXCLUDE_LIST","EXCLUDE_LIST_SET","Set","INCLUDE_LIST","INCLUDE_LIST_SET","rootOptions","scanDepsToOptimize","packageJsonPath","options","parentDepNames","proceededDeps","Map","pkgJsonContent","console","info","currentRoot","pkgJson","readPackageJsonSafe","deps","Object","keys","dependencies","hasReanimated","prebundleDeps","Promise","all","map","dep","includes","cachedResult","get","has","localPath","findDepPkgJsonPath","depPkgJsonPath","realpath","filter","depPkgJson","subDeps","shouldPreBundle","length","hasRequiredDep","startsWith","result","depPkgJsonExports","exports","definedExports","k","expData","imp","import","endsWith","match","replace","specialExports","n","mainExport","main","module","d","checkIfExportExists","unshift","JSON","stringify","set","flat","index","arr","indexOf","hasNativewind","nativewind","Boolean","pathIn","paths","path2","pathExists","readJson","e","error","dependent","root","possiblePkgJson","nextRoot","depName","peerDependencies","peerDependenciesMeta","optional"],"sources":["../../src/utils/scanDepsToOptimize.ts"],"sourcesContent":[null],"mappings":"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
|
|
1
|
+
{"version":3,"names":["createDebugger","FSExtra","path","dirname","extname","join","sep","debug","EXCLUDE_LIST","EXCLUDE_LIST_SET","Set","INCLUDE_LIST","INCLUDE_LIST_SET","rootOptions","scanDepsToOptimize","packageJsonPath","options","parentDepNames","proceededDeps","Map","pkgJsonContent","console","info","currentRoot","pkgJson","readPackageJsonSafe","deps","Object","keys","dependencies","hasReanimated","prebundleDeps","Promise","all","map","dep","includes","cachedResult","get","has","localPath","findDepPkgJsonPath","depPkgJsonPath","realpath","filter","depPkgJson","subDeps","shouldPreBundle","length","hasRequiredDep","startsWith","result","depPkgJsonExports","exports","definedExports","k","expData","imp","import","endsWith","match","replace","specialExports","n","mainExport","main","module","d","checkIfExportExists","unshift","JSON","stringify","set","flat","index","arr","indexOf","hasNativewind","nativewind","Boolean","pathIn","paths","path2","pathExists","readJson","e","error","dependent","root","possiblePkgJson","nextRoot","depName","peerDependencies","peerDependenciesMeta","optional"],"sources":["../../src/utils/scanDepsToOptimize.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -83,14 +83,9 @@ async function scanDepsToOptimize(packageJsonPath) {
|
|
|
83
83
|
return `${dep}/${k}`;
|
|
84
84
|
}),
|
|
85
85
|
specialExports = function () {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
return `${dep}/${n}`;
|
|
90
|
-
});
|
|
91
|
-
default:
|
|
92
|
-
return [];
|
|
93
|
-
}
|
|
86
|
+
return dep === "react-native-vector-icons" ? ["AntDesign", "Entypo", "EvilIcons", "Feather", "FontAwesome", "FontAwesome5", "FontAwesome5Pro", "Fontisto", "Foundation", "Ionicons", "MaterialCommunityIcons", "MaterialIcons", "Octicons", "SimpleLineIcons", "Zocial"].map(function (n) {
|
|
87
|
+
return `${dep}/${n}`;
|
|
88
|
+
}) : [];
|
|
94
89
|
}(),
|
|
95
90
|
mainExport = depPkgJson.main || depPkgJson.module || definedExports["."],
|
|
96
91
|
exports = [...definedExports, ...specialExports].filter(function (d) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createDebugger","FSExtra","path","dirname","extname","join","sep","debug","EXCLUDE_LIST","EXCLUDE_LIST_SET","Set","INCLUDE_LIST","INCLUDE_LIST_SET","rootOptions","scanDepsToOptimize","packageJsonPath","options","arguments","length","_pkgJson_dependencies","_pkgJson_dependencies1","parentDepNames","proceededDeps","Map","pkgJsonContent","console","info","currentRoot","pkgJson","readPackageJsonSafe","deps","Object","keys","dependencies","hasReanimated","prebundleDeps","Promise","all","map","dep","_depPkgJson_dependencies","includes","cachedResult","get","has","localPath","findDepPkgJsonPath","depPkgJsonPath","realpath","filter","depPkgJson","subDeps","shouldPreBundle","hasRequiredDep","startsWith","depsToPreBundle","depPkgJsonExports","exports","definedExports","k","expData","imp","import","endsWith","match","replace","specialExports","n","mainExport","main","module","d","checkIfExportExists","unshift","result","JSON","stringify","set","flat","index","arr","indexOf","hasNativewind","nativewind","Boolean","pathIn","paths","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","path2","value","pathExists","err"],"sources":["../../src/utils/scanDepsToOptimize.ts"],"sourcesContent":[null],"mappings":"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
|
|
1
|
+
{"version":3,"names":["createDebugger","FSExtra","path","dirname","extname","join","sep","debug","EXCLUDE_LIST","EXCLUDE_LIST_SET","Set","INCLUDE_LIST","INCLUDE_LIST_SET","rootOptions","scanDepsToOptimize","packageJsonPath","options","arguments","length","_pkgJson_dependencies","_pkgJson_dependencies1","parentDepNames","proceededDeps","Map","pkgJsonContent","console","info","currentRoot","pkgJson","readPackageJsonSafe","deps","Object","keys","dependencies","hasReanimated","prebundleDeps","Promise","all","map","dep","_depPkgJson_dependencies","includes","cachedResult","get","has","localPath","findDepPkgJsonPath","depPkgJsonPath","realpath","filter","depPkgJson","subDeps","shouldPreBundle","hasRequiredDep","startsWith","depsToPreBundle","depPkgJsonExports","exports","definedExports","k","expData","imp","import","endsWith","match","replace","specialExports","n","mainExport","main","module","d","checkIfExportExists","unshift","result","JSON","stringify","set","flat","index","arr","indexOf","hasNativewind","nativewind","Boolean","pathIn","paths","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","path2","value","pathExists","err"],"sources":["../../src/utils/scanDepsToOptimize.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vxrn",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.13",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -66,17 +66,17 @@
|
|
|
66
66
|
"@hono/node-server": "^1.19.6",
|
|
67
67
|
"@react-native/dev-middleware": "^0.83.0",
|
|
68
68
|
"@rollup/plugin-node-resolve": "^15.3.1",
|
|
69
|
-
"@vxrn/compiler": "1.4.
|
|
70
|
-
"@vxrn/debug": "1.4.
|
|
71
|
-
"@vxrn/query-string": "1.4.
|
|
72
|
-
"@vxrn/react-native-prebuilt": "1.4.
|
|
73
|
-
"@vxrn/resolve": "1.4.
|
|
74
|
-
"@vxrn/safe-area": "1.4.
|
|
75
|
-
"@vxrn/url-parse": "1.4.
|
|
76
|
-
"@vxrn/utils": "1.4.
|
|
77
|
-
"@vxrn/vendor": "1.4.
|
|
78
|
-
"@vxrn/vite-flow": "1.4.
|
|
79
|
-
"@vxrn/vite-plugin-metro": "1.4.
|
|
69
|
+
"@vxrn/compiler": "1.4.13",
|
|
70
|
+
"@vxrn/debug": "1.4.13",
|
|
71
|
+
"@vxrn/query-string": "1.4.13",
|
|
72
|
+
"@vxrn/react-native-prebuilt": "1.4.13",
|
|
73
|
+
"@vxrn/resolve": "1.4.13",
|
|
74
|
+
"@vxrn/safe-area": "1.4.13",
|
|
75
|
+
"@vxrn/url-parse": "1.4.13",
|
|
76
|
+
"@vxrn/utils": "1.4.13",
|
|
77
|
+
"@vxrn/vendor": "1.4.13",
|
|
78
|
+
"@vxrn/vite-flow": "1.4.13",
|
|
79
|
+
"@vxrn/vite-plugin-metro": "1.4.13",
|
|
80
80
|
"citty": "^0.1.6",
|
|
81
81
|
"dotenv": "^17.2.1",
|
|
82
82
|
"dotenv-expand": "^12.0.2",
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
"find-node-modules": "^2.1.3",
|
|
87
87
|
"fs-extra": "^11.2.0",
|
|
88
88
|
"get-port-please": "^3.1.2",
|
|
89
|
-
"hono": "^4.
|
|
89
|
+
"hono": "^4.11.8",
|
|
90
90
|
"lightningcss": "^1.30.1",
|
|
91
91
|
"perfect-debounce": "^1.0.0",
|
|
92
92
|
"picocolors": "^1.0.0",
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
"devDependencies": {
|
|
101
101
|
"@biomejs/biome": "2.3.3",
|
|
102
102
|
"@react-native-community/cli": "^20.0.2",
|
|
103
|
-
"@tamagui/build": "^
|
|
103
|
+
"@tamagui/build": "^2.0.0-rc.6",
|
|
104
104
|
"@types/find-node-modules": "^2.1.2",
|
|
105
105
|
"@types/node": "^24.10.0",
|
|
106
106
|
"@types/qrcode-terminal": "^0",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { PluginOption } from 'vite'
|
|
2
|
-
import { webExtensions } from '../constants'
|
|
2
|
+
import { ssrExtensions, webExtensions } from '../constants'
|
|
3
3
|
import FSExtra from 'fs-extra'
|
|
4
4
|
import { extname } from 'node:path'
|
|
5
5
|
import { createVXRNCompilerPlugin } from '@vxrn/compiler'
|
|
@@ -23,7 +23,7 @@ export function getBaseVitePlugins(): PluginOption[] {
|
|
|
23
23
|
environments: {
|
|
24
24
|
ssr: {
|
|
25
25
|
resolve: {
|
|
26
|
-
extensions:
|
|
26
|
+
extensions: ssrExtensions,
|
|
27
27
|
conditions: ['vxrn-web'],
|
|
28
28
|
externalConditions: ['vxrn-web'],
|
|
29
29
|
},
|
|
@@ -58,13 +58,20 @@ export function getBaseVitePlugins(): PluginOption[] {
|
|
|
58
58
|
return resolved
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
+
// error if .server. files are explicitly imported on client/native
|
|
62
|
+
if (this.environment.name !== 'ssr' && /\.server\.\w+$/.test(resolved.id)) {
|
|
63
|
+
throw new Error(
|
|
64
|
+
`[one] .server file cannot be imported on ${this.environment.name}: ${source} (imported by ${importer})`
|
|
65
|
+
)
|
|
66
|
+
}
|
|
67
|
+
|
|
61
68
|
// not in node_modules, vite doesn't apply extensions! we need to manually
|
|
62
69
|
const jsExtension = extname(resolved.id)
|
|
63
70
|
const withoutExt = resolved.id.replace(new RegExp(`\\${jsExtension}$`), '')
|
|
64
71
|
|
|
65
72
|
const extensionsByEnvironment = {
|
|
66
73
|
client: ['web'],
|
|
67
|
-
ssr: ['web'],
|
|
74
|
+
ssr: ['server', 'web'],
|
|
68
75
|
ios: ['ios', 'native'],
|
|
69
76
|
android: ['android', 'native'],
|
|
70
77
|
}
|
package/src/constants.ts
CHANGED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from 'vitest'
|
|
2
|
+
import type { PluginOption } from 'vite'
|
|
3
|
+
|
|
4
|
+
async function getPlatformResolvePlugin() {
|
|
5
|
+
const { getBaseVitePlugins } = await import('../config/getBaseVitePlugins')
|
|
6
|
+
const plugins = getBaseVitePlugins() as PluginOption[]
|
|
7
|
+
|
|
8
|
+
const plugin = plugins.find(
|
|
9
|
+
(p) =>
|
|
10
|
+
typeof p === 'object' &&
|
|
11
|
+
p !== null &&
|
|
12
|
+
'name' in p &&
|
|
13
|
+
p.name === 'platform-specific-resolve'
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
if (!plugin || typeof plugin !== 'object' || !('resolveId' in plugin)) {
|
|
17
|
+
throw new Error('platform-specific-resolve plugin not found')
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
return plugin
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function createMockContext(envName: string, resolvedId?: string) {
|
|
24
|
+
return {
|
|
25
|
+
resolve: vi.fn().mockResolvedValue(resolvedId ? { id: resolvedId } : null),
|
|
26
|
+
environment: { name: envName },
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
describe('platform-specific-resolve', () => {
|
|
31
|
+
describe('.server extension', () => {
|
|
32
|
+
it('ssr resolves .server files', async () => {
|
|
33
|
+
const plugin = await getPlatformResolvePlugin()
|
|
34
|
+
const resolveId = plugin.resolveId as Function
|
|
35
|
+
|
|
36
|
+
const FSExtra = await import('fs-extra')
|
|
37
|
+
vi.spyOn(FSExtra.default, 'pathExists').mockImplementation(async (path: any) => {
|
|
38
|
+
return String(path).includes('.server.')
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
const ctx = createMockContext('ssr', '/src/db.ts')
|
|
42
|
+
const result = await resolveId.call(ctx, './db', '/src/app.tsx', {})
|
|
43
|
+
|
|
44
|
+
expect(result).toEqual({ id: '/src/db.server.ts' })
|
|
45
|
+
|
|
46
|
+
vi.restoreAllMocks()
|
|
47
|
+
})
|
|
48
|
+
|
|
49
|
+
it('client does not resolve .server files', async () => {
|
|
50
|
+
const plugin = await getPlatformResolvePlugin()
|
|
51
|
+
const resolveId = plugin.resolveId as Function
|
|
52
|
+
|
|
53
|
+
const FSExtra = await import('fs-extra')
|
|
54
|
+
vi.spyOn(FSExtra.default, 'pathExists').mockImplementation(async (path: any) => {
|
|
55
|
+
return String(path).includes('.web.')
|
|
56
|
+
})
|
|
57
|
+
|
|
58
|
+
const ctx = createMockContext('client', '/src/db.ts')
|
|
59
|
+
const result = await resolveId.call(ctx, './db', '/src/app.tsx', {})
|
|
60
|
+
|
|
61
|
+
expect(result).toEqual({ id: '/src/db.web.ts' })
|
|
62
|
+
|
|
63
|
+
vi.restoreAllMocks()
|
|
64
|
+
})
|
|
65
|
+
|
|
66
|
+
it('errors when .server file is explicitly imported on client', async () => {
|
|
67
|
+
const plugin = await getPlatformResolvePlugin()
|
|
68
|
+
const resolveId = plugin.resolveId as Function
|
|
69
|
+
|
|
70
|
+
const ctx = createMockContext('client', '/src/db.server.ts')
|
|
71
|
+
|
|
72
|
+
await expect(
|
|
73
|
+
resolveId.call(ctx, './db.server', '/src/page.tsx', {})
|
|
74
|
+
).rejects.toThrow('.server file cannot be imported on client')
|
|
75
|
+
})
|
|
76
|
+
|
|
77
|
+
it('errors when .server file is explicitly imported on ios', async () => {
|
|
78
|
+
const plugin = await getPlatformResolvePlugin()
|
|
79
|
+
const resolveId = plugin.resolveId as Function
|
|
80
|
+
|
|
81
|
+
const ctx = createMockContext('ios', '/src/db.server.ts')
|
|
82
|
+
|
|
83
|
+
await expect(
|
|
84
|
+
resolveId.call(ctx, './db.server', '/src/page.tsx', {})
|
|
85
|
+
).rejects.toThrow('.server file cannot be imported on ios')
|
|
86
|
+
})
|
|
87
|
+
|
|
88
|
+
it('allows .server file import on ssr', async () => {
|
|
89
|
+
const plugin = await getPlatformResolvePlugin()
|
|
90
|
+
const resolveId = plugin.resolveId as Function
|
|
91
|
+
|
|
92
|
+
const FSExtra = await import('fs-extra')
|
|
93
|
+
vi.spyOn(FSExtra.default, 'pathExists').mockResolvedValue(false as any)
|
|
94
|
+
|
|
95
|
+
const ctx = createMockContext('ssr', '/src/db.server.ts')
|
|
96
|
+
// should not throw
|
|
97
|
+
const result = await resolveId.call(ctx, './db.server', '/src/page.tsx', {})
|
|
98
|
+
expect(result).toBeUndefined()
|
|
99
|
+
|
|
100
|
+
vi.restoreAllMocks()
|
|
101
|
+
})
|
|
102
|
+
})
|
|
103
|
+
|
|
104
|
+
describe('config extensions', () => {
|
|
105
|
+
it('ssr includes .server extensions', async () => {
|
|
106
|
+
const plugin = await getPlatformResolvePlugin()
|
|
107
|
+
const config = (plugin.config as Function)()
|
|
108
|
+
|
|
109
|
+
const ssrExts = config.environments.ssr.resolve.extensions
|
|
110
|
+
expect(ssrExts).toContain('.server.ts')
|
|
111
|
+
expect(ssrExts).toContain('.server.tsx')
|
|
112
|
+
expect(ssrExts).toContain('.web.ts')
|
|
113
|
+
})
|
|
114
|
+
|
|
115
|
+
it('client does not include .server extensions', async () => {
|
|
116
|
+
const plugin = await getPlatformResolvePlugin()
|
|
117
|
+
const config = (plugin.config as Function)()
|
|
118
|
+
|
|
119
|
+
const clientExts = config.environments.client.resolve.extensions
|
|
120
|
+
expect(clientExts).not.toContain('.server.ts')
|
|
121
|
+
expect(clientExts).not.toContain('.server.tsx')
|
|
122
|
+
})
|
|
123
|
+
})
|
|
124
|
+
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBaseVitePlugins.d.ts","sourceRoot":"","sources":["../../src/config/getBaseVitePlugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAQxC,wBAAgB,kBAAkB,IAAI,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"getBaseVitePlugins.d.ts","sourceRoot":"","sources":["../../src/config/getBaseVitePlugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAQxC,wBAAgB,kBAAkB,IAAI,YAAY,EAAE,CA2GnD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOptimizeDeps.d.ts","sourceRoot":"","sources":["../../src/config/getOptimizeDeps.ts"],"names":[],"mappings":"AAKA,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"getOptimizeDeps.d.ts","sourceRoot":"","sources":["../../src/config/getOptimizeDeps.ts"],"names":[],"mappings":"AAKA,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO;;;;;;;;;;;;;;;EAgJtD"}
|
package/types/constants.d.ts
CHANGED
package/types/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,OAAO,CAAA;AAWhC,eAAO,MAAM,aAAa,UAMzB,CAAA"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,OAAO,CAAA;AAWhC,eAAO,MAAM,aAAa,UAMzB,CAAA;AAED,eAAO,MAAM,aAAa,UAAkD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serverExtensions.test.d.ts","sourceRoot":"","sources":["../../src/plugins/serverExtensions.test.ts"],"names":[],"mappings":""}
|