one 1.23.1 → 1.24.1
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/__tests__/polyfills-mobile.test.cjs +58 -0
- package/dist/cjs/__tests__/polyfills-mobile.test.native.js +106 -0
- package/dist/cjs/__tests__/polyfills-mobile.test.native.js.map +1 -0
- package/dist/cjs/headless/__tests__/useStack.test.cjs +79 -0
- package/dist/cjs/headless/__tests__/useStack.test.native.js +85 -0
- package/dist/cjs/headless/__tests__/useStack.test.native.js.map +1 -0
- package/dist/cjs/headless/useStack.cjs +2 -1
- package/dist/cjs/headless/useStack.native.js +2 -1
- package/dist/cjs/headless/useStack.native.js.map +1 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/layouts/Stack.cjs +12 -9
- package/dist/cjs/layouts/Stack.native.js +13 -10
- package/dist/cjs/layouts/Stack.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackScreen.cjs +6 -3
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js +7 -4
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackToolbar.cjs +124 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.native.js +129 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.shared.cjs +57 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.shared.native.js +61 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.shared.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.types.cjs +18 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.types.native.js +21 -0
- package/dist/cjs/layouts/stack-utils/StackToolbar.types.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackToolbarImplementation.cjs +39 -0
- package/dist/cjs/layouts/stack-utils/StackToolbarImplementation.native.js +41 -0
- package/dist/cjs/layouts/stack-utils/StackToolbarImplementation.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/__tests__/StackToolbar.test.cjs +66 -0
- package/dist/cjs/layouts/stack-utils/__tests__/StackToolbar.test.native.js +99 -0
- package/dist/cjs/layouts/stack-utils/__tests__/StackToolbar.test.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/index.cjs +2 -0
- package/dist/cjs/layouts/stack-utils/index.native.js +2 -0
- package/dist/cjs/layouts/stack-utils/index.native.js.map +1 -1
- package/dist/cjs/metro-config/buildOneMetroResolverOverrides.cjs +9 -3
- package/dist/cjs/metro-config/buildOneMetroResolverOverrides.native.js +9 -4
- package/dist/cjs/metro-config/buildOneMetroResolverOverrides.native.js.map +1 -1
- package/dist/cjs/metro-config/buildOneMetroResolverOverrides.test.cjs +84 -0
- package/dist/cjs/metro-config/buildOneMetroResolverOverrides.test.native.js +91 -0
- package/dist/cjs/metro-config/buildOneMetroResolverOverrides.test.native.js.map +1 -0
- package/dist/cjs/polyfills-mobile.cjs +1 -0
- package/dist/cjs/polyfills-mobile.native.js +1 -0
- package/dist/cjs/polyfills-mobile.native.js.map +1 -1
- package/dist/cjs/router/router.native.js.map +1 -1
- package/dist/cjs/router/useInitializeOneRouter.cjs +2 -2
- package/dist/cjs/router/useInitializeOneRouter.native.js +2 -2
- package/dist/cjs/router/useInitializeOneRouter.native.js.map +1 -1
- package/dist/cjs/router/useInitializeOneRouter.preview-lifecycle.test.cjs +1 -1
- package/dist/cjs/router/useInitializeOneRouter.preview-lifecycle.test.native.js +1 -1
- package/dist/cjs/router/useInitializeOneRouter.preview-lifecycle.test.native.js.map +1 -1
- package/dist/cjs/stack-toolbar-implementation.cjs +30 -0
- package/dist/cjs/stack-toolbar-implementation.native.js +33 -0
- package/dist/cjs/stack-toolbar-implementation.native.js.map +1 -0
- package/dist/esm/__tests__/polyfills-mobile.test.mjs +35 -0
- package/dist/esm/__tests__/polyfills-mobile.test.mjs.map +1 -0
- package/dist/esm/__tests__/polyfills-mobile.test.native.js +80 -0
- package/dist/esm/__tests__/polyfills-mobile.test.native.js.map +1 -0
- package/dist/esm/createApp.native.js +1 -0
- package/dist/esm/createApp.native.js.map +1 -1
- package/dist/esm/headless/__tests__/useStack.test.mjs +56 -0
- package/dist/esm/headless/__tests__/useStack.test.mjs.map +1 -0
- package/dist/esm/headless/__tests__/useStack.test.native.js +59 -0
- package/dist/esm/headless/__tests__/useStack.test.native.js.map +1 -0
- package/dist/esm/headless/useStack.mjs +2 -1
- package/dist/esm/headless/useStack.mjs.map +1 -1
- package/dist/esm/headless/useStack.native.js +2 -1
- package/dist/esm/headless/useStack.native.js.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/layouts/Stack.mjs +13 -10
- package/dist/esm/layouts/Stack.mjs.map +1 -1
- package/dist/esm/layouts/Stack.native.js +14 -11
- package/dist/esm/layouts/Stack.native.js.map +1 -1
- package/dist/esm/layouts/stack-utils/StackScreen.mjs +6 -3
- package/dist/esm/layouts/stack-utils/StackScreen.mjs.map +1 -1
- package/dist/esm/layouts/stack-utils/StackScreen.native.js +7 -4
- package/dist/esm/layouts/stack-utils/StackScreen.native.js.map +1 -1
- package/dist/esm/layouts/stack-utils/StackToolbar.mjs +89 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.native.js +92 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.shared.mjs +31 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.shared.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.shared.native.js +32 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.shared.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.types.mjs +2 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.types.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.types.native.js +2 -0
- package/dist/esm/layouts/stack-utils/StackToolbar.types.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackToolbarImplementation.mjs +12 -0
- package/dist/esm/layouts/stack-utils/StackToolbarImplementation.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackToolbarImplementation.native.js +12 -0
- package/dist/esm/layouts/stack-utils/StackToolbarImplementation.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/__tests__/StackToolbar.test.mjs +67 -0
- package/dist/esm/layouts/stack-utils/__tests__/StackToolbar.test.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/__tests__/StackToolbar.test.native.js +73 -0
- package/dist/esm/layouts/stack-utils/__tests__/StackToolbar.test.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/index.mjs +2 -1
- package/dist/esm/layouts/stack-utils/index.mjs.map +1 -1
- package/dist/esm/layouts/stack-utils/index.native.js +2 -1
- package/dist/esm/layouts/stack-utils/index.native.js.map +1 -1
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.mjs +9 -3
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.mjs.map +1 -1
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.native.js +9 -4
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.native.js.map +1 -1
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.test.mjs +61 -0
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.test.mjs.map +1 -0
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.test.native.js +65 -0
- package/dist/esm/metro-config/buildOneMetroResolverOverrides.test.native.js.map +1 -0
- package/dist/esm/polyfills-mobile.mjs +4 -0
- package/dist/esm/polyfills-mobile.mjs.map +1 -1
- package/dist/esm/polyfills-mobile.native.js +4 -0
- package/dist/esm/polyfills-mobile.native.js.map +1 -1
- package/dist/esm/router/useInitializeOneRouter.mjs +1 -1
- package/dist/esm/router/useInitializeOneRouter.mjs.map +1 -1
- package/dist/esm/router/useInitializeOneRouter.native.js +1 -1
- package/dist/esm/router/useInitializeOneRouter.preview-lifecycle.test.mjs +1 -1
- package/dist/esm/router/useInitializeOneRouter.preview-lifecycle.test.mjs.map +1 -1
- package/dist/esm/router/useInitializeOneRouter.preview-lifecycle.test.native.js +1 -1
- package/dist/esm/router/useInitializeOneRouter.preview-lifecycle.test.native.js.map +1 -1
- package/dist/esm/stack-toolbar-implementation.mjs +3 -0
- package/dist/esm/stack-toolbar-implementation.mjs.map +1 -0
- package/dist/esm/stack-toolbar-implementation.native.js +3 -0
- package/dist/esm/stack-toolbar-implementation.native.js.map +1 -0
- package/package.json +33 -21
- package/src/__tests__/polyfills-mobile.test.ts +37 -0
- package/src/headless/__tests__/useStack.test.tsx +54 -0
- package/src/headless/types.ts +2 -1
- package/src/headless/useStack.ts +2 -1
- package/src/index.ts +12 -0
- package/src/layouts/Stack.tsx +33 -8
- package/src/layouts/stack-utils/README.md +1 -0
- package/src/layouts/stack-utils/StackScreen.tsx +26 -5
- package/src/layouts/stack-utils/StackToolbar.shared.ts +44 -0
- package/src/layouts/stack-utils/StackToolbar.tsx +134 -0
- package/src/layouts/stack-utils/StackToolbar.types.ts +100 -0
- package/src/layouts/stack-utils/StackToolbarImplementation.tsx +39 -0
- package/src/layouts/stack-utils/__tests__/StackToolbar.test.tsx +70 -0
- package/src/layouts/stack-utils/index.tsx +17 -0
- package/src/metro-config/buildOneMetroResolverOverrides.test.ts +88 -0
- package/src/metro-config/buildOneMetroResolverOverrides.ts +20 -8
- package/src/polyfills-mobile.ts +5 -0
- package/src/router/router.ts +5 -5
- package/src/router/useInitializeOneRouter.preview-lifecycle.test.ts +1 -1
- package/src/router/useInitializeOneRouter.ts +2 -2
- package/src/stack-toolbar-implementation.ts +8 -0
- package/types/headless/types.d.ts +4 -1
- package/types/headless/types.d.ts.map +1 -1
- package/types/headless/useStack.d.ts.map +1 -1
- package/types/index.d.ts +1 -1
- package/types/index.d.ts.map +1 -1
- package/types/layouts/Stack.d.ts +12 -0
- package/types/layouts/Stack.d.ts.map +1 -1
- package/types/layouts/stack-utils/StackScreen.d.ts +2 -1
- package/types/layouts/stack-utils/StackScreen.d.ts.map +1 -1
- package/types/layouts/stack-utils/StackToolbar.d.ts +28 -0
- package/types/layouts/stack-utils/StackToolbar.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackToolbar.shared.d.ts +5 -0
- package/types/layouts/stack-utils/StackToolbar.shared.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackToolbar.types.d.ts +83 -0
- package/types/layouts/stack-utils/StackToolbar.types.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackToolbarImplementation.d.ts +12 -0
- package/types/layouts/stack-utils/StackToolbarImplementation.d.ts.map +1 -0
- package/types/layouts/stack-utils/index.d.ts +3 -1
- package/types/layouts/stack-utils/index.d.ts.map +1 -1
- package/types/metro-config/buildOneMetroResolverOverrides.d.ts +2 -1
- package/types/metro-config/buildOneMetroResolverOverrides.d.ts.map +1 -1
- package/types/metro-config/buildOneMetroResolverOverrides.test.d.ts +2 -0
- package/types/metro-config/buildOneMetroResolverOverrides.test.d.ts.map +1 -0
- package/types/polyfills-mobile.d.ts +1 -0
- package/types/polyfills-mobile.d.ts.map +1 -1
- package/types/router/router.d.ts +1 -1
- package/types/router/router.d.ts.map +1 -1
- package/types/stack-toolbar-implementation.d.ts +3 -0
- package/types/stack-toolbar-implementation.d.ts.map +1 -0
- package/types/ui/TabContext.d.ts +2 -10
- package/types/ui/TabContext.d.ts.map +1 -1
- package/types/ui/TabRouter.d.ts.map +1 -1
- package/types/ui/Tabs.shared.d.ts +1 -1
- package/types/ui/Tabs.shared.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","createElement","useContext","useMemo","getPathFromState","getResolvedLinking","StackContext","StackStateProvider","state","descriptors","children","linking","value","screens","routes","map","route","index","descriptor","key","options","href","config","name","params","isFocused","keepMounted","element","render","focused","Provider","useStack","Error"],"sources":["../../../src/headless/useStack.ts"],"sourcesContent":[null],"mappings":";;AAIA,SACEA,aAAA,EACAC,aAAA,EACAC,UAAA,EACAC,OAAA,QAGK;AAGP,SAASC,gBAAA,QAAwB;AACjC,SAASC,kBAAA,QAA0B;AAenC,MAAMC,YAAA,
|
|
1
|
+
{"version":3,"names":["createContext","createElement","useContext","useMemo","getPathFromState","exposeStackToolbarConfig","getResolvedLinking","StackContext","StackStateProvider","state","descriptors","children","linking","value","screens","routes","map","route","index","descriptor","key","options","href","config","name","params","isFocused","keepMounted","element","render","focused","Provider","useStack","Error"],"sources":["../../../src/headless/useStack.ts"],"sourcesContent":[null],"mappings":";;AAIA,SACEA,aAAA,EACAC,aAAA,EACAC,UAAA,EACAC,OAAA,QAGK;AAGP,SAASC,gBAAA,QAAwB;AACjC,SAASC,wBAAA,QAAgC;AACzC,SAASC,kBAAA,QAA0B;AAenC,MAAMC,YAAA,GAAeP,aAAA,CAAqC,IAAI;AAEvD,SAASQ,mBAAmB;EACjCC,KAAA;EACAC,WAAA;EACAC;AACF,GAA4B;EAC1B,MAAMC,OAAA,GAAUN,kBAAA,CAAmB;EACnC,MAAMO,KAAA,GAAQV,OAAA,CAAwB,MAAM;IAC1C,MAAMW,OAAA,GAAUL,KAAA,CAAMM,MAAA,CAAOC,GAAA,CAAI,CAACC,KAAA,EAAOC,KAAA,KAAU;MACjD,MAAMC,UAAA,GAAaT,WAAA,CAAYO,KAAA,CAAMG,GAAG;MACxC,MAAMC,OAAA,GAAUhB,wBAAA,CAAyBc,UAAA,CAAWE,OAAO;MAC3D,MAAMC,IAAA,IAAQV,OAAA,EAASR,gBAAA,IAAoBA,gBAAA,EACzC;QAAE,GAAGK,KAAA;QAAOS;MAAM,GAClBN,OAAA,EAASW,MACX;MAEA,OAAO;QACLH,GAAA,EAAKH,KAAA,CAAMG,GAAA;QACXI,IAAA,EAAMP,KAAA,CAAMO,IAAA;QACZC,MAAA,EAASR,KAAA,CAAMQ,MAAA,IAAU,CAAC;QAC1BH,IAAA;QACAI,SAAA,EAAWR,KAAA,KAAUT,KAAA,CAAMS,KAAA;QAC3BS,WAAA,EAAaN,OAAA,CAAQM,WAAA,KAAgB;QACrCN,OAAA;QACAO,OAAA,EAAST,UAAA,CAAWU,MAAA,CAAO;MAC7B;IACF,CAAC;IAED,OAAO;MAAEf,OAAA;MAASgB,OAAA,EAAShB,OAAA,CAAQL,KAAA,CAAMS,KAAK;IAAG;EACnD,GAAG,CAACR,WAAA,EAAaE,OAAA,EAASH,KAAK,CAAC;EAEhC,OAAOR,aAAA,CAAcM,YAAA,CAAawB,QAAA,EAAU;IAAElB;EAAM,GAAGF,QAAQ;AACjE;AAEO,SAASqB,SAAA,EAA2B;EACzC,MAAMnB,KAAA,GAAQX,UAAA,CAAWK,YAAY;EACrC,IAAI,CAACM,KAAA,EAAO;IACV,MAAM,IAAIoB,KAAA,CACR,kHACF;EACF;EACA,OAAOpB,KAAA;AACT","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { createContext, createElement, useContext, useMemo } from "react";
|
|
4
4
|
import { getPathFromState } from "../fork/getPathFromState.native.js";
|
|
5
|
+
import { exposeStackToolbarConfig } from "../layouts/stack-utils/StackToolbar.shared.native.js";
|
|
5
6
|
import { getResolvedLinking } from "../router/linkingConfig.native.js";
|
|
6
7
|
var StackContext = createContext(null);
|
|
7
8
|
function StackStateProvider(param) {
|
|
@@ -15,7 +16,7 @@ function StackStateProvider(param) {
|
|
|
15
16
|
var screens = state.routes.map(function (route, index) {
|
|
16
17
|
var _ref, _route_params;
|
|
17
18
|
var descriptor = descriptors[route.key];
|
|
18
|
-
var options = descriptor.options;
|
|
19
|
+
var options = exposeStackToolbarConfig(descriptor.options);
|
|
19
20
|
var href = ((_ref = linking === null || linking === void 0 ? void 0 : linking.getPathFromState) !== null && _ref !== void 0 ? _ref : getPathFromState)({
|
|
20
21
|
...state,
|
|
21
22
|
index
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","createElement","useContext","useMemo","getPathFromState","getResolvedLinking","StackContext","StackStateProvider","param","state","descriptors","children","linking","value","screens","routes","map","route","index","_ref","_route_params","descriptor","key","options","href","config","name","params","isFocused","keepMounted","element","render","focused","Provider","useStack","Error"],"sources":["../../../src/headless/useStack.ts"],"sourcesContent":[null],"mappings":";;AAIA,SAAAA,aAAA,EAAAC,aAAA,EAAAC,UAAA,EAAAC,OAAA;AAAA,SACEC,gBAAA;AAAA,SACAC,kBAAA;AAAA,IACAC,YAAA,
|
|
1
|
+
{"version":3,"names":["createContext","createElement","useContext","useMemo","getPathFromState","exposeStackToolbarConfig","getResolvedLinking","StackContext","StackStateProvider","param","state","descriptors","children","linking","value","screens","routes","map","route","index","_ref","_route_params","descriptor","key","options","href","config","name","params","isFocused","keepMounted","element","render","focused","Provider","useStack","Error"],"sources":["../../../src/headless/useStack.ts"],"sourcesContent":[null],"mappings":";;AAIA,SAAAA,aAAA,EAAAC,aAAA,EAAAC,UAAA,EAAAC,OAAA;AAAA,SACEC,gBAAA;AAAA,SACAC,wBAAA;AAAA,SACAC,kBAAA;AAAA,IACAC,YAAA,GAAAP,aAAA;AAAA,SAGKQ,mBAAAC,KAAA;EAGP;IAAAC,KAAS;IAAAC,WAAA;IAAAC;EAAwB,IAAAH,KAAA;EACjC,IAAAI,OAAS,GAAAP,kBAAA;EACT,IAAAQ,KAAS,GAAAX,OAAA;IAeT,IAAMY,OAAA,GAAAL,KAAe,CAAAM,MAAA,CAAAC,GAAA,CAAqC,UAAIC,KAAA,EAAAC,KAAA;MAEvD,IAASC,IAAA,EAAAC,aAAmB;MACjC,IAAAC,UAAA,GAAAX,WAAA,CAAAO,KAAA,CAAAK,GAAA;MACA,IAAAC,OAAA,GAAAnB,wBAAA,CAAAiB,UAAA,CAAAE,OAAA;MACA,IAAAC,IAAA,KAAAL,IAAA,GAAAP,OAAA,aAAAA,OAAA,uBAAAA,OAAA,CAAAT,gBAAA,cAAAgB,IAAA,cAAAA,IAAA,GAAAhB,gBAAA;QAC0B,GAAAM,KAAA;QACpBS;MACN,GAAMN,OAAQ,SAAwB,IAAAA,OAAM,uBAAAA,OAAA,CAAAa,MAAA;MAC1C,OAAM;QACJH,GAAA,EAAML,KAAA,CAAAK,GAAA;QACNI,IAAM,EAAAT,KAAA,CAAAS,IAAU;QAChBC,MAAM,GAAAP,aAAiB,GAAAH,KAAA,CAAAU,MAAA,MAAoB,QAAAP,aAAA,cAAAA,aAAA;QACzCI,IAAE;QACFI,SAAS,EAAAV,KAAA,KAAAT,KAAA,CAAAS,KAAA;QACXW,WAAA,EAAAN,OAAA,CAAAM,WAAA;QAEAN,OAAO;QACLO,OAAK,EAAAT,UAAM,CAAAU,MAAA;MAAA;IACC;IACc,OAC1B;MAAAjB,OACA;MAA2BkB,OAC3B,EAAAlB,OAAa,CAAAL,KAAA,CAAQS,KAAA;IAAgB;EACrC,IAC2BR,WAC7B,EACFE,OAAC,EAEDH,KAAA,CACF;EAEA,OAAOT,aAAA,CAAcM,YAAA,CAAa2B,QAAA,EAAU;IAC9CpB;EAEO,GAAAF,QAAS;AACd;AACA,SAAKuB,QAAOA,CAAA;EACV,IAAArB,KAAM,GAAIZ,UAAA,CAAAK,YAAA;EAAA,IACR,CAAAO,KAAA;IACF,UAAAsB,KAAA;EACF;EACA,OAAOtB,KAAA;AACT","ignoreList":[]}
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createApp","useIsFocused","SafeAreaView","useSafeAreaInsets","onClientLoaderResolve","createMiddleware","createAPIRoute","getURL","Head","useActiveParams","useGlobalSearchParams","useLocalSearchParams","useNavigationContainerRef","useParams","usePathname","useRootNavigationState","useRouter","useSearchParams","useSegments","useUnstableGlobalHref","href","getLinking","useSitemap","Presentations","useStack","Stack","Tabs","Protected","useTabs","useDrawer","withLayoutContext","Link","Redirect","useLinkTo","Root","render","createRoute","route","closeIntercept","isInterceptedNavigation","NamedSlot","router","routerStore","useNavigation","registerPreloadedRoute","useBlocker","ParamValidationError","RouteValidationError","validateParams","zodParamValidator","useValidationState","useFocusEffect","getLoaderTimingHistory","refetchLoader","useLoader","useLoaderState","setClientMatches","useMatch","useMatches","usePageMatch","useServerHeadInsertion","isResponse","redirect","removeParams","watchFile","lazyWithRetry","handleSkewError","isChunkLoadError","loadWithRetry","ErrorBoundary","LoadProgressBar","Navigator","Slot","ScrollBehavior","SourceInspector","useScrollGroup","getServerData","setResponseHeaders","setServerData"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AA2C1B,SAASC,YAAA,QAAoB;AAE7B,cAAc;AAId,SAASC,YAAA,EAAcC,iBAAA,QAAyB;AAChD,SAASC,qBAAA,QAA6B;AAGtC,SAASC,gBAAA,QAAyC;AAElD,SACEC,cAAA,QAMK;AACP,SAASC,MAAA,QAAc;AACvB,SAASC,IAAA,QAAY;AAErB,SACEC,eAAA,EACAC,qBAAA,EACAC,oBAAA,EACAC,yBAAA,EACAC,SAAA,EACAC,WAAA,EACAC,sBAAA,EACAC,SAAA,EACAC,eAAA,EACAC,WAAA,EACAC,qBAAA,QACK;AACP,SAASC,IAAA,QAAY;AACrB,SAASC,UAAA,QAAyC;AAClD,SAASC,UAAA,QAAoC;AAE7C,SAASC,aAAA,QAA8C;AACvD,SAASC,QAAA,QAAgB;AAUzB,SAASC,KAAA,QAAa;AACtB,SAASC,IAAA,QAAY;AACrB,SAASC,SAAA,QAAsC;
|
|
1
|
+
{"version":3,"names":["createApp","useIsFocused","SafeAreaView","useSafeAreaInsets","onClientLoaderResolve","createMiddleware","createAPIRoute","getURL","Head","useActiveParams","useGlobalSearchParams","useLocalSearchParams","useNavigationContainerRef","useParams","usePathname","useRootNavigationState","useRouter","useSearchParams","useSegments","useUnstableGlobalHref","href","getLinking","useSitemap","Presentations","useStack","Stack","Tabs","Protected","useTabs","useDrawer","withLayoutContext","Link","Redirect","useLinkTo","Root","render","createRoute","route","closeIntercept","isInterceptedNavigation","NamedSlot","router","routerStore","useNavigation","registerPreloadedRoute","useBlocker","ParamValidationError","RouteValidationError","validateParams","zodParamValidator","useValidationState","useFocusEffect","getLoaderTimingHistory","refetchLoader","useLoader","useLoaderState","setClientMatches","useMatch","useMatches","usePageMatch","useServerHeadInsertion","isResponse","redirect","removeParams","watchFile","lazyWithRetry","handleSkewError","isChunkLoadError","loadWithRetry","ErrorBoundary","LoadProgressBar","Navigator","Slot","ScrollBehavior","SourceInspector","useScrollGroup","getServerData","setResponseHeaders","setServerData"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AA2C1B,SAASC,YAAA,QAAoB;AAE7B,cAAc;AAId,SAASC,YAAA,EAAcC,iBAAA,QAAyB;AAChD,SAASC,qBAAA,QAA6B;AAGtC,SAASC,gBAAA,QAAyC;AAElD,SACEC,cAAA,QAMK;AACP,SAASC,MAAA,QAAc;AACvB,SAASC,IAAA,QAAY;AAErB,SACEC,eAAA,EACAC,qBAAA,EACAC,oBAAA,EACAC,yBAAA,EACAC,SAAA,EACAC,WAAA,EACAC,sBAAA,EACAC,SAAA,EACAC,eAAA,EACAC,WAAA,EACAC,qBAAA,QACK;AACP,SAASC,IAAA,QAAY;AACrB,SAASC,UAAA,QAAyC;AAClD,SAASC,UAAA,QAAoC;AAE7C,SAASC,aAAA,QAA8C;AACvD,SAASC,QAAA,QAAgB;AAUzB,SAASC,KAAA,QAAa;AACtB,SAASC,IAAA,QAAY;AACrB,SAASC,SAAA,QAAsC;AAwB/C,SAASC,OAAA,QAAe;AACxB,SAASC,SAAA,QAAiB;AAG1B,SAASC,iBAAA,QAAyB;AAClC,SAASC,IAAA,QAAY;AACrB,SAASC,QAAA,QAAgB;AACzB,SAASC,SAAA,QAAiB;AAC1B,SAASC,IAAA,QAAY;AAErB,SAASC,MAAA,QAAc;AACvB,SAASC,WAAA,EAAaC,KAAA,QAAa;AAEnC,SAASC,cAAA,EAAgBC,uBAAA,QAA+B;AACxD,SAASC,SAAA,QAAiB;AAE1B,SAASC,MAAA,QAAc;AACvB,YAAYC,WAAA,MAAiB;AAC7B,SAASC,aAAA,QAAqB;AAC9B,SAASC,sBAAA,QAA8B;AAGvC,SACEC,UAAA,QAIK;AAEP,SACEC,oBAAA,EACAC,oBAAA,EACAC,cAAA,EACAC,iBAAA,QAOK;AAEP,SAASC,kBAAA,QAAgD;AAEzD,SAASC,cAAA,QAAsB;AAC/B,SACEC,sBAAA,EACAC,aAAA,EACAC,SAAA,EACAC,cAAA,QAEK;AACP,SACEC,gBAAA,EACAC,QAAA,EACAC,UAAA,EACAC,YAAA,QAEK;AACP,SACEC,sBAAA,QAEK;AACP,SAASC,UAAA,QAAkB;AAC3B,SAASC,QAAA,QAAgB;AACzB,SAASC,YAAA,QAAoB;AAC7B,SAASC,SAAA,QAAiB;AAI1B,SAASC,aAAA,QAAqB;AAC9B,SAASC,eAAA,EAAiBC,gBAAA,EAAkBC,aAAA,QAAqB;AACjE,SAASC,aAAA,QAAqB;AAC9B,SAASC,eAAA,QAAuB;AAChC,SAASC,SAAA,EAAWC,IAAA,QAAY;AAChC,SAASC,cAAA,QAAsB;AAC/B,SAASC,eAAA,QAAkD;AAI3D,SAASC,cAAA,QAAsB;AAE/B,SAASC,aAAA,EAAeC,kBAAA,EAAoBC,aAAA,QAAqB","ignoreList":[]}
|
package/dist/esm/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createApp","useIsFocused","SafeAreaView","useSafeAreaInsets","onClientLoaderResolve","createMiddleware","createAPIRoute","getURL","Head","useActiveParams","useGlobalSearchParams","useLocalSearchParams","useNavigationContainerRef","useParams","usePathname","useRootNavigationState","useRouter","useSearchParams","useSegments","useUnstableGlobalHref","href","getLinking","useSitemap","Presentations","useStack","Stack","Tabs","Protected","useTabs","useDrawer","withLayoutContext","Link","Redirect","useLinkTo","Root","render","createRoute","route","closeIntercept","isInterceptedNavigation","NamedSlot","router","routerStore","useNavigation","registerPreloadedRoute","useBlocker","ParamValidationError","RouteValidationError","validateParams","zodParamValidator","useValidationState","useFocusEffect","getLoaderTimingHistory","refetchLoader","useLoader","useLoaderState","setClientMatches","useMatch","useMatches","usePageMatch","useServerHeadInsertion","isResponse","redirect","removeParams","watchFile","lazyWithRetry","handleSkewError","isChunkLoadError","loadWithRetry","ErrorBoundary","LoadProgressBar","Navigator","Slot","ScrollBehavior","SourceInspector","useScrollGroup","getServerData","setResponseHeaders","setServerData"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AA2C1B,SAASC,YAAA,QAAoB;AAE7B,cAAc;AAId,SAASC,YAAA,EAAcC,iBAAA,QAAyB;AAChD,SAASC,qBAAA,QAA6B;AAGtC,SAASC,gBAAA,QAAyC;AAElD,SACEC,cAAA,QAMK;AACP,SAASC,MAAA,QAAc;AACvB,SAASC,IAAA,QAAY;AAErB,SACEC,eAAA,EACAC,qBAAA,EACAC,oBAAA,EACAC,yBAAA,EACAC,SAAA,EACAC,WAAA,EACAC,sBAAA,EACAC,SAAA,EACAC,eAAA,EACAC,WAAA,EACAC,qBAAA,QACK;AACP,SAASC,IAAA,QAAY;AACrB,SAASC,UAAA,QAAyC;AAClD,SAASC,UAAA,QAAoC;AAE7C,SAASC,aAAA,QAA8C;AACvD,SAASC,QAAA,QAAgB;AAUzB,SAASC,KAAA,QAAa;AACtB,SAASC,IAAA,QAAY;AACrB,SAASC,SAAA,QAAsC;
|
|
1
|
+
{"version":3,"names":["createApp","useIsFocused","SafeAreaView","useSafeAreaInsets","onClientLoaderResolve","createMiddleware","createAPIRoute","getURL","Head","useActiveParams","useGlobalSearchParams","useLocalSearchParams","useNavigationContainerRef","useParams","usePathname","useRootNavigationState","useRouter","useSearchParams","useSegments","useUnstableGlobalHref","href","getLinking","useSitemap","Presentations","useStack","Stack","Tabs","Protected","useTabs","useDrawer","withLayoutContext","Link","Redirect","useLinkTo","Root","render","createRoute","route","closeIntercept","isInterceptedNavigation","NamedSlot","router","routerStore","useNavigation","registerPreloadedRoute","useBlocker","ParamValidationError","RouteValidationError","validateParams","zodParamValidator","useValidationState","useFocusEffect","getLoaderTimingHistory","refetchLoader","useLoader","useLoaderState","setClientMatches","useMatch","useMatches","usePageMatch","useServerHeadInsertion","isResponse","redirect","removeParams","watchFile","lazyWithRetry","handleSkewError","isChunkLoadError","loadWithRetry","ErrorBoundary","LoadProgressBar","Navigator","Slot","ScrollBehavior","SourceInspector","useScrollGroup","getServerData","setResponseHeaders","setServerData"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AA2C1B,SAASC,YAAA,QAAoB;AAE7B,cAAc;AAId,SAASC,YAAA,EAAcC,iBAAA,QAAyB;AAChD,SAASC,qBAAA,QAA6B;AAGtC,SAASC,gBAAA,QAAyC;AAElD,SACEC,cAAA,QAMK;AACP,SAASC,MAAA,QAAc;AACvB,SAASC,IAAA,QAAY;AAErB,SACEC,eAAA,EACAC,qBAAA,EACAC,oBAAA,EACAC,yBAAA,EACAC,SAAA,EACAC,WAAA,EACAC,sBAAA,EACAC,SAAA,EACAC,eAAA,EACAC,WAAA,EACAC,qBAAA,QACK;AACP,SAASC,IAAA,QAAY;AACrB,SAASC,UAAA,QAAyC;AAClD,SAASC,UAAA,QAAoC;AAE7C,SAASC,aAAA,QAA8C;AACvD,SAASC,QAAA,QAAgB;AAUzB,SAASC,KAAA,QAAa;AACtB,SAASC,IAAA,QAAY;AACrB,SAASC,SAAA,QAAsC;AAwB/C,SAASC,OAAA,QAAe;AACxB,SAASC,SAAA,QAAiB;AAG1B,SAASC,iBAAA,QAAyB;AAClC,SAASC,IAAA,QAAY;AACrB,SAASC,QAAA,QAAgB;AACzB,SAASC,SAAA,QAAiB;AAC1B,SAASC,IAAA,QAAY;AAErB,SAASC,MAAA,QAAc;AACvB,SAASC,WAAA,EAAaC,KAAA,QAAa;AAEnC,SAASC,cAAA,EAAgBC,uBAAA,QAA+B;AACxD,SAASC,SAAA,QAAiB;AAE1B,SAASC,MAAA,QAAc;AACvB,YAAYC,WAAA,MAAiB;AAC7B,SAASC,aAAA,QAAqB;AAC9B,SAASC,sBAAA,QAA8B;AAGvC,SACEC,UAAA,QAIK;AAEP,SACEC,oBAAA,EACAC,oBAAA,EACAC,cAAA,EACAC,iBAAA,QAOK;AAEP,SAASC,kBAAA,QAAgD;AAEzD,SAASC,cAAA,QAAsB;AAC/B,SACEC,sBAAA,EACAC,aAAA,EACAC,SAAA,EACAC,cAAA,QAEK;AACP,SACEC,gBAAA,EACAC,QAAA,EACAC,UAAA,EACAC,YAAA,QAEK;AACP,SACEC,sBAAA,QAEK;AACP,SAASC,UAAA,QAAkB;AAC3B,SAASC,QAAA,QAAgB;AACzB,SAASC,YAAA,QAAoB;AAC7B,SAASC,SAAA,QAAiB;AAI1B,SAASC,aAAA,QAAqB;AAC9B,SAASC,eAAA,EAAiBC,gBAAA,EAAkBC,aAAA,QAAqB;AACjE,SAASC,aAAA,QAAqB;AAC9B,SAASC,eAAA,QAAuB;AAChC,SAASC,SAAA,EAAWC,IAAA,QAAY;AAChC,SAASC,cAAA,QAAsB;AAC/B,SAASC,eAAA,QAAkD;AAI3D,SAASC,cAAA,QAAsB;AAE/B,SAASC,aAAA,EAAeC,kBAAA,EAAoBC,aAAA,QAAqB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createApp","useIsFocused","SafeAreaView","useSafeAreaInsets","onClientLoaderResolve","createMiddleware","createAPIRoute","getURL","Head","useActiveParams","useGlobalSearchParams","useLocalSearchParams","useNavigationContainerRef","useParams","usePathname","useRootNavigationState","useRouter","useSearchParams","useSegments","useUnstableGlobalHref","href","getLinking","useSitemap","Presentations","useStack","Stack","Tabs","Protected","useTabs","useDrawer","withLayoutContext","Link","Redirect","useLinkTo","Root","render","createRoute","route","closeIntercept","isInterceptedNavigation","NamedSlot","router","_routerStore","useNavigation","registerPreloadedRoute","useBlocker","ParamValidationError","RouteValidationError","validateParams","zodParamValidator","useValidationState","useFocusEffect","getLoaderTimingHistory","refetchLoader","useLoader","useLoaderState","setClientMatches","useMatch","useMatches","usePageMatch","useServerHeadInsertion","isResponse","redirect","removeParams","watchFile","lazyWithRetry","handleSkewError","isChunkLoadError","loadWithRetry","ErrorBoundary","LoadProgressBar","Navigator","Slot","ScrollBehavior","SourceInspector","useScrollGroup","getServerData","setResponseHeaders","setServerData"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AA2C1B,SAASC,YAAA,QAAoB;AAE7B,cAAc;AAId,SAASC,YAAA,EAAcC,iBAAA,QAAyB;AAChD,SAASC,qBAAA,QAA6B;AAGtC,SAASC,gBAAA,QAAyC;AAElD,SAAAC,cAAA;AAAA,SACEC,MAAA;AAAA,SAMKC,IAAA;AACP,SAASC,eAAc,EAAAC,qBAAA,EAAAC,oBAAA,EAAAC,yBAAA,EAAAC,SAAA,EAAAC,WAAA,EAAAC,sBAAA,EAAAC,SAAA,EAAAC,eAAA,EAAAC,WAAA,EAAAC,qBAAA;AACvB,SAASC,IAAA,QAAY;AAErB,SAAAC,UAAA;AAAA,SACEC,UAAA;AAAA,SACAC,aAAA;AAAA,SACAC,QAAA;AAAA,SACAC,KAAA;AAAA,SACAC,IAAA;AAAA,SACAC,SAAA;AAAA,SACAC,OAAA;AAAA,SACAC,SAAA;AAAA,SACAC,iBAAA;AAAA,SACAC,IAAA;AAAA,SACAC,QAAA;AAAA,SACKC,SAAA;AACP,SAASC,IAAA,QAAY;AACrB,SAASC,MAAA,4BAAyC;AAClD,SAASC,WAAA,EAAAC,KAAoC;AAE7C,SAASC,cAAA,EAAAC,uBAA8C;AACvD,SAASC,SAAA,QAAgB;AAUzB,SAASC,MAAA,QAAa;AACtB,YAASC,YAAY;AACrB,SAASC,aAAA,QAAsC;
|
|
1
|
+
{"version":3,"names":["createApp","useIsFocused","SafeAreaView","useSafeAreaInsets","onClientLoaderResolve","createMiddleware","createAPIRoute","getURL","Head","useActiveParams","useGlobalSearchParams","useLocalSearchParams","useNavigationContainerRef","useParams","usePathname","useRootNavigationState","useRouter","useSearchParams","useSegments","useUnstableGlobalHref","href","getLinking","useSitemap","Presentations","useStack","Stack","Tabs","Protected","useTabs","useDrawer","withLayoutContext","Link","Redirect","useLinkTo","Root","render","createRoute","route","closeIntercept","isInterceptedNavigation","NamedSlot","router","_routerStore","useNavigation","registerPreloadedRoute","useBlocker","ParamValidationError","RouteValidationError","validateParams","zodParamValidator","useValidationState","useFocusEffect","getLoaderTimingHistory","refetchLoader","useLoader","useLoaderState","setClientMatches","useMatch","useMatches","usePageMatch","useServerHeadInsertion","isResponse","redirect","removeParams","watchFile","lazyWithRetry","handleSkewError","isChunkLoadError","loadWithRetry","ErrorBoundary","LoadProgressBar","Navigator","Slot","ScrollBehavior","SourceInspector","useScrollGroup","getServerData","setResponseHeaders","setServerData"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,SAAA,QAAiB;AA2C1B,SAASC,YAAA,QAAoB;AAE7B,cAAc;AAId,SAASC,YAAA,EAAcC,iBAAA,QAAyB;AAChD,SAASC,qBAAA,QAA6B;AAGtC,SAASC,gBAAA,QAAyC;AAElD,SAAAC,cAAA;AAAA,SACEC,MAAA;AAAA,SAMKC,IAAA;AACP,SAASC,eAAc,EAAAC,qBAAA,EAAAC,oBAAA,EAAAC,yBAAA,EAAAC,SAAA,EAAAC,WAAA,EAAAC,sBAAA,EAAAC,SAAA,EAAAC,eAAA,EAAAC,WAAA,EAAAC,qBAAA;AACvB,SAASC,IAAA,QAAY;AAErB,SAAAC,UAAA;AAAA,SACEC,UAAA;AAAA,SACAC,aAAA;AAAA,SACAC,QAAA;AAAA,SACAC,KAAA;AAAA,SACAC,IAAA;AAAA,SACAC,SAAA;AAAA,SACAC,OAAA;AAAA,SACAC,SAAA;AAAA,SACAC,iBAAA;AAAA,SACAC,IAAA;AAAA,SACAC,QAAA;AAAA,SACKC,SAAA;AACP,SAASC,IAAA,QAAY;AACrB,SAASC,MAAA,4BAAyC;AAClD,SAASC,WAAA,EAAAC,KAAoC;AAE7C,SAASC,cAAA,EAAAC,uBAA8C;AACvD,SAASC,SAAA,QAAgB;AAUzB,SAASC,MAAA,QAAa;AACtB,YAASC,YAAY;AACrB,SAASC,aAAA,QAAsC;AAwB/C,SAASC,sBAAe;AACxB,SAASC,UAAA,QAAiB;AAG1B,SAASC,oBAAA,EAAAC,oBAAyB,EAAAC,cAAA,EAAAC,iBAAA;AAClC,SAASC,kBAAY;AACrB,SAASC,cAAA,QAAgB;AACzB,SAASC,sBAAiB,EAAAC,aAAA,EAAAC,SAAA,EAAAC,cAAA;AAC1B,SAASC,gBAAY,EAAAC,QAAA,EAAAC,UAAA,EAAAC,YAAA;AAErB,SAASC,sBAAc;AACvB,SAASC,UAAA,QAAa,8BAAa;AAEnC,SAASC,QAAA,QAAgB;AACzB,SAASC,YAAA,QAAiB;AAE1B,SAASC,SAAA,QAAc;AACvB,SAAAC,aAAY,QAAiB;AAC7B,SAASC,eAAA,EAAAC,gBAAqB,EAAAC,aAAA;AAC9B,SAASC,aAAA,yCAA8B;AAGvC,SAAAC,eAAA;AAAA,SACEC,SAAA,EAAAC,IAAA;AAAA,SAIKC,cAAA;AAEP,SAAAC,eAAA;AAAA,SACEC,cAAA;AAAA,SACAC,aAAA,EAAAC,kBAAA,EAAAC,aAAA;AAAA,SAEAT,aAAA,EAAA7D,IAAA,EASFuB,IAAA,EAEAuC,eAAS,EACT9B,SAAA,EACE+B,SAAA,EACAzB,oBAAA,EACAvB,aAAA,EACAI,SAAA,EAAAK,QAEK,EACPE,IAAA,EACEa,oBAAA,EACA7C,YAAA,EACAuE,cAAA,EACAD,IAAA,EAAAE,eAEK,EACPjD,KAAA,EACEC,IAAA,EAAAY,cAEK,EACPhC,cAAS,EACTN,SAAS,EACTK,gBAAS,EACT+B,WAAS,EAITf,UAAS,EACT+B,sBAAS,EACTwB,aAAS,EACTrE,MAAA,EACA2D,eAAS,EACT9C,IAAA,EACA+C,gBAAS,EAIT5B,uBAAS,EAETsB,UAAS,E","ignoreList":[]}
|
|
@@ -3,15 +3,16 @@ import { isChildOfType } from "../utils/children.mjs";
|
|
|
3
3
|
import { Protected } from "../views/Protected.mjs";
|
|
4
4
|
import { Screen } from "../views/Screen.mjs";
|
|
5
5
|
import { createStackNavigator, getStackNavigatorProps } from "./stack-navigator.mjs";
|
|
6
|
-
import { appendScreenStackPropsToOptions, StackHeader, StackHeaderComponent, StackHeaderSearchBar, StackScreen } from "./stack-utils/index.mjs";
|
|
6
|
+
import { appendScreenStackPropsToOptions, StackHeader, StackHeaderComponent, StackHeaderSearchBar, StackScreen, StackToolbar } from "./stack-utils/index.mjs";
|
|
7
7
|
import { withLayoutContext } from "./withLayoutContext.mjs";
|
|
8
|
+
import { getStackToolbarImplementation } from "./stack-utils/StackToolbarImplementation.mjs";
|
|
8
9
|
import { jsx } from "react/jsx-runtime";
|
|
9
10
|
const NativeStackNavigator = createStackNavigator().Navigator;
|
|
10
11
|
const RNStack = withLayoutContext(NativeStackNavigator);
|
|
11
|
-
function mapChildren(children) {
|
|
12
|
+
function mapChildren(children, toolbarImplementation) {
|
|
12
13
|
return Children.toArray(children).map((child, index) => {
|
|
13
14
|
if (isChildOfType(child, StackScreen)) {
|
|
14
|
-
const options = appendScreenStackPropsToOptions({}, child.props);
|
|
15
|
+
const options = appendScreenStackPropsToOptions({}, child.props, toolbarImplementation);
|
|
15
16
|
const {
|
|
16
17
|
children: _,
|
|
17
18
|
...rest
|
|
@@ -24,7 +25,7 @@ function mapChildren(children) {
|
|
|
24
25
|
if (isChildOfType(child, Protected)) {
|
|
25
26
|
return React.cloneElement(child, {
|
|
26
27
|
key: `protected-${index}`
|
|
27
|
-
}, mapChildren(child.props.children));
|
|
28
|
+
}, mapChildren(child.props.children, toolbarImplementation));
|
|
28
29
|
}
|
|
29
30
|
if (isChildOfType(child, StackHeaderComponent)) {
|
|
30
31
|
return null;
|
|
@@ -41,6 +42,7 @@ const StackWithComposition = React.forwardRef((props, ref) => {
|
|
|
41
42
|
screenOptions,
|
|
42
43
|
...rest
|
|
43
44
|
} = props;
|
|
45
|
+
const toolbarImplementation = getStackToolbarImplementation();
|
|
44
46
|
const screenOptionsWithHeader = useMemo(() => {
|
|
45
47
|
const stackHeader = Children.toArray(children).find(child => isChildOfType(child, StackHeaderComponent));
|
|
46
48
|
if (stackHeader && isChildOfType(stackHeader, StackHeaderComponent)) {
|
|
@@ -51,16 +53,16 @@ const StackWithComposition = React.forwardRef((props, ref) => {
|
|
|
51
53
|
if (typeof screenOptions === "function") {
|
|
52
54
|
return (...args) => {
|
|
53
55
|
const opts = screenOptions(...args);
|
|
54
|
-
return appendScreenStackPropsToOptions(opts, headerProps);
|
|
56
|
+
return appendScreenStackPropsToOptions(opts, headerProps, toolbarImplementation);
|
|
55
57
|
};
|
|
56
58
|
}
|
|
57
|
-
return appendScreenStackPropsToOptions(screenOptions, headerProps);
|
|
59
|
+
return appendScreenStackPropsToOptions(screenOptions, headerProps, toolbarImplementation);
|
|
58
60
|
}
|
|
59
|
-
return appendScreenStackPropsToOptions({}, headerProps);
|
|
61
|
+
return appendScreenStackPropsToOptions({}, headerProps, toolbarImplementation);
|
|
60
62
|
}
|
|
61
63
|
return screenOptions;
|
|
62
|
-
}, [children, screenOptions]);
|
|
63
|
-
const processedChildren = useMemo(() => mapChildren(children), [children]);
|
|
64
|
+
}, [children, screenOptions, toolbarImplementation]);
|
|
65
|
+
const processedChildren = useMemo(() => mapChildren(children, toolbarImplementation), [children, toolbarImplementation]);
|
|
64
66
|
const navigatorProps = useMemo(() => getStackNavigatorProps(children), [children]);
|
|
65
67
|
return /* @__PURE__ */jsx(RNStack, {
|
|
66
68
|
...rest,
|
|
@@ -74,7 +76,8 @@ const Stack = Object.assign(StackWithComposition, {
|
|
|
74
76
|
Screen: StackScreen,
|
|
75
77
|
Header: StackHeader,
|
|
76
78
|
Protected,
|
|
77
|
-
SearchBar: StackHeaderSearchBar
|
|
79
|
+
SearchBar: StackHeaderSearchBar,
|
|
80
|
+
Toolbar: StackToolbar
|
|
78
81
|
});
|
|
79
82
|
var Stack_default = Stack;
|
|
80
83
|
export { Stack, Stack_default as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Children","useMemo","isChildOfType","Protected","Screen","createStackNavigator","getStackNavigatorProps","appendScreenStackPropsToOptions","StackHeader","StackHeaderComponent","StackHeaderSearchBar","StackScreen","withLayoutContext","jsx","NativeStackNavigator","Navigator","RNStack","mapChildren","children","toArray","map","child","index","options","props","_","rest","name","cloneElement","key","filter","Boolean","StackWithComposition","forwardRef","ref","screenOptions","screenOptionsWithHeader","stackHeader","find","headerProps","args","opts","processedChildren","navigatorProps","Stack","Object","assign","Header","SearchBar","Stack_default"],"sources":["../../../src/layouts/Stack.tsx"],"sourcesContent":[null],"mappings":"AAKA,OAAOA,KAAA,IAASC,QAAA,EAA+BC,OAAA,QAAe;AAC9D,SAASC,aAAA,QAAqB;AAC9B,SAASC,SAAA,QAAiB;AAC1B,SAASC,MAAA,QAAc;AACvB,SAASC,oBAAA,EAAsBC,sBAAA,QAA8B;AAC7D,SACEC,+BAAA,EACAC,WAAA,EACAC,oBAAA,EACAC,oBAAA,EACAC,WAAA,QAEK;AACP,SAASC,iBAAA,QAAyB;
|
|
1
|
+
{"version":3,"names":["React","Children","useMemo","isChildOfType","Protected","Screen","createStackNavigator","getStackNavigatorProps","appendScreenStackPropsToOptions","StackHeader","StackHeaderComponent","StackHeaderSearchBar","StackScreen","StackToolbar","withLayoutContext","getStackToolbarImplementation","jsx","NativeStackNavigator","Navigator","RNStack","mapChildren","children","toolbarImplementation","toArray","map","child","index","options","props","_","rest","name","cloneElement","key","filter","Boolean","StackWithComposition","forwardRef","ref","screenOptions","screenOptionsWithHeader","stackHeader","find","headerProps","args","opts","processedChildren","navigatorProps","Stack","Object","assign","Header","SearchBar","Toolbar","Stack_default"],"sources":["../../../src/layouts/Stack.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -4,15 +4,16 @@ import { isChildOfType } from "../utils/children.native.js";
|
|
|
4
4
|
import { Protected } from "../views/Protected.native.js";
|
|
5
5
|
import { Screen } from "../views/Screen.native.js";
|
|
6
6
|
import { createStackNavigator, getStackNavigatorProps } from "./stack-navigator.native.js";
|
|
7
|
-
import { appendScreenStackPropsToOptions, StackHeader, StackHeaderComponent, StackHeaderSearchBar, StackScreen } from "./stack-utils/index.native.js";
|
|
7
|
+
import { appendScreenStackPropsToOptions, StackHeader, StackHeaderComponent, StackHeaderSearchBar, StackScreen, StackToolbar } from "./stack-utils/index.native.js";
|
|
8
8
|
import { withLayoutContext } from "./withLayoutContext.native.js";
|
|
9
|
+
import { getStackToolbarImplementation } from "./stack-utils/StackToolbarImplementation.native.js";
|
|
9
10
|
var NativeStackNavigator = createStackNavigator().Navigator;
|
|
10
11
|
var RNStack = withLayoutContext(NativeStackNavigator);
|
|
11
|
-
function mapChildren(children) {
|
|
12
|
+
function mapChildren(children, toolbarImplementation) {
|
|
12
13
|
return Children.toArray(children).map(function (child, index) {
|
|
13
14
|
if (isChildOfType(child, StackScreen)) {
|
|
14
15
|
var _child_props_name;
|
|
15
|
-
var options = appendScreenStackPropsToOptions({}, child.props);
|
|
16
|
+
var options = appendScreenStackPropsToOptions({}, child.props, toolbarImplementation);
|
|
16
17
|
var {
|
|
17
18
|
children: _,
|
|
18
19
|
...rest
|
|
@@ -25,7 +26,7 @@ function mapChildren(children) {
|
|
|
25
26
|
if (isChildOfType(child, Protected)) {
|
|
26
27
|
return /* @__PURE__ */React.cloneElement(child, {
|
|
27
28
|
key: `protected-${index}`
|
|
28
|
-
}, mapChildren(child.props.children));
|
|
29
|
+
}, mapChildren(child.props.children, toolbarImplementation));
|
|
29
30
|
}
|
|
30
31
|
if (isChildOfType(child, StackHeaderComponent)) {
|
|
31
32
|
return null;
|
|
@@ -42,6 +43,7 @@ var StackWithComposition = /* @__PURE__ */React.forwardRef(function (props, ref)
|
|
|
42
43
|
screenOptions,
|
|
43
44
|
...rest
|
|
44
45
|
} = props;
|
|
46
|
+
var toolbarImplementation = getStackToolbarImplementation();
|
|
45
47
|
var screenOptionsWithHeader = useMemo(function () {
|
|
46
48
|
var stackHeader = Children.toArray(children).find(function (child) {
|
|
47
49
|
return isChildOfType(child, StackHeaderComponent);
|
|
@@ -57,18 +59,18 @@ var StackWithComposition = /* @__PURE__ */React.forwardRef(function (props, ref)
|
|
|
57
59
|
args[_key] = arguments[_key];
|
|
58
60
|
}
|
|
59
61
|
var opts = screenOptions(...args);
|
|
60
|
-
return appendScreenStackPropsToOptions(opts, headerProps);
|
|
62
|
+
return appendScreenStackPropsToOptions(opts, headerProps, toolbarImplementation);
|
|
61
63
|
};
|
|
62
64
|
}
|
|
63
|
-
return appendScreenStackPropsToOptions(screenOptions, headerProps);
|
|
65
|
+
return appendScreenStackPropsToOptions(screenOptions, headerProps, toolbarImplementation);
|
|
64
66
|
}
|
|
65
|
-
return appendScreenStackPropsToOptions({}, headerProps);
|
|
67
|
+
return appendScreenStackPropsToOptions({}, headerProps, toolbarImplementation);
|
|
66
68
|
}
|
|
67
69
|
return screenOptions;
|
|
68
|
-
}, [children, screenOptions]);
|
|
70
|
+
}, [children, screenOptions, toolbarImplementation]);
|
|
69
71
|
var processedChildren = useMemo(function () {
|
|
70
|
-
return mapChildren(children);
|
|
71
|
-
}, [children]);
|
|
72
|
+
return mapChildren(children, toolbarImplementation);
|
|
73
|
+
}, [children, toolbarImplementation]);
|
|
72
74
|
var navigatorProps = useMemo(function () {
|
|
73
75
|
return getStackNavigatorProps(children);
|
|
74
76
|
}, [children]);
|
|
@@ -84,7 +86,8 @@ var Stack = Object.assign(StackWithComposition, {
|
|
|
84
86
|
Screen: StackScreen,
|
|
85
87
|
Header: StackHeader,
|
|
86
88
|
Protected,
|
|
87
|
-
SearchBar: StackHeaderSearchBar
|
|
89
|
+
SearchBar: StackHeaderSearchBar,
|
|
90
|
+
Toolbar: StackToolbar
|
|
88
91
|
});
|
|
89
92
|
var Stack_default = Stack;
|
|
90
93
|
export { Stack, Stack_default as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","React","Children","useMemo","isChildOfType","Protected","Screen","createStackNavigator","getStackNavigatorProps","appendScreenStackPropsToOptions","StackHeader","StackHeaderComponent","StackHeaderSearchBar","StackScreen","withLayoutContext","NativeStackNavigator","Navigator","RNStack","mapChildren","children","toArray","map","child","index","_child_props_name","options","props","_","rest","name","cloneElement","key","filter","Boolean","StackWithComposition","forwardRef","ref","screenOptions","screenOptionsWithHeader","stackHeader","find","headerProps","_len","arguments","length","args","Array","_key","opts","processedChildren","navigatorProps"],"sources":["../../../src/layouts/Stack.tsx"],"sourcesContent":[null],"mappings":"AAKA,SAAOA,GAAA,IAASC,IAAA,QAA+B,mBAAe;AAC9D,OAAAC,KAAS,IAAAC,QAAA,EAAAC,OAAqB;AAC9B,SAASC,aAAA,QAAiB;AAC1B,SAASC,SAAA,QAAc;AACvB,SAASC,MAAA,mCAAsB;AAC/B,SAAAC,oBAAA,EAAAC,sBAAA;AAAA,SACEC,+BAAA,EAAAC,WAAA,EAAAC,oBAAA,EAAAC,oBAAA,EAAAC,WAAA;AAAA,SACAC,iBAAA;AAAA,IACAC,oBAAA,
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","React","Children","useMemo","isChildOfType","Protected","Screen","createStackNavigator","getStackNavigatorProps","appendScreenStackPropsToOptions","StackHeader","StackHeaderComponent","StackHeaderSearchBar","StackScreen","StackToolbar","withLayoutContext","getStackToolbarImplementation","NativeStackNavigator","Navigator","RNStack","mapChildren","children","toolbarImplementation","toArray","map","child","index","_child_props_name","options","props","_","rest","name","cloneElement","key","filter","Boolean","StackWithComposition","forwardRef","ref","screenOptions","screenOptionsWithHeader","stackHeader","find","headerProps","_len","arguments","length","args","Array","_key","opts","processedChildren","navigatorProps","Stack","Object","assign","Header","SearchBar","Toolbar","Stack_default","default"],"sources":["../../../src/layouts/Stack.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
import { Children, isValidElement, useMemo } from "react";
|
|
4
4
|
import { NAVIGATOR_CONFIG } from "../../headless/children.mjs";
|
|
5
5
|
import { StackHeaderComponent, appendStackHeaderPropsToOptions } from "./StackHeaderComponent.mjs";
|
|
6
|
+
import { StackToolbar, appendStackToolbarPropsToOptions } from "./StackToolbar.mjs";
|
|
7
|
+
import { getStackToolbarImplementation } from "./StackToolbarImplementation.mjs";
|
|
6
8
|
import { Screen } from "../../views/Screen.mjs";
|
|
7
9
|
import { jsx } from "react/jsx-runtime";
|
|
8
10
|
function StackScreen({
|
|
@@ -10,9 +12,10 @@ function StackScreen({
|
|
|
10
12
|
options,
|
|
11
13
|
...rest
|
|
12
14
|
}) {
|
|
15
|
+
const toolbarImplementation = getStackToolbarImplementation();
|
|
13
16
|
const updatedOptions = useMemo(() => appendScreenStackPropsToOptions(options ?? {}, {
|
|
14
17
|
children
|
|
15
|
-
}), [options, children]);
|
|
18
|
+
}, toolbarImplementation), [options, children, toolbarImplementation]);
|
|
16
19
|
return /* @__PURE__ */jsx(Screen, {
|
|
17
20
|
...rest,
|
|
18
21
|
options: updatedOptions
|
|
@@ -27,14 +30,14 @@ function validateStackPresentation(options) {
|
|
|
27
30
|
};
|
|
28
31
|
return options;
|
|
29
32
|
}
|
|
30
|
-
function appendScreenStackPropsToOptions(options, props) {
|
|
33
|
+
function appendScreenStackPropsToOptions(options, props, toolbarImplementation) {
|
|
31
34
|
let updatedOptions = {
|
|
32
35
|
...options,
|
|
33
36
|
...props.options
|
|
34
37
|
};
|
|
35
38
|
updatedOptions = validateStackPresentation(updatedOptions);
|
|
36
39
|
function appendChildOptions(child, options2) {
|
|
37
|
-
if (child.type === StackHeaderComponent) return appendStackHeaderPropsToOptions(options2, child.props);else console.warn(`Warning: Unknown child element passed to Stack.Screen: ${child.type.name ?? child.type}`);
|
|
40
|
+
if (child.type === StackHeaderComponent) return appendStackHeaderPropsToOptions(options2, child.props);else if (child.type === StackToolbar) return appendStackToolbarPropsToOptions(options2, child.props, toolbarImplementation);else console.warn(`Warning: Unknown child element passed to Stack.Screen: ${child.type.name ?? child.type}`);
|
|
38
41
|
return options2;
|
|
39
42
|
}
|
|
40
43
|
Children.forEach(props.children, child => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Children","isValidElement","useMemo","NAVIGATOR_CONFIG","StackHeaderComponent","appendStackHeaderPropsToOptions","Screen","jsx","StackScreen","children","options","rest","updatedOptions","appendScreenStackPropsToOptions","Object","assign","validateStackPresentation","args","props","appendChildOptions","child","options2","type","console","warn","name","forEach"],"sources":["StackScreen.mjs"],"sourcesContent":["\"use client\";\n\nimport { Children, isValidElement, useMemo } from \"react\";\nimport { NAVIGATOR_CONFIG } from \"../../headless/children\";\nimport { StackHeaderComponent, appendStackHeaderPropsToOptions } from \"./StackHeaderComponent\";\nimport { Screen } from \"../../views/Screen\";\nimport { jsx } from \"react/jsx-runtime\";\n\nfunction StackScreen({ children, options, ...rest }) {\n\tconst updatedOptions = useMemo(() => appendScreenStackPropsToOptions(options ?? {}, { children }), [
|
|
1
|
+
{"version":3,"names":["Children","isValidElement","useMemo","NAVIGATOR_CONFIG","StackHeaderComponent","appendStackHeaderPropsToOptions","StackToolbar","appendStackToolbarPropsToOptions","getStackToolbarImplementation","Screen","jsx","StackScreen","children","options","rest","toolbarImplementation","updatedOptions","appendScreenStackPropsToOptions","Object","assign","validateStackPresentation","args","props","appendChildOptions","child","options2","type","console","warn","name","forEach"],"sources":["StackScreen.mjs"],"sourcesContent":["\"use client\";\n\nimport { Children, isValidElement, useMemo } from \"react\";\nimport { NAVIGATOR_CONFIG } from \"../../headless/children\";\nimport { StackHeaderComponent, appendStackHeaderPropsToOptions } from \"./StackHeaderComponent\";\nimport { StackToolbar, appendStackToolbarPropsToOptions } from \"./StackToolbar\";\nimport { getStackToolbarImplementation } from \"./StackToolbarImplementation\";\nimport { Screen } from \"../../views/Screen\";\nimport { jsx } from \"react/jsx-runtime\";\n\nfunction StackScreen({ children, options, ...rest }) {\n\tconst toolbarImplementation = getStackToolbarImplementation();\n\tconst updatedOptions = useMemo(() => appendScreenStackPropsToOptions(options ?? {}, { children }, toolbarImplementation), [\n\t\toptions,\n\t\tchildren,\n\t\ttoolbarImplementation\n\t]);\n\treturn /* @__PURE__ */ jsx(Screen, {\n\t\t...rest,\n\t\toptions: updatedOptions\n\t});\n}\nObject.assign(StackScreen, { [NAVIGATOR_CONFIG]: true });\nfunction validateStackPresentation(options) {\n\tif (typeof options === \"function\") return (...args) => {\n\t\treturn validateStackPresentation(options(...args));\n\t};\n\treturn options;\n}\nfunction appendScreenStackPropsToOptions(options, props, toolbarImplementation) {\n\tlet updatedOptions = {\n\t\t...options,\n\t\t...props.options\n\t};\n\tupdatedOptions = validateStackPresentation(updatedOptions);\n\tfunction appendChildOptions(child, options2) {\n\t\tif (child.type === StackHeaderComponent) return appendStackHeaderPropsToOptions(options2, child.props);\n\t\telse if (child.type === StackToolbar) return appendStackToolbarPropsToOptions(options2, child.props, toolbarImplementation);\n\t\telse console.warn(`Warning: Unknown child element passed to Stack.Screen: ${child.type.name ?? child.type}`);\n\t\treturn options2;\n\t}\n\tChildren.forEach(props.children, (child) => {\n\t\tif (isValidElement(child)) updatedOptions = appendChildOptions(child, updatedOptions);\n\t});\n\treturn updatedOptions;\n}\n\nexport { StackScreen, appendScreenStackPropsToOptions, validateStackPresentation };"],"mappings":"AAAA,YAAY;;AAEZ,SAASA,QAAQ,EAAEC,cAAc,EAAEC,OAAO,QAAQ,OAAO;AACzD,SAASC,gBAAgB,QAAQ,6BAAyB;AAC1D,SAASC,oBAAoB,EAAEC,+BAA+B,QAAQ,4BAAwB;AAC9F,SAASC,YAAY,EAAEC,gCAAgC,QAAQ,oBAAgB;AAC/E,SAASC,6BAA6B,QAAQ,kCAA8B;AAC5E,SAASC,MAAM,QAAQ,wBAAoB;AAC3C,SAASC,GAAG,QAAQ,mBAAmB;AAEvC,SAASC,WAAWA,CAAC;EAAEC,QAAQ;EAAEC,OAAO;EAAE,GAAGC;AAAK,CAAC,EAAE;EACpD,MAAMC,qBAAqB,GAAGP,6BAA6B,CAAC,CAAC;EAC7D,MAAMQ,cAAc,GAAGd,OAAO,CAAC,MAAMe,+BAA+B,CAACJ,OAAO,IAAI,CAAC,CAAC,EAAE;IAAED;EAAS,CAAC,EAAEG,qBAAqB,CAAC,EAAE,CACzHF,OAAO,EACPD,QAAQ,EACRG,qBAAqB,CACrB,CAAC;EACF,OAAO,eAAgBL,GAAG,CAACD,MAAM,EAAE;IAClC,GAAGK,IAAI;IACPD,OAAO,EAAEG;EACV,CAAC,CAAC;AACH;AACAE,MAAM,CAACC,MAAM,CAACR,WAAW,EAAE;EAAE,CAACR,gBAAgB,GAAG;AAAK,CAAC,CAAC;AACxD,SAASiB,yBAAyBA,CAACP,OAAO,EAAE;EAC3C,IAAI,OAAOA,OAAO,KAAK,UAAU,EAAE,OAAO,CAAC,GAAGQ,IAAI,KAAK;IACtD,OAAOD,yBAAyB,CAACP,OAAO,CAAC,GAAGQ,IAAI,CAAC,CAAC;EACnD,CAAC;EACD,OAAOR,OAAO;AACf;AACA,SAASI,+BAA+BA,CAACJ,OAAO,EAAES,KAAK,EAAEP,qBAAqB,EAAE;EAC/E,IAAIC,cAAc,GAAG;IACpB,GAAGH,OAAO;IACV,GAAGS,KAAK,CAACT;EACV,CAAC;EACDG,cAAc,GAAGI,yBAAyB,CAACJ,cAAc,CAAC;EAC1D,SAASO,kBAAkBA,CAACC,KAAK,EAAEC,QAAQ,EAAE;IAC5C,IAAID,KAAK,CAACE,IAAI,KAAKtB,oBAAoB,EAAE,OAAOC,+BAA+B,CAACoB,QAAQ,EAAED,KAAK,CAACF,KAAK,CAAC,CAAC,KAClG,IAAIE,KAAK,CAACE,IAAI,KAAKpB,YAAY,EAAE,OAAOC,gCAAgC,CAACkB,QAAQ,EAAED,KAAK,CAACF,KAAK,EAAEP,qBAAqB,CAAC,CAAC,KACvHY,OAAO,CAACC,IAAI,CAAC,0DAA0DJ,KAAK,CAACE,IAAI,CAACG,IAAI,IAAIL,KAAK,CAACE,IAAI,EAAE,CAAC;IAC5G,OAAOD,QAAQ;EAChB;EACAzB,QAAQ,CAAC8B,OAAO,CAACR,KAAK,CAACV,QAAQ,EAAGY,KAAK,IAAK;IAC3C,IAAIvB,cAAc,CAACuB,KAAK,CAAC,EAAER,cAAc,GAAGO,kBAAkB,CAACC,KAAK,EAAER,cAAc,CAAC;EACtF,CAAC,CAAC;EACF,OAAOA,cAAc;AACtB;AAEA,SAASL,WAAW,EAAEM,+BAA+B,EAAEG,yBAAyB","ignoreList":[]}
|
|
@@ -4,6 +4,8 @@ import { jsx } from "react/jsx-runtime";
|
|
|
4
4
|
import { Children, isValidElement, useMemo } from "react";
|
|
5
5
|
import { NAVIGATOR_CONFIG } from "../../headless/children.native.js";
|
|
6
6
|
import { StackHeaderComponent, appendStackHeaderPropsToOptions } from "./StackHeaderComponent.native.js";
|
|
7
|
+
import { StackToolbar, appendStackToolbarPropsToOptions } from "./StackToolbar.native.js";
|
|
8
|
+
import { getStackToolbarImplementation } from "./StackToolbarImplementation.native.js";
|
|
7
9
|
import { Screen } from "../../views/Screen.native.js";
|
|
8
10
|
function StackScreen(param) {
|
|
9
11
|
var {
|
|
@@ -11,11 +13,12 @@ function StackScreen(param) {
|
|
|
11
13
|
options,
|
|
12
14
|
...rest
|
|
13
15
|
} = param;
|
|
16
|
+
var toolbarImplementation = getStackToolbarImplementation();
|
|
14
17
|
var updatedOptions = useMemo(function () {
|
|
15
18
|
return appendScreenStackPropsToOptions(options !== null && options !== void 0 ? options : {}, {
|
|
16
19
|
children
|
|
17
|
-
});
|
|
18
|
-
}, [options, children]);
|
|
20
|
+
}, toolbarImplementation);
|
|
21
|
+
}, [options, children, toolbarImplementation]);
|
|
19
22
|
return /* @__PURE__ */jsx(Screen, {
|
|
20
23
|
...rest,
|
|
21
24
|
options: updatedOptions
|
|
@@ -40,14 +43,14 @@ function validateStackPresentation(options) {
|
|
|
40
43
|
presentation: "modal"
|
|
41
44
|
};
|
|
42
45
|
}
|
|
43
|
-
function appendScreenStackPropsToOptions(options, props) {
|
|
46
|
+
function appendScreenStackPropsToOptions(options, props, toolbarImplementation) {
|
|
44
47
|
var updatedOptions = {
|
|
45
48
|
...options,
|
|
46
49
|
...props.options
|
|
47
50
|
};
|
|
48
51
|
updatedOptions = validateStackPresentation(updatedOptions);
|
|
49
52
|
function appendChildOptions(child, options2) {
|
|
50
|
-
if (child.type === StackHeaderComponent) return appendStackHeaderPropsToOptions(options2, child.props);else {
|
|
53
|
+
if (child.type === StackHeaderComponent) return appendStackHeaderPropsToOptions(options2, child.props);else if (child.type === StackToolbar) return appendStackToolbarPropsToOptions(options2, child.props, toolbarImplementation);else {
|
|
51
54
|
var _child_type_name;
|
|
52
55
|
console.warn(`Warning: Unknown child element passed to Stack.Screen: ${(_child_type_name = child.type.name) !== null && _child_type_name !== void 0 ? _child_type_name : child.type}`);
|
|
53
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","Children","isValidElement","useMemo","NAVIGATOR_CONFIG","StackHeaderComponent","appendStackHeaderPropsToOptions","Screen","StackScreen","param","children","options","rest","updatedOptions","appendScreenStackPropsToOptions","Object","assign","NATIVE_PRESENTATIONS","validateStackPresentation","_len","arguments","length","args","Array","_key","presentation","includes","props","appendChildOptions","child","options2","type","_child_type_name","console","warn","name","forEach"],"sources":["StackScreen.native.js"],"sourcesContent":["\"use client\";\n\nimport { jsx } from \"react/jsx-runtime\";\nimport { Children, isValidElement, useMemo } from \"react\";\nimport { NAVIGATOR_CONFIG } from \"../../headless/children\";\nimport { StackHeaderComponent, appendStackHeaderPropsToOptions } from \"./StackHeaderComponent\";\nimport { Screen } from \"../../views/Screen\";\n\nfunction StackScreen(param) {\n\tvar { children, options, ...rest } = param;\n\tvar updatedOptions = useMemo(function() {\n\t\treturn appendScreenStackPropsToOptions(options !== null && options !== void 0 ? options : {}, { children });\n\t}, [
|
|
1
|
+
{"version":3,"names":["jsx","Children","isValidElement","useMemo","NAVIGATOR_CONFIG","StackHeaderComponent","appendStackHeaderPropsToOptions","StackToolbar","appendStackToolbarPropsToOptions","getStackToolbarImplementation","Screen","StackScreen","param","children","options","rest","toolbarImplementation","updatedOptions","appendScreenStackPropsToOptions","Object","assign","NATIVE_PRESENTATIONS","validateStackPresentation","_len","arguments","length","args","Array","_key","presentation","includes","props","appendChildOptions","child","options2","type","_child_type_name","console","warn","name","forEach"],"sources":["StackScreen.native.js"],"sourcesContent":["\"use client\";\n\nimport { jsx } from \"react/jsx-runtime\";\nimport { Children, isValidElement, useMemo } from \"react\";\nimport { NAVIGATOR_CONFIG } from \"../../headless/children\";\nimport { StackHeaderComponent, appendStackHeaderPropsToOptions } from \"./StackHeaderComponent\";\nimport { StackToolbar, appendStackToolbarPropsToOptions } from \"./StackToolbar\";\nimport { getStackToolbarImplementation } from \"./StackToolbarImplementation\";\nimport { Screen } from \"../../views/Screen\";\n\nfunction StackScreen(param) {\n\tvar { children, options, ...rest } = param;\n\tvar toolbarImplementation = getStackToolbarImplementation();\n\tvar updatedOptions = useMemo(function() {\n\t\treturn appendScreenStackPropsToOptions(options !== null && options !== void 0 ? options : {}, { children }, toolbarImplementation);\n\t}, [\n\t\toptions,\n\t\tchildren,\n\t\ttoolbarImplementation\n\t]);\n\treturn /* @__PURE__ */ jsx(Screen, {\n\t\t...rest,\n\t\toptions: updatedOptions\n\t});\n}\nObject.assign(StackScreen, { [NAVIGATOR_CONFIG]: true });\nvar NATIVE_PRESENTATIONS = [\n\t\"card\",\n\t\"modal\",\n\t\"transparentModal\",\n\t\"containedModal\",\n\t\"containedTransparentModal\",\n\t\"fullScreenModal\",\n\t\"formSheet\",\n\t\"pageSheet\"\n];\nfunction validateStackPresentation(options) {\n\tif (typeof options === \"function\") return function() {\n\t\tfor (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];\n\t\treturn validateStackPresentation(options(...args));\n\t};\n\tif (!options.presentation) return options;\n\tif (options.presentation === \"sheet\") return {\n\t\t...options,\n\t\tpresentation: \"formSheet\"\n\t};\n\treturn NATIVE_PRESENTATIONS.includes(options.presentation) ? options : {\n\t\t...options,\n\t\tpresentation: \"modal\"\n\t};\n}\nfunction appendScreenStackPropsToOptions(options, props, toolbarImplementation) {\n\tvar updatedOptions = {\n\t\t...options,\n\t\t...props.options\n\t};\n\tupdatedOptions = validateStackPresentation(updatedOptions);\n\tfunction appendChildOptions(child, options2) {\n\t\tif (child.type === StackHeaderComponent) return appendStackHeaderPropsToOptions(options2, child.props);\n\t\telse if (child.type === StackToolbar) return appendStackToolbarPropsToOptions(options2, child.props, toolbarImplementation);\n\t\telse {\n\t\t\tvar _child_type_name;\n\t\t\tconsole.warn(`Warning: Unknown child element passed to Stack.Screen: ${(_child_type_name = child.type.name) !== null && _child_type_name !== void 0 ? _child_type_name : child.type}`);\n\t\t}\n\t\treturn options2;\n\t}\n\tChildren.forEach(props.children, function(child) {\n\t\tif (/* @__PURE__ */ isValidElement(child)) updatedOptions = appendChildOptions(child, updatedOptions);\n\t});\n\treturn updatedOptions;\n}\n\nexport { StackScreen, appendScreenStackPropsToOptions, validateStackPresentation };"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
import { useIsomorphicLayoutEffect } from "@vxrn/use-isomorphic-layout-effect";
|
|
5
|
+
import { NAVIGATOR_CONFIG } from "../../headless/children.mjs";
|
|
6
|
+
import { useNavigation } from "../../router/useNavigation.mjs";
|
|
7
|
+
import { STACK_TOOLBAR_CHILD, getStackToolbarImplementation } from "./StackToolbarImplementation.mjs";
|
|
8
|
+
import { appendStackToolbarConfig } from "./StackToolbar.shared.mjs";
|
|
9
|
+
function appendStackToolbarPropsToOptions(options, props, implementation) {
|
|
10
|
+
const optionsWithConfig = appendStackToolbarConfig(options, props);
|
|
11
|
+
return implementation ? implementation.appendPropsToOptions(optionsWithConfig, props) : optionsWithConfig;
|
|
12
|
+
}
|
|
13
|
+
function StackToolbarComponent(props) {
|
|
14
|
+
const navigation = useNavigation();
|
|
15
|
+
const implementation = getStackToolbarImplementation();
|
|
16
|
+
const options = useMemo(() => appendStackToolbarPropsToOptions({}, props, implementation), [implementation, props.placement, props.asChild, props.children, props.disableImePadding, props.tintColor, props.backgroundColor]);
|
|
17
|
+
useIsomorphicLayoutEffect(() => {
|
|
18
|
+
navigation.setOptions(options);
|
|
19
|
+
}, [navigation, options]);
|
|
20
|
+
return implementation?.render(props) ?? null;
|
|
21
|
+
}
|
|
22
|
+
function StackToolbarButton(_props) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
function StackToolbarMenu(_props) {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
function StackToolbarMenuAction(_props) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
function StackToolbarSpacer(_props) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
function StackToolbarSearchBarSlot(_props) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
function StackToolbarView(_props) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
function StackToolbarLabel(_props) {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
function StackToolbarIcon(_props) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
function StackToolbarBadge(_props) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
Object.assign(StackToolbarButton, {
|
|
50
|
+
[STACK_TOOLBAR_CHILD]: "button"
|
|
51
|
+
});
|
|
52
|
+
Object.assign(StackToolbarMenu, {
|
|
53
|
+
[STACK_TOOLBAR_CHILD]: "menu"
|
|
54
|
+
});
|
|
55
|
+
Object.assign(StackToolbarMenuAction, {
|
|
56
|
+
[STACK_TOOLBAR_CHILD]: "menuAction"
|
|
57
|
+
});
|
|
58
|
+
Object.assign(StackToolbarSpacer, {
|
|
59
|
+
[STACK_TOOLBAR_CHILD]: "spacer"
|
|
60
|
+
});
|
|
61
|
+
Object.assign(StackToolbarSearchBarSlot, {
|
|
62
|
+
[STACK_TOOLBAR_CHILD]: "searchBarSlot"
|
|
63
|
+
});
|
|
64
|
+
Object.assign(StackToolbarView, {
|
|
65
|
+
[STACK_TOOLBAR_CHILD]: "view"
|
|
66
|
+
});
|
|
67
|
+
Object.assign(StackToolbarLabel, {
|
|
68
|
+
[STACK_TOOLBAR_CHILD]: "label"
|
|
69
|
+
});
|
|
70
|
+
Object.assign(StackToolbarIcon, {
|
|
71
|
+
[STACK_TOOLBAR_CHILD]: "icon"
|
|
72
|
+
});
|
|
73
|
+
Object.assign(StackToolbarBadge, {
|
|
74
|
+
[STACK_TOOLBAR_CHILD]: "badge"
|
|
75
|
+
});
|
|
76
|
+
const StackToolbar = Object.assign(StackToolbarComponent, {
|
|
77
|
+
[NAVIGATOR_CONFIG]: true,
|
|
78
|
+
Button: StackToolbarButton,
|
|
79
|
+
Menu: StackToolbarMenu,
|
|
80
|
+
MenuAction: StackToolbarMenuAction,
|
|
81
|
+
Spacer: StackToolbarSpacer,
|
|
82
|
+
SearchBarSlot: StackToolbarSearchBarSlot,
|
|
83
|
+
View: StackToolbarView,
|
|
84
|
+
Label: StackToolbarLabel,
|
|
85
|
+
Icon: StackToolbarIcon,
|
|
86
|
+
Badge: StackToolbarBadge
|
|
87
|
+
});
|
|
88
|
+
export { StackToolbar, StackToolbarBadge, StackToolbarButton, StackToolbarIcon, StackToolbarLabel, StackToolbarMenu, StackToolbarMenuAction, StackToolbarSearchBarSlot, StackToolbarSpacer, StackToolbarView, appendStackToolbarPropsToOptions };
|
|
89
|
+
//# sourceMappingURL=StackToolbar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useMemo","useIsomorphicLayoutEffect","NAVIGATOR_CONFIG","useNavigation","STACK_TOOLBAR_CHILD","getStackToolbarImplementation","appendStackToolbarConfig","appendStackToolbarPropsToOptions","options","props","implementation","optionsWithConfig","appendPropsToOptions","StackToolbarComponent","navigation","placement","asChild","children","disableImePadding","tintColor","backgroundColor","setOptions","render","StackToolbarButton","_props","StackToolbarMenu","StackToolbarMenuAction","StackToolbarSpacer","StackToolbarSearchBarSlot","StackToolbarView","StackToolbarLabel","StackToolbarIcon","StackToolbarBadge","Object","assign","StackToolbar","Button","Menu","MenuAction","Spacer","SearchBarSlot","View","Label","Icon","Badge"],"sources":["../../../../src/layouts/stack-utils/StackToolbar.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|