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,71 @@
|
|
|
1
|
+
import { Children, isValidElement } from "react";
|
|
2
|
+
import { StyleSheet } from "react-native-web";
|
|
3
|
+
import {
|
|
4
|
+
appendStackHeaderBackButtonPropsToOptions,
|
|
5
|
+
StackHeaderBackButton
|
|
6
|
+
} from "./StackHeaderBackButton";
|
|
7
|
+
import { StackHeaderLeft, appendStackHeaderLeftPropsToOptions } from "./StackHeaderLeft";
|
|
8
|
+
import {
|
|
9
|
+
StackHeaderRight,
|
|
10
|
+
appendStackHeaderRightPropsToOptions
|
|
11
|
+
} from "./StackHeaderRight";
|
|
12
|
+
import {
|
|
13
|
+
appendStackHeaderSearchBarPropsToOptions,
|
|
14
|
+
StackHeaderSearchBar
|
|
15
|
+
} from "./StackHeaderSearchBar";
|
|
16
|
+
import {
|
|
17
|
+
appendStackHeaderTitlePropsToOptions,
|
|
18
|
+
StackHeaderTitle
|
|
19
|
+
} from "./StackHeaderTitle";
|
|
20
|
+
import { isChildOfType } from "../../utils/children";
|
|
21
|
+
function StackHeaderComponent(_props) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
function appendStackHeaderPropsToOptions(options, props) {
|
|
25
|
+
const flattenedStyle = StyleSheet.flatten(props.style), flattenedLargeStyle = StyleSheet.flatten(props.largeStyle);
|
|
26
|
+
if (props.hidden)
|
|
27
|
+
return { ...options, headerShown: !1 };
|
|
28
|
+
if (props.asChild)
|
|
29
|
+
return { ...options, header: () => props.children };
|
|
30
|
+
const isTransparent = flattenedStyle?.backgroundColor === "transparent", hasCustomShadow = flattenedStyle?.shadowColor !== void 0, hasBackgroundColor = flattenedStyle?.backgroundColor !== void 0, hasLargeBackgroundColor = flattenedLargeStyle?.backgroundColor !== void 0;
|
|
31
|
+
let updatedOptions = {
|
|
32
|
+
...options,
|
|
33
|
+
headerShown: !props.hidden,
|
|
34
|
+
headerBlurEffect: props.blurEffect,
|
|
35
|
+
// Set headerTransparent when backgroundColor is 'transparent'
|
|
36
|
+
// This works on both iOS and Android for normal headers
|
|
37
|
+
// Note: When using SearchBar on iOS, if you don't have a ScrollView with
|
|
38
|
+
// contentInsetAdjustmentBehavior="automatic", set headerTransparent: false in options
|
|
39
|
+
...isTransparent && { headerTransparent: !0 },
|
|
40
|
+
// Only set header styles when explicitly configured to avoid interfering with native defaults
|
|
41
|
+
...hasBackgroundColor && {
|
|
42
|
+
headerStyle: { backgroundColor: flattenedStyle.backgroundColor }
|
|
43
|
+
},
|
|
44
|
+
...hasLargeBackgroundColor && {
|
|
45
|
+
headerLargeStyle: {
|
|
46
|
+
backgroundColor: flattenedLargeStyle.backgroundColor
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
// Only set shadow visibility when explicitly configured
|
|
50
|
+
...hasCustomShadow && {
|
|
51
|
+
headerShadowVisible: flattenedStyle?.shadowColor !== "transparent"
|
|
52
|
+
},
|
|
53
|
+
...flattenedLargeStyle?.shadowColor !== void 0 && {
|
|
54
|
+
headerLargeTitleShadowVisible: flattenedLargeStyle?.shadowColor !== "transparent"
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
function appendChildOptions(child, options2) {
|
|
58
|
+
let result = options2;
|
|
59
|
+
return isChildOfType(child, StackHeaderTitle) ? result = appendStackHeaderTitlePropsToOptions(result, child.props) : isChildOfType(child, StackHeaderLeft) ? result = appendStackHeaderLeftPropsToOptions(result, child.props) : isChildOfType(child, StackHeaderRight) ? result = appendStackHeaderRightPropsToOptions(result, child.props) : isChildOfType(child, StackHeaderBackButton) ? result = appendStackHeaderBackButtonPropsToOptions(result, child.props) : isChildOfType(child, StackHeaderSearchBar) ? result = appendStackHeaderSearchBarPropsToOptions(result, child.props) : console.warn(
|
|
60
|
+
`Warning: Unknown child element passed to Stack.Header: ${child.type.name ?? child.type}`
|
|
61
|
+
), result;
|
|
62
|
+
}
|
|
63
|
+
return Children.forEach(props.children, (child) => {
|
|
64
|
+
isValidElement(child) && (updatedOptions = appendChildOptions(child, updatedOptions));
|
|
65
|
+
}), updatedOptions;
|
|
66
|
+
}
|
|
67
|
+
export {
|
|
68
|
+
StackHeaderComponent,
|
|
69
|
+
appendStackHeaderPropsToOptions
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=StackHeaderComponent.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/layouts/stack-utils/StackHeaderComponent.tsx"],
|
|
4
|
+
"mappings": "AACA,SAAS,UAAU,sBAAsC;AACzD,SAAS,kBAAmD;AAG5D;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,iBAAiB,2CAA2C;AACrE;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,qBAAqB;AAgCvB,SAAS,qBAAqB,QAA0B;AAC7D,SAAO;AACT;AAEO,SAAS,gCACd,SACA,OAC8B;AAC9B,QAAM,iBAAiB,WAAW,QAAQ,MAAM,KAAK,GAC/C,sBAAsB,WAAW,QAAQ,MAAM,UAAU;AAE/D,MAAI,MAAM;AACR,WAAO,EAAE,GAAG,SAAS,aAAa,GAAM;AAG1C,MAAI,MAAM;AACR,WAAO,EAAE,GAAG,SAAS,QAAQ,MAAM,MAAM,SAAS;AAGpD,QAAM,gBAAgB,gBAAgB,oBAAoB,eACpD,kBAAkB,gBAAgB,gBAAgB,QAClD,qBAAqB,gBAAgB,oBAAoB,QACzD,0BAA0B,qBAAqB,oBAAoB;AAEzE,MAAI,iBAA+C;AAAA,IACjD,GAAG;AAAA,IACH,aAAa,CAAC,MAAM;AAAA,IACpB,kBAAkB,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,IAKxB,GAAI,iBAAiB,EAAE,mBAAmB,GAAK;AAAA;AAAA,IAE/C,GAAI,sBAAsB;AAAA,MACxB,aAAa,EAAE,iBAAiB,eAAe,gBAA0B;AAAA,IAC3E;AAAA,IACA,GAAI,2BAA2B;AAAA,MAC7B,kBAAkB;AAAA,QAChB,iBAAiB,oBAAoB;AAAA,MACvC;AAAA,IACF;AAAA;AAAA,IAEA,GAAI,mBAAmB;AAAA,MACrB,qBAAqB,gBAAgB,gBAAgB;AAAA,IACvD;AAAA,IACA,GAAI,qBAAqB,gBAAgB,UAAa;AAAA,MACpD,+BAA+B,qBAAqB,gBAAgB;AAAA,IACtE;AAAA,EACF;AAEA,WAAS,mBACP,OACAA,UACA;AACA,QAAI,SAASA;AACb,WAAI,cAAc,OAAO,gBAAgB,IACvC,SAAS,qCAAqC,QAAQ,MAAM,KAAK,IACxD,cAAc,OAAO,eAAe,IAC7C,SAAS,oCAAoC,QAAQ,MAAM,KAAK,IACvD,cAAc,OAAO,gBAAgB,IAC9C,SAAS,qCAAqC,QAAQ,MAAM,KAAK,IACxD,cAAc,OAAO,qBAAqB,IACnD,SAAS,0CAA0C,QAAQ,MAAM,KAAK,IAC7D,cAAc,OAAO,oBAAoB,IAClD,SAAS,yCAAyC,QAAQ,MAAM,KAAK,IAErE,QAAQ;AAAA,MACN,0DAA2D,MAAM,KAA0B,QAAQ,MAAM,IAAI;AAAA,IAC/G,GAEK;AAAA,EACT;AAEA,kBAAS,QAAQ,MAAM,UAAU,CAAC,UAAU;AAC1C,IAAI,eAAe,KAAK,MACtB,iBAAiB,mBAAmB,OAAO,cAAc;AAAA,EAE7D,CAAC,GAEM;AACT;",
|
|
5
|
+
"names": ["options"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { Children, isValidElement } from "react";
|
|
2
|
+
import { StyleSheet } from "react-native-web";
|
|
3
|
+
import { appendStackHeaderBackButtonPropsToOptions, StackHeaderBackButton } from "./StackHeaderBackButton.mjs";
|
|
4
|
+
import { StackHeaderLeft, appendStackHeaderLeftPropsToOptions } from "./StackHeaderLeft.mjs";
|
|
5
|
+
import { StackHeaderRight, appendStackHeaderRightPropsToOptions } from "./StackHeaderRight.mjs";
|
|
6
|
+
import { appendStackHeaderSearchBarPropsToOptions, StackHeaderSearchBar } from "./StackHeaderSearchBar.mjs";
|
|
7
|
+
import { appendStackHeaderTitlePropsToOptions, StackHeaderTitle } from "./StackHeaderTitle.mjs";
|
|
8
|
+
import { isChildOfType } from "../../utils/children.mjs";
|
|
9
|
+
function StackHeaderComponent(_props) {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
function appendStackHeaderPropsToOptions(options, props) {
|
|
13
|
+
const flattenedStyle = StyleSheet.flatten(props.style),
|
|
14
|
+
flattenedLargeStyle = StyleSheet.flatten(props.largeStyle);
|
|
15
|
+
if (props.hidden) return {
|
|
16
|
+
...options,
|
|
17
|
+
headerShown: !1
|
|
18
|
+
};
|
|
19
|
+
if (props.asChild) return {
|
|
20
|
+
...options,
|
|
21
|
+
header: () => props.children
|
|
22
|
+
};
|
|
23
|
+
const isTransparent = flattenedStyle?.backgroundColor === "transparent",
|
|
24
|
+
hasCustomShadow = flattenedStyle?.shadowColor !== void 0,
|
|
25
|
+
hasBackgroundColor = flattenedStyle?.backgroundColor !== void 0,
|
|
26
|
+
hasLargeBackgroundColor = flattenedLargeStyle?.backgroundColor !== void 0;
|
|
27
|
+
let updatedOptions = {
|
|
28
|
+
...options,
|
|
29
|
+
headerShown: !props.hidden,
|
|
30
|
+
headerBlurEffect: props.blurEffect,
|
|
31
|
+
// Set headerTransparent when backgroundColor is 'transparent'
|
|
32
|
+
// This works on both iOS and Android for normal headers
|
|
33
|
+
// Note: When using SearchBar on iOS, if you don't have a ScrollView with
|
|
34
|
+
// contentInsetAdjustmentBehavior="automatic", set headerTransparent: false in options
|
|
35
|
+
...(isTransparent && {
|
|
36
|
+
headerTransparent: !0
|
|
37
|
+
}),
|
|
38
|
+
// Only set header styles when explicitly configured to avoid interfering with native defaults
|
|
39
|
+
...(hasBackgroundColor && {
|
|
40
|
+
headerStyle: {
|
|
41
|
+
backgroundColor: flattenedStyle.backgroundColor
|
|
42
|
+
}
|
|
43
|
+
}),
|
|
44
|
+
...(hasLargeBackgroundColor && {
|
|
45
|
+
headerLargeStyle: {
|
|
46
|
+
backgroundColor: flattenedLargeStyle.backgroundColor
|
|
47
|
+
}
|
|
48
|
+
}),
|
|
49
|
+
// Only set shadow visibility when explicitly configured
|
|
50
|
+
...(hasCustomShadow && {
|
|
51
|
+
headerShadowVisible: flattenedStyle?.shadowColor !== "transparent"
|
|
52
|
+
}),
|
|
53
|
+
...(flattenedLargeStyle?.shadowColor !== void 0 && {
|
|
54
|
+
headerLargeTitleShadowVisible: flattenedLargeStyle?.shadowColor !== "transparent"
|
|
55
|
+
})
|
|
56
|
+
};
|
|
57
|
+
function appendChildOptions(child, options2) {
|
|
58
|
+
let result = options2;
|
|
59
|
+
return isChildOfType(child, StackHeaderTitle) ? result = appendStackHeaderTitlePropsToOptions(result, child.props) : isChildOfType(child, StackHeaderLeft) ? result = appendStackHeaderLeftPropsToOptions(result, child.props) : isChildOfType(child, StackHeaderRight) ? result = appendStackHeaderRightPropsToOptions(result, child.props) : isChildOfType(child, StackHeaderBackButton) ? result = appendStackHeaderBackButtonPropsToOptions(result, child.props) : isChildOfType(child, StackHeaderSearchBar) ? result = appendStackHeaderSearchBarPropsToOptions(result, child.props) : console.warn(`Warning: Unknown child element passed to Stack.Header: ${child.type.name ?? child.type}`), result;
|
|
60
|
+
}
|
|
61
|
+
return Children.forEach(props.children, child => {
|
|
62
|
+
isValidElement(child) && (updatedOptions = appendChildOptions(child, updatedOptions));
|
|
63
|
+
}), updatedOptions;
|
|
64
|
+
}
|
|
65
|
+
export { StackHeaderComponent, appendStackHeaderPropsToOptions };
|
|
66
|
+
//# sourceMappingURL=StackHeaderComponent.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Children","isValidElement","StyleSheet","appendStackHeaderBackButtonPropsToOptions","StackHeaderBackButton","StackHeaderLeft","appendStackHeaderLeftPropsToOptions","StackHeaderRight","appendStackHeaderRightPropsToOptions","appendStackHeaderSearchBarPropsToOptions","StackHeaderSearchBar","appendStackHeaderTitlePropsToOptions","StackHeaderTitle","isChildOfType","StackHeaderComponent","_props","appendStackHeaderPropsToOptions","options","props","flattenedStyle","flatten","style","flattenedLargeStyle","largeStyle","hidden","headerShown","asChild","header","children","isTransparent","backgroundColor","hasCustomShadow","shadowColor","hasBackgroundColor","hasLargeBackgroundColor","updatedOptions","headerBlurEffect","blurEffect","headerTransparent","headerStyle","headerLargeStyle","headerShadowVisible","headerLargeTitleShadowVisible","appendChildOptions","child","options2","result","console","warn","type","name","forEach"],"sources":["../../../../src/layouts/stack-utils/StackHeaderComponent.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,QAAA,EAAUC,cAAA,QAAsC;AACzD,SAASC,UAAA,QAAmD;AAG5D,SACEC,yCAAA,EACAC,qBAAA,QACK;AACP,SAASC,eAAA,EAAiBC,mCAAA,QAA2C;AACrE,SACEC,gBAAA,EACAC,oCAAA,QACK;AACP,SACEC,wCAAA,EACAC,oBAAA,QACK;AACP,SACEC,oCAAA,EACAC,gBAAA,QACK;AACP,SAASC,aAAA,QAAqB;AAgCvB,SAASC,qBAAqBC,MAAA,EAA0B;EAC7D,OAAO;AACT;AAEO,SAASC,gCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,MAAMC,cAAA,GAAiBjB,UAAA,CAAWkB,OAAA,CAAQF,KAAA,CAAMG,KAAK;IAC/CC,mBAAA,GAAsBpB,UAAA,CAAWkB,OAAA,CAAQF,KAAA,CAAMK,UAAU;EAE/D,IAAIL,KAAA,CAAMM,MAAA,EACR,OAAO;IAAE,GAAGP,OAAA;IAASQ,WAAA,EAAa;EAAM;EAG1C,IAAIP,KAAA,CAAMQ,OAAA,EACR,OAAO;IAAE,GAAGT,OAAA;IAASU,MAAA,EAAQA,CAAA,KAAMT,KAAA,CAAMU;EAAS;EAGpD,MAAMC,aAAA,GAAgBV,cAAA,EAAgBW,eAAA,KAAoB;IACpDC,eAAA,GAAkBZ,cAAA,EAAgBa,WAAA,KAAgB;IAClDC,kBAAA,GAAqBd,cAAA,EAAgBW,eAAA,KAAoB;IACzDI,uBAAA,GAA0BZ,mBAAA,EAAqBQ,eAAA,KAAoB;EAEzE,IAAIK,cAAA,GAA+C;IACjD,GAAGlB,OAAA;IACHQ,WAAA,EAAa,CAACP,KAAA,CAAMM,MAAA;IACpBY,gBAAA,EAAkBlB,KAAA,CAAMmB,UAAA;IAAA;IAAA;IAAA;IAAA;IAKxB,IAAIR,aAAA,IAAiB;MAAES,iBAAA,EAAmB;IAAK;IAAA;IAE/C,IAAIL,kBAAA,IAAsB;MACxBM,WAAA,EAAa;QAAET,eAAA,EAAiBX,cAAA,CAAeW;MAA0B;IAC3E;IACA,IAAII,uBAAA,IAA2B;MAC7BM,gBAAA,EAAkB;QAChBV,eAAA,EAAiBR,mBAAA,CAAoBQ;MACvC;IACF;IAAA;IAEA,IAAIC,eAAA,IAAmB;MACrBU,mBAAA,EAAqBtB,cAAA,EAAgBa,WAAA,KAAgB;IACvD;IACA,IAAIV,mBAAA,EAAqBU,WAAA,KAAgB,UAAa;MACpDU,6BAAA,EAA+BpB,mBAAA,EAAqBU,WAAA,KAAgB;IACtE;EACF;EAEA,SAASW,mBACPC,KAAA,EACAC,QAAA,EACA;IACA,IAAIC,MAAA,GAASD,QAAA;IACb,OAAIhC,aAAA,CAAc+B,KAAA,EAAOhC,gBAAgB,IACvCkC,MAAA,GAASnC,oCAAA,CAAqCmC,MAAA,EAAQF,KAAA,CAAM1B,KAAK,IACxDL,aAAA,CAAc+B,KAAA,EAAOvC,eAAe,IAC7CyC,MAAA,GAASxC,mCAAA,CAAoCwC,MAAA,EAAQF,KAAA,CAAM1B,KAAK,IACvDL,aAAA,CAAc+B,KAAA,EAAOrC,gBAAgB,IAC9CuC,MAAA,GAAStC,oCAAA,CAAqCsC,MAAA,EAAQF,KAAA,CAAM1B,KAAK,IACxDL,aAAA,CAAc+B,KAAA,EAAOxC,qBAAqB,IACnD0C,MAAA,GAAS3C,yCAAA,CAA0C2C,MAAA,EAAQF,KAAA,CAAM1B,KAAK,IAC7DL,aAAA,CAAc+B,KAAA,EAAOlC,oBAAoB,IAClDoC,MAAA,GAASrC,wCAAA,CAAyCqC,MAAA,EAAQF,KAAA,CAAM1B,KAAK,IAErE6B,OAAA,CAAQC,IAAA,CACN,0DAA2DJ,KAAA,CAAMK,IAAA,CAA0BC,IAAA,IAAQN,KAAA,CAAMK,IAAI,EAC/G,GAEKH,MAAA;EACT;EAEA,OAAA9C,QAAA,CAASmD,OAAA,CAAQjC,KAAA,CAAMU,QAAA,EAAWgB,KAAA,IAAU;IACtC3C,cAAA,CAAe2C,KAAK,MACtBT,cAAA,GAAiBQ,kBAAA,CAAmBC,KAAA,EAAOT,cAAc;EAE7D,CAAC,GAEMA,cAAA;AACT","ignoreList":[]}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Children, isValidElement } from "react";
|
|
2
|
+
import { StyleSheet } from "react-native";
|
|
3
|
+
import { appendStackHeaderBackButtonPropsToOptions, StackHeaderBackButton } from "./StackHeaderBackButton.native.js";
|
|
4
|
+
import { StackHeaderLeft, appendStackHeaderLeftPropsToOptions } from "./StackHeaderLeft.native.js";
|
|
5
|
+
import { StackHeaderRight, appendStackHeaderRightPropsToOptions } from "./StackHeaderRight.native.js";
|
|
6
|
+
import { appendStackHeaderSearchBarPropsToOptions, StackHeaderSearchBar } from "./StackHeaderSearchBar.native.js";
|
|
7
|
+
import { appendStackHeaderTitlePropsToOptions, StackHeaderTitle } from "./StackHeaderTitle.native.js";
|
|
8
|
+
import { isChildOfType } from "../../utils/children.native.js";
|
|
9
|
+
function StackHeaderComponent(_props) {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
function appendStackHeaderPropsToOptions(options, props) {
|
|
13
|
+
var flattenedStyle = StyleSheet.flatten(props.style),
|
|
14
|
+
flattenedLargeStyle = StyleSheet.flatten(props.largeStyle);
|
|
15
|
+
if (props.hidden) return {
|
|
16
|
+
...options,
|
|
17
|
+
headerShown: !1
|
|
18
|
+
};
|
|
19
|
+
if (props.asChild) return {
|
|
20
|
+
...options,
|
|
21
|
+
header: function () {
|
|
22
|
+
return props.children;
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
var isTransparent = flattenedStyle?.backgroundColor === "transparent",
|
|
26
|
+
hasCustomShadow = flattenedStyle?.shadowColor !== void 0,
|
|
27
|
+
hasBackgroundColor = flattenedStyle?.backgroundColor !== void 0,
|
|
28
|
+
hasLargeBackgroundColor = flattenedLargeStyle?.backgroundColor !== void 0,
|
|
29
|
+
updatedOptions = {
|
|
30
|
+
...options,
|
|
31
|
+
headerShown: !props.hidden,
|
|
32
|
+
headerBlurEffect: props.blurEffect,
|
|
33
|
+
// Set headerTransparent when backgroundColor is 'transparent'
|
|
34
|
+
// This works on both iOS and Android for normal headers
|
|
35
|
+
// Note: When using SearchBar on iOS, if you don't have a ScrollView with
|
|
36
|
+
// contentInsetAdjustmentBehavior="automatic", set headerTransparent: false in options
|
|
37
|
+
...(isTransparent && {
|
|
38
|
+
headerTransparent: !0
|
|
39
|
+
}),
|
|
40
|
+
// Only set header styles when explicitly configured to avoid interfering with native defaults
|
|
41
|
+
...(hasBackgroundColor && {
|
|
42
|
+
headerStyle: {
|
|
43
|
+
backgroundColor: flattenedStyle.backgroundColor
|
|
44
|
+
}
|
|
45
|
+
}),
|
|
46
|
+
...(hasLargeBackgroundColor && {
|
|
47
|
+
headerLargeStyle: {
|
|
48
|
+
backgroundColor: flattenedLargeStyle.backgroundColor
|
|
49
|
+
}
|
|
50
|
+
}),
|
|
51
|
+
// Only set shadow visibility when explicitly configured
|
|
52
|
+
...(hasCustomShadow && {
|
|
53
|
+
headerShadowVisible: flattenedStyle?.shadowColor !== "transparent"
|
|
54
|
+
}),
|
|
55
|
+
...(flattenedLargeStyle?.shadowColor !== void 0 && {
|
|
56
|
+
headerLargeTitleShadowVisible: flattenedLargeStyle?.shadowColor !== "transparent"
|
|
57
|
+
})
|
|
58
|
+
};
|
|
59
|
+
function appendChildOptions(child, options2) {
|
|
60
|
+
var result = options2;
|
|
61
|
+
if (isChildOfType(child, StackHeaderTitle)) result = appendStackHeaderTitlePropsToOptions(result, child.props);else if (isChildOfType(child, StackHeaderLeft)) result = appendStackHeaderLeftPropsToOptions(result, child.props);else if (isChildOfType(child, StackHeaderRight)) result = appendStackHeaderRightPropsToOptions(result, child.props);else if (isChildOfType(child, StackHeaderBackButton)) result = appendStackHeaderBackButtonPropsToOptions(result, child.props);else if (isChildOfType(child, StackHeaderSearchBar)) result = appendStackHeaderSearchBarPropsToOptions(result, child.props);else {
|
|
62
|
+
var _child_type_name;
|
|
63
|
+
console.warn(`Warning: Unknown child element passed to Stack.Header: ${(_child_type_name = child.type.name) !== null && _child_type_name !== void 0 ? _child_type_name : child.type}`);
|
|
64
|
+
}
|
|
65
|
+
return result;
|
|
66
|
+
}
|
|
67
|
+
return Children.forEach(props.children, function (child) {
|
|
68
|
+
/* @__PURE__ */isValidElement(child) && (updatedOptions = appendChildOptions(child, updatedOptions));
|
|
69
|
+
}), updatedOptions;
|
|
70
|
+
}
|
|
71
|
+
export { StackHeaderComponent, appendStackHeaderPropsToOptions };
|
|
72
|
+
//# sourceMappingURL=StackHeaderComponent.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Children","isValidElement","StyleSheet","appendStackHeaderBackButtonPropsToOptions","StackHeaderBackButton","StackHeaderLeft","appendStackHeaderLeftPropsToOptions","StackHeaderRight","appendStackHeaderRightPropsToOptions","appendStackHeaderSearchBarPropsToOptions","StackHeaderSearchBar","appendStackHeaderTitlePropsToOptions","StackHeaderTitle","isChildOfType","StackHeaderComponent","_props","appendStackHeaderPropsToOptions","options","props","flattenedStyle","flatten","style","flattenedLargeStyle","largeStyle","hidden","headerShown","asChild","header","children","isTransparent","backgroundColor","hasCustomShadow","shadowColor","hasBackgroundColor","hasLargeBackgroundColor","updatedOptions","headerBlurEffect","blurEffect","headerTransparent","headerStyle","headerLargeStyle","headerShadowVisible","headerLargeTitleShadowVisible","appendChildOptions","child","options2","result"],"sources":["../../../../src/layouts/stack-utils/StackHeaderComponent.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,QAAA,EAAUC,cAAA,QAAsC;AACzD,SAASC,UAAA,QAAmD;AAG5D,SAAAC,yCAAA,EAAAC,qBAAA;AAAA,SACEC,eAAA,EAAAC,mCAAA;AAAA,SACAC,gBAAA,EAAAC,oCAAA;AAAA,SACKC,wCAAA,EAAAC,oBAAA;AACP,SAASC,oCAAiB,EAAAC,gBAAA,QAA2C;AACrE,SAAAC,aAAA;AAAA,SACEC,qBAAAC,MAAA;EACA;AAAA;AAEF,SAAAC,gCAAAC,OAAA,EAAAC,KAAA;EACE,IAAAC,cAAA,GAAAjB,UAAA,CAAAkB,OAAA,CAAAF,KAAA,CAAAG,KAAA;IAAAC,mBAAA,GAAApB,UAAA,CAAAkB,OAAA,CAAAF,KAAA,CAAAK,UAAA;EACA,IAAAL,KAAA,CAAAM,MAAA,SACK;IACP,GAAAP,OAAA;IACEQ,WAAA;EACA;EAAA,IAAAP,KACK,CAAAQ,OAAA,EACP,OAAS;IAgCF,GAAST,OAAA;IACdU,MAAO,WAAAA,CAAA;MACT,OAAAT,KAAA,CAAAU,QAAA;IAEO;EAIL;EAGA,IAAIC,aAAM,GAAAV,cAAA,EAAAW,eAAA;IAAAC,eAAA,GAAAZ,cAAA,EAAAa,WAAA;IAAAC,kBAAA,GAAAd,cAAA,EAAAW,eAAA;IAAAI,uBAAA,GAAAZ,mBAAA,EAAAQ,eAAA;IAAAK,cAAA;MACR,GAAAlB,OAAS;MAGXQ,WAAU,GAAAP,KAAA,CAAAM,MAAA;MACRY,gBAAY,EAAAlB,KAAS,CAAAmB,UAAQ;MAG/B;MAKA;MACE;MACA;MACA,IAAAR,aAAA,IAAkB;QAAMS,iBAAA;MAAA;MAAA;MAAA,IAAAL,kBAAA;QAKxBM,WAAI;UAA2CT,eAAA,EAAAX,cAAA,CAAAW;QAE/C;MAA0B;MAE1B,IAAAI,uBAAA;QACAM,gBAAI;UACFV,eAAA,EAAkBR,mBAAA,CAAAQ;QAAA;MACqB;MAEzC;MAAA,IAAAC,eAAA;QAEAU,mBAAI,EAAmBtB,cAAA,EAAAa,WAAA;MAAA;MAEvB,IAAAV,mBAAA,EAAAU,WAAA;QACAU,6BAAyB,EAAApB,mBAA6B,EAAAU,WAAA;MAAA;IACgB;EAExE,SAAAW,mBAAAC,KAAA,EAAAC,QAAA;IAEA,IAAAC,MAAS,GAAAD,QAAA;IAIP,IAAIhC,aAAS,CAAA+B,KAAA,EAAAhC,gBAAA,GACbkC,MAAI,GAAAnC,oCAAqC,CACvCmC,MAAA,EAAAF,KAAS,CAAA1B,KAAA,OAWP,IAAAL,aAAA,CAAA+B,KAAA,EAAAvC,eAAA,GACFyC,MAEK,GAAAxC,mCAAA,CAAAwC,MAAA,EAAAF,KAAA,CAAA1B,KAAA,OACT,IAAAL,aAAA,CAAA+B,KAAA,EAAArC,gBAAA,GAEAuC,MAAA,GAAAtC,oCAAkC,CAAAsC,MAAU,EAAAF,KAAA,CAAA1B,KAAA,OACtC,IAAAL,aAAoB,CAAA+B,KACtB,EAAAxC,qBAAiB,GAId0C,MAAA,GAAA3C,yCAAA,CAAA2C,MAAA,EAAAF,KAAA,CAAA1B,KAAA,OACT,IAAAL,aAAA,CAAA+B,KAAA,EAAAlC,oBAAA,G","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
function StackHeaderLeft(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderLeftPropsToOptions(options, props) {
|
|
5
|
+
return props.asChild ? {
|
|
6
|
+
...options,
|
|
7
|
+
headerLeft: () => props.children
|
|
8
|
+
} : options;
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
StackHeaderLeft,
|
|
12
|
+
appendStackHeaderLeftPropsToOptions
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=StackHeaderLeft.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/layouts/stack-utils/StackHeaderLeft.tsx"],
|
|
4
|
+
"mappings": "AAYO,SAAS,gBAAgB,QAA8B;AAC5D,SAAO;AACT;AAEO,SAAS,oCACd,SACA,OAC8B;AAC9B,SAAK,MAAM,UAIJ;AAAA,IACL,GAAG;AAAA,IACH,YAAY,MAAM,MAAM;AAAA,EAC1B,IANS;AAOX;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
function StackHeaderLeft(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderLeftPropsToOptions(options, props) {
|
|
5
|
+
return props.asChild ? {
|
|
6
|
+
...options,
|
|
7
|
+
headerLeft: () => props.children
|
|
8
|
+
} : options;
|
|
9
|
+
}
|
|
10
|
+
export { StackHeaderLeft, appendStackHeaderLeftPropsToOptions };
|
|
11
|
+
//# sourceMappingURL=StackHeaderLeft.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderLeft","_props","appendStackHeaderLeftPropsToOptions","options","props","asChild","headerLeft","children"],"sources":["../../../../src/layouts/stack-utils/StackHeaderLeft.tsx"],"sourcesContent":[null],"mappings":"AAYO,SAASA,gBAAgBC,MAAA,EAA8B;EAC5D,OAAO;AACT;AAEO,SAASC,oCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,OAAKA,KAAA,CAAMC,OAAA,GAIJ;IACL,GAAGF,OAAA;IACHG,UAAA,EAAYA,CAAA,KAAMF,KAAA,CAAMG;EAC1B,IANSJ,OAAA;AAOX","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function StackHeaderLeft(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderLeftPropsToOptions(options, props) {
|
|
5
|
+
return props.asChild ? {
|
|
6
|
+
...options,
|
|
7
|
+
headerLeft: function () {
|
|
8
|
+
return props.children;
|
|
9
|
+
}
|
|
10
|
+
} : options;
|
|
11
|
+
}
|
|
12
|
+
export { StackHeaderLeft, appendStackHeaderLeftPropsToOptions };
|
|
13
|
+
//# sourceMappingURL=StackHeaderLeft.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderLeft","_props","appendStackHeaderLeftPropsToOptions","options","props","asChild","headerLeft","children"],"sources":["../../../../src/layouts/stack-utils/StackHeaderLeft.tsx"],"sourcesContent":[null],"mappings":"AAYO,SAASA,gBAAgBC,MAAA,EAA8B;EAC5D,OAAO;AACT;AAEO,SAASC,oCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,OAAKA,KAAA,CAAMC,OAAA,GAIJ;IACL,GAAGF,OAAA;IACHG,UAAA,EAAY,SAAAA,CAAA,EAAM;MALX,OAAAF,KAAA,CAAAG,QAAA;IAOX","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
function StackHeaderRight(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderRightPropsToOptions(options, props) {
|
|
5
|
+
return props.asChild ? {
|
|
6
|
+
...options,
|
|
7
|
+
headerRight: () => props.children
|
|
8
|
+
} : options;
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
StackHeaderRight,
|
|
12
|
+
appendStackHeaderRightPropsToOptions
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=StackHeaderRight.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/layouts/stack-utils/StackHeaderRight.tsx"],
|
|
4
|
+
"mappings": "AAYO,SAAS,iBAAiB,QAA+B;AAC9D,SAAO;AACT;AAEO,SAAS,qCACd,SACA,OAC8B;AAC9B,SAAK,MAAM,UAIJ;AAAA,IACL,GAAG;AAAA,IACH,aAAa,MAAM,MAAM;AAAA,EAC3B,IANS;AAOX;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
function StackHeaderRight(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderRightPropsToOptions(options, props) {
|
|
5
|
+
return props.asChild ? {
|
|
6
|
+
...options,
|
|
7
|
+
headerRight: () => props.children
|
|
8
|
+
} : options;
|
|
9
|
+
}
|
|
10
|
+
export { StackHeaderRight, appendStackHeaderRightPropsToOptions };
|
|
11
|
+
//# sourceMappingURL=StackHeaderRight.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderRight","_props","appendStackHeaderRightPropsToOptions","options","props","asChild","headerRight","children"],"sources":["../../../../src/layouts/stack-utils/StackHeaderRight.tsx"],"sourcesContent":[null],"mappings":"AAYO,SAASA,iBAAiBC,MAAA,EAA+B;EAC9D,OAAO;AACT;AAEO,SAASC,qCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,OAAKA,KAAA,CAAMC,OAAA,GAIJ;IACL,GAAGF,OAAA;IACHG,WAAA,EAAaA,CAAA,KAAMF,KAAA,CAAMG;EAC3B,IANSJ,OAAA;AAOX","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function StackHeaderRight(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderRightPropsToOptions(options, props) {
|
|
5
|
+
return props.asChild ? {
|
|
6
|
+
...options,
|
|
7
|
+
headerRight: function () {
|
|
8
|
+
return props.children;
|
|
9
|
+
}
|
|
10
|
+
} : options;
|
|
11
|
+
}
|
|
12
|
+
export { StackHeaderRight, appendStackHeaderRightPropsToOptions };
|
|
13
|
+
//# sourceMappingURL=StackHeaderRight.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderRight","_props","appendStackHeaderRightPropsToOptions","options","props","asChild","headerRight","children"],"sources":["../../../../src/layouts/stack-utils/StackHeaderRight.tsx"],"sourcesContent":[null],"mappings":"AAYO,SAASA,iBAAiBC,MAAA,EAA+B;EAC9D,OAAO;AACT;AAEO,SAASC,qCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,OAAKA,KAAA,CAAMC,OAAA,GAIJ;IACL,GAAGF,OAAA;IACHG,WAAA,EAAa,SAAAA,CAAA,EAAM;MALZ,OAAAF,KAAA,CAAAG,QAAA;IAOX","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
function StackHeaderSearchBar(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderSearchBarPropsToOptions(options, props) {
|
|
5
|
+
return {
|
|
6
|
+
...options,
|
|
7
|
+
headerSearchBarOptions: props
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
StackHeaderSearchBar,
|
|
12
|
+
appendStackHeaderSearchBarPropsToOptions
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=StackHeaderSearchBar.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
function StackHeaderSearchBar(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderSearchBarPropsToOptions(options, props) {
|
|
5
|
+
return {
|
|
6
|
+
...options,
|
|
7
|
+
headerSearchBarOptions: props
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export { StackHeaderSearchBar, appendStackHeaderSearchBarPropsToOptions };
|
|
11
|
+
//# sourceMappingURL=StackHeaderSearchBar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderSearchBar","_props","appendStackHeaderSearchBarPropsToOptions","options","props","headerSearchBarOptions"],"sources":["../../../../src/layouts/stack-utils/StackHeaderSearchBar.tsx"],"sourcesContent":[null],"mappings":"AAQO,SAASA,qBAAqBC,MAAA,EAAmC;EACtE,OAAO;AACT;AAEO,SAASC,yCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,OAAO;IACL,GAAGD,OAAA;IACHE,sBAAA,EAAwBD;EAC1B;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
function StackHeaderSearchBar(_props) {
|
|
2
|
+
return null;
|
|
3
|
+
}
|
|
4
|
+
function appendStackHeaderSearchBarPropsToOptions(options, props) {
|
|
5
|
+
return {
|
|
6
|
+
...options,
|
|
7
|
+
headerSearchBarOptions: props
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export { StackHeaderSearchBar, appendStackHeaderSearchBarPropsToOptions };
|
|
11
|
+
//# sourceMappingURL=StackHeaderSearchBar.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StackHeaderSearchBar","_props","appendStackHeaderSearchBarPropsToOptions","options","props","headerSearchBarOptions"],"sources":["../../../../src/layouts/stack-utils/StackHeaderSearchBar.tsx"],"sourcesContent":[null],"mappings":"AAQO,SAASA,qBAAqBC,MAAA,EAAmC;EACtE,OAAO;AACT;AAEO,SAASC,yCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,OAAO;IACL,GAAGD,OAAA;IACHE,sBAAA,EAAwBD;EAC1B;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Platform, StyleSheet } from "react-native-web";
|
|
2
|
+
import { convertFontWeightToStringFontWeight } from "../../utils/style";
|
|
3
|
+
function StackHeaderTitle(_props) {
|
|
4
|
+
return null;
|
|
5
|
+
}
|
|
6
|
+
function appendStackHeaderTitlePropsToOptions(options, props) {
|
|
7
|
+
const flattenedStyle = StyleSheet.flatten(props.style), flattenedLargeStyle = StyleSheet.flatten(props.largeStyle), titleStyle = flattenedStyle ? {
|
|
8
|
+
...flattenedStyle,
|
|
9
|
+
...flattenedStyle?.fontWeight ? { fontWeight: convertFontWeightToStringFontWeight(flattenedStyle.fontWeight) } : {}
|
|
10
|
+
} : void 0, largeTitleStyle = flattenedLargeStyle ? {
|
|
11
|
+
...flattenedLargeStyle,
|
|
12
|
+
...flattenedLargeStyle?.fontWeight ? {
|
|
13
|
+
fontWeight: convertFontWeightToStringFontWeight(
|
|
14
|
+
flattenedLargeStyle.fontWeight
|
|
15
|
+
)
|
|
16
|
+
} : {}
|
|
17
|
+
} : void 0;
|
|
18
|
+
return {
|
|
19
|
+
...options,
|
|
20
|
+
title: props.children,
|
|
21
|
+
headerLargeTitle: props.large,
|
|
22
|
+
// Large titles on iOS require headerTransparent for proper scroll behavior
|
|
23
|
+
// Only set on iOS since headerLargeTitle is iOS-only
|
|
24
|
+
...props.large && Platform.OS === "ios" && { headerTransparent: !0 },
|
|
25
|
+
headerTitleAlign: flattenedStyle?.textAlign,
|
|
26
|
+
// Only set styles when explicitly configured to avoid interfering with native defaults
|
|
27
|
+
...titleStyle && Object.keys(titleStyle).length > 0 && { headerTitleStyle: titleStyle },
|
|
28
|
+
...largeTitleStyle && Object.keys(largeTitleStyle).length > 0 && {
|
|
29
|
+
headerLargeTitleStyle: largeTitleStyle
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export {
|
|
34
|
+
StackHeaderTitle,
|
|
35
|
+
appendStackHeaderTitlePropsToOptions
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=StackHeaderTitle.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/layouts/stack-utils/StackHeaderTitle.tsx"],
|
|
4
|
+
"mappings": "AACA,SAAS,UAAU,kBAAkD;AAErE,SAAS,2CAA2C;AAwB7C,SAAS,iBAAiB,QAA+B;AAC9D,SAAO;AACT;AAEO,SAAS,qCACd,SACA,OAC8B;AAC9B,QAAM,iBAAiB,WAAW,QAAQ,MAAM,KAAK,GAC/C,sBAAsB,WAAW,QAAQ,MAAM,UAAU,GAGzD,aAAa,iBACf;AAAA,IACE,GAAG;AAAA,IACH,GAAI,gBAAgB,aAChB,EAAE,YAAY,oCAAoC,eAAe,UAAU,EAAE,IAC7E,CAAC;AAAA,EACP,IACA,QAGE,kBAAkB,sBACpB;AAAA,IACE,GAAG;AAAA,IACH,GAAI,qBAAqB,aACrB;AAAA,MACE,YAAY;AAAA,QACV,oBAAoB;AAAA,MACtB;AAAA,IACF,IACA,CAAC;AAAA,EACP,IACA;AAEJ,SAAO;AAAA,IACL,GAAG;AAAA,IACH,OAAO,MAAM;AAAA,IACb,kBAAkB,MAAM;AAAA;AAAA;AAAA,IAGxB,GAAI,MAAM,SAAS,SAAS,OAAO,SAAS,EAAE,mBAAmB,GAAK;AAAA,IACtE,kBAAkB,gBAAgB;AAAA;AAAA,IAElC,GAAI,cACF,OAAO,KAAK,UAAU,EAAE,SAAS,KAAK,EAAE,kBAAkB,WAAW;AAAA,IACvE,GAAI,mBACF,OAAO,KAAK,eAAe,EAAE,SAAS,KAAK;AAAA,MACzC,uBAAuB;AAAA,IACzB;AAAA,EACJ;AACF;",
|
|
5
|
+
"names": []
|
|
6
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Platform, StyleSheet } from "react-native-web";
|
|
2
|
+
import { convertFontWeightToStringFontWeight } from "../../utils/style.mjs";
|
|
3
|
+
function StackHeaderTitle(_props) {
|
|
4
|
+
return null;
|
|
5
|
+
}
|
|
6
|
+
function appendStackHeaderTitlePropsToOptions(options, props) {
|
|
7
|
+
const flattenedStyle = StyleSheet.flatten(props.style),
|
|
8
|
+
flattenedLargeStyle = StyleSheet.flatten(props.largeStyle),
|
|
9
|
+
titleStyle = flattenedStyle ? {
|
|
10
|
+
...flattenedStyle,
|
|
11
|
+
...(flattenedStyle?.fontWeight ? {
|
|
12
|
+
fontWeight: convertFontWeightToStringFontWeight(flattenedStyle.fontWeight)
|
|
13
|
+
} : {})
|
|
14
|
+
} : void 0,
|
|
15
|
+
largeTitleStyle = flattenedLargeStyle ? {
|
|
16
|
+
...flattenedLargeStyle,
|
|
17
|
+
...(flattenedLargeStyle?.fontWeight ? {
|
|
18
|
+
fontWeight: convertFontWeightToStringFontWeight(flattenedLargeStyle.fontWeight)
|
|
19
|
+
} : {})
|
|
20
|
+
} : void 0;
|
|
21
|
+
return {
|
|
22
|
+
...options,
|
|
23
|
+
title: props.children,
|
|
24
|
+
headerLargeTitle: props.large,
|
|
25
|
+
// Large titles on iOS require headerTransparent for proper scroll behavior
|
|
26
|
+
// Only set on iOS since headerLargeTitle is iOS-only
|
|
27
|
+
...(props.large && Platform.OS === "ios" && {
|
|
28
|
+
headerTransparent: !0
|
|
29
|
+
}),
|
|
30
|
+
headerTitleAlign: flattenedStyle?.textAlign,
|
|
31
|
+
// Only set styles when explicitly configured to avoid interfering with native defaults
|
|
32
|
+
...(titleStyle && Object.keys(titleStyle).length > 0 && {
|
|
33
|
+
headerTitleStyle: titleStyle
|
|
34
|
+
}),
|
|
35
|
+
...(largeTitleStyle && Object.keys(largeTitleStyle).length > 0 && {
|
|
36
|
+
headerLargeTitleStyle: largeTitleStyle
|
|
37
|
+
})
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
export { StackHeaderTitle, appendStackHeaderTitlePropsToOptions };
|
|
41
|
+
//# sourceMappingURL=StackHeaderTitle.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","StyleSheet","convertFontWeightToStringFontWeight","StackHeaderTitle","_props","appendStackHeaderTitlePropsToOptions","options","props","flattenedStyle","flatten","style","flattenedLargeStyle","largeStyle","titleStyle","fontWeight","largeTitleStyle","title","children","headerLargeTitle","large","OS","headerTransparent","headerTitleAlign","textAlign","Object","keys","length","headerTitleStyle","headerLargeTitleStyle"],"sources":["../../../../src/layouts/stack-utils/StackHeaderTitle.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,QAAA,EAAUC,UAAA,QAAkD;AAErE,SAASC,mCAAA,QAA2C;AAwB7C,SAASC,iBAAiBC,MAAA,EAA+B;EAC9D,OAAO;AACT;AAEO,SAASC,qCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,MAAMC,cAAA,GAAiBP,UAAA,CAAWQ,OAAA,CAAQF,KAAA,CAAMG,KAAK;IAC/CC,mBAAA,GAAsBV,UAAA,CAAWQ,OAAA,CAAQF,KAAA,CAAMK,UAAU;IAGzDC,UAAA,GAAaL,cAAA,GACf;MACE,GAAGA,cAAA;MACH,IAAIA,cAAA,EAAgBM,UAAA,GAChB;QAAEA,UAAA,EAAYZ,mCAAA,CAAoCM,cAAA,CAAeM,UAAU;MAAE,IAC7E,CAAC;IACP,IACA;IAGEC,eAAA,GAAkBJ,mBAAA,GACpB;MACE,GAAGA,mBAAA;MACH,IAAIA,mBAAA,EAAqBG,UAAA,GACrB;QACEA,UAAA,EAAYZ,mCAAA,CACVS,mBAAA,CAAoBG,UACtB;MACF,IACA,CAAC;IACP,IACA;EAEJ,OAAO;IACL,GAAGR,OAAA;IACHU,KAAA,EAAOT,KAAA,CAAMU,QAAA;IACbC,gBAAA,EAAkBX,KAAA,CAAMY,KAAA;IAAA;IAAA;IAGxB,IAAIZ,KAAA,CAAMY,KAAA,IAASnB,QAAA,CAASoB,EAAA,KAAO,SAAS;MAAEC,iBAAA,EAAmB;IAAK;IACtEC,gBAAA,EAAkBd,cAAA,EAAgBe,SAAA;IAAA;IAElC,IAAIV,UAAA,IACFW,MAAA,CAAOC,IAAA,CAAKZ,UAAU,EAAEa,MAAA,GAAS,KAAK;MAAEC,gBAAA,EAAkBd;IAAW;IACvE,IAAIE,eAAA,IACFS,MAAA,CAAOC,IAAA,CAAKV,eAAe,EAAEW,MAAA,GAAS,KAAK;MACzCE,qBAAA,EAAuBb;IACzB;EACJ;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Platform, StyleSheet } from "react-native";
|
|
2
|
+
import { convertFontWeightToStringFontWeight } from "../../utils/style.native.js";
|
|
3
|
+
function StackHeaderTitle(_props) {
|
|
4
|
+
return null;
|
|
5
|
+
}
|
|
6
|
+
function appendStackHeaderTitlePropsToOptions(options, props) {
|
|
7
|
+
var flattenedStyle = StyleSheet.flatten(props.style),
|
|
8
|
+
flattenedLargeStyle = StyleSheet.flatten(props.largeStyle),
|
|
9
|
+
titleStyle = flattenedStyle ? {
|
|
10
|
+
...flattenedStyle,
|
|
11
|
+
...(flattenedStyle?.fontWeight ? {
|
|
12
|
+
fontWeight: convertFontWeightToStringFontWeight(flattenedStyle.fontWeight)
|
|
13
|
+
} : {})
|
|
14
|
+
} : void 0,
|
|
15
|
+
largeTitleStyle = flattenedLargeStyle ? {
|
|
16
|
+
...flattenedLargeStyle,
|
|
17
|
+
...(flattenedLargeStyle?.fontWeight ? {
|
|
18
|
+
fontWeight: convertFontWeightToStringFontWeight(flattenedLargeStyle.fontWeight)
|
|
19
|
+
} : {})
|
|
20
|
+
} : void 0;
|
|
21
|
+
return {
|
|
22
|
+
...options,
|
|
23
|
+
title: props.children,
|
|
24
|
+
headerLargeTitle: props.large,
|
|
25
|
+
// Large titles on iOS require headerTransparent for proper scroll behavior
|
|
26
|
+
// Only set on iOS since headerLargeTitle is iOS-only
|
|
27
|
+
...(props.large && Platform.OS === "ios" && {
|
|
28
|
+
headerTransparent: !0
|
|
29
|
+
}),
|
|
30
|
+
headerTitleAlign: flattenedStyle?.textAlign,
|
|
31
|
+
// Only set styles when explicitly configured to avoid interfering with native defaults
|
|
32
|
+
...(titleStyle && Object.keys(titleStyle).length > 0 && {
|
|
33
|
+
headerTitleStyle: titleStyle
|
|
34
|
+
}),
|
|
35
|
+
...(largeTitleStyle && Object.keys(largeTitleStyle).length > 0 && {
|
|
36
|
+
headerLargeTitleStyle: largeTitleStyle
|
|
37
|
+
})
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
export { StackHeaderTitle, appendStackHeaderTitlePropsToOptions };
|
|
41
|
+
//# sourceMappingURL=StackHeaderTitle.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","StyleSheet","convertFontWeightToStringFontWeight","StackHeaderTitle","_props","appendStackHeaderTitlePropsToOptions","options","props","flattenedStyle","flatten","style","flattenedLargeStyle","largeStyle","titleStyle","fontWeight","largeTitleStyle","title","children","headerLargeTitle","large","OS","headerTransparent","headerTitleAlign","textAlign","Object","keys","length","headerTitleStyle"],"sources":["../../../../src/layouts/stack-utils/StackHeaderTitle.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,QAAA,EAAUC,UAAA,QAAkD;AAErE,SAASC,mCAAA,QAA2C;AAwB7C,SAASC,iBAAiBC,MAAA,EAA+B;EAC9D,OAAO;AACT;AAEO,SAASC,qCACdC,OAAA,EACAC,KAAA,EAC8B;EAC9B,IAAAC,cAAM,GAAAP,UAAiB,CAAAQ,OAAW,CAAAF,KAAQ,CAAAG,KAAM;IAAKC,mBAC/C,GAAAV,UAAsB,CAAAQ,OAAW,CAAAF,KAAQ,CAAAK,UAAM;IAAUC,UAGzD,GAAAL,cAAa;MAEb,GAAGA,cAAA;MACH,IAAIA,cAAA,EAAgBM,UAAA,GAChB;QAGNA,UAGE,EAAAZ,mCAAkB,CACpBM,cAAA,CAAAM,UAAA;MACE,IAAG;IAAA,IACH,KAAI;IAAAC,eAAqB,GAAAJ,mBACrB;MAAA,GACEA,mBAAY;MAAA,IAAAA,mBACV,EAAoBG,UAAA;QACtBA,UAAA,EAAAZ,mCAAA,CAAAS,mBAAA,CAAAG,UAAA;MACF,IACA,CAAC;IACP,IACA;EAEJ,OAAO;IACL,GAAGR,OAAA;IACHU,KAAA,EAAOT,KAAA,CAAMU,QAAA;IACbC,gBAAA,EAAkBX,KAAA,CAAMY,KAAA;IAAA;IAAA;IAGxB,IAAIZ,KAAA,CAAMY,KAAA,IAASnB,QAAA,CAASoB,EAAA,KAAO,SAAS;MAC5CC,iBAAkB;IAAgB;IAElCC,gBAAI,EACFd,cAAY,EAAAe,SAAY;IAC1B;IAC6C,IACzCV,UAAA,IAAAW,MAAA,CAAAC,IAAuB,CAAAZ,UAAA,EAAAa,MAAA;MACzBC,gBAAA,EAAAd;IACJ;IACF,IAAAE,eAAA,IAAAS,MAAA,CAAAC,IAAA,CAAAV,eAAA,EAAAW,MAAA","ignoreList":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { Children, isValidElement, useMemo } from "react";
|
|
3
|
+
import {
|
|
4
|
+
StackHeaderComponent,
|
|
5
|
+
appendStackHeaderPropsToOptions
|
|
6
|
+
} from "./StackHeaderComponent";
|
|
7
|
+
import { Screen } from "../../views/Screen";
|
|
8
|
+
import { jsx } from "react/jsx-runtime";
|
|
9
|
+
function StackScreen({ children, options, ...rest }) {
|
|
10
|
+
const updatedOptions = useMemo(
|
|
11
|
+
() => appendScreenStackPropsToOptions(options ?? {}, {
|
|
12
|
+
children
|
|
13
|
+
}),
|
|
14
|
+
[options, children]
|
|
15
|
+
);
|
|
16
|
+
return /* @__PURE__ */ jsx(Screen, { ...rest, options: updatedOptions });
|
|
17
|
+
}
|
|
18
|
+
function appendScreenStackPropsToOptions(options, props) {
|
|
19
|
+
let updatedOptions = { ...options, ...props.options };
|
|
20
|
+
function appendChildOptions(child, options2) {
|
|
21
|
+
return child.type === StackHeaderComponent ? appendStackHeaderPropsToOptions(options2, child.props) : (console.warn(
|
|
22
|
+
`Warning: Unknown child element passed to Stack.Screen: ${child.type.name ?? child.type}`
|
|
23
|
+
), options2);
|
|
24
|
+
}
|
|
25
|
+
return Children.forEach(props.children, (child) => {
|
|
26
|
+
isValidElement(child) && (updatedOptions = appendChildOptions(child, updatedOptions));
|
|
27
|
+
}), updatedOptions;
|
|
28
|
+
}
|
|
29
|
+
export {
|
|
30
|
+
StackScreen,
|
|
31
|
+
appendScreenStackPropsToOptions
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=StackScreen.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/layouts/stack-utils/StackScreen.tsx"],
|
|
4
|
+
"mappings": ";AAGA,SAAS,UAAU,gBAAgB,eAAuC;AAE1E;AAAA,EACE;AAAA,EACA;AAAA,OAEK;AACP,SAAS,cAAc;AA4Bd;AARF,SAAS,YAAY,EAAE,UAAU,SAAS,GAAG,KAAK,GAAqB;AAC5E,QAAM,iBAAiB;AAAA,IACrB,MACE,gCAAgC,WAAW,CAAC,GAAG;AAAA,MAC7C;AAAA,IACF,CAAC;AAAA,IACH,CAAC,SAAS,QAAQ;AAAA,EACpB;AACA,SAAO,oBAAC,UAAQ,GAAG,MAAM,SAAS,gBAAgB;AACpD;AAEO,SAAS,gCACd,SACA,OAC8B;AAC9B,MAAI,iBAAiB,EAAE,GAAG,SAAS,GAAG,MAAM,QAAQ;AAEpD,WAAS,mBACP,OACAA,UACA;AACA,WAAI,MAAM,SAAS,uBACV,gCAAgCA,UAAS,MAAM,KAAyB,KAE/E,QAAQ;AAAA,MACN,0DAA2D,MAAM,KAA0B,QAAQ,MAAM,IAAI;AAAA,IAC/G,GAEKA;AAAA,EACT;AAEA,kBAAS,QAAQ,MAAM,UAAU,CAAC,UAAU;AAC1C,IAAI,eAAe,KAAK,MACtB,iBAAiB,mBAAmB,OAAO,cAAc;AAAA,EAE7D,CAAC,GAEM;AACT;",
|
|
5
|
+
"names": ["options"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { Children, isValidElement, useMemo } from "react";
|
|
4
|
+
import { StackHeaderComponent, appendStackHeaderPropsToOptions } from "./StackHeaderComponent.mjs";
|
|
5
|
+
import { Screen } from "../../views/Screen.mjs";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
function StackScreen({
|
|
8
|
+
children,
|
|
9
|
+
options,
|
|
10
|
+
...rest
|
|
11
|
+
}) {
|
|
12
|
+
const updatedOptions = useMemo(() => appendScreenStackPropsToOptions(options ?? {}, {
|
|
13
|
+
children
|
|
14
|
+
}), [options, children]);
|
|
15
|
+
return /* @__PURE__ */jsx(Screen, {
|
|
16
|
+
...rest,
|
|
17
|
+
options: updatedOptions
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function appendScreenStackPropsToOptions(options, props) {
|
|
21
|
+
let updatedOptions = {
|
|
22
|
+
...options,
|
|
23
|
+
...props.options
|
|
24
|
+
};
|
|
25
|
+
function appendChildOptions(child, options2) {
|
|
26
|
+
return child.type === StackHeaderComponent ? appendStackHeaderPropsToOptions(options2, child.props) : (console.warn(`Warning: Unknown child element passed to Stack.Screen: ${child.type.name ?? child.type}`), options2);
|
|
27
|
+
}
|
|
28
|
+
return Children.forEach(props.children, child => {
|
|
29
|
+
isValidElement(child) && (updatedOptions = appendChildOptions(child, updatedOptions));
|
|
30
|
+
}), updatedOptions;
|
|
31
|
+
}
|
|
32
|
+
export { StackScreen, appendScreenStackPropsToOptions };
|
|
33
|
+
//# sourceMappingURL=StackScreen.mjs.map
|