one 1.21.3 → 1.21.6

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.
Files changed (85) hide show
  1. package/dist/cjs/cli/build.cjs +12 -2
  2. package/dist/cjs/cli/build.native.js +12 -2
  3. package/dist/cjs/cli/build.native.js.map +1 -1
  4. package/dist/cjs/cli/buildPage.cjs +6 -1
  5. package/dist/cjs/cli/buildPage.native.js +6 -1
  6. package/dist/cjs/cli/buildPage.native.js.map +1 -1
  7. package/dist/cjs/router/getRouteArtifactPath.cjs +52 -0
  8. package/dist/cjs/router/getRouteArtifactPath.native.js +57 -0
  9. package/dist/cjs/router/getRouteArtifactPath.native.js.map +1 -0
  10. package/dist/cjs/router/getRouteArtifactPath.test.cjs +91 -0
  11. package/dist/cjs/router/getRouteArtifactPath.test.native.js +106 -0
  12. package/dist/cjs/router/getRouteArtifactPath.test.native.js.map +1 -0
  13. package/dist/cjs/router/router.cjs +5 -3
  14. package/dist/cjs/router/router.native.js +1 -0
  15. package/dist/cjs/router/router.native.js.map +1 -1
  16. package/dist/cjs/utils/getPathnameFromFilePath.cjs +3 -14
  17. package/dist/cjs/utils/getPathnameFromFilePath.native.js +3 -14
  18. package/dist/cjs/utils/getPathnameFromFilePath.native.js.map +1 -1
  19. package/dist/cjs/vercel/build/buildVercelOutputDirectory.cjs +8 -1
  20. package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js +11 -1
  21. package/dist/cjs/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
  22. package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +10 -0
  23. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +12 -0
  24. package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  25. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.cjs +1 -0
  26. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js +3 -0
  27. package/dist/cjs/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
  28. package/dist/esm/cli/build.mjs +12 -2
  29. package/dist/esm/cli/build.mjs.map +1 -1
  30. package/dist/esm/cli/build.native.js +12 -2
  31. package/dist/esm/cli/build.native.js.map +1 -1
  32. package/dist/esm/cli/buildPage.mjs +6 -1
  33. package/dist/esm/cli/buildPage.mjs.map +1 -1
  34. package/dist/esm/cli/buildPage.native.js +6 -1
  35. package/dist/esm/cli/buildPage.native.js.map +1 -1
  36. package/dist/esm/getURL.native.test.mjs +1 -1
  37. package/dist/esm/router/getRouteArtifactPath.mjs +27 -0
  38. package/dist/esm/router/getRouteArtifactPath.mjs.map +1 -0
  39. package/dist/esm/router/getRouteArtifactPath.native.js +29 -0
  40. package/dist/esm/router/getRouteArtifactPath.native.js.map +1 -0
  41. package/dist/esm/router/getRouteArtifactPath.test.mjs +92 -0
  42. package/dist/esm/router/getRouteArtifactPath.test.mjs.map +1 -0
  43. package/dist/esm/router/getRouteArtifactPath.test.native.js +104 -0
  44. package/dist/esm/router/getRouteArtifactPath.test.native.js.map +1 -0
  45. package/dist/esm/router/hmrImport.native.test.mjs +1 -1
  46. package/dist/esm/router/routeHmr.native.test.mjs +1 -1
  47. package/dist/esm/router/routeHmr.native.test.mjs.map +1 -1
  48. package/dist/esm/router/router.mjs +5 -3
  49. package/dist/esm/router/router.mjs.map +1 -1
  50. package/dist/esm/utils/getPathnameFromFilePath.mjs +3 -3
  51. package/dist/esm/utils/getPathnameFromFilePath.mjs.map +1 -1
  52. package/dist/esm/utils/getPathnameFromFilePath.native.js +3 -3
  53. package/dist/esm/utils/getPathnameFromFilePath.native.js.map +1 -1
  54. package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs +8 -1
  55. package/dist/esm/vercel/build/buildVercelOutputDirectory.mjs.map +1 -1
  56. package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js +11 -1
  57. package/dist/esm/vercel/build/buildVercelOutputDirectory.native.js.map +1 -1
  58. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +10 -0
  59. package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
  60. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +12 -0
  61. package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
  62. package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs +1 -0
  63. package/dist/esm/vite/plugins/virtualEntryPlugin.test.mjs.map +1 -1
  64. package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js +3 -0
  65. package/dist/esm/vite/plugins/virtualEntryPlugin.test.native.js.map +1 -1
  66. package/package.json +14 -9
  67. package/src/cli/build.ts +16 -2
  68. package/src/cli/buildPage.ts +7 -1
  69. package/src/router/getRouteArtifactPath.test.ts +126 -0
  70. package/src/router/getRouteArtifactPath.ts +33 -0
  71. package/src/router/router.ts +5 -3
  72. package/src/utils/getPathnameFromFilePath.ts +3 -4
  73. package/src/vercel/build/buildVercelOutputDirectory.ts +8 -0
  74. package/src/vite/plugins/virtualEntryPlugin.test.ts +5 -0
  75. package/src/vite/plugins/virtualEntryPlugin.ts +14 -0
  76. package/types/cli/build.d.ts.map +1 -1
  77. package/types/cli/buildPage.d.ts.map +1 -1
  78. package/types/router/getRouteArtifactPath.d.ts +9 -0
  79. package/types/router/getRouteArtifactPath.d.ts.map +1 -0
  80. package/types/router/getRouteArtifactPath.test.d.ts +2 -0
  81. package/types/router/getRouteArtifactPath.test.d.ts.map +1 -0
  82. package/types/router/router.d.ts.map +1 -1
  83. package/types/utils/getPathnameFromFilePath.d.ts.map +1 -1
  84. package/types/vercel/build/buildVercelOutputDirectory.d.ts.map +1 -1
  85. package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
@@ -0,0 +1,104 @@
1
+ import { describe, expect, test } from "vitest";
2
+ import { getPreloadPath } from "../utils/cleanUrl.native.js";
3
+ import { getRouteArtifactPaths } from "./getRouteArtifactPath.native.js";
4
+ function routeNode(route, contextKey) {
5
+ var children = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [],
6
+ type = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : children.length ? "layout" : "spa";
7
+ return {
8
+ type,
9
+ loadRoute: function () {
10
+ return {};
11
+ },
12
+ children,
13
+ dynamic: null,
14
+ route,
15
+ contextKey
16
+ };
17
+ }
18
+ describe("getRouteArtifactPath", function () {
19
+ test("uses the emitted route pattern for a concrete dynamic href", function () {
20
+ var page = routeNode("[serverId]/[channelId]/index", "./(chat)/[serverId]/[channelId]/index+spa.tsx");
21
+ var chat = routeNode("(chat)", "./(chat)/_layout.tsx", [page]);
22
+ var root = routeNode("", "./_layout.tsx", [chat]);
23
+ var linking = {
24
+ config: {
25
+ screens: {}
26
+ },
27
+ getStateFromPath: function () {
28
+ return {
29
+ routes: [{
30
+ name: "(chat)",
31
+ state: {
32
+ routes: [{
33
+ name: "[serverId]/[channelId]/index"
34
+ }]
35
+ }
36
+ }]
37
+ };
38
+ }
39
+ };
40
+ var artifactPaths = getRouteArtifactPaths("/acme/general?message=message-1&thread=thread-1", linking, root);
41
+ expect(artifactPaths).toEqual({
42
+ loader: "/:serverId/:channelId/",
43
+ preload: "/:serverId/:channelId/"
44
+ });
45
+ expect(getPreloadPath(artifactPaths.preload)).toMatch(/\/assets\/=3aserverId_=3achannelId_\d+_preload\.js$/);
46
+ });
47
+ test("keeps the href when the router cannot resolve a route", function () {
48
+ var root = routeNode("", "./_layout.tsx");
49
+ var href = "/unknown?from=test";
50
+ expect(getRouteArtifactPaths(href, {
51
+ config: {
52
+ screens: {}
53
+ },
54
+ getStateFromPath: function () {
55
+ return void 0;
56
+ }
57
+ }, root)).toEqual({
58
+ loader: href,
59
+ preload: href
60
+ });
61
+ });
62
+ test("uses concrete artifacts for a route that inherits spa mode", function () {
63
+ var page = routeNode("default-mode/[slug]", "./default-mode/[slug].tsx", [], "spa");
64
+ var root = routeNode("", "./_layout.tsx", [page]);
65
+ expect(getRouteArtifactPaths("/default-mode/page-one", {
66
+ config: {
67
+ screens: {}
68
+ },
69
+ getStateFromPath: function () {
70
+ return {
71
+ routes: [{
72
+ name: "default-mode/[slug]"
73
+ }]
74
+ };
75
+ }
76
+ }, root)).toEqual({
77
+ loader: "/default-mode/page-one",
78
+ preload: "/default-mode/page-one"
79
+ });
80
+ });
81
+ test.each([["ssg", {
82
+ loader: "/blog/intro?from=test",
83
+ preload: "/blog/intro?from=test"
84
+ }], ["ssr", {
85
+ loader: "/blog/intro?from=test",
86
+ preload: "/blog/:slug"
87
+ }]])("keeps %s artifacts on their build-time paths", function (type, expected) {
88
+ var page = routeNode("blog/[slug]", "./blog/[slug].tsx", [], type);
89
+ var root = routeNode("", "./_layout.tsx", [page]);
90
+ expect(getRouteArtifactPaths("/blog/intro?from=test", {
91
+ config: {
92
+ screens: {}
93
+ },
94
+ getStateFromPath: function () {
95
+ return {
96
+ routes: [{
97
+ name: "blog/[slug]"
98
+ }]
99
+ };
100
+ }
101
+ }, root)).toEqual(expected);
102
+ });
103
+ });
104
+ //# sourceMappingURL=getRouteArtifactPath.test.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["describe","expect","test","getPreloadPath","getRouteArtifactPaths","routeNode","route","contextKey","children","arguments","length","type","loadRoute","dynamic","page","chat","root","linking","config","screens","getStateFromPath","routes","name","state","artifactPaths","toEqual","loader","preload","toMatch","href","each","expected"],"sources":["../../../src/router/getRouteArtifactPath.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,IAAA,QAAY;AACvC,SAASC,cAAA,QAAsB;AAC/B,SAASC,qBAAA,QAA6B;AAGtC,SAASC,UACPC,KAAA,EACAC,UAAA,EACA;EAGA,IAAAC,QAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;IAAAE,IAAA,GAAAF,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA,MAAAD,QAAA,CAAAE,MAAA;EAAA,OACL;IACAC,IAAA;IACAC,SAAA,WAAAA,CAAA;MACA,OAAS;IACT;IACAJ,QAAA;IACFK,OAAA;IACFP,KAAA;IAEAC;EACE;AACE;AAAaP,QACX;EAAAE,IACA;IACF,IAAAY,IAAA,GAAAT,SAAA;IACA,IAAAU,IAAM,GAAAV,SAAO,SAAU,wBAAU,GACjCS,IAAM,CACN;IAAgB,IACdE,IAAA,GAAQX,SAAE,CAAS,EAAC,EAAE,kBACtBU,IAAA,CAAyB;IACf,IAAAE,OACN;MAAAC,MACE;QAAMC,OACN;MAA4D;MAC9DC,gBACF,WAAAA,CAAA;QACF;UACFC,MAAA,GAEM;YACJC,IAAA;YACAC,KAAA;cACAF,MAAA,GACF;gBAEOC,IAAa,EAAE;cACZ;YAET;UACM;QAEP;MACD;IAED;IACE,IAAAE,aAAa,GAAApB,qBAAc,CAAe,mDAAAa,OAAA,EAAAD,IAAA;IAC1Cf,MAAM,CAAAuB,aAAO,EAAAC,OAAA;MAEbC,MAAA;MACEC,OAAA;IAAA;IACE1B,MACE,CAAAE,cAAU,CAAAqB,aAAe,CAAAG,OAAA,GAAAC,OAAkB,sDAAgB;EAAA;EAC7D1B,IACF;IACF,IAAEc,IAAA,GAAQX,SAAU,oBAAoB,CAAC;IAC1C,IAAAwB,IAAA;IAED5B,MAAK,CAAAG,qBAAA,CAAAyB,IAAA;MACHX,MAAM;QACJC,OAAA;MACA;MACAC,gBAAC,WAAAA,CAAA;QACD;MACF;IACA,GAAAJ,IAAM,GAAAS,OAAO;MAEbC,MAAA,EAAAG,IAAA;MACEF,OAAA,EAAAE;IAAA;EACE;EACA3B,IAAA,6DACwB;IAAA,IAAAY,IACtB,GAAAT,SAAA,sBAAyB;IAAA,IAAAW,IACvB,GAAAX,SAAW,KAAM,kBAAuBS,IAC1C;IACFb,MACA,CAAAG,qBAAA;MACFc,MAAA;QACAC,OAAQ;MACR;MACAC,gBAAS,WAAAA,CAAA;QACV;UACFC,MAAA,GAES;YACRC,IAAA;UACE;QAEE;MAAQ;IACC,GACXN,IAAA,GAAAS,OAAA;MACFC,MAAA;MACAC,OAAA;IAAA,EACE;EAAA;EACAzB,IAAA,CAAA4B,IACE,EAAQ,CAEV,OACF;IACUJ,MAAA;IACVC,OAAM,EAAO;EACb,EAEA,GACE,KACE;IACAD,MACE,yBAAsB;IAAAC,OACtB;EAA6D,EAC/D,CACA,gDACF,YAAAhB,IAAA,EAAAoB,QAAA;IACF,IAAEjB,IAAA,GAAQT,SAAQ,yCAAAM,IAAA;IACnB,IAAAK,IAAA,GAAAX,SAAA,uBACFS,IAAA,C","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import { afterEach, describe, expect, it, vi } from "vitest";
2
- import { hmrImport } from "./hmrImport.native";
2
+ import { hmrImport } from "./hmrImport.native.mjs";
3
3
  const realRuntime = globalThis.__rolldown_runtime__;
4
4
  afterEach(() => {
5
5
  ;
@@ -6,7 +6,7 @@ describe("routeHmr.native", () => {
6
6
  beforeEach(async () => {
7
7
  vi.stubEnv("NODE_ENV", "development");
8
8
  vi.resetModules();
9
- routeHmr = await import("./routeHmr.native");
9
+ routeHmr = await import("./routeHmr.native.mjs");
10
10
  });
11
11
  afterEach(() => {
12
12
  vi.unstubAllEnvs();
@@ -1 +1 @@
1
- {"version":3,"names":["afterEach","beforeEach","describe","expect","it","vi","routeHmr","realWindow","globalThis","window","realModuleUpdatedHook","__VXRN_ON_MODULE_UPDATED__","stubEnv","resetModules","unstubAllEnvs","toBe","before","getRouteHmrEpoch","listener","fn","unsubscribe","subscribeRouteHmr","toHaveBeenCalledTimes","clearFile","__oneRouteCache","toHaveBeenCalledWith","not","toThrow","Error","toHaveBeenCalledOnce"],"sources":["../../../src/router/routeHmr.native.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,UAAA,EAAYC,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAIhEH,QAAA,CAAS,mBAAmB,MAAM;EAChC,IAAII,QAAA;EACJ,MAAMC,UAAA,GAAcC,UAAA,CAAmBC,MAAA;EACvC,MAAMC,qBAAA,GAAwBF,UAAA,CAAWG,0BAAA;EAEzCV,UAAA,CAAW,YAAY;IAGrBI,EAAA,CAAGO,OAAA,CAAQ,YAAY,aAAa;IACpCP,EAAA,CAAGQ,YAAA,CAAa;IAChBP,QAAA,GAAW,MAAM,OAAO,mBAAmB;EAC7C,CAAC;EAEDN,SAAA,CAAU,MAAM;IACdK,EAAA,CAAGS,aAAA,CAAc;IACjBN,UAAA,CAAWG,0BAAA,GAA6BD,qBAAA;IACtCF,UAAA,CAAmBC,MAAA,GAASF,UAAA;EAChC,CAAC;EAEDH,EAAA,CAAG,kEAAkE,MAAM;IACzED,MAAA,CAAO,OAAOK,UAAA,CAAWG,0BAA0B,EAAEI,IAAA,CAAK,UAAU;EACtE,CAAC;EAEDX,EAAA,CAAG,yEAAyE,MAAM;IAChF,MAAMY,MAAA,GAASV,QAAA,CAASW,gBAAA,CAAiB;IACzC,MAAMC,QAAA,GAAWb,EAAA,CAAGc,EAAA,CAAG;IACvB,MAAMC,WAAA,GAAcd,QAAA,CAASe,iBAAA,CAAkBH,QAAQ;IAEvDV,UAAA,CAAWG,0BAAA,CAA4B,eAAe;IACtDR,MAAA,CAAOG,QAAA,CAASW,gBAAA,CAAiB,CAAC,EAAEF,IAAA,CAAKC,MAAA,GAAS,CAAC;IACnDb,MAAA,CAAOe,QAAQ,EAAEI,qBAAA,CAAsB,CAAC;IAExCF,WAAA,CAAY;IACZZ,UAAA,CAAWG,0BAAA,CAA4B,eAAe;IACtDR,MAAA,CAAOe,QAAQ,EAAEI,qBAAA,CAAsB,CAAC;EAC1C,CAAC;EAEDlB,EAAA,CAAG,sFAAsF,MAAM;IAC7F,MAAMmB,SAAA,GAAYlB,EAAA,CAAGc,EAAA,CAAG;IACtBX,UAAA,CAAmBC,MAAA,GAAS;MAAEe,eAAA,EAAiB;QAAED;MAAU;IAAE;IAC/Df,UAAA,CAAWG,0BAAA,CAA4B,iBAAiB;IACxDR,MAAA,CAAOoB,SAAS,EAAEE,oBAAA,CAAqB,iBAAiB;EAC1D,CAAC;EAEDrB,EAAA,CAAG,sDAAsD,MAAM;IAC7D;IAAEI,UAAA,CAAmBC,MAAA,GAAS;IAC9BN,MAAA,CAAO,MAAMK,UAAA,CAAWG,0BAAA,CAA4B,OAAO,CAAC,EAAEe,GAAA,CAAIC,OAAA,CAAQ;EAC5E,CAAC;EAEDvB,EAAA,CAAG,+DAA+D,MAAM;IACtE,MAAMc,QAAA,GAAWb,EAAA,CAAGc,EAAA,CAAG;IACvB,MAAMC,WAAA,GAAcd,QAAA,CAASe,iBAAA,CAAkBH,QAAQ;IACrDV,UAAA,CAAmBC,MAAA,GAAS;MAC5Be,eAAA,EAAiB;QACfD,UAAA,EAAY;UACV,MAAM,IAAIK,KAAA,CAAM,uBAAuB;QACzC;MACF;IACF;IAEAzB,MAAA,CAAO,MAAMK,UAAA,CAAWG,0BAAA,CAA4B,eAAe,CAAC,EAAEgB,OAAA,CACpE,uBACF;IACAxB,MAAA,CAAOe,QAAQ,EAAEW,oBAAA,CAAqB;IACtCT,WAAA,CAAY;EACd,CAAC;AACH,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["afterEach","beforeEach","describe","expect","it","vi","routeHmr","realWindow","globalThis","window","realModuleUpdatedHook","__VXRN_ON_MODULE_UPDATED__","stubEnv","resetModules","unstubAllEnvs","toBe","before","getRouteHmrEpoch","listener","fn","unsubscribe","subscribeRouteHmr","toHaveBeenCalledTimes","clearFile","__oneRouteCache","toHaveBeenCalledWith","not","toThrow","Error","toHaveBeenCalledOnce"],"sources":["../../../src/router/routeHmr.native.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,EAAWC,UAAA,EAAYC,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAIhEH,QAAA,CAAS,mBAAmB,MAAM;EAChC,IAAII,QAAA;EACJ,MAAMC,UAAA,GAAcC,UAAA,CAAmBC,MAAA;EACvC,MAAMC,qBAAA,GAAwBF,UAAA,CAAWG,0BAAA;EAEzCV,UAAA,CAAW,YAAY;IAGrBI,EAAA,CAAGO,OAAA,CAAQ,YAAY,aAAa;IACpCP,EAAA,CAAGQ,YAAA,CAAa;IAChBP,QAAA,GAAW,MAAM,OAAO,uBAAmB;EAC7C,CAAC;EAEDN,SAAA,CAAU,MAAM;IACdK,EAAA,CAAGS,aAAA,CAAc;IACjBN,UAAA,CAAWG,0BAAA,GAA6BD,qBAAA;IACtCF,UAAA,CAAmBC,MAAA,GAASF,UAAA;EAChC,CAAC;EAEDH,EAAA,CAAG,kEAAkE,MAAM;IACzED,MAAA,CAAO,OAAOK,UAAA,CAAWG,0BAA0B,EAAEI,IAAA,CAAK,UAAU;EACtE,CAAC;EAEDX,EAAA,CAAG,yEAAyE,MAAM;IAChF,MAAMY,MAAA,GAASV,QAAA,CAASW,gBAAA,CAAiB;IACzC,MAAMC,QAAA,GAAWb,EAAA,CAAGc,EAAA,CAAG;IACvB,MAAMC,WAAA,GAAcd,QAAA,CAASe,iBAAA,CAAkBH,QAAQ;IAEvDV,UAAA,CAAWG,0BAAA,CAA4B,eAAe;IACtDR,MAAA,CAAOG,QAAA,CAASW,gBAAA,CAAiB,CAAC,EAAEF,IAAA,CAAKC,MAAA,GAAS,CAAC;IACnDb,MAAA,CAAOe,QAAQ,EAAEI,qBAAA,CAAsB,CAAC;IAExCF,WAAA,CAAY;IACZZ,UAAA,CAAWG,0BAAA,CAA4B,eAAe;IACtDR,MAAA,CAAOe,QAAQ,EAAEI,qBAAA,CAAsB,CAAC;EAC1C,CAAC;EAEDlB,EAAA,CAAG,sFAAsF,MAAM;IAC7F,MAAMmB,SAAA,GAAYlB,EAAA,CAAGc,EAAA,CAAG;IACtBX,UAAA,CAAmBC,MAAA,GAAS;MAAEe,eAAA,EAAiB;QAAED;MAAU;IAAE;IAC/Df,UAAA,CAAWG,0BAAA,CAA4B,iBAAiB;IACxDR,MAAA,CAAOoB,SAAS,EAAEE,oBAAA,CAAqB,iBAAiB;EAC1D,CAAC;EAEDrB,EAAA,CAAG,sDAAsD,MAAM;IAC7D;IAAEI,UAAA,CAAmBC,MAAA,GAAS;IAC9BN,MAAA,CAAO,MAAMK,UAAA,CAAWG,0BAAA,CAA4B,OAAO,CAAC,EAAEe,GAAA,CAAIC,OAAA,CAAQ;EAC5E,CAAC;EAEDvB,EAAA,CAAG,+DAA+D,MAAM;IACtE,MAAMc,QAAA,GAAWb,EAAA,CAAGc,EAAA,CAAG;IACvB,MAAMC,WAAA,GAAcd,QAAA,CAASe,iBAAA,CAAkBH,QAAQ;IACrDV,UAAA,CAAmBC,MAAA,GAAS;MAC5Be,eAAA,EAAiB;QACfD,UAAA,EAAY;UACV,MAAM,IAAIK,KAAA,CAAM,uBAAuB;QACzC;MACF;IACF;IAEAzB,MAAA,CAAO,MAAMK,UAAA,CAAWG,0BAAA,CAA4B,eAAe,CAAC,EAAEgB,OAAA,CACpE,uBACF;IACAxB,MAAA,CAAOe,QAAQ,EAAEW,oBAAA,CAAqB;IACtCT,WAAA,CAAY;EACd,CAAC;AACH,CAAC","ignoreList":[]}
@@ -14,6 +14,7 @@ import { shouldLinkExternally } from "../utils/url.mjs";
14
14
  import { ParamValidationError, RouteValidationError, validateParams } from "../validateParams.mjs";
15
15
  import { extractParamsFromState, extractPathnameFromHref, extractSearchFromHref, findRouteNodeFromState } from "./findRouteNode.mjs";
16
16
  import { getRouteInfo } from "./getRouteInfo.mjs";
17
+ import { getRouteArtifactPaths } from "./getRouteArtifactPath.mjs";
17
18
  import { getRoutes } from "./getRoutes.mjs";
18
19
  import { setLastAction } from "./lastAction.mjs";
19
20
  import { getResolvedLinking, resetLinking, setupLinking } from "./linkingConfig.mjs";
@@ -434,9 +435,10 @@ async function doPreloadDev(href) {
434
435
  }
435
436
  async function doPreload(href) {
436
437
  if (globalThis["__vxrnHeadless"]) return null;
437
- const preloadPath = getPreloadPath(href);
438
- const loaderPath = getLoaderPath(href);
439
- const cssPreloadPath = getPreloadCSSPath(href);
438
+ const artifactPaths = getRouteArtifactPaths(href, getResolvedLinking(), routeNode);
439
+ const preloadPath = getPreloadPath(artifactPaths.preload);
440
+ const loaderPath = getLoaderPath(artifactPaths.loader);
441
+ const cssPreloadPath = getPreloadCSSPath(artifactPaths.preload);
440
442
  recordPreloadStart(href);
441
443
  try {
442
444
  const [_preload, cssPreloadModule, loader] = await Promise.all([dynamicImport(preloadPath)?.catch(err => {
@@ -1 +1 @@
1
- {"version":3,"names":["StackActions","Fragment","startTransition","useDeferredValue","useSyncExternalStore","Platform","devtoolsRegistry","resolveHref","openExternalURL","resolve","checkBlocker","assertIsReady","getLoaderPath","getPreloadCSSPath","getPreloadPath","dynamicImport","isVersionStale","shouldLinkExternally","ParamValidationError","RouteValidationError","validateParams","extractParamsFromState","extractPathnameFromHref","extractSearchFromHref","findRouteNodeFromState","getRouteInfo","getRoutes","setLastAction","getResolvedLinking","resetLinking","setupLinking","getSafeWindowPathname","getSafeWindowPathname2","normalizeRoutePathname","stripTrailingSlash","sortRoutes","getQualifiedRouteComponent","preloadRouteModules","getNavigateAction","setClientMatches","findInterceptRoute","setNavigationType","storeInterceptState","updateURLWithoutNavigation","setSlotState","clearNotFoundState","findNearestNotFoundRoute","setNotFoundState","routeNode","rootComponent","protectedRouteRegistry","Map","registerProtectedRoutes","contextKey","protectedScreens","size","delete","set","unregisterProtectedRoutes","isRouteProtected","href","normalizedHref","replace","normalizedContextKey","startsWith","routeName","slice","length","split","normalizedRouteName","has","hasAttemptedToHideSplash","initialState","rootState","initialPathname","lastIntendedPathname","nextState","routeInfo","splashScreenAnimationFrame","pendingNavigationPathname","pendingNavigationAction","navigationRef","rootStateSubscribers","Set","loadingStateSubscribers","storeSubscribers","currentMatches","validationState","status","validationStateSubscribers","subscribeToValidationState","subscriber","add","setValidationState","state","error","window","dispatchEvent","CustomEvent","detail","message","name","stack","lastValidatedHref","timestamp","Date","now","getValidationState","useValidationState","cachedRouteNode","cachedRootComponent","cachedContext","initialize","context","ref","initialLocation","linking","cleanUpState","ignoreEntryPoints","platform","OS","process","env","NODE_ENV","Error","ONE_DEBUG_ROUTER","formatRouteTree","node","indent","isLast","prefix","childIndent","dynamicBadge","dynamic","map","d","join","typeBadge","type","slotsBadge","slots","Array","from","keys","line","route","visibleChildren","children","filter","child","internal","i","childIsLast","console","info","slotName","slotConfig","defaultRoute","interceptRoutes","r","intercept","setupLinkingAndRouteInfo","subscribeToNavigationChanges","clear","pathname","unstable_globalHref","isIndex","params","segments","handleNavigationContainerStateChange","navState","key","hashes","hash","requestAnimationFrame","shouldKeepPendingNavigationState","nextOptions","linkOptions","shouldUpdateSubscribers","updateState","updateSnapshot","navigate","url","options","linkTo","push","dismiss","count","dispatch","pop","setParams","current","dismissAll","popToTop","goBack","canGoBack","isReady","canDismiss","routes","index","getSortedRoutes","sort","nextStateParam","nextRouteInfo","deepEqual","to","Object","__oneDevtools","getLoaderTimingHistory","getPreloadHistory","consumePendingNavigationAction","action","subscribeToRootState","notifyRootStateSubscribers","subscribeToStore","subscribeToLoadingState","setLoadingState","listener","currentSnapshot","getSnapshot","snapshot","rootStateSnapshot","routeInfoSnapshot","getBrowserPathname","currentState","shouldPreserveInitialRouteInfo","nextPathname","browserPathname","useOneRouter","syncStoreRootState","getRootState","useStoreRootState","useStoreRouteInfo","cleanup","cancelAnimationFrame","preloadingLoader","PRELOAD_MAP_MAX","setBoundedPreloadRecord","record","value","doPreloadDev","startTime","performance","normalizedPath","normalizeLoaderPath","globalThis","loaderJSUrl","moduleLoadStart","modulePromise","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","recordLoaderTiming","path","source","err","String","warn","doPreload","preloadPath","loaderPath","cssPreloadPath","recordPreloadStart","_preload","cssPreloadModule","Promise","all","recordPreloadError","hasCss","injectCSS","setBoundedCssInject","recordPreloadComplete","errorMessage","preloadedLoaderData","cssInjectFunctions","preloadHistory","MAX_PRELOAD_HISTORY","existing","find","p","unshift","hasLoader","dispatchPreloadEvent","entry","endTime","preloadRoute","then","data","inject","race","setTimeout","URL","buildClientMatches","matchingNode","loaderData","routeId","layoutMatches","m","includes","pageMatch","initClientMatches","matches","event","location","currentLayoutNode","currentPath","interceptResult","interceptRoute","layoutContextKey","params2","scopedSlotKey","activeRouteKey","activeRouteNode","isIntercepted","base","segment","isArray","Boolean","getStateFromPath","config","normalizedPreloadPath","preloadResult","redirectTarget","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","matchingRouteNode","loadRoute","loadedRoute","search","validateRoute","validationResult","valid","details","newMatches","currentRootState","indexOf","freshRootState","currentRouteBeforeDispatch","getCurrentRoute","targetPathname","optimisticState","resetRoot","targetName","payload","isGroupTarget","endsWith","hasFreshRootState","isRootTarget","target","currentFocusedRoute","currentFocusedName","targetRoute","targetRootName","existingTargetRoute","existingRoutes","nextRootState","warningTm","interval","setInterval","clearTimeout","a","b","keysA","keysB"],"sources":["router.mjs"],"sourcesContent":["import { StackActions } from \"@react-navigation/native\";\nimport { Fragment, startTransition, useDeferredValue, useSyncExternalStore } from \"react\";\nimport { Platform } from \"react-native-web\";\nimport { devtoolsRegistry } from \"../devtools/registry\";\nimport { resolveHref } from \"../link/href\";\nimport { openExternalURL } from \"../link/openExternalURL\";\nimport { resolve } from \"../link/path\";\nimport { checkBlocker } from \"../useBlocker\";\nimport { assertIsReady } from \"../utils/assertIsReady\";\nimport { getLoaderPath, getPreloadCSSPath, getPreloadPath } from \"../utils/cleanUrl\";\nimport { dynamicImport } from \"../utils/dynamicImport\";\nimport { isVersionStale } from \"../skewProtection\";\nimport { shouldLinkExternally } from \"../utils/url\";\nimport { ParamValidationError, RouteValidationError, validateParams } from \"../validateParams\";\nimport { extractParamsFromState, extractPathnameFromHref, extractSearchFromHref, findRouteNodeFromState } from \"./findRouteNode\";\nimport { getRouteInfo } from \"./getRouteInfo\";\nimport { getRoutes } from \"./getRoutes\";\nimport { setLastAction } from \"./lastAction\";\nimport { getResolvedLinking, resetLinking, setupLinking } from \"./linkingConfig\";\nimport { getSafeWindowPathname, getSafeWindowPathname as getSafeWindowPathname2, normalizeRoutePathname, stripTrailingSlash } from \"./path\";\nimport { sortRoutes } from \"./sortRoutes\";\nimport { getQualifiedRouteComponent } from \"./useScreens\";\nimport { preloadRouteModules } from \"./useViteRoutes\";\nimport { getNavigateAction } from \"./utils/getNavigateAction\";\nimport { setClientMatches } from \"../useMatches\";\nimport { findInterceptRoute, setNavigationType, storeInterceptState, updateURLWithoutNavigation } from \"./interceptRoutes\";\nimport { setSlotState } from \"../views/Navigator\";\nimport { clearNotFoundState, findNearestNotFoundRoute, setNotFoundState } from \"../notFoundState\";\n\nlet routeNode = null;\nlet rootComponent;\nconst protectedRouteRegistry = /* @__PURE__ */ new Map();\nfunction registerProtectedRoutes(contextKey, protectedScreens) {\n\tif (protectedScreens.size === 0) protectedRouteRegistry.delete(contextKey);\n\telse protectedRouteRegistry.set(contextKey, protectedScreens);\n}\nfunction unregisterProtectedRoutes(contextKey) {\n\tprotectedRouteRegistry.delete(contextKey);\n}\nfunction isRouteProtected(href) {\n\tconst normalizedHref = href.replace(/^\\/+|\\/+$/g, \"\");\n\tfor (const [contextKey, protectedScreens] of protectedRouteRegistry) {\n\t\tconst normalizedContextKey = contextKey.replace(/^\\/+|\\/+$/g, \"\");\n\t\tif (normalizedHref.startsWith(normalizedContextKey)) {\n\t\t\tconst routeName = normalizedHref.slice(normalizedContextKey.length).replace(/^\\//, \"\").split(\"/\")[0] || \"index\";\n\t\t\tconst normalizedRouteName = routeName.replace(/\\/index$/, \"\");\n\t\t\tif (protectedScreens.has(routeName) || protectedScreens.has(normalizedRouteName)) return true;\n\t\t}\n\t}\n\treturn false;\n}\nlet hasAttemptedToHideSplash = false;\nlet initialState;\nlet rootState;\nlet initialPathname;\nlet lastIntendedPathname;\nlet nextState;\nlet routeInfo;\nlet splashScreenAnimationFrame;\nlet pendingNavigationPathname;\nlet pendingNavigationAction;\nlet navigationRef = null;\nconst rootStateSubscribers = /* @__PURE__ */ new Set();\nconst loadingStateSubscribers = /* @__PURE__ */ new Set();\nconst storeSubscribers = /* @__PURE__ */ new Set();\nlet currentMatches = [];\nlet validationState = { status: \"idle\" };\nconst validationStateSubscribers = /* @__PURE__ */ new Set();\nfunction subscribeToValidationState(subscriber) {\n\tvalidationStateSubscribers.add(subscriber);\n\treturn () => validationStateSubscribers.delete(subscriber);\n}\nfunction setValidationState(state) {\n\tvalidationState = state;\n\tfor (const subscriber of validationStateSubscribers) subscriber(state);\n\tif (state.status === \"error\" && state.error) window.dispatchEvent(new CustomEvent(\"one-validation-error\", { detail: {\n\t\terror: {\n\t\t\tmessage: state.error.message,\n\t\t\tname: state.error.name,\n\t\t\tstack: state.error.stack\n\t\t},\n\t\thref: state.lastValidatedHref,\n\t\ttimestamp: Date.now()\n\t} }));\n}\nfunction getValidationState() {\n\treturn validationState;\n}\nfunction useValidationState() {\n\treturn useSyncExternalStore(subscribeToValidationState, getValidationState, getValidationState);\n}\nlet cachedRouteNode = null;\nlet cachedRootComponent = null;\nlet cachedContext = null;\nfunction initialize(context, ref, initialLocation, linking) {\n\tcleanUpState();\n\tif (context !== cachedContext || !cachedRouteNode) {\n\t\tcachedRouteNode = getRoutes(context, {\n\t\t\tignoreEntryPoints: true,\n\t\t\tplatform: Platform.OS\n\t\t});\n\t\tcachedRootComponent = cachedRouteNode ? getQualifiedRouteComponent(cachedRouteNode) : Fragment;\n\t\tcachedContext = context;\n\t}\n\trouteNode = cachedRouteNode;\n\trootComponent = cachedRootComponent || Fragment;\n\tif (!routeNode && process.env.NODE_ENV === \"production\") throw new Error(\"No routes found\");\n\tif (process.env.ONE_DEBUG_ROUTER && routeNode) {\n\t\tconst formatRouteTree = (node, indent = \"\", isLast = true) => {\n\t\t\tconst prefix = indent + (isLast ? \"└─ \" : \"├─ \");\n\t\t\tconst childIndent = indent + (isLast ? \" \" : \"│ \");\n\t\t\tconst dynamicBadge = node.dynamic ? ` [${node.dynamic.map((d) => d.name).join(\", \")}]` : \"\";\n\t\t\tconst typeBadge = node.type !== \"layout\" ? ` (${node.type})` : \"\";\n\t\t\tconst slotsBadge = node.slots?.size ? ` {@${Array.from(node.slots.keys()).join(\", @\")}}` : \"\";\n\t\t\tlet line = `${prefix}${node.route || \"/\"}${dynamicBadge}${typeBadge}${slotsBadge}`;\n\t\t\tconst visibleChildren = node.children.filter((child) => !child.internal);\n\t\t\tfor (let i = 0; i < visibleChildren.length; i++) {\n\t\t\t\tconst child = visibleChildren[i];\n\t\t\t\tconst childIsLast = i === visibleChildren.length - 1;\n\t\t\t\tline += \"\\n\" + formatRouteTree(child, childIndent, childIsLast);\n\t\t\t}\n\t\t\treturn line;\n\t\t};\n\t\tconsole.info(`[one] \\u{1F4CD} Route structure:\n${formatRouteTree(routeNode)}`);\n\t\tif (routeNode.slots?.size) {\n\t\t\tconsole.info(`[one] \\u{1F4E6} Slots on root layout:`);\n\t\t\tfor (const [slotName, slotConfig] of routeNode.slots) console.info(` @${slotName}:`, {\n\t\t\t\tdefaultRoute: slotConfig.defaultRoute?.route,\n\t\t\t\tinterceptRoutes: slotConfig.interceptRoutes.map((r) => ({\n\t\t\t\t\troute: r.route,\n\t\t\t\t\tintercept: r.intercept\n\t\t\t\t}))\n\t\t\t});\n\t\t}\n\t}\n\tnavigationRef = ref;\n\tsetupLinkingAndRouteInfo(initialLocation, linking);\n\tsubscribeToNavigationChanges();\n}\nfunction cleanUpState() {\n\tinitialState = void 0;\n\tinitialPathname = void 0;\n\tlastIntendedPathname = void 0;\n\trootState = void 0;\n\tnextState = void 0;\n\trouteInfo = void 0;\n\tpendingNavigationPathname = void 0;\n\tpendingNavigationAction = void 0;\n\tresetLinking();\n\trootStateSubscribers.clear();\n\tstoreSubscribers.clear();\n}\nfunction setupLinkingAndRouteInfo(initialLocation, linking) {\n\tinitialState = setupLinking(routeNode, initialLocation, linking);\n\tinitialPathname = initialLocation?.pathname ?? getSafeWindowPathname();\n\tif (initialState) {\n\t\trootState = initialState;\n\t\trouteInfo = getRouteInfo(initialState);\n\t} else routeInfo = {\n\t\tunstable_globalHref: \"\",\n\t\tpathname: \"\",\n\t\tisIndex: false,\n\t\tparams: {},\n\t\tsegments: []\n\t};\n}\nfunction handleNavigationContainerStateChange(navState) {\n\tif (!navState) return;\n\tlet state = { ...navState };\n\tif (state.key) {\n\t\tif (hashes[state.key]) {\n\t\t\tstate.hash = hashes[state.key];\n\t\t\tdelete hashes[state.key];\n\t\t}\n\t}\n\tif (!hasAttemptedToHideSplash) {\n\t\thasAttemptedToHideSplash = true;\n\t\tsplashScreenAnimationFrame = requestAnimationFrame(() => {});\n\t}\n\tif (shouldKeepPendingNavigationState(state)) return;\n\tif (nextOptions) {\n\t\tstate = {\n\t\t\t...state,\n\t\t\tlinkOptions: nextOptions\n\t\t};\n\t\tnextOptions = null;\n\t}\n\tlet shouldUpdateSubscribers = nextState === state;\n\tnextState = void 0;\n\tif (state && state !== rootState) {\n\t\tupdateState(state, void 0);\n\t\tshouldUpdateSubscribers = true;\n\t}\n\tif (shouldUpdateSubscribers) startTransition(() => {\n\t\tfor (const subscriber of rootStateSubscribers) subscriber(state);\n\t});\n}\nfunction subscribeToNavigationChanges() {\n\tstartTransition(() => {\n\t\tupdateSnapshot();\n\t\tfor (const subscriber of storeSubscribers) subscriber();\n\t});\n}\nfunction navigate(url, options) {\n\treturn linkTo(resolveHref(url), \"NAVIGATE\", options);\n}\nfunction push(url, options) {\n\treturn linkTo(resolveHref(url), \"PUSH\", options);\n}\nfunction dismiss(count) {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F519} dismiss${count ? ` (${count})` : \"\"}`);\n\tnavigationRef?.dispatch(StackActions.pop(count));\n}\nfunction replace(url, options) {\n\treturn linkTo(resolveHref(url), \"REPLACE\", options);\n}\nfunction setParams(params = {}) {\n\tassertIsReady(navigationRef);\n\treturn navigationRef?.current?.setParams(params);\n}\nfunction dismissAll() {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F519} dismissAll`);\n\tnavigationRef?.dispatch(StackActions.popToTop());\n}\nfunction goBack() {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F519} goBack`);\n\tassertIsReady(navigationRef);\n\tnavigationRef?.current?.goBack();\n}\nfunction canGoBack() {\n\tif (!navigationRef.isReady()) return false;\n\treturn navigationRef?.current?.canGoBack() ?? false;\n}\nfunction canDismiss() {\n\tlet state = rootState;\n\twhile (state) {\n\t\tif (state.type === \"stack\" && state.routes.length > 1) return true;\n\t\tif (state.index === void 0) return false;\n\t\tstate = state.routes?.[state.index]?.state;\n\t}\n\treturn false;\n}\nfunction getSortedRoutes() {\n\tif (!routeNode) throw new Error(\"No routes\");\n\treturn routeNode.children.filter((route) => !route.internal).sort(sortRoutes);\n}\nfunction updateState(state, nextStateParam = state) {\n\trootState = state;\n\tnextState = nextStateParam;\n\tconst nextRouteInfo = getRouteInfo(state);\n\tif (pendingNavigationPathname === nextRouteInfo.pathname) pendingNavigationPathname = void 0;\n\tif (!deepEqual(routeInfo, nextRouteInfo)) {\n\t\tif (process.env.ONE_DEBUG_ROUTER) {\n\t\t\tconst from = routeInfo?.pathname || \"(initial)\";\n\t\t\tconst to = nextRouteInfo.pathname;\n\t\t\tconst params = Object.keys(nextRouteInfo.params || {}).length ? nextRouteInfo.params : void 0;\n\t\t\tconsole.info(`[one] \\u{1F9ED} ${from} \\u2192 ${to}`, params ? { params } : \"\");\n\t\t}\n\t\trouteInfo = nextRouteInfo;\n\t}\n\tif (process.env.NODE_ENV === \"development\" && typeof window !== \"undefined\") {\n\t\twindow.__oneDevtools = {\n\t\t\trouteInfo: nextRouteInfo,\n\t\t\trootState: state,\n\t\t\trouteNode,\n\t\t\tgetRoutes: () => routeNode?.children || [],\n\t\t\tgetLoaderTimingHistory: () => devtoolsRegistry.getLoaderTimingHistory?.() ?? [],\n\t\t\tgetPreloadHistory\n\t\t};\n\t\twindow.dispatchEvent(new CustomEvent(\"one-route-change\", { detail: nextRouteInfo }));\n\t}\n}\nfunction consumePendingNavigationAction() {\n\tconst action = pendingNavigationAction;\n\tpendingNavigationAction = void 0;\n\treturn action;\n}\nfunction subscribeToRootState(subscriber) {\n\trootStateSubscribers.add(subscriber);\n\treturn () => {\n\t\trootStateSubscribers.delete(subscriber);\n\t};\n}\nfunction notifyRootStateSubscribers(state) {\n\tfor (const subscriber of rootStateSubscribers) subscriber(state);\n}\nfunction subscribeToStore(subscriber) {\n\tstoreSubscribers.add(subscriber);\n\treturn () => {\n\t\tstoreSubscribers.delete(subscriber);\n\t};\n}\nfunction subscribeToLoadingState(subscriber) {\n\tloadingStateSubscribers.add(subscriber);\n\treturn () => {\n\t\tloadingStateSubscribers.delete(subscriber);\n\t};\n}\nfunction setLoadingState(state) {\n\tstartTransition(() => {\n\t\tfor (const listener of loadingStateSubscribers) listener(state);\n\t});\n}\nlet currentSnapshot = null;\nfunction updateSnapshot() {\n\tcurrentSnapshot = getSnapshot();\n}\nfunction snapshot() {\n\treturn currentSnapshot;\n}\nfunction getSnapshot() {\n\treturn {\n\t\tlinkTo,\n\t\trouteNode,\n\t\trootComponent,\n\t\tlinking: getResolvedLinking(),\n\t\thasAttemptedToHideSplash,\n\t\tinitialState,\n\t\trootState,\n\t\tnextState,\n\t\trouteInfo,\n\t\tsplashScreenAnimationFrame,\n\t\tnavigationRef,\n\t\trootStateSubscribers,\n\t\tstoreSubscribers\n\t};\n}\nfunction rootStateSnapshot() {\n\treturn rootState;\n}\nfunction routeInfoSnapshot() {\n\treturn routeInfo;\n}\nfunction getBrowserPathname() {\n\tconst pathname = getSafeWindowPathname();\n\treturn pathname === void 0 ? void 0 : normalizeRoutePathname(pathname);\n}\nfunction shouldKeepPendingNavigationState(currentState) {\n\tif (!pendingNavigationPathname) return false;\n\treturn getRouteInfo(currentState).pathname !== pendingNavigationPathname;\n}\nfunction shouldPreserveInitialRouteInfo(currentState) {\n\tif (!initialState || !routeInfo?.pathname) return false;\n\tconst nextPathname = getRouteInfo(currentState).pathname;\n\tif (nextPathname === routeInfo.pathname) return false;\n\tif (nextPathname && nextPathname === pendingNavigationPathname) return false;\n\tconst browserPathname = getBrowserPathname();\n\tif (nextPathname && browserPathname && nextPathname === browserPathname) return false;\n\treturn true;\n}\nfunction useOneRouter() {\n\treturn useDeferredValue(useSyncExternalStore(subscribeToStore, snapshot, snapshot));\n}\nfunction syncStoreRootState() {\n\tif (!navigationRef) throw new Error(`No navigationRef, possible duplicate One dep`);\n\tif (navigationRef.isReady()) {\n\t\tconst currentState = navigationRef.getRootState();\n\t\tif (rootState !== currentState) {\n\t\t\tif (shouldKeepPendingNavigationState(currentState)) return;\n\t\t\tif (shouldPreserveInitialRouteInfo(currentState)) return;\n\t\t\tupdateState(currentState);\n\t\t}\n\t}\n}\nfunction useStoreRootState() {\n\tsyncStoreRootState();\n\treturn useDeferredValue(useSyncExternalStore(subscribeToRootState, rootStateSnapshot, rootStateSnapshot));\n}\nfunction useStoreRouteInfo() {\n\tsyncStoreRootState();\n\treturn useSyncExternalStore(subscribeToRootState, routeInfoSnapshot, routeInfoSnapshot);\n}\nfunction cleanup() {\n\tif (splashScreenAnimationFrame) cancelAnimationFrame(splashScreenAnimationFrame);\n}\nconst preloadingLoader = {};\nconst PRELOAD_MAP_MAX = 200;\nfunction setBoundedPreloadRecord(record, key, value) {\n\tif (!(key in record)) {\n\t\tconst keys = Object.keys(record);\n\t\tif (keys.length >= PRELOAD_MAP_MAX) delete record[keys[0]];\n\t}\n\trecord[key] = value;\n}\nasync function doPreloadDev(href) {\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tconst startTime = performance.now();\n\t\tconst normalizedPath = normalizeLoaderPath(href);\n\t\tif (globalThis[\"__vxrnHeadless\"]) return null;\n\t\ttry {\n\t\t\tconst loaderJSUrl = getLoaderPath(href, true);\n\t\t\tconst moduleLoadStart = performance.now();\n\t\t\tconst modulePromise = dynamicImport(loaderJSUrl);\n\t\t\tif (!modulePromise) return null;\n\t\t\tconst module = await modulePromise.catch(() => null);\n\t\t\tconst moduleLoadTime = performance.now() - moduleLoadStart;\n\t\t\tif (!module?.loader) return null;\n\t\t\tconst executionStart = performance.now();\n\t\t\tconst result = await module.loader();\n\t\t\tconst executionTime = performance.now() - executionStart;\n\t\t\tconst totalTime = performance.now() - startTime;\n\t\t\tif (result?.__oneRedirect) return result;\n\t\t\tdevtoolsRegistry.recordLoaderTiming?.({\n\t\t\t\tpath: normalizedPath,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"preload\"\n\t\t\t});\n\t\t\treturn result ?? null;\n\t\t} catch (err) {\n\t\t\tconst totalTime = performance.now() - startTime;\n\t\t\tdevtoolsRegistry.recordLoaderTiming?.({\n\t\t\t\tpath: normalizedPath,\n\t\t\t\tstartTime,\n\t\t\t\ttotalTime,\n\t\t\t\terror: err instanceof Error ? err.message : String(err),\n\t\t\t\tsource: \"preload\"\n\t\t\t});\n\t\t\tif (process.env.ONE_DEBUG_ROUTER) console.warn(`[one] dev preload failed for ${href}:`, err);\n\t\t\treturn null;\n\t\t}\n\t}\n}\nasync function doPreload(href) {\n\tif (globalThis[\"__vxrnHeadless\"]) return null;\n\tconst preloadPath = getPreloadPath(href);\n\tconst loaderPath = getLoaderPath(href);\n\tconst cssPreloadPath = getPreloadCSSPath(href);\n\trecordPreloadStart(href);\n\ttry {\n\t\tconst [_preload, cssPreloadModule, loader] = await Promise.all([\n\t\t\tdynamicImport(preloadPath)?.catch((err) => {\n\t\t\t\trecordPreloadError(href, err instanceof Error ? err.message : String(err));\n\t\t\t\treturn null;\n\t\t\t}),\n\t\t\tdynamicImport(cssPreloadPath)?.catch(() => null) ?? Promise.resolve(null),\n\t\t\tdynamicImport(loaderPath)?.catch(() => null) ?? Promise.resolve(null),\n\t\t\tpreloadRouteModules(href)\n\t\t]);\n\t\tconst hasCss = !!cssPreloadModule?.injectCSS;\n\t\tif (hasCss) setBoundedCssInject(href, cssPreloadModule.injectCSS);\n\t\tif (!!!loader?.loader) {\n\t\t\trecordPreloadComplete(href, false, hasCss);\n\t\t\treturn null;\n\t\t}\n\t\tconst result = await loader.loader();\n\t\tif (result?.__oneRedirect) return result;\n\t\trecordPreloadComplete(href, true, hasCss);\n\t\treturn result ?? null;\n\t} catch (err) {\n\t\tconst errorMessage = err instanceof Error ? err.message : String(err);\n\t\tconsole.error(`[one] preload error for ${href}:`, err);\n\t\trecordPreloadError(href, errorMessage);\n\t\treturn null;\n\t}\n}\nconst preloadedLoaderData = {};\nconst cssInjectFunctions = {};\nfunction setBoundedCssInject(key, value) {\n\tif (!(key in cssInjectFunctions)) {\n\t\tconst keys = Object.keys(cssInjectFunctions);\n\t\tif (keys.length >= PRELOAD_MAP_MAX) delete cssInjectFunctions[keys[0]];\n\t}\n\tcssInjectFunctions[key] = value;\n}\nconst preloadHistory = [];\nconst MAX_PRELOAD_HISTORY = 30;\nfunction recordPreloadStart(href) {\n\tif (process.env.NODE_ENV !== \"development\") return;\n\tconst existing = preloadHistory.find((p) => p.href === href);\n\tif (existing) {\n\t\texisting.status = \"loading\";\n\t\texisting.startTime = performance.now();\n\t\treturn;\n\t}\n\tpreloadHistory.unshift({\n\t\thref,\n\t\tstatus: \"loading\",\n\t\tstartTime: performance.now(),\n\t\thasLoader: false,\n\t\thasCss: false\n\t});\n\tif (preloadHistory.length > MAX_PRELOAD_HISTORY) preloadHistory.pop();\n\tdispatchPreloadEvent();\n}\nfunction recordPreloadComplete(href, hasLoader, hasCss) {\n\tif (process.env.NODE_ENV !== \"development\") return;\n\tconst entry = preloadHistory.find((p) => p.href === href);\n\tif (entry) {\n\t\tentry.status = \"loaded\";\n\t\tentry.endTime = performance.now();\n\t\tentry.hasLoader = hasLoader;\n\t\tentry.hasCss = hasCss;\n\t}\n\tdispatchPreloadEvent();\n}\nfunction recordPreloadError(href, error) {\n\tif (process.env.NODE_ENV !== \"development\") return;\n\tconst entry = preloadHistory.find((p) => p.href === href);\n\tif (entry) {\n\t\tentry.status = \"error\";\n\t\tentry.endTime = performance.now();\n\t\tentry.error = error;\n\t}\n\tdispatchPreloadEvent();\n}\nfunction dispatchPreloadEvent() {\n\twindow.dispatchEvent(new CustomEvent(\"one-preload-update\"));\n}\nfunction getPreloadHistory() {\n\treturn preloadHistory;\n}\nfunction preloadRoute(href, injectCSS = false) {\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tconst normalizedHref = normalizeLoaderPath(href);\n\t\tif (!preloadingLoader[normalizedHref]) setBoundedPreloadRecord(preloadingLoader, normalizedHref, doPreloadDev(href).then((data) => {\n\t\t\tsetBoundedPreloadRecord(preloadedLoaderData, normalizedHref, data);\n\t\t\treturn data;\n\t\t}));\n\t\treturn preloadingLoader[normalizedHref];\n\t}\n\tif (!preloadingLoader[href]) setBoundedPreloadRecord(preloadingLoader, href, doPreload(href).then((data) => {\n\t\tsetBoundedPreloadRecord(preloadedLoaderData, href, data);\n\t\treturn data;\n\t}));\n\tif (injectCSS) return preloadingLoader[href]?.then(async (data) => {\n\t\tconst inject = cssInjectFunctions[href];\n\t\tif (inject) await Promise.race([inject(), new Promise((r) => setTimeout(r, 800))]);\n\t\treturn data;\n\t});\n\treturn preloadingLoader[href];\n}\nfunction normalizeLoaderPath(href) {\n\treturn new URL(href, \"http://example.com\").pathname.replace(/\\/index$/, \"\").replace(/\\/$/, \"\") || \"/\";\n}\nfunction buildClientMatches(href, matchingNode, params, loaderData) {\n\tconst pathname = extractPathnameFromHref(href);\n\tconst routeId = matchingNode?.contextKey || pathname;\n\tconst layoutMatches = currentMatches.filter((m) => m.routeId.includes(\"_layout\"));\n\tconst pageMatch = {\n\t\trouteId,\n\t\tpathname,\n\t\tparams,\n\t\tloaderData\n\t};\n\treturn [...layoutMatches, pageMatch];\n}\nfunction initClientMatches(matches) {\n\tcurrentMatches = matches;\n\tsetClientMatches(matches);\n}\nasync function linkTo(href, event, options) {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F517} ${event || \"NAVIGATE\"} ${href}`);\n\tsetNavigationType(\"soft\");\n\tclearNotFoundState();\n\tif (href[0] === \"#\") return;\n\tif (shouldLinkExternally(href)) {\n\t\topenExternalURL(href);\n\t\treturn;\n\t}\n\tif (isVersionStale()) {\n\t\twindow.location.href = href;\n\t\treturn;\n\t}\n\tif (checkBlocker(href, event === \"REPLACE\" ? \"replace\" : \"push\")) return;\n\tif (isRouteProtected(href)) return;\n\tconst currentLayoutNode = routeNode;\n\tconst currentPath = routeInfo?.pathname || \"/\";\n\tconst interceptResult = findInterceptRoute(href, currentLayoutNode, currentPath);\n\tif (interceptResult) {\n\t\tconst { interceptRoute, slotName, layoutContextKey, params: params2 } = interceptResult;\n\t\tconst scopedSlotKey = `${layoutContextKey}:${slotName}`;\n\t\tstoreInterceptState(scopedSlotKey, interceptRoute, params2);\n\t\tupdateURLWithoutNavigation(href);\n\t\tsetSlotState(scopedSlotKey, {\n\t\t\tactiveRouteKey: interceptRoute.contextKey,\n\t\t\tactiveRouteNode: interceptRoute,\n\t\t\tparams: params2,\n\t\t\tisIntercepted: true\n\t\t});\n\t\treturn;\n\t}\n\tassertIsReady(navigationRef);\n\tconst current = navigationRef.current;\n\tif (current == null) throw new Error(\"Couldn't find a navigation object. Is your component inside NavigationContainer?\");\n\tconst linking = getResolvedLinking();\n\tif (!linking) throw new Error(\"Attempted to link to route when no routes are present\");\n\tsetLastAction();\n\tif (href === \"..\" || href === \"../\") {\n\t\tcurrent.goBack();\n\t\treturn;\n\t}\n\tif (href.startsWith(\".\")) {\n\t\tlet base = routeInfo?.segments?.map((segment) => {\n\t\t\tif (!segment.startsWith(\"[\")) return segment;\n\t\t\tif (segment.startsWith(\"[...\")) {\n\t\t\t\tsegment = segment.slice(4, -1);\n\t\t\t\tconst params2 = routeInfo?.params?.[segment];\n\t\t\t\tif (Array.isArray(params2)) return params2.join(\"/\");\n\t\t\t\treturn params2?.split(\",\")?.join(\"/\") ?? \"\";\n\t\t\t}\n\t\t\tsegment = segment.slice(1, -1);\n\t\t\treturn routeInfo?.params?.[segment];\n\t\t}).filter(Boolean).join(\"/\") ?? \"/\";\n\t\tif (!routeInfo?.isIndex) base += \"/..\";\n\t\thref = resolve(base, href);\n\t}\n\tconst state = linking.getStateFromPath(href, linking.config);\n\tif (!state || state.routes.length === 0) {\n\t\tconsole.error(\"Could not generate a valid navigation state for the given path: \" + href);\n\t\tconsole.error(`linking.config`, linking.config);\n\t\tconsole.error(`routes`, getSortedRoutes());\n\t\treturn;\n\t}\n\tsetLoadingState(\"loading\");\n\tconst normalizedPreloadPath = normalizeLoaderPath(href);\n\tif (!(normalizedPreloadPath in preloadedLoaderData) && !(href in preloadedLoaderData)) await preloadRoute(href, true);\n\telse if (process.env.NODE_ENV !== \"development\") {\n\t\tconst inject = cssInjectFunctions[href];\n\t\tif (inject) inject().catch(() => {});\n\t}\n\tconst preloadResult = preloadedLoaderData[normalizedPreloadPath];\n\tif (preloadResult?.__oneRedirect) {\n\t\tconst redirectTarget = preloadResult.__oneRedirect;\n\t\tdelete preloadedLoaderData[normalizedPreloadPath];\n\t\tdelete preloadingLoader[normalizedPreloadPath];\n\t\tdelete preloadedLoaderData[href];\n\t\tdelete preloadingLoader[href];\n\t\tsetLoadingState(\"loaded\");\n\t\tlinkTo(redirectTarget, \"REPLACE\");\n\t\treturn;\n\t}\n\tif (preloadResult?.__oneError === 404) {\n\t\tdelete preloadedLoaderData[normalizedPreloadPath];\n\t\tdelete preloadingLoader[normalizedPreloadPath];\n\t\tdelete preloadedLoaderData[href];\n\t\tdelete preloadingLoader[href];\n\t\tsetLoadingState(\"loaded\");\n\t\tconst notFoundRoute = findNearestNotFoundRoute(href, routeNode);\n\t\tsetNotFoundState({\n\t\t\tnotFoundPath: preloadResult.__oneNotFoundPath || \"/+not-found\",\n\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\toriginalPath: href\n\t\t});\n\t\treturn;\n\t}\n\tconst matchingRouteNode = findRouteNodeFromState(state, routeNode);\n\tif (matchingRouteNode?.loadRoute) {\n\t\tsetValidationState({\n\t\t\tstatus: \"validating\",\n\t\t\tlastValidatedHref: href\n\t\t});\n\t\ttry {\n\t\t\tconst loadedRoute = matchingRouteNode.loadRoute();\n\t\t\tconst params2 = extractParamsFromState(state);\n\t\t\tconst search = extractSearchFromHref(href);\n\t\t\tconst pathname = extractPathnameFromHref(href);\n\t\t\tif (loadedRoute.validateParams) validateParams(loadedRoute.validateParams, params2);\n\t\t\tif (loadedRoute.validateRoute) {\n\t\t\t\tconst validationResult = await loadedRoute.validateRoute({\n\t\t\t\t\tparams: params2,\n\t\t\t\t\tsearch,\n\t\t\t\t\tpathname,\n\t\t\t\t\thref\n\t\t\t\t});\n\t\t\t\tif (validationResult && !validationResult.valid) {\n\t\t\t\t\tconst error = new RouteValidationError(validationResult.error || \"Route validation failed\", validationResult.details);\n\t\t\t\t\tsetValidationState({\n\t\t\t\t\t\tstatus: \"error\",\n\t\t\t\t\t\terror,\n\t\t\t\t\t\tlastValidatedHref: href\n\t\t\t\t\t});\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t}\n\t\t\tsetValidationState({\n\t\t\t\tstatus: \"valid\",\n\t\t\t\tlastValidatedHref: href\n\t\t\t});\n\t\t} catch (error) {\n\t\t\tif (error && typeof error.then === \"function\") {\n\t\t\t\tawait error.catch(() => {});\n\t\t\t\tsetValidationState({\n\t\t\t\t\tstatus: \"valid\",\n\t\t\t\t\tlastValidatedHref: href\n\t\t\t\t});\n\t\t\t} else if (error instanceof ParamValidationError || error instanceof RouteValidationError) {\n\t\t\t\tsetValidationState({\n\t\t\t\t\tstatus: \"error\",\n\t\t\t\t\terror,\n\t\t\t\t\tlastValidatedHref: href\n\t\t\t\t});\n\t\t\t\tthrow error;\n\t\t\t} else throw error;\n\t\t}\n\t}\n\tconst loaderData = preloadedLoaderData[normalizeLoaderPath(href)];\n\tconst params = extractParamsFromState(state);\n\tconst newMatches = buildClientMatches(href, matchingRouteNode, params, loaderData);\n\tcurrentMatches = newMatches;\n\tsetClientMatches(newMatches);\n\tconst currentRootState = navigationRef.getRootState();\n\tconst hash = href.indexOf(\"#\");\n\tif (currentRootState.key && hash > 0) hashes[currentRootState.key] = href.slice(hash);\n\tnextOptions = options ?? null;\n\tpendingNavigationPathname = stripTrailingSlash(extractPathnameFromHref(href));\n\tpendingNavigationAction = event === \"PUSH\" || event === \"REPLACE\" || event === \"NAVIGATE\" ? event : void 0;\n\tlastIntendedPathname = pendingNavigationPathname;\n\tconst freshRootState = navigationRef.getRootState();\n\tconst currentRouteBeforeDispatch = navigationRef.getCurrentRoute();\n\tif (event === \"REPLACE\") {\n\t\tconst targetPathname = pendingNavigationPathname;\n\t\tconst optimisticState = nextOptions ? {\n\t\t\t...state,\n\t\t\tlinkOptions: nextOptions\n\t\t} : state;\n\t\tupdateState(optimisticState);\n\t\tpendingNavigationPathname = targetPathname;\n\t\tnotifyRootStateSubscribers(optimisticState);\n\t\tnavigationRef.resetRoot(state);\n\t} else {\n\t\tconst action = getNavigateAction(state, freshRootState, event);\n\t\tconst targetName = action.payload?.name;\n\t\tconst isGroupTarget = typeof targetName === \"string\" && targetName.startsWith(\"(\") && targetName.endsWith(\")\");\n\t\tconst hasFreshRootState = freshRootState.type === \"stack\";\n\t\tconst isRootTarget = action.target === freshRootState.key;\n\t\tconst currentFocusedRoute = freshRootState.routes[freshRootState.index];\n\t\tconst currentFocusedName = currentFocusedRoute?.name;\n\t\tif (isRootTarget && isGroupTarget && hasFreshRootState) {\n\t\t\tconst targetRoute = state.routes[state.routes.length - 1];\n\t\t\tconst targetRootName = targetRoute.name;\n\t\t\tif (currentFocusedName === targetRootName) {\n\t\t\t\tconst routes = [...freshRootState.routes];\n\t\t\t\troutes[freshRootState.index] = {\n\t\t\t\t\t...targetRoute,\n\t\t\t\t\tkey: currentFocusedRoute?.key ?? targetRoute.key\n\t\t\t\t};\n\t\t\t\tnavigationRef.resetRoot({\n\t\t\t\t\t...freshRootState,\n\t\t\t\t\troutes\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst existingTargetRoute = freshRootState.routes.find((route) => route.name === targetRootName);\n\t\t\t\tconst existingRoutes = freshRootState.routes.filter((route) => route.name !== targetRootName);\n\t\t\t\tconst nextRootState = {\n\t\t\t\t\t...freshRootState,\n\t\t\t\t\troutes: [...existingRoutes, {\n\t\t\t\t\t\t...targetRoute,\n\t\t\t\t\t\tkey: existingTargetRoute?.key ?? `${targetRootName}-${freshRootState.key}`\n\t\t\t\t\t}],\n\t\t\t\t\tindex: existingRoutes.length\n\t\t\t\t};\n\t\t\t\tnavigationRef.resetRoot(nextRootState);\n\t\t\t}\n\t\t} else navigationRef.dispatch(action);\n\t}\n\tlet warningTm;\n\tconst interval = setInterval(() => {\n\t\tif (currentRouteBeforeDispatch !== navigationRef.getCurrentRoute()) setTimeout(() => {\n\t\t\tsetLoadingState(\"loaded\");\n\t\t});\n\t\tclearTimeout(warningTm);\n\t\tclearTimeout(interval);\n\t}, 16);\n\tif (process.env.NODE_ENV === \"development\") warningTm = setTimeout(() => {\n\t\tconsole.warn(`Routing took more than 8 seconds`);\n\t}, 1e3);\n}\nconst hashes = {};\nlet nextOptions = null;\nfunction deepEqual(a, b) {\n\tif (a === b) return true;\n\tif (Array.isArray(a) && Array.isArray(b)) {\n\t\tif (a.length !== b.length) return false;\n\t\tfor (let i = 0; i < a.length; i++) if (!deepEqual(a[i], b[i])) return false;\n\t\treturn true;\n\t}\n\tif (typeof a === \"object\" && typeof b === \"object\") {\n\t\tconst keysA = Object.keys(a);\n\t\tconst keysB = Object.keys(b);\n\t\tif (keysA.length !== keysB.length) return false;\n\t\tfor (const key of keysA) if (!deepEqual(a[key], b[key])) return false;\n\t\treturn true;\n\t}\n\treturn false;\n}\n\nexport { canDismiss, canGoBack, cleanup, consumePendingNavigationAction, dismiss, dismissAll, getPreloadHistory, getSafeWindowPathname2 as getSafeWindowPathname, getSortedRoutes, getValidationState, goBack, handleNavigationContainerStateChange, hasAttemptedToHideSplash, initClientMatches, initialPathname, initialState, initialize, isRouteProtected, lastIntendedPathname, linkTo, navigate, navigationRef, preloadRoute, preloadedLoaderData, preloadingLoader, push, registerProtectedRoutes, replace, rootComponent, rootState, rootStateSnapshot, routeInfo, routeInfoSnapshot, routeNode, setLoadingState, setParams, setValidationState, snapshot, subscribeToLoadingState, subscribeToRootState, subscribeToStore, subscribeToValidationState, unregisterProtectedRoutes, updateState, useOneRouter, useStoreRootState, useStoreRouteInfo, useValidationState };"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["StackActions","Fragment","startTransition","useDeferredValue","useSyncExternalStore","Platform","devtoolsRegistry","resolveHref","openExternalURL","resolve","checkBlocker","assertIsReady","getLoaderPath","getPreloadCSSPath","getPreloadPath","dynamicImport","isVersionStale","shouldLinkExternally","ParamValidationError","RouteValidationError","validateParams","extractParamsFromState","extractPathnameFromHref","extractSearchFromHref","findRouteNodeFromState","getRouteInfo","getRouteArtifactPaths","getRoutes","setLastAction","getResolvedLinking","resetLinking","setupLinking","getSafeWindowPathname","getSafeWindowPathname2","normalizeRoutePathname","stripTrailingSlash","sortRoutes","getQualifiedRouteComponent","preloadRouteModules","getNavigateAction","setClientMatches","findInterceptRoute","setNavigationType","storeInterceptState","updateURLWithoutNavigation","setSlotState","clearNotFoundState","findNearestNotFoundRoute","setNotFoundState","routeNode","rootComponent","protectedRouteRegistry","Map","registerProtectedRoutes","contextKey","protectedScreens","size","delete","set","unregisterProtectedRoutes","isRouteProtected","href","normalizedHref","replace","normalizedContextKey","startsWith","routeName","slice","length","split","normalizedRouteName","has","hasAttemptedToHideSplash","initialState","rootState","initialPathname","lastIntendedPathname","nextState","routeInfo","splashScreenAnimationFrame","pendingNavigationPathname","pendingNavigationAction","navigationRef","rootStateSubscribers","Set","loadingStateSubscribers","storeSubscribers","currentMatches","validationState","status","validationStateSubscribers","subscribeToValidationState","subscriber","add","setValidationState","state","error","window","dispatchEvent","CustomEvent","detail","message","name","stack","lastValidatedHref","timestamp","Date","now","getValidationState","useValidationState","cachedRouteNode","cachedRootComponent","cachedContext","initialize","context","ref","initialLocation","linking","cleanUpState","ignoreEntryPoints","platform","OS","process","env","NODE_ENV","Error","ONE_DEBUG_ROUTER","formatRouteTree","node","indent","isLast","prefix","childIndent","dynamicBadge","dynamic","map","d","join","typeBadge","type","slotsBadge","slots","Array","from","keys","line","route","visibleChildren","children","filter","child","internal","i","childIsLast","console","info","slotName","slotConfig","defaultRoute","interceptRoutes","r","intercept","setupLinkingAndRouteInfo","subscribeToNavigationChanges","clear","pathname","unstable_globalHref","isIndex","params","segments","handleNavigationContainerStateChange","navState","key","hashes","hash","requestAnimationFrame","shouldKeepPendingNavigationState","nextOptions","linkOptions","shouldUpdateSubscribers","updateState","updateSnapshot","navigate","url","options","linkTo","push","dismiss","count","dispatch","pop","setParams","current","dismissAll","popToTop","goBack","canGoBack","isReady","canDismiss","routes","index","getSortedRoutes","sort","nextStateParam","nextRouteInfo","deepEqual","to","Object","__oneDevtools","getLoaderTimingHistory","getPreloadHistory","consumePendingNavigationAction","action","subscribeToRootState","notifyRootStateSubscribers","subscribeToStore","subscribeToLoadingState","setLoadingState","listener","currentSnapshot","getSnapshot","snapshot","rootStateSnapshot","routeInfoSnapshot","getBrowserPathname","currentState","shouldPreserveInitialRouteInfo","nextPathname","browserPathname","useOneRouter","syncStoreRootState","getRootState","useStoreRootState","useStoreRouteInfo","cleanup","cancelAnimationFrame","preloadingLoader","PRELOAD_MAP_MAX","setBoundedPreloadRecord","record","value","doPreloadDev","startTime","performance","normalizedPath","normalizeLoaderPath","globalThis","loaderJSUrl","moduleLoadStart","modulePromise","module","catch","moduleLoadTime","loader","executionStart","result","executionTime","totalTime","__oneRedirect","recordLoaderTiming","path","source","err","String","warn","doPreload","artifactPaths","preloadPath","preload","loaderPath","cssPreloadPath","recordPreloadStart","_preload","cssPreloadModule","Promise","all","recordPreloadError","hasCss","injectCSS","setBoundedCssInject","recordPreloadComplete","errorMessage","preloadedLoaderData","cssInjectFunctions","preloadHistory","MAX_PRELOAD_HISTORY","existing","find","p","unshift","hasLoader","dispatchPreloadEvent","entry","endTime","preloadRoute","then","data","inject","race","setTimeout","URL","buildClientMatches","matchingNode","loaderData","routeId","layoutMatches","m","includes","pageMatch","initClientMatches","matches","event","location","currentLayoutNode","currentPath","interceptResult","interceptRoute","layoutContextKey","params2","scopedSlotKey","activeRouteKey","activeRouteNode","isIntercepted","base","segment","isArray","Boolean","getStateFromPath","config","normalizedPreloadPath","preloadResult","redirectTarget","__oneError","notFoundRoute","notFoundPath","__oneNotFoundPath","notFoundRouteNode","originalPath","matchingRouteNode","loadRoute","loadedRoute","search","validateRoute","validationResult","valid","details","newMatches","currentRootState","indexOf","freshRootState","currentRouteBeforeDispatch","getCurrentRoute","targetPathname","optimisticState","resetRoot","targetName","payload","isGroupTarget","endsWith","hasFreshRootState","isRootTarget","target","currentFocusedRoute","currentFocusedName","targetRoute","targetRootName","existingTargetRoute","existingRoutes","nextRootState","warningTm","interval","setInterval","clearTimeout","a","b","keysA","keysB"],"sources":["router.mjs"],"sourcesContent":["import { StackActions } from \"@react-navigation/native\";\nimport { Fragment, startTransition, useDeferredValue, useSyncExternalStore } from \"react\";\nimport { Platform } from \"react-native-web\";\nimport { devtoolsRegistry } from \"../devtools/registry\";\nimport { resolveHref } from \"../link/href\";\nimport { openExternalURL } from \"../link/openExternalURL\";\nimport { resolve } from \"../link/path\";\nimport { checkBlocker } from \"../useBlocker\";\nimport { assertIsReady } from \"../utils/assertIsReady\";\nimport { getLoaderPath, getPreloadCSSPath, getPreloadPath } from \"../utils/cleanUrl\";\nimport { dynamicImport } from \"../utils/dynamicImport\";\nimport { isVersionStale } from \"../skewProtection\";\nimport { shouldLinkExternally } from \"../utils/url\";\nimport { ParamValidationError, RouteValidationError, validateParams } from \"../validateParams\";\nimport { extractParamsFromState, extractPathnameFromHref, extractSearchFromHref, findRouteNodeFromState } from \"./findRouteNode\";\nimport { getRouteInfo } from \"./getRouteInfo\";\nimport { getRouteArtifactPaths } from \"./getRouteArtifactPath\";\nimport { getRoutes } from \"./getRoutes\";\nimport { setLastAction } from \"./lastAction\";\nimport { getResolvedLinking, resetLinking, setupLinking } from \"./linkingConfig\";\nimport { getSafeWindowPathname, getSafeWindowPathname as getSafeWindowPathname2, normalizeRoutePathname, stripTrailingSlash } from \"./path\";\nimport { sortRoutes } from \"./sortRoutes\";\nimport { getQualifiedRouteComponent } from \"./useScreens\";\nimport { preloadRouteModules } from \"./useViteRoutes\";\nimport { getNavigateAction } from \"./utils/getNavigateAction\";\nimport { setClientMatches } from \"../useMatches\";\nimport { findInterceptRoute, setNavigationType, storeInterceptState, updateURLWithoutNavigation } from \"./interceptRoutes\";\nimport { setSlotState } from \"../views/Navigator\";\nimport { clearNotFoundState, findNearestNotFoundRoute, setNotFoundState } from \"../notFoundState\";\n\nlet routeNode = null;\nlet rootComponent;\nconst protectedRouteRegistry = /* @__PURE__ */ new Map();\nfunction registerProtectedRoutes(contextKey, protectedScreens) {\n\tif (protectedScreens.size === 0) protectedRouteRegistry.delete(contextKey);\n\telse protectedRouteRegistry.set(contextKey, protectedScreens);\n}\nfunction unregisterProtectedRoutes(contextKey) {\n\tprotectedRouteRegistry.delete(contextKey);\n}\nfunction isRouteProtected(href) {\n\tconst normalizedHref = href.replace(/^\\/+|\\/+$/g, \"\");\n\tfor (const [contextKey, protectedScreens] of protectedRouteRegistry) {\n\t\tconst normalizedContextKey = contextKey.replace(/^\\/+|\\/+$/g, \"\");\n\t\tif (normalizedHref.startsWith(normalizedContextKey)) {\n\t\t\tconst routeName = normalizedHref.slice(normalizedContextKey.length).replace(/^\\//, \"\").split(\"/\")[0] || \"index\";\n\t\t\tconst normalizedRouteName = routeName.replace(/\\/index$/, \"\");\n\t\t\tif (protectedScreens.has(routeName) || protectedScreens.has(normalizedRouteName)) return true;\n\t\t}\n\t}\n\treturn false;\n}\nlet hasAttemptedToHideSplash = false;\nlet initialState;\nlet rootState;\nlet initialPathname;\nlet lastIntendedPathname;\nlet nextState;\nlet routeInfo;\nlet splashScreenAnimationFrame;\nlet pendingNavigationPathname;\nlet pendingNavigationAction;\nlet navigationRef = null;\nconst rootStateSubscribers = /* @__PURE__ */ new Set();\nconst loadingStateSubscribers = /* @__PURE__ */ new Set();\nconst storeSubscribers = /* @__PURE__ */ new Set();\nlet currentMatches = [];\nlet validationState = { status: \"idle\" };\nconst validationStateSubscribers = /* @__PURE__ */ new Set();\nfunction subscribeToValidationState(subscriber) {\n\tvalidationStateSubscribers.add(subscriber);\n\treturn () => validationStateSubscribers.delete(subscriber);\n}\nfunction setValidationState(state) {\n\tvalidationState = state;\n\tfor (const subscriber of validationStateSubscribers) subscriber(state);\n\tif (state.status === \"error\" && state.error) window.dispatchEvent(new CustomEvent(\"one-validation-error\", { detail: {\n\t\terror: {\n\t\t\tmessage: state.error.message,\n\t\t\tname: state.error.name,\n\t\t\tstack: state.error.stack\n\t\t},\n\t\thref: state.lastValidatedHref,\n\t\ttimestamp: Date.now()\n\t} }));\n}\nfunction getValidationState() {\n\treturn validationState;\n}\nfunction useValidationState() {\n\treturn useSyncExternalStore(subscribeToValidationState, getValidationState, getValidationState);\n}\nlet cachedRouteNode = null;\nlet cachedRootComponent = null;\nlet cachedContext = null;\nfunction initialize(context, ref, initialLocation, linking) {\n\tcleanUpState();\n\tif (context !== cachedContext || !cachedRouteNode) {\n\t\tcachedRouteNode = getRoutes(context, {\n\t\t\tignoreEntryPoints: true,\n\t\t\tplatform: Platform.OS\n\t\t});\n\t\tcachedRootComponent = cachedRouteNode ? getQualifiedRouteComponent(cachedRouteNode) : Fragment;\n\t\tcachedContext = context;\n\t}\n\trouteNode = cachedRouteNode;\n\trootComponent = cachedRootComponent || Fragment;\n\tif (!routeNode && process.env.NODE_ENV === \"production\") throw new Error(\"No routes found\");\n\tif (process.env.ONE_DEBUG_ROUTER && routeNode) {\n\t\tconst formatRouteTree = (node, indent = \"\", isLast = true) => {\n\t\t\tconst prefix = indent + (isLast ? \"└─ \" : \"├─ \");\n\t\t\tconst childIndent = indent + (isLast ? \" \" : \"│ \");\n\t\t\tconst dynamicBadge = node.dynamic ? ` [${node.dynamic.map((d) => d.name).join(\", \")}]` : \"\";\n\t\t\tconst typeBadge = node.type !== \"layout\" ? ` (${node.type})` : \"\";\n\t\t\tconst slotsBadge = node.slots?.size ? ` {@${Array.from(node.slots.keys()).join(\", @\")}}` : \"\";\n\t\t\tlet line = `${prefix}${node.route || \"/\"}${dynamicBadge}${typeBadge}${slotsBadge}`;\n\t\t\tconst visibleChildren = node.children.filter((child) => !child.internal);\n\t\t\tfor (let i = 0; i < visibleChildren.length; i++) {\n\t\t\t\tconst child = visibleChildren[i];\n\t\t\t\tconst childIsLast = i === visibleChildren.length - 1;\n\t\t\t\tline += \"\\n\" + formatRouteTree(child, childIndent, childIsLast);\n\t\t\t}\n\t\t\treturn line;\n\t\t};\n\t\tconsole.info(`[one] \\u{1F4CD} Route structure:\n${formatRouteTree(routeNode)}`);\n\t\tif (routeNode.slots?.size) {\n\t\t\tconsole.info(`[one] \\u{1F4E6} Slots on root layout:`);\n\t\t\tfor (const [slotName, slotConfig] of routeNode.slots) console.info(` @${slotName}:`, {\n\t\t\t\tdefaultRoute: slotConfig.defaultRoute?.route,\n\t\t\t\tinterceptRoutes: slotConfig.interceptRoutes.map((r) => ({\n\t\t\t\t\troute: r.route,\n\t\t\t\t\tintercept: r.intercept\n\t\t\t\t}))\n\t\t\t});\n\t\t}\n\t}\n\tnavigationRef = ref;\n\tsetupLinkingAndRouteInfo(initialLocation, linking);\n\tsubscribeToNavigationChanges();\n}\nfunction cleanUpState() {\n\tinitialState = void 0;\n\tinitialPathname = void 0;\n\tlastIntendedPathname = void 0;\n\trootState = void 0;\n\tnextState = void 0;\n\trouteInfo = void 0;\n\tpendingNavigationPathname = void 0;\n\tpendingNavigationAction = void 0;\n\tresetLinking();\n\trootStateSubscribers.clear();\n\tstoreSubscribers.clear();\n}\nfunction setupLinkingAndRouteInfo(initialLocation, linking) {\n\tinitialState = setupLinking(routeNode, initialLocation, linking);\n\tinitialPathname = initialLocation?.pathname ?? getSafeWindowPathname();\n\tif (initialState) {\n\t\trootState = initialState;\n\t\trouteInfo = getRouteInfo(initialState);\n\t} else routeInfo = {\n\t\tunstable_globalHref: \"\",\n\t\tpathname: \"\",\n\t\tisIndex: false,\n\t\tparams: {},\n\t\tsegments: []\n\t};\n}\nfunction handleNavigationContainerStateChange(navState) {\n\tif (!navState) return;\n\tlet state = { ...navState };\n\tif (state.key) {\n\t\tif (hashes[state.key]) {\n\t\t\tstate.hash = hashes[state.key];\n\t\t\tdelete hashes[state.key];\n\t\t}\n\t}\n\tif (!hasAttemptedToHideSplash) {\n\t\thasAttemptedToHideSplash = true;\n\t\tsplashScreenAnimationFrame = requestAnimationFrame(() => {});\n\t}\n\tif (shouldKeepPendingNavigationState(state)) return;\n\tif (nextOptions) {\n\t\tstate = {\n\t\t\t...state,\n\t\t\tlinkOptions: nextOptions\n\t\t};\n\t\tnextOptions = null;\n\t}\n\tlet shouldUpdateSubscribers = nextState === state;\n\tnextState = void 0;\n\tif (state && state !== rootState) {\n\t\tupdateState(state, void 0);\n\t\tshouldUpdateSubscribers = true;\n\t}\n\tif (shouldUpdateSubscribers) startTransition(() => {\n\t\tfor (const subscriber of rootStateSubscribers) subscriber(state);\n\t});\n}\nfunction subscribeToNavigationChanges() {\n\tstartTransition(() => {\n\t\tupdateSnapshot();\n\t\tfor (const subscriber of storeSubscribers) subscriber();\n\t});\n}\nfunction navigate(url, options) {\n\treturn linkTo(resolveHref(url), \"NAVIGATE\", options);\n}\nfunction push(url, options) {\n\treturn linkTo(resolveHref(url), \"PUSH\", options);\n}\nfunction dismiss(count) {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F519} dismiss${count ? ` (${count})` : \"\"}`);\n\tnavigationRef?.dispatch(StackActions.pop(count));\n}\nfunction replace(url, options) {\n\treturn linkTo(resolveHref(url), \"REPLACE\", options);\n}\nfunction setParams(params = {}) {\n\tassertIsReady(navigationRef);\n\treturn navigationRef?.current?.setParams(params);\n}\nfunction dismissAll() {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F519} dismissAll`);\n\tnavigationRef?.dispatch(StackActions.popToTop());\n}\nfunction goBack() {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F519} goBack`);\n\tassertIsReady(navigationRef);\n\tnavigationRef?.current?.goBack();\n}\nfunction canGoBack() {\n\tif (!navigationRef.isReady()) return false;\n\treturn navigationRef?.current?.canGoBack() ?? false;\n}\nfunction canDismiss() {\n\tlet state = rootState;\n\twhile (state) {\n\t\tif (state.type === \"stack\" && state.routes.length > 1) return true;\n\t\tif (state.index === void 0) return false;\n\t\tstate = state.routes?.[state.index]?.state;\n\t}\n\treturn false;\n}\nfunction getSortedRoutes() {\n\tif (!routeNode) throw new Error(\"No routes\");\n\treturn routeNode.children.filter((route) => !route.internal).sort(sortRoutes);\n}\nfunction updateState(state, nextStateParam = state) {\n\trootState = state;\n\tnextState = nextStateParam;\n\tconst nextRouteInfo = getRouteInfo(state);\n\tif (pendingNavigationPathname === nextRouteInfo.pathname) pendingNavigationPathname = void 0;\n\tif (!deepEqual(routeInfo, nextRouteInfo)) {\n\t\tif (process.env.ONE_DEBUG_ROUTER) {\n\t\t\tconst from = routeInfo?.pathname || \"(initial)\";\n\t\t\tconst to = nextRouteInfo.pathname;\n\t\t\tconst params = Object.keys(nextRouteInfo.params || {}).length ? nextRouteInfo.params : void 0;\n\t\t\tconsole.info(`[one] \\u{1F9ED} ${from} \\u2192 ${to}`, params ? { params } : \"\");\n\t\t}\n\t\trouteInfo = nextRouteInfo;\n\t}\n\tif (process.env.NODE_ENV === \"development\" && typeof window !== \"undefined\") {\n\t\twindow.__oneDevtools = {\n\t\t\trouteInfo: nextRouteInfo,\n\t\t\trootState: state,\n\t\t\trouteNode,\n\t\t\tgetRoutes: () => routeNode?.children || [],\n\t\t\tgetLoaderTimingHistory: () => devtoolsRegistry.getLoaderTimingHistory?.() ?? [],\n\t\t\tgetPreloadHistory\n\t\t};\n\t\twindow.dispatchEvent(new CustomEvent(\"one-route-change\", { detail: nextRouteInfo }));\n\t}\n}\nfunction consumePendingNavigationAction() {\n\tconst action = pendingNavigationAction;\n\tpendingNavigationAction = void 0;\n\treturn action;\n}\nfunction subscribeToRootState(subscriber) {\n\trootStateSubscribers.add(subscriber);\n\treturn () => {\n\t\trootStateSubscribers.delete(subscriber);\n\t};\n}\nfunction notifyRootStateSubscribers(state) {\n\tfor (const subscriber of rootStateSubscribers) subscriber(state);\n}\nfunction subscribeToStore(subscriber) {\n\tstoreSubscribers.add(subscriber);\n\treturn () => {\n\t\tstoreSubscribers.delete(subscriber);\n\t};\n}\nfunction subscribeToLoadingState(subscriber) {\n\tloadingStateSubscribers.add(subscriber);\n\treturn () => {\n\t\tloadingStateSubscribers.delete(subscriber);\n\t};\n}\nfunction setLoadingState(state) {\n\tstartTransition(() => {\n\t\tfor (const listener of loadingStateSubscribers) listener(state);\n\t});\n}\nlet currentSnapshot = null;\nfunction updateSnapshot() {\n\tcurrentSnapshot = getSnapshot();\n}\nfunction snapshot() {\n\treturn currentSnapshot;\n}\nfunction getSnapshot() {\n\treturn {\n\t\tlinkTo,\n\t\trouteNode,\n\t\trootComponent,\n\t\tlinking: getResolvedLinking(),\n\t\thasAttemptedToHideSplash,\n\t\tinitialState,\n\t\trootState,\n\t\tnextState,\n\t\trouteInfo,\n\t\tsplashScreenAnimationFrame,\n\t\tnavigationRef,\n\t\trootStateSubscribers,\n\t\tstoreSubscribers\n\t};\n}\nfunction rootStateSnapshot() {\n\treturn rootState;\n}\nfunction routeInfoSnapshot() {\n\treturn routeInfo;\n}\nfunction getBrowserPathname() {\n\tconst pathname = getSafeWindowPathname();\n\treturn pathname === void 0 ? void 0 : normalizeRoutePathname(pathname);\n}\nfunction shouldKeepPendingNavigationState(currentState) {\n\tif (!pendingNavigationPathname) return false;\n\treturn getRouteInfo(currentState).pathname !== pendingNavigationPathname;\n}\nfunction shouldPreserveInitialRouteInfo(currentState) {\n\tif (!initialState || !routeInfo?.pathname) return false;\n\tconst nextPathname = getRouteInfo(currentState).pathname;\n\tif (nextPathname === routeInfo.pathname) return false;\n\tif (nextPathname && nextPathname === pendingNavigationPathname) return false;\n\tconst browserPathname = getBrowserPathname();\n\tif (nextPathname && browserPathname && nextPathname === browserPathname) return false;\n\treturn true;\n}\nfunction useOneRouter() {\n\treturn useDeferredValue(useSyncExternalStore(subscribeToStore, snapshot, snapshot));\n}\nfunction syncStoreRootState() {\n\tif (!navigationRef) throw new Error(`No navigationRef, possible duplicate One dep`);\n\tif (navigationRef.isReady()) {\n\t\tconst currentState = navigationRef.getRootState();\n\t\tif (rootState !== currentState) {\n\t\t\tif (shouldKeepPendingNavigationState(currentState)) return;\n\t\t\tif (shouldPreserveInitialRouteInfo(currentState)) return;\n\t\t\tupdateState(currentState);\n\t\t}\n\t}\n}\nfunction useStoreRootState() {\n\tsyncStoreRootState();\n\treturn useDeferredValue(useSyncExternalStore(subscribeToRootState, rootStateSnapshot, rootStateSnapshot));\n}\nfunction useStoreRouteInfo() {\n\tsyncStoreRootState();\n\treturn useSyncExternalStore(subscribeToRootState, routeInfoSnapshot, routeInfoSnapshot);\n}\nfunction cleanup() {\n\tif (splashScreenAnimationFrame) cancelAnimationFrame(splashScreenAnimationFrame);\n}\nconst preloadingLoader = {};\nconst PRELOAD_MAP_MAX = 200;\nfunction setBoundedPreloadRecord(record, key, value) {\n\tif (!(key in record)) {\n\t\tconst keys = Object.keys(record);\n\t\tif (keys.length >= PRELOAD_MAP_MAX) delete record[keys[0]];\n\t}\n\trecord[key] = value;\n}\nasync function doPreloadDev(href) {\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tconst startTime = performance.now();\n\t\tconst normalizedPath = normalizeLoaderPath(href);\n\t\tif (globalThis[\"__vxrnHeadless\"]) return null;\n\t\ttry {\n\t\t\tconst loaderJSUrl = getLoaderPath(href, true);\n\t\t\tconst moduleLoadStart = performance.now();\n\t\t\tconst modulePromise = dynamicImport(loaderJSUrl);\n\t\t\tif (!modulePromise) return null;\n\t\t\tconst module = await modulePromise.catch(() => null);\n\t\t\tconst moduleLoadTime = performance.now() - moduleLoadStart;\n\t\t\tif (!module?.loader) return null;\n\t\t\tconst executionStart = performance.now();\n\t\t\tconst result = await module.loader();\n\t\t\tconst executionTime = performance.now() - executionStart;\n\t\t\tconst totalTime = performance.now() - startTime;\n\t\t\tif (result?.__oneRedirect) return result;\n\t\t\tdevtoolsRegistry.recordLoaderTiming?.({\n\t\t\t\tpath: normalizedPath,\n\t\t\t\tstartTime,\n\t\t\t\tmoduleLoadTime,\n\t\t\t\texecutionTime,\n\t\t\t\ttotalTime,\n\t\t\t\tsource: \"preload\"\n\t\t\t});\n\t\t\treturn result ?? null;\n\t\t} catch (err) {\n\t\t\tconst totalTime = performance.now() - startTime;\n\t\t\tdevtoolsRegistry.recordLoaderTiming?.({\n\t\t\t\tpath: normalizedPath,\n\t\t\t\tstartTime,\n\t\t\t\ttotalTime,\n\t\t\t\terror: err instanceof Error ? err.message : String(err),\n\t\t\t\tsource: \"preload\"\n\t\t\t});\n\t\t\tif (process.env.ONE_DEBUG_ROUTER) console.warn(`[one] dev preload failed for ${href}:`, err);\n\t\t\treturn null;\n\t\t}\n\t}\n}\nasync function doPreload(href) {\n\tif (globalThis[\"__vxrnHeadless\"]) return null;\n\tconst artifactPaths = getRouteArtifactPaths(href, getResolvedLinking(), routeNode);\n\tconst preloadPath = getPreloadPath(artifactPaths.preload);\n\tconst loaderPath = getLoaderPath(artifactPaths.loader);\n\tconst cssPreloadPath = getPreloadCSSPath(artifactPaths.preload);\n\trecordPreloadStart(href);\n\ttry {\n\t\tconst [_preload, cssPreloadModule, loader] = await Promise.all([\n\t\t\tdynamicImport(preloadPath)?.catch((err) => {\n\t\t\t\trecordPreloadError(href, err instanceof Error ? err.message : String(err));\n\t\t\t\treturn null;\n\t\t\t}),\n\t\t\tdynamicImport(cssPreloadPath)?.catch(() => null) ?? Promise.resolve(null),\n\t\t\tdynamicImport(loaderPath)?.catch(() => null) ?? Promise.resolve(null),\n\t\t\tpreloadRouteModules(href)\n\t\t]);\n\t\tconst hasCss = !!cssPreloadModule?.injectCSS;\n\t\tif (hasCss) setBoundedCssInject(href, cssPreloadModule.injectCSS);\n\t\tif (!!!loader?.loader) {\n\t\t\trecordPreloadComplete(href, false, hasCss);\n\t\t\treturn null;\n\t\t}\n\t\tconst result = await loader.loader();\n\t\tif (result?.__oneRedirect) return result;\n\t\trecordPreloadComplete(href, true, hasCss);\n\t\treturn result ?? null;\n\t} catch (err) {\n\t\tconst errorMessage = err instanceof Error ? err.message : String(err);\n\t\tconsole.error(`[one] preload error for ${href}:`, err);\n\t\trecordPreloadError(href, errorMessage);\n\t\treturn null;\n\t}\n}\nconst preloadedLoaderData = {};\nconst cssInjectFunctions = {};\nfunction setBoundedCssInject(key, value) {\n\tif (!(key in cssInjectFunctions)) {\n\t\tconst keys = Object.keys(cssInjectFunctions);\n\t\tif (keys.length >= PRELOAD_MAP_MAX) delete cssInjectFunctions[keys[0]];\n\t}\n\tcssInjectFunctions[key] = value;\n}\nconst preloadHistory = [];\nconst MAX_PRELOAD_HISTORY = 30;\nfunction recordPreloadStart(href) {\n\tif (process.env.NODE_ENV !== \"development\") return;\n\tconst existing = preloadHistory.find((p) => p.href === href);\n\tif (existing) {\n\t\texisting.status = \"loading\";\n\t\texisting.startTime = performance.now();\n\t\treturn;\n\t}\n\tpreloadHistory.unshift({\n\t\thref,\n\t\tstatus: \"loading\",\n\t\tstartTime: performance.now(),\n\t\thasLoader: false,\n\t\thasCss: false\n\t});\n\tif (preloadHistory.length > MAX_PRELOAD_HISTORY) preloadHistory.pop();\n\tdispatchPreloadEvent();\n}\nfunction recordPreloadComplete(href, hasLoader, hasCss) {\n\tif (process.env.NODE_ENV !== \"development\") return;\n\tconst entry = preloadHistory.find((p) => p.href === href);\n\tif (entry) {\n\t\tentry.status = \"loaded\";\n\t\tentry.endTime = performance.now();\n\t\tentry.hasLoader = hasLoader;\n\t\tentry.hasCss = hasCss;\n\t}\n\tdispatchPreloadEvent();\n}\nfunction recordPreloadError(href, error) {\n\tif (process.env.NODE_ENV !== \"development\") return;\n\tconst entry = preloadHistory.find((p) => p.href === href);\n\tif (entry) {\n\t\tentry.status = \"error\";\n\t\tentry.endTime = performance.now();\n\t\tentry.error = error;\n\t}\n\tdispatchPreloadEvent();\n}\nfunction dispatchPreloadEvent() {\n\twindow.dispatchEvent(new CustomEvent(\"one-preload-update\"));\n}\nfunction getPreloadHistory() {\n\treturn preloadHistory;\n}\nfunction preloadRoute(href, injectCSS = false) {\n\tif (process.env.NODE_ENV === \"development\") {\n\t\tconst normalizedHref = normalizeLoaderPath(href);\n\t\tif (!preloadingLoader[normalizedHref]) setBoundedPreloadRecord(preloadingLoader, normalizedHref, doPreloadDev(href).then((data) => {\n\t\t\tsetBoundedPreloadRecord(preloadedLoaderData, normalizedHref, data);\n\t\t\treturn data;\n\t\t}));\n\t\treturn preloadingLoader[normalizedHref];\n\t}\n\tif (!preloadingLoader[href]) setBoundedPreloadRecord(preloadingLoader, href, doPreload(href).then((data) => {\n\t\tsetBoundedPreloadRecord(preloadedLoaderData, href, data);\n\t\treturn data;\n\t}));\n\tif (injectCSS) return preloadingLoader[href]?.then(async (data) => {\n\t\tconst inject = cssInjectFunctions[href];\n\t\tif (inject) await Promise.race([inject(), new Promise((r) => setTimeout(r, 800))]);\n\t\treturn data;\n\t});\n\treturn preloadingLoader[href];\n}\nfunction normalizeLoaderPath(href) {\n\treturn new URL(href, \"http://example.com\").pathname.replace(/\\/index$/, \"\").replace(/\\/$/, \"\") || \"/\";\n}\nfunction buildClientMatches(href, matchingNode, params, loaderData) {\n\tconst pathname = extractPathnameFromHref(href);\n\tconst routeId = matchingNode?.contextKey || pathname;\n\tconst layoutMatches = currentMatches.filter((m) => m.routeId.includes(\"_layout\"));\n\tconst pageMatch = {\n\t\trouteId,\n\t\tpathname,\n\t\tparams,\n\t\tloaderData\n\t};\n\treturn [...layoutMatches, pageMatch];\n}\nfunction initClientMatches(matches) {\n\tcurrentMatches = matches;\n\tsetClientMatches(matches);\n}\nasync function linkTo(href, event, options) {\n\tif (process.env.ONE_DEBUG_ROUTER) console.info(`[one] \\u{1F517} ${event || \"NAVIGATE\"} ${href}`);\n\tsetNavigationType(\"soft\");\n\tclearNotFoundState();\n\tif (href[0] === \"#\") return;\n\tif (shouldLinkExternally(href)) {\n\t\topenExternalURL(href);\n\t\treturn;\n\t}\n\tif (isVersionStale()) {\n\t\twindow.location.href = href;\n\t\treturn;\n\t}\n\tif (checkBlocker(href, event === \"REPLACE\" ? \"replace\" : \"push\")) return;\n\tif (isRouteProtected(href)) return;\n\tconst currentLayoutNode = routeNode;\n\tconst currentPath = routeInfo?.pathname || \"/\";\n\tconst interceptResult = findInterceptRoute(href, currentLayoutNode, currentPath);\n\tif (interceptResult) {\n\t\tconst { interceptRoute, slotName, layoutContextKey, params: params2 } = interceptResult;\n\t\tconst scopedSlotKey = `${layoutContextKey}:${slotName}`;\n\t\tstoreInterceptState(scopedSlotKey, interceptRoute, params2);\n\t\tupdateURLWithoutNavigation(href);\n\t\tsetSlotState(scopedSlotKey, {\n\t\t\tactiveRouteKey: interceptRoute.contextKey,\n\t\t\tactiveRouteNode: interceptRoute,\n\t\t\tparams: params2,\n\t\t\tisIntercepted: true\n\t\t});\n\t\treturn;\n\t}\n\tassertIsReady(navigationRef);\n\tconst current = navigationRef.current;\n\tif (current == null) throw new Error(\"Couldn't find a navigation object. Is your component inside NavigationContainer?\");\n\tconst linking = getResolvedLinking();\n\tif (!linking) throw new Error(\"Attempted to link to route when no routes are present\");\n\tsetLastAction();\n\tif (href === \"..\" || href === \"../\") {\n\t\tcurrent.goBack();\n\t\treturn;\n\t}\n\tif (href.startsWith(\".\")) {\n\t\tlet base = routeInfo?.segments?.map((segment) => {\n\t\t\tif (!segment.startsWith(\"[\")) return segment;\n\t\t\tif (segment.startsWith(\"[...\")) {\n\t\t\t\tsegment = segment.slice(4, -1);\n\t\t\t\tconst params2 = routeInfo?.params?.[segment];\n\t\t\t\tif (Array.isArray(params2)) return params2.join(\"/\");\n\t\t\t\treturn params2?.split(\",\")?.join(\"/\") ?? \"\";\n\t\t\t}\n\t\t\tsegment = segment.slice(1, -1);\n\t\t\treturn routeInfo?.params?.[segment];\n\t\t}).filter(Boolean).join(\"/\") ?? \"/\";\n\t\tif (!routeInfo?.isIndex) base += \"/..\";\n\t\thref = resolve(base, href);\n\t}\n\tconst state = linking.getStateFromPath(href, linking.config);\n\tif (!state || state.routes.length === 0) {\n\t\tconsole.error(\"Could not generate a valid navigation state for the given path: \" + href);\n\t\tconsole.error(`linking.config`, linking.config);\n\t\tconsole.error(`routes`, getSortedRoutes());\n\t\treturn;\n\t}\n\tsetLoadingState(\"loading\");\n\tconst normalizedPreloadPath = normalizeLoaderPath(href);\n\tif (!(normalizedPreloadPath in preloadedLoaderData) && !(href in preloadedLoaderData)) await preloadRoute(href, true);\n\telse if (process.env.NODE_ENV !== \"development\") {\n\t\tconst inject = cssInjectFunctions[href];\n\t\tif (inject) inject().catch(() => {});\n\t}\n\tconst preloadResult = preloadedLoaderData[normalizedPreloadPath];\n\tif (preloadResult?.__oneRedirect) {\n\t\tconst redirectTarget = preloadResult.__oneRedirect;\n\t\tdelete preloadedLoaderData[normalizedPreloadPath];\n\t\tdelete preloadingLoader[normalizedPreloadPath];\n\t\tdelete preloadedLoaderData[href];\n\t\tdelete preloadingLoader[href];\n\t\tsetLoadingState(\"loaded\");\n\t\tlinkTo(redirectTarget, \"REPLACE\");\n\t\treturn;\n\t}\n\tif (preloadResult?.__oneError === 404) {\n\t\tdelete preloadedLoaderData[normalizedPreloadPath];\n\t\tdelete preloadingLoader[normalizedPreloadPath];\n\t\tdelete preloadedLoaderData[href];\n\t\tdelete preloadingLoader[href];\n\t\tsetLoadingState(\"loaded\");\n\t\tconst notFoundRoute = findNearestNotFoundRoute(href, routeNode);\n\t\tsetNotFoundState({\n\t\t\tnotFoundPath: preloadResult.__oneNotFoundPath || \"/+not-found\",\n\t\t\tnotFoundRouteNode: notFoundRoute || void 0,\n\t\t\toriginalPath: href\n\t\t});\n\t\treturn;\n\t}\n\tconst matchingRouteNode = findRouteNodeFromState(state, routeNode);\n\tif (matchingRouteNode?.loadRoute) {\n\t\tsetValidationState({\n\t\t\tstatus: \"validating\",\n\t\t\tlastValidatedHref: href\n\t\t});\n\t\ttry {\n\t\t\tconst loadedRoute = matchingRouteNode.loadRoute();\n\t\t\tconst params2 = extractParamsFromState(state);\n\t\t\tconst search = extractSearchFromHref(href);\n\t\t\tconst pathname = extractPathnameFromHref(href);\n\t\t\tif (loadedRoute.validateParams) validateParams(loadedRoute.validateParams, params2);\n\t\t\tif (loadedRoute.validateRoute) {\n\t\t\t\tconst validationResult = await loadedRoute.validateRoute({\n\t\t\t\t\tparams: params2,\n\t\t\t\t\tsearch,\n\t\t\t\t\tpathname,\n\t\t\t\t\thref\n\t\t\t\t});\n\t\t\t\tif (validationResult && !validationResult.valid) {\n\t\t\t\t\tconst error = new RouteValidationError(validationResult.error || \"Route validation failed\", validationResult.details);\n\t\t\t\t\tsetValidationState({\n\t\t\t\t\t\tstatus: \"error\",\n\t\t\t\t\t\terror,\n\t\t\t\t\t\tlastValidatedHref: href\n\t\t\t\t\t});\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t}\n\t\t\tsetValidationState({\n\t\t\t\tstatus: \"valid\",\n\t\t\t\tlastValidatedHref: href\n\t\t\t});\n\t\t} catch (error) {\n\t\t\tif (error && typeof error.then === \"function\") {\n\t\t\t\tawait error.catch(() => {});\n\t\t\t\tsetValidationState({\n\t\t\t\t\tstatus: \"valid\",\n\t\t\t\t\tlastValidatedHref: href\n\t\t\t\t});\n\t\t\t} else if (error instanceof ParamValidationError || error instanceof RouteValidationError) {\n\t\t\t\tsetValidationState({\n\t\t\t\t\tstatus: \"error\",\n\t\t\t\t\terror,\n\t\t\t\t\tlastValidatedHref: href\n\t\t\t\t});\n\t\t\t\tthrow error;\n\t\t\t} else throw error;\n\t\t}\n\t}\n\tconst loaderData = preloadedLoaderData[normalizeLoaderPath(href)];\n\tconst params = extractParamsFromState(state);\n\tconst newMatches = buildClientMatches(href, matchingRouteNode, params, loaderData);\n\tcurrentMatches = newMatches;\n\tsetClientMatches(newMatches);\n\tconst currentRootState = navigationRef.getRootState();\n\tconst hash = href.indexOf(\"#\");\n\tif (currentRootState.key && hash > 0) hashes[currentRootState.key] = href.slice(hash);\n\tnextOptions = options ?? null;\n\tpendingNavigationPathname = stripTrailingSlash(extractPathnameFromHref(href));\n\tpendingNavigationAction = event === \"PUSH\" || event === \"REPLACE\" || event === \"NAVIGATE\" ? event : void 0;\n\tlastIntendedPathname = pendingNavigationPathname;\n\tconst freshRootState = navigationRef.getRootState();\n\tconst currentRouteBeforeDispatch = navigationRef.getCurrentRoute();\n\tif (event === \"REPLACE\") {\n\t\tconst targetPathname = pendingNavigationPathname;\n\t\tconst optimisticState = nextOptions ? {\n\t\t\t...state,\n\t\t\tlinkOptions: nextOptions\n\t\t} : state;\n\t\tupdateState(optimisticState);\n\t\tpendingNavigationPathname = targetPathname;\n\t\tnotifyRootStateSubscribers(optimisticState);\n\t\tnavigationRef.resetRoot(state);\n\t} else {\n\t\tconst action = getNavigateAction(state, freshRootState, event);\n\t\tconst targetName = action.payload?.name;\n\t\tconst isGroupTarget = typeof targetName === \"string\" && targetName.startsWith(\"(\") && targetName.endsWith(\")\");\n\t\tconst hasFreshRootState = freshRootState.type === \"stack\";\n\t\tconst isRootTarget = action.target === freshRootState.key;\n\t\tconst currentFocusedRoute = freshRootState.routes[freshRootState.index];\n\t\tconst currentFocusedName = currentFocusedRoute?.name;\n\t\tif (isRootTarget && isGroupTarget && hasFreshRootState) {\n\t\t\tconst targetRoute = state.routes[state.routes.length - 1];\n\t\t\tconst targetRootName = targetRoute.name;\n\t\t\tif (currentFocusedName === targetRootName) {\n\t\t\t\tconst routes = [...freshRootState.routes];\n\t\t\t\troutes[freshRootState.index] = {\n\t\t\t\t\t...targetRoute,\n\t\t\t\t\tkey: currentFocusedRoute?.key ?? targetRoute.key\n\t\t\t\t};\n\t\t\t\tnavigationRef.resetRoot({\n\t\t\t\t\t...freshRootState,\n\t\t\t\t\troutes\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst existingTargetRoute = freshRootState.routes.find((route) => route.name === targetRootName);\n\t\t\t\tconst existingRoutes = freshRootState.routes.filter((route) => route.name !== targetRootName);\n\t\t\t\tconst nextRootState = {\n\t\t\t\t\t...freshRootState,\n\t\t\t\t\troutes: [...existingRoutes, {\n\t\t\t\t\t\t...targetRoute,\n\t\t\t\t\t\tkey: existingTargetRoute?.key ?? `${targetRootName}-${freshRootState.key}`\n\t\t\t\t\t}],\n\t\t\t\t\tindex: existingRoutes.length\n\t\t\t\t};\n\t\t\t\tnavigationRef.resetRoot(nextRootState);\n\t\t\t}\n\t\t} else navigationRef.dispatch(action);\n\t}\n\tlet warningTm;\n\tconst interval = setInterval(() => {\n\t\tif (currentRouteBeforeDispatch !== navigationRef.getCurrentRoute()) setTimeout(() => {\n\t\t\tsetLoadingState(\"loaded\");\n\t\t});\n\t\tclearTimeout(warningTm);\n\t\tclearTimeout(interval);\n\t}, 16);\n\tif (process.env.NODE_ENV === \"development\") warningTm = setTimeout(() => {\n\t\tconsole.warn(`Routing took more than 8 seconds`);\n\t}, 1e3);\n}\nconst hashes = {};\nlet nextOptions = null;\nfunction deepEqual(a, b) {\n\tif (a === b) return true;\n\tif (Array.isArray(a) && Array.isArray(b)) {\n\t\tif (a.length !== b.length) return false;\n\t\tfor (let i = 0; i < a.length; i++) if (!deepEqual(a[i], b[i])) return false;\n\t\treturn true;\n\t}\n\tif (typeof a === \"object\" && typeof b === \"object\") {\n\t\tconst keysA = Object.keys(a);\n\t\tconst keysB = Object.keys(b);\n\t\tif (keysA.length !== keysB.length) return false;\n\t\tfor (const key of keysA) if (!deepEqual(a[key], b[key])) return false;\n\t\treturn true;\n\t}\n\treturn false;\n}\n\nexport { canDismiss, canGoBack, cleanup, consumePendingNavigationAction, dismiss, dismissAll, getPreloadHistory, getSafeWindowPathname2 as getSafeWindowPathname, getSortedRoutes, getValidationState, goBack, handleNavigationContainerStateChange, hasAttemptedToHideSplash, initClientMatches, initialPathname, initialState, initialize, isRouteProtected, lastIntendedPathname, linkTo, navigate, navigationRef, preloadRoute, preloadedLoaderData, preloadingLoader, push, registerProtectedRoutes, replace, rootComponent, rootState, rootStateSnapshot, routeInfo, routeInfoSnapshot, routeNode, setLoadingState, setParams, setValidationState, snapshot, subscribeToLoadingState, subscribeToRootState, subscribeToStore, subscribeToValidationState, unregisterProtectedRoutes, updateState, useOneRouter, useStoreRootState, useStoreRouteInfo, useValidationState };"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import Path from "node:path";
2
1
  function getPathnameFromFilePath(inputPath, params = {}, strict = false, options = {}) {
3
2
  const path = inputPath.replace(/\+(spa|ssg|ssr|api)\.tsx?$/, "");
4
- const file = Path.basename(path);
3
+ const lastSlash = path.lastIndexOf("/");
4
+ const file = path.slice(lastSlash + 1);
5
5
  const fileName = options.preserveExtensions ? file : file.replace(/\.[a-z]+$/, "");
6
6
  function paramsError(part) {
7
7
  throw new Error(`[one] Params doesn't fit route:
@@ -13,7 +13,7 @@ function getPathnameFromFilePath(inputPath, params = {}, strict = false, options
13
13
 
14
14
  ${JSON.stringify(params, null, 2)}`);
15
15
  }
16
- const dirname = Path.dirname(path).split("/").map(segment => segment.replace(/\+(api|ssg|ssr|spa)$/, "")).join("/").replace(/\([^/]+\)/gi, "").replace(/\[([^\]]+)\]/g, (_, paramName) => {
16
+ const dirname = (lastSlash === -1 ? "." : path.slice(0, lastSlash) || "/").split("/").map(segment => segment.replace(/\+(api|ssg|ssr|spa)$/, "")).join("/").replace(/\([^/]+\)/gi, "").replace(/\[([^\]]+)\]/g, (_, paramName) => {
17
17
  const value = params[paramName];
18
18
  if (value != null) return String(value);
19
19
  if (strict) throw paramsError(paramName);
@@ -1 +1 @@
1
- {"version":3,"names":["Path","getPathnameFromFilePath","inputPath","params","strict","options","path","replace","file","basename","fileName","preserveExtensions","paramsError","part","Error","JSON","stringify","dirname","split","map","segment","join","_","paramName","value","String","nameWithParams","includeIndex","startsWith","found","slice","length"],"sources":["../../../src/utils/getPathnameFromFilePath.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AAEV,SAASC,wBACdC,SAAA,EACAC,MAAA,GAAS,CAAC,GACVC,MAAA,GAAS,OACTC,OAAA,GAAoE,CAAC,GACrE;EACA,MAAMC,IAAA,GAAOJ,SAAA,CAAUK,OAAA,CAAQ,8BAA8B,EAAE;EAC/D,MAAMC,IAAA,GAAOR,IAAA,CAAKS,QAAA,CAASH,IAAI;EAC/B,MAAMI,QAAA,GAAWL,OAAA,CAAQM,kBAAA,GAAqBH,IAAA,GAAOA,IAAA,CAAKD,OAAA,CAAQ,aAAa,EAAE;EAEjF,SAASK,YAAYC,IAAA,EAAc;IACjC,MAAM,IAAIC,KAAA,CACR;AAAA;AAAA,gBAEUR,IAAI;AAAA,gBACJO,IAAI;AAAA,oBACAH,QAAQ;AAAA;AAAA;AAAA,EAG1BK,IAAA,CAAKC,SAAA,CAAUb,MAAA,EAAQ,MAAM,CAAC,CAAC,EAC7B;EACF;EAGA,MAAMc,OAAA,GAAUjB,IAAA,CAAKiB,OAAA,CAAQX,IAAI,EAC9BY,KAAA,CAAM,GAAG,EACTC,GAAA,CAAKC,OAAA,IAAYA,OAAA,CAAQb,OAAA,CAAQ,wBAAwB,EAAE,CAAC,EAC5Dc,IAAA,CAAK,GAAG,EACRd,OAAA,CAAQ,eAAe,EAAE,EACzBA,OAAA,CAAQ,iBAAiB,CAACe,CAAA,EAAGC,SAAA,KAAc;IAC1C,MAAMC,KAAA,GAAQrB,MAAA,CAAOoB,SAAS;IAC9B,IAAIC,KAAA,IAAS,MAAM,OAAOC,MAAA,CAAOD,KAAK;IACtC,IAAIpB,MAAA,EAAQ,MAAMQ,WAAA,CAAYW,SAAS;IACvC,OAAO,MAAMA,SAAA;EACf,CAAC;EAEH,MAAMG,cAAA,IAAkB,MAAM;IAC5B,IAAIhB,QAAA,KAAa,WAAW,CAACL,OAAA,CAAQsB,YAAA,EAAc;MACjD,OAAO;IACT;IACA,IAAIjB,QAAA,CAASkB,UAAA,CAAW,MAAM,GAAG;MAC/B,MAAMf,IAAA,GAAOH,QAAA,CAASH,OAAA,CAAQ,QAAQ,EAAE,EAAEA,OAAA,CAAQ,KAAK,EAAE;MACzD,IAAI,CAACJ,MAAA,CAAOU,IAAI,GAAG;QACjB,IAAIT,MAAA,EAAQ;UACV,MAAMQ,WAAA,CAAYC,IAAI;QACxB;QACA,OAAO;MACT;MACA,OAAO,IAAIV,MAAA,CAAOU,IAAI,CAAC;IACzB;IACA,OAAO,IAAIH,QAAA,CACRQ,KAAA,CAAM,GAAG,EACTC,GAAA,CAAKN,IAAA,IAAS;MACb,IAAIA,IAAA,CAAK,CAAC,MAAM,KAAK;QACnB,MAAMgB,KAAA,GAAQ1B,MAAA,CAAOU,IAAA,CAAKiB,KAAA,CAAM,GAAGjB,IAAA,CAAKkB,MAAA,GAAS,CAAC,CAAC;QACnD,IAAI,CAACF,KAAA,EAAO;UACV,IAAIzB,MAAA,EAAQ;YACV,MAAMQ,WAAA,CAAYC,IAAI;UACxB;UAEA,OAAO,MAAMA,IAAA,CAAKN,OAAA,CAAQ,KAAK,EAAE,EAAEA,OAAA,CAAQ,KAAK,EAAE;QACpD;QACA,OAAOsB,KAAA;MACT;MACA,OAAOhB,IAAA;IACT,CAAC,EACAQ,IAAA,CAAK,GAAG,CAAC;EACd,GAAG;EAGH,OAAO,GAAGJ,OAAO,GAAGS,cAAc,GAAGnB,OAAA,CAAQ,WAAW,GAAG;AAC7D","ignoreList":[]}
1
+ {"version":3,"names":["getPathnameFromFilePath","inputPath","params","strict","options","path","replace","lastSlash","lastIndexOf","file","slice","fileName","preserveExtensions","paramsError","part","Error","JSON","stringify","dirname","split","map","segment","join","_","paramName","value","String","nameWithParams","includeIndex","startsWith","found","length"],"sources":["../../../src/utils/getPathnameFromFilePath.ts"],"sourcesContent":[null],"mappings":"AAAO,SAASA,wBACdC,SAAA,EACAC,MAAA,GAAS,CAAC,GACVC,MAAA,GAAS,OACTC,OAAA,GAAoE,CAAC,GACrE;EACA,MAAMC,IAAA,GAAOJ,SAAA,CAAUK,OAAA,CAAQ,8BAA8B,EAAE;EAC/D,MAAMC,SAAA,GAAYF,IAAA,CAAKG,WAAA,CAAY,GAAG;EACtC,MAAMC,IAAA,GAAOJ,IAAA,CAAKK,KAAA,CAAMH,SAAA,GAAY,CAAC;EACrC,MAAMI,QAAA,GAAWP,OAAA,CAAQQ,kBAAA,GAAqBH,IAAA,GAAOA,IAAA,CAAKH,OAAA,CAAQ,aAAa,EAAE;EAEjF,SAASO,YAAYC,IAAA,EAAc;IACjC,MAAM,IAAIC,KAAA,CACR;AAAA;AAAA,gBAEUV,IAAI;AAAA,gBACJS,IAAI;AAAA,oBACAH,QAAQ;AAAA;AAAA;AAAA,EAG1BK,IAAA,CAAKC,SAAA,CAAUf,MAAA,EAAQ,MAAM,CAAC,CAAC,EAC7B;EACF;EAGA,MAAMgB,OAAA,IAAWX,SAAA,KAAc,KAAK,MAAMF,IAAA,CAAKK,KAAA,CAAM,GAAGH,SAAS,KAAK,KACnEY,KAAA,CAAM,GAAG,EACTC,GAAA,CAAKC,OAAA,IAAYA,OAAA,CAAQf,OAAA,CAAQ,wBAAwB,EAAE,CAAC,EAC5DgB,IAAA,CAAK,GAAG,EACRhB,OAAA,CAAQ,eAAe,EAAE,EACzBA,OAAA,CAAQ,iBAAiB,CAACiB,CAAA,EAAGC,SAAA,KAAc;IAC1C,MAAMC,KAAA,GAAQvB,MAAA,CAAOsB,SAAS;IAC9B,IAAIC,KAAA,IAAS,MAAM,OAAOC,MAAA,CAAOD,KAAK;IACtC,IAAItB,MAAA,EAAQ,MAAMU,WAAA,CAAYW,SAAS;IACvC,OAAO,MAAMA,SAAA;EACf,CAAC;EAEH,MAAMG,cAAA,IAAkB,MAAM;IAC5B,IAAIhB,QAAA,KAAa,WAAW,CAACP,OAAA,CAAQwB,YAAA,EAAc;MACjD,OAAO;IACT;IACA,IAAIjB,QAAA,CAASkB,UAAA,CAAW,MAAM,GAAG;MAC/B,MAAMf,IAAA,GAAOH,QAAA,CAASL,OAAA,CAAQ,QAAQ,EAAE,EAAEA,OAAA,CAAQ,KAAK,EAAE;MACzD,IAAI,CAACJ,MAAA,CAAOY,IAAI,GAAG;QACjB,IAAIX,MAAA,EAAQ;UACV,MAAMU,WAAA,CAAYC,IAAI;QACxB;QACA,OAAO;MACT;MACA,OAAO,IAAIZ,MAAA,CAAOY,IAAI,CAAC;IACzB;IACA,OAAO,IAAIH,QAAA,CACRQ,KAAA,CAAM,GAAG,EACTC,GAAA,CAAKN,IAAA,IAAS;MACb,IAAIA,IAAA,CAAK,CAAC,MAAM,KAAK;QACnB,MAAMgB,KAAA,GAAQ5B,MAAA,CAAOY,IAAA,CAAKJ,KAAA,CAAM,GAAGI,IAAA,CAAKiB,MAAA,GAAS,CAAC,CAAC;QACnD,IAAI,CAACD,KAAA,EAAO;UACV,IAAI3B,MAAA,EAAQ;YACV,MAAMU,WAAA,CAAYC,IAAI;UACxB;UAEA,OAAO,MAAMA,IAAA,CAAKR,OAAA,CAAQ,KAAK,EAAE,EAAEA,OAAA,CAAQ,KAAK,EAAE;QACpD;QACA,OAAOwB,KAAA;MACT;MACA,OAAOhB,IAAA;IACT,CAAC,EACAQ,IAAA,CAAK,GAAG,CAAC;EACd,GAAG;EAGH,OAAO,GAAGJ,OAAO,GAAGS,cAAc,GAAGrB,OAAA,CAAQ,WAAW,GAAG;AAC7D","ignoreList":[]}
@@ -1,10 +1,10 @@
1
- import Path from "path";
2
1
  function getPathnameFromFilePath(inputPath) {
3
2
  var params = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {},
4
3
  strict = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : false,
5
4
  options = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : {};
6
5
  var path = inputPath.replace(/\+(spa|ssg|ssr|api)\.tsx?$/, "");
7
- var file = Path.basename(path);
6
+ var lastSlash = path.lastIndexOf("/");
7
+ var file = path.slice(lastSlash + 1);
8
8
  var fileName = options.preserveExtensions ? file : file.replace(/\.[a-z]+$/, "");
9
9
  function paramsError(part) {
10
10
  throw new Error(`[one] Params doesn't fit route:
@@ -16,7 +16,7 @@ function getPathnameFromFilePath(inputPath) {
16
16
 
17
17
  ${JSON.stringify(params, null, 2)}`);
18
18
  }
19
- var dirname = Path.dirname(path).split("/").map(function (segment) {
19
+ var dirname = (lastSlash === -1 ? "." : path.slice(0, lastSlash) || "/").split("/").map(function (segment) {
20
20
  return segment.replace(/\+(api|ssg|ssr|spa)$/, "");
21
21
  }).join("/").replace(/\([^/]+\)/gi, "").replace(/\[([^\]]+)\]/g, function (_, paramName) {
22
22
  var value = params[paramName];
@@ -1 +1 @@
1
- {"version":3,"names":["Path","getPathnameFromFilePath","inputPath","params","arguments","length","strict","options","path","replace","file","basename","fileName","preserveExtensions","paramsError","part","Error","JSON","stringify","dirname","split","map","segment","join","_","paramName","value","String","nameWithParams","includeIndex","startsWith","part2","found","slice"],"sources":["../../../src/utils/getPathnameFromFilePath.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AAEV,SAASC,wBACdC,SAAA,EACA;EAIA,IAAAC,MAAM,GAAOC,SAAA,CAAUC,MAAA,GAAQ,KAAAD,SAAA,iBAAgCA,SAAA;IAAAE,MAAA,GAAAF,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;IAAAG,OAAA,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EAC/D,IAAAI,IAAM,GAAAN,SAAY,CAAAO,OAAS,6BAAI;EAC/B,IAAAC,IAAM,GAAAV,IAAA,CAAAW,QAAW,CAAQH,IAAA;EAEzB,IAAAI,QAAS,GAAAL,OAAY,CAAAM,kBAAc,GAAAH,IAAA,GAAAA,IAAA,CAAAD,OAAA;EACjC,SAAMK,WAAIA,CAAAC,IAAA;IAAA,MACR,IAAAC,KAAA;AAAA;AAAA,gBAEUR,IAAI;AAAA,gBACJO,IAAI;AAAA,oBACAH,QAAQ;AAAA;AAAA;AAAA,EAG1BK,IAAA,CAAKC,SAAA,CAAUf,MAAA,EAAQ,MAAM,CAAC,CAAC;EAAA;EAE/B,IAAAgB,OAAA,GAAAnB,IAAA,CAAAmB,OAAA,CAAAX,IAAA,EAAAY,KAAA,MAAAC,GAAA,WAAAC,OAAA;IAGA,OAAMA,OAAU,CAAAb,OAAK,uBAElB,IAAK;EAIJ,GAAAc,IAAA,CAAM,KAAAd,OAAQ,cAAgB,MAAAA,OAAA,4BAAAe,CAAA,EAAAC,SAAA;IAC9B,IAAIC,KAAA,GAAAvB,MAAe,CAAAsB,SAAO;IAC1B,IAAIC,KAAA,IAAQ,MAAM,OAAAC,MAAY,CAAAD,KAAA,CAAS;IACvC,IAAApB,MAAO,QAAMQ,WAAA,CAAAW,SAAA;IACd,aAAAA,SAAA;EAEH;EACE,IAAAG,cAAI,GAAa,YAAY;IAC3B,IAAAhB,QAAO,iBAAAL,OAAA,CAAAsB,YAAA;MACT;IACA;IACE,IAAAjB,QAAM,CAAAkB,UAAO,CAAS,SAAQ;MAC9B,IAAIf,IAAC,GAAAH,QAAc,CAAAH,OAAA,aAAAA,OAAA;MACjB,KAAAN,MAAI,CAAAY,IAAQ;QACV,IAAAT,MAAM;UACR,MAAAQ,WAAA,CAAAC,IAAA;QACA;QACF;MACA;MACF,WAAAZ,MAAA,CAAAY,IAAA;IACA;IAGI,OAAI,IAAKH,QAAO,CAAAQ,KAAK,MAAAC,GAAA,WAAAU,KAAA;MACnB,IAAAA,KAAM,QAAQ;QACd,IAAIC,KAAC,GAAO7B,MAAA,CAAA4B,KAAA,CAAAE,KAAA,IAAAF,KAAA,CAAA1B,MAAA;QACV,KAAA2B,KAAI;UACF,IAAA1B,MAAM;YACR,MAAAQ,WAAA,CAAAiB,KAAA;UAEA;UACF,aAAAA,KAAA,CAAAtB,OAAA,UAAAA,OAAA;QACA;QACF,OAAAuB,KAAA;MACA;MACD,OACKD,KAAI;IACd,CAAG,EAAAR,IAAA;EAGH;EACF,UAAAJ,OAAA,GAAAS,cAAA,GAAAnB,OAAA","ignoreList":[]}
1
+ {"version":3,"names":["getPathnameFromFilePath","inputPath","params","arguments","length","strict","options","path","replace","lastSlash","lastIndexOf","file","slice","fileName","preserveExtensions","paramsError","part","Error","JSON","stringify","dirname","split","map","segment","join","_","paramName","value","String","nameWithParams","includeIndex","startsWith","part2","found"],"sources":["../../../src/utils/getPathnameFromFilePath.ts"],"sourcesContent":[null],"mappings":"AAAO,SAASA,wBACdC,SAAA,EACA;EAIA,IAAAC,MAAM,GAAOC,SAAA,CAAUC,MAAA,GAAQ,KAAAD,SAAA,iBAAgCA,SAAA;IAAAE,MAAA,GAAAF,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;IAAAG,OAAA,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,iBAAAA,SAAA;EAC/D,IAAAI,IAAM,GAAAN,SAAY,CAAAO,OAAK,6BAAe;EACtC,IAAAC,SAAa,GAAAF,IAAK,CAAAG,WAAM,IAAY,CAAC;EACrC,IAAAC,IAAM,GAAAJ,IAAA,CAAAK,KAAW,CAAAH,SAAQ;EAEzB,IAAAI,QAAS,GAAAP,OAAY,CAAAQ,kBAAc,GAAAH,IAAA,GAAAA,IAAA,CAAAH,OAAA;EACjC,SAAMO,WAAIA,CAAAC,IAAA;IAAA,MACR,IAAAC,KAAA;AAAA;AAAA,gBAEUV,IAAI;AAAA,gBACJS,IAAI;AAAA,oBACAH,QAAQ;AAAA;AAAA;AAAA,EAG1BK,IAAA,CAAKC,SAAA,CAAUjB,MAAA,EAAQ,MAAM,CAAC,CAAC;EAAA;EAE/B,IAAAkB,OAAA,IAAAX,SAAA,gBAAAF,IAAA,CAAAK,KAAA,IAAAH,SAAA,UAAAY,KAAA,MAAAC,GAAA,WAAAC,OAAA;IAGA,OAAMA,OAAA,CAAWf,OAAA,uBAA8B;EAM3C,GAAAgB,IAAA,CAAM,KAAAhB,OAAQ,cAAgB,MAAAA,OAAA,4BAAAiB,CAAA,EAAAC,SAAA;IAC9B,IAAIC,KAAA,GAAAzB,MAAe,CAAAwB,SAAO;IAC1B,IAAIC,KAAA,IAAQ,MAAM,OAAAC,MAAY,CAAAD,KAAA,CAAS;IACvC,IAAAtB,MAAO,QAAMU,WAAA,CAAAW,SAAA;IACd,aAAAA,SAAA;EAEH;EACE,IAAAG,cAAI,GAAa,YAAY;IAC3B,IAAAhB,QAAO,iBAAAP,OAAA,CAAAwB,YAAA;MACT;IACA;IACE,IAAAjB,QAAM,CAAAkB,UAAO,CAAS,SAAQ;MAC9B,IAAIf,IAAC,GAAAH,QAAc,CAAAL,OAAA,aAAAA,OAAA;MACjB,KAAAN,MAAI,CAAAc,IAAQ;QACV,IAAAX,MAAM;UACR,MAAAU,WAAA,CAAAC,IAAA;QACA;QACF;MACA;MACF,WAAAd,MAAA,CAAAc,IAAA;IACA;IAGI,OAAI,IAAKH,QAAO,CAAAQ,KAAK,MAAAC,GAAA,WAAAU,KAAA;MACnB,IAAAA,KAAM,QAAQ;QACd,IAAIC,KAAC,GAAO/B,MAAA,CAAA8B,KAAA,CAAApB,KAAA,IAAAoB,KAAA,CAAA5B,MAAA;QACV,KAAA6B,KAAI;UACF,IAAA5B,MAAM;YACR,MAAAU,WAAA,CAAAiB,KAAA;UAEA;UACF,aAAAA,KAAA,CAAAxB,OAAA,UAAAA,OAAA;QACA;QACF,OAAAyB,KAAA;MACA;MACD,OACKD,KAAI;IACd,CAAG,EAAAR,IAAA;EAGH;EACF,UAAAJ,OAAA,GAAAS,cAAA,GAAArB,OAAA","ignoreList":[]}
@@ -168,6 +168,13 @@ export { wrappedMiddlewareFunction as default }
168
168
  dest
169
169
  };
170
170
  });
171
+ const spaRoutes = buildInfoForWriting.manifest.pageRoutes.filter(route => route.type === "spa" && !route.isNotFound).flatMap(route => {
172
+ const htmlPath = routeToBuildInfo[route.file]?.htmlPath;
173
+ return htmlPath ? [{
174
+ src: route.namedRegex,
175
+ dest: htmlPath
176
+ }] : [];
177
+ });
171
178
  const vercelConfigFilePath = resolve(join(oneOptionsRoot, ".vercel/output", "config.json"));
172
179
  await writeJSON(vercelConfigFilePath, {
173
180
  ...vercelBuildOutputConfigBase,
@@ -179,7 +186,7 @@ export { wrappedMiddlewareFunction as default }
179
186
  handle: "rewrite"
180
187
  },
181
188
  // SSR loader routes must come before dynamic page routes
182
- ...ssrLoaderRoutes, ...buildInfoForWriting.manifest.allRoutes.filter(r => r.routeKeys && Object.keys(r.routeKeys).length > 0).map(r => ({
189
+ ...ssrLoaderRoutes, ...spaRoutes, ...buildInfoForWriting.manifest.allRoutes.filter(r => r.routeKeys && Object.keys(r.routeKeys).length > 0).map(r => ({
183
190
  src: r.namedRegex,
184
191
  dest: `${getPathFromRoute(r) || "/"}?${Object.entries(r.routeKeys).map(([k, v]) => `${k}=$${v}`).join("&")}`
185
192
  }))]