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.
- package/dist/cjs/hooks.cjs +8 -5
- package/dist/cjs/hooks.js +7 -6
- package/dist/cjs/hooks.js.map +1 -1
- package/dist/cjs/hooks.native.js +7 -6
- package/dist/cjs/hooks.native.js.map +2 -2
- package/dist/cjs/router/Route.cjs +4 -1
- package/dist/cjs/router/Route.js +2 -2
- package/dist/cjs/router/Route.js.map +1 -1
- package/dist/cjs/router/Route.native.js +4 -2
- package/dist/cjs/router/Route.native.js.map +2 -2
- package/dist/cjs/router/RouteInfoContext.cjs +61 -0
- package/dist/cjs/router/RouteInfoContext.js +51 -0
- package/dist/cjs/router/RouteInfoContext.js.map +6 -0
- package/dist/cjs/router/RouteInfoContext.native.js +50 -0
- package/dist/cjs/router/RouteInfoContext.native.js.map +6 -0
- package/dist/esm/hooks.js +9 -7
- package/dist/esm/hooks.js.map +1 -1
- package/dist/esm/hooks.mjs +10 -7
- package/dist/esm/hooks.mjs.map +1 -1
- package/dist/esm/hooks.native.js +11 -7
- package/dist/esm/hooks.native.js.map +1 -1
- package/dist/esm/router/Route.js +2 -1
- package/dist/esm/router/Route.js.map +1 -1
- package/dist/esm/router/Route.mjs +4 -1
- package/dist/esm/router/Route.mjs.map +1 -1
- package/dist/esm/router/Route.native.js +4 -1
- package/dist/esm/router/Route.native.js.map +1 -1
- package/dist/esm/router/RouteInfoContext.js +38 -0
- package/dist/esm/router/RouteInfoContext.js.map +6 -0
- package/dist/esm/router/RouteInfoContext.mjs +37 -0
- package/dist/esm/router/RouteInfoContext.mjs.map +1 -0
- package/dist/esm/router/RouteInfoContext.native.js +39 -0
- package/dist/esm/router/RouteInfoContext.native.js.map +1 -0
- package/package.json +15 -15
- package/src/hooks.tsx +29 -8
- package/src/router/Route.tsx +7 -2
- package/src/router/RouteInfoContext.tsx +94 -0
- package/types/hooks.d.ts.map +1 -1
- package/types/layouts/Drawer.d.ts +14 -4
- package/types/layouts/Drawer.d.ts.map +1 -1
- package/types/layouts/Stack.d.ts +14 -4
- package/types/layouts/Stack.d.ts.map +1 -1
- package/types/layouts/Tabs.d.ts +14 -4
- package/types/layouts/Tabs.d.ts.map +1 -1
- package/types/router/Route.d.ts.map +1 -1
- package/types/router/RouteInfoContext.d.ts +27 -0
- package/types/router/RouteInfoContext.d.ts.map +1 -0
- package/types/views/Navigator.d.ts +2 -2
- package/types/views/Navigator.d.ts.map +1 -1
package/dist/cjs/hooks.cjs
CHANGED
@@ -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
|
-
|
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 (
|
85
|
+
return useRouteInfo().unstable_globalHref;
|
83
86
|
}
|
84
87
|
function useSegments() {
|
85
|
-
return (
|
88
|
+
return useRouteInfo().segments;
|
86
89
|
}
|
87
90
|
function usePathname() {
|
88
|
-
return (
|
91
|
+
return useRouteInfo().pathname;
|
89
92
|
}
|
90
93
|
function useActiveParams() {
|
91
|
-
return (
|
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
|
-
|
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 (
|
65
|
+
return useRouteInfo().unstable_globalHref;
|
65
66
|
}
|
66
67
|
function useSegments() {
|
67
|
-
return (
|
68
|
+
return useRouteInfo().segments;
|
68
69
|
}
|
69
70
|
function usePathname() {
|
70
|
-
return (
|
71
|
+
return useRouteInfo().pathname;
|
71
72
|
}
|
72
73
|
function useActiveParams() {
|
73
|
-
return (
|
74
|
+
return useRouteInfo().params;
|
74
75
|
}
|
75
76
|
const useLocalSearchParams = useParams, useGlobalSearchParams = useActiveParams;
|
76
77
|
function useParams() {
|
package/dist/cjs/hooks.js.map
CHANGED
@@ -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,
|
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
|
}
|
package/dist/cjs/hooks.native.js
CHANGED
@@ -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
|
-
|
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 (
|
73
|
+
return useRouteInfo().unstable_globalHref;
|
73
74
|
}
|
74
75
|
function useSegments() {
|
75
|
-
return (
|
76
|
+
return useRouteInfo().segments;
|
76
77
|
}
|
77
78
|
function usePathname() {
|
78
|
-
return (
|
79
|
+
return useRouteInfo().pathname;
|
79
80
|
}
|
80
81
|
function useActiveParams() {
|
81
|
-
return (
|
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,
|
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", "
|
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
|
}
|
package/dist/cjs/router/Route.js
CHANGED
@@ -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,
|
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,
|
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
|
-
|
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
|
32
|
+
return useRouteInfo().unstable_globalHref;
|
31
33
|
}
|
32
34
|
function useSegments() {
|
33
|
-
return
|
35
|
+
return useRouteInfo().segments;
|
34
36
|
}
|
35
37
|
function usePathname() {
|
36
|
-
return
|
38
|
+
return useRouteInfo().pathname;
|
37
39
|
}
|
38
40
|
function useActiveParams() {
|
39
|
-
return
|
41
|
+
return useRouteInfo().params;
|
40
42
|
}
|
41
43
|
const useLocalSearchParams = useParams, useGlobalSearchParams = useActiveParams;
|
42
44
|
function useParams() {
|
package/dist/esm/hooks.js.map
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../src/hooks.tsx"],
|
4
|
-
"mappings": "AAAA,OAAO,SAAS,
|
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
|
}
|
package/dist/esm/hooks.mjs
CHANGED
@@ -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
|
-
|
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
|
38
|
+
return useRouteInfo().unstable_globalHref;
|
36
39
|
}
|
37
40
|
function useSegments() {
|
38
|
-
return
|
41
|
+
return useRouteInfo().segments;
|
39
42
|
}
|
40
43
|
function usePathname() {
|
41
|
-
return
|
44
|
+
return useRouteInfo().pathname;
|
42
45
|
}
|
43
46
|
function useActiveParams() {
|
44
|
-
return
|
47
|
+
return useRouteInfo().params;
|
45
48
|
}
|
46
49
|
const useLocalSearchParams = useParams,
|
47
50
|
useGlobalSearchParams = useActiveParams;
|
package/dist/esm/hooks.mjs.map
CHANGED
@@ -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","
|
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":[]}
|
package/dist/esm/hooks.native.js
CHANGED
@@ -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
|
-
|
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
|
42
|
+
return useRouteInfo().unstable_globalHref;
|
39
43
|
}
|
40
44
|
function useSegments() {
|
41
|
-
return
|
45
|
+
return useRouteInfo().segments;
|
42
46
|
}
|
43
47
|
function usePathname() {
|
44
|
-
return
|
48
|
+
return useRouteInfo().pathname;
|
45
49
|
}
|
46
50
|
function useActiveParams() {
|
47
|
-
return
|
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","
|
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":[]}
|
package/dist/esm/router/Route.js
CHANGED
@@ -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;
|
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
|
}
|