one 1.2.69 → 1.2.71
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/cli/build.cjs +9 -1
- package/dist/cjs/cli/build.js +8 -1
- package/dist/cjs/cli/build.js.map +1 -1
- package/dist/cjs/cli/build.native.js +13 -1
- package/dist/cjs/cli/build.native.js.map +1 -1
- 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 +75 -6
- package/dist/cjs/layouts/Stack.js +44 -4
- package/dist/cjs/layouts/Stack.js.map +2 -2
- package/dist/cjs/layouts/Stack.native.js +81 -6
- 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 +68 -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 +52 -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/useLoader.cjs +4 -2
- package/dist/cjs/useLoader.js +4 -2
- package/dist/cjs/useLoader.js.map +1 -1
- package/dist/cjs/useLoader.native.js +4 -2
- package/dist/cjs/useLoader.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/cli/build.js +8 -1
- package/dist/esm/cli/build.js.map +1 -1
- package/dist/esm/cli/build.mjs +9 -1
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +13 -1
- package/dist/esm/cli/build.native.js.map +1 -1
- 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 +45 -1
- package/dist/esm/layouts/Stack.js.map +1 -1
- package/dist/esm/layouts/Stack.mjs +59 -1
- package/dist/esm/layouts/Stack.mjs.map +1 -1
- package/dist/esm/layouts/Stack.native.js +65 -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 +71 -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 +37 -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 +431 -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 +33 -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/useLoader.js +4 -2
- package/dist/esm/useLoader.js.map +1 -1
- package/dist/esm/useLoader.mjs +4 -2
- package/dist/esm/useLoader.mjs.map +1 -1
- package/dist/esm/useLoader.native.js +4 -2
- package/dist/esm/useLoader.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/cli/build.ts +27 -2
- package/src/fork/NavigationContainer.tsx +2 -0
- package/src/index.ts +10 -0
- package/src/layouts/Stack.tsx +96 -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 +136 -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 +79 -0
- package/src/layouts/stack-utils/StackScreen.tsx +69 -0
- package/src/layouts/stack-utils/__tests__/composition.test.tsx +643 -0
- package/src/layouts/stack-utils/index.tsx +45 -0
- package/src/layouts/withLayoutContext.tsx +6 -2
- package/src/router/router.ts +1 -1
- package/src/useLoader.ts +14 -6
- package/src/utils/children.ts +74 -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/cli/build.d.ts.map +1 -1
- 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 +14 -3
- 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/useLoader.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","Right"],"sources":["../../../../../src/layouts/stack-utils/__tests__/composition.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {
|
|
2
|
+
StackHeaderBackButton
|
|
3
|
+
} from "./StackHeaderBackButton";
|
|
4
|
+
import { StackHeaderComponent } from "./StackHeaderComponent";
|
|
5
|
+
import { StackHeaderLeft } from "./StackHeaderLeft";
|
|
6
|
+
import { StackHeaderRight } from "./StackHeaderRight";
|
|
7
|
+
import {
|
|
8
|
+
StackHeaderSearchBar
|
|
9
|
+
} from "./StackHeaderSearchBar";
|
|
10
|
+
import { StackHeaderTitle } from "./StackHeaderTitle";
|
|
11
|
+
import {
|
|
12
|
+
StackScreen,
|
|
13
|
+
appendScreenStackPropsToOptions
|
|
14
|
+
} from "./StackScreen";
|
|
15
|
+
const StackHeader = Object.assign(StackHeaderComponent, {
|
|
16
|
+
Left: StackHeaderLeft,
|
|
17
|
+
Right: StackHeaderRight,
|
|
18
|
+
BackButton: StackHeaderBackButton,
|
|
19
|
+
Title: StackHeaderTitle,
|
|
20
|
+
SearchBar: StackHeaderSearchBar
|
|
21
|
+
});
|
|
22
|
+
export {
|
|
23
|
+
StackHeader,
|
|
24
|
+
StackHeaderBackButton,
|
|
25
|
+
StackHeaderComponent,
|
|
26
|
+
StackHeaderLeft,
|
|
27
|
+
StackHeaderRight,
|
|
28
|
+
StackHeaderSearchBar,
|
|
29
|
+
StackHeaderTitle,
|
|
30
|
+
StackScreen,
|
|
31
|
+
appendScreenStackPropsToOptions
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/layouts/stack-utils/index.tsx"],
|
|
4
|
+
"mappings": "AAAA;AAAA,EACE;AAAA,OAEK;AACP,SAAS,4BAAmD;AAC5D,SAAS,uBAAkD;AAC3D,SAAS,wBAAoD;AAC7D;AAAA,EACE;AAAA,OAEK;AACP,SAAS,wBAAoD;AA6B7D;AAAA,EACE;AAAA,EACA;AAAA,OAEK;AA3BA,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,SACEA,qBAAA,QAEK;AACP,SAASC,oBAAA,QAAmD;AAC5D,SAASC,eAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SACEC,oBAAA,QAEK;AACP,SAASC,gBAAA,QAAoD;AA6B7D,SACEC,WAAA,EACAC,+BAAA,QAEK;AA3BA,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,SAAAA,qBAAA;AAAA,SACEC,oBAAA;AAAA,SAEKC,eAAA;AACP,SAASC,gBAAA,sCAAmD;AAC5D,SAASC,oBAAA,QAAkD;AAC3D,SAASC,gBAAA,QAAoD;AAC7D,SAAAC,WAAA,EAAAC,+BAAA;AAAA,IACEC,WAAA,GAAAC,MAAA,CAAAC,MAAA,CAAAT,oBAAA;EAAAU,IAAA,EAEKT,eAAA;EACPU,KAAA,EAAST,gBAAA;EA6BTU,UAAA,EAAAb,qBAAA;EACEc,KAAA,EAAAT,gBAAA;EACAU,SAAA,EAAAX;AAAA;AAzBK,SACLI,WAAM,EACNR,qBAAO,EACPC,oBAAY,EACZC,eAAO,EACPC,gBAAW,EACZC,oBAAA,E","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;AAgJlB;AA9IH,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,UACE,MAAM,eAAe,KAAK,MACzB,MAAM,SAAS,UAAU,MAAM,SAAS,cACzC;AACA,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;
|