one 1.1.485 → 1.1.486

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 (49) hide show
  1. package/dist/cjs/hooks.cjs +8 -5
  2. package/dist/cjs/hooks.js +7 -6
  3. package/dist/cjs/hooks.js.map +1 -1
  4. package/dist/cjs/hooks.native.js +7 -6
  5. package/dist/cjs/hooks.native.js.map +2 -2
  6. package/dist/cjs/router/Route.cjs +4 -1
  7. package/dist/cjs/router/Route.js +2 -2
  8. package/dist/cjs/router/Route.js.map +1 -1
  9. package/dist/cjs/router/Route.native.js +4 -2
  10. package/dist/cjs/router/Route.native.js.map +2 -2
  11. package/dist/cjs/router/RouteInfoContext.cjs +61 -0
  12. package/dist/cjs/router/RouteInfoContext.js +51 -0
  13. package/dist/cjs/router/RouteInfoContext.js.map +6 -0
  14. package/dist/cjs/router/RouteInfoContext.native.js +50 -0
  15. package/dist/cjs/router/RouteInfoContext.native.js.map +6 -0
  16. package/dist/esm/hooks.js +9 -7
  17. package/dist/esm/hooks.js.map +1 -1
  18. package/dist/esm/hooks.mjs +10 -7
  19. package/dist/esm/hooks.mjs.map +1 -1
  20. package/dist/esm/hooks.native.js +11 -7
  21. package/dist/esm/hooks.native.js.map +1 -1
  22. package/dist/esm/router/Route.js +2 -1
  23. package/dist/esm/router/Route.js.map +1 -1
  24. package/dist/esm/router/Route.mjs +4 -1
  25. package/dist/esm/router/Route.mjs.map +1 -1
  26. package/dist/esm/router/Route.native.js +4 -1
  27. package/dist/esm/router/Route.native.js.map +1 -1
  28. package/dist/esm/router/RouteInfoContext.js +38 -0
  29. package/dist/esm/router/RouteInfoContext.js.map +6 -0
  30. package/dist/esm/router/RouteInfoContext.mjs +37 -0
  31. package/dist/esm/router/RouteInfoContext.mjs.map +1 -0
  32. package/dist/esm/router/RouteInfoContext.native.js +39 -0
  33. package/dist/esm/router/RouteInfoContext.native.js.map +1 -0
  34. package/package.json +15 -15
  35. package/src/hooks.tsx +29 -8
  36. package/src/router/Route.tsx +7 -2
  37. package/src/router/RouteInfoContext.tsx +94 -0
  38. package/types/hooks.d.ts.map +1 -1
  39. package/types/layouts/Drawer.d.ts +14 -4
  40. package/types/layouts/Drawer.d.ts.map +1 -1
  41. package/types/layouts/Stack.d.ts +14 -4
  42. package/types/layouts/Stack.d.ts.map +1 -1
  43. package/types/layouts/Tabs.d.ts +14 -4
  44. package/types/layouts/Tabs.d.ts.map +1 -1
  45. package/types/router/Route.d.ts.map +1 -1
  46. package/types/router/RouteInfoContext.d.ts +27 -0
  47. package/types/router/RouteInfoContext.d.ts.map +1 -0
  48. package/types/views/Navigator.d.ts +2 -2
  49. package/types/views/Navigator.d.ts.map +1 -1
@@ -49,12 +49,15 @@ var import_react = __toESM(require("react"), 1),
49
49
  import_imperative_api = require("./router/imperative-api.cjs"),
50
50
  import_Route = require("./router/Route.cjs"),
51
51
  import_router = require("./router/router.cjs"),
52
+ import_RouteInfoContext = require("./router/RouteInfoContext.cjs"),
52
53
  import_jsx_runtime = require("react/jsx-runtime");
53
54
  function useRootNavigationState() {
54
55
  return (0, import_router.useStoreRootState)();
55
56
  }
56
57
  function useRouteInfo() {
57
- return (0, import_router.useStoreRouteInfo)();
58
+ const routeInfoFromContext = (0, import_react.useContext)(import_RouteInfoContext.RouteInfoContext),
59
+ routeInfoFromRootState = (0, import_router.useStoreRouteInfo)();
60
+ return (0, import_Route.useRouteNode)()?.type === "layout" ? routeInfoFromRootState : routeInfoFromContext || routeInfoFromRootState;
58
61
  }
59
62
  function useNavigationContainerRef() {
60
63
  return import_router.navigationRef;
@@ -79,16 +82,16 @@ function useRouter() {
79
82
  return import_imperative_api.router;
80
83
  }
81
84
  function useUnstableGlobalHref() {
82
- return (0, import_router.useStoreRouteInfo)().unstable_globalHref;
85
+ return useRouteInfo().unstable_globalHref;
83
86
  }
84
87
  function useSegments() {
85
- return (0, import_router.useStoreRouteInfo)().segments;
88
+ return useRouteInfo().segments;
86
89
  }
87
90
  function usePathname() {
88
- return (0, import_router.useStoreRouteInfo)().pathname;
91
+ return useRouteInfo().pathname;
89
92
  }
90
93
  function useActiveParams() {
91
- return (0, import_router.useStoreRouteInfo)().params;
94
+ return useRouteInfo().params;
92
95
  }
93
96
  const useLocalSearchParams = useParams,
94
97
  useGlobalSearchParams = useActiveParams;
package/dist/cjs/hooks.js CHANGED
@@ -36,12 +36,13 @@ __export(hooks_exports, {
36
36
  useUnstableGlobalHref: () => useUnstableGlobalHref
37
37
  });
38
38
  module.exports = __toCommonJS(hooks_exports);
39
- var import_react = __toESM(require("react"), 1), import_imperative_api = require("./router/imperative-api"), import_Route = require("./router/Route"), import_router = require("./router/router"), import_jsx_runtime = require("react/jsx-runtime");
39
+ var import_react = __toESM(require("react"), 1), import_imperative_api = require("./router/imperative-api"), import_Route = require("./router/Route"), import_router = require("./router/router"), import_RouteInfoContext = require("./router/RouteInfoContext"), import_jsx_runtime = require("react/jsx-runtime");
40
40
  function useRootNavigationState() {
41
41
  return (0, import_router.useStoreRootState)();
42
42
  }
43
43
  function useRouteInfo() {
44
- return (0, import_router.useStoreRouteInfo)();
44
+ const routeInfoFromContext = (0, import_react.useContext)(import_RouteInfoContext.RouteInfoContext), routeInfoFromRootState = (0, import_router.useStoreRouteInfo)();
45
+ return (0, import_Route.useRouteNode)()?.type === "layout" ? routeInfoFromRootState : routeInfoFromContext || routeInfoFromRootState;
45
46
  }
46
47
  function useNavigationContainerRef() {
47
48
  return import_router.navigationRef;
@@ -61,16 +62,16 @@ function useRouter() {
61
62
  return import_imperative_api.router;
62
63
  }
63
64
  function useUnstableGlobalHref() {
64
- return (0, import_router.useStoreRouteInfo)().unstable_globalHref;
65
+ return useRouteInfo().unstable_globalHref;
65
66
  }
66
67
  function useSegments() {
67
- return (0, import_router.useStoreRouteInfo)().segments;
68
+ return useRouteInfo().segments;
68
69
  }
69
70
  function usePathname() {
70
- return (0, import_router.useStoreRouteInfo)().pathname;
71
+ return useRouteInfo().pathname;
71
72
  }
72
73
  function useActiveParams() {
73
- return (0, import_router.useStoreRouteInfo)().params;
74
+ return useRouteInfo().params;
74
75
  }
75
76
  const useLocalSearchParams = useParams, useGlobalSearchParams = useActiveParams;
76
77
  function useParams() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/hooks.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAqD,8BAErD,wBAAuB,oCACvB,eAAmC,2BACnC,gBAAoE,4BAkC9D;AA9BC,SAAS,yBAAyB;AACvC,aAAO,iCAAkB;AAC3B;AAEO,SAAS,eAAe;AAC7B,aAAO,iCAAkB;AAC3B;AAGO,SAAS,4BAA4B;AAC1C,SAAO;AACT;AAEA,MAAM,mBAAe,4BAAc,EAAK;AAEjC,SAAS,OAAO,EAAE,KAAK,IAAO,SAAS,GAA0C;AAQtF,SAAI,OAAO,SAAW,MACb,WAIP,4CAAC,aAAa,UAAb,EAAsB,OAAO,IAE5B;AAAA,IAAC;AAAA;AAAA,MAEC,OAAK;AAAA,MACL,OAAO,EAAE,SAAS,WAAW;AAAA,MAE5B;AAAA;AAAA,EACH,GAEF;AAEJ;AAEO,SAAS,YAA8B;AAC5C,SAAO;AACT;AAMO,SAAS,wBAAgC;AAC9C,aAAO,iCAAkB,EAAE;AAC7B;AAqBO,SAAS,cAAgE;AAC9E,aAAO,iCAAkB,EAAE;AAC7B;AAGO,SAAS,cAAsB;AACpC,aAAO,iCAAkB,EAAE;AAC7B;AAWO,SAAS,kBAA2E;AACzF,aAAO,iCAAkB,EAAE;AAC7B;AAGO,MAAM,uBAAuB,WAGvB,wBAAwB;AAS9B,SAAS,YAAqE;AACnF,QAAM,SAAS,aAAAA,QAAM,WAAW,+BAAkB,KAAK,CAAC;AAExD,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAC3C,UAAI,MAAM,QAAQ,KAAK;AACrB,eAAO;AAAA,UACL;AAAA,UACA,MAAM,IAAI,CAAC,MAAM;AACf,gBAAI;AACF,qBAAO,mBAAmB,CAAC;AAAA,YAC7B,QAAQ;AACN,qBAAO;AAAA,YACT;AAAA,UACF,CAAC;AAAA,QACH;AAEF,UAAI;AACF,eAAO,CAAC,KAAK,mBAAmB,KAAe,CAAC;AAAA,MAClD,QAAQ;AACN,eAAO,CAAC,KAAK,KAAK;AAAA,MACpB;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAiE,8BAEjE,wBAAuB,oCACvB,eAAiD,2BACjD,gBAAoE,4BACpE,0BAAiC,sCAoD3B;AAhDC,SAAS,yBAAyB;AACvC,aAAO,iCAAkB;AAC3B;AAEO,SAAS,eAAe;AAI7B,QAAM,2BAAuB,yBAAW,wCAAgB,GAKlD,6BAAyB,iCAAkB;AAIjD,aAFkB,2BAAa,GAEhB,SAAS,WAEf,yBAIF,wBAAwB;AACjC;AAGO,SAAS,4BAA4B;AAC1C,SAAO;AACT;AAEA,MAAM,mBAAe,4BAAc,EAAK;AAEjC,SAAS,OAAO,EAAE,KAAK,IAAO,SAAS,GAA0C;AAQtF,SAAI,OAAO,SAAW,MACb,WAIP,4CAAC,aAAa,UAAb,EAAsB,OAAO,IAE5B;AAAA,IAAC;AAAA;AAAA,MAEC,OAAK;AAAA,MACL,OAAO,EAAE,SAAS,WAAW;AAAA,MAE5B;AAAA;AAAA,EACH,GAEF;AAEJ;AAEO,SAAS,YAA8B;AAC5C,SAAO;AACT;AAMO,SAAS,wBAAgC;AAC9C,SAAO,aAAa,EAAE;AACxB;AAqBO,SAAS,cAAgE;AAC9E,SAAO,aAAa,EAAE;AACxB;AAGO,SAAS,cAAsB;AACpC,SAAO,aAAa,EAAE;AACxB;AAWO,SAAS,kBAEM;AACpB,SAAO,aAAa,EAAE;AACxB;AAGO,MAAM,uBAAuB,WAGvB,wBAAwB;AAS9B,SAAS,YAAqE;AACnF,QAAM,SAAS,aAAAA,QAAM,WAAW,+BAAkB,KAAK,CAAC;AAExD,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAC3C,UAAI,MAAM,QAAQ,KAAK;AACrB,eAAO;AAAA,UACL;AAAA,UACA,MAAM,IAAI,CAAC,MAAM;AACf,gBAAI;AACF,qBAAO,mBAAmB,CAAC;AAAA,YAC7B,QAAQ;AACN,qBAAO;AAAA,YACT;AAAA,UACF,CAAC;AAAA,QACH;AAEF,UAAI;AACF,eAAO,CAAC,KAAK,mBAAmB,KAAe,CAAC;AAAA,MAClD,QAAQ;AACN,eAAO,CAAC,KAAK,KAAK;AAAA,MACpB;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
5
5
  "names": ["React"]
6
6
  }
@@ -37,12 +37,13 @@ __export(hooks_exports, {
37
37
  useUnstableGlobalHref: () => useUnstableGlobalHref
38
38
  });
39
39
  module.exports = __toCommonJS(hooks_exports);
40
- var import_jsx_runtime = require("react/jsx-runtime"), import_react = __toESM(require("react"), 1), import_imperative_api = require("./router/imperative-api"), import_Route = require("./router/Route"), import_router = require("./router/router");
40
+ var import_jsx_runtime = require("react/jsx-runtime"), import_react = __toESM(require("react"), 1), import_imperative_api = require("./router/imperative-api"), import_Route = require("./router/Route"), import_router = require("./router/router"), import_RouteInfoContext = require("./router/RouteInfoContext");
41
41
  function useRootNavigationState() {
42
42
  return (0, import_router.useStoreRootState)();
43
43
  }
44
44
  function useRouteInfo() {
45
- return (0, import_router.useStoreRouteInfo)();
45
+ var routeInfoFromContext = (0, import_react.useContext)(import_RouteInfoContext.RouteInfoContext), routeInfoFromRootState = (0, import_router.useStoreRouteInfo)(), routeNode = (0, import_Route.useRouteNode)();
46
+ return (routeNode == null ? void 0 : routeNode.type) === "layout" ? routeInfoFromRootState : routeInfoFromContext || routeInfoFromRootState;
46
47
  }
47
48
  function useNavigationContainerRef() {
48
49
  return import_router.navigationRef;
@@ -69,16 +70,16 @@ function useRouter() {
69
70
  return import_imperative_api.router;
70
71
  }
71
72
  function useUnstableGlobalHref() {
72
- return (0, import_router.useStoreRouteInfo)().unstable_globalHref;
73
+ return useRouteInfo().unstable_globalHref;
73
74
  }
74
75
  function useSegments() {
75
- return (0, import_router.useStoreRouteInfo)().segments;
76
+ return useRouteInfo().segments;
76
77
  }
77
78
  function usePathname() {
78
- return (0, import_router.useStoreRouteInfo)().pathname;
79
+ return useRouteInfo().pathname;
79
80
  }
80
81
  function useActiveParams() {
81
- return (0, import_router.useStoreRouteInfo)().params;
82
+ return useRouteInfo().params;
82
83
  }
83
84
  var useLocalSearchParams = useParams, useGlobalSearchParams = useActiveParams;
84
85
  function useParams() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/hooks.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,eAAqD,8BAErD,wBAAuB,oCACvB,eAAmC,2BACnC,gBAAoE;AAI7D,SAASA,yBAAAA;AACd,aAAOC,iCAAAA;AACT;AAEO,SAASC,eAAAA;AACd,aAAOC,iCAAAA;AACT;AAGO,SAASC,4BAAAA;AACd,SAAOC;AACT;AAEA,IAAMC,eAAeC,gDAAc,EAAA;AAE5B,SAASC,OAAO,OAA+D;MAA/D,EAAEC,KAAK,IAAOC,SAAQ,IAAtB;AAQrB,SAAI,OAAOC,SAAW,MACbD,WAIP,uCAAAE,KAACN,aAAaO,UAAQ;IAACC,OAAOL;;;MAE5B,uCAAAG,KAACG,OAAAA;;QAECC,OAAK;QACLC,OAAO;UAAEC,SAAS;QAAW;;;;;AAOrC;AAEO,SAASC,YAAAA;AACd,SAAOC;AACT;AAMO,SAASC,wBAAAA;AACd,aAAOlB,iCAAAA,EAAoBmB;AAC7B;AAqBO,SAASC,cAAAA;AACd,aAAOpB,iCAAAA,EAAoBqB;AAC7B;AAGO,SAASC,cAAAA;AACd,aAAOtB,iCAAAA,EAAoBuB;AAC7B;AAWO,SAASC,kBAAAA;AACd,aAAOxB,iCAAAA,EAAoByB;AAC7B;AAGO,IAAMC,uBAAuBC,WAGvBC,wBAAwBJ;AAS9B,SAASG,YAAAA;MACCE,mBAATJ,UAASI,oBAAAA,aAAAA,QAAMC,WAAWC,+BAAAA,OAAAA,QAAjBF,sBAAAA,SAAAA,oBAAwC,CAAC;AAExD,SAAOG,OAAOC,YACZD,OAAOE,QAAQT,MAAAA,EAAQU,IAAI,SAAA,OAAA;QAAC,CAACC,KAAKzB,KAAAA,IAAM;AACtC,QAAI0B,MAAMC,QAAQ3B,KAAAA;AAChB,aAAO;QACLyB;QACAzB,MAAMwB,IAAI,SAACI,GAAAA;AACT,cAAI;AACF,mBAAOC,mBAAmBD,CAAAA;UAC5B,QAAQ;AACN,mBAAOA;UACT;QACF,CAAA;;AAGJ,QAAI;AACF,aAAO;QAACH;QAAKI,mBAAmB7B,KAAAA;;IAClC,QAAQ;AACN,aAAO;QAACyB;QAAKzB;;IACf;EACF,CAAA,CAAA;AAEJ;",
5
- "names": ["useRootNavigationState", "useStoreRootState", "useRouteInfo", "useStoreRouteInfo", "useNavigationContainerRef", "navigationRef", "FrozeContext", "createContext", "Frozen", "on", "children", "window", "_jsx", "Provider", "value", "div", "inert", "style", "display", "useRouter", "router", "useUnstableGlobalHref", "unstable_globalHref", "useSegments", "segments", "usePathname", "pathname", "useActiveParams", "params", "useLocalSearchParams", "useParams", "useGlobalSearchParams", "React", "useContext", "RouteParamsContext", "Object", "fromEntries", "entries", "map", "key", "Array", "isArray", "v", "decodeURIComponent"]
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,eAAiE,8BAEjE,wBAAuB,oCACvB,eAAiD,2BACjD,gBAAoE,4BACpE,0BAAiC;AAI1B,SAASA,yBAAAA;AACd,aAAOC,iCAAAA;AACT;AAEO,SAASC,eAAAA;AAId,MAAMC,2BAAuBC,yBAAWC,wCAAAA,GAKlCC,6BAAyBC,iCAAAA,GAEzBC,gBAAYC,2BAAAA;AAElB,UAAID,aAAAA,OAAAA,SAAAA,UAAWE,UAAS,WAEfJ,yBAIFH,wBAAwBG;AACjC;AAGO,SAASK,4BAAAA;AACd,SAAOC;AACT;AAEA,IAAMC,eAAeC,gDAAc,EAAA;AAE5B,SAASC,OAAO,OAA+D;MAA/D,EAAEC,KAAK,IAAOC,SAAQ,IAAtB;AAQrB,SAAI,OAAOC,SAAW,MACbD,WAIP,uCAAAE,KAACN,aAAaO,UAAQ;IAACC,OAAOL;;;MAE5B,uCAAAG,KAACG,OAAAA;;QAECC,OAAK;QACLC,OAAO;UAAEC,SAAS;QAAW;;;;;AAOrC;AAEO,SAASC,YAAAA;AACd,SAAOC;AACT;AAMO,SAASC,wBAAAA;AACd,SAAO1B,aAAAA,EAAe2B;AACxB;AAqBO,SAASC,cAAAA;AACd,SAAO5B,aAAAA,EAAe6B;AACxB;AAGO,SAASC,cAAAA;AACd,SAAO9B,aAAAA,EAAe+B;AACxB;AAWO,SAASC,kBAAAA;AAGd,SAAOhC,aAAAA,EAAeiC;AACxB;AAGO,IAAMC,uBAAuBC,WAGvBC,wBAAwBJ;AAS9B,SAASG,YAAAA;MACCE,mBAATJ,UAASI,oBAAAA,aAAAA,QAAMnC,WAAWoC,+BAAAA,OAAAA,QAAjBD,sBAAAA,SAAAA,oBAAwC,CAAC;AAExD,SAAOE,OAAOC,YACZD,OAAOE,QAAQR,MAAAA,EAAQS,IAAI,SAAA,OAAA;QAAC,CAACC,KAAKxB,KAAAA,IAAM;AACtC,QAAIyB,MAAMC,QAAQ1B,KAAAA;AAChB,aAAO;QACLwB;QACAxB,MAAMuB,IAAI,SAACI,GAAAA;AACT,cAAI;AACF,mBAAOC,mBAAmBD,CAAAA;UAC5B,QAAQ;AACN,mBAAOA;UACT;QACF,CAAA;;AAGJ,QAAI;AACF,aAAO;QAACH;QAAKI,mBAAmB5B,KAAAA;;IAClC,QAAQ;AACN,aAAO;QAACwB;QAAKxB;;IACf;EACF,CAAA,CAAA;AAEJ;",
5
+ "names": ["useRootNavigationState", "useStoreRootState", "useRouteInfo", "routeInfoFromContext", "useContext", "RouteInfoContext", "routeInfoFromRootState", "useStoreRouteInfo", "routeNode", "useRouteNode", "type", "useNavigationContainerRef", "navigationRef", "FrozeContext", "createContext", "Frozen", "on", "children", "window", "_jsx", "Provider", "value", "div", "inert", "style", "display", "useRouter", "router", "useUnstableGlobalHref", "unstable_globalHref", "useSegments", "segments", "usePathname", "pathname", "useActiveParams", "params", "useLocalSearchParams", "useParams", "useGlobalSearchParams", "React", "RouteParamsContext", "Object", "fromEntries", "entries", "map", "key", "Array", "isArray", "v", "decodeURIComponent"]
6
6
  }
@@ -39,6 +39,7 @@ __export(Route_exports, {
39
39
  module.exports = __toCommonJS(Route_exports);
40
40
  var import_react = __toESM(require("react"), 1),
41
41
  import_matchers = require("./matchers.cjs"),
42
+ import_RouteInfoContext = require("./RouteInfoContext.cjs"),
42
43
  import_jsx_runtime = require("react/jsx-runtime");
43
44
  const RouteParamsContext = (0, import_react.createContext)({}),
44
45
  CurrentRouteContext = import_react.default.createContext(null);
@@ -60,7 +61,9 @@ function Route({
60
61
  value: route?.params,
61
62
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(CurrentRouteContext.Provider, {
62
63
  value: node,
63
- children
64
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_RouteInfoContext.RouteInfoContextProvider, {
65
+ children
66
+ })
64
67
  })
65
68
  });
66
69
  }
@@ -28,7 +28,7 @@ __export(Route_exports, {
28
28
  useRouteNode: () => useRouteNode
29
29
  });
30
30
  module.exports = __toCommonJS(Route_exports);
31
- var import_react = __toESM(require("react"), 1), import_matchers = require("./matchers"), import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_react = __toESM(require("react"), 1), import_matchers = require("./matchers"), import_RouteInfoContext = require("./RouteInfoContext"), import_jsx_runtime = require("react/jsx-runtime");
32
32
  const RouteParamsContext = (0, import_react.createContext)({}), CurrentRouteContext = import_react.default.createContext(null);
33
33
  process.env.NODE_ENV !== "production" && (CurrentRouteContext.displayName = "RouteNode");
34
34
  function useRouteNode() {
@@ -45,6 +45,6 @@ function Route({
45
45
  node,
46
46
  route
47
47
  }) {
48
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RouteParamsContext.Provider, { value: route?.params, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CurrentRouteContext.Provider, { value: node, children }) });
48
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RouteParamsContext.Provider, { value: route?.params, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CurrentRouteContext.Provider, { value: node, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_RouteInfoContext.RouteInfoContextProvider, { children }) }) });
49
49
  }
50
50
  //# sourceMappingURL=Route.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/router/Route.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAiE,8BAGjE,kBAA8B,uBA6ExB;AAjCC,MAAM,yBAAqB,4BAA8D,CAAC,CAAC,GAE5F,sBAAsB,aAAAA,QAAM,cAAgC,IAAI;AAElE,QAAQ,IAAI,aAAa,iBAC3B,oBAAoB,cAAc;AAI7B,SAAS,eAAiC;AAC/C,aAAO,yBAAW,mBAAmB;AACvC;AAEO,SAAS,gBAAwB;AACtC,QAAM,OAAO,aAAa;AAC1B,MAAI,QAAQ;AACV,UAAM,IAAI,MAAM,oDAAoD;AAEtE,aAAO,+BAAc,KAAK,UAAU;AACtC;AAGO,SAAS,MAAM;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SACE,4CAAC,mBAAmB,UAAnB,EAA4B,OAAO,OAAO,QACzC,sDAAC,oBAAoB,UAApB,EAA6B,OAAO,MAAO,UAAS,GACvD;AAEJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAiE,8BAGjE,kBAA8B,uBAC9B,0BAAyC,+BAgFjC;AApCD,MAAM,yBAAqB,4BAEhC,CAAC,CAAC,GAEE,sBAAsB,aAAAA,QAAM,cAAgC,IAAI;AAElE,QAAQ,IAAI,aAAa,iBAC3B,oBAAoB,cAAc;AAI7B,SAAS,eAAiC;AAC/C,aAAO,yBAAW,mBAAmB;AACvC;AAEO,SAAS,gBAAwB;AACtC,QAAM,OAAO,aAAa;AAC1B,MAAI,QAAQ;AACV,UAAM,IAAI,MAAM,oDAAoD;AAEtE,aAAO,+BAAc,KAAK,UAAU;AACtC;AAGO,SAAS,MAAM;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SACE,4CAAC,mBAAmB,UAAnB,EAA4B,OAAO,OAAO,QACzC,sDAAC,oBAAoB,UAApB,EAA6B,OAAO,MACnC,sDAAC,oDAA0B,UAAS,GACtC,GACF;AAEJ;",
5
5
  "names": ["React"]
6
6
  }
@@ -29,7 +29,7 @@ __export(Route_exports, {
29
29
  useRouteNode: () => useRouteNode
30
30
  });
31
31
  module.exports = __toCommonJS(Route_exports);
32
- var import_jsx_runtime = require("react/jsx-runtime"), import_react = __toESM(require("react"), 1), import_matchers = require("./matchers"), RouteParamsContext = /* @__PURE__ */ (0, import_react.createContext)({}), CurrentRouteContext = /* @__PURE__ */ import_react.default.createContext(null);
32
+ var import_jsx_runtime = require("react/jsx-runtime"), import_react = __toESM(require("react"), 1), import_matchers = require("./matchers"), import_RouteInfoContext = require("./RouteInfoContext"), RouteParamsContext = /* @__PURE__ */ (0, import_react.createContext)({}), CurrentRouteContext = /* @__PURE__ */ import_react.default.createContext(null);
33
33
  process.env.NODE_ENV !== "production" && (CurrentRouteContext.displayName = "RouteNode");
34
34
  function useRouteNode() {
35
35
  return (0, import_react.useContext)(CurrentRouteContext);
@@ -46,7 +46,9 @@ function Route(param) {
46
46
  value: route == null ? void 0 : route.params,
47
47
  children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CurrentRouteContext.Provider, {
48
48
  value: node,
49
- children
49
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_RouteInfoContext.RouteInfoContextProvider, {
50
+ children
51
+ })
50
52
  })
51
53
  });
52
54
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/router/Route.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,eAAiE,8BAGjE,kBAA8B,uBA4CjBA,qBAAqBC,gDAA8D,CAAC,CAAA,GAE3FC,sBAAsBC,6BAAAA,QAAMF,cAAgC,IAAA;AAE9DG,QAAQC,IAAIC,aAAa,iBAC3BJ,oBAAoBK,cAAc;AAI7B,SAASC,eAAAA;AACd,aAAOC,yBAAWP,mBAAAA;AACpB;AAEO,SAASQ,gBAAAA;AACd,MAAMC,OAAOH,aAAAA;AACb,MAAIG,QAAQ;AACV,UAAM,IAAIC,MAAM,oDAAA;AAElB,aAAOC,+BAAcF,KAAKG,UAAU;AACtC;AAGO,SAASC,MAAM,OAQrB;MARqB,EACpBC,UACAL,MACAM,MAAK,IAHe;AASpB,SACE,uCAAAC,KAAClB,mBAAmBmB,UAAQ;IAACC,OAAOH,SAAAA,OAAAA,SAAAA,MAAOI;cACzC,uCAAAH,KAAChB,oBAAoBiB,UAAQ;MAACC,OAAOT;;;;AAG3C;",
5
- "names": ["RouteParamsContext", "createContext", "CurrentRouteContext", "React", "process", "env", "NODE_ENV", "displayName", "useRouteNode", "useContext", "useContextKey", "node", "Error", "getContextKey", "contextKey", "Route", "children", "route", "_jsx", "Provider", "value", "params"]
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDAAA,eAAiE,8BAGjE,kBAA8B,uBAC9B,0BAAyC,+BA4C5BA,qBAAqBC,gDAEhC,CAAC,CAAA,GAEGC,sBAAsBC,6BAAAA,QAAMF,cAAgC,IAAA;AAE9DG,QAAQC,IAAIC,aAAa,iBAC3BJ,oBAAoBK,cAAc;AAI7B,SAASC,eAAAA;AACd,aAAOC,yBAAWP,mBAAAA;AACpB;AAEO,SAASQ,gBAAAA;AACd,MAAMC,OAAOH,aAAAA;AACb,MAAIG,QAAQ;AACV,UAAM,IAAIC,MAAM,oDAAA;AAElB,aAAOC,+BAAcF,KAAKG,UAAU;AACtC;AAGO,SAASC,MAAM,OAQrB;MARqB,EACpBC,UACAL,MACAM,MAAK,IAHe;AASpB,SACE,uCAAAC,KAAClB,mBAAmBmB,UAAQ;IAACC,OAAOH,SAAAA,OAAAA,SAAAA,MAAOI;cACzC,uCAAAH,KAAChB,oBAAoBiB,UAAQ;MAACC,OAAOT;gBACnC,uCAAAO,KAACI,kDAAAA;;;;;AAIT;",
5
+ "names": ["RouteParamsContext", "createContext", "CurrentRouteContext", "React", "process", "env", "NODE_ENV", "displayName", "useRouteNode", "useContext", "useContextKey", "node", "Error", "getContextKey", "contextKey", "Route", "children", "route", "_jsx", "Provider", "value", "params", "RouteInfoContextProvider"]
6
6
  }
@@ -0,0 +1,61 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: !0
9
+ });
10
+ },
11
+ __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
13
+ get: () => from[key],
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ return to;
17
+ };
18
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
+ value: !0
20
+ }), mod);
21
+ var RouteInfoContext_exports = {};
22
+ __export(RouteInfoContext_exports, {
23
+ RouteInfoContext: () => RouteInfoContext,
24
+ RouteInfoContextProvider: () => RouteInfoContextProvider
25
+ });
26
+ module.exports = __toCommonJS(RouteInfoContext_exports);
27
+ var import_react = require("react"),
28
+ import_core = require("@react-navigation/core"),
29
+ import_router = require("./router.cjs"),
30
+ import_jsx_runtime = require("react/jsx-runtime");
31
+ const RouteInfoContext = (0, import_react.createContext)(void 0);
32
+ function RouteInfoContextProvider({
33
+ children
34
+ }) {
35
+ const currentState = (0, import_core.useStateForPath)(),
36
+ currentStateRef = (0, import_react.useRef)(void 0),
37
+ lastStateRef = (0, import_react.useRef)(void 0),
38
+ cachedRouteInfoValueRef = (0, import_react.useRef)(void 0),
39
+ lazilyCalculatedRouteInfo = (0, import_react.useRef)();
40
+ return currentState && currentStateRef.current !== currentState && (lazilyCalculatedRouteInfo.current = makeLazilyCalculatedRouteInfo({
41
+ currentStateRef,
42
+ lastStateRef,
43
+ cachedRouteInfoValueRef
44
+ })), currentStateRef.current = currentState, /* @__PURE__ */(0, import_jsx_runtime.jsx)(RouteInfoContext.Provider, {
45
+ value: currentState ? lazilyCalculatedRouteInfo.current : void 0,
46
+ children
47
+ });
48
+ }
49
+ function makeLazilyCalculatedRouteInfo({
50
+ currentStateRef,
51
+ lastStateRef,
52
+ cachedRouteInfoValueRef
53
+ }) {
54
+ return new Proxy({}, {
55
+ get(_, p) {
56
+ const state = currentStateRef.current;
57
+ if (!state) throw new Error("[lazilyCalculatedRouteInfo] cannot get state");
58
+ return (!cachedRouteInfoValueRef.current || lastStateRef.current !== state) && (cachedRouteInfoValueRef.current = (0, import_router.getRouteInfo)(state), lastStateRef.current = state), cachedRouteInfoValueRef.current[p];
59
+ }
60
+ });
61
+ }
@@ -0,0 +1,51 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: !0 });
8
+ }, __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from == "object" || typeof from == "function")
10
+ for (let key of __getOwnPropNames(from))
11
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
+ var RouteInfoContext_exports = {};
16
+ __export(RouteInfoContext_exports, {
17
+ RouteInfoContext: () => RouteInfoContext,
18
+ RouteInfoContextProvider: () => RouteInfoContextProvider
19
+ });
20
+ module.exports = __toCommonJS(RouteInfoContext_exports);
21
+ var import_react = require("react"), import_core = require("@react-navigation/core"), import_router = require("./router"), import_jsx_runtime = require("react/jsx-runtime");
22
+ const RouteInfoContext = (0, import_react.createContext)(void 0);
23
+ function RouteInfoContextProvider({ children }) {
24
+ const currentState = (0, import_core.useStateForPath)(), currentStateRef = (0, import_react.useRef)(void 0), lastStateRef = (0, import_react.useRef)(void 0), cachedRouteInfoValueRef = (0, import_react.useRef)(void 0), lazilyCalculatedRouteInfo = (0, import_react.useRef)();
25
+ return currentState && currentStateRef.current !== currentState && (lazilyCalculatedRouteInfo.current = makeLazilyCalculatedRouteInfo({
26
+ currentStateRef,
27
+ lastStateRef,
28
+ cachedRouteInfoValueRef
29
+ })), currentStateRef.current = currentState, /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
30
+ RouteInfoContext.Provider,
31
+ {
32
+ value: currentState ? lazilyCalculatedRouteInfo.current : void 0,
33
+ children
34
+ }
35
+ );
36
+ }
37
+ function makeLazilyCalculatedRouteInfo({
38
+ currentStateRef,
39
+ lastStateRef,
40
+ cachedRouteInfoValueRef
41
+ }) {
42
+ return new Proxy({}, {
43
+ get(_, p) {
44
+ const state = currentStateRef.current;
45
+ if (!state)
46
+ throw new Error("[lazilyCalculatedRouteInfo] cannot get state");
47
+ return (!cachedRouteInfoValueRef.current || lastStateRef.current !== state) && (cachedRouteInfoValueRef.current = (0, import_router.getRouteInfo)(state), lastStateRef.current = state), cachedRouteInfoValueRef.current[p];
48
+ }
49
+ });
50
+ }
51
+ //# sourceMappingURL=RouteInfoContext.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/router/RouteInfoContext.tsx"],
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAsC,kBAEtC,cAAgC,mCAChC,gBAA6B,qBAsDzB;AApDG,MAAM,uBAAmB,4BAAqC,MAAS;AAsBvE,SAAS,yBAAyB,EAAE,SAAS,GAAkC;AACpF,QAAM,mBAAe,6BAAgB,GAO/B,sBAAkB,qBAA4B,MAAS,GAOvD,mBAAe,qBAA4B,MAAS,GACpD,8BAA0B,qBAA8B,MAAS,GAEjE,gCAA4B,qBAA8B;AAEhE,SAAI,gBAAgB,gBAAgB,YAAY,iBAC9C,0BAA0B,UAAU,8BAA8B;AAAA,IAChE;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC,IAEH,gBAAgB,UAAU,cAGxB;AAAA,IAAC,iBAAiB;AAAA,IAAjB;AAAA,MACC,OAAO,eAAe,0BAA0B,UAAU;AAAA,MAEzD;AAAA;AAAA,EACH;AAEJ;AAEA,SAAS,8BAA8B;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SAAO,IAAI,MAAM,CAAC,GAAU;AAAA,IAC1B,IAAI,GAAG,GAAoB;AACzB,YAAM,QAAQ,gBAAgB;AAC9B,UAAI,CAAC;AAGH,cAAM,IAAI,MAAM,8CAA8C;AAIhE,cAAI,CAAC,wBAAwB,WAAW,aAAa,YAAY,WAC/D,wBAAwB,cAAU,4BAAa,KAAK,GACpD,aAAa,UAAU,QAGlB,wBAAwB,QAAS,CAAC;AAAA,IAC3C;AAAA,EACF,CAAC;AACH;",
5
+ "names": []
6
+ }
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: !0 });
9
+ }, __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from == "object" || typeof from == "function")
11
+ for (let key of __getOwnPropNames(from))
12
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ return to;
14
+ };
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
16
+ var RouteInfoContext_exports = {};
17
+ __export(RouteInfoContext_exports, {
18
+ RouteInfoContext: () => RouteInfoContext,
19
+ RouteInfoContextProvider: () => RouteInfoContextProvider
20
+ });
21
+ module.exports = __toCommonJS(RouteInfoContext_exports);
22
+ var import_jsx_runtime = require("react/jsx-runtime"), import_react = require("react"), import_core = require("@react-navigation/core"), import_router = require("./router"), RouteInfoContext = /* @__PURE__ */ (0, import_react.createContext)(void 0);
23
+ function RouteInfoContextProvider(param) {
24
+ var { children } = param, currentState = (0, import_core.useStateForPath)(), currentStateRef = (0, import_react.useRef)(void 0), lastStateRef = (0, import_react.useRef)(void 0), cachedRouteInfoValueRef = (0, import_react.useRef)(void 0), lazilyCalculatedRouteInfo = (0, import_react.useRef)();
25
+ return currentState && currentStateRef.current !== currentState && (lazilyCalculatedRouteInfo.current = makeLazilyCalculatedRouteInfo({
26
+ currentStateRef,
27
+ lastStateRef,
28
+ cachedRouteInfoValueRef
29
+ })), currentStateRef.current = currentState, /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RouteInfoContext.Provider, {
30
+ value: currentState ? lazilyCalculatedRouteInfo.current : void 0,
31
+ children
32
+ });
33
+ }
34
+ function makeLazilyCalculatedRouteInfo(param) {
35
+ var { currentStateRef, lastStateRef, cachedRouteInfoValueRef } = param;
36
+ return new Proxy({}, {
37
+ get(_, p) {
38
+ var state = currentStateRef.current;
39
+ if (!state)
40
+ throw new Error("[lazilyCalculatedRouteInfo] cannot get state");
41
+ return (!cachedRouteInfoValueRef.current || lastStateRef.current !== state) && (cachedRouteInfoValueRef.current = (0, import_router.getRouteInfo)(state), lastStateRef.current = state), cachedRouteInfoValueRef.current[p];
42
+ }
43
+ });
44
+ }
45
+ // Annotate the CommonJS export names for ESM import in node:
46
+ 0 && (module.exports = {
47
+ RouteInfoContext,
48
+ RouteInfoContextProvider
49
+ });
50
+ //# sourceMappingURL=RouteInfoContext.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/router/RouteInfoContext.tsx"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;uDACA,eAAsC,kBAEtC,cAAgC,mCAChC,gBAA6B,qBAEhBA,mBAAmBC,gDAAqCC,MAAAA;AAsB9D,SAASC,yBAAyB,OAA2C;MAA3C,EAAEC,SAAQ,IAAV,OACjCC,mBAAeC,6BAAAA,GAOfC,sBAAkBC,qBAA4BN,MAAAA,GAO9CO,mBAAeD,qBAA4BN,MAAAA,GAC3CQ,8BAA0BF,qBAA8BN,MAAAA,GAExDS,gCAA4BH,qBAAAA;AAElC,SAAIH,gBAAgBE,gBAAgBK,YAAYP,iBAC9CM,0BAA0BC,UAAUC,8BAA8B;IAChEN;IACAE;IACAC;EACF,CAAA,IAEFH,gBAAgBK,UAAUP,cAGxB,uCAAAS,KAACd,iBAAiBe,UAAQ;IACxBC,OAAOX,eAAeM,0BAA0BC,UAAUV;;;AAKhE;AAEA,SAASW,8BAA8B,OAQtC;MARsC,EACrCN,iBACAE,cACAC,wBAAuB,IAHc;AASrC,SAAO,IAAIO,MAAM,CAAC,GAAU;IAC1BC,IAAIC,GAAGC,GAAkB;AACvB,UAAMC,QAAQd,gBAAgBK;AAC9B,UAAI,CAACS;AAGH,cAAM,IAAIC,MAAM,8CAAA;AAIlB,cAAI,CAACZ,wBAAwBE,WAAWH,aAAaG,YAAYS,WAC/DX,wBAAwBE,cAAUW,4BAAaF,KAAAA,GAC/CZ,aAAaG,UAAUS,QAGlBX,wBAAwBE,QAASQ,CAAAA;IAC1C;EACF,CAAA;AACF;",
5
+ "names": ["RouteInfoContext", "createContext", "undefined", "RouteInfoContextProvider", "children", "currentState", "useStateForPath", "currentStateRef", "useRef", "lastStateRef", "cachedRouteInfoValueRef", "lazilyCalculatedRouteInfo", "current", "makeLazilyCalculatedRouteInfo", "_jsx", "Provider", "value", "Proxy", "get", "_", "p", "state", "Error", "getRouteInfo"]
6
+ }
package/dist/esm/hooks.js CHANGED
@@ -1,13 +1,15 @@
1
- import React, { createContext } from "react";
1
+ import React, { createContext, useContext } from "react";
2
2
  import { router } from "./router/imperative-api";
3
- import { RouteParamsContext } from "./router/Route";
3
+ import { RouteParamsContext, useRouteNode } from "./router/Route";
4
4
  import { navigationRef, useStoreRootState, useStoreRouteInfo } from "./router/router";
5
+ import { RouteInfoContext } from "./router/RouteInfoContext";
5
6
  import { jsx } from "react/jsx-runtime";
6
7
  function useRootNavigationState() {
7
8
  return useStoreRootState();
8
9
  }
9
10
  function useRouteInfo() {
10
- return useStoreRouteInfo();
11
+ const routeInfoFromContext = useContext(RouteInfoContext), routeInfoFromRootState = useStoreRouteInfo();
12
+ return useRouteNode()?.type === "layout" ? routeInfoFromRootState : routeInfoFromContext || routeInfoFromRootState;
11
13
  }
12
14
  function useNavigationContainerRef() {
13
15
  return navigationRef;
@@ -27,16 +29,16 @@ function useRouter() {
27
29
  return router;
28
30
  }
29
31
  function useUnstableGlobalHref() {
30
- return useStoreRouteInfo().unstable_globalHref;
32
+ return useRouteInfo().unstable_globalHref;
31
33
  }
32
34
  function useSegments() {
33
- return useStoreRouteInfo().segments;
35
+ return useRouteInfo().segments;
34
36
  }
35
37
  function usePathname() {
36
- return useStoreRouteInfo().pathname;
38
+ return useRouteInfo().pathname;
37
39
  }
38
40
  function useActiveParams() {
39
- return useStoreRouteInfo().params;
41
+ return useRouteInfo().params;
40
42
  }
41
43
  const useLocalSearchParams = useParams, useGlobalSearchParams = useActiveParams;
42
44
  function useParams() {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/hooks.tsx"],
4
- "mappings": "AAAA,OAAO,SAAS,qBAAqC;AAErD,SAAS,cAAc;AACvB,SAAS,0BAA0B;AACnC,SAAS,eAAe,mBAAmB,yBAAyB;AAkC9D;AA9BC,SAAS,yBAAyB;AACvC,SAAO,kBAAkB;AAC3B;AAEO,SAAS,eAAe;AAC7B,SAAO,kBAAkB;AAC3B;AAGO,SAAS,4BAA4B;AAC1C,SAAO;AACT;AAEA,MAAM,eAAe,cAAc,EAAK;AAEjC,SAAS,OAAO,EAAE,KAAK,IAAO,SAAS,GAA0C;AAQtF,SAAI,OAAO,SAAW,MACb,WAIP,oBAAC,aAAa,UAAb,EAAsB,OAAO,IAE5B;AAAA,IAAC;AAAA;AAAA,MAEC,OAAK;AAAA,MACL,OAAO,EAAE,SAAS,WAAW;AAAA,MAE5B;AAAA;AAAA,EACH,GAEF;AAEJ;AAEO,SAAS,YAA8B;AAC5C,SAAO;AACT;AAMO,SAAS,wBAAgC;AAC9C,SAAO,kBAAkB,EAAE;AAC7B;AAqBO,SAAS,cAAgE;AAC9E,SAAO,kBAAkB,EAAE;AAC7B;AAGO,SAAS,cAAsB;AACpC,SAAO,kBAAkB,EAAE;AAC7B;AAWO,SAAS,kBAA2E;AACzF,SAAO,kBAAkB,EAAE;AAC7B;AAGO,MAAM,uBAAuB,WAGvB,wBAAwB;AAS9B,SAAS,YAAqE;AACnF,QAAM,SAAS,MAAM,WAAW,kBAAkB,KAAK,CAAC;AAExD,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAC3C,UAAI,MAAM,QAAQ,KAAK;AACrB,eAAO;AAAA,UACL;AAAA,UACA,MAAM,IAAI,CAAC,MAAM;AACf,gBAAI;AACF,qBAAO,mBAAmB,CAAC;AAAA,YAC7B,QAAQ;AACN,qBAAO;AAAA,YACT;AAAA,UACF,CAAC;AAAA,QACH;AAEF,UAAI;AACF,eAAO,CAAC,KAAK,mBAAmB,KAAe,CAAC;AAAA,MAClD,QAAQ;AACN,eAAO,CAAC,KAAK,KAAK;AAAA,MACpB;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
4
+ "mappings": "AAAA,OAAO,SAAS,eAAe,kBAAkC;AAEjE,SAAS,cAAc;AACvB,SAAS,oBAAoB,oBAAoB;AACjD,SAAS,eAAe,mBAAmB,yBAAyB;AACpE,SAAS,wBAAwB;AAoD3B;AAhDC,SAAS,yBAAyB;AACvC,SAAO,kBAAkB;AAC3B;AAEO,SAAS,eAAe;AAI7B,QAAM,uBAAuB,WAAW,gBAAgB,GAKlD,yBAAyB,kBAAkB;AAIjD,SAFkB,aAAa,GAEhB,SAAS,WAEf,yBAIF,wBAAwB;AACjC;AAGO,SAAS,4BAA4B;AAC1C,SAAO;AACT;AAEA,MAAM,eAAe,cAAc,EAAK;AAEjC,SAAS,OAAO,EAAE,KAAK,IAAO,SAAS,GAA0C;AAQtF,SAAI,OAAO,SAAW,MACb,WAIP,oBAAC,aAAa,UAAb,EAAsB,OAAO,IAE5B;AAAA,IAAC;AAAA;AAAA,MAEC,OAAK;AAAA,MACL,OAAO,EAAE,SAAS,WAAW;AAAA,MAE5B;AAAA;AAAA,EACH,GAEF;AAEJ;AAEO,SAAS,YAA8B;AAC5C,SAAO;AACT;AAMO,SAAS,wBAAgC;AAC9C,SAAO,aAAa,EAAE;AACxB;AAqBO,SAAS,cAAgE;AAC9E,SAAO,aAAa,EAAE;AACxB;AAGO,SAAS,cAAsB;AACpC,SAAO,aAAa,EAAE;AACxB;AAWO,SAAS,kBAEM;AACpB,SAAO,aAAa,EAAE;AACxB;AAGO,MAAM,uBAAuB,WAGvB,wBAAwB;AAS9B,SAAS,YAAqE;AACnF,QAAM,SAAS,MAAM,WAAW,kBAAkB,KAAK,CAAC;AAExD,SAAO,OAAO;AAAA,IACZ,OAAO,QAAQ,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;AAC3C,UAAI,MAAM,QAAQ,KAAK;AACrB,eAAO;AAAA,UACL;AAAA,UACA,MAAM,IAAI,CAAC,MAAM;AACf,gBAAI;AACF,qBAAO,mBAAmB,CAAC;AAAA,YAC7B,QAAQ;AACN,qBAAO;AAAA,YACT;AAAA,UACF,CAAC;AAAA,QACH;AAEF,UAAI;AACF,eAAO,CAAC,KAAK,mBAAmB,KAAe,CAAC;AAAA,MAClD,QAAQ;AACN,eAAO,CAAC,KAAK,KAAK;AAAA,MACpB;AAAA,IACF,CAAC;AAAA,EACH;AACF;",
5
5
  "names": []
6
6
  }
@@ -1,13 +1,16 @@
1
- import React, { createContext } from "react";
1
+ import React, { createContext, useContext } from "react";
2
2
  import { router } from "./router/imperative-api.mjs";
3
- import { RouteParamsContext } from "./router/Route.mjs";
3
+ import { RouteParamsContext, useRouteNode } from "./router/Route.mjs";
4
4
  import { navigationRef, useStoreRootState, useStoreRouteInfo } from "./router/router.mjs";
5
+ import { RouteInfoContext } from "./router/RouteInfoContext.mjs";
5
6
  import { jsx } from "react/jsx-runtime";
6
7
  function useRootNavigationState() {
7
8
  return useStoreRootState();
8
9
  }
9
10
  function useRouteInfo() {
10
- return useStoreRouteInfo();
11
+ const routeInfoFromContext = useContext(RouteInfoContext),
12
+ routeInfoFromRootState = useStoreRouteInfo();
13
+ return useRouteNode()?.type === "layout" ? routeInfoFromRootState : routeInfoFromContext || routeInfoFromRootState;
11
14
  }
12
15
  function useNavigationContainerRef() {
13
16
  return navigationRef;
@@ -32,16 +35,16 @@ function useRouter() {
32
35
  return router;
33
36
  }
34
37
  function useUnstableGlobalHref() {
35
- return useStoreRouteInfo().unstable_globalHref;
38
+ return useRouteInfo().unstable_globalHref;
36
39
  }
37
40
  function useSegments() {
38
- return useStoreRouteInfo().segments;
41
+ return useRouteInfo().segments;
39
42
  }
40
43
  function usePathname() {
41
- return useStoreRouteInfo().pathname;
44
+ return useRouteInfo().pathname;
42
45
  }
43
46
  function useActiveParams() {
44
- return useStoreRouteInfo().params;
47
+ return useRouteInfo().params;
45
48
  }
46
49
  const useLocalSearchParams = useParams,
47
50
  useGlobalSearchParams = useActiveParams;
@@ -1 +1 @@
1
- {"version":3,"names":["React","createContext","router","RouteParamsContext","navigationRef","useStoreRootState","useStoreRouteInfo","jsx","useRootNavigationState","useRouteInfo","useNavigationContainerRef","FrozeContext","Frozen","on","children","window","Provider","value","inert","style","display","useRouter","useUnstableGlobalHref","unstable_globalHref","useSegments","segments","usePathname","pathname","useActiveParams","params","useLocalSearchParams","useParams","useGlobalSearchParams","useContext","Object","fromEntries","entries","map","key","Array","isArray","v","decodeURIComponent"],"sources":["../../src/hooks.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,IAASC,aAAA,QAAqC;AAErD,SAASC,MAAA,QAAc;AACvB,SAASC,kBAAA,QAA0B;AACnC,SAASC,aAAA,EAAeC,iBAAA,EAAmBC,iBAAA,QAAyB;AAkC9D,SAAAC,GAAA;AA9BC,SAASC,uBAAA,EAAyB;EACvC,OAAOH,iBAAA,CAAkB;AAC3B;AAEO,SAASI,aAAA,EAAe;EAC7B,OAAOH,iBAAA,CAAkB;AAC3B;AAGO,SAASI,0BAAA,EAA4B;EAC1C,OAAON,aAAA;AACT;AAEA,MAAMO,YAAA,GAAeV,aAAA,CAAc,EAAK;AAEjC,SAASW,OAAO;EAAEC,EAAA,GAAK;EAAOC;AAAS,GAA0C;EAQtF,OAAI,OAAOC,MAAA,GAAW,MACbD,QAAA,GAIP,eAAAP,GAAA,CAACI,YAAA,CAAaK,QAAA,EAAb;IAAsBC,KAAA,EAAOJ,EAAA;IAE5BC,QAAA,iBAAAP,GAAA,CAAC;MAECW,KAAA,EAAK;MACLC,KAAA,EAAO;QAAEC,OAAA,EAAS;MAAW;MAE5BN;IAAA,CACH;EAAA,CAEF;AAEJ;AAEO,SAASO,UAAA,EAA8B;EAC5C,OAAOnB,MAAA;AACT;AAMO,SAASoB,sBAAA,EAAgC;EAC9C,OAAOhB,iBAAA,CAAkB,EAAEiB,mBAAA;AAC7B;AAqBO,SAASC,YAAA,EAAgE;EAC9E,OAAOlB,iBAAA,CAAkB,EAAEmB,QAAA;AAC7B;AAGO,SAASC,YAAA,EAAsB;EACpC,OAAOpB,iBAAA,CAAkB,EAAEqB,QAAA;AAC7B;AAWO,SAASC,gBAAA,EAA2E;EACzF,OAAOtB,iBAAA,CAAkB,EAAEuB,MAAA;AAC7B;AAGO,MAAMC,oBAAA,GAAuBC,SAAA;EAGvBC,qBAAA,GAAwBJ,eAAA;AAS9B,SAASG,UAAA,EAAqE;EACnF,MAAMF,MAAA,GAAS7B,KAAA,CAAMiC,UAAA,CAAW9B,kBAAkB,KAAK,CAAC;EAExD,OAAO+B,MAAA,CAAOC,WAAA,CACZD,MAAA,CAAOE,OAAA,CAAQP,MAAM,EAAEQ,GAAA,CAAI,CAAC,CAACC,GAAA,EAAKrB,KAAK,MAAM;IAC3C,IAAIsB,KAAA,CAAMC,OAAA,CAAQvB,KAAK,GACrB,OAAO,CACLqB,GAAA,EACArB,KAAA,CAAMoB,GAAA,CAAKI,CAAA,IAAM;MACf,IAAI;QACF,OAAOC,kBAAA,CAAmBD,CAAC;MAC7B,QAAQ;QACN,OAAOA,CAAA;MACT;IACF,CAAC,EACH;IAEF,IAAI;MACF,OAAO,CAACH,GAAA,EAAKI,kBAAA,CAAmBzB,KAAe,CAAC;IAClD,QAAQ;MACN,OAAO,CAACqB,GAAA,EAAKrB,KAAK;IACpB;EACF,CAAC,CACH;AACF","ignoreList":[]}
1
+ {"version":3,"names":["React","createContext","useContext","router","RouteParamsContext","useRouteNode","navigationRef","useStoreRootState","useStoreRouteInfo","RouteInfoContext","jsx","useRootNavigationState","useRouteInfo","routeInfoFromContext","routeInfoFromRootState","type","useNavigationContainerRef","FrozeContext","Frozen","on","children","window","Provider","value","inert","style","display","useRouter","useUnstableGlobalHref","unstable_globalHref","useSegments","segments","usePathname","pathname","useActiveParams","params","useLocalSearchParams","useParams","useGlobalSearchParams","Object","fromEntries","entries","map","key","Array","isArray","v","decodeURIComponent"],"sources":["../../src/hooks.tsx"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,KAAA,IAASC,aAAA,EAAeC,UAAA,QAAkC;AAEjE,SAASC,MAAA,QAAc;AACvB,SAASC,kBAAA,EAAoBC,YAAA,QAAoB;AACjD,SAASC,aAAA,EAAeC,iBAAA,EAAmBC,iBAAA,QAAyB;AACpE,SAASC,gBAAA,QAAwB;AAoD3B,SAAAC,GAAA;AAhDC,SAASC,uBAAA,EAAyB;EACvC,OAAOJ,iBAAA,CAAkB;AAC3B;AAEO,SAASK,aAAA,EAAe;EAI7B,MAAMC,oBAAA,GAAuBX,UAAA,CAAWO,gBAAgB;IAKlDK,sBAAA,GAAyBN,iBAAA,CAAkB;EAIjD,OAFkBH,YAAA,CAAa,GAEhBU,IAAA,KAAS,WAEfD,sBAAA,GAIFD,oBAAA,IAAwBC,sBAAA;AACjC;AAGO,SAASE,0BAAA,EAA4B;EAC1C,OAAOV,aAAA;AACT;AAEA,MAAMW,YAAA,GAAehB,aAAA,CAAc,EAAK;AAEjC,SAASiB,OAAO;EAAEC,EAAA,GAAK;EAAOC;AAAS,GAA0C;EAQtF,OAAI,OAAOC,MAAA,GAAW,MACbD,QAAA,GAIP,eAAAV,GAAA,CAACO,YAAA,CAAaK,QAAA,EAAb;IAAsBC,KAAA,EAAOJ,EAAA;IAE5BC,QAAA,iBAAAV,GAAA,CAAC;MAECc,KAAA,EAAK;MACLC,KAAA,EAAO;QAAEC,OAAA,EAAS;MAAW;MAE5BN;IAAA,CACH;EAAA,CAEF;AAEJ;AAEO,SAASO,UAAA,EAA8B;EAC5C,OAAOxB,MAAA;AACT;AAMO,SAASyB,sBAAA,EAAgC;EAC9C,OAAOhB,YAAA,CAAa,EAAEiB,mBAAA;AACxB;AAqBO,SAASC,YAAA,EAAgE;EAC9E,OAAOlB,YAAA,CAAa,EAAEmB,QAAA;AACxB;AAGO,SAASC,YAAA,EAAsB;EACpC,OAAOpB,YAAA,CAAa,EAAEqB,QAAA;AACxB;AAWO,SAASC,gBAAA,EAEM;EACpB,OAAOtB,YAAA,CAAa,EAAEuB,MAAA;AACxB;AAGO,MAAMC,oBAAA,GAAuBC,SAAA;EAGvBC,qBAAA,GAAwBJ,eAAA;AAS9B,SAASG,UAAA,EAAqE;EACnF,MAAMF,MAAA,GAASnC,KAAA,CAAME,UAAA,CAAWE,kBAAkB,KAAK,CAAC;EAExD,OAAOmC,MAAA,CAAOC,WAAA,CACZD,MAAA,CAAOE,OAAA,CAAQN,MAAM,EAAEO,GAAA,CAAI,CAAC,CAACC,GAAA,EAAKpB,KAAK,MAAM;IAC3C,IAAIqB,KAAA,CAAMC,OAAA,CAAQtB,KAAK,GACrB,OAAO,CACLoB,GAAA,EACApB,KAAA,CAAMmB,GAAA,CAAKI,CAAA,IAAM;MACf,IAAI;QACF,OAAOC,kBAAA,CAAmBD,CAAC;MAC7B,QAAQ;QACN,OAAOA,CAAA;MACT;IACF,CAAC,EACH;IAEF,IAAI;MACF,OAAO,CAACH,GAAA,EAAKI,kBAAA,CAAmBxB,KAAe,CAAC;IAClD,QAAQ;MACN,OAAO,CAACoB,GAAA,EAAKpB,KAAK;IACpB;EACF,CAAC,CACH;AACF","ignoreList":[]}
@@ -1,13 +1,17 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import React, { createContext } from "react";
2
+ import React, { createContext, useContext } from "react";
3
3
  import { router } from "./router/imperative-api.native.js";
4
- import { RouteParamsContext } from "./router/Route.native.js";
4
+ import { RouteParamsContext, useRouteNode } from "./router/Route.native.js";
5
5
  import { navigationRef, useStoreRootState, useStoreRouteInfo } from "./router/router.native.js";
6
+ import { RouteInfoContext } from "./router/RouteInfoContext.native.js";
6
7
  function useRootNavigationState() {
7
8
  return useStoreRootState();
8
9
  }
9
10
  function useRouteInfo() {
10
- return useStoreRouteInfo();
11
+ var routeInfoFromContext = useContext(RouteInfoContext),
12
+ routeInfoFromRootState = useStoreRouteInfo(),
13
+ routeNode = useRouteNode();
14
+ return routeNode?.type === "layout" ? routeInfoFromRootState : routeInfoFromContext || routeInfoFromRootState;
11
15
  }
12
16
  function useNavigationContainerRef() {
13
17
  return navigationRef;
@@ -35,16 +39,16 @@ function useRouter() {
35
39
  return router;
36
40
  }
37
41
  function useUnstableGlobalHref() {
38
- return useStoreRouteInfo().unstable_globalHref;
42
+ return useRouteInfo().unstable_globalHref;
39
43
  }
40
44
  function useSegments() {
41
- return useStoreRouteInfo().segments;
45
+ return useRouteInfo().segments;
42
46
  }
43
47
  function usePathname() {
44
- return useStoreRouteInfo().pathname;
48
+ return useRouteInfo().pathname;
45
49
  }
46
50
  function useActiveParams() {
47
- return useStoreRouteInfo().params;
51
+ return useRouteInfo().params;
48
52
  }
49
53
  var useLocalSearchParams = useParams,
50
54
  useGlobalSearchParams = useActiveParams;
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","React","createContext","router","RouteParamsContext","navigationRef","useStoreRootState","useStoreRouteInfo","useRootNavigationState","useRouteInfo","useNavigationContainerRef","FrozeContext","Frozen","param","on","children","window","Provider","value","inert","style","display","useRouter","useUnstableGlobalHref","unstable_globalHref","useSegments","segments","usePathname","pathname","useActiveParams","params","useLocalSearchParams","useParams","useGlobalSearchParams","_React_useContext","useContext","Object","fromEntries","entries","map","key","Array","isArray","v","decodeURIComponent"],"sources":["../../src/hooks.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAOA,GAAA,IAASC,IAAA,2BAAqC;AAErD,OAAAC,KAAS,IAAAC,aAAc;AACvB,SAASC,MAAA,2CAA0B;AACnC,SAASC,kBAAe,kCAAmB;AAkCrC,SAAAC,aAAA,EAAAC,iBAAA,EAAAC,iBAAA;AA9BC,SAASC,uBAAA,EAAyB;EACvC,OAAOF,iBAAA,CAAkB;AAC3B;AAEO,SAASG,aAAA,EAAe;EAC7B,OAAOF,iBAAA,CAAkB;AAC3B;AAGO,SAASG,0BAAA,EAA4B;EAC1C,OAAOL,aAAA;AACT;AAEA,IAAAM,YAAM,kBAA6BT,aAAK;AAEjC,SAASU,OAAOC,KAAE,EAAK;EAQ5B;IAAAC,EAAI;IAAOC;EAAW,IAAAF,KACb;EAML,OAAC,OAAAG,MAAA,SAAAD,QAAA,kBAAAf,IAAA,CAAAW,YAAA,CAAAM,QAAA;IAAAC,KAAA,EAAAJ,EAAA;IAAAC,QAEC,GACA;IAEC,eAAAf,IAAA;MAAA;MAGLmB,KAAA;MAEJC,KAAA;QAEgBC,OAAA;MACd,CAAO;MACTN;IAMO;EAEP;AAqBO;AACL,SAAOO,UAAA;EACT,OAAAnB,MAAA;AAGO;AACL,SAAOoB,qBAAoBA,CAAA;EAC7B,OAAAhB,iBAAA,GAAAiB,mBAAA;AAWO;AACL,SAAOC,YAAA;EACT,OAAAlB,iBAAA,GAAAmB,QAAA;AAGO;AAYA,SAASC,YAAA,EAAqE;EACnF,OAAMpB,iBAAe,GAAAqB,QAAW;AAEhC;AAAc,SACZC,eAAeA,CAAA,EAAQ;EACrB,OAAAtB,iBAAkB,GAAKuB,MAAA;AACrB;AAAO,IAAAC,oBACL,GAAAC,SAAA;EAAAC,qBAAA,GAAAJ,eAAA;AAAA,SAAAG,SACMA,CAAA,EAAK;EACT,IAAAE,iBAAI;IAAAJ,MAAA,IAAAI,iBAAA,GAAAjC,KAAA,CAAAkC,UAAA,CAAA/B,kBAAA,eAAA8B,iBAAA,cAAAA,iBAAA;EACF,OAAAE,MAAA,CAAAC,WAAO,CAAAD,MAAA,CAAAE,OAAoB,CAAAR,MAAA,EAAAS,GAAA,WAAA1B,KAAA;IAAA,KAAA2B,GAC7B,EAAAtB,KAAA,CAAQ,GAAAL,KAAA;IACN,IAAA4B,KAAA,CAAAC,OAAO,CAAAxB,KAAA,UACT,CAAAsB,GACD,EACHtB,KAAA,CAAAqB,GAAA,WAAAI,CAAA;MAEE;QACF,OAAQC,kBAAK,CAAAD,CAAA,CAAmB;MAClC,QAAQ;QACN,OAAQA,CAAA;MACV;IACD,GACH;IACF","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","React","createContext","useContext","router","RouteParamsContext","useRouteNode","navigationRef","useStoreRootState","useStoreRouteInfo","RouteInfoContext","useRootNavigationState","useRouteInfo","routeInfoFromContext","routeInfoFromRootState","routeNode","type","useNavigationContainerRef","FrozeContext","Frozen","param","on","children","window","Provider","value","inert","style","display","useRouter","useUnstableGlobalHref","unstable_globalHref","useSegments","segments","usePathname","pathname","useActiveParams","params","useLocalSearchParams","useParams","useGlobalSearchParams","_React_useContext","Object","fromEntries","entries","map","key","Array","isArray","v","decodeURIComponent"],"sources":["../../src/hooks.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAOA,GAAA,IAASC,IAAA,2BAAe;AAE/B,OAAAC,KAAS,IAAAC,aAAc,EAAAC,UAAA;AACvB,SAASC,MAAA,2CAAoB;AAC7B,SAASC,kBAAe,EAAAC,YAAA,QAAmB;AAC3C,SAASC,aAAA,EAAAC,iBAAwB,EAAAC,iBAAA;AAoD3B,SAAAC,gBAAA;AAhDC,SAASC,uBAAA,EAAyB;EACvC,OAAOH,iBAAA,CAAkB;AAC3B;AAEO,SAASI,aAAA,EAAe;EAI7B,IAAAC,oBAAM,GAAAV,UAAuB,CAAAO,gBAAW;IAAgBI,sBAKlD,GAAAL,iBAAyB;IAAkBM,SAAA,GAAAT,YAAA;EAIjD,OAFkBS,SAAA,EAAAC,IAAa,KAEhB,QAAS,GAAAF,sBAEf,GAAAD,oBAIF,IAAAC,sBAAwB;AACjC;AAGO,SAASG,0BAAA,EAA4B;EAC1C,OAAOV,aAAA;AACT;AAEA,IAAAW,YAAM,kBAA6BhB,aAAK;AAEjC,SAASiB,OAAOC,KAAE,EAAK;EAQ5B;IAAAC,EAAI;IAAOC;EAAW,IAAAF,KACb;EAML,OAAC,OAAAG,MAAA,SAAAD,QAAA,kBAAAtB,IAAA,CAAAkB,YAAA,CAAAM,QAAA;IAAAC,KAAA,EAAAJ,EAAA;IAAAC,QAEC,GACA;IAEC,eAAAtB,IAAA;MAAA;MAGL0B,KAAA;MAEJC,KAAA;QAEgBC,OAAA;MACd,CAAO;MACTN;IAMO;EAEP;AAqBO;AACL,SAAOO,UAAA;EACT,OAAAzB,MAAA;AAGO;AACL,SAAO0B,qBAAeA,CAAA;EACxB,OAAAlB,YAAA,GAAAmB,mBAAA;AAWO;AAGL,SAAOC,YAAA,EAAa;EACtB,OAAApB,YAAA,GAAAqB,QAAA;AAGO;AAYA,SAASC,YAAA,EAAqE;EACnF,OAAMtB,YAAS,EAAM,CAAAuB,QAAA;AAErB;AAAc,SACZC,eAAeA,CAAA,EAAQ;EACrB,OAAAxB,YAAU,GAAQyB,MAAK;AACrB;AAAO,IAAAC,oBACL,GAAAC,SAAA;EAAAC,qBAAA,GAAAJ,eAAA;AAAA,SAAAG,SACMA,CAAA,EAAK;EACT,IAAAE,iBAAI;IAAAJ,MAAA,IAAAI,iBAAA,GAAAxC,KAAA,CAAAE,UAAA,CAAAE,kBAAA,eAAAoC,iBAAA,cAAAA,iBAAA;EACF,OAAAC,MAAA,CAAAC,WAAO,CAAAD,MAAA,CAAAE,OAAoB,CAAAP,MAAA,EAAAQ,GAAA,WAAAzB,KAAA;IAAA,KAAA0B,GAC7B,EAAArB,KAAA,CAAQ,GAAAL,KAAA;IACN,IAAA2B,KAAA,CAAAC,OAAO,CAAAvB,KAAA,UACT,CAAAqB,GACD,EACHrB,KAAA,CAAAoB,GAAA,WAAAI,CAAA;MAEE;QACF,OAAQC,kBAAK,CAAAD,CAAA,CAAmB;MAClC,QAAQ;QACN,OAAQA,CAAA;MACV;IACD,GACH;IACF","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  import React, { createContext, useContext } from "react";
2
2
  import { getContextKey } from "./matchers";
3
+ import { RouteInfoContextProvider } from "./RouteInfoContext";
3
4
  import { jsx } from "react/jsx-runtime";
4
5
  const RouteParamsContext = createContext({}), CurrentRouteContext = React.createContext(null);
5
6
  process.env.NODE_ENV !== "production" && (CurrentRouteContext.displayName = "RouteNode");
@@ -17,7 +18,7 @@ function Route({
17
18
  node,
18
19
  route
19
20
  }) {
20
- return /* @__PURE__ */ jsx(RouteParamsContext.Provider, { value: route?.params, children: /* @__PURE__ */ jsx(CurrentRouteContext.Provider, { value: node, children }) });
21
+ return /* @__PURE__ */ jsx(RouteParamsContext.Provider, { value: route?.params, children: /* @__PURE__ */ jsx(CurrentRouteContext.Provider, { value: node, children: /* @__PURE__ */ jsx(RouteInfoContextProvider, { children }) }) });
21
22
  }
22
23
  export {
23
24
  Route,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/router/Route.tsx"],
4
- "mappings": "AAAA,OAAO,SAAS,eAAe,kBAAkC;AAGjE,SAAS,qBAAqB;AA6ExB;AAjCC,MAAM,qBAAqB,cAA8D,CAAC,CAAC,GAE5F,sBAAsB,MAAM,cAAgC,IAAI;AAElE,QAAQ,IAAI,aAAa,iBAC3B,oBAAoB,cAAc;AAI7B,SAAS,eAAiC;AAC/C,SAAO,WAAW,mBAAmB;AACvC;AAEO,SAAS,gBAAwB;AACtC,QAAM,OAAO,aAAa;AAC1B,MAAI,QAAQ;AACV,UAAM,IAAI,MAAM,oDAAoD;AAEtE,SAAO,cAAc,KAAK,UAAU;AACtC;AAGO,SAAS,MAAM;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SACE,oBAAC,mBAAmB,UAAnB,EAA4B,OAAO,OAAO,QACzC,8BAAC,oBAAoB,UAApB,EAA6B,OAAO,MAAO,UAAS,GACvD;AAEJ;",
4
+ "mappings": "AAAA,OAAO,SAAS,eAAe,kBAAkC;AAGjE,SAAS,qBAAqB;AAC9B,SAAS,gCAAgC;AAgFjC;AApCD,MAAM,qBAAqB,cAEhC,CAAC,CAAC,GAEE,sBAAsB,MAAM,cAAgC,IAAI;AAElE,QAAQ,IAAI,aAAa,iBAC3B,oBAAoB,cAAc;AAI7B,SAAS,eAAiC;AAC/C,SAAO,WAAW,mBAAmB;AACvC;AAEO,SAAS,gBAAwB;AACtC,QAAM,OAAO,aAAa;AAC1B,MAAI,QAAQ;AACV,UAAM,IAAI,MAAM,oDAAoD;AAEtE,SAAO,cAAc,KAAK,UAAU;AACtC;AAGO,SAAS,MAAM;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,SACE,oBAAC,mBAAmB,UAAnB,EAA4B,OAAO,OAAO,QACzC,8BAAC,oBAAoB,UAApB,EAA6B,OAAO,MACnC,8BAAC,4BAA0B,UAAS,GACtC,GACF;AAEJ;",
5
5
  "names": []
6
6
  }