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
|
@@ -0,0 +1,92 @@
|
|
|
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.native.js";
|
|
6
|
+
import { useNavigation } from "../../router/useNavigation.native.js";
|
|
7
|
+
import { STACK_TOOLBAR_CHILD, getStackToolbarImplementation } from "./StackToolbarImplementation.native.js";
|
|
8
|
+
import { appendStackToolbarConfig } from "./StackToolbar.shared.native.js";
|
|
9
|
+
function appendStackToolbarPropsToOptions(options, props, implementation) {
|
|
10
|
+
var optionsWithConfig = appendStackToolbarConfig(options, props);
|
|
11
|
+
return implementation ? implementation.appendPropsToOptions(optionsWithConfig, props) : optionsWithConfig;
|
|
12
|
+
}
|
|
13
|
+
function StackToolbarComponent(props) {
|
|
14
|
+
var _ref;
|
|
15
|
+
var navigation = useNavigation();
|
|
16
|
+
var implementation = getStackToolbarImplementation();
|
|
17
|
+
var options = useMemo(function () {
|
|
18
|
+
return appendStackToolbarPropsToOptions({}, props, implementation);
|
|
19
|
+
}, [implementation, props.placement, props.asChild, props.children, props.disableImePadding, props.tintColor, props.backgroundColor]);
|
|
20
|
+
useIsomorphicLayoutEffect(function () {
|
|
21
|
+
navigation.setOptions(options);
|
|
22
|
+
}, [navigation, options]);
|
|
23
|
+
return (_ref = implementation === null || implementation === void 0 ? void 0 : implementation.render(props)) !== null && _ref !== void 0 ? _ref : null;
|
|
24
|
+
}
|
|
25
|
+
function StackToolbarButton(_props) {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
function StackToolbarMenu(_props) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
function StackToolbarMenuAction(_props) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
function StackToolbarSpacer(_props) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
function StackToolbarSearchBarSlot(_props) {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
function StackToolbarView(_props) {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
function StackToolbarLabel(_props) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
function StackToolbarIcon(_props) {
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
function StackToolbarBadge(_props) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
Object.assign(StackToolbarButton, {
|
|
53
|
+
[STACK_TOOLBAR_CHILD]: "button"
|
|
54
|
+
});
|
|
55
|
+
Object.assign(StackToolbarMenu, {
|
|
56
|
+
[STACK_TOOLBAR_CHILD]: "menu"
|
|
57
|
+
});
|
|
58
|
+
Object.assign(StackToolbarMenuAction, {
|
|
59
|
+
[STACK_TOOLBAR_CHILD]: "menuAction"
|
|
60
|
+
});
|
|
61
|
+
Object.assign(StackToolbarSpacer, {
|
|
62
|
+
[STACK_TOOLBAR_CHILD]: "spacer"
|
|
63
|
+
});
|
|
64
|
+
Object.assign(StackToolbarSearchBarSlot, {
|
|
65
|
+
[STACK_TOOLBAR_CHILD]: "searchBarSlot"
|
|
66
|
+
});
|
|
67
|
+
Object.assign(StackToolbarView, {
|
|
68
|
+
[STACK_TOOLBAR_CHILD]: "view"
|
|
69
|
+
});
|
|
70
|
+
Object.assign(StackToolbarLabel, {
|
|
71
|
+
[STACK_TOOLBAR_CHILD]: "label"
|
|
72
|
+
});
|
|
73
|
+
Object.assign(StackToolbarIcon, {
|
|
74
|
+
[STACK_TOOLBAR_CHILD]: "icon"
|
|
75
|
+
});
|
|
76
|
+
Object.assign(StackToolbarBadge, {
|
|
77
|
+
[STACK_TOOLBAR_CHILD]: "badge"
|
|
78
|
+
});
|
|
79
|
+
var StackToolbar = Object.assign(StackToolbarComponent, {
|
|
80
|
+
[NAVIGATOR_CONFIG]: true,
|
|
81
|
+
Button: StackToolbarButton,
|
|
82
|
+
Menu: StackToolbarMenu,
|
|
83
|
+
MenuAction: StackToolbarMenuAction,
|
|
84
|
+
Spacer: StackToolbarSpacer,
|
|
85
|
+
SearchBarSlot: StackToolbarSearchBarSlot,
|
|
86
|
+
View: StackToolbarView,
|
|
87
|
+
Label: StackToolbarLabel,
|
|
88
|
+
Icon: StackToolbarIcon,
|
|
89
|
+
Badge: StackToolbarBadge
|
|
90
|
+
});
|
|
91
|
+
export { StackToolbar, StackToolbarBadge, StackToolbarButton, StackToolbarIcon, StackToolbarLabel, StackToolbarMenu, StackToolbarMenuAction, StackToolbarSearchBarSlot, StackToolbarSpacer, StackToolbarView, appendStackToolbarPropsToOptions };
|
|
92
|
+
//# sourceMappingURL=StackToolbar.native.js.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","_ref","navigation","placement","asChild","children","disableImePadding","tintColor","backgroundColor","setOptions","render","StackToolbarButton","_props","StackToolbarMenu","StackToolbarMenuAction","StackToolbarSpacer","StackToolbarSearchBarSlot","StackToolbarView","StackToolbarLabel","StackToolbarIcon","StackToolbarBadge","Object","assign"],"sources":["../../../../src/layouts/stack-utils/StackToolbar.tsx"],"sourcesContent":[null],"mappings":";;AAGA,SAASA,OAAA,QAAe;AAExB,SAASC,yBAAA,QAAiC;AAC1C,SAASC,gBAAA,QAAwB;AACjC,SAASC,aAAA,QAAqB;AAC9B,SAAAC,mBAAA,EAAAC,6BAAA;AAAA,SACEC,wBAAA;AAAA,SACAC,iCAAAC,OAAA,EAAAC,KAAA,EAAAC,cAAA;EAAA,IAAAC,iBAEK,GAAAL,wBAAA,CAAAE,OAAA,EAAAC,KAAA;EACP,OAASC,cAAA,GAAAA,cAAA,CAAgCE,oBAAA,CAAAD,iBAAA,EAAAF,KAAA,IAAAE,iBAAA;AAclC;AAKL,SAAME,qBAAoBA,CAAAJ,KAAA;EAC1B,IAAAK,IAAO;EAGT,IAAAC,UAAA,GAAAZ,aAAA;EAEA,IAAAO,cAAS,GAAAL,6BAAgD;EACvD,IAAAG,OAAM,GAAAR,OAAa,aAAc;IACjC,OAAMO,gCAAiB,KAAAE,KAAA,EAA8BC,cAAA;EACrD,IACEA,cAAM,EACND,KAAA,CAAAO,SAAA,EAAAP,KACE,CAAAQ,OAAA,EAAAR,KACA,CAAAS,QAAM,EAAAT,KACN,CAAAU,iBAAM,EAAAV,KACN,CAAAW,SAAM,EAAAX,KACN,CAAAY,eAAM;EACApB,yBACA;IACRc,UAAA,CAAAO,UAAA,CAAAd,OAAA;EACF,IAEAO,UAAA,EACEP,OAAA,CACF;EAEA,OAAO,CAAAM,IAAA,GAAAJ,cAAgB,KAAO,IAAK,IAAKA,cAAA,uBAAAA,cAAA,CAAAa,MAAA,CAAAd,KAAA,eAAAK,IAAA,cAAAA,IAAA;AAC1C;AAEO,SAASU,mBAAmBC,MAAA,EAAiC;EAClE,OAAO;AACT;AAEO,SAASC,iBAAiBD,MAAA,EAA+B;EAC9D,OAAO;AACT;AAEO,SAASE,uBAAuBF,MAAA,EAAqC;EAC1E,OAAO;AACT;AAEO,SAASG,mBAAmBH,MAAA,EAAiC;EAClE,OAAO;AACT;AAEO,SAASI,0BAA0BJ,MAAA,EAAwC;EAChF,OAAO;AACT;AAEO,SAASK,iBAAiBL,MAAA,EAA+B;EAC9D,OAAO;AACT;AAEO,SAASM,kBAAkBN,MAAA,EAAgC;EAChE,OAAO;AACT;AAEO,SAASO,iBAAiBP,MAAA,EAA+B;EAC9D,OAAO;AACT;AAEO,SAASQ,kBAAkBR,MAAA,EAAgC;EAChE,OAAO;AACT;AAEAS,MAAA,CAAOC,MAAA,CAAOX,kBAAA,EAAoB;EAClC,CAAApB,mBAAc;AACd;AACA8B,MAAA,CAAOC,MAAA,CAAOT,gBAAA;EACd,CAAAtB,mBAAc;AACd;AACA8B,MAAA,CAAOC,MAAA,CAAOR,sBAAsB;EACpC,CAAAvB,mBAAc;AACd;AAEO8B,MAAM,CAAAC,MAAA,CAAAP,kBAAsB;EACjC,CAACxB,mBAAmB;AAAA,EACpB;AAAQ8B,MACR,CAAAC,MAAM,CAAAN,yBAAA;EACN,CAAAzB,mBAAY;AAAA,EACZ;AAAQ8B,MACR,CAAAC,MAAA,CAAAL,gBAAe;EACf,CAAA1B,mBAAM;AAAA,EACN;AAAO8B,MACP,CAAAC,MAAM,CAAAJ,iBAAA;EACN,CAAA3B,mBAAO;AACT,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
const optionKeys = {
|
|
2
|
+
left: "__oneStackToolbarLeft",
|
|
3
|
+
right: "__oneStackToolbarRight",
|
|
4
|
+
bottom: "__oneStackToolbarBottom"
|
|
5
|
+
};
|
|
6
|
+
function appendStackToolbarConfig(options, props) {
|
|
7
|
+
return {
|
|
8
|
+
...options,
|
|
9
|
+
[optionKeys[props.placement ?? "bottom"]]: props
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
function exposeStackToolbarConfig(options) {
|
|
13
|
+
const toolbar = {
|
|
14
|
+
left: options[optionKeys.left],
|
|
15
|
+
right: options[optionKeys.right],
|
|
16
|
+
bottom: options[optionKeys.bottom]
|
|
17
|
+
};
|
|
18
|
+
if (!toolbar.left && !toolbar.right && !toolbar.bottom) return options;
|
|
19
|
+
const {
|
|
20
|
+
[optionKeys.left]: _left,
|
|
21
|
+
[optionKeys.right]: _right,
|
|
22
|
+
[optionKeys.bottom]: _bottom,
|
|
23
|
+
...publicOptions
|
|
24
|
+
} = options;
|
|
25
|
+
return {
|
|
26
|
+
...publicOptions,
|
|
27
|
+
toolbar
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export { appendStackToolbarConfig, exposeStackToolbarConfig };
|
|
31
|
+
//# sourceMappingURL=StackToolbar.shared.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["optionKeys","left","right","bottom","appendStackToolbarConfig","options","props","placement","exposeStackToolbarConfig","toolbar","_left","_right","_bottom","publicOptions"],"sources":["../../../../src/layouts/stack-utils/StackToolbar.shared.ts"],"sourcesContent":[null],"mappings":"AAQA,MAAMA,UAAA,GAAa;EACjBC,IAAA,EAAM;EACNC,KAAA,EAAO;EACPC,MAAA,EAAQ;AACV;AAEO,SAASC,yBACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,OAAO;IACL,GAAGD,OAAA;IACH,CAACL,UAAA,CAAWM,KAAA,CAAMC,SAAA,IAAa,QAAQ,CAAC,GAAGD;EAC7C;AACF;AAEO,SAASE,yBACdH,OAAA,EACqB;EACrB,MAAMI,OAAA,GAA8B;IAClCR,IAAA,EAAMI,OAAA,CAAQL,UAAA,CAAWC,IAAI;IAC7BC,KAAA,EAAOG,OAAA,CAAQL,UAAA,CAAWE,KAAK;IAC/BC,MAAA,EAAQE,OAAA,CAAQL,UAAA,CAAWG,MAAM;EACnC;EAEA,IAAI,CAACM,OAAA,CAAQR,IAAA,IAAQ,CAACQ,OAAA,CAAQP,KAAA,IAAS,CAACO,OAAA,CAAQN,MAAA,EAAQ,OAAOE,OAAA;EAE/D,MAAM;IACJ,CAACL,UAAA,CAAWC,IAAI,GAAGS,KAAA;IACnB,CAACV,UAAA,CAAWE,KAAK,GAAGS,MAAA;IACpB,CAACX,UAAA,CAAWG,MAAM,GAAGS,OAAA;IACrB,GAAGC;EACL,IAAIR,OAAA;EAEJ,OAAO;IAAE,GAAGQ,aAAA;IAAeJ;EAAQ;AACrC","ignoreList":[]}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
var optionKeys = {
|
|
2
|
+
left: "__oneStackToolbarLeft",
|
|
3
|
+
right: "__oneStackToolbarRight",
|
|
4
|
+
bottom: "__oneStackToolbarBottom"
|
|
5
|
+
};
|
|
6
|
+
function appendStackToolbarConfig(options, props) {
|
|
7
|
+
var _props_placement;
|
|
8
|
+
return {
|
|
9
|
+
...options,
|
|
10
|
+
[optionKeys[(_props_placement = props.placement) !== null && _props_placement !== void 0 ? _props_placement : "bottom"]]: props
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
function exposeStackToolbarConfig(options) {
|
|
14
|
+
var toolbar = {
|
|
15
|
+
left: options[optionKeys.left],
|
|
16
|
+
right: options[optionKeys.right],
|
|
17
|
+
bottom: options[optionKeys.bottom]
|
|
18
|
+
};
|
|
19
|
+
if (!toolbar.left && !toolbar.right && !toolbar.bottom) return options;
|
|
20
|
+
var {
|
|
21
|
+
[optionKeys.left]: _left,
|
|
22
|
+
[optionKeys.right]: _right,
|
|
23
|
+
[optionKeys.bottom]: _bottom,
|
|
24
|
+
...publicOptions
|
|
25
|
+
} = options;
|
|
26
|
+
return {
|
|
27
|
+
...publicOptions,
|
|
28
|
+
toolbar
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export { appendStackToolbarConfig, exposeStackToolbarConfig };
|
|
32
|
+
//# sourceMappingURL=StackToolbar.shared.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["optionKeys","left","right","bottom","appendStackToolbarConfig","options","props","_props_placement","placement","exposeStackToolbarConfig","toolbar","_left","_right","_bottom","publicOptions"],"sources":["../../../../src/layouts/stack-utils/StackToolbar.shared.ts"],"sourcesContent":[null],"mappings":"AAQA,IAAAA,UAAM;EACJC,IAAA,EAAM;EACNC,KAAA,EAAO;EACPC,MAAA,EAAQ;AACV;AAEO,SAASC,yBACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,IAAAC,gBAAO;EAAA,OACF;IACH,GAACF,OAAA;IACH,CAAAL,UAAA,EAAAO,gBAAA,GAAAD,KAAA,CAAAE,SAAA,cAAAD,gBAAA,cAAAA,gBAAA,eAAAD;EACF;AAEO;AAGL,SAAMG,wBAA8BA,CAAAJ,OAAA;EAAA,IAClCK,OAAM;IACNT,IAAA,EAAAI,OAAO,CAAAL,UAAQ,CAAAC,IAAW;IAC1BC,KAAA,EAAAG,OAAQ,CAAAL,UAAQ,CAAAE,KAAW;IAC7BC,MAAA,EAAAE,OAAA,CAAAL,UAAA,CAAAG,MAAA;EAEA;EAEA,KAAAO,OAAM,CAAAT,IAAA,KAAAS,OAAA,CAAAR,KAAA,KAAAQ,OAAA,CAAAP,MAAA,SAAAE,OAAA;EAAA,IACH;IAAA,CAAAL,UAAW,CAAIC,IAAG,GAAAU,KAAA;IAAA,CAAAX,UAAA,CAAAE,KAAA,GAAAU,MAAA;IAAA,CAAAZ,UAAA,CAAAG,MAAA,GAAAU,OAAA;IAAA,GAAAC;EAAA,IAAAT,OAAA;EAAA,OAClB;IACD,GAACS,aAAW;IACZJ;EACF;AAEA;AACF,S","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":[],"sourcesContent":[],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
const STACK_TOOLBAR_CHILD = /* @__PURE__ */Symbol.for("one.stack-toolbar.child");
|
|
4
|
+
let stackToolbarImplementation = null;
|
|
5
|
+
function registerStackToolbarImplementation(implementation) {
|
|
6
|
+
stackToolbarImplementation = implementation;
|
|
7
|
+
}
|
|
8
|
+
function getStackToolbarImplementation() {
|
|
9
|
+
return stackToolbarImplementation;
|
|
10
|
+
}
|
|
11
|
+
export { STACK_TOOLBAR_CHILD, getStackToolbarImplementation, registerStackToolbarImplementation };
|
|
12
|
+
//# sourceMappingURL=StackToolbarImplementation.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["STACK_TOOLBAR_CHILD","Symbol","for","stackToolbarImplementation","registerStackToolbarImplementation","implementation","getStackToolbarImplementation"],"sources":["../../../../src/layouts/stack-utils/StackToolbarImplementation.tsx"],"sourcesContent":[null],"mappings":";;AAOO,MAAMA,mBAAA,GAAsB,eAAAC,MAAA,CAAOC,GAAA,CAAI,yBAAyB;AAqBvE,IAAIC,0BAAA,GAAgE;AAE7D,SAASC,mCACdC,cAAA,EACA;EACAF,0BAAA,GAA6BE,cAAA;AAC/B;AAEO,SAASC,8BAAA,EAAgC;EAC9C,OAAOH,0BAAA;AACT","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
var STACK_TOOLBAR_CHILD = /* @__PURE__ */Symbol.for("one.stack-toolbar.child");
|
|
4
|
+
var stackToolbarImplementation = null;
|
|
5
|
+
function registerStackToolbarImplementation(implementation) {
|
|
6
|
+
stackToolbarImplementation = implementation;
|
|
7
|
+
}
|
|
8
|
+
function getStackToolbarImplementation() {
|
|
9
|
+
return stackToolbarImplementation;
|
|
10
|
+
}
|
|
11
|
+
export { STACK_TOOLBAR_CHILD, getStackToolbarImplementation, registerStackToolbarImplementation };
|
|
12
|
+
//# sourceMappingURL=StackToolbarImplementation.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["STACK_TOOLBAR_CHILD","Symbol","for","stackToolbarImplementation","registerStackToolbarImplementation","implementation","getStackToolbarImplementation"],"sources":["../../../../src/layouts/stack-utils/StackToolbarImplementation.tsx"],"sourcesContent":[null],"mappings":";;AAOO,IAAAA,mBAAM,kBAAsBC,MAAA,CAAAC,GAAO,0BAAI;AAqB9C,IAAIC,0BAAA,GAAgE;AAE7D,SAASC,mCACdC,cAAA,EACA;EACAF,0BAAA,GAA6BE,cAAA;AAC/B;AAEO,SAASC,8BAAA,EAAgC;EAC9C,OAAOH,0BAAA;AACT","ignoreList":[]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from "vitest";
|
|
2
|
+
import { StackToolbar } from "../StackToolbar.mjs";
|
|
3
|
+
import { STACK_TOOLBAR_CHILD } from "../StackToolbarImplementation.mjs";
|
|
4
|
+
import { exposeStackToolbarConfig } from "../StackToolbar.shared.mjs";
|
|
5
|
+
import { appendScreenStackPropsToOptions } from "../StackScreen.mjs";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
describe("Stack.Toolbar headless config", () => {
|
|
8
|
+
it("marks declaration children for installed implementations", () => {
|
|
9
|
+
expect(StackToolbar.Button[STACK_TOOLBAR_CHILD]).toBe("button");
|
|
10
|
+
expect(StackToolbar.MenuAction[STACK_TOOLBAR_CHILD]).toBe("menuAction");
|
|
11
|
+
});
|
|
12
|
+
it("preserves every placement for the headless stack implementation", () => {
|
|
13
|
+
const options = appendScreenStackPropsToOptions({
|
|
14
|
+
title: "Inbox"
|
|
15
|
+
}, {
|
|
16
|
+
children: [/* @__PURE__ */jsx(StackToolbar, {
|
|
17
|
+
placement: "left",
|
|
18
|
+
children: /* @__PURE__ */jsx(StackToolbar.Button, {
|
|
19
|
+
icon: "sidebar.left"
|
|
20
|
+
})
|
|
21
|
+
}, "left"), /* @__PURE__ */jsx(StackToolbar, {
|
|
22
|
+
placement: "right",
|
|
23
|
+
children: /* @__PURE__ */jsx(StackToolbar.Button, {
|
|
24
|
+
icon: "square.and.arrow.up"
|
|
25
|
+
})
|
|
26
|
+
}, "right")]
|
|
27
|
+
});
|
|
28
|
+
expect(exposeStackToolbarConfig(options)).toMatchObject({
|
|
29
|
+
title: "Inbox",
|
|
30
|
+
toolbar: {
|
|
31
|
+
left: {
|
|
32
|
+
placement: "left"
|
|
33
|
+
},
|
|
34
|
+
right: {
|
|
35
|
+
placement: "right"
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
});
|
|
40
|
+
it("hands toolbar declarations to an installed implementation", () => {
|
|
41
|
+
const appendPropsToOptions = vi.fn(options2 => ({
|
|
42
|
+
...options2,
|
|
43
|
+
headerShown: true
|
|
44
|
+
}));
|
|
45
|
+
const implementation = {
|
|
46
|
+
appendPropsToOptions,
|
|
47
|
+
render: () => null
|
|
48
|
+
};
|
|
49
|
+
const toolbar = /* @__PURE__ */jsx(StackToolbar, {
|
|
50
|
+
placement: "right",
|
|
51
|
+
children: /* @__PURE__ */jsx(StackToolbar.Button, {
|
|
52
|
+
icon: "square.and.arrow.up",
|
|
53
|
+
children: "Share"
|
|
54
|
+
})
|
|
55
|
+
});
|
|
56
|
+
const options = appendScreenStackPropsToOptions({
|
|
57
|
+
title: "Inbox"
|
|
58
|
+
}, {
|
|
59
|
+
children: toolbar
|
|
60
|
+
}, implementation);
|
|
61
|
+
expect(options.headerShown).toBe(true);
|
|
62
|
+
expect(appendPropsToOptions).toHaveBeenCalledOnce();
|
|
63
|
+
expect(appendPropsToOptions.mock.calls[0]?.[1]).toBe(toolbar.props);
|
|
64
|
+
expect(exposeStackToolbarConfig(options).toolbar.right).toBe(toolbar.props);
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
//# sourceMappingURL=StackToolbar.test.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["describe","expect","it","vi","StackToolbar","STACK_TOOLBAR_CHILD","exposeStackToolbarConfig","appendScreenStackPropsToOptions","jsx","Button","toBe","MenuAction","options","title","children","placement","icon","toMatchObject","toolbar","left","right","appendPropsToOptions","fn","headerShown","implementation","render","toHaveBeenCalledOnce","mock","calls","props"],"sources":["../../../../../src/layouts/stack-utils/__tests__/StackToolbar.test.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAGzC,SAASC,YAAA,QAAoB;AAC7B,SAASC,mBAAA,QAA2B;AACpC,SAASC,wBAAA,QAAgC;AACzC,SAASC,+BAAA,QAAuC;AAkBpC,SAAAC,GAAA;AAhBZR,QAAA,CAAS,iCAAiC,MAAM;EAC9CE,EAAA,CAAG,4DAA4D,MAAM;IACnED,MAAA,CACGG,YAAA,CAAaK,MAAA,CAA6CJ,mBAAmB,CAChF,EAAEK,IAAA,CAAK,QAAQ;IACfT,MAAA,CACGG,YAAA,CAAaO,UAAA,CAAiDN,mBAAmB,CACpF,EAAEK,IAAA,CAAK,YAAY;EACrB,CAAC;EAEDR,EAAA,CAAG,mEAAmE,MAAM;IAC1E,MAAMU,OAAA,GAAUL,+BAAA,CACd;MAAEM,KAAA,EAAO;IAAQ,GACjB;MACEC,QAAA,EAAU,CACR,eAAAN,GAAA,CAACJ,YAAA;QAAwBW,SAAA,EAAU;QACjCD,QAAA,iBAAAN,GAAA,CAACJ,YAAA,CAAaK,MAAA,EAAb;UAAoBO,IAAA,EAAK;QAAA,CAAe;MAAA,GADzB,MAElB,GACA,eAAAR,GAAA,CAACJ,YAAA;QAAyBW,SAAA,EAAU;QAClCD,QAAA,iBAAAN,GAAA,CAACJ,YAAA,CAAaK,MAAA,EAAb;UAAoBO,IAAA,EAAK;QAAA,CAAsB;MAAA,GADhC,OAElB;IAEJ,CACF;IAEAf,MAAA,CAAOK,wBAAA,CAAyBM,OAAO,CAAC,EAAEK,aAAA,CAAc;MACtDJ,KAAA,EAAO;MACPK,OAAA,EAAS;QACPC,IAAA,EAAM;UAAEJ,SAAA,EAAW;QAAO;QAC1BK,KAAA,EAAO;UAAEL,SAAA,EAAW;QAAQ;MAC9B;IACF,CAAC;EACH,CAAC;EAEDb,EAAA,CAAG,6DAA6D,MAAM;IACpE,MAAMmB,oBAAA,GAAuBlB,EAAA,CAAGmB,EAAA,CAAIV,QAAA,KAAa;MAC/C,GAAGA,QAAA;MACHW,WAAA,EAAa;IACf,EAAE;IACF,MAAMC,cAAA,GAA6C;MACjDH,oBAAA;MACAI,MAAA,EAAQA,CAAA,KAAM;IAChB;IACA,MAAMP,OAAA,GACJ,eAAAV,GAAA,CAACJ,YAAA;MAAaW,SAAA,EAAU;MACtBD,QAAA,iBAAAN,GAAA,CAACJ,YAAA,CAAaK,MAAA,EAAb;QAAoBO,IAAA,EAAK;QAAsBF,QAAA;MAAA,CAAK;IAAA,CACvD;IAGF,MAAMF,OAAA,GAAUL,+BAAA,CACd;MAAEM,KAAA,EAAO;IAAQ,GACjB;MAAEC,QAAA,EAAUI;IAAQ,GACpBM,cACF;IAEAvB,MAAA,CAAOW,OAAA,CAAQW,WAAW,EAAEb,IAAA,CAAK,IAAI;IACrCT,MAAA,CAAOoB,oBAAoB,EAAEK,oBAAA,CAAqB;IAClDzB,MAAA,CAAOoB,oBAAA,CAAqBM,IAAA,CAAKC,KAAA,CAAM,CAAC,IAAI,CAAC,CAAC,EAAElB,IAAA,CAAKQ,OAAA,CAAQW,KAAK;IAClE5B,MAAA,CAAOK,wBAAA,CAAyBM,OAAO,EAAEM,OAAA,CAAQE,KAAK,EAAEV,IAAA,CAAKQ,OAAA,CAAQW,KAAK;EAC5E,CAAC;AACH,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { describe, expect, it, vi } from "vitest";
|
|
4
|
+
import { StackToolbar } from "../StackToolbar.native.js";
|
|
5
|
+
import { STACK_TOOLBAR_CHILD } from "../StackToolbarImplementation.native.js";
|
|
6
|
+
import { exposeStackToolbarConfig } from "../StackToolbar.shared.native.js";
|
|
7
|
+
import { appendScreenStackPropsToOptions } from "../StackScreen.native.js";
|
|
8
|
+
describe("Stack.Toolbar headless config", function () {
|
|
9
|
+
it("marks declaration children for installed implementations", function () {
|
|
10
|
+
expect(StackToolbar.Button[STACK_TOOLBAR_CHILD]).toBe("button");
|
|
11
|
+
expect(StackToolbar.MenuAction[STACK_TOOLBAR_CHILD]).toBe("menuAction");
|
|
12
|
+
});
|
|
13
|
+
it("preserves every placement for the headless stack implementation", function () {
|
|
14
|
+
var options = appendScreenStackPropsToOptions({
|
|
15
|
+
title: "Inbox"
|
|
16
|
+
}, {
|
|
17
|
+
children: [/* @__PURE__ */_jsx(StackToolbar, {
|
|
18
|
+
placement: "left",
|
|
19
|
+
children: /* @__PURE__ */_jsx(StackToolbar.Button, {
|
|
20
|
+
icon: "sidebar.left"
|
|
21
|
+
})
|
|
22
|
+
}, "left"), /* @__PURE__ */_jsx(StackToolbar, {
|
|
23
|
+
placement: "right",
|
|
24
|
+
children: /* @__PURE__ */_jsx(StackToolbar.Button, {
|
|
25
|
+
icon: "square.and.arrow.up"
|
|
26
|
+
})
|
|
27
|
+
}, "right")]
|
|
28
|
+
});
|
|
29
|
+
expect(exposeStackToolbarConfig(options)).toMatchObject({
|
|
30
|
+
title: "Inbox",
|
|
31
|
+
toolbar: {
|
|
32
|
+
left: {
|
|
33
|
+
placement: "left"
|
|
34
|
+
},
|
|
35
|
+
right: {
|
|
36
|
+
placement: "right"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
it("hands toolbar declarations to an installed implementation", function () {
|
|
42
|
+
var _appendPropsToOptions_mock_calls_;
|
|
43
|
+
var appendPropsToOptions = vi.fn(function (options2) {
|
|
44
|
+
return {
|
|
45
|
+
...options2,
|
|
46
|
+
headerShown: true
|
|
47
|
+
};
|
|
48
|
+
});
|
|
49
|
+
var implementation = {
|
|
50
|
+
appendPropsToOptions,
|
|
51
|
+
render: function () {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
var toolbar = /* @__PURE__ */_jsx(StackToolbar, {
|
|
56
|
+
placement: "right",
|
|
57
|
+
children: /* @__PURE__ */_jsx(StackToolbar.Button, {
|
|
58
|
+
icon: "square.and.arrow.up",
|
|
59
|
+
children: "Share"
|
|
60
|
+
})
|
|
61
|
+
});
|
|
62
|
+
var options = appendScreenStackPropsToOptions({
|
|
63
|
+
title: "Inbox"
|
|
64
|
+
}, {
|
|
65
|
+
children: toolbar
|
|
66
|
+
}, implementation);
|
|
67
|
+
expect(options.headerShown).toBe(true);
|
|
68
|
+
expect(appendPropsToOptions).toHaveBeenCalledOnce();
|
|
69
|
+
expect((_appendPropsToOptions_mock_calls_ = appendPropsToOptions.mock.calls[0]) === null || _appendPropsToOptions_mock_calls_ === void 0 ? void 0 : _appendPropsToOptions_mock_calls_[1]).toBe(toolbar.props);
|
|
70
|
+
expect(exposeStackToolbarConfig(options).toolbar.right).toBe(toolbar.props);
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
//# sourceMappingURL=StackToolbar.test.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","React","describe","expect","it","vi","StackToolbar","STACK_TOOLBAR_CHILD","exposeStackToolbarConfig","appendScreenStackPropsToOptions","Button","toBe","MenuAction","options","title","children","placement","icon","toMatchObject","toolbar","left","right","_appendPropsToOptions_mock_calls_","appendPropsToOptions","fn","options2","headerShown","implementation","render"],"sources":["../../../../../src/layouts/stack-utils/__tests__/StackToolbar.test.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAU,QAAQ,mBAAc;AAGzC,OAAAC,KAAS;AACT,SAASC,QAAA,EAAAC,MAAA,EAAAC,EAAA,EAAAC,EAAA,QAA2B;AACpC,SAASC,YAAA,mCAAgC;AACzC,SAASC,mBAAA,iDAAuC;AAkBpC,SAAAC,wBAAA;AAhBZ,SAASC,+BAAA,QAAuC;AAC9CP,QAAG;EACDE,EAAA;IAAAD,MACG,CAAAG,YAAa,CAAAI,MAA6C,CAAAH,mBAAmB,GAAAI,IAAA;IAChFR,MAAE,CAAKG,YAAQ,CAAAM,UAAA,CAAAL,mBAAA,GAAAI,IAAA;EACf;EAAAP,EAAA,kEACoF;IACpF,IAAES,OAAK,GAAAJ,+BAAY;MACpBK,KAAA;IAED,CAAG;MACDC,QAAM,GACF,eAAef,IAAA,CAAAM,YAAA;QACjBU,SAAA;QACED,QAAU,iBAAAf,IAAA,CAAAM,YAAA,CAAAI,MAAA;UACRO,IAAA;QAGA;MAGF,YACF,eAAAjB,IAAA,CAAAM,YAAA;QACFU,SAAA;QAEAD,QAAO,iBAAyBf,IAAA,CAAAM,YAAU,CAAAI,MAAc;UACtDO,IAAO;QACP;MACE,UAAQ;IACoB,EAC9B;IACFd,MAAC,CAAAK,wBAAA,CAAAK,OAAA,GAAAK,aAAA;MACFJ,KAAA;MAEEK,OAAA;QACDC,IAAM;UACDJ,SAAA;QACH;QACAK,KAAA;UACIL,SAAA;QACJ;MACA;IACF;EACA;EAMAZ,EAAA,4DAAgB;IAAA,IACZkB,iCAAe;IAAA,IACfC,oBAAkB,GAAAlB,EAAA,CAAAmB,EAAA,WAAAC,QAAA;MACpB;QACF,GAAAA,QAAA;QAEAC,WAAe;MACf;IACA;IACA,IAAAC,cAAO;MACRJ,oBAAA;MACFK,MAAA,WAAAA,CAAA","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ import { StackHeaderLeft } from "./StackHeaderLeft.mjs";
|
|
|
4
4
|
import { StackHeaderRight } from "./StackHeaderRight.mjs";
|
|
5
5
|
import { StackHeaderSearchBar } from "./StackHeaderSearchBar.mjs";
|
|
6
6
|
import { StackHeaderTitle } from "./StackHeaderTitle.mjs";
|
|
7
|
+
import { StackToolbar } from "./StackToolbar.mjs";
|
|
7
8
|
import { NAVIGATOR_CONFIG } from "../../headless/children.mjs";
|
|
8
9
|
import { StackScreen, appendScreenStackPropsToOptions, validateStackPresentation } from "./StackScreen.mjs";
|
|
9
10
|
const StackHeader = Object.assign(StackHeaderComponent, {
|
|
@@ -14,5 +15,5 @@ const StackHeader = Object.assign(StackHeaderComponent, {
|
|
|
14
15
|
Title: StackHeaderTitle,
|
|
15
16
|
SearchBar: StackHeaderSearchBar
|
|
16
17
|
});
|
|
17
|
-
export { StackHeader, StackHeaderBackButton, StackHeaderComponent, StackHeaderLeft, StackHeaderRight, StackHeaderSearchBar, StackHeaderTitle, StackScreen, appendScreenStackPropsToOptions, validateStackPresentation };
|
|
18
|
+
export { StackHeader, StackHeaderBackButton, StackHeaderComponent, StackHeaderLeft, StackHeaderRight, StackHeaderSearchBar, StackHeaderTitle, StackScreen, StackToolbar, appendScreenStackPropsToOptions, validateStackPresentation };
|
|
18
19
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StackHeaderBackButton","StackHeaderComponent","StackHeaderLeft","StackHeaderRight","StackHeaderSearchBar","StackHeaderTitle","NAVIGATOR_CONFIG","StackScreen","appendScreenStackPropsToOptions","validateStackPresentation","StackHeader","Object","assign","Left","Right","BackButton","Title","SearchBar"],"sources":["../../../../src/layouts/stack-utils/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,SACEA,qBAAA,QAEK;AACP,SAASC,oBAAA,QAAmD;AAC5D,SAASC,eAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SACEC,oBAAA,QAEK;AACP,SAASC,gBAAA,QAAoD;AAC7D,SAASC,gBAAA,QAAwB;
|
|
1
|
+
{"version":3,"names":["StackHeaderBackButton","StackHeaderComponent","StackHeaderLeft","StackHeaderRight","StackHeaderSearchBar","StackHeaderTitle","StackToolbar","NAVIGATOR_CONFIG","StackScreen","appendScreenStackPropsToOptions","validateStackPresentation","StackHeader","Object","assign","Left","Right","BackButton","Title","SearchBar"],"sources":["../../../../src/layouts/stack-utils/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,SACEA,qBAAA,QAEK;AACP,SAASC,oBAAA,QAAmD;AAC5D,SAASC,eAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SACEC,oBAAA,QAEK;AACP,SAASC,gBAAA,QAAoD;AAC7D,SAASC,YAAA,QAAoB;AAC7B,SAASC,gBAAA,QAAwB;AA8CjC,SACEC,WAAA,EACAC,+BAAA,EACAC,yBAAA,QAGK;AA9CA,MAAMC,WAAA,GAAcC,MAAA,CAAOC,MAAA,CAAOZ,oBAAA,EAAsB;EAC7D,CAACM,gBAAgB,GAAG;EACpBO,IAAA,EAAMZ,eAAA;EACNa,KAAA,EAAOZ,gBAAA;EACPa,UAAA,EAAYhB,qBAAA;EACZiB,KAAA,EAAOZ,gBAAA;EACPa,SAAA,EAAWd;AACb,CAAC","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ import { StackHeaderLeft } from "./StackHeaderLeft.native.js";
|
|
|
4
4
|
import { StackHeaderRight } from "./StackHeaderRight.native.js";
|
|
5
5
|
import { StackHeaderSearchBar } from "./StackHeaderSearchBar.native.js";
|
|
6
6
|
import { StackHeaderTitle } from "./StackHeaderTitle.native.js";
|
|
7
|
+
import { StackToolbar } from "./StackToolbar.native.js";
|
|
7
8
|
import { NAVIGATOR_CONFIG } from "../../headless/children.native.js";
|
|
8
9
|
import { StackScreen, appendScreenStackPropsToOptions, validateStackPresentation } from "./StackScreen.native.js";
|
|
9
10
|
var StackHeader = Object.assign(StackHeaderComponent, {
|
|
@@ -14,5 +15,5 @@ var StackHeader = Object.assign(StackHeaderComponent, {
|
|
|
14
15
|
Title: StackHeaderTitle,
|
|
15
16
|
SearchBar: StackHeaderSearchBar
|
|
16
17
|
});
|
|
17
|
-
export { StackHeader, StackHeaderBackButton, StackHeaderComponent, StackHeaderLeft, StackHeaderRight, StackHeaderSearchBar, StackHeaderTitle, StackScreen, appendScreenStackPropsToOptions, validateStackPresentation };
|
|
18
|
+
export { StackHeader, StackHeaderBackButton, StackHeaderComponent, StackHeaderLeft, StackHeaderRight, StackHeaderSearchBar, StackHeaderTitle, StackScreen, StackToolbar, appendScreenStackPropsToOptions, validateStackPresentation };
|
|
18
19
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StackHeaderBackButton","StackHeaderComponent","StackHeaderLeft","StackHeaderRight","StackHeaderSearchBar","StackHeaderTitle","NAVIGATOR_CONFIG","StackScreen","appendScreenStackPropsToOptions","validateStackPresentation","StackHeader","Object","assign","Left","Right","BackButton","Title","SearchBar"],"sources":["../../../../src/layouts/stack-utils/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAAA,qBAAA;AAAA,SACEC,oBAAA;AAAA,SAEKC,eAAA;AACP,SAASC,gBAAA,sCAAmD;AAC5D,SAASC,oBAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SAAAC,
|
|
1
|
+
{"version":3,"names":["StackHeaderBackButton","StackHeaderComponent","StackHeaderLeft","StackHeaderRight","StackHeaderSearchBar","StackHeaderTitle","StackToolbar","NAVIGATOR_CONFIG","StackScreen","appendScreenStackPropsToOptions","validateStackPresentation","StackHeader","Object","assign","Left","Right","BackButton","Title","SearchBar"],"sources":["../../../../src/layouts/stack-utils/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAAA,qBAAA;AAAA,SACEC,oBAAA;AAAA,SAEKC,eAAA;AACP,SAASC,gBAAA,sCAAmD;AAC5D,SAASC,oBAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SAAAC,YAAA;AAAA,SACEC,gBAAA;AAAA,SAEKC,WAAA,EAAAC,+BAAA,EAAAC,yBAAA;AACP,IAAAC,WAAS,GAAAC,MAAA,CAAAC,MAAA,CAAAZ,oBAAoD;EAC7D,CAAAM,gBAAS;EACTO,IAAA,EAAAZ,eAAS;EA8CTa,KAAA,EAAAZ,gBAAA;EACEa,UAAA,EAAAhB,qBAAA;EACAiB,KAAA,EAAAZ,gBAAA;EACAa,SAAA,EAAAd;AAAA;AA3CK,SACLO,WAAC,EACDX,qBAAM,EACNC,oBAAO,EACPC,eAAY,EACZC,gBAAO,EACPC,oBAAW,EACZC,gBAAA,E","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ function buildOneMetroResolverOverrides({
|
|
|
7
7
|
const emptyPath = require2.resolve("@vxrn/vite-plugin-metro/empty", {
|
|
8
8
|
paths: [projectRoot]
|
|
9
9
|
});
|
|
10
|
+
const projectPackagePath = path.join(projectRoot, "package.json");
|
|
10
11
|
return defaultConfig => {
|
|
11
12
|
const resolver = {
|
|
12
13
|
...defaultConfig?.resolver,
|
|
@@ -15,6 +16,13 @@ function buildOneMetroResolverOverrides({
|
|
|
15
16
|
},
|
|
16
17
|
nodeModulesPaths: defaultConfig?.resolver?.nodeModulesPaths,
|
|
17
18
|
resolveRequest: (context, moduleName, platform) => {
|
|
19
|
+
const defaultResolveRequest = defaultConfig?.resolver?.resolveRequest || context.resolveRequest;
|
|
20
|
+
if (moduleName === "react-native-worklets" || moduleName.startsWith("react-native-worklets/")) {
|
|
21
|
+
return defaultResolveRequest({
|
|
22
|
+
...context,
|
|
23
|
+
originModulePath: projectPackagePath
|
|
24
|
+
}, moduleName, platform);
|
|
25
|
+
}
|
|
18
26
|
if (moduleName.endsWith(".css")) {
|
|
19
27
|
return {
|
|
20
28
|
type: "sourceFile",
|
|
@@ -34,8 +42,7 @@ function buildOneMetroResolverOverrides({
|
|
|
34
42
|
};
|
|
35
43
|
}
|
|
36
44
|
if (moduleName === "react-native-svg") {
|
|
37
|
-
const
|
|
38
|
-
const res2 = defaultResolveRequest2(context, moduleName, platform);
|
|
45
|
+
const res2 = defaultResolveRequest(context, moduleName, platform);
|
|
39
46
|
const svgSrcSuffix = `${path.sep}src${path.sep}index.ts`;
|
|
40
47
|
if (res2 && "filePath" in res2 && res2.filePath.includes(svgSrcSuffix)) {
|
|
41
48
|
return {
|
|
@@ -45,7 +52,6 @@ function buildOneMetroResolverOverrides({
|
|
|
45
52
|
}
|
|
46
53
|
return res2;
|
|
47
54
|
}
|
|
48
|
-
const defaultResolveRequest = defaultConfig?.resolver?.resolveRequest || context.resolveRequest;
|
|
49
55
|
const res = defaultResolveRequest(context, moduleName, platform);
|
|
50
56
|
if (res && "filePath" in res && /\.server\.[jt]sx?$/.test(res.filePath)) {
|
|
51
57
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["module","path","buildOneMetroResolverOverrides","projectRoot","require","createRequire","emptyPath","resolve","paths","defaultConfig","resolver","extraNodeModules","nodeModulesPaths","resolveRequest","context","moduleName","platform","
|
|
1
|
+
{"version":3,"names":["module","path","buildOneMetroResolverOverrides","projectRoot","require","createRequire","emptyPath","resolve","paths","projectPackagePath","join","defaultConfig","resolver","extraNodeModules","nodeModulesPaths","resolveRequest","context","moduleName","platform","defaultResolveRequest","startsWith","originModulePath","endsWith","type","filePath","test","res","svgSrcSuffix","sep","res2","includes","replace"],"sources":["../../../src/metro-config/buildOneMetroResolverOverrides.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,MAAA,MAAY;AACnB,OAAOC,IAAA,MAAU;AAqBV,SAASC,+BAA+B;EAC7CC;AACF,GAEO;EACL,MAAMC,QAAA,GAAUJ,MAAA,CAAOK,aAAA,CAAcF,WAAA,GAAc,GAAG;EACtD,MAAMG,SAAA,GAAYF,QAAA,CAAQG,OAAA,CAAQ,iCAAiC;IACjEC,KAAA,EAAO,CAACL,WAAW;EACrB,CAAC;EACD,MAAMM,kBAAA,GAAqBR,IAAA,CAAKS,IAAA,CAAKP,WAAA,EAAa,cAAc;EAEhE,OAAmCQ,aAAA,IAAwB;IACzD,MAAMC,QAAA,GAAgC;MACpC,GAAGD,aAAA,EAAeC,QAAA;MAClBC,gBAAA,EAAkB;QAChB,GAAGF,aAAA,EAAeC,QAAA,EAAUC;MAC9B;MACAC,gBAAA,EAAkBH,aAAA,EAAeC,QAAA,EAAUE,gBAAA;MAC3CC,cAAA,EAAgBA,CAACC,OAAA,EAAcC,UAAA,EAAoBC,QAAA,KAAqB;QACtE,MAAMC,qBAAA,GACJR,aAAA,EAAeC,QAAA,EAAUG,cAAA,IAAkBC,OAAA,CAAQD,cAAA;QAGrD,IACEE,UAAA,KAAe,2BACfA,UAAA,CAAWG,UAAA,CAAW,wBAAwB,GAC9C;UACA,OAAOD,qBAAA,CACL;YAAE,GAAGH,OAAA;YAASK,gBAAA,EAAkBZ;UAAmB,GACnDQ,UAAA,EACAC,QACF;QACF;QAEA,IAAID,UAAA,CAAWK,QAAA,CAAS,MAAM,GAAG;UAC/B,OAAO;YACLC,IAAA,EAAM;YACNC,QAAA,EAAUlB;UACZ;QACF;QAGA,IAAI,oBAAoBmB,IAAA,CAAKR,UAAU,GAAG;UACxC,OAAO;YACLM,IAAA,EAAM;YACNC,QAAA,EAAUlB;UACZ;QACF;QAMA,IAAI,wBAAwBmB,IAAA,CAAKR,UAAU,GAAG;UAC5C,OAAO;YACLM,IAAA,EAAM;YACNC,QAAA,EAAUlB;UACZ;QACF;QAIA,IAAIW,UAAA,KAAe,oBAAoB;UACrC,MAAMS,IAAA,GAAMP,qBAAA,CAAsBH,OAAA,EAASC,UAAA,EAAYC,QAAQ;UAC/D,MAAMS,YAAA,GAAe,GAAG1B,IAAA,CAAK2B,GAAG,MAAM3B,IAAA,CAAK2B,GAAG;UAC9C,IAAIF,IAAA,IAAO,cAAcG,IAAA,IAAOA,IAAA,CAAIL,QAAA,CAASM,QAAA,CAASH,YAAY,GAAG;YACnE,OAAO;cACL,GAAGD,IAAA;cACHF,QAAA,EAAUE,IAAA,CAAIF,QAAA,CAASO,OAAA,CACrBJ,YAAA,EACA,GAAG1B,IAAA,CAAK2B,GAAG,MAAM3B,IAAA,CAAK2B,GAAG,WAAW3B,IAAA,CAAK2B,GAAG,UAC9C;YACF;UACF;UACA,OAAOF,IAAA;QACT;QAEA,MAAMA,GAAA,GAAMP,qBAAA,CAAsBH,OAAA,EAASC,UAAA,EAAYC,QAAQ;QAG/D,IAAIQ,GAAA,IAAO,cAAcA,GAAA,IAAO,qBAAqBD,IAAA,CAAKC,GAAA,CAAIF,QAAQ,GAAG;UACvE,OAAO;YAAED,IAAA,EAAM;YAAcC,QAAA,EAAUlB;UAAU;QACnD;QAEA,OAAOoB,GAAA;MACT;IACF;IAEA,OAAO;MACL,GAAIf,aAAA;MACJC;IACF;EACF;AACF","ignoreList":[]}
|
|
@@ -8,6 +8,7 @@ function buildOneMetroResolverOverrides(param) {
|
|
|
8
8
|
var emptyPath = require2.resolve("@vxrn/vite-plugin-metro/empty", {
|
|
9
9
|
paths: [projectRoot]
|
|
10
10
|
});
|
|
11
|
+
var projectPackagePath = path.join(projectRoot, "package.json");
|
|
11
12
|
return function (defaultConfig) {
|
|
12
13
|
var _defaultConfig_resolver, _defaultConfig_resolver1;
|
|
13
14
|
var resolver = {
|
|
@@ -18,6 +19,13 @@ function buildOneMetroResolverOverrides(param) {
|
|
|
18
19
|
nodeModulesPaths: defaultConfig === null || defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver1 = defaultConfig.resolver) === null || _defaultConfig_resolver1 === void 0 ? void 0 : _defaultConfig_resolver1.nodeModulesPaths,
|
|
19
20
|
resolveRequest: function (context, moduleName, platform) {
|
|
20
21
|
var _defaultConfig_resolver2;
|
|
22
|
+
var defaultResolveRequest = (defaultConfig === null || defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver2 = defaultConfig.resolver) === null || _defaultConfig_resolver2 === void 0 ? void 0 : _defaultConfig_resolver2.resolveRequest) || context.resolveRequest;
|
|
23
|
+
if (moduleName === "react-native-worklets" || moduleName.startsWith("react-native-worklets/")) {
|
|
24
|
+
return defaultResolveRequest({
|
|
25
|
+
...context,
|
|
26
|
+
originModulePath: projectPackagePath
|
|
27
|
+
}, moduleName, platform);
|
|
28
|
+
}
|
|
21
29
|
if (moduleName.endsWith(".css")) {
|
|
22
30
|
return {
|
|
23
31
|
type: "sourceFile",
|
|
@@ -37,8 +45,6 @@ function buildOneMetroResolverOverrides(param) {
|
|
|
37
45
|
};
|
|
38
46
|
}
|
|
39
47
|
if (moduleName === "react-native-svg") {
|
|
40
|
-
var _defaultConfig_resolver12;
|
|
41
|
-
var defaultResolveRequest = (defaultConfig === null || defaultConfig === void 0 ? void 0 : (_defaultConfig_resolver12 = defaultConfig.resolver) === null || _defaultConfig_resolver12 === void 0 ? void 0 : _defaultConfig_resolver12.resolveRequest) || context.resolveRequest;
|
|
42
48
|
var res = defaultResolveRequest(context, moduleName, platform);
|
|
43
49
|
var svgSrcSuffix = `${path.sep}src${path.sep}index.ts`;
|
|
44
50
|
if (res && "filePath" in res && res.filePath.includes(svgSrcSuffix)) {
|
|
@@ -49,8 +55,7 @@ function buildOneMetroResolverOverrides(param) {
|
|
|
49
55
|
}
|
|
50
56
|
return res;
|
|
51
57
|
}
|
|
52
|
-
var
|
|
53
|
-
var res1 = defaultResolveRequest1(context, moduleName, platform);
|
|
58
|
+
var res1 = defaultResolveRequest(context, moduleName, platform);
|
|
54
59
|
if (res1 && "filePath" in res1 && /\.server\.[jt]sx?$/.test(res1.filePath)) {
|
|
55
60
|
return {
|
|
56
61
|
type: "sourceFile",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["module","path","buildOneMetroResolverOverrides","param","projectRoot","require2","createRequire","emptyPath","resolve","paths","defaultConfig","_defaultConfig_resolver","_defaultConfig_resolver1","resolver","extraNodeModules","nodeModulesPaths","resolveRequest","context","moduleName","platform","_defaultConfig_resolver2","
|
|
1
|
+
{"version":3,"names":["module","path","buildOneMetroResolverOverrides","param","projectRoot","require2","createRequire","emptyPath","resolve","paths","projectPackagePath","join","defaultConfig","_defaultConfig_resolver","_defaultConfig_resolver1","resolver","extraNodeModules","nodeModulesPaths","resolveRequest","context","moduleName","platform","_defaultConfig_resolver2","defaultResolveRequest","startsWith","originModulePath","endsWith","type","filePath","test","res","svgSrcSuffix","sep","includes","replace","res1"],"sources":["../../../src/metro-config/buildOneMetroResolverOverrides.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,MAAA,MAAY;AACnB,OAAOC,IAAA,MAAU;AAqBV,SAASC,+BAA+BC,KAAA;EAC7C;IAAAC;EAAA,IAAAD,KAAA;EACF,IAEOE,QAAA,GAAAL,MAAA,CAAAM,aAAA,CAAAF,WAAA;EACL,IAAAG,SAAM,GAAAF,QAAiB,CAAAG,OAAA,gCAA+B;IACtDC,KAAM,GACJL,WAAQ;EAEV;EAEA,IAAAM,kBAAmC,GAAAT,IAAwB,CAAAU,IAAA,CAAAP,WAAA;EACzD,iBAAMQ,aAAgC;IAAA,IACpCC,uBAAkB,EAAAC,wBAAA;IAAA,IAClBC,QAAA;MAAkB,IAChBH,aAAG,KAAe,QAAAA,aAAU,uBAAAA,aAAA,CAAAG,QAAA;MAC9BC,gBAAA;QACA,IAAAJ,aAAkB,aAAAA,aAAyB,wBAAAC,uBAAA,GAAAD,aAAA,CAAAG,QAAA,cAAAF,uBAAA,uBAAAA,uBAAA,CAAAG,gBAAA;MAC3C;MACEC,gBAAM,EAAAL,aAAA,KACJ,QAAAA,aAAyB,mBAAkB,KAAAE,wBAAQ,GAAAF,aAAA,CAAAG,QAAA,cAAAD,wBAAA,uBAAAA,wBAAA,CAAAG,gBAAA;MAGrDC,cACE,WAAAA,CAAeC,OAAA,EAAAC,UAAA,EAAAC,QACf;QAEA,IAAAC,wBAAO;QAAA,IACLC,qBAAc,IAAAX,aAAkB,aAAmBA,aAAA,wBAAAU,wBAAA,GAAAV,aAAA,CAAAG,QAAA,cAAAO,wBAAA,uBAAAA,wBAAA,CAAAJ,cAAA,KAAAC,OAAA,CAAAD,cAAA;QAAA,IACnDE,UAAA,gCAAAA,UAAA,CAAAI,UAAA;UAAA,OACAD,qBAAA;YACF,GAAAJ,OAAA;YACFM,gBAAA,EAAAf;UAEA,GAAIU,UAAW,EAAAC,QAAS;QACtB;QAAO,IACLD,UAAM,CAAAM,QAAA;UAAA,OACN;YACFC,IAAA;YACFC,QAAA,EAAArB;UAGA;QACE;QAAO,IACL,mBAAM,CAAAsB,IAAA,CAAAT,UAAA;UAAA,OACN;YACFO,IAAA;YACFC,QAAA,EAAArB;UAMA;QACE;QAAO,IACL,uBAAM,CAAAsB,IAAA,CAAAT,UAAA;UAAA,OACN;YACFO,IAAA;YACFC,QAAA,EAAArB;UAIA;QACE;QACA,IAAAa,UAAM,uBAA0B;UAChC,IAAIU,GAAA,GAAAP,qBAAqB,CAAAJ,OAAW,EAAAC,UAAS,EAAAC,QAAS;UACpD,IAAAU,YAAO,MAAA9B,IAAA,CAAA+B,GAAA,MAAA/B,IAAA,CAAA+B,GAAA;UAAA,IACLF,GAAG,kBAAAA,GAAA,IAAAA,GAAA,CAAAF,QAAA,CAAAK,QAAA,CAAAF,YAAA;YAAA,OACH;cAAuB,GACrBD,GAAA;cAAAF,QACG,EAAKE,GAAG,CAAAF,QAAM,CAAAM,OAAQ,CAAAH,YAAgB,KAAG9B,IAAA,CAAA+B,GAAA,MAAA/B,IAAA,CAAA+B,GAAA,WAAA/B,IAAA,CAAA+B,GAAA;YAAA;UAC9C;UAEJ,OAAAF,GAAA;QACA;QACF,IAAAK,IAAA,GAAAZ,qBAAA,CAAAJ,OAAA,EAAAC,UAAA,EAAAC,QAAA;QAEA,IAAAc,IAAM,IAAM,cAAAA,IAAA,IAAsB,oBAAS,CAAYN,IAAA,CAAAM,IAAQ,CAAAP,QAAA;UAG/D,OAAI;YACFD,IAAA,EAAO,YAAQ;YACjBC,QAAA,EAAArB;UAEA;QACF;QACF,OAAA4B,IAAA;MAEA;IAAO;IACD,OACJ;MACF,GAAAvB,aAAA;MACFG;IACF","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import { buildOneMetroResolverOverrides } from "./buildOneMetroResolverOverrides.mjs";
|
|
4
|
+
describe("buildOneMetroResolverOverrides", () => {
|
|
5
|
+
it("resolves every react-native-worklets import from the app root", () => {
|
|
6
|
+
const projectRoot = path.resolve(__dirname, "../../");
|
|
7
|
+
const nestedOrigin = path.join(projectRoot, "node_modules/react-native-reanimated/src/index.ts");
|
|
8
|
+
const resolvedOrigins = [];
|
|
9
|
+
const config = buildOneMetroResolverOverrides({
|
|
10
|
+
projectRoot
|
|
11
|
+
})({
|
|
12
|
+
resolver: {
|
|
13
|
+
resolveRequest: (context, moduleName, _platform) => {
|
|
14
|
+
resolvedOrigins.push(`${moduleName}:${context.originModulePath}`);
|
|
15
|
+
return {
|
|
16
|
+
type: "sourceFile",
|
|
17
|
+
filePath: moduleName
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const resolveRequest = config.resolver?.resolveRequest;
|
|
23
|
+
if (!resolveRequest) {
|
|
24
|
+
throw new Error("expected a Metro resolver override");
|
|
25
|
+
}
|
|
26
|
+
resolveRequest({
|
|
27
|
+
originModulePath: nestedOrigin
|
|
28
|
+
}, "react-native-worklets", "ios");
|
|
29
|
+
resolveRequest({
|
|
30
|
+
originModulePath: nestedOrigin
|
|
31
|
+
}, "react-native-worklets/package.json", "ios");
|
|
32
|
+
resolveRequest({
|
|
33
|
+
originModulePath: nestedOrigin
|
|
34
|
+
}, "react-native-safe-area-context", "ios");
|
|
35
|
+
expect(resolvedOrigins).toEqual([`react-native-worklets:${path.join(projectRoot, "package.json")}`, `react-native-worklets/package.json:${path.join(projectRoot, "package.json")}`, `react-native-safe-area-context:${nestedOrigin}`]);
|
|
36
|
+
});
|
|
37
|
+
it("keeps the compiled react-native-svg native entry point", () => {
|
|
38
|
+
const projectRoot = path.resolve(__dirname, "../../");
|
|
39
|
+
const config = buildOneMetroResolverOverrides({
|
|
40
|
+
projectRoot
|
|
41
|
+
})({
|
|
42
|
+
resolver: {
|
|
43
|
+
resolveRequest: (_context, moduleName, _platform) => ({
|
|
44
|
+
type: "sourceFile",
|
|
45
|
+
filePath: path.join(projectRoot, "node_modules", moduleName, "src", "index.ts")
|
|
46
|
+
})
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
const resolveRequest = config.resolver?.resolveRequest;
|
|
50
|
+
if (!resolveRequest) {
|
|
51
|
+
throw new Error("expected a Metro resolver override");
|
|
52
|
+
}
|
|
53
|
+
expect(resolveRequest({
|
|
54
|
+
originModulePath: path.join(projectRoot, "app.tsx")
|
|
55
|
+
}, "react-native-svg", "ios")).toEqual({
|
|
56
|
+
type: "sourceFile",
|
|
57
|
+
filePath: path.join(projectRoot, "node_modules", "react-native-svg", "lib", "commonjs", "index.js")
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=buildOneMetroResolverOverrides.test.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["path","describe","expect","it","buildOneMetroResolverOverrides","projectRoot","resolve","__dirname","nestedOrigin","join","resolvedOrigins","config","resolver","resolveRequest","context","moduleName","_platform","push","originModulePath","type","filePath","Error","toEqual","_context"],"sources":["../../../src/metro-config/buildOneMetroResolverOverrides.test.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAOA,IAAA,MAAU;AACjB,SAASC,QAAA,EAAUC,MAAA,EAAQC,EAAA,QAAU;AACrC,SAASC,8BAAA,QAAsC;AAE/CH,QAAA,CAAS,kCAAkC,MAAM;EAC/CE,EAAA,CAAG,iEAAiE,MAAM;IACxE,MAAME,WAAA,GAAcL,IAAA,CAAKM,OAAA,CAAQC,SAAA,EAAW,QAAQ;IACpD,MAAMC,YAAA,GAAeR,IAAA,CAAKS,IAAA,CACxBJ,WAAA,EACA,mDACF;IACA,MAAMK,eAAA,GAA4B,EAAC;IACnC,MAAMC,MAAA,GAASP,8BAAA,CAA+B;MAAEC;IAAY,CAAC,EAAE;MAC7DO,QAAA,EAAU;QACRC,cAAA,EAAgBA,CACdC,OAAA,EACAC,UAAA,EACAC,SAAA,KACG;UACHN,eAAA,CAAgBO,IAAA,CAAK,GAAGF,UAAU,IAAID,OAAA,CAAQI,gBAAgB,EAAE;UAChE,OAAO;YAAEC,IAAA,EAAM;YAAcC,QAAA,EAAUL;UAAW;QACpD;MACF;IACF,CAAC;IACD,MAAMF,cAAA,GAAiBF,MAAA,CAAOC,QAAA,EAAUC,cAAA;IAExC,IAAI,CAACA,cAAA,EAAgB;MACnB,MAAM,IAAIQ,KAAA,CAAM,oCAAoC;IACtD;IAEAR,cAAA,CAAe;MAAEK,gBAAA,EAAkBV;IAAa,GAAG,yBAAyB,KAAK;IACjFK,cAAA,CACE;MAAEK,gBAAA,EAAkBV;IAAa,GACjC,sCACA,KACF;IACAK,cAAA,CACE;MAAEK,gBAAA,EAAkBV;IAAa,GACjC,kCACA,KACF;IAEAN,MAAA,CAAOQ,eAAe,EAAEY,OAAA,CAAQ,CAC9B,yBAAyBtB,IAAA,CAAKS,IAAA,CAAKJ,WAAA,EAAa,cAAc,CAAC,IAC/D,sCAAsCL,IAAA,CAAKS,IAAA,CAAKJ,WAAA,EAAa,cAAc,CAAC,IAC5E,kCAAkCG,YAAY,GAC/C;EACH,CAAC;EAEDL,EAAA,CAAG,0DAA0D,MAAM;IACjE,MAAME,WAAA,GAAcL,IAAA,CAAKM,OAAA,CAAQC,SAAA,EAAW,QAAQ;IACpD,MAAMI,MAAA,GAASP,8BAAA,CAA+B;MAAEC;IAAY,CAAC,EAAE;MAC7DO,QAAA,EAAU;QACRC,cAAA,EAAgBA,CACdU,QAAA,EACAR,UAAA,EACAC,SAAA,MACI;UACJG,IAAA,EAAM;UACNC,QAAA,EAAUpB,IAAA,CAAKS,IAAA,CAAKJ,WAAA,EAAa,gBAAgBU,UAAA,EAAY,OAAO,UAAU;QAChF;MACF;IACF,CAAC;IACD,MAAMF,cAAA,GAAiBF,MAAA,CAAOC,QAAA,EAAUC,cAAA;IAExC,IAAI,CAACA,cAAA,EAAgB;MACnB,MAAM,IAAIQ,KAAA,CAAM,oCAAoC;IACtD;IAEAnB,MAAA,CACEW,cAAA,CACE;MAAEK,gBAAA,EAAkBlB,IAAA,CAAKS,IAAA,CAAKJ,WAAA,EAAa,SAAS;IAAE,GACtD,oBACA,KACF,CACF,EAAEiB,OAAA,CAAQ;MACRH,IAAA,EAAM;MACNC,QAAA,EAAUpB,IAAA,CAAKS,IAAA,CACbJ,WAAA,EACA,gBACA,oBACA,OACA,YACA,UACF;IACF,CAAC;EACH,CAAC;AACH,CAAC","ignoreList":[]}
|