react-native-terra-ui 0.11.4 → 0.11.6
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 +15 -0
- package/lib/module/components/chip/Chip.js +25 -8
- package/lib/module/components/chip/Chip.js.map +1 -1
- package/lib/module/components/chip/utils.js +1 -1
- package/lib/module/components/chip/utils.js.map +1 -1
- package/lib/module/components/header/index.js.map +1 -1
- package/lib/module/components/header/parts/HeaderAccessory.js +55 -0
- package/lib/module/components/header/parts/HeaderAccessory.js.map +1 -0
- package/lib/module/components/header/parts/HeaderSurface.js +65 -0
- package/lib/module/components/header/parts/HeaderSurface.js.map +1 -0
- package/lib/module/components/header/types.js +2 -0
- package/lib/module/components/header/types.js.map +1 -0
- package/lib/module/components/header/utils.js +20 -0
- package/lib/module/components/header/utils.js.map +1 -0
- package/lib/module/components/header/variants/LargeTitleHeader/index.js +33 -30
- package/lib/module/components/header/variants/LargeTitleHeader/index.js.map +1 -1
- package/lib/module/components/header/variants/TitleHeader/index.js +29 -27
- package/lib/module/components/header/variants/TitleHeader/index.js.map +1 -1
- package/lib/module/components/index.js +1 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/input/Input.js +32 -0
- package/lib/module/components/input/Input.js.map +1 -0
- package/lib/module/components/input/index.js +5 -0
- package/lib/module/components/input/index.js.map +1 -0
- package/lib/module/components/input/parts/InputField.js +161 -0
- package/lib/module/components/input/parts/InputField.js.map +1 -0
- package/lib/module/components/input/types.js +4 -0
- package/lib/module/components/input/types.js.map +1 -0
- package/lib/module/components/input/variants/SearchInput/index.js +100 -0
- package/lib/module/components/input/variants/SearchInput/index.js.map +1 -0
- package/lib/module/components/screen/ScreenContext.js +10 -1
- package/lib/module/components/screen/ScreenContext.js.map +1 -1
- package/lib/module/components/screen/ScreenList.js +5 -3
- package/lib/module/components/screen/ScreenList.js.map +1 -1
- package/lib/module/components/screen/ScreenScrollView.js +5 -3
- package/lib/module/components/screen/ScreenScrollView.js.map +1 -1
- package/lib/module/components/toolbar/Toolbar.js +12 -5
- package/lib/module/components/toolbar/Toolbar.js.map +1 -1
- package/lib/module/theme/defaults/icons.js +21 -0
- package/lib/module/theme/defaults/icons.js.map +1 -1
- package/lib/typescript/src/components/chip/Chip.d.ts +8 -0
- package/lib/typescript/src/components/chip/Chip.d.ts.map +1 -1
- package/lib/typescript/src/components/chip/utils.d.ts +6 -1
- package/lib/typescript/src/components/chip/utils.d.ts.map +1 -1
- package/lib/typescript/src/components/header/index.d.ts +1 -0
- package/lib/typescript/src/components/header/index.d.ts.map +1 -1
- package/lib/typescript/src/components/header/parts/HeaderAccessory.d.ts +19 -0
- package/lib/typescript/src/components/header/parts/HeaderAccessory.d.ts.map +1 -0
- package/lib/typescript/src/components/header/parts/HeaderSurface.d.ts +24 -0
- package/lib/typescript/src/components/header/parts/HeaderSurface.d.ts.map +1 -0
- package/lib/typescript/src/components/header/types.d.ts +11 -0
- package/lib/typescript/src/components/header/types.d.ts.map +1 -0
- package/lib/typescript/src/components/header/utils.d.ts +14 -0
- package/lib/typescript/src/components/header/utils.d.ts.map +1 -0
- package/lib/typescript/src/components/header/variants/LargeTitleHeader/index.d.ts +1 -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 +21 -2
- package/lib/typescript/src/components/header/variants/TitleHeader/index.d.ts.map +1 -1
- package/lib/typescript/src/components/index.d.ts +1 -0
- package/lib/typescript/src/components/index.d.ts.map +1 -1
- package/lib/typescript/src/components/input/Input.d.ts +28 -0
- package/lib/typescript/src/components/input/Input.d.ts.map +1 -0
- package/lib/typescript/src/components/input/index.d.ts +4 -0
- package/lib/typescript/src/components/input/index.d.ts.map +1 -0
- package/lib/typescript/src/components/input/parts/InputField.d.ts +8 -0
- package/lib/typescript/src/components/input/parts/InputField.d.ts.map +1 -0
- package/lib/typescript/src/components/input/types.d.ts +29 -0
- package/lib/typescript/src/components/input/types.d.ts.map +1 -0
- package/lib/typescript/src/components/input/variants/SearchInput/index.d.ts +24 -0
- package/lib/typescript/src/components/input/variants/SearchInput/index.d.ts.map +1 -0
- package/lib/typescript/src/components/screen/ScreenContext.d.ts +15 -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/lib/typescript/src/components/toolbar/Toolbar.d.ts +8 -3
- package/lib/typescript/src/components/toolbar/Toolbar.d.ts.map +1 -1
- package/lib/typescript/src/theme/defaults/icons.d.ts.map +1 -1
- package/lib/typescript/src/theme/types.d.ts +1 -1
- package/lib/typescript/src/theme/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/chip/Chip.tsx +22 -9
- package/src/components/chip/utils.ts +7 -2
- package/src/components/header/index.ts +1 -0
- package/src/components/header/parts/HeaderAccessory.tsx +57 -0
- package/src/components/header/parts/HeaderSurface.tsx +65 -0
- package/src/components/header/types.ts +10 -0
- package/src/components/header/utils.ts +19 -0
- package/src/components/header/variants/LargeTitleHeader/index.tsx +43 -28
- package/src/components/header/variants/TitleHeader/index.tsx +42 -18
- package/src/components/index.ts +1 -0
- package/src/components/input/Input.tsx +36 -0
- package/src/components/input/index.ts +3 -0
- package/src/components/input/parts/InputField.tsx +138 -0
- package/src/components/input/types.ts +31 -0
- package/src/components/input/variants/SearchInput/index.tsx +118 -0
- package/src/components/screen/ScreenContext.tsx +26 -0
- package/src/components/screen/ScreenList.tsx +8 -3
- package/src/components/screen/ScreenScrollView.tsx +12 -3
- package/src/components/toolbar/Toolbar.tsx +17 -7
- package/src/theme/defaults/icons.tsx +13 -0
- package/src/theme/types.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/toolbar/Toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,SAAS,EAGf,MAAM,OAAO,CAAC;AACf,OAAO,EAAa,KAAK,cAAc,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIpF,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AA4E1E,UAAU,sBAAuB,SAAQ,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"Toolbar.d.ts","sourceRoot":"","sources":["../../../../../src/components/toolbar/Toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,SAAS,EAGf,MAAM,OAAO,CAAC;AACf,OAAO,EAAa,KAAK,cAAc,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAIpF,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AA4E1E,UAAU,sBAAuB,SAAQ,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,OAAO,GAAG,UAAU,CAAC;IAC9F,4DAA4D;IAC5D,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,sBAAsB,GACrD,CACI;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,CACtD,CAAC;AAEJ;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,QAAa,EACb,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,OAAO,EACP,UAAkB,EAClB,OAAkB,EAClB,KAAK,EACL,GAAG,IAAI,EACR,EAAE,kBAAkB,+BA6CpB;AAyBD,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,mDAAmD;IACnD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,CAAC;IAElB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,YAAY,+LAqBvB,CAAC;AAIH,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C;;;OAGG;IACH,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,QAAA,MAAM,WAAW,0LASf,CAAC;AAEH,KAAK,gBAAgB,GAAG,OAAO,WAAW,GAAG;IAC3C,KAAK,EAAE,OAAO,YAAY,CAAC;IAC3B,MAAM,EAAE,OAAO,aAAa,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,OAAO,EAAkB,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../../../src/theme/defaults/icons.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAkB,qBAAqB,EAAE,MAAM,aAAU,CAAC;AAkH1F,eAAO,MAAM,UAAU,EAAE,kBAUxB,CAAC;
|
|
1
|
+
{"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../../../src/theme/defaults/icons.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAkB,qBAAqB,EAAE,MAAM,aAAU,CAAC;AAkH1F,eAAO,MAAM,UAAU,EAAE,kBAUxB,CAAC;AAcF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAW1E,CAAC"}
|
|
@@ -290,7 +290,7 @@ declare global {
|
|
|
290
290
|
}
|
|
291
291
|
export interface TerraIconRegistry extends TerraUI.IconRegistry {
|
|
292
292
|
}
|
|
293
|
-
export type TerraSemanticIconName = "terra.chevron-left" | "terra.chevron-right" | "terra.x" | "terra.check" | "terra.person" | "status.info" | "status.success" | "status.warning" | "status.danger";
|
|
293
|
+
export type TerraSemanticIconName = "terra.chevron-left" | "terra.chevron-right" | "terra.x" | "terra.check" | "terra.person" | "terra.search" | "status.info" | "status.success" | "status.warning" | "status.danger";
|
|
294
294
|
export type TerraConfiguredIconName = keyof TerraIconRegistry & string;
|
|
295
295
|
export type TerraIconName = TerraSemanticIconName | TerraConfiguredIconName;
|
|
296
296
|
export type ThemeRadiusOverride = DeepPartial<TerraTheme["radius"]> & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/theme/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/theme/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -14,6 +14,14 @@ export interface ChipProps extends ViewProps {
|
|
|
14
14
|
size?: ChipSize;
|
|
15
15
|
variant?: ChipVariant;
|
|
16
16
|
color?: ChipColor;
|
|
17
|
+
/**
|
|
18
|
+
* Fill behind the chip, overriding the one its `variant` would paint.
|
|
19
|
+
*
|
|
20
|
+
* Only `outline` has a fill worth naming a default for — `'surface.default'`,
|
|
21
|
+
* so an outlined chip reads as a solid capsule rather than a ring over
|
|
22
|
+
* whatever it happens to sit on. Pass `'transparent'` to get the ring back.
|
|
23
|
+
*/
|
|
24
|
+
background?: ColorToken;
|
|
17
25
|
children?: ReactNode;
|
|
18
26
|
}
|
|
19
27
|
|
|
@@ -177,9 +185,10 @@ function renderChildren(children: ReactNode): ReactNode {
|
|
|
177
185
|
// ─── Component ────────────────────────────────────────────────────────────────
|
|
178
186
|
|
|
179
187
|
const ChipRoot = forwardRef<ComponentRef<typeof View>, ChipProps>(function Chip(
|
|
180
|
-
{ size = "md", variant = "soft", color = "secondary", children, style, ...rest },
|
|
188
|
+
{ size = "md", variant = "soft", color = "secondary", background, children, style, ...rest },
|
|
181
189
|
ref
|
|
182
190
|
) {
|
|
191
|
+
const { theme } = useUnistyles();
|
|
183
192
|
// Compound variants only match the 5 named schemes above — an arbitrary
|
|
184
193
|
// literal never matches one, so it's cast to satisfy `useVariants`'s
|
|
185
194
|
// literal-union type while still comparing against the real value below.
|
|
@@ -195,15 +204,20 @@ const ChipRoot = forwardRef<ComponentRef<typeof View>, ChipProps>(function Chip(
|
|
|
195
204
|
const customPaint =
|
|
196
205
|
customColors && variant !== "ghost"
|
|
197
206
|
? {
|
|
198
|
-
|
|
207
|
+
// Absent for outline, whose fill comes from the `outline` style
|
|
208
|
+
// variant — spreading `undefined` here would clear it instead.
|
|
209
|
+
...(customColors.bg === undefined ? null : { backgroundColor: customColors.bg }),
|
|
199
210
|
borderColor: customColors.border,
|
|
200
211
|
borderWidth: customColors.borderWidth,
|
|
201
212
|
}
|
|
202
213
|
: null;
|
|
214
|
+
// Last of the paint layers, so an explicit fill beats both the variant's own
|
|
215
|
+
// and the one derived from a custom color literal.
|
|
216
|
+
const backgroundPaint = background ? { backgroundColor: resolveThemeColor(background, theme) } : null;
|
|
203
217
|
|
|
204
218
|
return (
|
|
205
219
|
<ChipContext.Provider value={{ color: fg, size }}>
|
|
206
|
-
<View ref={ref} style={[styles.base, customPaint, style]} {...rest}>
|
|
220
|
+
<View ref={ref} style={[styles.base, customPaint, backgroundPaint, style]} {...rest}>
|
|
207
221
|
{renderChildren(children)}
|
|
208
222
|
</View>
|
|
209
223
|
</ChipContext.Provider>
|
|
@@ -314,7 +328,11 @@ const styles = StyleSheet.create((theme) => {
|
|
|
314
328
|
variant: {
|
|
315
329
|
solid: {},
|
|
316
330
|
soft: {},
|
|
317
|
-
|
|
331
|
+
// The fill every outlined chip gets, whatever its color — the
|
|
332
|
+
// compound rows below only add the ring. A named default lives here
|
|
333
|
+
// rather than in each row so a custom color literal, which matches no
|
|
334
|
+
// compound row at all, is filled the same way.
|
|
335
|
+
outline: { backgroundColor: c["surface.default"] },
|
|
318
336
|
ghost: {
|
|
319
337
|
backgroundColor: "transparent",
|
|
320
338
|
borderColor: "transparent",
|
|
@@ -343,7 +361,6 @@ const styles = StyleSheet.create((theme) => {
|
|
|
343
361
|
color: "primary",
|
|
344
362
|
variant: "outline",
|
|
345
363
|
styles: {
|
|
346
|
-
backgroundColor: "transparent",
|
|
347
364
|
borderColor: c["accent.soft.bg"],
|
|
348
365
|
borderWidth: 1,
|
|
349
366
|
},
|
|
@@ -368,7 +385,6 @@ const styles = StyleSheet.create((theme) => {
|
|
|
368
385
|
color: "secondary",
|
|
369
386
|
variant: "outline",
|
|
370
387
|
styles: {
|
|
371
|
-
backgroundColor: "transparent",
|
|
372
388
|
borderColor: c["neutral.soft.bg"],
|
|
373
389
|
borderWidth: 1,
|
|
374
390
|
},
|
|
@@ -393,7 +409,6 @@ const styles = StyleSheet.create((theme) => {
|
|
|
393
409
|
color: "success",
|
|
394
410
|
variant: "outline",
|
|
395
411
|
styles: {
|
|
396
|
-
backgroundColor: "transparent",
|
|
397
412
|
borderColor: c["success.soft.bg"],
|
|
398
413
|
borderWidth: 1,
|
|
399
414
|
},
|
|
@@ -418,7 +433,6 @@ const styles = StyleSheet.create((theme) => {
|
|
|
418
433
|
color: "warning",
|
|
419
434
|
variant: "outline",
|
|
420
435
|
styles: {
|
|
421
|
-
backgroundColor: "transparent",
|
|
422
436
|
borderColor: c["warning.soft.bg"],
|
|
423
437
|
borderWidth: 1,
|
|
424
438
|
},
|
|
@@ -443,7 +457,6 @@ const styles = StyleSheet.create((theme) => {
|
|
|
443
457
|
color: "danger",
|
|
444
458
|
variant: "outline",
|
|
445
459
|
styles: {
|
|
446
|
-
backgroundColor: "transparent",
|
|
447
460
|
borderColor: c["danger.soft.bg"],
|
|
448
461
|
borderWidth: 1,
|
|
449
462
|
},
|
|
@@ -6,7 +6,12 @@ import { readableOn, withAlpha } from "#utils/color-utils";
|
|
|
6
6
|
// full color scheme.
|
|
7
7
|
|
|
8
8
|
export interface CustomChipColors {
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Undefined for `outline`, which takes the fill its style variant paints
|
|
11
|
+
* rather than deriving one — the outlined chip's fill is a surface, not a
|
|
12
|
+
* tint of the literal, so there is nothing here to derive it from.
|
|
13
|
+
*/
|
|
14
|
+
bg: string | undefined;
|
|
10
15
|
border: string;
|
|
11
16
|
borderWidth: number;
|
|
12
17
|
fg: string;
|
|
@@ -22,7 +27,7 @@ export function getCustomColorColors(
|
|
|
22
27
|
// read as the same weight of colour — one filled, one drawn.
|
|
23
28
|
if (variant === "outline") {
|
|
24
29
|
return {
|
|
25
|
-
bg:
|
|
30
|
+
bg: undefined,
|
|
26
31
|
border: withAlpha(literal, CUSTOM_COLOR_SOFT_ALPHA),
|
|
27
32
|
borderWidth: 1,
|
|
28
33
|
fg: literal,
|
|
@@ -7,6 +7,7 @@ export {
|
|
|
7
7
|
type HeaderDismissNavigation,
|
|
8
8
|
type HeaderDismissProps,
|
|
9
9
|
} from "./header-buttons";
|
|
10
|
+
export type { HeaderAccessoryPadding } from "./types";
|
|
10
11
|
export type { LargeTitleHeaderProps } from "./variants/LargeTitleHeader";
|
|
11
12
|
export { LargeTitleHeader } from "./variants/LargeTitleHeader";
|
|
12
13
|
export type { TitleHeaderProps } from "./variants/TitleHeader";
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { type ReactNode, useCallback, useContext, useEffect } from "react";
|
|
2
|
+
import { type LayoutChangeEvent, View } from "react-native";
|
|
3
|
+
|
|
4
|
+
import { StyleSheet } from "react-native-unistyles";
|
|
5
|
+
|
|
6
|
+
import { ScreenContext } from "../../screen/ScreenContext";
|
|
7
|
+
import type { HeaderAccessoryPadding } from "../types";
|
|
8
|
+
|
|
9
|
+
export interface HeaderAccessoryProps {
|
|
10
|
+
children: ReactNode;
|
|
11
|
+
/** Horizontal padding around the accessory. */
|
|
12
|
+
padding: HeaderAccessoryPadding;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Pinned content below a header bar — a search field, a tab strip.
|
|
17
|
+
*
|
|
18
|
+
* Reports its measured height to the surrounding `Screen` so scroll containers
|
|
19
|
+
* reserve it above their content. The theme header height covers the bar alone
|
|
20
|
+
* and the accessory is whatever the caller passed, so nothing but a measurement
|
|
21
|
+
* can know how far down the content has to start.
|
|
22
|
+
*
|
|
23
|
+
* Outside a `Screen` there is nothing to report to and it simply renders.
|
|
24
|
+
*/
|
|
25
|
+
export function HeaderAccessory({ children, padding }: HeaderAccessoryProps) {
|
|
26
|
+
const setHeaderAccessoryHeight = useContext(ScreenContext)?.setHeaderAccessoryHeight;
|
|
27
|
+
|
|
28
|
+
const handleLayout = useCallback(
|
|
29
|
+
(event: LayoutChangeEvent) => {
|
|
30
|
+
setHeaderAccessoryHeight?.(event.nativeEvent.layout.height);
|
|
31
|
+
},
|
|
32
|
+
[setHeaderAccessoryHeight]
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
// An unmounted accessory never lays out again, so without this the screen
|
|
36
|
+
// would keep reserving room for content that is no longer there.
|
|
37
|
+
useEffect(() => () => setHeaderAccessoryHeight?.(0), [setHeaderAccessoryHeight]);
|
|
38
|
+
|
|
39
|
+
styles.useVariants({ padding });
|
|
40
|
+
|
|
41
|
+
return (
|
|
42
|
+
<View style={styles.accessory} onLayout={handleLayout}>
|
|
43
|
+
{children}
|
|
44
|
+
</View>
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
const styles = StyleSheet.create((theme) => ({
|
|
49
|
+
accessory: {
|
|
50
|
+
variants: {
|
|
51
|
+
padding: {
|
|
52
|
+
x: { paddingHorizontal: theme.layout.screen.padding.x },
|
|
53
|
+
none: {},
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
}));
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { View } from "react-native";
|
|
2
|
+
|
|
3
|
+
import Animated, { type useAnimatedStyle } from "react-native-reanimated";
|
|
4
|
+
import { StyleSheet } from "react-native-unistyles";
|
|
5
|
+
|
|
6
|
+
import { HEADER_FADE_EXTENT, HeaderGradientOverlay } from "./HeaderGradientOverlay";
|
|
7
|
+
|
|
8
|
+
type HeaderOpacityStyle = ReturnType<typeof useAnimatedStyle<{ opacity: number }>>;
|
|
9
|
+
|
|
10
|
+
export interface HeaderSurfaceProps {
|
|
11
|
+
/** Fill color, fading to fully transparent along the bottom edge. */
|
|
12
|
+
color: string;
|
|
13
|
+
/** Opacity style for variants that fade the whole surface in as they collapse. */
|
|
14
|
+
animatedStyle?: HeaderOpacityStyle;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* The painted background behind a header — the bar, any accessory below it, and
|
|
19
|
+
* the fade that releases scrolling content at the bottom edge.
|
|
20
|
+
*
|
|
21
|
+
* Split into a flat fill and a fixed-height ramp rather than one gradient over
|
|
22
|
+
* the whole box, because {@link HeaderGradientOverlay}'s curve is expressed in
|
|
23
|
+
* fractions of its own height. Stretched over a tall accessory the fade would
|
|
24
|
+
* begin partway up it, and content passing behind would show through the thing
|
|
25
|
+
* the caller put there to be read. Pinning the ramp to the bar's height keeps it
|
|
26
|
+
* identical with or without an accessory, and everything above it stays solid.
|
|
27
|
+
*/
|
|
28
|
+
export function HeaderSurface({ color, animatedStyle }: HeaderSurfaceProps) {
|
|
29
|
+
return (
|
|
30
|
+
<Animated.View style={[styles.surface, animatedStyle]} pointerEvents="none">
|
|
31
|
+
<View style={styles.fill(color)} />
|
|
32
|
+
<View style={styles.fade}>
|
|
33
|
+
<HeaderGradientOverlay color={color} />
|
|
34
|
+
</View>
|
|
35
|
+
</Animated.View>
|
|
36
|
+
);
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
const styles = StyleSheet.create((theme) => ({
|
|
40
|
+
// Covers the bar and any accessory, overhanging so the fade's tail finishes in
|
|
41
|
+
// open space rather than being clipped at the header's edge.
|
|
42
|
+
surface: {
|
|
43
|
+
position: "absolute",
|
|
44
|
+
top: 0,
|
|
45
|
+
left: 0,
|
|
46
|
+
right: 0,
|
|
47
|
+
bottom: -HEADER_FADE_EXTENT,
|
|
48
|
+
},
|
|
49
|
+
// Collapses to nothing when there is no accessory, leaving the ramp alone.
|
|
50
|
+
fill: (color: string) => ({
|
|
51
|
+
position: "absolute",
|
|
52
|
+
top: 0,
|
|
53
|
+
left: 0,
|
|
54
|
+
right: 0,
|
|
55
|
+
bottom: theme.layout.header.height + HEADER_FADE_EXTENT,
|
|
56
|
+
backgroundColor: color,
|
|
57
|
+
}),
|
|
58
|
+
fade: {
|
|
59
|
+
position: "absolute",
|
|
60
|
+
left: 0,
|
|
61
|
+
right: 0,
|
|
62
|
+
bottom: 0,
|
|
63
|
+
height: theme.layout.header.height + HEADER_FADE_EXTENT,
|
|
64
|
+
},
|
|
65
|
+
}));
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Horizontal padding applied to a header accessory.
|
|
3
|
+
*
|
|
4
|
+
* - `'x'` — the screen's horizontal padding, matching the bar above it. What a
|
|
5
|
+
* field-shaped accessory (a search input, a segmented control) wants.
|
|
6
|
+
* - `'none'` — full bleed. What a horizontally scrolling accessory (a tab strip,
|
|
7
|
+
* a filter row) wants, so its content can run to the screen edge instead of
|
|
8
|
+
* being clipped at an inset the caller cannot scroll past.
|
|
9
|
+
*/
|
|
10
|
+
export type HeaderAccessoryPadding = "x" | "none";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* True when a header title should be painted as themed header text. Every other
|
|
5
|
+
* node — an `Image`, an `Icon`, a row of them — is custom content the caller
|
|
6
|
+
* wants rendered exactly as given, so the header only positions it.
|
|
7
|
+
*/
|
|
8
|
+
export function isTextTitle(title: ReactNode): title is string | number {
|
|
9
|
+
return typeof title === "string" || typeof title === "number";
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* True when the title is custom content rather than text or nothing. Such a
|
|
14
|
+
* title may be interactive, so its container has to let touches through to it
|
|
15
|
+
* (`box-none`) instead of swallowing them (`none`).
|
|
16
|
+
*/
|
|
17
|
+
export function isCustomTitle(title: ReactNode): boolean {
|
|
18
|
+
return title != null && title !== false && !isTextTitle(title);
|
|
19
|
+
}
|
|
@@ -11,7 +11,9 @@ import { useHeaderBackground } from "../../../screen/parts/ScreenHeaderAppearanc
|
|
|
11
11
|
import { SCREEN_HEADER_PORTAL_HOST, useScreen } from "../../../screen/ScreenContext";
|
|
12
12
|
import { Toolbar } from "../../../toolbar";
|
|
13
13
|
import { HeaderDismissButton } from "../../header-buttons";
|
|
14
|
-
import {
|
|
14
|
+
import { HeaderAccessory } from "../../parts/HeaderAccessory";
|
|
15
|
+
import { HeaderSurface } from "../../parts/HeaderSurface";
|
|
16
|
+
import { isCustomTitle, isTextTitle } from "../../utils";
|
|
15
17
|
import type { TitleHeaderProps } from "../TitleHeader";
|
|
16
18
|
|
|
17
19
|
const AnimatedText = Animated.createAnimatedComponent(Text);
|
|
@@ -71,12 +73,16 @@ function LargeTitlePortalContent({
|
|
|
71
73
|
{overline}
|
|
72
74
|
</Text>
|
|
73
75
|
)}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
76
|
+
{isTextTitle(title) ? (
|
|
77
|
+
<Text
|
|
78
|
+
style={styles.largeTitle}
|
|
79
|
+
maxFontSizeMultiplier={theme.typography.variants["headline-lg"].maxFontSizeMultiplier}
|
|
80
|
+
>
|
|
81
|
+
{title}
|
|
82
|
+
</Text>
|
|
83
|
+
) : (
|
|
84
|
+
title
|
|
85
|
+
)}
|
|
80
86
|
{!!subtitle && (
|
|
81
87
|
<Text
|
|
82
88
|
style={styles.subtitle}
|
|
@@ -118,6 +124,8 @@ export function LargeTitleHeader({
|
|
|
118
124
|
trailingActions,
|
|
119
125
|
LeftToolbar,
|
|
120
126
|
RightToolbar,
|
|
127
|
+
accessory,
|
|
128
|
+
accessoryPadding = "x",
|
|
121
129
|
dismissAction = "none",
|
|
122
130
|
navigation,
|
|
123
131
|
onDismiss,
|
|
@@ -210,20 +218,33 @@ export function LargeTitleHeader({
|
|
|
210
218
|
<LargeTitlePortalContent title={title} overline={overline} subtitle={subtitle} />
|
|
211
219
|
</Portal>
|
|
212
220
|
)}
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
221
|
+
{/* The fade covers the bar and any accessory as one surface, so content
|
|
222
|
+
scrolling under the header meets a single boundary rather than two. */}
|
|
223
|
+
<View style={styles.barGroup}>
|
|
224
|
+
<HeaderSurface color={gradientColor} animatedStyle={gradientOpacityStyle} />
|
|
225
|
+
<View style={styles.bar}>
|
|
226
|
+
{leading != null && <Toolbar>{leading}</Toolbar>}
|
|
227
|
+
{/* Text can never be the touch target, but custom content may be, so its
|
|
228
|
+
container passes touches through to it instead of swallowing them. */}
|
|
229
|
+
<Animated.View
|
|
230
|
+
style={[styles.titleContainer, compactTitleAnimatedStyle]}
|
|
231
|
+
pointerEvents={isCustomTitle(title) ? "box-none" : "none"}
|
|
222
232
|
>
|
|
223
|
-
{title
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
233
|
+
{isTextTitle(title) ? (
|
|
234
|
+
<AnimatedText
|
|
235
|
+
style={styles.compactTitle}
|
|
236
|
+
maxFontSizeMultiplier={theme.typography.variants["title-md"].maxFontSizeMultiplier}
|
|
237
|
+
>
|
|
238
|
+
{title}
|
|
239
|
+
</AnimatedText>
|
|
240
|
+
) : (
|
|
241
|
+
title
|
|
242
|
+
)}
|
|
243
|
+
</Animated.View>
|
|
244
|
+
{trailing != null && <Toolbar style={styles.trailing}>{trailing}</Toolbar>}
|
|
245
|
+
</View>
|
|
246
|
+
{/* Pinned, so it stays legible while the large title collapses past it. */}
|
|
247
|
+
{accessory != null && <HeaderAccessory padding={accessoryPadding}>{accessory}</HeaderAccessory>}
|
|
227
248
|
</View>
|
|
228
249
|
</View>
|
|
229
250
|
);
|
|
@@ -237,14 +258,8 @@ const styles = StyleSheet.create((theme) => ({
|
|
|
237
258
|
right: 0,
|
|
238
259
|
zIndex: 1000,
|
|
239
260
|
},
|
|
240
|
-
//
|
|
241
|
-
|
|
242
|
-
position: "absolute",
|
|
243
|
-
top: 0,
|
|
244
|
-
left: 0,
|
|
245
|
-
right: 0,
|
|
246
|
-
bottom: -HEADER_FADE_EXTENT,
|
|
247
|
-
},
|
|
261
|
+
// Anchors the absolutely positioned surface over the bar and the accessory both.
|
|
262
|
+
barGroup: { position: "relative" },
|
|
248
263
|
bar: {
|
|
249
264
|
height: theme.layout.header.height,
|
|
250
265
|
flexDirection: "row",
|
|
@@ -10,10 +10,18 @@ import { useHeaderBackground } from "../../../screen/parts/ScreenHeaderAppearanc
|
|
|
10
10
|
import { ScreenContext } from "../../../screen/ScreenContext";
|
|
11
11
|
import { Toolbar } from "../../../toolbar";
|
|
12
12
|
import { HeaderDismissButton, type HeaderDismissProps } from "../../header-buttons";
|
|
13
|
-
import {
|
|
13
|
+
import { HeaderAccessory } from "../../parts/HeaderAccessory";
|
|
14
|
+
import { HeaderSurface } from "../../parts/HeaderSurface";
|
|
15
|
+
import type { HeaderAccessoryPadding } from "../../types";
|
|
16
|
+
import { isCustomTitle, isTextTitle } from "../../utils";
|
|
14
17
|
|
|
15
18
|
export interface TitleHeaderProps extends HeaderDismissProps {
|
|
16
|
-
|
|
19
|
+
/**
|
|
20
|
+
* A `string` (or `number`) is painted in the header's own title style. Any
|
|
21
|
+
* other node — a logo, an `Icon`, a segmented control — renders as given, and
|
|
22
|
+
* the header only places it according to `titleAlignment`.
|
|
23
|
+
*/
|
|
24
|
+
title?: ReactNode;
|
|
17
25
|
/**
|
|
18
26
|
* Leading-side actions, wrapped in a `Toolbar` row. Pass `Toolbar.Group` /
|
|
19
27
|
* `Toolbar.Button` children directly — no `Toolbar` of your own.
|
|
@@ -28,6 +36,19 @@ export interface TitleHeaderProps extends HeaderDismissProps {
|
|
|
28
36
|
trailingActions?: ReactNode;
|
|
29
37
|
/** @deprecated Use trailingActions. */
|
|
30
38
|
RightToolbar?: ReactNode;
|
|
39
|
+
/**
|
|
40
|
+
* Content pinned directly below the bar — a search field, a scrollable tab
|
|
41
|
+
* strip, a filter row. It stays put while the screen scrolls, and the
|
|
42
|
+
* surrounding `Screen`'s scroll containers reserve its measured height so
|
|
43
|
+
* content starts below it rather than under it.
|
|
44
|
+
*/
|
|
45
|
+
accessory?: ReactNode;
|
|
46
|
+
/**
|
|
47
|
+
* Horizontal padding around `accessory`. Use `'none'` for content that should
|
|
48
|
+
* run to the screen edge, such as a horizontally scrolling tab strip.
|
|
49
|
+
* Defaults to `'x'`, matching the bar.
|
|
50
|
+
*/
|
|
51
|
+
accessoryPadding?: HeaderAccessoryPadding;
|
|
31
52
|
/** Title placement within the bar. Defaults to `'center'`. */
|
|
32
53
|
titleAlignment?: "center" | "left";
|
|
33
54
|
/** Color token for the top safe area and fading bar overlay. Defaults to the Screen background. */
|
|
@@ -59,6 +80,8 @@ export function TitleHeader({
|
|
|
59
80
|
trailingActions,
|
|
60
81
|
LeftToolbar,
|
|
61
82
|
RightToolbar,
|
|
83
|
+
accessory,
|
|
84
|
+
accessoryPadding = "x",
|
|
62
85
|
dismissAction = "none",
|
|
63
86
|
navigation,
|
|
64
87
|
onDismiss,
|
|
@@ -101,15 +124,22 @@ export function TitleHeader({
|
|
|
101
124
|
return (
|
|
102
125
|
<View style={styles.container}>
|
|
103
126
|
<View style={styles.safeArea(isTransparent, bgColor, screen !== null)} />
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
127
|
+
{/* The fade covers the bar and any accessory as one surface, so content
|
|
128
|
+
scrolling under the header meets a single boundary rather than two. */}
|
|
129
|
+
<View style={styles.barGroup}>
|
|
130
|
+
<HeaderSurface color={gradientColor} />
|
|
131
|
+
<View style={styles.bar}>
|
|
132
|
+
{leading != null && <Toolbar>{leading}</Toolbar>}
|
|
133
|
+
{/* Text can never be the touch target, but custom content may be, so its
|
|
134
|
+
container passes touches through to it instead of swallowing them. */}
|
|
135
|
+
<View style={styles.titleContainer} pointerEvents={isCustomTitle(title) ? "box-none" : "none"}>
|
|
136
|
+
{isTextTitle(title)
|
|
137
|
+
? String(title).trim().length > 0 && <Text style={styles.title}>{title}</Text>
|
|
138
|
+
: title}
|
|
139
|
+
</View>
|
|
140
|
+
{trailing != null && <Toolbar style={styles.trailing}>{trailing}</Toolbar>}
|
|
107
141
|
</View>
|
|
108
|
-
{
|
|
109
|
-
<View style={styles.titleContainer} pointerEvents="none">
|
|
110
|
-
{!!title && <Text style={styles.title}>{title}</Text>}
|
|
111
|
-
</View>
|
|
112
|
-
{trailing != null && <Toolbar style={styles.trailing}>{trailing}</Toolbar>}
|
|
142
|
+
{accessory != null && <HeaderAccessory padding={accessoryPadding}>{accessory}</HeaderAccessory>}
|
|
113
143
|
</View>
|
|
114
144
|
</View>
|
|
115
145
|
);
|
|
@@ -127,14 +157,8 @@ const styles = StyleSheet.create((theme, runtime) => ({
|
|
|
127
157
|
height: withinScreen ? 0 : runtime.insets.top,
|
|
128
158
|
backgroundColor: isTransparent ? "transparent" : bgColor,
|
|
129
159
|
}),
|
|
130
|
-
//
|
|
131
|
-
|
|
132
|
-
position: "absolute",
|
|
133
|
-
top: 0,
|
|
134
|
-
left: 0,
|
|
135
|
-
right: 0,
|
|
136
|
-
bottom: -HEADER_FADE_EXTENT,
|
|
137
|
-
},
|
|
160
|
+
// Anchors the absolutely positioned surface over the bar and the accessory both.
|
|
161
|
+
barGroup: { position: "relative" },
|
|
138
162
|
bar: {
|
|
139
163
|
height: theme.layout.header.height,
|
|
140
164
|
flexDirection: "row",
|
package/src/components/index.ts
CHANGED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type ComponentRef, forwardRef } from "react";
|
|
2
|
+
import type { TextInput } from "react-native";
|
|
3
|
+
|
|
4
|
+
import { InputField } from "./parts/InputField";
|
|
5
|
+
import type { InputBaseProps } from "./types";
|
|
6
|
+
import { SearchInput } from "./variants/SearchInput";
|
|
7
|
+
|
|
8
|
+
export interface InputProps extends InputBaseProps {}
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* A themed single-line text field. Wraps React Native's `TextInput`, so every
|
|
12
|
+
* one of its props still applies; `style` reaches the container instead, and
|
|
13
|
+
* the text is themed from `size`.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```tsx
|
|
17
|
+
* <Input placeholder="Your name" value={name} onChangeText={setName} />
|
|
18
|
+
* <Input size="lg" leading={<Icon name="terra.person" color="text.tertiary" />} />
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
const InputRoot = forwardRef<ComponentRef<typeof TextInput>, InputProps>(function Input(props, ref) {
|
|
22
|
+
return <InputField ref={ref} {...props} />;
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
type InputComponent = typeof InputRoot & {
|
|
26
|
+
Search: typeof SearchInput;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Input namespace.
|
|
31
|
+
*
|
|
32
|
+
* - `Input` — the plain text field.
|
|
33
|
+
* - `Input.Search` — a search field with a leading glyph and a clear button.
|
|
34
|
+
*/
|
|
35
|
+
export const Input = InputRoot as InputComponent;
|
|
36
|
+
Input.Search = SearchInput;
|