react-native-terra-ui 0.4.1 → 0.5.1

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.
Files changed (53) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/lib/module/components/header/parts/HeaderGradientOverlay.js +1 -1
  3. package/lib/module/components/header/parts/HeaderGradientOverlay.js.map +1 -1
  4. package/lib/module/components/image/Image.js +5 -0
  5. package/lib/module/components/image/Image.js.map +1 -1
  6. package/lib/module/components/screen/Screen.js +1 -4
  7. package/lib/module/components/screen/Screen.js.map +1 -1
  8. package/lib/module/components/screen/ScreenFlatList.js +12 -0
  9. package/lib/module/components/screen/ScreenFlatList.js.map +1 -1
  10. package/lib/module/components/screen/ScreenList.js +2 -2
  11. package/lib/module/components/screen/ScreenList.js.map +1 -1
  12. package/lib/module/components/screen/index.js +0 -1
  13. package/lib/module/components/screen/index.js.map +1 -1
  14. package/lib/module/components/toast/Toast.js +2 -2
  15. package/lib/module/components/toolbar/Toolbar.js +3 -1
  16. package/lib/module/components/toolbar/Toolbar.js.map +1 -1
  17. package/lib/module/theme/tokens/primitives.js +8 -3
  18. package/lib/module/theme/tokens/primitives.js.map +1 -1
  19. package/lib/typescript/src/components/image/Image.d.ts +1 -1
  20. package/lib/typescript/src/components/image/Image.d.ts.map +1 -1
  21. package/lib/typescript/src/components/screen/Screen.d.ts +1 -2
  22. package/lib/typescript/src/components/screen/Screen.d.ts.map +1 -1
  23. package/lib/typescript/src/components/screen/ScreenContext.d.ts +2 -2
  24. package/lib/typescript/src/components/screen/ScreenFlatList.d.ts +11 -0
  25. package/lib/typescript/src/components/screen/ScreenFlatList.d.ts.map +1 -1
  26. package/lib/typescript/src/components/screen/ScreenList.d.ts +3 -2
  27. package/lib/typescript/src/components/screen/ScreenList.d.ts.map +1 -1
  28. package/lib/typescript/src/components/screen/index.d.ts +0 -2
  29. package/lib/typescript/src/components/screen/index.d.ts.map +1 -1
  30. package/lib/typescript/src/components/screen/types.d.ts +2 -3
  31. package/lib/typescript/src/components/screen/types.d.ts.map +1 -1
  32. package/lib/typescript/src/theme/tokens/primitives.d.ts +5 -0
  33. package/lib/typescript/src/theme/tokens/primitives.d.ts.map +1 -1
  34. package/lib/typescript/src/theme/types.d.ts +16 -1
  35. package/lib/typescript/src/theme/types.d.ts.map +1 -1
  36. package/package.json +2 -4
  37. package/src/components/header/parts/HeaderGradientOverlay.tsx +1 -1
  38. package/src/components/image/Image.tsx +10 -1
  39. package/src/components/screen/Screen.tsx +2 -5
  40. package/src/components/screen/ScreenContext.tsx +2 -2
  41. package/src/components/screen/ScreenFlatList.tsx +11 -0
  42. package/src/components/screen/ScreenList.tsx +5 -4
  43. package/src/components/screen/index.ts +0 -2
  44. package/src/components/screen/types.ts +2 -3
  45. package/src/components/toast/Toast.tsx +2 -2
  46. package/src/components/toolbar/Toolbar.tsx +2 -0
  47. package/src/theme/tokens/primitives.ts +9 -3
  48. package/src/theme/types.ts +16 -1
  49. package/lib/module/components/screen/ScreenFlashList.js +0 -166
  50. package/lib/module/components/screen/ScreenFlashList.js.map +0 -1
  51. package/lib/typescript/src/components/screen/ScreenFlashList.d.ts +0 -43
  52. package/lib/typescript/src/components/screen/ScreenFlashList.d.ts.map +0 -1
  53. package/src/components/screen/ScreenFlashList.tsx +0 -216
@@ -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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-terra-ui",
3
- "version": "0.4.1",
3
+ "version": "0.5.1",
4
4
  "description": "Themeable React Native UI components built on react-native-unistyles",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -60,7 +60,6 @@
60
60
  "@react-native/babel-preset": "0.85.0",
61
61
  "@react-native/jest-preset": "0.85.0",
62
62
  "@release-it/conventional-changelog": "^12.0.0",
63
- "@shopify/flash-list": "^2.3.2",
64
63
  "@testing-library/react-native": "^13.3.3",
65
64
  "@types/react": "^19.2.0",
66
65
  "babel-plugin-module-resolver": "^5.0.3",
@@ -83,7 +82,6 @@
83
82
  "typescript": "^6.0.3"
84
83
  },
85
84
  "peerDependencies": {
86
- "@shopify/flash-list": ">=2.0.0",
87
85
  "react": "*",
88
86
  "react-native": "*",
89
87
  "react-native-reanimated": ">=4.0.0",
@@ -121,7 +119,7 @@
121
119
  "<rootDir>/lib/"
122
120
  ],
123
121
  "transformIgnorePatterns": [
124
- "node_modules/(?!((jest-)?react-native|@react-native(-community)?|@shopify/flash-list|react-native-screens)/)"
122
+ "node_modules/(?!((jest-)?react-native|@react-native(-community)?|react-native-screens)/)"
125
123
  ],
126
124
  "collectCoverageFrom": [
127
125
  "src/theme/**/*.ts",
@@ -20,7 +20,7 @@ export function HeaderGradientOverlay({ color }: HeaderGradientOverlayProps) {
20
20
  <Defs>
21
21
  <SvgLinearGradient id={gradientId} x1="0" y1="0" x2="0" y2="1">
22
22
  <Stop offset="0" stopColor={color} stopOpacity="1" />
23
- <Stop offset="1" stopColor={color} stopOpacity="0.9" />
23
+ <Stop offset="1" stopColor={color} stopOpacity="0.86" />
24
24
  </SvgLinearGradient>
25
25
  </Defs>
26
26
  <Rect width="100%" height="100%" fill={`url(#${gradientId})`} />
@@ -23,13 +23,22 @@ export function Image({
23
23
  height,
24
24
  radius = 'none',
25
25
  style,
26
+ // Defaults to `contentFit` here (rather than leaving it to each backend's
27
+ // own default) so a same-resolution placeholder never renders smaller than
28
+ // the loaded image regardless of which image implementation is configured.
29
+ placeholderContentFit = contentFit,
26
30
  ...rest
27
31
  }: ImageProps) {
28
32
  const ImageComponent = getImageComponent();
29
33
 
30
34
  return (
31
35
  <View style={[styles.container(width, height, radius), style]}>
32
- <ImageComponent contentFit={contentFit} style={styles.image} {...rest} />
36
+ <ImageComponent
37
+ contentFit={contentFit}
38
+ placeholderContentFit={placeholderContentFit}
39
+ style={styles.image}
40
+ {...rest}
41
+ />
33
42
  </View>
34
43
  );
35
44
  }
@@ -17,7 +17,6 @@ import type { ColorToken } from '#theme/types';
17
17
  import { resolveThemeColor } from '#utils/resolve-theme-color';
18
18
  import { PortalProvider } from '../portal';
19
19
  import { ScreenScrollProvider } from './ScreenContext';
20
- import { ScreenFlashList } from './ScreenFlashList';
21
20
  import { ScreenFlatList } from './ScreenFlatList';
22
21
  import { ScreenList } from './ScreenList';
23
22
  import { ScreenScrollView } from './ScreenScrollView';
@@ -95,16 +94,15 @@ type ScreenComponent = ReturnType<
95
94
  > & {
96
95
  Header: typeof ScreenHeader;
97
96
  ScrollView: typeof ScreenScrollView;
97
+ /** @deprecated Use {@link ScreenList} (`Screen.List`) instead. */
98
98
  FlatList: typeof ScreenFlatList;
99
- FlashList: typeof ScreenFlashList;
100
99
  List: typeof ScreenList;
101
100
  };
102
101
 
103
102
  /**
104
103
  * Themed page container: solid themed background, safe-area handling, and a
105
104
  * shared scroll context for headers. Pair with `Screen.ScrollView` /
106
- * `Screen.List` (or `Screen.FlatList` / `Screen.FlashList` directly) and a
107
- * `Header.LargeTitle` / `Header.Title`.
105
+ * `Screen.List` and a `Header.LargeTitle` / `Header.Title`.
108
106
  *
109
107
  * @example
110
108
  * ```tsx
@@ -141,7 +139,6 @@ const ScreenBase = forwardRef<ComponentRef<typeof View>, ScreenProps>(
141
139
  ScreenBase.Header = ScreenHeader;
142
140
  ScreenBase.ScrollView = ScreenScrollView;
143
141
  ScreenBase.FlatList = ScreenFlatList;
144
- ScreenBase.FlashList = ScreenFlashList;
145
142
  ScreenBase.List = ScreenList;
146
143
 
147
144
  export const Screen = ScreenBase;
@@ -26,8 +26,8 @@ export const SCREEN_HEADER_PORTAL_HOST = 'screen-header';
26
26
  export interface ScreenContextValue {
27
27
  /**
28
28
  * Which axes scroll containers pad with `layout.screen.margin`.
29
- * Overridable per `Screen.ScrollView` / `Screen.FlatList` /
30
- * `Screen.FlashList` via their own `margins` prop.
29
+ * Overridable per `Screen.ScrollView` / `Screen.FlatList` / `Screen.List`
30
+ * via their own `margins` prop.
31
31
  */
32
32
  margins: ScreenMargins;
33
33
  /** Whether a `Screen.Header` is present. Used by scroll containers to add top inset. */
@@ -20,6 +20,12 @@ import { SCREEN_HEADER_PORTAL_HOST, useScreen } from './ScreenContext';
20
20
  import type { ScreenMargins, ScreenScrollableProps } from './types';
21
21
  import { hasXMargin, hasYMargin, renderListHeader } from './utils';
22
22
 
23
+ /**
24
+ * @deprecated Use {@link ScreenListProps} (`Screen.List`) instead —
25
+ * `Screen.List` renders `FlatList` by default and binds the screen's shared
26
+ * scroll ref exactly as `Screen.FlatList` does, but also lets a screen swap in
27
+ * any other FlatList-shaped list (e.g. `FlashList`) via its `as` prop.
28
+ */
23
29
  export interface ScreenFlatListProps<T>
24
30
  extends Omit<FlatListProps<T>, 'CellRendererComponent' | 'horizontal'>,
25
31
  ScreenScrollableProps {
@@ -40,6 +46,11 @@ export interface ScreenFlatListProps<T>
40
46
  * `horizontal` with `Screen.ScrollView`, so a screen can swap one container for
41
47
  * another without relearning its API.
42
48
  *
49
+ * @deprecated Use {@link ScreenList} (`Screen.List`) instead — it renders
50
+ * `FlatList` by default and behaves identically, but also accepts an `as`
51
+ * prop for swapping in another list implementation later without changing
52
+ * the surrounding API.
53
+ *
43
54
  * @example
44
55
  * ```tsx
45
56
  * <Screen.FlatList data={items} renderItem={({ item }) => <Row item={item} />} />
@@ -64,8 +64,9 @@ export type ScreenListProps<
64
64
  *
65
65
  * Only the default `FlatList` binds the screen's shared imperative
66
66
  * scroll ref — a custom `as` is responsible for its own ref if it needs
67
- * one, since not every list exposes a Reanimated-compatible ref (this is
68
- * why `Screen.FlashList` doesn't bind it either).
67
+ * one, since not every list exposes a Reanimated-compatible ref (e.g.
68
+ * `FlashList`'s ref exposes a different, non Reanimated-compatible
69
+ * imperative API).
69
70
  */
70
71
  as?: As;
71
72
  data?: readonly T[] | null;
@@ -133,8 +134,8 @@ export function ScreenList<
133
134
 
134
135
  // `Animated.createAnimatedComponent` should only run once per component,
135
136
  // not on every render — `as` is arbitrary here (not a fixed module-scope
136
- // reference like `Screen.FlatList`/`Screen.FlashList` use), so it's
137
- // memoized on the resolved component instead of hoisted to module scope.
137
+ // reference like `Screen.FlatList` uses), so it's memoized on the resolved
138
+ // component instead of hoisted to module scope.
138
139
  const AnimatedComponent = useMemo(
139
140
  () => Animated.createAnimatedComponent(Component),
140
141
  [Component]
@@ -2,8 +2,6 @@ export type { ScreenHeaderProps, ScreenProps } from './Screen';
2
2
  export { Screen } from './Screen';
3
3
  export type { ScreenContextValue } from './ScreenContext';
4
4
  export { useScreen } from './ScreenContext';
5
- export type { ScreenFlashListProps } from './ScreenFlashList';
6
- export { ScreenFlashList } from './ScreenFlashList';
7
5
  export type { ScreenFlatListProps } from './ScreenFlatList';
8
6
  export { ScreenFlatList } from './ScreenFlatList';
9
7
  export type { ScreenListProps } from './ScreenList';
@@ -11,9 +11,8 @@ import type { ReactNode } from 'react';
11
11
  export type ScreenMargins = 'all' | 'x' | 'y' | 'none';
12
12
 
13
13
  /**
14
- * Props shared by `Screen.ScrollView`, `Screen.FlatList` and
15
- * `Screen.FlashList`, so a screen can swap one container for another without
16
- * relearning its API.
14
+ * Props shared by `Screen.ScrollView`, `Screen.FlatList` and `Screen.List`, so
15
+ * a screen can swap one container for another without relearning its API.
17
16
  */
18
17
  export interface ScreenScrollableProps {
19
18
  /** Lay content out along the x axis. Defaults to `false`. */
@@ -150,7 +150,7 @@ const ToastRoot = forwardRef<ComponentRef<typeof View>, ToastProps>(
150
150
  p="4"
151
151
  row
152
152
  align="center"
153
- gap="3"
153
+ gap="2"
154
154
  accessibilityRole={accessibilityRole}
155
155
  accessibilityLiveRegion="polite"
156
156
  borderWidth="hairline"
@@ -415,7 +415,7 @@ export function DefaultToast({
415
415
  {shouldRenderIcon ? (
416
416
  <Box alignSelf="start">{icon ?? <ToastIcon />}</Box>
417
417
  ) : null}
418
- <Box flex={1} gap="1">
418
+ <Box flex={1} gap="0">
419
419
  {label ? <ToastTitle>{label}</ToastTitle> : null}
420
420
  {description ? (
421
421
  <ToastDescription>{description}</ToastDescription>
@@ -310,6 +310,7 @@ const styles = StyleSheet.create((theme) => ({
310
310
  backgroundColor: resolveThemeColor(background, theme),
311
311
  borderWidth: StyleSheet.hairlineWidth,
312
312
  borderColor: theme.color['border.subtle'],
313
+ ...theme.elevation.xs,
313
314
  }),
314
315
  // Geometry is two finite axes, so it belongs in `variants` rather than in
315
316
  // conditionals: an icon-only cell is an exact square, a labelled one keeps the
@@ -333,6 +334,7 @@ const styles = StyleSheet.create((theme) => ({
333
334
  paddingHorizontal: 10,
334
335
  borderWidth: StyleSheet.hairlineWidth,
335
336
  borderColor: theme.color['border.subtle'],
337
+ ...theme.elevation.xs,
336
338
  },
337
339
  },
338
340
  },
@@ -326,20 +326,26 @@ export const primitives = {
326
326
  'elevation.none.shadowOffset.height': 0,
327
327
  'elevation.none.elevation': 0,
328
328
 
329
+ 'elevation.xs.shadowOpacity': 0.03,
330
+ 'elevation.xs.shadowRadius': 2,
331
+ 'elevation.xs.shadowOffset.width': 0,
332
+ 'elevation.xs.shadowOffset.height': 0.5,
333
+ 'elevation.xs.elevation': 1,
334
+
329
335
  'elevation.sm.shadowOpacity': 0.1,
330
- 'elevation.sm.shadowRadius': 2,
336
+ 'elevation.sm.shadowRadius': 4,
331
337
  'elevation.sm.shadowOffset.width': 0,
332
338
  'elevation.sm.shadowOffset.height': 1,
333
339
  'elevation.sm.elevation': 1,
334
340
 
335
341
  'elevation.md.shadowOpacity': 0.14,
336
- 'elevation.md.shadowRadius': 4,
342
+ 'elevation.md.shadowRadius': 6,
337
343
  'elevation.md.shadowOffset.width': 0,
338
344
  'elevation.md.shadowOffset.height': 2,
339
345
  'elevation.md.elevation': 3,
340
346
 
341
347
  'elevation.lg.shadowOpacity': 0.16,
342
- 'elevation.lg.shadowRadius': 8,
348
+ 'elevation.lg.shadowRadius': 12,
343
349
  'elevation.lg.shadowOffset.width': 0,
344
350
  'elevation.lg.shadowOffset.height': 4,
345
351
  'elevation.lg.elevation': 6,
@@ -66,7 +66,7 @@ export interface ElevationStyle {
66
66
  elevation: number;
67
67
  }
68
68
 
69
- export type ElevationKey = 'none' | 'sm' | 'md' | 'lg' | 'xl';
69
+ export type ElevationKey = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
70
70
 
71
71
  export type ElevationScale = Record<ElevationKey, ElevationStyle>;
72
72
 
@@ -322,6 +322,21 @@ export interface TerraImageProps {
322
322
  contentFit?: TerraImageContentFit;
323
323
  /** Shown while `source` is loading (and if it fails to resolve). */
324
324
  placeholder?: { uri: string } | number;
325
+ /**
326
+ * How `placeholder` fits its container. Defaults to matching `contentFit`
327
+ * — the expo-image backend otherwise defaults placeholders to
328
+ * `'scale-down'` regardless of `contentFit`, which renders a
329
+ * same-resolution placeholder visibly smaller than the loaded image.
330
+ * No-op on the default React Native `Image` backend.
331
+ */
332
+ placeholderContentFit?: TerraImageContentFit;
333
+ /**
334
+ * Identifies this image across recycled views (e.g. FlashList cells).
335
+ * Changing it resets the view to blank/placeholder before the new source
336
+ * loads, instead of holding the previous cell's bitmap during recycling.
337
+ * No-op on the default React Native `Image` backend.
338
+ */
339
+ recyclingKey?: string | null;
325
340
  onError?: () => void;
326
341
  }
327
342
 
@@ -1,166 +0,0 @@
1
- "use strict";
2
-
3
- import { View } from "react-native-unistyles/components/native/View";
4
- import { FlashList } from '@shopify/flash-list';
5
- import Animated, { useAnimatedScrollHandler, useComposedEventHandler } from 'react-native-reanimated';
6
- import { StyleSheet } from 'react-native-unistyles';
7
- import { resolveScreenMargin } from "../../theme/screen-margin.js";
8
- import { PortalHost } from "../portal/index.js";
9
- import { BottomSafeArea } from "./parts/BottomSafeArea.js";
10
- import { renderScreenPlaceholder } from "./parts/ScreenPlaceholder.js";
11
- import { SCREEN_HEADER_PORTAL_HOST, useScreen } from "./ScreenContext.js";
12
- import { hasXMargin, hasYMargin, renderListHeader } from "./utils.js";
13
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
14
- const AnimatedFlashList = Animated.createAnimatedComponent(FlashList);
15
- /**
16
- * `FlashList` variant of `Screen.ScrollView`: mirrors scroll offset into the
17
- * screen's shared `scrollY`, hosts the portal target above the list, and
18
- * applies token-driven content padding.
19
- *
20
- * Requires `@shopify/flash-list` — it is a peer dependency of
21
- * `react-native-terra-ui` and must be installed in the consuming app.
22
- *
23
- * Note: unlike `Screen.FlatList`, this does not bind the screen's shared
24
- * imperative `scrollRef` — `FlashList`'s ref exposes a different (non
25
- * Reanimated-compatible) imperative API.
26
- *
27
- * Shares `loading` / `LoadingComponent` / `EmptyComponent` / `margins` /
28
- * `horizontal` with `Screen.ScrollView`, so a screen can swap one container for
29
- * another without relearning its API.
30
- *
31
- * @example
32
- * ```tsx
33
- * <Screen.FlashList data={items} renderItem={({ item }) => <Row item={item} />} />
34
- * ```
35
- *
36
- * @example Loading and empty placeholders
37
- * ```tsx
38
- * <Screen.FlashList
39
- * data={items}
40
- * loading={isLoading}
41
- * EmptyComponent={<EmptyState icon="status.info" title="Nothing yet" fill />}
42
- * renderItem={({ item }) => <Row item={item} />}
43
- * />
44
- * ```
45
- */
46
- export function ScreenFlashList({
47
- data,
48
- style,
49
- contentContainerStyle,
50
- ListHeaderComponent,
51
- ListFooterComponent,
52
- ListEmptyComponent,
53
- horizontal = false,
54
- loading = false,
55
- LoadingComponent,
56
- EmptyComponent,
57
- margins,
58
- bottomInset,
59
- onScroll,
60
- ...rest
61
- }) {
62
- if (FlashList == null) {
63
- throw new Error('[react-native-terra-ui] Screen.FlashList requires "@shopify/flash-list" to be installed in your app. Run `yarn add @shopify/flash-list` (or the npm/pnpm equivalent) and rebuild.');
64
- }
65
- const {
66
- background,
67
- scrollHandler,
68
- headerSnapOffsets,
69
- margins: screenMargins,
70
- hasHeader
71
- } = useScreen();
72
- const resolvedMargins = margins ?? screenMargins;
73
- // The placeholder rides in on `ListEmptyComponent` rather than replacing the
74
- // list, so the header portal and snap offsets stay put. While loading the
75
- // list is fed an empty `data` so that slot is the one that renders.
76
- const placeholder = renderScreenPlaceholder({
77
- loading,
78
- LoadingComponent,
79
- EmptyComponent,
80
- isEmpty: !data || data.length === 0
81
- });
82
- const jsScrollHandler = useAnimatedScrollHandler(event => {
83
- if (onScroll) onScroll(event);
84
- }, [onScroll]);
85
- const composedHandler = useComposedEventHandler([scrollHandler, jsScrollHandler]);
86
-
87
- // `AnimatedFlashList` is typed for `unknown` items, so the remaining props
88
- // are cast back to its prop type — minus the ones set explicitly below,
89
- // which the spread would otherwise re-supply.
90
- const listProps = rest;
91
-
92
- // A caller naming its own `bottomInset` has taken the bottom over entirely,
93
- // and a horizontal list has no bottom edge to clear.
94
- const needsBottomSafeArea = bottomInset === undefined && !horizontal;
95
- const footerComponent = /*#__PURE__*/_jsxs(_Fragment, {
96
- children: [renderListHeader(ListFooterComponent), needsBottomSafeArea ? /*#__PURE__*/_jsx(BottomSafeArea, {}) : null]
97
- });
98
- const headerComponent = /*#__PURE__*/_jsxs(_Fragment, {
99
- children: [/*#__PURE__*/_jsx(View, {
100
- style: styles.headerWrapper(resolvedMargins),
101
- children: /*#__PURE__*/_jsx(PortalHost, {
102
- name: SCREEN_HEADER_PORTAL_HOST
103
- })
104
- }), renderListHeader(ListHeaderComponent)]
105
- });
106
- return /*#__PURE__*/_jsx(AnimatedFlashList, {
107
- data: loading ? [] : data,
108
- style: [{
109
- backgroundColor: background
110
- }, style],
111
- horizontal: horizontal,
112
- contentInsetAdjustmentBehavior: hasHeader ? 'never' : undefined,
113
- contentContainerStyle: [styles.content(resolvedMargins, hasHeader, bottomInset), contentContainerStyle],
114
- ListHeaderComponent: headerComponent,
115
- ListFooterComponent: footerComponent,
116
- ListEmptyComponent: placeholder ?? ListEmptyComponent,
117
- showsVerticalScrollIndicator: false,
118
- scrollEventThrottle: 16,
119
- snapToOffsets: headerSnapOffsets,
120
- ...listProps,
121
- onScroll: composedHandler
122
- });
123
- }
124
-
125
- // `resolveScreenMargin` is called *inside* each dynamic function below, not
126
- // hoisted to the factory's top level — the Babel plugin only attributes a
127
- // runtime dependency (here, breakpoint) to a style key when the `rt`/
128
- // `runtime` read it derives from sits inside that key's own value. Hoisting
129
- // it would silently drop the dependency, so the margin would freeze at
130
- // whatever breakpoint was active on mount and never update on rotation.
131
- const styles = StyleSheet.create((theme, runtime) => ({
132
- content: (margins, hasHeader, bottomInset) => {
133
- const {
134
- x: marginX,
135
- y: marginY
136
- } = resolveScreenMargin(theme, runtime.breakpoint);
137
- return {
138
- flexGrow: 1,
139
- // The header is absolutely positioned, so the list reserves its full
140
- // height — bar plus top safe area. This assumes the scroll view does not
141
- // also get UIKit's automatic inset adjustment: on a native tab screen
142
- // that means `disableAutomaticContentInsets` on the tab, or the two
143
- // insets are counted twice.
144
- paddingTop: (hasHeader ? theme.layout.header.height + runtime.insets.top : 0) + (hasYMargin(margins) ? marginY : 0),
145
- paddingHorizontal: hasXMargin(margins) ? marginX : 0,
146
- // The safe area is `BottomSafeArea`'s job; counting it here as well
147
- // would leave a gap the height of the gesture bar.
148
- paddingBottom: bottomInset ?? (hasYMargin(margins) ? marginY : 0),
149
- uni__dependencies: [0, 3, 9]
150
- };
151
- },
152
- safeArea: {
153
- height: runtime.insets.top,
154
- uni__dependencies: [9]
155
- },
156
- headerWrapper: margins => {
157
- const {
158
- x: marginX
159
- } = resolveScreenMargin(theme, runtime.breakpoint);
160
- return {
161
- marginHorizontal: hasXMargin(margins) ? -marginX : 0,
162
- uni__dependencies: [0, 3]
163
- };
164
- }
165
- }));
166
- //# sourceMappingURL=ScreenFlashList.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["FlashList","Animated","useAnimatedScrollHandler","useComposedEventHandler","StyleSheet","resolveScreenMargin","PortalHost","BottomSafeArea","renderScreenPlaceholder","SCREEN_HEADER_PORTAL_HOST","useScreen","hasXMargin","hasYMargin","renderListHeader","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","AnimatedFlashList","createAnimatedComponent","ScreenFlashList","data","style","contentContainerStyle","ListHeaderComponent","ListFooterComponent","ListEmptyComponent","horizontal","loading","LoadingComponent","EmptyComponent","margins","bottomInset","onScroll","rest","Error","background","scrollHandler","headerSnapOffsets","screenMargins","hasHeader","resolvedMargins","placeholder","isEmpty","length","jsScrollHandler","event","composedHandler","listProps","needsBottomSafeArea","undefined","footerComponent","children","headerComponent","View","styles","headerWrapper","name","backgroundColor","contentInsetAdjustmentBehavior","content","showsVerticalScrollIndicator","scrollEventThrottle","snapToOffsets","create","theme","runtime","x","marginX","y","marginY","breakpoint","flexGrow","paddingTop","layout","header","height","insets","top","paddingHorizontal","paddingBottom","uni__dependencies","safeArea","marginHorizontal"],"sourceRoot":"../../../../src","sources":["components/screen/ScreenFlashList.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,43 +0,0 @@
1
- import { type FlashListProps } from '@shopify/flash-list';
2
- import type { ScreenScrollableProps } from './types.js';
3
- export interface ScreenFlashListProps<T> extends Omit<FlashListProps<T>, 'horizontal'>, ScreenScrollableProps {
4
- /**
5
- * Extra bottom padding on the list content — clearance for a tab bar or home
6
- * indicator. Defaults to the `layout.screen.margin.y` token when margins are
7
- * enabled, otherwise `0`.
8
- */
9
- bottomInset?: number;
10
- }
11
- /**
12
- * `FlashList` variant of `Screen.ScrollView`: mirrors scroll offset into the
13
- * screen's shared `scrollY`, hosts the portal target above the list, and
14
- * applies token-driven content padding.
15
- *
16
- * Requires `@shopify/flash-list` — it is a peer dependency of
17
- * `react-native-terra-ui` and must be installed in the consuming app.
18
- *
19
- * Note: unlike `Screen.FlatList`, this does not bind the screen's shared
20
- * imperative `scrollRef` — `FlashList`'s ref exposes a different (non
21
- * Reanimated-compatible) imperative API.
22
- *
23
- * Shares `loading` / `LoadingComponent` / `EmptyComponent` / `margins` /
24
- * `horizontal` with `Screen.ScrollView`, so a screen can swap one container for
25
- * another without relearning its API.
26
- *
27
- * @example
28
- * ```tsx
29
- * <Screen.FlashList data={items} renderItem={({ item }) => <Row item={item} />} />
30
- * ```
31
- *
32
- * @example Loading and empty placeholders
33
- * ```tsx
34
- * <Screen.FlashList
35
- * data={items}
36
- * loading={isLoading}
37
- * EmptyComponent={<EmptyState icon="status.info" title="Nothing yet" fill />}
38
- * renderItem={({ item }) => <Row item={item} />}
39
- * />
40
- * ```
41
- */
42
- export declare function ScreenFlashList<T>({ data, style, contentContainerStyle, ListHeaderComponent, ListFooterComponent, ListEmptyComponent, horizontal, loading, LoadingComponent, EmptyComponent, margins, bottomInset, onScroll, ...rest }: ScreenFlashListProps<T>): import("react").JSX.Element;
43
- //# sourceMappingURL=ScreenFlashList.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScreenFlashList.d.ts","sourceRoot":"","sources":["../../../../../src/components/screen/ScreenFlashList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAmBrE,OAAO,KAAK,EAAiB,qBAAqB,EAAE,MAAM,YAAS,CAAC;AAOpE,MAAM,WAAW,oBAAoB,CAAC,CAAC,CACrC,SAAQ,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAC3C,qBAAqB;IACvB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,EACjC,IAAI,EACJ,KAAK,EACL,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,UAAkB,EAClB,OAAe,EACf,gBAAgB,EAChB,cAAc,EACd,OAAO,EACP,WAAW,EACX,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,oBAAoB,CAAC,CAAC,CAAC,+BAyFzB"}