one 1.2.69 → 1.2.70
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/__mocks__/@react-navigation/native-stack.cjs +29 -0
- package/dist/cjs/__mocks__/@react-navigation/native-stack.js +24 -0
- package/dist/cjs/__mocks__/@react-navigation/native-stack.js.map +6 -0
- package/dist/cjs/__mocks__/@react-navigation/native-stack.native.js +38 -0
- package/dist/cjs/__mocks__/@react-navigation/native-stack.native.js.map +1 -0
- package/dist/cjs/__mocks__/@react-navigation/native.js +45 -0
- package/dist/cjs/__mocks__/@react-navigation/native.js.map +1 -0
- package/dist/cjs/__mocks__/expo-linking.cjs +36 -0
- package/dist/cjs/__mocks__/expo-linking.js +25 -0
- package/dist/cjs/__mocks__/expo-linking.js.map +6 -0
- package/dist/cjs/__mocks__/expo-linking.native.js +47 -0
- package/dist/cjs/__mocks__/expo-linking.native.js.map +1 -0
- package/dist/cjs/__mocks__/expo-modules-core.cjs +36 -0
- package/dist/cjs/__mocks__/expo-modules-core.js +31 -0
- package/dist/cjs/__mocks__/expo-modules-core.js.map +6 -0
- package/dist/cjs/__mocks__/expo-modules-core.native.js +67 -0
- package/dist/cjs/__mocks__/expo-modules-core.native.js.map +1 -0
- package/dist/cjs/__mocks__/react-native-screens.cjs +28 -0
- package/dist/cjs/__mocks__/react-native-screens.js +22 -0
- package/dist/cjs/__mocks__/react-native-screens.js.map +6 -0
- package/dist/cjs/__mocks__/react-native-screens.native.js +31 -0
- package/dist/cjs/__mocks__/react-native-screens.native.js.map +1 -0
- package/dist/cjs/__mocks__/react-native.js +49 -0
- package/dist/cjs/__mocks__/react-native.js.map +1 -0
- package/dist/cjs/fork/NavigationContainer.js.map +1 -1
- package/dist/cjs/fork/NavigationContainer.native.js.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/layouts/Stack.cjs +6 -1
- package/dist/cjs/layouts/Stack.js +5 -2
- package/dist/cjs/layouts/Stack.js.map +1 -1
- package/dist/cjs/layouts/Stack.native.js +6 -1
- package/dist/cjs/layouts/Stack.native.js.map +1 -1
- package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.cjs +40 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.js +35 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.native.js +43 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderBackButton.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderComponent.cjs +90 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderComponent.js +64 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderComponent.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderComponent.native.js +99 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderComponent.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderLeft.cjs +35 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderLeft.js +30 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderLeft.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderLeft.native.js +40 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderLeft.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderRight.cjs +35 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderRight.js +30 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderRight.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderRight.native.js +40 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderRight.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.cjs +35 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.js +30 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.native.js +38 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderSearchBar.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderTitle.cjs +65 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderTitle.js +46 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderTitle.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderTitle.native.js +68 -0
- package/dist/cjs/layouts/stack-utils/StackHeaderTitle.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/StackScreen.cjs +57 -0
- package/dist/cjs/layouts/stack-utils/StackScreen.js +43 -0
- package/dist/cjs/layouts/stack-utils/StackScreen.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js +64 -0
- package/dist/cjs/layouts/stack-utils/StackScreen.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/__tests__/composition.test.cjs +455 -0
- package/dist/cjs/layouts/stack-utils/__tests__/composition.test.js +406 -0
- package/dist/cjs/layouts/stack-utils/__tests__/composition.test.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/__tests__/composition.test.native.js +480 -0
- package/dist/cjs/layouts/stack-utils/__tests__/composition.test.native.js.map +1 -0
- package/dist/cjs/layouts/stack-utils/index.cjs +47 -0
- package/dist/cjs/layouts/stack-utils/index.js +36 -0
- package/dist/cjs/layouts/stack-utils/index.js.map +6 -0
- package/dist/cjs/layouts/stack-utils/index.native.js +50 -0
- package/dist/cjs/layouts/stack-utils/index.native.js.map +1 -0
- package/dist/cjs/layouts/withLayoutContext.cjs +2 -1
- package/dist/cjs/layouts/withLayoutContext.js +2 -2
- package/dist/cjs/layouts/withLayoutContext.js.map +1 -1
- package/dist/cjs/layouts/withLayoutContext.native.js +3 -2
- package/dist/cjs/layouts/withLayoutContext.native.js.map +1 -1
- package/dist/cjs/utils/children.cjs +46 -0
- package/dist/cjs/utils/children.js +47 -0
- package/dist/cjs/utils/children.js.map +6 -0
- package/dist/cjs/utils/children.native.js +76 -0
- package/dist/cjs/utils/children.native.js.map +1 -0
- package/dist/cjs/utils/style.cjs +28 -0
- package/dist/cjs/utils/style.js +24 -0
- package/dist/cjs/utils/style.js.map +6 -0
- package/dist/cjs/utils/style.native.js +31 -0
- package/dist/cjs/utils/style.native.js.map +1 -0
- package/dist/esm/__mocks__/@react-navigation/native-stack.js +8 -0
- package/dist/esm/__mocks__/@react-navigation/native-stack.js.map +6 -0
- package/dist/esm/__mocks__/@react-navigation/native-stack.mjs +6 -0
- package/dist/esm/__mocks__/@react-navigation/native-stack.mjs.map +1 -0
- package/dist/esm/__mocks__/@react-navigation/native-stack.native.js +12 -0
- package/dist/esm/__mocks__/@react-navigation/native-stack.native.js.map +1 -0
- package/dist/esm/__mocks__/@react-navigation/native.js +18 -0
- package/dist/esm/__mocks__/@react-navigation/native.js.map +1 -0
- package/dist/esm/__mocks__/expo-linking.js +9 -0
- package/dist/esm/__mocks__/expo-linking.js.map +6 -0
- package/dist/esm/__mocks__/expo-linking.mjs +10 -0
- package/dist/esm/__mocks__/expo-linking.mjs.map +1 -0
- package/dist/esm/__mocks__/expo-linking.native.js +18 -0
- package/dist/esm/__mocks__/expo-linking.native.js.map +1 -0
- package/dist/esm/__mocks__/expo-modules-core.js +15 -0
- package/dist/esm/__mocks__/expo-modules-core.js.map +6 -0
- package/dist/esm/__mocks__/expo-modules-core.mjs +10 -0
- package/dist/esm/__mocks__/expo-modules-core.mjs.map +1 -0
- package/dist/esm/__mocks__/expo-modules-core.native.js +38 -0
- package/dist/esm/__mocks__/expo-modules-core.native.js.map +1 -0
- package/dist/esm/__mocks__/react-native-screens.js +6 -0
- package/dist/esm/__mocks__/react-native-screens.js.map +6 -0
- package/dist/esm/__mocks__/react-native-screens.mjs +4 -0
- package/dist/esm/__mocks__/react-native-screens.mjs.map +1 -0
- package/dist/esm/__mocks__/react-native-screens.native.js +4 -0
- package/dist/esm/__mocks__/react-native-screens.native.js.map +1 -0
- package/dist/esm/__mocks__/react-native.js +19 -0
- package/dist/esm/__mocks__/react-native.js.map +1 -0
- package/dist/esm/fork/NavigationContainer.js.map +1 -1
- package/dist/esm/fork/NavigationContainer.mjs.map +1 -1
- package/dist/esm/fork/NavigationContainer.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.js +5 -1
- package/dist/esm/layouts/Stack.js.map +1 -1
- package/dist/esm/layouts/Stack.mjs +6 -1
- package/dist/esm/layouts/Stack.mjs.map +1 -1
- package/dist/esm/layouts/Stack.native.js +6 -1
- package/dist/esm/layouts/Stack.native.js.map +1 -1
- package/dist/esm/layouts/stack-utils/StackHeaderBackButton.js +19 -0
- package/dist/esm/layouts/stack-utils/StackHeaderBackButton.js.map +6 -0
- package/dist/esm/layouts/stack-utils/StackHeaderBackButton.mjs +16 -0
- package/dist/esm/layouts/stack-utils/StackHeaderBackButton.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderBackButton.native.js +16 -0
- package/dist/esm/layouts/stack-utils/StackHeaderBackButton.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderComponent.js +61 -0
- package/dist/esm/layouts/stack-utils/StackHeaderComponent.js.map +6 -0
- package/dist/esm/layouts/stack-utils/StackHeaderComponent.mjs +66 -0
- package/dist/esm/layouts/stack-utils/StackHeaderComponent.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderComponent.native.js +72 -0
- package/dist/esm/layouts/stack-utils/StackHeaderComponent.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderLeft.js +14 -0
- package/dist/esm/layouts/stack-utils/StackHeaderLeft.js.map +6 -0
- package/dist/esm/layouts/stack-utils/StackHeaderLeft.mjs +11 -0
- package/dist/esm/layouts/stack-utils/StackHeaderLeft.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderLeft.native.js +13 -0
- package/dist/esm/layouts/stack-utils/StackHeaderLeft.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderRight.js +14 -0
- package/dist/esm/layouts/stack-utils/StackHeaderRight.js.map +6 -0
- package/dist/esm/layouts/stack-utils/StackHeaderRight.mjs +11 -0
- package/dist/esm/layouts/stack-utils/StackHeaderRight.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderRight.native.js +13 -0
- package/dist/esm/layouts/stack-utils/StackHeaderRight.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.js +14 -0
- package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.js.map +6 -0
- package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.mjs +11 -0
- package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.native.js +11 -0
- package/dist/esm/layouts/stack-utils/StackHeaderSearchBar.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderTitle.js +31 -0
- package/dist/esm/layouts/stack-utils/StackHeaderTitle.js.map +6 -0
- package/dist/esm/layouts/stack-utils/StackHeaderTitle.mjs +41 -0
- package/dist/esm/layouts/stack-utils/StackHeaderTitle.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackHeaderTitle.native.js +41 -0
- package/dist/esm/layouts/stack-utils/StackHeaderTitle.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/StackScreen.js +33 -0
- package/dist/esm/layouts/stack-utils/StackScreen.js.map +6 -0
- package/dist/esm/layouts/stack-utils/StackScreen.mjs +33 -0
- package/dist/esm/layouts/stack-utils/StackScreen.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/StackScreen.native.js +38 -0
- package/dist/esm/layouts/stack-utils/StackScreen.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/__tests__/composition.test.js +422 -0
- package/dist/esm/layouts/stack-utils/__tests__/composition.test.js.map +6 -0
- package/dist/esm/layouts/stack-utils/__tests__/composition.test.mjs +456 -0
- package/dist/esm/layouts/stack-utils/__tests__/composition.test.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/__tests__/composition.test.native.js +478 -0
- package/dist/esm/layouts/stack-utils/__tests__/composition.test.native.js.map +1 -0
- package/dist/esm/layouts/stack-utils/index.js +26 -0
- package/dist/esm/layouts/stack-utils/index.js.map +6 -0
- package/dist/esm/layouts/stack-utils/index.mjs +16 -0
- package/dist/esm/layouts/stack-utils/index.mjs.map +1 -0
- package/dist/esm/layouts/stack-utils/index.native.js +16 -0
- package/dist/esm/layouts/stack-utils/index.native.js.map +1 -0
- package/dist/esm/layouts/withLayoutContext.js +2 -1
- package/dist/esm/layouts/withLayoutContext.js.map +1 -1
- package/dist/esm/layouts/withLayoutContext.mjs +2 -1
- package/dist/esm/layouts/withLayoutContext.mjs.map +1 -1
- package/dist/esm/layouts/withLayoutContext.native.js +2 -1
- package/dist/esm/layouts/withLayoutContext.native.js.map +1 -1
- package/dist/esm/utils/children.js +33 -0
- package/dist/esm/utils/children.js.map +6 -0
- package/dist/esm/utils/children.mjs +19 -0
- package/dist/esm/utils/children.mjs.map +1 -0
- package/dist/esm/utils/children.native.js +46 -0
- package/dist/esm/utils/children.native.js.map +1 -0
- package/dist/esm/utils/style.js +8 -0
- package/dist/esm/utils/style.js.map +6 -0
- package/dist/esm/utils/style.mjs +5 -0
- package/dist/esm/utils/style.mjs.map +1 -0
- package/dist/esm/utils/style.native.js +5 -0
- package/dist/esm/utils/style.native.js.map +1 -0
- package/package.json +9 -9
- package/src/__mocks__/@react-navigation/native-stack.ts +32 -0
- package/src/__mocks__/@react-navigation/native.ts +21 -0
- package/src/__mocks__/expo-linking.ts +6 -0
- package/src/__mocks__/expo-modules-core.ts +11 -0
- package/src/__mocks__/react-native-screens.ts +17 -0
- package/src/__mocks__/react-native.ts +20 -0
- package/src/fork/NavigationContainer.tsx +2 -0
- package/src/index.ts +10 -0
- package/src/layouts/Stack.tsx +7 -1
- package/src/layouts/stack-utils/README.md +211 -0
- package/src/layouts/stack-utils/StackHeaderBackButton.tsx +34 -0
- package/src/layouts/stack-utils/StackHeaderComponent.tsx +123 -0
- package/src/layouts/stack-utils/StackHeaderLeft.tsx +29 -0
- package/src/layouts/stack-utils/StackHeaderRight.tsx +29 -0
- package/src/layouts/stack-utils/StackHeaderSearchBar.tsx +21 -0
- package/src/layouts/stack-utils/StackHeaderTitle.tsx +72 -0
- package/src/layouts/stack-utils/StackScreen.tsx +66 -0
- package/src/layouts/stack-utils/__tests__/composition.test.tsx +634 -0
- package/src/layouts/stack-utils/index.tsx +35 -0
- package/src/layouts/withLayoutContext.tsx +3 -2
- package/src/router/router.ts +1 -1
- package/src/utils/children.ts +72 -0
- package/src/utils/style.ts +17 -0
- package/types/__mocks__/@react-navigation/native-stack.d.ts +30 -0
- package/types/__mocks__/@react-navigation/native-stack.d.ts.map +1 -0
- package/types/__mocks__/@react-navigation/native.d.ts +17 -0
- package/types/__mocks__/@react-navigation/native.d.ts.map +1 -0
- package/types/__mocks__/expo-linking.d.ts +9 -0
- package/types/__mocks__/expo-linking.d.ts.map +1 -0
- package/types/__mocks__/expo-modules-core.d.ts +11 -0
- package/types/__mocks__/expo-modules-core.d.ts.map +1 -0
- package/types/__mocks__/react-native-screens.d.ts +14 -0
- package/types/__mocks__/react-native-screens.d.ts.map +1 -0
- package/types/__mocks__/react-native.d.ts +12 -0
- package/types/__mocks__/react-native.d.ts.map +1 -0
- package/types/fork/NavigationContainer.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/layouts/Stack.d.ts +10 -0
- package/types/layouts/Stack.d.ts.map +1 -1
- package/types/layouts/stack-utils/StackHeaderBackButton.d.ts +17 -0
- package/types/layouts/stack-utils/StackHeaderBackButton.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackHeaderComponent.d.ts +36 -0
- package/types/layouts/stack-utils/StackHeaderComponent.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackHeaderLeft.d.ts +13 -0
- package/types/layouts/stack-utils/StackHeaderLeft.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackHeaderRight.d.ts +13 -0
- package/types/layouts/stack-utils/StackHeaderRight.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackHeaderSearchBar.d.ts +10 -0
- package/types/layouts/stack-utils/StackHeaderSearchBar.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackHeaderTitle.d.ts +26 -0
- package/types/layouts/stack-utils/StackHeaderTitle.d.ts.map +1 -0
- package/types/layouts/stack-utils/StackScreen.d.ts +22 -0
- package/types/layouts/stack-utils/StackScreen.d.ts.map +1 -0
- package/types/layouts/stack-utils/index.d.ts +20 -0
- package/types/layouts/stack-utils/index.d.ts.map +1 -0
- package/types/layouts/withLayoutContext.d.ts.map +1 -1
- package/types/utils/children.d.ts +23 -0
- package/types/utils/children.d.ts.map +1 -0
- package/types/utils/style.d.ts +7 -0
- package/types/utils/style.d.ts.map +1 -0
|
@@ -0,0 +1,478 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import "react";
|
|
4
|
+
import { Platform } from "react-native";
|
|
5
|
+
import { StackHeaderTitle, appendStackHeaderTitlePropsToOptions } from "../StackHeaderTitle.native.js";
|
|
6
|
+
import { StackHeaderLeft, appendStackHeaderLeftPropsToOptions } from "../StackHeaderLeft.native.js";
|
|
7
|
+
import { StackHeaderRight, appendStackHeaderRightPropsToOptions } from "../StackHeaderRight.native.js";
|
|
8
|
+
import { StackHeaderBackButton, appendStackHeaderBackButtonPropsToOptions } from "../StackHeaderBackButton.native.js";
|
|
9
|
+
import { StackHeaderSearchBar, appendStackHeaderSearchBarPropsToOptions } from "../StackHeaderSearchBar.native.js";
|
|
10
|
+
import { StackHeaderComponent, appendStackHeaderPropsToOptions } from "../StackHeaderComponent.native.js";
|
|
11
|
+
import { appendScreenStackPropsToOptions } from "../StackScreen.native.js";
|
|
12
|
+
import { StackHeader } from "../index.native.js";
|
|
13
|
+
function _type_of(obj) {
|
|
14
|
+
"@swc/helpers - typeof";
|
|
15
|
+
|
|
16
|
+
return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
17
|
+
}
|
|
18
|
+
describe("Stack Header Composition", function () {
|
|
19
|
+
describe("StackHeaderTitle", function () {
|
|
20
|
+
it("sets title from children", function () {
|
|
21
|
+
var result = appendStackHeaderTitlePropsToOptions({}, {
|
|
22
|
+
children: "My Title"
|
|
23
|
+
});
|
|
24
|
+
expect(result.title).toBe("My Title");
|
|
25
|
+
}), it("sets headerLargeTitle when large is true", function () {
|
|
26
|
+
var result = appendStackHeaderTitlePropsToOptions({}, {
|
|
27
|
+
large: !0
|
|
28
|
+
});
|
|
29
|
+
expect(result.headerLargeTitle).toBe(!0);
|
|
30
|
+
}), it("sets headerTitleAlign from style.textAlign", function () {
|
|
31
|
+
var result = appendStackHeaderTitlePropsToOptions({}, {
|
|
32
|
+
style: {
|
|
33
|
+
textAlign: "center"
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
expect(result.headerTitleAlign).toBe("center");
|
|
37
|
+
}), it("converts numeric fontWeight to string", function () {
|
|
38
|
+
var result = appendStackHeaderTitlePropsToOptions({}, {
|
|
39
|
+
style: {
|
|
40
|
+
fontWeight: "700"
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
expect(result.headerTitleStyle).toMatchObject({
|
|
44
|
+
fontWeight: "700"
|
|
45
|
+
});
|
|
46
|
+
}), it("preserves existing options", function () {
|
|
47
|
+
var result = appendStackHeaderTitlePropsToOptions({
|
|
48
|
+
animation: "slide_from_right"
|
|
49
|
+
}, {
|
|
50
|
+
children: "Title"
|
|
51
|
+
});
|
|
52
|
+
expect(result.animation).toBe("slide_from_right"), expect(result.title).toBe("Title");
|
|
53
|
+
}), it("sets headerTransparent only on iOS when large is true", function () {
|
|
54
|
+
var originalOS = Platform.OS;
|
|
55
|
+
Platform.OS = "ios";
|
|
56
|
+
var iosResult = appendStackHeaderTitlePropsToOptions({}, {
|
|
57
|
+
large: !0
|
|
58
|
+
});
|
|
59
|
+
expect(iosResult.headerTransparent).toBe(!0), Platform.OS = "android";
|
|
60
|
+
var androidResult = appendStackHeaderTitlePropsToOptions({}, {
|
|
61
|
+
large: !0
|
|
62
|
+
});
|
|
63
|
+
expect(androidResult.headerTransparent).toBeUndefined(), Platform.OS = "web";
|
|
64
|
+
var webResult = appendStackHeaderTitlePropsToOptions({}, {
|
|
65
|
+
large: !0
|
|
66
|
+
});
|
|
67
|
+
expect(webResult.headerTransparent).toBeUndefined(), Platform.OS = originalOS;
|
|
68
|
+
});
|
|
69
|
+
}), describe("StackHeaderLeft", function () {
|
|
70
|
+
it("does not set headerLeft without asChild", function () {
|
|
71
|
+
var result = appendStackHeaderLeftPropsToOptions({}, {
|
|
72
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
73
|
+
children: "Back"
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
expect(result.headerLeft).toBeUndefined();
|
|
77
|
+
}), it("sets headerLeft with asChild", function () {
|
|
78
|
+
var CustomButton = function () {
|
|
79
|
+
return /* @__PURE__ */_jsx("button", {
|
|
80
|
+
children: "Back"
|
|
81
|
+
});
|
|
82
|
+
},
|
|
83
|
+
result = appendStackHeaderLeftPropsToOptions({}, {
|
|
84
|
+
asChild: !0,
|
|
85
|
+
children: /* @__PURE__ */_jsx(CustomButton, {})
|
|
86
|
+
});
|
|
87
|
+
expect(result.headerLeft).toBeDefined(), expect(_type_of(result.headerLeft)).toBe("function");
|
|
88
|
+
}), it("sets headerLeft with asChild even without children", function () {
|
|
89
|
+
var result = appendStackHeaderLeftPropsToOptions({}, {
|
|
90
|
+
asChild: !0
|
|
91
|
+
});
|
|
92
|
+
expect(result.headerLeft).toBeDefined(), expect(_type_of(result.headerLeft)).toBe("function");
|
|
93
|
+
}), it("preserves existing options when setting headerLeft", function () {
|
|
94
|
+
var result = appendStackHeaderLeftPropsToOptions({
|
|
95
|
+
title: "Existing Title",
|
|
96
|
+
animation: "slide_from_right"
|
|
97
|
+
}, {
|
|
98
|
+
asChild: !0,
|
|
99
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
100
|
+
children: "Back"
|
|
101
|
+
})
|
|
102
|
+
});
|
|
103
|
+
expect(result.title).toBe("Existing Title"), expect(result.animation).toBe("slide_from_right"), expect(result.headerLeft).toBeDefined();
|
|
104
|
+
}), it("headerLeft function returns children when called", function () {
|
|
105
|
+
var _result_headerLeft,
|
|
106
|
+
BackButton = function () {
|
|
107
|
+
return /* @__PURE__ */_jsx("button", {
|
|
108
|
+
children: "Back"
|
|
109
|
+
});
|
|
110
|
+
},
|
|
111
|
+
result = appendStackHeaderLeftPropsToOptions({}, {
|
|
112
|
+
asChild: !0,
|
|
113
|
+
children: /* @__PURE__ */_jsx(BackButton, {})
|
|
114
|
+
}),
|
|
115
|
+
headerLeftResult = (_result_headerLeft = result.headerLeft) === null || _result_headerLeft === void 0 ? void 0 : _result_headerLeft.call(result, {});
|
|
116
|
+
expect(headerLeftResult).toBeDefined();
|
|
117
|
+
});
|
|
118
|
+
}), describe("StackHeaderRight", function () {
|
|
119
|
+
it("does not set headerRight without asChild", function () {
|
|
120
|
+
var result = appendStackHeaderRightPropsToOptions({}, {
|
|
121
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
122
|
+
children: "Action"
|
|
123
|
+
})
|
|
124
|
+
});
|
|
125
|
+
expect(result.headerRight).toBeUndefined();
|
|
126
|
+
}), it("sets headerRight with asChild", function () {
|
|
127
|
+
var CustomButton = function () {
|
|
128
|
+
return /* @__PURE__ */_jsx("button", {
|
|
129
|
+
children: "Action"
|
|
130
|
+
});
|
|
131
|
+
},
|
|
132
|
+
result = appendStackHeaderRightPropsToOptions({}, {
|
|
133
|
+
asChild: !0,
|
|
134
|
+
children: /* @__PURE__ */_jsx(CustomButton, {})
|
|
135
|
+
});
|
|
136
|
+
expect(result.headerRight).toBeDefined(), expect(_type_of(result.headerRight)).toBe("function");
|
|
137
|
+
}), it("sets headerRight with asChild even without children", function () {
|
|
138
|
+
var result = appendStackHeaderRightPropsToOptions({}, {
|
|
139
|
+
asChild: !0
|
|
140
|
+
});
|
|
141
|
+
expect(result.headerRight).toBeDefined(), expect(_type_of(result.headerRight)).toBe("function");
|
|
142
|
+
}), it("preserves existing options when setting headerRight", function () {
|
|
143
|
+
var result = appendStackHeaderRightPropsToOptions({
|
|
144
|
+
title: "Existing Title",
|
|
145
|
+
headerLargeTitle: !0
|
|
146
|
+
}, {
|
|
147
|
+
asChild: !0,
|
|
148
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
149
|
+
children: "Action"
|
|
150
|
+
})
|
|
151
|
+
});
|
|
152
|
+
expect(result.title).toBe("Existing Title"), expect(result.headerLargeTitle).toBe(!0), expect(result.headerRight).toBeDefined();
|
|
153
|
+
}), it("headerRight function returns children when called", function () {
|
|
154
|
+
var _result_headerRight,
|
|
155
|
+
ActionButton = function () {
|
|
156
|
+
return /* @__PURE__ */_jsx("button", {
|
|
157
|
+
children: "Action"
|
|
158
|
+
});
|
|
159
|
+
},
|
|
160
|
+
result = appendStackHeaderRightPropsToOptions({}, {
|
|
161
|
+
asChild: !0,
|
|
162
|
+
children: /* @__PURE__ */_jsx(ActionButton, {})
|
|
163
|
+
}),
|
|
164
|
+
headerRightResult = (_result_headerRight = result.headerRight) === null || _result_headerRight === void 0 ? void 0 : _result_headerRight.call(result, {});
|
|
165
|
+
expect(headerRightResult).toBeDefined();
|
|
166
|
+
});
|
|
167
|
+
}), describe("StackHeaderBackButton", function () {
|
|
168
|
+
it("sets headerBackTitle from children", function () {
|
|
169
|
+
var result = appendStackHeaderBackButtonPropsToOptions({}, {
|
|
170
|
+
children: "Go Back"
|
|
171
|
+
});
|
|
172
|
+
expect(result.headerBackTitle).toBe("Go Back");
|
|
173
|
+
}), it("sets headerBackVisible to false when hidden", function () {
|
|
174
|
+
var result = appendStackHeaderBackButtonPropsToOptions({}, {
|
|
175
|
+
hidden: !0
|
|
176
|
+
});
|
|
177
|
+
expect(result.headerBackVisible).toBe(!1);
|
|
178
|
+
}), it("sets headerBackButtonMenuEnabled", function () {
|
|
179
|
+
var result = appendStackHeaderBackButtonPropsToOptions({}, {
|
|
180
|
+
withMenu: !0
|
|
181
|
+
});
|
|
182
|
+
expect(result.headerBackButtonMenuEnabled).toBe(!0);
|
|
183
|
+
}), it("sets headerBackButtonDisplayMode", function () {
|
|
184
|
+
var result = appendStackHeaderBackButtonPropsToOptions({}, {
|
|
185
|
+
displayMode: "minimal"
|
|
186
|
+
});
|
|
187
|
+
expect(result.headerBackButtonDisplayMode).toBe("minimal");
|
|
188
|
+
});
|
|
189
|
+
}), describe("StackHeaderSearchBar", function () {
|
|
190
|
+
it("sets headerSearchBarOptions with placeholder", function () {
|
|
191
|
+
var result = appendStackHeaderSearchBarPropsToOptions({}, {
|
|
192
|
+
placeholder: "Search..."
|
|
193
|
+
});
|
|
194
|
+
expect(result.headerSearchBarOptions).toMatchObject({
|
|
195
|
+
placeholder: "Search..."
|
|
196
|
+
});
|
|
197
|
+
}), it("sets headerSearchBarOptions with autoCapitalize", function () {
|
|
198
|
+
var result = appendStackHeaderSearchBarPropsToOptions({}, {
|
|
199
|
+
autoCapitalize: "none"
|
|
200
|
+
});
|
|
201
|
+
expect(result.headerSearchBarOptions).toMatchObject({
|
|
202
|
+
autoCapitalize: "none"
|
|
203
|
+
});
|
|
204
|
+
}), it("sets headerSearchBarOptions with multiple props", function () {
|
|
205
|
+
var result = appendStackHeaderSearchBarPropsToOptions({}, {
|
|
206
|
+
placeholder: "Search articles...",
|
|
207
|
+
autoCapitalize: "words",
|
|
208
|
+
hideWhenScrolling: !0,
|
|
209
|
+
obscureBackground: !1
|
|
210
|
+
});
|
|
211
|
+
expect(result.headerSearchBarOptions).toMatchObject({
|
|
212
|
+
placeholder: "Search articles...",
|
|
213
|
+
autoCapitalize: "words",
|
|
214
|
+
hideWhenScrolling: !0,
|
|
215
|
+
obscureBackground: !1
|
|
216
|
+
});
|
|
217
|
+
}), it("preserves existing options when setting search bar", function () {
|
|
218
|
+
var result = appendStackHeaderSearchBarPropsToOptions({
|
|
219
|
+
title: "Articles",
|
|
220
|
+
headerLargeTitle: !0
|
|
221
|
+
}, {
|
|
222
|
+
placeholder: "Search..."
|
|
223
|
+
});
|
|
224
|
+
expect(result.title).toBe("Articles"), expect(result.headerLargeTitle).toBe(!0), expect(result.headerSearchBarOptions).toMatchObject({
|
|
225
|
+
placeholder: "Search..."
|
|
226
|
+
});
|
|
227
|
+
}), it("sets headerSearchBarOptions with placement prop", function () {
|
|
228
|
+
var result = appendStackHeaderSearchBarPropsToOptions({}, {
|
|
229
|
+
placeholder: "Search...",
|
|
230
|
+
placement: "stacked"
|
|
231
|
+
});
|
|
232
|
+
expect(result.headerSearchBarOptions).toMatchObject({
|
|
233
|
+
placeholder: "Search...",
|
|
234
|
+
placement: "stacked"
|
|
235
|
+
});
|
|
236
|
+
}), it("sets empty headerSearchBarOptions when no props", function () {
|
|
237
|
+
var result = appendStackHeaderSearchBarPropsToOptions({}, {});
|
|
238
|
+
expect(result.headerSearchBarOptions).toBeDefined(), expect(result.headerSearchBarOptions).toEqual({});
|
|
239
|
+
});
|
|
240
|
+
}), describe("StackHeaderComponent", function () {
|
|
241
|
+
it("sets headerShown false when hidden", function () {
|
|
242
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
243
|
+
hidden: !0
|
|
244
|
+
});
|
|
245
|
+
expect(result.headerShown).toBe(!1);
|
|
246
|
+
}), it("sets headerBlurEffect", function () {
|
|
247
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
248
|
+
blurEffect: "regular"
|
|
249
|
+
});
|
|
250
|
+
expect(result.headerBlurEffect).toBe("regular");
|
|
251
|
+
}), it("sets headerShadowVisible false when shadowColor is transparent", function () {
|
|
252
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
253
|
+
style: {
|
|
254
|
+
shadowColor: "transparent"
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
expect(result.headerShadowVisible).toBe(!1);
|
|
258
|
+
}), it("sets headerTransparent when backgroundColor is transparent", function () {
|
|
259
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
260
|
+
style: {
|
|
261
|
+
backgroundColor: "transparent"
|
|
262
|
+
}
|
|
263
|
+
});
|
|
264
|
+
expect(result.headerTransparent).toBe(!0), expect(result.headerStyle).toMatchObject({
|
|
265
|
+
backgroundColor: "transparent"
|
|
266
|
+
});
|
|
267
|
+
}), it("sets headerTransparent with SearchBar (user controls via options if needed)", function () {
|
|
268
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
269
|
+
style: {
|
|
270
|
+
backgroundColor: "transparent"
|
|
271
|
+
},
|
|
272
|
+
children: /* @__PURE__ */_jsx(StackHeaderSearchBar, {
|
|
273
|
+
placeholder: "Search..."
|
|
274
|
+
})
|
|
275
|
+
});
|
|
276
|
+
expect(result.headerTransparent).toBe(!0), expect(result.headerSearchBarOptions).toMatchObject({
|
|
277
|
+
placeholder: "Search..."
|
|
278
|
+
});
|
|
279
|
+
}), it("processes child Title component", function () {
|
|
280
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
281
|
+
children: /* @__PURE__ */_jsx(StackHeaderTitle, {
|
|
282
|
+
large: !0,
|
|
283
|
+
children: "Test Title"
|
|
284
|
+
})
|
|
285
|
+
});
|
|
286
|
+
expect(result.title).toBe("Test Title"), expect(result.headerLargeTitle).toBe(!0);
|
|
287
|
+
}), it("processes child BackButton component", function () {
|
|
288
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
289
|
+
children: /* @__PURE__ */_jsx(StackHeaderBackButton, {
|
|
290
|
+
hidden: !0,
|
|
291
|
+
children: "Back"
|
|
292
|
+
})
|
|
293
|
+
});
|
|
294
|
+
expect(result.headerBackTitle).toBe("Back"), expect(result.headerBackVisible).toBe(!1);
|
|
295
|
+
}), it("processes multiple children", function () {
|
|
296
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
297
|
+
children: [/* @__PURE__ */_jsx(StackHeaderTitle, {
|
|
298
|
+
large: !0,
|
|
299
|
+
children: "My Screen"
|
|
300
|
+
}, "title"), /* @__PURE__ */_jsx(StackHeaderBackButton, {
|
|
301
|
+
hidden: !0
|
|
302
|
+
}, "back")]
|
|
303
|
+
});
|
|
304
|
+
expect(result.title).toBe("My Screen"), expect(result.headerLargeTitle).toBe(!0), expect(result.headerBackVisible).toBe(!1);
|
|
305
|
+
}), it("processes child Left component", function () {
|
|
306
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
307
|
+
children: /* @__PURE__ */_jsx(StackHeaderLeft, {
|
|
308
|
+
asChild: !0,
|
|
309
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
310
|
+
children: "Back"
|
|
311
|
+
})
|
|
312
|
+
})
|
|
313
|
+
});
|
|
314
|
+
expect(result.headerLeft).toBeDefined(), expect(_type_of(result.headerLeft)).toBe("function");
|
|
315
|
+
}), it("processes child Right component", function () {
|
|
316
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
317
|
+
children: /* @__PURE__ */_jsx(StackHeaderRight, {
|
|
318
|
+
asChild: !0,
|
|
319
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
320
|
+
children: "Action"
|
|
321
|
+
})
|
|
322
|
+
})
|
|
323
|
+
});
|
|
324
|
+
expect(result.headerRight).toBeDefined(), expect(_type_of(result.headerRight)).toBe("function");
|
|
325
|
+
}), it("processes child SearchBar component", function () {
|
|
326
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
327
|
+
children: /* @__PURE__ */_jsx(StackHeaderSearchBar, {
|
|
328
|
+
placeholder: "Search..."
|
|
329
|
+
})
|
|
330
|
+
});
|
|
331
|
+
expect(result.headerSearchBarOptions).toMatchObject({
|
|
332
|
+
placeholder: "Search..."
|
|
333
|
+
});
|
|
334
|
+
}), it("processes all child components together", function () {
|
|
335
|
+
var result = appendStackHeaderPropsToOptions({}, {
|
|
336
|
+
children: [/* @__PURE__ */_jsx(StackHeaderTitle, {
|
|
337
|
+
large: !0,
|
|
338
|
+
children: "Articles"
|
|
339
|
+
}, "title"), /* @__PURE__ */_jsx(StackHeaderLeft, {
|
|
340
|
+
asChild: !0,
|
|
341
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
342
|
+
children: "Back"
|
|
343
|
+
})
|
|
344
|
+
}, "left"), /* @__PURE__ */_jsx(StackHeaderRight, {
|
|
345
|
+
asChild: !0,
|
|
346
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
347
|
+
children: "More"
|
|
348
|
+
})
|
|
349
|
+
}, "right"), /* @__PURE__ */_jsx(StackHeaderSearchBar, {
|
|
350
|
+
placeholder: "Search articles..."
|
|
351
|
+
}, "search"), /* @__PURE__ */_jsx(StackHeaderBackButton, {
|
|
352
|
+
displayMode: "minimal"
|
|
353
|
+
}, "back")]
|
|
354
|
+
});
|
|
355
|
+
expect(result.title).toBe("Articles"), expect(result.headerLargeTitle).toBe(!0), expect(result.headerLeft).toBeDefined(), expect(result.headerRight).toBeDefined(), expect(result.headerSearchBarOptions).toMatchObject({
|
|
356
|
+
placeholder: "Search articles..."
|
|
357
|
+
}), expect(result.headerBackButtonDisplayMode).toBe("minimal");
|
|
358
|
+
});
|
|
359
|
+
}), describe("StackScreen composition", function () {
|
|
360
|
+
it("StackHeader is same reference as StackHeaderComponent", function () {
|
|
361
|
+
expect(StackHeader).toBe(StackHeaderComponent);
|
|
362
|
+
}), it("merges options with Header composition", function () {
|
|
363
|
+
var result = appendScreenStackPropsToOptions({
|
|
364
|
+
animation: "slide_from_right"
|
|
365
|
+
}, {
|
|
366
|
+
options: {
|
|
367
|
+
gestureEnabled: !0
|
|
368
|
+
},
|
|
369
|
+
children: /* @__PURE__ */_jsx(StackHeaderComponent, {
|
|
370
|
+
blurEffect: "regular",
|
|
371
|
+
children: /* @__PURE__ */_jsx(StackHeaderTitle, {
|
|
372
|
+
large: !0,
|
|
373
|
+
children: "Composed Title"
|
|
374
|
+
})
|
|
375
|
+
})
|
|
376
|
+
});
|
|
377
|
+
expect(result.animation).toBe("slide_from_right"), expect(result.gestureEnabled).toBe(!0), expect(result.headerBlurEffect).toBe("regular"), expect(result.title).toBe("Composed Title"), expect(result.headerLargeTitle).toBe(!0);
|
|
378
|
+
}), it("works with StackHeader compound component (as used via Stack.Header)", function () {
|
|
379
|
+
var result = appendScreenStackPropsToOptions({}, {
|
|
380
|
+
children: /* @__PURE__ */_jsx(StackHeader, {
|
|
381
|
+
children: /* @__PURE__ */_jsx(StackHeader.Title, {
|
|
382
|
+
large: !0,
|
|
383
|
+
children: "Large Title Test"
|
|
384
|
+
})
|
|
385
|
+
})
|
|
386
|
+
});
|
|
387
|
+
expect(result.title).toBe("Large Title Test"), expect(result.headerLargeTitle).toBe(!0);
|
|
388
|
+
}), it("works with StackHeader compound component with Left child", function () {
|
|
389
|
+
var result = appendScreenStackPropsToOptions({}, {
|
|
390
|
+
children: /* @__PURE__ */_jsxs(StackHeader, {
|
|
391
|
+
children: [/* @__PURE__ */_jsx(StackHeader.Title, {
|
|
392
|
+
large: !0,
|
|
393
|
+
children: "Articles"
|
|
394
|
+
}), /* @__PURE__ */_jsx(StackHeader.Left, {
|
|
395
|
+
asChild: !0,
|
|
396
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
397
|
+
children: "Back"
|
|
398
|
+
})
|
|
399
|
+
})]
|
|
400
|
+
})
|
|
401
|
+
});
|
|
402
|
+
expect(result.title).toBe("Articles"), expect(result.headerLargeTitle).toBe(!0), expect(result.headerLeft).toBeDefined();
|
|
403
|
+
}), it("composition overrides options prop", function () {
|
|
404
|
+
var result = appendScreenStackPropsToOptions({}, {
|
|
405
|
+
options: {
|
|
406
|
+
title: "Options Title"
|
|
407
|
+
},
|
|
408
|
+
children: /* @__PURE__ */_jsx(StackHeaderComponent, {
|
|
409
|
+
children: /* @__PURE__ */_jsx(StackHeaderTitle, {
|
|
410
|
+
children: "Composed Title"
|
|
411
|
+
})
|
|
412
|
+
})
|
|
413
|
+
});
|
|
414
|
+
expect(result.title).toBe("Composed Title");
|
|
415
|
+
}), it("works with StackHeader compound component with Right child", function () {
|
|
416
|
+
var result = appendScreenStackPropsToOptions({}, {
|
|
417
|
+
children: /* @__PURE__ */_jsxs(StackHeader, {
|
|
418
|
+
children: [/* @__PURE__ */_jsx(StackHeader.Title, {
|
|
419
|
+
children: "Settings"
|
|
420
|
+
}), /* @__PURE__ */_jsx(StackHeader.Right, {
|
|
421
|
+
asChild: !0,
|
|
422
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
423
|
+
children: "Save"
|
|
424
|
+
})
|
|
425
|
+
})]
|
|
426
|
+
})
|
|
427
|
+
});
|
|
428
|
+
expect(result.title).toBe("Settings"), expect(result.headerRight).toBeDefined();
|
|
429
|
+
}), it("works with StackHeader compound component with SearchBar child", function () {
|
|
430
|
+
var result = appendScreenStackPropsToOptions({}, {
|
|
431
|
+
children: /* @__PURE__ */_jsxs(StackHeader, {
|
|
432
|
+
children: [/* @__PURE__ */_jsx(StackHeader.Title, {
|
|
433
|
+
large: !0,
|
|
434
|
+
children: "Articles"
|
|
435
|
+
}), /* @__PURE__ */_jsx(StackHeader.SearchBar, {
|
|
436
|
+
placeholder: "Search articles..."
|
|
437
|
+
})]
|
|
438
|
+
})
|
|
439
|
+
});
|
|
440
|
+
expect(result.title).toBe("Articles"), expect(result.headerLargeTitle).toBe(!0), expect(result.headerSearchBarOptions).toMatchObject({
|
|
441
|
+
placeholder: "Search articles..."
|
|
442
|
+
});
|
|
443
|
+
}), it("works with full compositional setup", function () {
|
|
444
|
+
var result = appendScreenStackPropsToOptions({}, {
|
|
445
|
+
options: {
|
|
446
|
+
animation: "slide_from_right"
|
|
447
|
+
},
|
|
448
|
+
children: /* @__PURE__ */_jsxs(StackHeader, {
|
|
449
|
+
blurEffect: "regular",
|
|
450
|
+
children: [/* @__PURE__ */_jsx(StackHeader.Title, {
|
|
451
|
+
large: !0,
|
|
452
|
+
children: "My App"
|
|
453
|
+
}), /* @__PURE__ */_jsx(StackHeader.Left, {
|
|
454
|
+
asChild: !0,
|
|
455
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
456
|
+
children: "Menu"
|
|
457
|
+
})
|
|
458
|
+
}), /* @__PURE__ */_jsx(StackHeader.Right, {
|
|
459
|
+
asChild: !0,
|
|
460
|
+
children: /* @__PURE__ */_jsx("button", {
|
|
461
|
+
children: "Settings"
|
|
462
|
+
})
|
|
463
|
+
}), /* @__PURE__ */_jsx(StackHeader.BackButton, {
|
|
464
|
+
displayMode: "minimal"
|
|
465
|
+
}), /* @__PURE__ */_jsx(StackHeader.SearchBar, {
|
|
466
|
+
placeholder: "Search...",
|
|
467
|
+
placement: "stacked"
|
|
468
|
+
})]
|
|
469
|
+
})
|
|
470
|
+
});
|
|
471
|
+
expect(result.animation).toBe("slide_from_right"), expect(result.headerBlurEffect).toBe("regular"), expect(result.title).toBe("My App"), expect(result.headerLargeTitle).toBe(!0), expect(result.headerTransparent).toBeUndefined(), expect(result.headerLeft).toBeDefined(), expect(result.headerRight).toBeDefined(), expect(result.headerBackButtonDisplayMode).toBe("minimal"), expect(result.headerSearchBarOptions).toMatchObject({
|
|
472
|
+
placeholder: "Search...",
|
|
473
|
+
placement: "stacked"
|
|
474
|
+
});
|
|
475
|
+
});
|
|
476
|
+
});
|
|
477
|
+
});
|
|
478
|
+
//# sourceMappingURL=composition.test.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","describe","expect","it","Platform","StackHeaderTitle","appendStackHeaderTitlePropsToOptions","StackHeaderLeft","appendStackHeaderLeftPropsToOptions","StackHeaderRight","appendStackHeaderRightPropsToOptions","StackHeaderBackButton","appendStackHeaderBackButtonPropsToOptions","StackHeaderSearchBar","appendStackHeaderSearchBarPropsToOptions","StackHeaderComponent","appendStackHeaderPropsToOptions","appendScreenStackPropsToOptions","StackHeader","_type_of","obj","Symbol","constructor","result","children","title","toBe","large","headerLargeTitle","style","textAlign","headerTitleAlign","fontWeight","headerTitleStyle","toMatchObject","animation","originalOS","OS","iosResult","headerTransparent","androidResult","toBeUndefined","webResult","headerLeft","CustomButton","asChild","toBeDefined","_result_headerLeft","BackButton","headerLeftResult","call","headerRight","_result_headerRight","ActionButton","headerRightResult","headerBackTitle","hidden","headerBackVisible","withMenu","headerBackButtonMenuEnabled","displayMode","headerBackButtonDisplayMode","placeholder","headerSearchBarOptions","autoCapitalize","hideWhenScrolling","obscureBackground","placement","toEqual","headerShown","blurEffect","headerBlurEffect","shadowColor","headerShadowVisible","backgroundColor","headerStyle","options","gestureEnabled","Title","Left"],"sources":["../../../../../src/layouts/stack-utils/__tests__/composition.test.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAU,EAAAC,IAAA,IAAQC,KAAA,QAAU;AAErC,SAASC,QAAA,EAAAC,MAAgB,EAAAC,EAAA;AAEzB,cAAS;AACT,SAASC,QAAA,sBAAiB;AAC1B,SAASC,gBAAA,EAAkBC,oCAAA,QAA4C;AACvE,SAAAC,eAAA,EAAAC,mCAAA;AAAA,SACEC,gBAAA,EAAAC,oCAAA;AAAA,SACAC,qBAAA,EAAAC,yCAAA;AAAA,SACKC,oBAAA,EAAAC,wCAAA;AACP,SAAAC,oBAAA,EAAAC,+BAAA;AAAA,SACEC,+BAAA;AAAA,SACAC,WAAA;AAAA,SACKC,SAAAC,GAAA;EACP,uBAAS;;EACT,OAASA,GAAA,WAAAC,MAAA,UAAAD,GAAA,CAAAE,WAAuC,KAAAD,MAAA,qBAAAD,GAAA;AAChD;AAwEoBnB,QAAA;EAtEpBA,QAAS,iCAA4B;IACnCE,EAAA,2BAA6B,cAAM;MACjC,IAAGoB,MAAA,GAAAjB,oCAAkC;QACnCkB,QAAM;MACN;MACDtB,MAEE,CAAAqB,MAAA,CAAAE,KAAA,EAAAC,IAAA;IACD,IAAAvB,EAAA,2CAAe,cAA2C;MAC1D,IAAAoB,MAAO,GAAAjB,oCAAkC;QAG3CqB,KAAG;MACD;MAAezB,MACZ,CAAAqB,MAAA,CAAAK,gBAAA,EAAAF,IAAA;IAAA,IACDvB,EAAA;MAAA,IACEoB,MAAA,GAASjB,oCAAoB;QAC/BuB,KAAA;UACFC,SAAA;QACA;MACD,EAED;MACE5B,MAAM,CAAAqB,MAAA,CAAAQ,gBAAS,EAAAL,IAAA;IAAA,IACbvB,EAAC;MAAA,IACDoB,MAAA,GAAAjB,oCAAA;QAAAuB,KACE;UACFG,UAAA;QACF;MACA;MACD9B,MAEE,CAAAqB,MAAA,CAAAU,gBAAA,EAAAC,aAAoC;QACrCF,UAAM;MAAS,EACb;IAAgC,IAChC7B,EAAE,6BAAkB;MACtB,IAAAoB,MAAA,GAAAjB,oCAAA;QACA6B,SAAO;MAER,GAED;QAEEX,QAAM;MAGJ;MACFtB,MAAM,CAAAqB,MAAA,CAAAY,SAAY,EAAAT,IAAA,sBAAAxB,MAAsC,CAAAqB,MAAK,CAAAE,KAAO,CAAK,CAACC,IAAA;IAC1E,IAAAvB,EAAA,wDAGwB;MACxB,IAAAiC,UAAM,GAAAhC,QAAgB,CAAAiC,EAAA;MACtBjC,QAAO,CAAAiC,EAAA;MAIP,IAAAC,SAAM,GAAAhC,oCAAY,GAAqC,EAAC;QACxDqB,KAAO;MAIR;MAGHzB,MAAA,CAAAoC,SAAS,CAAAC,iBAAyB,EAAAb,IAAA,MAAAtB,QAAA,CAAAiC,EAAA;MAChC,IAAGG,aAAA,GAAAlC,oCAAiD;QAClDqB,KAAM;MAAS,EACb;MAACzB,MACD,CAAAsC,aAAA,CAAAD,iBAAA,EAAAE,aAAA,IAAArC,QAAA,CAAAiC,EAAA;MAAA,IACEK,SAAA,GAAUpC,oCAAQ;QACpBqB,KAAA;MACF;MACAzB,MAAA,CAAOwC,SAAO,CAAAH,iBAAY,EAAAE,aAAc,IAAArC,QAAA,CAAAiC,EAAA,GAAAD,UAAA;IAC1C,CAAC;EAIC,IAAAnC,QAAM,kBAAS;IAAAE,EAAA,0CACZ;MAAA,IACDoB,MAAA,GAAAf,mCAAA;QAAAgB,QACE,iBAAS1B,IAAA;UACT0B,QAAA,EAAU;QACZ;MACF;MACAtB,MAAA,CAAOqB,MAAA,CAAOoB,UAAU,EAAEF,aAAY,EACtC;IACF,CAAC,GAEDtC,EAAA,CAAG;MACD,IAAAyC,YAAe,YAAAA,CAAA;UAEf,OAAO,eAAiB9C,IAAE,SAAY;YAIxC0B,QAAG;UACD;QAAe;QACbD,MAAE,GAAOf,mCAA6B;UACtCqC,OAAA;UAAArB,QACE,iBAAS1B,IAAA,CAAA8C,YAAA;QAAA;MACa1C,MACxB,CAAAqB,MAAA,CAAAoB,UAAA,EAAAG,WAAA,IAAA5C,MAAA,CAAAiB,QAAA,CAAAI,MAAA,CAAAoB,UAAA,GAAAjB,IAAA;IAAA,EACF,EAAAvB,EAAA;MACA,IAAAoB,MAAO,GAAAf,mCACP,KAAO;QAITqC,OAAG;MASD;MAPe3C,MACZ,CAAAqB,MAAA,CAAAoB,UAAA,EAAAG,WAAA,IAAA5C,MAAA,CAAAiB,QAAA,CAAAI,MAAA,CAAAoB,UAAA,GAAAjB,IAAA;IAAA,IACDvB,EAAA;MAAA,IACEoB,MAAA,GAASf,mCAAA;QAAAiB,KACT,kBAAU;QACZU,SAAA;MACF,GACgC;QAChCU,OAAO;QACRrB,QAAA,iBAAA1B,IAAA;UAGH0B,QAAS;QACJ;MACD;MAAetB,MACZ,CAAAqB,MAAA,CAAAE,KAAA,EAAAC,IAAA,oBAAAxB,MAAA,CAAAqB,MAAA,CAAAY,SAAA,EAAAT,IAAA,sBAAAxB,MAAA,CAAAqB,MAAA,CAAAoB,UAAA,EAAAG,WAAA;IAAA,IACD3C,EAAA;MAAA,IACE4C,kBAAU;QAAAC,UAAC,YAAAA,CAAA,EAAO;UACpB,sBAAAlD,IAAA;YACF0B,QAAA;UACA;QACD;QAEDD,MAAG,GAAAf,mCAAuC;UAExCqC,OAAM;UACJrB,QAAC,iBAAA1B,IAAA,CAAAkD,UAAA;QAAA,EACD;QAAAC,gBAAA,IAAAF,kBAAA,GAAAxB,MAAA,CAAAoB,UAAA,cAAAI,kBAAA,uBAAAA,kBAAA,CAAAG,IAAA,CAAA3B,MAAA;MAAArB,MACE,CAAA+C,gBAAS,EAAAH,WAAA;IAAA;EACe,IAAA7C,QAC1B;IAAAE,EACF;MACA,IAAAoB,MAAO,GAAAb,oCACA;QAGTc,QAAG,iBAAA1B,IAAA;UACD0B,QAAM;QAEN;MAED,EAED;MACEtB,MAAM,CAAAqB,MAAA,CAAA4B,WAAS,EAAAV,aAAA;IAAA,IACbtC,EAAE,gCAAyB,cAAkB;MAAK,IAClDyC,YAAA,YAAAA,CAAA;UAAA,OACE,eAAS9C,IAAA;YACT0B,QAAA,EAAU;UACZ;QACF;QAAAD,MAAA,GAAAb,oCAAA;UACAmC,OAAO;UAKTrB,QAAG,iBAAA1B,IAAA,CAAA8C,YAAA;QASD;MAPe1C,MACZ,CAAAqB,MAAA,CAAA4B,WAAA,EAAAL,WAAA,IAAA5C,MAAA,CAAAiB,QAAA,CAAAI,MAAA,CAAA4B,WAAA,GAAAzB,IAAA;IAAA,IACDvB,EAAA;MAAA,IACEoB,MAAA,GAASb,oCAAA;QAAAmC,OACT;MAAwB,EAC1B;MACF3C,MACiC,CAAAqB,MAAA,CAAA4B,WAAuB,EAAAL,WAAA,IAAA5C,MAAA,CAAAiB,QAAA,CAAAI,MAAA,CAAA4B,WAAA,GAAAzB,IAAA;IACxD,IAAAvB,EAAA,sDAAsC;MACvC,IAAAoB,MAAA,GAAAb,oCAAA;QAGHe,KAAA,EAAS;QACJG,gBAAA;MACD;QACEiB,OAAC;QACDrB,QAAA,iBAAA1B,IAAA;UACE0B,QAAA,EAAU;QACZ;MACF;MACAtB,MAAA,CAAOqB,MAAA,CAAOE,KAAA,EAAAC,IAAA,iBAAsB,GAASxB,MAAA,CAAAqB,MAAA,CAAAK,gBAAA,EAAAF,IAAA,MAAAxB,MAAA,CAAAqB,MAAA,CAAA4B,WAAA,EAAAL,WAAA;IAC/C,CAAC,GAED3C,EAAA,CAAG,mDAA+C,EAAM;MACtD,IAAAiD,mBAAe;QAAAC,YAAA,YAAAA,CAAA;UACb,OAAC,eAAAvD,IAAA;YACD0B,QAAA;UAAA,EACE;QAAQ;QACVD,MAAA,GAAAb,oCAAA;UACFmC,OAAA;UACArB,QAAO,iBAAO1B,IAAiB,CAAEuD,YAAU;QAC5C,EAED;QAAAC,iBAAG,IAAAF,mBAAoC,GAAM7B,MAAA,CAAA4B,WAAA,cAAAC,mBAAA,uBAAAA,mBAAA,CAAAF,IAAA,CAAA3B,MAAA;MAC3CrB,MAAM,CAAAoD,iBAAS,EAAAR,WAAA;IAAA;EACZ,IAAA7C,QACD;IAAAE,EAAA,qCACY;MAAA,IACZoB,MAAA,GAAAX,yCAAA;QACFY,QAAA;MACA;MACDtB,MAEE,CAAAqB,MAAA,CAAAgC,eAAA,EAAA7B,IAAA,UAAoC;IACrC,IAAAvB,EAAA,8CAAe;MAAA,IACZoB,MAAA,GAAAX,yCAAA;QACD4C,MAAA;MAAA;MACetD,MACf,CAAAqB,MAAA,CAAAkC,iBAAA,EAAA/B,IAAA;IAAA,EACF,EAAAvB,EAAA;MACA,IAAAoB,MAAO,GAAAX,yCAAyC,GAAS;QAC1D8C,QAAA;MAGH;MACExD,MAAG,CAAAqB,MAAA,CAAAoC,2BAAA,EAAAjC,IAAA,EAAgD;IACjD,IAAAvB,EAAA,mCAAe;MAAA,IACZoB,MAAA,GAAAX,yCAAA;QACDgD,WAAA;MAAA;MACe1D,MACf,CAAAqB,MAAA,CAAAsC,2BAAA,EAAAnC,IAAA;IAAA,EACF;EACA,IAAAzB,QAAO,uBAAO,cAAwB;IAAcE,EAAA,+CACrC;MACf,IAACoB,MAAA,GAAAT,wCAAA;QAGHgD,WAAG;MACD;MAAe5D,MACZ,CAAAqB,MAAA,CAAAwC,sBAAA,EAAA7B,aAAA;QACD4B,WAAA;MAAA;IACkB,IAClB3D,EAAA;MACF,IAAAoB,MAAA,GAAAT,wCAAA;QACAkD,cAAc;MAAsC,EAClD;MACF9D,MAAC,CAAAqB,MAAA,CAAAwC,sBAAA,EAAA7B,aAAA;QAGH8B,cAAG;MACD;IAAe,IACb7D,EAAC;MAAA,IACDoB,MAAA,GAAAT,wCAAA;QAAAgD,WACE,sBAAa;QAAAE,cACb,SAAgB;QAAAC,iBAChB,IAAmB;QAAAC,iBACnB;MAAmB,EACrB;MACFhE,MAAA,CAAAqB,MAAA,CAAAwC,sBAAA,EAAA7B,aAAA;QACA4B,WAAO,EAAO;QACZE,cAAa;QACbC,iBAAgB;QAChBC,iBAAA,EAAmB;MAAA,EACnB;IAAmB,EACrB,EAAC/D,EAAA;MACF,IAEDoB,MAAG,GAAAT,wCAAA;QACDW,KAAM,YAAS;QACbG,gBAAS;MAAmC,GAC5C;QAAAkC,WACE;MAAa,EACf;MACF5D,MAAA,CAAAqB,MAAA,CAAAE,KAAA,EAAAC,IAAA,cAAAxB,MAAA,CAAAqB,MAAA,CAAAK,gBAAA,EAAAF,IAAA,MAAAxB,MAAA,CAAAqB,MAAA,CAAAwC,sBAAA,EAAA7B,aAAA;QACA4B,WAAO,EAAO;MAEsC,EAClD;IAAa,EACf,EAAC3D,EAAA;MACF,IAEDoB,MAAG,GAAAT,wCAAA,GAAmD;QACpDgD,WAAM,EAAS;QACbK,SAAC;MAAA,EACD;MAAAjE,MACE,CAAAqB,MAAA,CAAAwC,sBAAa,EAAA7B,aAAA;QAAA4B,WACb,EAAW;QACbK,SAAA;MACF;IACA,IAAAhE,EAAA,kDAAoD;MAAA,IAClDoB,MAAA,GAAAT,wCAAa;MAAAZ,MACb,CAAAqB,MAAW,CAAAwC,sBAAA,EAAAjB,WAAA,IAAA5C,MAAA,CAAAqB,MAAA,CAAAwC,sBAAA,EAAAK,OAAA;IAAA,EACb;EAAC,EACH,EAACnE,QAEE;IACDE,EAAA,qCAAe;MACf,IAAAoB,MAAO,GAAAP,+BAA+B;QAEvCwC,MAAA;MAGH;MACEtD,MAAG,CAAAqB,MAAA,CAAA8C,WAAA,EAAA3C,IAAA;IACD,IAAAvB,EAAA,wBAAe;MACf,IAAAoB,MAAO,GAAAP,+BAA8B;QAGvCsD,UAAG;MACD;MACApE,MAAA,CAAOqB,MAAA,CAAOgD,gBAAgB,EAAE7C,IAAA,CAAK,SAAS;IAChD,CAAC,GAEDvB,EAAA,CAAG,kEAAkE,YAAM;MACzE,IAAAoB,MAAM,GAAAP,+BAAS;QACba,KAAC;UACD2C,WAAA;QAAA;MACsC,EACtC;MACFtE,MAAA,CAAAqB,MAAA,CAAAkD,mBAAA,EAAA/C,IAAA;IACA,IAAAvB,EAAA,6DAA6C;MAC9C,IAEDoB,MAAG,GAAAP,+BAAA;QACDa,KAAM;UACH6C,eAAA;QACD;MAAA;MAC0CxE,MAC1C,CAAAqB,MAAA,CAAAgB,iBAAA,EAAAb,IAAA,MAAAxB,MAAA,CAAAqB,MAAA,CAAAoD,WAAA,EAAAzC,aAAA;QACFwC,eAAA;MAEA;IAEF,CAAC,GAEDvE,EAAA,CAAG,+EAA+E,YAAM;MACtF,IAAAoB,MAAM,GAAAP,+BAAS;QACba,KAAC;UACD6C,eAAA;QAAA;QAC0ClD,QACxC,iBAAU1B,IAAA,CAAAe,oBAAC;UACbiD,WAAA;QACF;MAIA;MAED5D,MAEE,CAAAqB,MAAA,CAAAgB,iBAAA,EAAAb,IAAA,GAAmC,GAAAxB,MAAM,CAAAqB,MAAA,CAAAwC,sBAAA,EAAA7B,aAAA;QAC1C4B,WAAM,EAAS;MAAA,EACb;IAAC,IACD3D,EAAA;MAAA,IACEoB,MAAA,GAAAP,+BAAW;QACbQ,QAAA,iBAAA1B,IAAA,CAAAO,gBAAA;UACFsB,KAAA;UACAH,QAAO,EAAO;QAIhB;MACE;MAAetB,MACZ,CAAAqB,MAAA,CAAAE,KAAA,EAAAC,IAAA,gBAAAxB,MAAA,CAAAqB,MAAA,CAAAK,gBAAA,EAAAF,IAAA;IAAA,IACDvB,EAAA;MAAA,IACEoB,MAAA,GAAAP,+BAAW;QACbQ,QAAA,iBAAA1B,IAAA,CAAAa,qBAAA;UACF6C,MAAA;UACAhC,QAAO,EAAO;QAIhB;MACE;MAAetB,MACZ,CAAAqB,MAAA,CAAAgC,eAAA,EAAA7B,IAAA,UAAAxB,MAAA,CAAAqB,MAAA,CAAAkC,iBAAA,EAAA/B,IAAA;IAAA,IACDvB,EAAA;MAAA,IACEoB,MAAA,GAAAP,+BAAU;QAAAQ,QACR,GAEA,eACA1B,IAAA,CAAAO,gBAAC;UACHsB,KAAA;UACFH,QAAA;QACF,aACA,eAAmB1B,IAAE,CAAAa,qBACrB,EAAO;UAIN6C,MAAA;QACD,GAAM;MACH,EACD;MAAAtD,MACE,CAAAqB,MAAA,CACEE,KAAA,EAAAC,IAAA,YAAC,GAAAxB,MAAA,CAAAqB,MAAgB,CAAAK,gBACf,EAAAF,IAAA,MAAAxB,MAAA,CAAAqB,MAAA,CAACkC,iBAAO,EAAA/B,IAAA;IACV,IAEJvB,EAAA;MACF,IAAAoB,MAAA,GAAAP,+BAAA;QACAQ,QAAO,iBAAmB1B,IAAA,CAAAS,eACnB;UAGTsC,OAAG;UACDrB,QAAM,iBAAS1B,IAAA;YACZ0B,QAAA;UACD;QAAA;MAII,EAEJ;MACFtB,MAAA,CAAAqB,MAAA,CAAAoB,UAAA,EAAAG,WAAA,IAAA5C,MAAA,CAAAiB,QAAA,CAAAI,MAAA,CAAAoB,UAAA,GAAAjB,IAAA;IACA,IAAAvB,EAAA,kCAA2B,EAAY,YAChC;MACR,IAEDoB,MAAG,GAAAP,+BAAuC;QACxCQ,QAAM,iBAAS1B,IAAA,CAAAW,gBAAA;UACZoC,OAAA;UACDrB,QAAA,iBAAA1B,IAAA;YACE0B,QAAU;UACZ;QACF;MACA;MAAoDtB,MAClD,CAAAqB,MAAA,CAAA4B,WAAa,EAAAL,WAAA,IAAA5C,MAAA,CAAAiB,QAAA,CAAAI,MAAA,CAAA4B,WAAA,GAAAzB,IAAA;IAAA,EACf,EAACvB,EAAA;MACF,IAEDoB,MAAG,GAAAP,+BAAA,KAA2C;QAC5CQ,QAAM,iBAAS1B,IAAA,CAAAe,oBAAA;UACZiD,WAAA;QACD;MAAA;MACY5D,MACR,CAAAqB,MAAA,CAAAwC,sBAAC,EAAA7B,aAA6B;QAE9B4B,WACA;MAEA;IAGA,IAAA3D,EAAA,0CACC,cAAkC;MAAiC,IAAAoB,MACpE,GAAAP,+BAAC;QAAuDQ,QAC1D,GACF,eAAA1B,IAAA,CAAAO,gBAAA;UACFsB,KAAA;UACAH,QAAc;QAKZ,WAAa,EAEf,eAAc1B,IAAA,CAAAS,eAAA;UACfsC,OAAA;UAGHrB,QAAS,iBAAA1B,IAA2B,SAAM;YACrC0B,QAAA;UAED,CAAO;QAGT,CAAG,WACD,eAAe1B,IAAA,CAAAW,gBAAA;UACXoC,OAAA,EAAW;UACbrB,QAAA,iBAAA1B,IAAA;YACE0B,QAAW;UACX;QAKF,aACF,eAAA1B,IAAA,CAAAe,oBAAA;UAEAiD,WAAc;QAOhB,CAAG,aACD,eAAehE,IAAA,CAAAa,qBAAA;UACZiD,WAAA;QACD;MAII,EAEJ;MACF1D,MAAA,CAAAqB,MAAA,CAAAE,KAAA,EAAAC,IAAA,cAAAxB,MAAA,CAAAqB,MAAA,CAAAK,gBAAA,EAAAF,IAAA,MAAAxB,MAAA,CAAAqB,MAAA,CAAAoB,UAAA,EAAAG,WAAA,IAAA5C,MAAA,CAAAqB,MAAA,CAAA4B,WAAA,EAAAL,WAAA,IAAA5C,MAAA,CAAAqB,MAAA,CAAAwC,sBAAA,EAAA7B,aAAA;QAEA4B,WAAO,EAAO;MAEf,EAED,EAAA5D,MAAG,CAAAqB,MAAA,CAAAsC,2BAAA,EAAAnC,IAAA;IACD;EAAe,IAAAzB,QACZ;IAAAE,EAAA,wDACD;MAAAD,MACE,CAAAgB,WACE,EAAAQ,IAAA,CAAAX,oBAAC;IACC,IAAAZ,EAAA,yCAAC,EAAkB,YAAM;MAAQ,IAAAoB,MACjC,GAAAN,+BAAC;QAEDkB,SACF;MAAA,GAEJ;QACFyC,OAAA;UAEAC,cAAc,EAAK,CAAE;QAKvB;QACErD,QAAM,iBAAS1B,IAAA,CAAAiB,oBAAA;UACZuD,UAAA;UACD9C,QAAA,iBAAA1B,IAAA,CAAAO,gBAAA;YACEsB,KAAA,EAAS,EAAE;YACXH,QACE;UAIJ;QACF;MAGA;MACDtB,MAEE,CAAAqB,MAAA,CAAAY,SAAA,EAAAT,IAAA,sBAAAxB,MAAA,CAAAqB,MAAA,CAAAsD,cAAoE,EAAAnD,IAAA,MAAAxB,MAAA,CAAAqB,MAAA,CAAAgD,gBAAA,EAAA7C,IAAA,aAAAxB,MAAA,CAAAqB,MAAA,CAAAE,KAAA,EAAAC,IAAA,oBAAAxB,MAAA,CAAAqB,MAAA,CAAAK,gBAAA,EAAAF,IAAA;IACrE,IAAAvB,EAAA,uEAAe;MAAA,IACZoB,MAAA,GAAAN,+BAAA;QACDO,QAAA,iBAAA1B,IAAA,CAAAoB,WAAA;UACEM,QAAA,EACE,eAAA1B,IAAA,CAACoB,WAAA,CAAA4D,KACC;YAAAnD,KAAA;YACAH,QAAA;UAEA;QAGN;MACF;MAEAtB,MAAA,CAAOqB,MAAA,CAAOE,KAAK,EAAEC,IAAA,CAAK,kBAC1B,GAAOxB,MAAO,CAAAqB,MAAA,CAAAK,gBAAa,CAAY,CAAAF,IAAA;IACzC,CAAC,GAEDvB,EAAA,CAAG,yEAAwE;MACzE,IAAAoB,MAAM,GAAAN,+BAAS;QACbO,QAAC,iBAAAxB,KAAA,CAAAkB,WAAA;UACDM,QAAA,GACE,eACE1B,IAAA,CAAAoB,WAAC,CAAA4D,KAAA;YACCnD,KAAA;YACAH,QAAA;UAAwD,CAC1D,GAEJ,eAAA1B,IAAA,CAAAoB,WAAA,CAAA6D,IAAA;YACFlC,OAAA;YAEOrB,QAAO,iBAAY1B,IAAU,CACpC,QAAO;cAEL0B,QAAa;YACd;UAGA;QAEC,CAAC;MAAA,EACD;MAAAtB,MACE,CAAAqB,MAAS,CAAAE,KAAE,EAAAC,IAAA,CAAW,aAAAxB,MAAmB,CAAAqB,MAAA,CAAAK,gBAAA,EAAAF,IAAA,MAAAxB,MAAA,CAAAqB,MAAA,CAAAoB,UAAA,EAAAG,WAAA;IAAA,IAAA3C,EACzC,qCACG,cAAY;MACX,IAAAoB,MAAA,GAAAN,+BAAa,CAAZ,EAAkB;QAAY2D,OAC/B;UAEAnD,KACA;QAEA;QAC8CD,QAC9C,iBAAC1B,IAAA,CAAAiB,oBAAsB;UAA4CS,QACrE,iBAAA1B,IAAA,CAAAO,gBAAA;YAEJmB,QAAA;UACF;QAEA;MASoD,EAClD;MAAatB,MACb,CAAAqB,MAAW,CAAAE,KAAA,EAAAC,IAAA;IAAA,EACb,EAACvB,EAAA;MACF,IAAAoB,MAAA,GAAAN,+BAAA;QACFO,QAAA,iBAAAxB,KAAA,CAAAkB,WAAA;UACFM,QAAA,G","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { StackHeaderBackButton } from "./StackHeaderBackButton";
|
|
2
|
+
import { StackHeaderComponent } from "./StackHeaderComponent";
|
|
3
|
+
import { StackHeaderLeft } from "./StackHeaderLeft";
|
|
4
|
+
import { StackHeaderRight } from "./StackHeaderRight";
|
|
5
|
+
import { StackHeaderSearchBar } from "./StackHeaderSearchBar";
|
|
6
|
+
import { StackHeaderTitle } from "./StackHeaderTitle";
|
|
7
|
+
import { StackScreen, appendScreenStackPropsToOptions } from "./StackScreen";
|
|
8
|
+
const StackHeader = Object.assign(StackHeaderComponent, {
|
|
9
|
+
Left: StackHeaderLeft,
|
|
10
|
+
Right: StackHeaderRight,
|
|
11
|
+
BackButton: StackHeaderBackButton,
|
|
12
|
+
Title: StackHeaderTitle,
|
|
13
|
+
SearchBar: StackHeaderSearchBar
|
|
14
|
+
});
|
|
15
|
+
export {
|
|
16
|
+
StackHeader,
|
|
17
|
+
StackHeaderBackButton,
|
|
18
|
+
StackHeaderComponent,
|
|
19
|
+
StackHeaderLeft,
|
|
20
|
+
StackHeaderRight,
|
|
21
|
+
StackHeaderSearchBar,
|
|
22
|
+
StackHeaderTitle,
|
|
23
|
+
StackScreen,
|
|
24
|
+
appendScreenStackPropsToOptions
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/layouts/stack-utils/index.tsx"],
|
|
4
|
+
"mappings": "AAAA,SAAS,6BAA8D;AACvE,SAAS,4BAAmD;AAC5D,SAAS,uBAAkD;AAC3D,SAAS,wBAAoD;AAC7D,SAAS,4BAA4D;AACrE,SAAS,wBAAoD;AA6B7D,SAAS,aAAa,uCAA8D;AAvB7E,MAAM,cAAc,OAAO,OAAO,sBAAsB;AAAA,EAC7D,MAAM;AAAA,EACN,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,WAAW;AACb,CAAC;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { StackHeaderBackButton } from "./StackHeaderBackButton.mjs";
|
|
2
|
+
import { StackHeaderComponent } from "./StackHeaderComponent.mjs";
|
|
3
|
+
import { StackHeaderLeft } from "./StackHeaderLeft.mjs";
|
|
4
|
+
import { StackHeaderRight } from "./StackHeaderRight.mjs";
|
|
5
|
+
import { StackHeaderSearchBar } from "./StackHeaderSearchBar.mjs";
|
|
6
|
+
import { StackHeaderTitle } from "./StackHeaderTitle.mjs";
|
|
7
|
+
import { StackScreen, appendScreenStackPropsToOptions } from "./StackScreen.mjs";
|
|
8
|
+
const StackHeader = Object.assign(StackHeaderComponent, {
|
|
9
|
+
Left: StackHeaderLeft,
|
|
10
|
+
Right: StackHeaderRight,
|
|
11
|
+
BackButton: StackHeaderBackButton,
|
|
12
|
+
Title: StackHeaderTitle,
|
|
13
|
+
SearchBar: StackHeaderSearchBar
|
|
14
|
+
});
|
|
15
|
+
export { StackHeader, StackHeaderBackButton, StackHeaderComponent, StackHeaderLeft, StackHeaderRight, StackHeaderSearchBar, StackHeaderTitle, StackScreen, appendScreenStackPropsToOptions };
|
|
16
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderBackButton","StackHeaderComponent","StackHeaderLeft","StackHeaderRight","StackHeaderSearchBar","StackHeaderTitle","StackScreen","appendScreenStackPropsToOptions","StackHeader","Object","assign","Left","Right","BackButton","Title","SearchBar"],"sources":["../../../../src/layouts/stack-utils/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,qBAAA,QAA8D;AACvE,SAASC,oBAAA,QAAmD;AAC5D,SAASC,eAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SAASC,oBAAA,QAA4D;AACrE,SAASC,gBAAA,QAAoD;AA6B7D,SAASC,WAAA,EAAaC,+BAAA,QAA8D;AAvB7E,MAAMC,WAAA,GAAcC,MAAA,CAAOC,MAAA,CAAOT,oBAAA,EAAsB;EAC7DU,IAAA,EAAMT,eAAA;EACNU,KAAA,EAAOT,gBAAA;EACPU,UAAA,EAAYb,qBAAA;EACZc,KAAA,EAAOT,gBAAA;EACPU,SAAA,EAAWX;AACb,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { StackHeaderBackButton } from "./StackHeaderBackButton.native.js";
|
|
2
|
+
import { StackHeaderComponent } from "./StackHeaderComponent.native.js";
|
|
3
|
+
import { StackHeaderLeft } from "./StackHeaderLeft.native.js";
|
|
4
|
+
import { StackHeaderRight } from "./StackHeaderRight.native.js";
|
|
5
|
+
import { StackHeaderSearchBar } from "./StackHeaderSearchBar.native.js";
|
|
6
|
+
import { StackHeaderTitle } from "./StackHeaderTitle.native.js";
|
|
7
|
+
import { StackScreen, appendScreenStackPropsToOptions } from "./StackScreen.native.js";
|
|
8
|
+
var StackHeader = Object.assign(StackHeaderComponent, {
|
|
9
|
+
Left: StackHeaderLeft,
|
|
10
|
+
Right: StackHeaderRight,
|
|
11
|
+
BackButton: StackHeaderBackButton,
|
|
12
|
+
Title: StackHeaderTitle,
|
|
13
|
+
SearchBar: StackHeaderSearchBar
|
|
14
|
+
});
|
|
15
|
+
export { StackHeader, StackHeaderBackButton, StackHeaderComponent, StackHeaderLeft, StackHeaderRight, StackHeaderSearchBar, StackHeaderTitle, StackScreen, appendScreenStackPropsToOptions };
|
|
16
|
+
//# sourceMappingURL=index.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderBackButton","StackHeaderComponent","StackHeaderLeft","StackHeaderRight","StackHeaderSearchBar","StackHeaderTitle","StackScreen","appendScreenStackPropsToOptions","StackHeader","Object","assign","Left","Right","BackButton","Title","SearchBar"],"sources":["../../../../src/layouts/stack-utils/index.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,qBAAA,QAA8D;AACvE,SAASC,oBAAA,QAAmD;AAC5D,SAASC,eAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SAASC,oBAAA,QAA4D;AACrE,SAASC,gBAAA,QAAoD;AA6B7D,SAASC,WAAA,EAAaC,+BAAA,QAA8D;AAvB7E,IAAAC,WAAM,GAAAC,MAAc,CAAAC,MAAO,CAAAT,oBAAO;EACvCU,IAAA,EAAMT,eAAA;EACNU,KAAA,EAAOT,gBAAA;EACPU,UAAA,EAAYb,qBAAA;EACZc,KAAA,EAAOT,gBAAA;EACPU,SAAA,EAAWX;AACb,CAAC","ignoreList":[]}
|
|
@@ -5,6 +5,7 @@ import { useSortedScreens } from "../router/useScreens";
|
|
|
5
5
|
import { withStaticProperties } from "../utils/withStaticProperties";
|
|
6
6
|
import { isProtectedElement } from "../views/Protected";
|
|
7
7
|
import { Screen } from "../views/Screen";
|
|
8
|
+
import { StackScreen } from "./stack-utils/StackScreen";
|
|
8
9
|
import { jsx } from "react/jsx-runtime";
|
|
9
10
|
function useFilterScreenChildren(children, {
|
|
10
11
|
isCustomNavigator,
|
|
@@ -13,7 +14,7 @@ function useFilterScreenChildren(children, {
|
|
|
13
14
|
return React.useMemo(() => {
|
|
14
15
|
const customChildren = [], screens = [], protectedScreens = /* @__PURE__ */ new Set();
|
|
15
16
|
function flattenChild(child, exclude = !1) {
|
|
16
|
-
if (React.isValidElement(child) && child.type === Screen) {
|
|
17
|
+
if (React.isValidElement(child) && (child.type === Screen || child.type === StackScreen)) {
|
|
17
18
|
if (typeof child.props == "object" && child.props && "name" in child.props && !child.props.name)
|
|
18
19
|
throw new Error(
|
|
19
20
|
`<Screen /> component in \`default export\` at \`app${contextKey}/_layout\` must have a \`name\` prop when used as a child of a Layout Route.`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/layouts/withLayoutContext.tsx"],
|
|
4
|
-
"mappings": "AACA,OAAO,WAAW;AAClB,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB,iCAAiC;AACnE,SAA2B,wBAAwB;AAEnD,SAAS,4BAA4B;AACrC,SAAS,0BAA0B;AACnC,SAAS,cAAc;
|
|
4
|
+
"mappings": "AACA,OAAO,WAAW;AAClB,SAAS,qBAAqB;AAC9B,SAAS,yBAAyB,iCAAiC;AACnE,SAA2B,wBAAwB;AAEnD,SAAS,4BAA4B;AACrC,SAAS,0BAA0B;AACnC,SAAS,cAAc;AACvB,SAAS,mBAAmB;AA6IlB;AA3IH,SAAS,wBACd,UACA;AAAA,EACE;AAAA,EACA;AACF,IAII,CAAC,GACL;AACA,SAAO,MAAM,QAAQ,MAAM;AACzB,UAAM,iBAAwB,CAAC,GACzB,UAAiB,CAAC,GAClB,mBAAmB,oBAAI,IAAY;AAMzC,aAAS,aAAa,OAAwB,UAAU,IAAO;AAE7D,UAAI,MAAM,eAAe,KAAK,MAAM,MAAM,SAAS,UAAU,MAAM,SAAS,cAAc;AACxF,YACE,OAAO,MAAM,SAAU,YACvB,MAAM,SACN,UAAU,MAAM,SAChB,CAAC,MAAM,MAAM;AAEb,gBAAM,IAAI;AAAA,YACR,sDAAsD,UAAU;AAAA,UAClE;AAEF,YAAI,QAAQ,IAAI,aAAa,gBAEzB,CAAC,YAAY,aAAa,cAAc,EAAE;AAAA,UACxC,CAAC,QACC,MAAM,SAAS,OAAO,MAAM,SAAU,YAAY,OAAO,MAAM;AAAA,QACnE;AAEA,gBAAM,IAAI;AAAA,YACR,sDAAsD,UAAU;AAAA,UAClE;AAIJ,cAAM,cAAc,MAAM;AAC1B,QAAI,WAAW,YAAY,OACzB,iBAAiB,IAAI,YAAY,IAAI,IAErC,QAAQ,KAAK,WAAW;AAE1B;AAAA,MACF;AAGA,UAAI,mBAAmB,KAAK,GAAG;AAE7B,cAAM,kBAAkB,WAAW,CAAC,MAAM,MAAM;AAChD,cAAM,SAAS,QAAQ,MAAM,MAAM,UAAU,CAAC,WAAW;AACvD,uBAAa,QAAQ,eAAe;AAAA,QACtC,CAAC;AACD;AAAA,MACF;AAGA,MAAI,oBACF,eAAe,KAAK,KAAK,IAChB,SAAS,QAClB,QAAQ;AAAA,QACN,2JAA2J,UAAU;AAAA,MACvK;AAAA,IAEJ;AAKA,QAHA,MAAM,SAAS,QAAQ,UAAU,CAAC,UAAU,aAAa,KAAK,CAAC,GAG3D,QAAQ,IAAI,aAAa,cAAc;AAEzC,YAAM,QAAQ,QAAQ,IAAI,CAAC,WAAW,OAAO,IAAI;AACjD,UAAI,SAAS,IAAI,IAAI,KAAK,EAAE,SAAS,MAAM;AACzC,cAAM,IAAI,MAAM,kCAAkC,KAAK;AAAA,IAE3D;AAEA,WAAO;AAAA,MACL;AAAA,MACA,UAAU;AAAA,MACV;AAAA,IACF;AAAA,EACF,GAAG,CAAC,UAAU,YAAY,iBAAiB,CAAC;AAC9C;AAGO,SAAS,kBAMd,KACA,WAGA,SACA;AACA,SAAO;AAAA,IACL,MAAM;AAAA,MACJ,CAAC,SAAS,QAAQ;AAChB,cAAM,EAAE,UAAU,GAAG,MAAM,IAAI,SACzB,aAAa,cAAc,GAC3B,EAAE,SAAS,iBAAiB,IAAI,wBAAwB,UAAU;AAAA,UACtE;AAAA,QACF,CAAC;AAID,gCAAwB,YAAY,gBAAgB,GAEpD,MAAM,UAAU,OACd,wBAAwB,YAAY,gBAAgB,GAC7C,MAAM;AACX,oCAA0B,UAAU;AAAA,QACtC,IACC,CAAC,YAAY,gBAAgB,CAAC;AAEjC,cAAM,YAAY,YAAY,UAAU,WAAY,CAAC,CAAS,IAAI,SAC5D,SAAS,iBAAkB,aAAa,CAAC,GAAW;AAAA,UACxD,cAAc;AAAA,UACd;AAAA,QACF,CAAC;AAGD,eAAK,OAAO,SAKV,oBAAC,OAAK,GAAG,SAAS,OAAQ,GAAG,OAAO,IAAI,YAAY,KACjD,kBACH,IANO;AAAA,MAQX;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,IACF;AAAA,EACF;AACF;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -5,6 +5,7 @@ import { useSortedScreens } from "../router/useScreens.mjs";
|
|
|
5
5
|
import { withStaticProperties } from "../utils/withStaticProperties.mjs";
|
|
6
6
|
import { isProtectedElement } from "../views/Protected.mjs";
|
|
7
7
|
import { Screen } from "../views/Screen.mjs";
|
|
8
|
+
import { StackScreen } from "./stack-utils/StackScreen.mjs";
|
|
8
9
|
import { jsx } from "react/jsx-runtime";
|
|
9
10
|
function useFilterScreenChildren(children, {
|
|
10
11
|
isCustomNavigator,
|
|
@@ -15,7 +16,7 @@ function useFilterScreenChildren(children, {
|
|
|
15
16
|
screens = [],
|
|
16
17
|
protectedScreens = /* @__PURE__ */new Set();
|
|
17
18
|
function flattenChild(child, exclude = !1) {
|
|
18
|
-
if (React.isValidElement(child) && child.type === Screen) {
|
|
19
|
+
if (React.isValidElement(child) && (child.type === Screen || child.type === StackScreen)) {
|
|
19
20
|
if (typeof child.props == "object" && child.props && "name" in child.props && !child.props.name) throw new Error(`<Screen /> component in \`default export\` at \`app${contextKey}/_layout\` must have a \`name\` prop when used as a child of a Layout Route.`);
|
|
20
21
|
if (process.env.NODE_ENV !== "production" && ["children", "component", "getComponent"].some(key => child.props && typeof child.props == "object" && key in child.props)) throw new Error(`<Screen /> component in \`default export\` at \`app${contextKey}/_layout\` must not have a \`children\`, \`component\`, or \`getComponent\` prop when used as a child of a Layout Route`);
|
|
21
22
|
const screenProps = child.props;
|