react-native-terra-ui 0.11.11 → 0.11.13
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/CHANGELOG.md +16 -0
- package/TerraUI.podspec +16 -0
- package/ios/TerraHeaderInsetsComponentView.h +4 -0
- package/ios/TerraHeaderInsetsComponentView.mm +93 -0
- package/lib/module/components/header/hooks/use-header-color.js +16 -0
- package/lib/module/components/header/hooks/use-header-color.js.map +1 -0
- package/lib/module/components/header/hooks/use-large-title-header.js +81 -0
- package/lib/module/components/header/hooks/use-large-title-header.js.map +1 -0
- package/lib/module/components/header/parts/HeaderAccessory.js +21 -6
- package/lib/module/components/header/parts/HeaderAccessory.js.map +1 -1
- package/lib/module/components/header/parts/HeaderBar.js +140 -0
- package/lib/module/components/header/parts/HeaderBar.js.map +1 -0
- package/lib/module/components/header/parts/HeaderGradientOverlay.js +5 -3
- package/lib/module/components/header/parts/HeaderGradientOverlay.js.map +1 -1
- package/lib/module/components/header/parts/HeaderSurface.js +8 -14
- package/lib/module/components/header/parts/HeaderSurface.js.map +1 -1
- package/lib/module/components/header/parts/HeaderWindowInsets.ios.js +29 -0
- package/lib/module/components/header/parts/HeaderWindowInsets.ios.js.map +1 -0
- package/lib/module/components/header/parts/HeaderWindowInsets.js +7 -0
- package/lib/module/components/header/parts/HeaderWindowInsets.js.map +1 -0
- package/lib/module/components/header/variants/LargeTitleHeader/index.js +51 -386
- package/lib/module/components/header/variants/LargeTitleHeader/index.js.map +1 -1
- package/lib/module/components/header/variants/LargeTitleHeader/parts/LargeTitleContent.js +72 -0
- package/lib/module/components/header/variants/LargeTitleHeader/parts/LargeTitleContent.js.map +1 -0
- package/lib/module/components/header/variants/TitleHeader/index.js +32 -160
- package/lib/module/components/header/variants/TitleHeader/index.js.map +1 -1
- package/lib/module/components/surface/Surface.js +2 -0
- package/lib/module/components/surface/Surface.js.map +1 -1
- package/lib/module/specs/TerraHeaderInsetsNativeComponent.ts +12 -0
- package/lib/typescript/src/components/header/hooks/use-header-color.d.ts +4 -0
- package/lib/typescript/src/components/header/hooks/use-header-color.d.ts.map +1 -0
- package/lib/typescript/src/components/header/hooks/use-large-title-header.d.ts +36 -0
- package/lib/typescript/src/components/header/hooks/use-large-title-header.d.ts.map +1 -0
- package/lib/typescript/src/components/header/parts/HeaderAccessory.d.ts +8 -5
- package/lib/typescript/src/components/header/parts/HeaderAccessory.d.ts.map +1 -1
- package/lib/typescript/src/components/header/parts/HeaderBar.d.ts +17 -0
- package/lib/typescript/src/components/header/parts/HeaderBar.d.ts.map +1 -0
- package/lib/typescript/src/components/header/parts/HeaderGradientOverlay.d.ts +3 -1
- package/lib/typescript/src/components/header/parts/HeaderGradientOverlay.d.ts.map +1 -1
- package/lib/typescript/src/components/header/parts/HeaderSurface.d.ts +5 -9
- package/lib/typescript/src/components/header/parts/HeaderSurface.d.ts.map +1 -1
- package/lib/typescript/src/components/header/parts/HeaderWindowInsets.d.ts +9 -0
- package/lib/typescript/src/components/header/parts/HeaderWindowInsets.d.ts.map +1 -0
- package/lib/typescript/src/components/header/parts/HeaderWindowInsets.ios.d.ts +3 -0
- package/lib/typescript/src/components/header/parts/HeaderWindowInsets.ios.d.ts.map +1 -0
- package/lib/typescript/src/components/header/variants/LargeTitleHeader/index.d.ts +3 -23
- package/lib/typescript/src/components/header/variants/LargeTitleHeader/index.d.ts.map +1 -1
- package/lib/typescript/src/components/header/variants/LargeTitleHeader/parts/LargeTitleContent.d.ts +11 -0
- package/lib/typescript/src/components/header/variants/LargeTitleHeader/parts/LargeTitleContent.d.ts.map +1 -0
- package/lib/typescript/src/components/header/variants/TitleHeader/index.d.ts +3 -19
- package/lib/typescript/src/components/header/variants/TitleHeader/index.d.ts.map +1 -1
- package/lib/typescript/src/components/surface/Surface.d.ts.map +1 -1
- package/lib/typescript/src/specs/TerraHeaderInsetsNativeComponent.d.ts +10 -0
- package/lib/typescript/src/specs/TerraHeaderInsetsNativeComponent.d.ts.map +1 -0
- package/package.json +14 -1
- package/react-native.config.js +7 -0
- package/src/components/header/hooks/use-header-color.ts +14 -0
- package/src/components/header/hooks/use-large-title-header.ts +78 -0
- package/src/components/header/parts/HeaderAccessory.tsx +26 -7
- package/src/components/header/parts/HeaderBar.tsx +139 -0
- package/src/components/header/parts/HeaderGradientOverlay.tsx +9 -3
- package/src/components/header/parts/HeaderSurface.tsx +11 -17
- package/src/components/header/parts/HeaderWindowInsets.ios.tsx +24 -0
- package/src/components/header/parts/HeaderWindowInsets.tsx +8 -0
- package/src/components/header/variants/LargeTitleHeader/index.tsx +44 -369
- package/src/components/header/variants/LargeTitleHeader/parts/LargeTitleContent.tsx +88 -0
- package/src/components/header/variants/TitleHeader/index.tsx +32 -146
- package/src/components/surface/Surface.tsx +2 -1
- package/src/specs/TerraHeaderInsetsNativeComponent.ts +12 -0
|
@@ -1,101 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { View } from "react-native-unistyles/components/native/View";
|
|
4
|
-
import {
|
|
5
|
-
import { useCallback, useEffect, useState } from "react";
|
|
6
|
-
import Animated, { interpolate, useAnimatedStyle, useSharedValue } from "react-native-reanimated";
|
|
7
|
-
import { StyleSheet, useUnistyles } from "react-native-unistyles";
|
|
8
|
-
import { resolveThemeColor } from "../../../../utils/resolve-theme-color.js";
|
|
9
|
-
import { FONT_WEIGHT_VALUE } from "../../../../utils/typography.js";
|
|
4
|
+
import { StyleSheet } from "react-native-unistyles";
|
|
10
5
|
import { Portal } from "../../../portal/index.js";
|
|
11
6
|
import { useHeaderBackground } from "../../../screen/parts/ScreenHeaderAppearance.js";
|
|
12
|
-
import { SCREEN_HEADER_PORTAL_HOST
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
7
|
+
import { SCREEN_HEADER_PORTAL_HOST } from "../../../screen/ScreenContext.js";
|
|
8
|
+
import { useHeaderColor } from "../../hooks/use-header-color.js";
|
|
9
|
+
import { useLargeTitleHeader } from "../../hooks/use-large-title-header.js";
|
|
15
10
|
import { HeaderAccessory, HeaderAccessorySpacer } from "../../parts/HeaderAccessory.js";
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import { jsx as _jsx, jsxs as _jsxs
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
/** Compact title offset (px) when the large title is fully expanded. */
|
|
22
|
-
const COMPACT_TITLE_SLIDE_OFFSET = 8;
|
|
23
|
-
/** Large title offset (px) when fully collapsed. */
|
|
24
|
-
const LARGE_TITLE_SLIDE_OFFSET = 6;
|
|
25
|
-
function LargeTitlePortalContent({
|
|
26
|
-
title,
|
|
27
|
-
overline,
|
|
28
|
-
subtitle,
|
|
29
|
-
hasAccessoryBelow,
|
|
30
|
-
onHeightChange
|
|
31
|
-
}) {
|
|
32
|
-
const {
|
|
33
|
-
theme
|
|
34
|
-
} = useUnistyles();
|
|
35
|
-
const {
|
|
36
|
-
scrollY
|
|
37
|
-
} = useScreen();
|
|
38
|
-
const headerCollapseHeight = theme.layout.header.height;
|
|
39
|
-
const largeTitleAnimatedStyle = useAnimatedStyle(() => {
|
|
40
|
-
const height = headerCollapseHeight;
|
|
41
|
-
if (height <= 0) {
|
|
42
|
-
return {
|
|
43
|
-
opacity: 1,
|
|
44
|
-
transform: [{
|
|
45
|
-
translateY: 0
|
|
46
|
-
}]
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
return {
|
|
50
|
-
opacity: interpolate(scrollY.value, [0, height], [1, 0], "clamp"),
|
|
51
|
-
transform: [{
|
|
52
|
-
translateY: interpolate(scrollY.value, [0, height], [0, -LARGE_TITLE_SLIDE_OFFSET], "clamp")
|
|
53
|
-
}]
|
|
54
|
-
};
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
// Layout height excludes the collapse transform.
|
|
58
|
-
const handleLayout = event => onHeightChange?.(event.nativeEvent.layout.height);
|
|
59
|
-
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
60
|
-
style: [styles.portalContent(hasAccessoryBelow), largeTitleAnimatedStyle],
|
|
61
|
-
onLayout: handleLayout,
|
|
62
|
-
children: [!!overline && /*#__PURE__*/_jsx(Text, {
|
|
63
|
-
style: styles.overline,
|
|
64
|
-
maxFontSizeMultiplier: theme.typography.variants["label-sm"].maxFontSizeMultiplier,
|
|
65
|
-
children: overline
|
|
66
|
-
}), isTextTitle(title) ? /*#__PURE__*/_jsx(Text, {
|
|
67
|
-
style: styles.largeTitle,
|
|
68
|
-
maxFontSizeMultiplier: theme.typography.variants["headline-lg"].maxFontSizeMultiplier,
|
|
69
|
-
children: title
|
|
70
|
-
}) : title, !!subtitle && /*#__PURE__*/_jsx(Text, {
|
|
71
|
-
style: styles.subtitle,
|
|
72
|
-
maxFontSizeMultiplier: theme.typography.variants["body-lg"].maxFontSizeMultiplier,
|
|
73
|
-
children: subtitle
|
|
74
|
-
})]
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* iOS-style collapsing large-title header. The large title is injected (via the
|
|
80
|
-
* `Screen`'s portal) into the top of the scroll content, so it scrolls away
|
|
81
|
-
* naturally; the compact title cross-fades over the theme header height.
|
|
82
|
-
* The top safe area and bar overlay fade from transparent when expanded to
|
|
83
|
-
* the header background when collapsed. The large-title content stays transparent.
|
|
84
|
-
* Snapping is opt-in through the scroll container's snapToOffsets.
|
|
85
|
-
*
|
|
86
|
-
* Must be used inside a `Screen` with a `Screen.ScrollView` or `Screen.List`.
|
|
87
|
-
*
|
|
88
|
-
* @example
|
|
89
|
-
* ```tsx
|
|
90
|
-
* <Screen.Header>
|
|
91
|
-
* <Header.LargeTitle
|
|
92
|
-
* overline="Today"
|
|
93
|
-
* title="Meditate"
|
|
94
|
-
* subtitle="Good morning"
|
|
95
|
-
* />
|
|
96
|
-
* </Screen.Header>
|
|
97
|
-
* ```
|
|
98
|
-
*/
|
|
11
|
+
import { HeaderBar } from "../../parts/HeaderBar.js";
|
|
12
|
+
import { LargeTitleContent } from "./parts/LargeTitleContent.js";
|
|
13
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
/** Collapsing header. The expanded title lives in scroll content; the bar and accessory overlay it. */
|
|
99
15
|
export function LargeTitleHeader({
|
|
100
16
|
title,
|
|
101
17
|
overline,
|
|
@@ -107,208 +23,55 @@ export function LargeTitleHeader({
|
|
|
107
23
|
accessory,
|
|
108
24
|
accessoryPadding = "x",
|
|
109
25
|
accessoryBehavior = "sticky",
|
|
110
|
-
dismissAction = "none",
|
|
111
|
-
navigation,
|
|
112
|
-
onDismiss,
|
|
113
26
|
titleAlignment = "center",
|
|
114
27
|
isLargeTitleHidden = false,
|
|
115
28
|
background,
|
|
116
|
-
bg
|
|
29
|
+
bg,
|
|
30
|
+
...dismissProps
|
|
117
31
|
}) {
|
|
118
|
-
const
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
background: screenBackground,
|
|
124
|
-
setHeaderAccessoryHeight,
|
|
125
|
-
contentTopPadding
|
|
126
|
-
} = useScreen();
|
|
127
|
-
const colorToken = background ?? bg;
|
|
128
|
-
const bgColor = (colorToken ? resolveThemeColor(colorToken, theme) : screenBackground) ?? theme.color["surface.canvas"];
|
|
129
|
-
const leadingContent = leadingActions !== undefined ? leadingActions : LeftToolbar;
|
|
130
|
-
const trailingContent = trailingActions !== undefined ? trailingActions : RightToolbar;
|
|
131
|
-
const isSticky = accessoryBehavior === "sticky" && !isLargeTitleHidden;
|
|
132
|
-
const hasStickyAccessory = isSticky && accessory != null;
|
|
133
|
-
// Sticky accessories reserve space below the large title; pinned ones add top padding.
|
|
134
|
-
const [stickyAccessoryHeight, setStickyAccessoryHeight] = useState(0);
|
|
135
|
-
const [largeTitleHeight, setLargeTitleHeight] = useState(0);
|
|
136
|
-
const isLargeTitleHiddenValue = useSharedValue(isLargeTitleHidden);
|
|
137
|
-
const handleAccessoryHeightChange = useCallback(height => {
|
|
138
|
-
if (isSticky) setStickyAccessoryHeight(Math.max(0, Math.round(height)));else setHeaderAccessoryHeight(height);
|
|
139
|
-
}, [isSticky, setHeaderAccessoryHeight]);
|
|
140
|
-
const handleLargeTitleHeightChange = useCallback(height => {
|
|
141
|
-
setLargeTitleHeight(Math.max(0, Math.round(height)));
|
|
142
|
-
}, []);
|
|
143
|
-
|
|
144
|
-
// Rest below the title, including the scroll container's top padding.
|
|
145
|
-
const stickyAccessoryOffset = Math.max(0, contentTopPadding + largeTitleHeight - theme.layout.header.height);
|
|
146
|
-
|
|
147
|
-
// Zero translation places the accessory directly below the compact bar.
|
|
148
|
-
const stickyAccessoryStyle = useAnimatedStyle(() => {
|
|
149
|
-
if (isLargeTitleHiddenValue.value) {
|
|
150
|
-
return {
|
|
151
|
-
transform: [{
|
|
152
|
-
translateY: 0
|
|
153
|
-
}]
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
return {
|
|
157
|
-
transform: [{
|
|
158
|
-
translateY: Math.max(0, stickyAccessoryOffset - scrollY.value)
|
|
159
|
-
}]
|
|
160
|
-
};
|
|
32
|
+
const color = useHeaderColor(background ?? bg);
|
|
33
|
+
const layout = useLargeTitleHeader({
|
|
34
|
+
hasAccessory: accessory != null,
|
|
35
|
+
accessoryBehavior,
|
|
36
|
+
isLargeTitleHidden
|
|
161
37
|
});
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
// Animate the header surface's opacity: 0 (expanded) → 1 (collapsed).
|
|
179
|
-
const surfaceOpacityStyle = useAnimatedStyle(() => {
|
|
180
|
-
if (isLargeTitleHiddenValue.value) {
|
|
181
|
-
return {
|
|
182
|
-
opacity: 1
|
|
183
|
-
};
|
|
184
|
-
}
|
|
185
|
-
const height = hasStickyAccessory ? stickyAccessoryOffset : headerCollapseHeight;
|
|
186
|
-
if (height <= 0) {
|
|
187
|
-
return {
|
|
188
|
-
opacity: hasStickyAccessory ? 1 : 0
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
return {
|
|
192
|
-
opacity: interpolate(scrollY.value, [0, height], [0, 1], "clamp")
|
|
193
|
-
};
|
|
194
|
-
});
|
|
195
|
-
useHeaderBackground(bgColor, surfaceOpacityStyle);
|
|
196
|
-
const compactTitleAnimatedStyle = useAnimatedStyle(() => {
|
|
197
|
-
if (isLargeTitleHiddenValue.value) {
|
|
198
|
-
return {
|
|
199
|
-
opacity: 1,
|
|
200
|
-
transform: [{
|
|
201
|
-
translateY: 0
|
|
202
|
-
}]
|
|
203
|
-
};
|
|
204
|
-
}
|
|
205
|
-
const height = headerCollapseHeight;
|
|
206
|
-
if (height <= 0) {
|
|
207
|
-
return {
|
|
208
|
-
opacity: 0,
|
|
209
|
-
transform: [{
|
|
210
|
-
translateY: COMPACT_TITLE_SLIDE_OFFSET
|
|
211
|
-
}]
|
|
212
|
-
};
|
|
213
|
-
}
|
|
214
|
-
return {
|
|
215
|
-
opacity: interpolate(scrollY.value, [0, height], [0, 1], "clamp"),
|
|
216
|
-
transform: [{
|
|
217
|
-
translateY: interpolate(scrollY.value, [0, height], [COMPACT_TITLE_SLIDE_OFFSET, 0], "clamp")
|
|
218
|
-
}]
|
|
219
|
-
};
|
|
220
|
-
});
|
|
221
|
-
useEffect(() => {
|
|
222
|
-
isLargeTitleHiddenValue.value = isLargeTitleHidden;
|
|
223
|
-
}, [isLargeTitleHidden, isLargeTitleHiddenValue]);
|
|
224
|
-
const leading = dismissAction === "back" ? /*#__PURE__*/_jsxs(_Fragment, {
|
|
225
|
-
children: [/*#__PURE__*/_jsx(HeaderDismissButton, {
|
|
226
|
-
dismissAction: dismissAction,
|
|
227
|
-
navigation: navigation,
|
|
228
|
-
onDismiss: onDismiss
|
|
229
|
-
}), leadingContent]
|
|
230
|
-
}) : leadingContent;
|
|
231
|
-
const trailing = dismissAction === "close" ? /*#__PURE__*/_jsxs(_Fragment, {
|
|
232
|
-
children: [trailingContent, /*#__PURE__*/_jsx(HeaderDismissButton, {
|
|
233
|
-
dismissAction: dismissAction,
|
|
234
|
-
navigation: navigation,
|
|
235
|
-
onDismiss: onDismiss
|
|
38
|
+
useHeaderBackground(color, layout.surfaceStyle);
|
|
39
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
40
|
+
style: styles.container(layout.accessoryOffset),
|
|
41
|
+
pointerEvents: "box-none",
|
|
42
|
+
children: [!isLargeTitleHidden && /*#__PURE__*/_jsxs(Portal, {
|
|
43
|
+
hostName: SCREEN_HEADER_PORTAL_HOST,
|
|
44
|
+
children: [/*#__PURE__*/_jsx(LargeTitleContent, {
|
|
45
|
+
title: title,
|
|
46
|
+
overline: overline,
|
|
47
|
+
subtitle: subtitle,
|
|
48
|
+
hasAccessoryBelow: layout.isSticky,
|
|
49
|
+
onHeightChange: layout.setLargeTitleHeight,
|
|
50
|
+
animatedStyle: layout.largeTitleStyle
|
|
51
|
+
}), layout.isSticky && /*#__PURE__*/_jsx(HeaderAccessorySpacer, {
|
|
52
|
+
height: layout.reservedAccessoryHeight
|
|
236
53
|
})]
|
|
237
|
-
})
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
}), hasStickyAccessory && /*#__PURE__*/_jsx(Animated.View, {
|
|
256
|
-
style: [styles.stickySurface, stickySurfaceStyle],
|
|
257
|
-
pointerEvents: "none",
|
|
258
|
-
children: /*#__PURE__*/_jsx(HeaderSurface, {
|
|
259
|
-
color: bgColor,
|
|
260
|
-
animatedStyle: surfaceOpacityStyle
|
|
261
|
-
})
|
|
262
|
-
}), /*#__PURE__*/_jsxs(View, {
|
|
263
|
-
style: styles.barGroup,
|
|
264
|
-
children: [!hasStickyAccessory && /*#__PURE__*/_jsx(HeaderSurface, {
|
|
265
|
-
color: bgColor,
|
|
266
|
-
animatedStyle: surfaceOpacityStyle
|
|
267
|
-
}), /*#__PURE__*/_jsxs(View, {
|
|
268
|
-
style: styles.bar,
|
|
269
|
-
children: [leading != null && /*#__PURE__*/_jsx(Toolbar, {
|
|
270
|
-
children: leading
|
|
271
|
-
}), /*#__PURE__*/_jsx(Animated.View, {
|
|
272
|
-
style: [styles.titleContainer, compactTitleAnimatedStyle],
|
|
273
|
-
pointerEvents: isCustomTitle(title) ? "box-none" : "none",
|
|
274
|
-
children: isTextTitle(title) ? /*#__PURE__*/_jsx(AnimatedText, {
|
|
275
|
-
style: styles.compactTitle,
|
|
276
|
-
maxFontSizeMultiplier: theme.typography.variants["title-md"].maxFontSizeMultiplier,
|
|
277
|
-
children: title
|
|
278
|
-
}) : title
|
|
279
|
-
}), trailing != null && /*#__PURE__*/_jsx(Toolbar, {
|
|
280
|
-
style: styles.trailing,
|
|
281
|
-
children: trailing
|
|
282
|
-
})]
|
|
283
|
-
}), accessory != null && !isSticky && /*#__PURE__*/_jsx(HeaderAccessory, {
|
|
284
|
-
padding: accessoryPadding,
|
|
285
|
-
onHeightChange: handleAccessoryHeightChange,
|
|
286
|
-
children: accessory
|
|
287
|
-
})]
|
|
288
|
-
}), accessory != null && isSticky && /*#__PURE__*/_jsxs(Animated.View, {
|
|
289
|
-
style: [styles.stickyAccessory, stickyAccessoryStyle],
|
|
290
|
-
children: [/*#__PURE__*/_jsx(HeaderSurface, {
|
|
291
|
-
color: screenBackground ?? theme.color["surface.canvas"],
|
|
292
|
-
animatedStyle: accessorySurfaceStyle,
|
|
293
|
-
solid: true
|
|
294
|
-
}), /*#__PURE__*/_jsx(HeaderAccessory, {
|
|
295
|
-
padding: accessoryPadding,
|
|
296
|
-
onHeightChange: handleAccessoryHeightChange,
|
|
297
|
-
children: accessory
|
|
298
|
-
})]
|
|
299
|
-
})]
|
|
300
|
-
})
|
|
301
|
-
);
|
|
302
|
-
}
|
|
54
|
+
}), /*#__PURE__*/_jsx(HeaderBar, {
|
|
55
|
+
...dismissProps,
|
|
56
|
+
title: title,
|
|
57
|
+
titleAlignment: titleAlignment,
|
|
58
|
+
color: color,
|
|
59
|
+
surfaceStyle: layout.surfaceStyle,
|
|
60
|
+
titleStyle: layout.compactTitleStyle,
|
|
61
|
+
leading: leadingActions !== undefined ? leadingActions : LeftToolbar,
|
|
62
|
+
trailing: trailingActions !== undefined ? trailingActions : RightToolbar
|
|
63
|
+
}), accessory != null && /*#__PURE__*/_jsx(HeaderAccessory, {
|
|
64
|
+
padding: accessoryPadding,
|
|
65
|
+
color: color,
|
|
66
|
+
surfaceStyle: layout.surfaceStyle,
|
|
67
|
+
style: layout.accessoryStyle,
|
|
68
|
+
onHeightChange: layout.setAccessoryHeight,
|
|
69
|
+
children: accessory
|
|
70
|
+
})]
|
|
71
|
+
});
|
|
303
72
|
}
|
|
304
|
-
const styles = StyleSheet.create(
|
|
305
|
-
|
|
306
|
-
position: "absolute",
|
|
307
|
-
top: 0,
|
|
308
|
-
left: 0,
|
|
309
|
-
right: 0
|
|
310
|
-
},
|
|
311
|
-
// Include the translated accessory in the parent's touchable bounds.
|
|
73
|
+
const styles = StyleSheet.create(() => ({
|
|
74
|
+
// Keep the translated accessory inside the overlay's touchable bounds.
|
|
312
75
|
container: accessoryOffset => ({
|
|
313
76
|
position: "absolute",
|
|
314
77
|
top: 0,
|
|
@@ -316,104 +79,6 @@ const styles = StyleSheet.create(theme => ({
|
|
|
316
79
|
right: 0,
|
|
317
80
|
zIndex: 1000,
|
|
318
81
|
paddingBottom: accessoryOffset
|
|
319
|
-
})
|
|
320
|
-
// Normal flow places the accessory directly below the bar.
|
|
321
|
-
stickyAccessory: {
|
|
322
|
-
position: "relative"
|
|
323
|
-
},
|
|
324
|
-
// Anchors the absolutely positioned surface over the bar and the accessory both.
|
|
325
|
-
barGroup: {
|
|
326
|
-
position: "relative"
|
|
327
|
-
},
|
|
328
|
-
bar: {
|
|
329
|
-
height: theme.layout.header.height,
|
|
330
|
-
flexDirection: "row",
|
|
331
|
-
alignItems: "center",
|
|
332
|
-
paddingHorizontal: theme.layout.screen.padding.x,
|
|
333
|
-
gap: theme.spacing["3"],
|
|
334
|
-
justifyContent: "space-between",
|
|
335
|
-
uni__dependencies: [0]
|
|
336
|
-
},
|
|
337
|
-
// A centered title is absolutely positioned, so it leaves the flex row. With
|
|
338
|
-
// no leading slot the trailing toolbar would be the only in-flow child and
|
|
339
|
-
// `space-between` would park it on the left — the auto margin pins it right.
|
|
340
|
-
trailing: {
|
|
341
|
-
justifyContent: "flex-end",
|
|
342
|
-
variants: {
|
|
343
|
-
titleAlignment: {
|
|
344
|
-
center: {
|
|
345
|
-
marginLeft: "auto"
|
|
346
|
-
},
|
|
347
|
-
left: {}
|
|
348
|
-
}
|
|
349
|
-
},
|
|
350
|
-
uni__dependencies: [4]
|
|
351
|
-
},
|
|
352
|
-
portalContent: hasAccessoryBelow => ({
|
|
353
|
-
gap: 2,
|
|
354
|
-
// Include the gap in the measured height used to position the accessory.
|
|
355
|
-
paddingBottom: hasAccessoryBelow ? theme.spacing["2"] : 0,
|
|
356
|
-
paddingHorizontal: theme.layout.screen.padding.x,
|
|
357
|
-
uni__dependencies: [0]
|
|
358
|
-
}),
|
|
359
|
-
overline: {
|
|
360
|
-
fontSize: theme.typography.variants["label-sm"].fontSize,
|
|
361
|
-
lineHeight: theme.typography.variants["label-sm"].lineHeight,
|
|
362
|
-
letterSpacing: theme.typography.variants["label-sm"].letterSpacing,
|
|
363
|
-
fontWeight: FONT_WEIGHT_VALUE[theme.typography.variants["label-sm"].fontWeight],
|
|
364
|
-
color: theme.color["text.tertiary"] ?? "",
|
|
365
|
-
uni__dependencies: [0]
|
|
366
|
-
},
|
|
367
|
-
largeTitle: {
|
|
368
|
-
fontSize: theme.typography.variants["headline-lg"].fontSize,
|
|
369
|
-
lineHeight: theme.typography.variants["headline-lg"].lineHeight,
|
|
370
|
-
letterSpacing: theme.typography.variants["headline-lg"].letterSpacing,
|
|
371
|
-
fontWeight: FONT_WEIGHT_VALUE[theme.typography.variants["headline-lg"].fontWeight],
|
|
372
|
-
color: theme.color["text.primary"] ?? "",
|
|
373
|
-
uni__dependencies: [0]
|
|
374
|
-
},
|
|
375
|
-
subtitle: {
|
|
376
|
-
fontSize: theme.typography.variants["body-lg"].fontSize,
|
|
377
|
-
lineHeight: theme.typography.variants["body-lg"].lineHeight,
|
|
378
|
-
letterSpacing: theme.typography.variants["body-lg"].letterSpacing,
|
|
379
|
-
color: theme.color["text.tertiary"] ?? "",
|
|
380
|
-
uni__dependencies: [0]
|
|
381
|
-
},
|
|
382
|
-
compactTitle: {
|
|
383
|
-
fontSize: theme.typography.variants["title-md"].fontSize,
|
|
384
|
-
lineHeight: theme.typography.variants["title-md"].lineHeight,
|
|
385
|
-
letterSpacing: theme.typography.variants["title-md"].letterSpacing,
|
|
386
|
-
fontWeight: FONT_WEIGHT_VALUE[theme.typography.variants["title-md"].fontWeight],
|
|
387
|
-
color: theme.color["text.primary"] ?? "",
|
|
388
|
-
variants: {
|
|
389
|
-
titleAlignment: {
|
|
390
|
-
center: {
|
|
391
|
-
textAlign: "center"
|
|
392
|
-
},
|
|
393
|
-
left: {
|
|
394
|
-
textAlign: "left"
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
},
|
|
398
|
-
uni__dependencies: [0, 4]
|
|
399
|
-
},
|
|
400
|
-
titleContainer: {
|
|
401
|
-
flex: 1,
|
|
402
|
-
variants: {
|
|
403
|
-
titleAlignment: {
|
|
404
|
-
center: {
|
|
405
|
-
position: "absolute",
|
|
406
|
-
left: 0,
|
|
407
|
-
right: 0,
|
|
408
|
-
alignItems: "center"
|
|
409
|
-
},
|
|
410
|
-
left: {
|
|
411
|
-
flex: 1,
|
|
412
|
-
alignItems: "flex-start"
|
|
413
|
-
}
|
|
414
|
-
}
|
|
415
|
-
},
|
|
416
|
-
uni__dependencies: [4]
|
|
417
|
-
}
|
|
82
|
+
})
|
|
418
83
|
}));
|
|
419
84
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useState","Animated","interpolate","useAnimatedStyle","useSharedValue","StyleSheet","useUnistyles","resolveThemeColor","FONT_WEIGHT_VALUE","Portal","useHeaderBackground","SCREEN_HEADER_PORTAL_HOST","useScreen","Toolbar","HeaderDismissButton","HeaderAccessory","HeaderAccessorySpacer","HeaderSurface","isCustomTitle","isTextTitle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","AnimatedText","createAnimatedComponent","Text","COMPACT_TITLE_SLIDE_OFFSET","LARGE_TITLE_SLIDE_OFFSET","LargeTitlePortalContent","title","overline","subtitle","hasAccessoryBelow","onHeightChange","theme","scrollY","headerCollapseHeight","layout","header","height","largeTitleAnimatedStyle","opacity","transform","translateY","value","handleLayout","event","nativeEvent","View","style","styles","portalContent","onLayout","children","maxFontSizeMultiplier","typography","variants","largeTitle","LargeTitleHeader","leadingActions","trailingActions","LeftToolbar","RightToolbar","accessory","accessoryPadding","accessoryBehavior","dismissAction","navigation","onDismiss","titleAlignment","isLargeTitleHidden","background","bg","screenBackground","setHeaderAccessoryHeight","contentTopPadding","colorToken","bgColor","color","leadingContent","undefined","trailingContent","isSticky","hasStickyAccessory","stickyAccessoryHeight","setStickyAccessoryHeight","largeTitleHeight","setLargeTitleHeight","isLargeTitleHiddenValue","handleAccessoryHeightChange","Math","max","round","handleLargeTitleHeightChange","stickyAccessoryOffset","stickyAccessoryStyle","_styles","useVariants","stickySurfaceStyle","accessorySurfaceStyle","surfaceOpacityStyle","compactTitleAnimatedStyle","leading","trailing","container","pointerEvents","hostName","stickySurface","animatedStyle","barGroup","bar","titleContainer","compactTitle","padding","stickyAccessory","solid","create","position","top","left","right","accessoryOffset","zIndex","paddingBottom","flexDirection","alignItems","paddingHorizontal","screen","x","gap","spacing","justifyContent","uni__dependencies","center","marginLeft","fontSize","lineHeight","letterSpacing","fontWeight","textAlign","flex"],"sourceRoot":"../../../../../../src","sources":["components/header/variants/LargeTitleHeader/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["StyleSheet","Portal","useHeaderBackground","SCREEN_HEADER_PORTAL_HOST","useHeaderColor","useLargeTitleHeader","HeaderAccessory","HeaderAccessorySpacer","HeaderBar","LargeTitleContent","jsx","_jsx","jsxs","_jsxs","LargeTitleHeader","title","overline","subtitle","leadingActions","trailingActions","LeftToolbar","RightToolbar","accessory","accessoryPadding","accessoryBehavior","titleAlignment","isLargeTitleHidden","background","bg","dismissProps","color","layout","hasAccessory","surfaceStyle","View","style","styles","container","accessoryOffset","pointerEvents","children","hostName","hasAccessoryBelow","isSticky","onHeightChange","setLargeTitleHeight","animatedStyle","largeTitleStyle","height","reservedAccessoryHeight","titleStyle","compactTitleStyle","leading","undefined","trailing","padding","accessoryStyle","setAccessoryHeight","create","position","top","left","right","zIndex","paddingBottom"],"sourceRoot":"../../../../../../src","sources":["components/header/variants/LargeTitleHeader/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { Text } from "react-native-unistyles/components/native/Text";
|
|
4
|
+
import Animated from "react-native-reanimated";
|
|
5
|
+
import { StyleSheet, useUnistyles } from "react-native-unistyles";
|
|
6
|
+
import { FONT_WEIGHT_VALUE } from "../../../../../utils/typography.js";
|
|
7
|
+
import { isTextTitle } from "../../../utils.js";
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
export function LargeTitleContent({
|
|
10
|
+
title,
|
|
11
|
+
overline,
|
|
12
|
+
subtitle,
|
|
13
|
+
hasAccessoryBelow,
|
|
14
|
+
onHeightChange,
|
|
15
|
+
animatedStyle
|
|
16
|
+
}) {
|
|
17
|
+
const {
|
|
18
|
+
theme
|
|
19
|
+
} = useUnistyles();
|
|
20
|
+
// Layout height excludes the collapse transform.
|
|
21
|
+
const handleLayout = event => onHeightChange?.(event.nativeEvent.layout.height);
|
|
22
|
+
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
23
|
+
style: [styles.portalContent(hasAccessoryBelow), animatedStyle],
|
|
24
|
+
onLayout: handleLayout,
|
|
25
|
+
children: [!!overline && /*#__PURE__*/_jsx(Text, {
|
|
26
|
+
style: styles.overline,
|
|
27
|
+
maxFontSizeMultiplier: theme.typography.variants["label-sm"].maxFontSizeMultiplier,
|
|
28
|
+
children: overline
|
|
29
|
+
}), isTextTitle(title) ? /*#__PURE__*/_jsx(Text, {
|
|
30
|
+
style: styles.largeTitle,
|
|
31
|
+
maxFontSizeMultiplier: theme.typography.variants["headline-lg"].maxFontSizeMultiplier,
|
|
32
|
+
children: title
|
|
33
|
+
}) : title, !!subtitle && /*#__PURE__*/_jsx(Text, {
|
|
34
|
+
style: styles.subtitle,
|
|
35
|
+
maxFontSizeMultiplier: theme.typography.variants["body-lg"].maxFontSizeMultiplier,
|
|
36
|
+
children: subtitle
|
|
37
|
+
})]
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
const styles = StyleSheet.create(theme => ({
|
|
41
|
+
portalContent: hasAccessoryBelow => ({
|
|
42
|
+
gap: theme.spacing["1"] / 2,
|
|
43
|
+
// Include the gap in the measured height used to position the accessory.
|
|
44
|
+
paddingBottom: hasAccessoryBelow ? theme.spacing["2"] : 0,
|
|
45
|
+
paddingHorizontal: theme.layout.screen.padding.x,
|
|
46
|
+
uni__dependencies: [0]
|
|
47
|
+
}),
|
|
48
|
+
overline: {
|
|
49
|
+
fontSize: theme.typography.variants["label-sm"].fontSize,
|
|
50
|
+
lineHeight: theme.typography.variants["label-sm"].lineHeight,
|
|
51
|
+
letterSpacing: theme.typography.variants["label-sm"].letterSpacing,
|
|
52
|
+
fontWeight: FONT_WEIGHT_VALUE[theme.typography.variants["label-sm"].fontWeight],
|
|
53
|
+
color: theme.color["text.tertiary"] ?? "",
|
|
54
|
+
uni__dependencies: [0]
|
|
55
|
+
},
|
|
56
|
+
largeTitle: {
|
|
57
|
+
fontSize: theme.typography.variants["headline-lg"].fontSize,
|
|
58
|
+
lineHeight: theme.typography.variants["headline-lg"].lineHeight,
|
|
59
|
+
letterSpacing: theme.typography.variants["headline-lg"].letterSpacing,
|
|
60
|
+
fontWeight: FONT_WEIGHT_VALUE[theme.typography.variants["headline-lg"].fontWeight],
|
|
61
|
+
color: theme.color["text.primary"] ?? "",
|
|
62
|
+
uni__dependencies: [0]
|
|
63
|
+
},
|
|
64
|
+
subtitle: {
|
|
65
|
+
fontSize: theme.typography.variants["body-lg"].fontSize,
|
|
66
|
+
lineHeight: theme.typography.variants["body-lg"].lineHeight,
|
|
67
|
+
letterSpacing: theme.typography.variants["body-lg"].letterSpacing,
|
|
68
|
+
color: theme.color["text.tertiary"] ?? "",
|
|
69
|
+
uni__dependencies: [0]
|
|
70
|
+
}
|
|
71
|
+
}));
|
|
72
|
+
//# sourceMappingURL=LargeTitleContent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Animated","StyleSheet","useUnistyles","FONT_WEIGHT_VALUE","isTextTitle","jsx","_jsx","jsxs","_jsxs","LargeTitleContent","title","overline","subtitle","hasAccessoryBelow","onHeightChange","animatedStyle","theme","handleLayout","event","nativeEvent","layout","height","View","style","styles","portalContent","onLayout","children","Text","maxFontSizeMultiplier","typography","variants","largeTitle","create","gap","spacing","paddingBottom","paddingHorizontal","screen","padding","x","uni__dependencies","fontSize","lineHeight","letterSpacing","fontWeight","color"],"sourceRoot":"../../../../../../../src","sources":["components/header/variants/LargeTitleHeader/parts/LargeTitleContent.tsx"],"mappings":"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","ignoreList":[]}
|