react-native-terra-ui 0.11.6 → 0.11.8
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 +12 -0
- package/lib/module/components/header/parts/HeaderAccessory.js +25 -22
- package/lib/module/components/header/parts/HeaderAccessory.js.map +1 -1
- package/lib/module/components/header/parts/HeaderSurface.js +13 -20
- package/lib/module/components/header/parts/HeaderSurface.js.map +1 -1
- package/lib/module/components/header/variants/LargeTitleHeader/index.js +130 -42
- package/lib/module/components/header/variants/LargeTitleHeader/index.js.map +1 -1
- package/lib/module/components/header/variants/TitleHeader/index.js +5 -1
- package/lib/module/components/header/variants/TitleHeader/index.js.map +1 -1
- package/lib/module/components/screen/ScreenContext.js +7 -1
- package/lib/module/components/screen/ScreenContext.js.map +1 -1
- package/lib/module/components/screen/ScreenList.js +19 -2
- package/lib/module/components/screen/ScreenList.js.map +1 -1
- package/lib/module/components/screen/ScreenScrollView.js +5 -1
- package/lib/module/components/screen/ScreenScrollView.js.map +1 -1
- package/lib/typescript/src/components/header/index.d.ts +1 -1
- package/lib/typescript/src/components/header/index.d.ts.map +1 -1
- package/lib/typescript/src/components/header/parts/HeaderAccessory.d.ts +11 -11
- package/lib/typescript/src/components/header/parts/HeaderAccessory.d.ts.map +1 -1
- package/lib/typescript/src/components/header/parts/HeaderSurface.d.ts +8 -10
- package/lib/typescript/src/components/header/parts/HeaderSurface.d.ts.map +1 -1
- package/lib/typescript/src/components/header/types.d.ts +11 -7
- package/lib/typescript/src/components/header/types.d.ts.map +1 -1
- package/lib/typescript/src/components/header/variants/LargeTitleHeader/index.d.ts +8 -1
- package/lib/typescript/src/components/header/variants/LargeTitleHeader/index.d.ts.map +1 -1
- package/lib/typescript/src/components/header/variants/TitleHeader/index.d.ts +3 -4
- package/lib/typescript/src/components/header/variants/TitleHeader/index.d.ts.map +1 -1
- package/lib/typescript/src/components/screen/ScreenContext.d.ts +7 -0
- package/lib/typescript/src/components/screen/ScreenContext.d.ts.map +1 -1
- package/lib/typescript/src/components/screen/ScreenList.d.ts.map +1 -1
- package/lib/typescript/src/components/screen/ScreenScrollView.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/header/index.ts +1 -1
- package/src/components/header/parts/HeaderAccessory.tsx +21 -23
- package/src/components/header/parts/HeaderSurface.tsx +17 -20
- package/src/components/header/types.ts +12 -7
- package/src/components/header/variants/LargeTitleHeader/index.tsx +110 -18
- package/src/components/header/variants/TitleHeader/index.tsx +15 -6
- package/src/components/screen/ScreenContext.tsx +16 -0
- package/src/components/screen/ScreenList.tsx +22 -2
- package/src/components/screen/ScreenScrollView.tsx +16 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.11.8](https://github.com/earthlin9/react-native-terra-ui/compare/v0.11.7...v0.11.8) (2026-09-15)
|
|
4
|
+
|
|
5
|
+
### Bug Fixes
|
|
6
|
+
|
|
7
|
+
* **ui:** [header] carry one background across a sticky accessory ([23ba640](https://github.com/earthlin9/react-native-terra-ui/commit/23ba6400aad6ae31ba91a8b2126c0222c90c3180))
|
|
8
|
+
|
|
9
|
+
## [0.11.7](https://github.com/earthlin9/react-native-terra-ui/compare/v0.11.6...v0.11.7) (2026-09-15)
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* **ui:** [header] add a sticky accessory behaviour to the large title ([64bb78c](https://github.com/earthlin9/react-native-terra-ui/commit/64bb78c2974bf237f9cb161a3b1b9fcd34e90451))
|
|
14
|
+
|
|
3
15
|
## [0.11.6](https://github.com/earthlin9/react-native-terra-ui/compare/v0.11.5...v0.11.6) (2026-09-15)
|
|
4
16
|
|
|
5
17
|
### Features
|
|
@@ -1,44 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { View } from "react-native-unistyles/components/native/View";
|
|
4
|
-
import { useCallback,
|
|
4
|
+
import { useCallback, useEffect } from "react";
|
|
5
|
+
import Animated from "react-native-reanimated";
|
|
5
6
|
import { StyleSheet } from "react-native-unistyles";
|
|
6
|
-
import { ScreenContext } from "../../screen/ScreenContext.js";
|
|
7
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
-
/**
|
|
9
|
-
* Pinned content below a header bar — a search field, a tab strip.
|
|
10
|
-
*
|
|
11
|
-
* Reports its measured height to the surrounding `Screen` so scroll containers
|
|
12
|
-
* reserve it above their content. The theme header height covers the bar alone
|
|
13
|
-
* and the accessory is whatever the caller passed, so nothing but a measurement
|
|
14
|
-
* can know how far down the content has to start.
|
|
15
|
-
*
|
|
16
|
-
* Outside a `Screen` there is nothing to report to and it simply renders.
|
|
17
|
-
*/
|
|
8
|
+
/** Measures accessory content so the header can reserve space in the scroll container. */
|
|
18
9
|
export function HeaderAccessory({
|
|
19
10
|
children,
|
|
20
|
-
padding
|
|
11
|
+
padding,
|
|
12
|
+
onHeightChange,
|
|
13
|
+
style
|
|
21
14
|
}) {
|
|
22
|
-
const setHeaderAccessoryHeight = useContext(ScreenContext)?.setHeaderAccessoryHeight;
|
|
23
15
|
const handleLayout = useCallback(event => {
|
|
24
|
-
|
|
25
|
-
}, [
|
|
16
|
+
onHeightChange(event.nativeEvent.layout.height);
|
|
17
|
+
}, [onHeightChange]);
|
|
26
18
|
|
|
27
|
-
//
|
|
28
|
-
|
|
29
|
-
useEffect(() => () => setHeaderAccessoryHeight?.(0), [setHeaderAccessoryHeight]);
|
|
19
|
+
// Release the previous owner’s space when the callback changes or the accessory unmounts.
|
|
20
|
+
useEffect(() => () => onHeightChange(0), [onHeightChange]);
|
|
30
21
|
const _styles = styles;
|
|
31
22
|
{
|
|
32
23
|
const styles = _styles.useVariants({
|
|
33
24
|
padding
|
|
34
25
|
});
|
|
35
|
-
return /*#__PURE__*/_jsx(View, {
|
|
36
|
-
style: styles.accessory,
|
|
26
|
+
return /*#__PURE__*/_jsx(Animated.View, {
|
|
27
|
+
style: [styles.accessory, style],
|
|
37
28
|
onLayout: handleLayout,
|
|
38
29
|
children: children
|
|
39
30
|
});
|
|
40
31
|
}
|
|
41
32
|
}
|
|
33
|
+
|
|
34
|
+
/** Reserves scroll-content space for the sticky accessory rendered in the header overlay. */
|
|
35
|
+
export function HeaderAccessorySpacer({
|
|
36
|
+
height
|
|
37
|
+
}) {
|
|
38
|
+
return /*#__PURE__*/_jsx(View, {
|
|
39
|
+
style: styles.spacer(height)
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
42
|
const styles = StyleSheet.create(theme => ({
|
|
43
43
|
accessory: {
|
|
44
44
|
variants: {
|
|
@@ -50,6 +50,9 @@ const styles = StyleSheet.create(theme => ({
|
|
|
50
50
|
}
|
|
51
51
|
},
|
|
52
52
|
uni__dependencies: [0, 4]
|
|
53
|
-
}
|
|
53
|
+
},
|
|
54
|
+
spacer: height => ({
|
|
55
|
+
height
|
|
56
|
+
})
|
|
54
57
|
}));
|
|
55
58
|
//# sourceMappingURL=HeaderAccessory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","Animated","StyleSheet","jsx","_jsx","HeaderAccessory","children","padding","onHeightChange","style","handleLayout","event","nativeEvent","layout","height","_styles","styles","useVariants","View","accessory","onLayout","HeaderAccessorySpacer","spacer","create","theme","variants","x","paddingHorizontal","screen","none","uni__dependencies"],"sourceRoot":"../../../../../src","sources":["components/header/parts/HeaderAccessory.tsx"],"mappings":";;;AAAA,SAAyBA,WAAW,EAAEC,SAAS,QAAQ,OAAO;AAG9D,OAAOC,QAAQ,MAAM,yBAAyB;AAC9C,SAASC,UAAU,QAAQ,wBAAwB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAcpD;AACA,OAAO,SAASC,eAAeA,CAAC;EAAEC,QAAQ;EAAEC,OAAO;EAAEC,cAAc;EAAEC;AAA4B,CAAC,EAAE;EAClG,MAAMC,YAAY,GAAGX,WAAW,CAC7BY,KAAwB,IAAK;IAC5BH,cAAc,CAACG,KAAK,CAACC,WAAW,CAACC,MAAM,CAACC,MAAM,CAAC;EACjD,CAAC,EACD,CAACN,cAAc,CACjB,CAAC;;EAED;EACAR,SAAS,CAAC,MAAM,MAAMQ,cAAc,CAAC,CAAC,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;EAAC,MAAAO,OAAA,GAAAC,MAAA;EAAA;IAAA,MAAAA,MAAA,GAAAD,OAAA,CAAAE,WAAA,CAExC;MAAEV;IAAQ,CAAC;IAE9B,oBACEH,IAAA,CAACH,QAAQ,CAACiB,IAAI;MAACT,KAAK,EAAE,CAACO,MAAM,CAACG,SAAS,EAAEV,KAAK,CAAE;MAACW,QAAQ,EAAEV,YAAa;MAAAJ,QAAA,EACrEA;IAAQ,CACI,CAAC;EAChB;AACJ;;AAEA;AACA,OAAO,SAASe,qBAAqBA,CAAC;EAAEP;AAA2B,CAAC,EAAE;EACpE,oBAAOV,IAAA,CAACc,IAAI;IAACT,KAAK,EAAEO,MAAM,CAACM,MAAM,CAACR,MAAM;EAAE,CAAE,CAAC;AAC/C;AAEA,MAAME,MAAM,GAAGd,UAAU,CAACqB,MAAM,CAAEC,KAAK,KAAM;EAC3CL,SAAS,EAAE;IACTM,QAAQ,EAAE;MACRlB,OAAO,EAAE;QACPmB,CAAC,EAAE;UAAEC,iBAAiB,EAAEH,KAAK,CAACX,MAAM,CAACe,MAAM,CAACrB,OAAO,CAACmB;QAAE,CAAC;QACvDG,IAAI,EAAE,CAAC;MACT;IACF,CAAC;IAAAC,iBAAA;EACH,CAAC;EACDR,MAAM,EAAGR,MAAc,KAAM;IAAEA;EAAO,CAAC;AACzC,CAAC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -6,27 +6,21 @@ import { StyleSheet } from "react-native-unistyles";
|
|
|
6
6
|
import { HEADER_FADE_EXTENT, HeaderGradientOverlay } from "./HeaderGradientOverlay.js";
|
|
7
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* Split into a flat fill and a fixed-height ramp rather than one gradient over
|
|
13
|
-
* the whole box, because {@link HeaderGradientOverlay}'s curve is expressed in
|
|
14
|
-
* fractions of its own height. Stretched over a tall accessory the fade would
|
|
15
|
-
* begin partway up it, and content passing behind would show through the thing
|
|
16
|
-
* the caller put there to be read. Pinning the ramp to the bar's height keeps it
|
|
17
|
-
* identical with or without an accessory, and everything above it stays solid.
|
|
9
|
+
* Header background with a solid fill and a bottom gradient.
|
|
10
|
+
* A fixed gradient height keeps tall accessories from becoming translucent.
|
|
18
11
|
*/
|
|
19
12
|
export function HeaderSurface({
|
|
20
13
|
color,
|
|
21
|
-
animatedStyle
|
|
14
|
+
animatedStyle,
|
|
15
|
+
fadeHeight
|
|
22
16
|
}) {
|
|
23
17
|
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
24
18
|
style: [styles.surface, animatedStyle],
|
|
25
19
|
pointerEvents: "none",
|
|
26
20
|
children: [/*#__PURE__*/_jsx(View, {
|
|
27
|
-
style: styles.fill(color)
|
|
21
|
+
style: styles.fill(color, fadeHeight)
|
|
28
22
|
}), /*#__PURE__*/_jsx(View, {
|
|
29
|
-
style: styles.fade,
|
|
23
|
+
style: styles.fade(fadeHeight),
|
|
30
24
|
children: /*#__PURE__*/_jsx(HeaderGradientOverlay, {
|
|
31
25
|
color: color
|
|
32
26
|
})
|
|
@@ -34,8 +28,7 @@ export function HeaderSurface({
|
|
|
34
28
|
});
|
|
35
29
|
}
|
|
36
30
|
const styles = StyleSheet.create(theme => ({
|
|
37
|
-
//
|
|
38
|
-
// open space rather than being clipped at the header's edge.
|
|
31
|
+
// Extend the fade below the header's layout bounds.
|
|
39
32
|
surface: {
|
|
40
33
|
position: "absolute",
|
|
41
34
|
top: 0,
|
|
@@ -43,23 +36,23 @@ const styles = StyleSheet.create(theme => ({
|
|
|
43
36
|
right: 0,
|
|
44
37
|
bottom: -HEADER_FADE_EXTENT
|
|
45
38
|
},
|
|
46
|
-
//
|
|
47
|
-
fill: color => ({
|
|
39
|
+
// Fill the region above the gradient.
|
|
40
|
+
fill: (color, fadeHeight) => ({
|
|
48
41
|
position: "absolute",
|
|
49
42
|
top: 0,
|
|
50
43
|
left: 0,
|
|
51
44
|
right: 0,
|
|
52
|
-
bottom: theme.layout.header.height + HEADER_FADE_EXTENT,
|
|
45
|
+
bottom: fadeHeight ?? theme.layout.header.height + HEADER_FADE_EXTENT,
|
|
53
46
|
backgroundColor: color,
|
|
54
47
|
uni__dependencies: [0]
|
|
55
48
|
}),
|
|
56
|
-
fade: {
|
|
49
|
+
fade: fadeHeight => ({
|
|
57
50
|
position: "absolute",
|
|
58
51
|
left: 0,
|
|
59
52
|
right: 0,
|
|
60
53
|
bottom: 0,
|
|
61
|
-
height: theme.layout.header.height + HEADER_FADE_EXTENT,
|
|
54
|
+
height: fadeHeight ?? theme.layout.header.height + HEADER_FADE_EXTENT,
|
|
62
55
|
uni__dependencies: [0]
|
|
63
|
-
}
|
|
56
|
+
})
|
|
64
57
|
}));
|
|
65
58
|
//# sourceMappingURL=HeaderSurface.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Animated","StyleSheet","HEADER_FADE_EXTENT","HeaderGradientOverlay","jsx","_jsx","jsxs","_jsxs","HeaderSurface","color","animatedStyle","View","style","styles","surface","pointerEvents","children","fill","fade","create","theme","position","top","left","right","bottom","layout","header","height","backgroundColor","uni__dependencies"],"sourceRoot":"../../../../../src","sources":["components/header/parts/HeaderSurface.tsx"],"mappings":";;;AAEA,OAAOA,QAAQ,MAAiC,yBAAyB;AACzE,SAASC,UAAU,QAAQ,wBAAwB;AAEnD,SAASC,kBAAkB,EAAEC,qBAAqB;AAAkC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;
|
|
1
|
+
{"version":3,"names":["Animated","StyleSheet","HEADER_FADE_EXTENT","HeaderGradientOverlay","jsx","_jsx","jsxs","_jsxs","HeaderSurface","color","animatedStyle","fadeHeight","View","style","styles","surface","pointerEvents","children","fill","fade","create","theme","position","top","left","right","bottom","layout","header","height","backgroundColor","uni__dependencies"],"sourceRoot":"../../../../../src","sources":["components/header/parts/HeaderSurface.tsx"],"mappings":";;;AAEA,OAAOA,QAAQ,MAAiC,yBAAyB;AACzE,SAASC,UAAU,QAAQ,wBAAwB;AAEnD,SAASC,kBAAkB,EAAEC,qBAAqB;AAAkC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAgBpF;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAAC;EAAEC,KAAK;EAAEC,aAAa;EAAEC;AAA+B,CAAC,EAAE;EACtF,oBACEJ,KAAA,CAACP,QAAQ,CAACY,IAAI;IAACC,KAAK,EAAE,CAACC,MAAM,CAACC,OAAO,EAAEL,aAAa,CAAE;IAACM,aAAa,EAAC,MAAM;IAAAC,QAAA,gBACzEZ,IAAA,CAACO,IAAI;MAACC,KAAK,EAAEC,MAAM,CAACI,IAAI,CAACT,KAAK,EAAEE,UAAU;IAAE,CAAE,CAAC,eAC/CN,IAAA,CAACO,IAAI;MAACC,KAAK,EAAEC,MAAM,CAACK,IAAI,CAACR,UAAU,CAAE;MAAAM,QAAA,eACnCZ,IAAA,CAACF,qBAAqB;QAACM,KAAK,EAAEA;MAAM,CAAE;IAAC,CACnC,CAAC;EAAA,CACM,CAAC;AAEpB;AAEA,MAAMK,MAAM,GAAGb,UAAU,CAACmB,MAAM,CAAEC,KAAK,KAAM;EAC3C;EACAN,OAAO,EAAE;IACPO,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAACxB;EACX,CAAC;EACD;EACAgB,IAAI,EAAEA,CAACT,KAAa,EAAEE,UAA8B,MAAM;IACxDW,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAEf,UAAU,IAAIU,KAAK,CAACM,MAAM,CAACC,MAAM,CAACC,MAAM,GAAG3B,kBAAkB;IACrE4B,eAAe,EAAErB,KAAK;IAAAsB,iBAAA;EACxB,CAAC,CAAC;EACFZ,IAAI,EAAGR,UAA8B,KAAM;IACzCW,QAAQ,EAAE,UAAU;IACpBE,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTG,MAAM,EAAElB,UAAU,IAAIU,KAAK,CAACM,MAAM,CAACC,MAAM,CAACC,MAAM,GAAG3B,kBAAkB;IAAA6B,iBAAA;EACvE,CAAC;AACH,CAAC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { View } from "react-native-unistyles/components/native/View";
|
|
4
4
|
import { Text } from "react-native-unistyles/components/native/Text";
|
|
5
|
-
import { useEffect } from "react";
|
|
5
|
+
import { useCallback, useEffect, useState } from "react";
|
|
6
6
|
import Animated, { interpolate, useAnimatedStyle, useSharedValue } from "react-native-reanimated";
|
|
7
7
|
import { StyleSheet, useUnistyles } from "react-native-unistyles";
|
|
8
8
|
import { resolveThemeColor } from "../../../../utils/resolve-theme-color.js";
|
|
@@ -12,7 +12,8 @@ import { useHeaderBackground } from "../../../screen/parts/ScreenHeaderAppearanc
|
|
|
12
12
|
import { SCREEN_HEADER_PORTAL_HOST, useScreen } from "../../../screen/ScreenContext.js";
|
|
13
13
|
import { Toolbar } from "../../../toolbar/index.js";
|
|
14
14
|
import { HeaderDismissButton } from "../../header-buttons.js";
|
|
15
|
-
import { HeaderAccessory } from "../../parts/HeaderAccessory.js";
|
|
15
|
+
import { HeaderAccessory, HeaderAccessorySpacer } from "../../parts/HeaderAccessory.js";
|
|
16
|
+
import { HEADER_FADE_EXTENT } from "../../parts/HeaderGradientOverlay.js";
|
|
16
17
|
import { HeaderSurface } from "../../parts/HeaderSurface.js";
|
|
17
18
|
import { isCustomTitle, isTextTitle } from "../../utils.js";
|
|
18
19
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
@@ -25,7 +26,8 @@ const LARGE_TITLE_SLIDE_OFFSET = 6;
|
|
|
25
26
|
function LargeTitlePortalContent({
|
|
26
27
|
title,
|
|
27
28
|
overline,
|
|
28
|
-
subtitle
|
|
29
|
+
subtitle,
|
|
30
|
+
onHeightChange
|
|
29
31
|
}) {
|
|
30
32
|
const {
|
|
31
33
|
theme
|
|
@@ -51,8 +53,12 @@ function LargeTitlePortalContent({
|
|
|
51
53
|
}]
|
|
52
54
|
};
|
|
53
55
|
});
|
|
56
|
+
|
|
57
|
+
// Layout height excludes the collapse transform.
|
|
58
|
+
const handleLayout = event => onHeightChange?.(event.nativeEvent.layout.height);
|
|
54
59
|
return /*#__PURE__*/_jsxs(Animated.View, {
|
|
55
60
|
style: [styles.portalContent, largeTitleAnimatedStyle],
|
|
61
|
+
onLayout: handleLayout,
|
|
56
62
|
children: [!!overline && /*#__PURE__*/_jsx(Text, {
|
|
57
63
|
style: styles.overline,
|
|
58
64
|
maxFontSizeMultiplier: theme.typography.variants["label-sm"].maxFontSizeMultiplier,
|
|
@@ -100,6 +106,7 @@ export function LargeTitleHeader({
|
|
|
100
106
|
RightToolbar,
|
|
101
107
|
accessory,
|
|
102
108
|
accessoryPadding = "x",
|
|
109
|
+
accessoryBehavior = "sticky",
|
|
103
110
|
dismissAction = "none",
|
|
104
111
|
navigation,
|
|
105
112
|
onDismiss,
|
|
@@ -113,20 +120,62 @@ export function LargeTitleHeader({
|
|
|
113
120
|
} = useUnistyles();
|
|
114
121
|
const {
|
|
115
122
|
scrollY,
|
|
116
|
-
background: screenBackground
|
|
123
|
+
background: screenBackground,
|
|
124
|
+
setHeaderAccessoryHeight,
|
|
125
|
+
contentTopPadding
|
|
117
126
|
} = useScreen();
|
|
118
127
|
const colorToken = background ?? bg;
|
|
119
128
|
const bgColor = (colorToken ? resolveThemeColor(colorToken, theme) : screenBackground) ?? theme.color["surface.canvas"];
|
|
120
129
|
const leadingContent = leadingActions !== undefined ? leadingActions : LeftToolbar;
|
|
121
130
|
const trailingContent = trailingActions !== undefined ? trailingActions : RightToolbar;
|
|
122
131
|
const gradientColor = bgColor;
|
|
132
|
+
const isSticky = accessoryBehavior === "sticky" && !isLargeTitleHidden;
|
|
133
|
+
const hasStickyAccessory = isSticky && accessory != null;
|
|
134
|
+
// Sticky accessories reserve space below the large title; pinned ones add top padding.
|
|
135
|
+
const [stickyAccessoryHeight, setStickyAccessoryHeight] = useState(0);
|
|
136
|
+
const [largeTitleHeight, setLargeTitleHeight] = useState(0);
|
|
123
137
|
const isLargeTitleHiddenValue = useSharedValue(isLargeTitleHidden);
|
|
138
|
+
const handleAccessoryHeightChange = useCallback(height => {
|
|
139
|
+
if (isSticky) setStickyAccessoryHeight(Math.max(0, Math.round(height)));else setHeaderAccessoryHeight(height);
|
|
140
|
+
}, [isSticky, setHeaderAccessoryHeight]);
|
|
141
|
+
const handleLargeTitleHeightChange = useCallback(height => {
|
|
142
|
+
setLargeTitleHeight(Math.max(0, Math.round(height)));
|
|
143
|
+
}, []);
|
|
144
|
+
|
|
145
|
+
// Rest below the title, including the scroll container's top padding.
|
|
146
|
+
const stickyAccessoryOffset = Math.max(0, contentTopPadding + largeTitleHeight - theme.layout.header.height);
|
|
147
|
+
|
|
148
|
+
// Zero translation places the accessory directly below the compact bar.
|
|
149
|
+
const stickyAccessoryStyle = useAnimatedStyle(() => {
|
|
150
|
+
if (isLargeTitleHiddenValue.value) {
|
|
151
|
+
return {
|
|
152
|
+
transform: [{
|
|
153
|
+
translateY: 0
|
|
154
|
+
}]
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
return {
|
|
158
|
+
transform: [{
|
|
159
|
+
translateY: Math.max(0, stickyAccessoryOffset - scrollY.value)
|
|
160
|
+
}]
|
|
161
|
+
};
|
|
162
|
+
});
|
|
124
163
|
const headerCollapseHeight = theme.layout.header.height;
|
|
125
164
|
const _styles = styles;
|
|
126
165
|
{
|
|
127
166
|
const styles = _styles.useVariants({
|
|
128
167
|
titleAlignment
|
|
129
168
|
});
|
|
169
|
+
// Follow the accessory's bottom edge while keeping the background anchored to the bar.
|
|
170
|
+
const stickySurfaceStyle = useAnimatedStyle(() => ({
|
|
171
|
+
height: headerCollapseHeight + stickyAccessoryHeight + Math.max(0, stickyAccessoryOffset - scrollY.value)
|
|
172
|
+
}));
|
|
173
|
+
|
|
174
|
+
// Blend the accessory's resting surface into the shared header background.
|
|
175
|
+
const accessorySurfaceStyle = useAnimatedStyle(() => ({
|
|
176
|
+
opacity: stickyAccessoryOffset > 0 ? interpolate(scrollY.value, [0, stickyAccessoryOffset], [1, 0], "clamp") : 0
|
|
177
|
+
}));
|
|
178
|
+
|
|
130
179
|
// Animate the gradient overlay's opacity: 0 (expanded) → 1 (collapsed).
|
|
131
180
|
const gradientOpacityStyle = useAnimatedStyle(() => {
|
|
132
181
|
if (isLargeTitleHiddenValue.value) {
|
|
@@ -134,10 +183,10 @@ export function LargeTitleHeader({
|
|
|
134
183
|
opacity: 1
|
|
135
184
|
};
|
|
136
185
|
}
|
|
137
|
-
const height = headerCollapseHeight;
|
|
186
|
+
const height = hasStickyAccessory ? stickyAccessoryOffset : headerCollapseHeight;
|
|
138
187
|
if (height <= 0) {
|
|
139
188
|
return {
|
|
140
|
-
opacity: 0
|
|
189
|
+
opacity: hasStickyAccessory ? 1 : 0
|
|
141
190
|
};
|
|
142
191
|
}
|
|
143
192
|
return {
|
|
@@ -187,51 +236,90 @@ export function LargeTitleHeader({
|
|
|
187
236
|
onDismiss: onDismiss
|
|
188
237
|
})]
|
|
189
238
|
}) : trailingContent;
|
|
190
|
-
return
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
239
|
+
return (
|
|
240
|
+
/*#__PURE__*/
|
|
241
|
+
// Let touches in the expanded header's empty space reach the scroll content.
|
|
242
|
+
_jsxs(View, {
|
|
243
|
+
style: styles.container(isSticky ? stickyAccessoryOffset : 0),
|
|
244
|
+
pointerEvents: "box-none",
|
|
245
|
+
children: [!isLargeTitleHidden && /*#__PURE__*/_jsxs(Portal, {
|
|
246
|
+
hostName: SCREEN_HEADER_PORTAL_HOST,
|
|
247
|
+
children: [/*#__PURE__*/_jsx(LargeTitlePortalContent, {
|
|
248
|
+
title: title,
|
|
249
|
+
overline: overline,
|
|
250
|
+
subtitle: subtitle,
|
|
251
|
+
onHeightChange: isSticky ? handleLargeTitleHeightChange : undefined
|
|
252
|
+
}), isSticky && accessory != null && /*#__PURE__*/_jsx(HeaderAccessorySpacer, {
|
|
253
|
+
height: stickyAccessoryHeight
|
|
254
|
+
})]
|
|
255
|
+
}), hasStickyAccessory && /*#__PURE__*/_jsx(Animated.View, {
|
|
256
|
+
style: [styles.stickySurface, stickySurfaceStyle],
|
|
257
|
+
pointerEvents: "none",
|
|
258
|
+
children: /*#__PURE__*/_jsx(HeaderSurface, {
|
|
259
|
+
color: gradientColor,
|
|
260
|
+
animatedStyle: gradientOpacityStyle
|
|
261
|
+
})
|
|
204
262
|
}), /*#__PURE__*/_jsxs(View, {
|
|
205
|
-
style: styles.
|
|
206
|
-
children: [
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
children:
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
263
|
+
style: styles.barGroup,
|
|
264
|
+
children: [!hasStickyAccessory && /*#__PURE__*/_jsx(HeaderSurface, {
|
|
265
|
+
color: gradientColor,
|
|
266
|
+
animatedStyle: gradientOpacityStyle
|
|
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
|
+
fadeHeight: HEADER_FADE_EXTENT
|
|
294
|
+
}), /*#__PURE__*/_jsx(HeaderAccessory, {
|
|
295
|
+
padding: accessoryPadding,
|
|
296
|
+
onHeightChange: handleAccessoryHeightChange,
|
|
297
|
+
children: accessory
|
|
219
298
|
})]
|
|
220
|
-
}), accessory != null && /*#__PURE__*/_jsx(HeaderAccessory, {
|
|
221
|
-
padding: accessoryPadding,
|
|
222
|
-
children: accessory
|
|
223
299
|
})]
|
|
224
|
-
})
|
|
225
|
-
|
|
300
|
+
})
|
|
301
|
+
);
|
|
226
302
|
}
|
|
227
303
|
}
|
|
228
304
|
const styles = StyleSheet.create(theme => ({
|
|
229
|
-
|
|
305
|
+
stickySurface: {
|
|
306
|
+
position: "absolute",
|
|
307
|
+
top: 0,
|
|
308
|
+
left: 0,
|
|
309
|
+
right: 0
|
|
310
|
+
},
|
|
311
|
+
// Include the translated accessory in the parent's touchable bounds.
|
|
312
|
+
container: accessoryOffset => ({
|
|
230
313
|
position: "absolute",
|
|
231
314
|
top: 0,
|
|
232
315
|
left: 0,
|
|
233
316
|
right: 0,
|
|
234
|
-
zIndex: 1000
|
|
317
|
+
zIndex: 1000,
|
|
318
|
+
paddingBottom: accessoryOffset
|
|
319
|
+
}),
|
|
320
|
+
// Normal flow places the accessory directly below the bar.
|
|
321
|
+
stickyAccessory: {
|
|
322
|
+
position: "relative"
|
|
235
323
|
},
|
|
236
324
|
// Anchors the absolutely positioned surface over the bar and the accessory both.
|
|
237
325
|
barGroup: {
|
|
@@ -264,7 +352,7 @@ const styles = StyleSheet.create(theme => ({
|
|
|
264
352
|
portalContent: {
|
|
265
353
|
gap: 2,
|
|
266
354
|
minHeight: theme.layout.header.height,
|
|
267
|
-
paddingBottom: theme.spacing["
|
|
355
|
+
paddingBottom: theme.spacing["1"],
|
|
268
356
|
paddingHorizontal: theme.layout.screen.padding.x,
|
|
269
357
|
uni__dependencies: [0]
|
|
270
358
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","Animated","interpolate","useAnimatedStyle","useSharedValue","StyleSheet","useUnistyles","resolveThemeColor","FONT_WEIGHT_VALUE","Portal","useHeaderBackground","SCREEN_HEADER_PORTAL_HOST","useScreen","Toolbar","HeaderDismissButton","HeaderAccessory","HeaderSurface","isCustomTitle","isTextTitle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","AnimatedText","createAnimatedComponent","Text","COMPACT_TITLE_SLIDE_OFFSET","LARGE_TITLE_SLIDE_OFFSET","LargeTitlePortalContent","title","overline","subtitle","theme","scrollY","headerCollapseHeight","layout","header","height","largeTitleAnimatedStyle","opacity","transform","translateY","value","View","style","styles","portalContent","children","maxFontSizeMultiplier","typography","variants","largeTitle","LargeTitleHeader","leadingActions","trailingActions","LeftToolbar","RightToolbar","accessory","accessoryPadding","dismissAction","navigation","onDismiss","titleAlignment","isLargeTitleHidden","background","bg","screenBackground","colorToken","bgColor","color","leadingContent","undefined","trailingContent","gradientColor","isLargeTitleHiddenValue","_styles","useVariants","gradientOpacityStyle","compactTitleAnimatedStyle","leading","trailing","container","hostName","barGroup","animatedStyle","bar","titleContainer","pointerEvents","compactTitle","padding","create","position","top","left","right","zIndex","flexDirection","alignItems","paddingHorizontal","screen","x","gap","spacing","justifyContent","uni__dependencies","center","marginLeft","minHeight","paddingBottom","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":["useCallback","useEffect","useState","Animated","interpolate","useAnimatedStyle","useSharedValue","StyleSheet","useUnistyles","resolveThemeColor","FONT_WEIGHT_VALUE","Portal","useHeaderBackground","SCREEN_HEADER_PORTAL_HOST","useScreen","Toolbar","HeaderDismissButton","HeaderAccessory","HeaderAccessorySpacer","HEADER_FADE_EXTENT","HeaderSurface","isCustomTitle","isTextTitle","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","AnimatedText","createAnimatedComponent","Text","COMPACT_TITLE_SLIDE_OFFSET","LARGE_TITLE_SLIDE_OFFSET","LargeTitlePortalContent","title","overline","subtitle","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","gradientColor","isSticky","hasStickyAccessory","stickyAccessoryHeight","setStickyAccessoryHeight","largeTitleHeight","setLargeTitleHeight","isLargeTitleHiddenValue","handleAccessoryHeightChange","Math","max","round","handleLargeTitleHeightChange","stickyAccessoryOffset","stickyAccessoryStyle","_styles","useVariants","stickySurfaceStyle","accessorySurfaceStyle","gradientOpacityStyle","compactTitleAnimatedStyle","leading","trailing","container","pointerEvents","hostName","stickySurface","animatedStyle","barGroup","bar","titleContainer","compactTitle","padding","stickyAccessory","fadeHeight","create","position","top","left","right","accessoryOffset","zIndex","paddingBottom","flexDirection","alignItems","paddingHorizontal","screen","x","gap","spacing","justifyContent","uni__dependencies","center","marginLeft","minHeight","fontSize","lineHeight","letterSpacing","fontWeight","textAlign","flex"],"sourceRoot":"../../../../../../src","sources":["components/header/variants/LargeTitleHeader/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { View } from "react-native-unistyles/components/native/View";
|
|
4
4
|
import { Text } from "react-native-unistyles/components/native/Text";
|
|
5
|
-
import { useContext } from "react";
|
|
5
|
+
import { useCallback, useContext } from "react";
|
|
6
6
|
import { StyleSheet, useUnistyles } from "react-native-unistyles";
|
|
7
7
|
import { resolveThemeColor } from "../../../../utils/resolve-theme-color.js";
|
|
8
8
|
import { FONT_WEIGHT_VALUE } from "../../../../utils/typography.js";
|
|
@@ -55,6 +55,9 @@ export function TitleHeader({
|
|
|
55
55
|
useHeaderBackground(bgColor);
|
|
56
56
|
const leadingContent = leadingActions !== undefined ? leadingActions : LeftToolbar;
|
|
57
57
|
const trailingContent = trailingActions !== undefined ? trailingActions : RightToolbar;
|
|
58
|
+
const setAccessoryInset = screen?.setHeaderAccessoryHeight;
|
|
59
|
+
// Compact headers always reserve the accessory height as top padding.
|
|
60
|
+
const handleAccessoryHeightChange = useCallback(height => setAccessoryInset?.(height), [setAccessoryInset]);
|
|
58
61
|
const isTransparent = bgColor === "transparent";
|
|
59
62
|
const gradientColor = bgColor;
|
|
60
63
|
const _styles = styles;
|
|
@@ -101,6 +104,7 @@ export function TitleHeader({
|
|
|
101
104
|
})]
|
|
102
105
|
}), accessory != null && /*#__PURE__*/_jsx(HeaderAccessory, {
|
|
103
106
|
padding: accessoryPadding,
|
|
107
|
+
onHeightChange: handleAccessoryHeightChange,
|
|
104
108
|
children: accessory
|
|
105
109
|
})]
|
|
106
110
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useContext","StyleSheet","useUnistyles","resolveThemeColor","FONT_WEIGHT_VALUE","useHeaderBackground","ScreenContext","Toolbar","HeaderDismissButton","HeaderAccessory","HeaderSurface","isCustomTitle","isTextTitle","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TitleHeader","title","leadingActions","trailingActions","LeftToolbar","RightToolbar","accessory","accessoryPadding","dismissAction","navigation","onDismiss","titleAlignment","background","bg","theme","screen","colorToken","bgColor","color","leadingContent","undefined","trailingContent","isTransparent","gradientColor","_styles","styles","useVariants","leading","children","trailing","View","style","container","safeArea","barGroup","bar","titleContainer","pointerEvents","String","trim","length","Text","padding","create","runtime","position","top","left","right","zIndex","withinScreen","
|
|
1
|
+
{"version":3,"names":["useCallback","useContext","StyleSheet","useUnistyles","resolveThemeColor","FONT_WEIGHT_VALUE","useHeaderBackground","ScreenContext","Toolbar","HeaderDismissButton","HeaderAccessory","HeaderSurface","isCustomTitle","isTextTitle","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","TitleHeader","title","leadingActions","trailingActions","LeftToolbar","RightToolbar","accessory","accessoryPadding","dismissAction","navigation","onDismiss","titleAlignment","background","bg","theme","screen","colorToken","bgColor","color","leadingContent","undefined","trailingContent","setAccessoryInset","setHeaderAccessoryHeight","handleAccessoryHeightChange","height","isTransparent","gradientColor","_styles","styles","useVariants","leading","children","trailing","View","style","container","safeArea","barGroup","bar","titleContainer","pointerEvents","String","trim","length","Text","padding","onHeightChange","create","runtime","position","top","left","right","zIndex","withinScreen","insets","backgroundColor","uni__dependencies","layout","header","flexDirection","alignItems","paddingHorizontal","x","gap","spacing","justifyContent","variants","center","marginLeft","flex","fontSize","typography","lineHeight","letterSpacing","fontWeight","textAlign"],"sourceRoot":"../../../../../../src","sources":["components/header/variants/TitleHeader/index.tsx"],"mappings":";;;;AAAA,SAAyBA,WAAW,EAAEC,UAAU,QAAQ,OAAO;AAG/D,SAASC,UAAU,EAAEC,YAAY,QAAQ,wBAAwB;AAGjE,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,mBAAmB;AAC5B,SAASC,aAAa;AACtB,SAASC,OAAO;AAChB,SAASC,mBAAmB;AAC5B,SAASC,eAAe;AACxB,SAASC,aAAa;AAEtB,SAASC,aAAa,EAAEC,WAAW;AAAsB,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AA2CzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CAAC;EAC1BC,KAAK;EACLC,cAAc;EACdC,eAAe;EACfC,WAAW;EACXC,YAAY;EACZC,SAAS;EACTC,gBAAgB,GAAG,GAAG;EACtBC,aAAa,GAAG,MAAM;EACtBC,UAAU;EACVC,SAAS;EACTC,cAAc,GAAG,QAAQ;EACzBC,UAAU;EACVC;AACgB,CAAC,EAAE;EACnB,MAAM;IAAEC;EAAM,CAAC,GAAG/B,YAAY,CAAC,CAAC;EAEhC,MAAMgC,MAAM,GAAGlC,UAAU,CAACM,aAAa,CAAC;EACxC,MAAM6B,UAAU,GAAGJ,UAAU,IAAIC,EAAE;EACnC,MAAMI,OAAO,GACX,CAACD,UAAU,GAAGhC,iBAAiB,CAACgC,UAAU,EAAEF,KAAK,CAAC,GAAGC,MAAM,EAAEH,UAAU,KAAKE,KAAK,CAACI,KAAK,CAAC,gBAAgB,CAAC;EAC3GhC,mBAAmB,CAAC+B,OAAO,CAAC;EAC5B,MAAME,cAAc,GAAGjB,cAAc,KAAKkB,SAAS,GAAGlB,cAAc,GAAGE,WAAW;EAClF,MAAMiB,eAAe,GAAGlB,eAAe,KAAKiB,SAAS,GAAGjB,eAAe,GAAGE,YAAY;EACtF,MAAMiB,iBAAiB,GAAGP,MAAM,EAAEQ,wBAAwB;EAC1D;EACA,MAAMC,2BAA2B,GAAG5C,WAAW,CAC5C6C,MAAc,IAAKH,iBAAiB,GAAGG,MAAM,CAAC,EAC/C,CAACH,iBAAiB,CACpB,CAAC;EACD,MAAMI,aAAa,GAAGT,OAAO,KAAK,aAAa;EAC/C,MAAMU,aAAa,GAAGV,OAAO;EAAC,MAAAW,OAAA,GAAAC,MAAA;EAAA;IAAA,MAAAA,MAAA,GAAAD,OAAA,CAAAE,WAAA,CACX;MAAEnB;IAAe,CAAC;IAErC,MAAMoB,OAAO,GACXvB,aAAa,KAAK,MAAM,gBACtBT,KAAA,CAAAF,SAAA;MAAAmC,QAAA,gBACErC,IAAA,CAACN,mBAAmB;QAACmB,aAAa,EAAEA,aAAc;QAACC,UAAU,EAAEA,UAAW;QAACC,SAAS,EAAEA;MAAU,CAAE,CAAC,EAClGS,cAAc;IAAA,CACf,CAAC,GAEHA,cACD;IAEH,MAAMc,QAAQ,GACZzB,aAAa,KAAK,OAAO,gBACvBT,KAAA,CAAAF,SAAA;MAAAmC,QAAA,GACGX,eAAe,eAChB1B,IAAA,CAACN,mBAAmB;QAACmB,aAAa,EAAEA,aAAc;QAACC,UAAU,EAAEA,UAAW;QAACC,SAAS,EAAEA;MAAU,CAAE,CAAC;IAAA,CACnG,CAAC,GAEHW,eACD;IACH,oBACEtB,KAAA,CAACmC,IAAI;MAACC,KAAK,EAAEN,MAAM,CAACO,SAAU;MAAAJ,QAAA,gBAC5BrC,IAAA,CAACuC,IAAI;QAACC,KAAK,EAAEN,MAAM,CAACQ,QAAQ,CAACX,aAAa,EAAET,OAAO,EAAEF,MAAM,KAAK,IAAI;MAAE,CAAE,CAAC,eAGzEhB,KAAA,CAACmC,IAAI;QAACC,KAAK,EAAEN,MAAM,CAACS,QAAS;QAAAN,QAAA,gBAC3BrC,IAAA,CAACJ,aAAa;UAAC2B,KAAK,EAAES;QAAc,CAAE,CAAC,eACvC5B,KAAA,CAACmC,IAAI;UAACC,KAAK,EAAEN,MAAM,CAACU,GAAI;UAAAP,QAAA,GACrBD,OAAO,IAAI,IAAI,iBAAIpC,IAAA,CAACP,OAAO;YAAA4C,QAAA,EAAED;UAAO,CAAU,CAAC,eAGhDpC,IAAA,CAACuC,IAAI;YAACC,KAAK,EAAEN,MAAM,CAACW,cAAe;YAACC,aAAa,EAAEjD,aAAa,CAACS,KAAK,CAAC,GAAG,UAAU,GAAG,MAAO;YAAA+B,QAAA,EAC3FvC,WAAW,CAACQ,KAAK,CAAC,GACfyC,MAAM,CAACzC,KAAK,CAAC,CAAC0C,IAAI,CAAC,CAAC,CAACC,MAAM,GAAG,CAAC,iBAAIjD,IAAA,CAACkD,IAAI;cAACV,KAAK,EAAEN,MAAM,CAAC5B,KAAM;cAAA+B,QAAA,EAAE/B;YAAK,CAAO,CAAC,GAC5EA;UAAK,CACL,CAAC,EACNgC,QAAQ,IAAI,IAAI,iBAAItC,IAAA,CAACP,OAAO;YAAC+C,KAAK,EAAEN,MAAM,CAACI,QAAS;YAAAD,QAAA,EAAEC;UAAQ,CAAU,CAAC;QAAA,CACtE,CAAC,EACN3B,SAAS,IAAI,IAAI,iBAChBX,IAAA,CAACL,eAAe;UAACwD,OAAO,EAAEvC,gBAAiB;UAACwC,cAAc,EAAEvB,2BAA4B;UAAAQ,QAAA,EACrF1B;QAAS,CACK,CAClB;MAAA,CACG,CAAC;IAAA,CACH,CAAC;EACP;AACJ;AAEA,MAAMuB,MAAM,GAAG/C,UAAU,CAACkE,MAAM,CAAC,CAAClC,KAAK,EAAEmC,OAAO,MAAM;EACpDb,SAAS,EAAE;IACTc,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACV,CAAC;EACDjB,QAAQ,EAAEA,CAACX,aAAsB,EAAET,OAAe,EAAEsC,YAAqB,MAAM;IAC7E9B,MAAM,EAAE8B,YAAY,GAAG,CAAC,GAAGN,OAAO,CAACO,MAAM,CAACL,GAAG;IAC7CM,eAAe,EAAE/B,aAAa,GAAG,aAAa,GAAGT,OAAO;IAAAyC,iBAAA;EAC1D,CAAC,CAAC;EACF;EACApB,QAAQ,EAAE;IAAEY,QAAQ,EAAE;EAAW,CAAC;EAClCX,GAAG,EAAE;IACHd,MAAM,EAAEX,KAAK,CAAC6C,MAAM,CAACC,MAAM,CAACnC,MAAM;IAClCoC,aAAa,EAAE,KAAK;IACpBC,UAAU,EAAE,QAAQ;IACpBC,iBAAiB,EAAEjD,KAAK,CAAC6C,MAAM,CAAC5C,MAAM,CAAC+B,OAAO,CAACkB,CAAC;IAChDC,GAAG,EAAEnD,KAAK,CAACoD,OAAO,CAAC,GAAG,CAAC;IACvBC,cAAc,EAAE,eAAe;IAAAT,iBAAA;EACjC,CAAC;EACD;EACA;EACA;EACAzB,QAAQ,EAAE;IACRkC,cAAc,EAAE,UAAU;IAC1BC,QAAQ,EAAE;MACRzD,cAAc,EAAE;QACd0D,MAAM,EAAE;UAAEC,UAAU,EAAE;QAAO,CAAC;QAC9BlB,IAAI,EAAE,CAAC;MACT;IACF,CAAC;IAAAM,iBAAA;EACH,CAAC;EACDlB,cAAc,EAAE;IACd4B,QAAQ,EAAE;MACRzD,cAAc,EAAE;QACd0D,MAAM,EAAE;UACNnB,QAAQ,EAAE,UAAU;UACpBE,IAAI,EAAE,CAAC;UACPC,KAAK,EAAE,CAAC;UACRS,UAAU,EAAE;QACd,CAAC;QACDV,IAAI,EAAE;UACJmB,IAAI,EAAE,CAAC;UACPT,UAAU,EAAE;QACd;MACF;IACF,CAAC;IAAAJ,iBAAA;EACH,CAAC;EACDzD,KAAK,EAAE;IACLuE,QAAQ,EAAE1D,KAAK,CAAC2D,UAAU,CAACL,QAAQ,CAAC,UAAU,CAAC,CAACI,QAAQ;IACxDE,UAAU,EAAE5D,KAAK,CAAC2D,UAAU,CAACL,QAAQ,CAAC,UAAU,CAAC,CAACM,UAAU;IAC5DC,aAAa,EAAE7D,KAAK,CAAC2D,UAAU,CAACL,QAAQ,CAAC,UAAU,CAAC,CAACO,aAAa;IAClEC,UAAU,EAAE3F,iBAAiB,CAAC6B,KAAK,CAAC2D,UAAU,CAACL,QAAQ,CAAC,UAAU,CAAC,CAACQ,UAAU,CAAC;IAC/E1D,KAAK,EAAGJ,KAAK,CAACI,KAAK,CAAmD,cAAc,CAAC,IAAI,EAAE;IAC3FkD,QAAQ,EAAE;MACRzD,cAAc,EAAE;QACd0D,MAAM,EAAE;UAAEQ,SAAS,EAAE;QAAS,CAAC;QAC/BzB,IAAI,EAAE;UAAEyB,SAAS,EAAE;QAAO;MAC5B;IACF,CAAC;IAAAnB,iBAAA;EACH;AACF,CAAC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -30,6 +30,7 @@ export function ScreenScrollProvider({
|
|
|
30
30
|
}) {
|
|
31
31
|
const scrollY = useSharedValue(0);
|
|
32
32
|
const [headerAccessoryHeight, setAccessoryHeight] = useState(0);
|
|
33
|
+
const [contentTopPadding, setTopPadding] = useState(0);
|
|
33
34
|
const headerCollapseHeight = useSharedValue(0);
|
|
34
35
|
const [headerSnapOffsets, setHeaderSnapOffsets] = useState();
|
|
35
36
|
const scrollRef = useAnimatedRef();
|
|
@@ -44,6 +45,9 @@ export function ScreenScrollProvider({
|
|
|
44
45
|
const setHeaderAccessoryHeight = useCallback(height => {
|
|
45
46
|
setAccessoryHeight(Math.max(0, Math.round(height)));
|
|
46
47
|
}, []);
|
|
48
|
+
const setContentTopPadding = useCallback(padding => {
|
|
49
|
+
setTopPadding(Math.max(0, Math.round(padding)));
|
|
50
|
+
}, []);
|
|
47
51
|
const scrollHandler = useAnimatedScrollHandler({
|
|
48
52
|
onScroll: event => {
|
|
49
53
|
scrollY.value = event.contentOffset.y;
|
|
@@ -60,13 +64,15 @@ export function ScreenScrollProvider({
|
|
|
60
64
|
hasHeader,
|
|
61
65
|
headerAccessoryHeight,
|
|
62
66
|
setHeaderAccessoryHeight,
|
|
67
|
+
contentTopPadding,
|
|
68
|
+
setContentTopPadding,
|
|
63
69
|
scrollY,
|
|
64
70
|
headerCollapseHeight,
|
|
65
71
|
headerSnapOffsets,
|
|
66
72
|
setHeaderCollapseHeight,
|
|
67
73
|
scrollRef,
|
|
68
74
|
scrollHandler
|
|
69
|
-
}), [background, contentPadding, safeArea, contentOwnsBottomInset, platformAdjustsInsets, platformInsetsEligible, hasHeader, headerAccessoryHeight, setHeaderAccessoryHeight, scrollY, headerCollapseHeight, headerSnapOffsets, setHeaderCollapseHeight, scrollRef, scrollHandler]);
|
|
75
|
+
}), [background, contentPadding, safeArea, contentOwnsBottomInset, platformAdjustsInsets, platformInsetsEligible, hasHeader, headerAccessoryHeight, setHeaderAccessoryHeight, contentTopPadding, setContentTopPadding, scrollY, headerCollapseHeight, headerSnapOffsets, setHeaderCollapseHeight, scrollRef, scrollHandler]);
|
|
70
76
|
return /*#__PURE__*/_jsx(ScreenContext.Provider, {
|
|
71
77
|
value: value,
|
|
72
78
|
children: children
|