@hjmds/react-native 1.28.0 → 1.29.0

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 (48) hide show
  1. package/dist/auth-screen.d.ts +19 -2
  2. package/dist/auth-screen.d.ts.map +1 -1
  3. package/dist/auth-screen.js +41 -24
  4. package/dist/auth-screen.js.map +1 -1
  5. package/dist/collection-rail.d.ts +7 -1
  6. package/dist/collection-rail.d.ts.map +1 -1
  7. package/dist/collection-rail.js +12 -5
  8. package/dist/collection-rail.js.map +1 -1
  9. package/dist/evidence.d.ts +316 -1
  10. package/dist/evidence.d.ts.map +1 -1
  11. package/dist/evidence.js +52 -2
  12. package/dist/evidence.js.map +1 -1
  13. package/dist/feedback.d.ts +7 -1
  14. package/dist/feedback.d.ts.map +1 -1
  15. package/dist/feedback.js +4 -2
  16. package/dist/feedback.js.map +1 -1
  17. package/dist/inputs.d.ts +9 -0
  18. package/dist/inputs.d.ts.map +1 -1
  19. package/dist/inputs.js +4 -1
  20. package/dist/inputs.js.map +1 -1
  21. package/dist/internal/initial-focus.d.ts +44 -0
  22. package/dist/internal/initial-focus.d.ts.map +1 -0
  23. package/dist/internal/initial-focus.js +136 -0
  24. package/dist/internal/initial-focus.js.map +1 -0
  25. package/dist/internal/list-row-scroll-room.d.ts +2 -1
  26. package/dist/internal/list-row-scroll-room.d.ts.map +1 -1
  27. package/dist/internal/list-row-scroll-room.js +2 -1
  28. package/dist/internal/list-row-scroll-room.js.map +1 -1
  29. package/dist/internal/screen-body-inset.d.ts +9 -0
  30. package/dist/internal/screen-body-inset.d.ts.map +1 -0
  31. package/dist/internal/screen-body-inset.js +10 -0
  32. package/dist/internal/screen-body-inset.js.map +1 -0
  33. package/dist/keyboard.d.ts +1 -1
  34. package/dist/keyboard.d.ts.map +1 -1
  35. package/dist/keyboard.js.map +1 -1
  36. package/dist/overlays.d.ts +10 -2
  37. package/dist/overlays.d.ts.map +1 -1
  38. package/dist/overlays.js +255 -210
  39. package/dist/overlays.js.map +1 -1
  40. package/dist/screen-flows.d.ts +9 -4
  41. package/dist/screen-flows.d.ts.map +1 -1
  42. package/dist/screen-flows.js +12 -9
  43. package/dist/screen-flows.js.map +1 -1
  44. package/dist/screens.d.ts +26 -2
  45. package/dist/screens.d.ts.map +1 -1
  46. package/dist/screens.js +22 -6
  47. package/dist/screens.js.map +1 -1
  48. package/package.json +3 -3
@@ -1,4 +1,5 @@
1
1
  import { authScreenRecipe, type AuthScreenDescriptor, type AuthScreenHeroDescriptor, type AuthScreenPolicyLinkDescriptor } from "@hjmds/design-contracts/components/auth-screen";
2
+ import { type ScreenInitialFocus } from "@hjmds/design-contracts/screen-patterns";
2
3
  import { type ReactNode } from "react";
3
4
  import type { HjmCompositionStyleProp } from "./composition-style.js";
4
5
  export type AuthScreenLayoutProps = AuthScreenDescriptor & Readonly<{
@@ -12,6 +13,19 @@ export type AuthScreenLayoutProps = AuthScreenDescriptor & Readonly<{
12
13
  mainCard?: boolean;
13
14
  /** Consent notice and policy links. Omit with `hasFooter: false`. */
14
15
  footer?: ReactNode;
16
+ /**
17
+ * Bottom safe-area inset of the window edge this screen reaches (`useSafeAreaInsets().bottom`; 0 inside a host that
18
+ * already insets the bottom). The layout's bottom padding becomes max(paddingBlock, inset) — the ScreenLayout rule,
19
+ * never their sum — so policy links clear the home indicator / Android gesture bar without a product wrapper
20
+ * (2026-10-17 1.28 adoption: diairy, utilverse and spint each wrapped this layout in their own bottom inset).
21
+ * Pass it instead of a bottom SafeAreaView edge, never both.
22
+ */
23
+ safeAreaBottom?: number;
24
+ /**
25
+ * Entry focus, same rules as ScreenLayout `initialFocus`. Off by default because auth screens lead with provider
26
+ * buttons; a signup nickname step opts in with `first-input` (2026-10-18 adoption: spint and utilverse signup).
27
+ */
28
+ initialFocus?: ScreenInitialFocus;
15
29
  testID?: string;
16
30
  layoutStyle?: HjmCompositionStyleProp;
17
31
  }>;
@@ -20,10 +34,13 @@ export type AuthScreenLayoutProps = AuthScreenDescriptor & Readonly<{
20
34
  * the bottom. Content taller than the viewport scrolls instead of pushing the
21
35
  * footer off screen — that is why the outer element is a ScrollView whose content
22
36
  * container grows.
23
- * Review forms must accept submit taps while focused; iOS owns the scroll inset
37
+ * Review forms must accept submit taps while focused; iOS owns the keyboard scroll inset
24
38
  * so a product does not have to wrap this in another keyboard-avoiding view.
39
+ * Safe areas follow ScreenLayout: the host owns the top edge and `safeAreaBottom` the bottom. iOS automatic content
40
+ * inset adjustment is off because it added the home-indicator inset on iOS only, on top of paddingBlock, which made
41
+ * every product add its own Android inset (spint) or wrap the layout (diairy, utilverse) — 2026-10-17.
25
42
  */
26
- export declare function AuthScreenLayout({ hero, main, footer, density, hasFooter, pendingLabel, mainCard, layoutStyle, testID, }: AuthScreenLayoutProps): import("react").JSX.Element;
43
+ export declare function AuthScreenLayout({ hero, main, footer, density, hasFooter, pendingLabel, mainCard, safeAreaBottom, layoutStyle, testID, initialFocus, }: AuthScreenLayoutProps): import("react").JSX.Element;
27
44
  export type AuthScreenHeroProps = AuthScreenHeroDescriptor & Readonly<{
28
45
  /** Product mark asset. HJM never ships product marks. */
29
46
  mark?: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"auth-screen.d.ts","sourceRoot":"","sources":["../src/auth-screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAKhB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,EACpC,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAY5E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAGtE,MAAM,MAAM,qBAAqB,GAAG,oBAAoB,GACtD,QAAQ,CAAC;IACP,+EAA+E;IAC/E,IAAI,EAAE,SAAS,CAAC;IAChB,sFAAsF;IACtF,IAAI,EAAE,SAAS,CAAC;IAChB,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,uBAAuB,CAAC;CACvC,CAAC,CAAC;AAcL;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,OAAO,EACP,SAAS,EACT,YAAY,EACZ,QAAgB,EAEhB,WAAW,EACX,MAAM,GACP,EAAE,qBAAqB,+BAgEvB;AAED,MAAM,MAAM,mBAAmB,GAAG,wBAAwB,GACxD,QAAQ,CAAC;IACP,yDAAyD;IACzD,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB,CAAC,CAAC;AAEL;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,YAAgB,EAAE,EAAE,mBAAmB,+BAmB1G;AAED,MAAM,MAAM,oBAAoB,GAAG,8BAA8B,GAC/D,QAAQ,CAAC;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC,CAAC;AAEpC,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,uCAAuC;IACvC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,iEAAiE;IACjE,KAAK,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACvC,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC,CAAC;AAEH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,qBAAqB,+BAuBlF;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"auth-screen.d.ts","sourceRoot":"","sources":["../src/auth-screen.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAKhB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,8BAA8B,EACpC,MAAM,gDAAgD,CAAC;AACxD,OAAO,EAAwB,KAAK,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AACxG,OAAO,EAAwD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAe7F,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAGtE,MAAM,MAAM,qBAAqB,GAAG,oBAAoB,GACtD,QAAQ,CAAC;IACP,+EAA+E;IAC/E,IAAI,EAAE,SAAS,CAAC;IAChB,sFAAsF;IACtF,IAAI,EAAE,SAAS,CAAC;IAChB,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,uBAAuB,CAAC;CACvC,CAAC,CAAC;AAcL;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,OAAO,EACP,SAAS,EACT,YAAY,EACZ,QAAgB,EAChB,cAAkB,EAClB,WAAW,EACX,MAAM,EACN,YAAwC,GACzC,EAAE,qBAAqB,+BA4EvB;AAED,MAAM,MAAM,mBAAmB,GAAG,wBAAwB,GACxD,QAAQ,CAAC;IACP,yDAAyD;IACzD,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB,CAAC,CAAC;AAEL;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,YAAgB,EAAE,EAAE,mBAAmB,+BAmB1G;AAED,MAAM,MAAM,oBAAoB,GAAG,8BAA8B,GAC/D,QAAQ,CAAC;IAAE,OAAO,EAAE,MAAM,IAAI,CAAA;CAAE,CAAC,CAAC;AAEpC,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,uCAAuC;IACvC,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,iEAAiE;IACjE,KAAK,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACvC,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC,CAAC;AAEH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,qBAAqB,+BAuBlF;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,7 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { authScreenRecipe, resolveAuthScreenDescriptor, validateAuthScreenHeroDescriptor, validateAuthScreenPolicyLinks, } from "@hjmds/design-contracts/components/auth-screen";
3
- import { createContext, Fragment, useContext } from "react";
3
+ import { initialFocusDefaults } from "@hjmds/design-contracts/screen-patterns";
4
+ import { createContext, Fragment, useContext, useMemo, useRef } from "react";
5
+ import { InitialFocusProvider, useInitialFocusScope } from "./internal/initial-focus.js";
4
6
  import { InheritedTextAlignContext } from "./internal/text-align.js";
7
+ import { resolveScreenBottomPadding } from "./internal/screen-footer.js";
8
+ import { useKeyboardOverlap } from "./keyboard.js";
5
9
  import { Text } from "./primitives.js";
6
10
  import { ActivityIndicator, Platform, Pressable, ScrollView, View, } from "react-native";
7
11
  import { useHjmNativeTheme } from "./provider.js";
@@ -20,10 +24,13 @@ function AuthActionCard({ children, style }) {
20
24
  * the bottom. Content taller than the viewport scrolls instead of pushing the
21
25
  * footer off screen — that is why the outer element is a ScrollView whose content
22
26
  * container grows.
23
- * Review forms must accept submit taps while focused; iOS owns the scroll inset
27
+ * Review forms must accept submit taps while focused; iOS owns the keyboard scroll inset
24
28
  * so a product does not have to wrap this in another keyboard-avoiding view.
29
+ * Safe areas follow ScreenLayout: the host owns the top edge and `safeAreaBottom` the bottom. iOS automatic content
30
+ * inset adjustment is off because it added the home-indicator inset on iOS only, on top of paddingBlock, which made
31
+ * every product add its own Android inset (spint) or wrap the layout (diairy, utilverse) — 2026-10-17.
25
32
  */
26
- export function AuthScreenLayout({ hero, main, footer, density, hasFooter, pendingLabel, mainCard = false, layoutStyle, testID, }) {
33
+ export function AuthScreenLayout({ hero, main, footer, density, hasFooter, pendingLabel, mainCard = false, safeAreaBottom = 0, layoutStyle, testID, initialFocus = initialFocusDefaults.auth, }) {
27
34
  const MainContainer = mainCard ? AuthActionCard : View;
28
35
  const resolved = resolveAuthScreenDescriptor({
29
36
  ...(density === undefined ? {} : { density }),
@@ -33,26 +40,36 @@ export function AuthScreenLayout({ hero, main, footer, density, hasFooter, pendi
33
40
  const pending = pendingLabel !== undefined;
34
41
  if (pending && !pendingLabel.trim())
35
42
  throw new TypeError("AuthScreen pendingLabel must not be empty");
36
- return (_jsxs(ScrollView, { style: [{ flex: 1 }, layoutStyle], testID: testID, keyboardShouldPersistTaps: "handled", keyboardDismissMode: Platform.OS === "ios" ? "interactive" : "on-drag", automaticallyAdjustKeyboardInsets: true, contentContainerStyle: {
37
- flexGrow: 1,
38
- paddingHorizontal: resolved.paddingInline,
39
- paddingVertical: resolved.paddingBlock,
40
- }, contentInsetAdjustmentBehavior: "automatic", children: [_jsxs(View, { style: {
41
- flexGrow: 1,
42
- flexShrink: 0,
43
- width: "100%",
44
- maxWidth: resolved.maxWidth,
45
- alignSelf: "center",
46
- alignItems: "center",
47
- justifyContent: "center",
48
- gap: resolved.mainGap,
49
- }, children: [_jsx(AuthScreenDensityContext.Provider, { value: resolved.density, children: _jsx(InheritedTextAlignContext.Provider, { value: "center", children: _jsx(View, { style: { width: "100%", alignItems: "center", gap: resolved.heroGap }, children: hero }) }) }), _jsxs(MainContainer, { style: { width: "100%" }, children: [_jsx(View, { pointerEvents: pending ? "none" : "auto", accessibilityElementsHidden: pending, importantForAccessibility: pending ? "no-hide-descendants" : "auto", style: pending ? { opacity: 0 } : undefined, children: main }), pending ? _jsx(View, { accessible: true, accessibilityLabel: pendingLabel, accessibilityRole: "progressbar", accessibilityLiveRegion: "polite", accessibilityState: { busy: true }, style: { position: "absolute", top: 0, right: 0, bottom: 0, left: 0, alignItems: "center", justifyContent: "center" }, children: _jsx(ActivityIndicator, { accessible: false }) }) : null] })] }), showFooter ? (_jsx(View, { style: {
50
- width: "100%",
51
- maxWidth: resolved.maxWidth,
52
- alignSelf: "center",
53
- alignItems: "center",
54
- marginTop: resolved.footerGap,
55
- }, children: footer })) : null] }));
43
+ if (!Number.isFinite(safeAreaBottom) || safeAreaBottom < 0)
44
+ throw new RangeError("AuthScreenLayout safeAreaBottom must be non-negative");
45
+ const scrollRef = useRef(null);
46
+ // Only a keyboard flag: automaticallyAdjustKeyboardInsets already pads the overlap, which clears the home indicator.
47
+ // The ScrollView class exposes its host view (with measureInWindow) through getNativeScrollRef.
48
+ const keyboardHost = useMemo(() => ({ get current() { return scrollRef.current?.getNativeScrollRef?.() ?? null; } }), []);
49
+ const keyboardOpen = useKeyboardOverlap(keyboardHost) > 0;
50
+ const paddingBottom = resolveScreenBottomPadding(resolved.paddingBlock, safeAreaBottom, keyboardOpen);
51
+ const focusScope = useInitialFocusScope({ mode: initialFocus });
52
+ return (_jsx(InitialFocusProvider, { scope: focusScope, children: _jsxs(ScrollView, { ref: scrollRef, onTouchStart: focusScope.onTouchStart, style: [{ flex: 1 }, layoutStyle], testID: testID, keyboardShouldPersistTaps: "handled", keyboardDismissMode: Platform.OS === "ios" ? "interactive" : "on-drag", automaticallyAdjustKeyboardInsets: true, contentContainerStyle: {
53
+ flexGrow: 1,
54
+ paddingHorizontal: resolved.paddingInline,
55
+ paddingTop: resolved.paddingBlock,
56
+ paddingBottom,
57
+ }, children: [_jsxs(View, { style: {
58
+ flexGrow: 1,
59
+ flexShrink: 0,
60
+ width: "100%",
61
+ maxWidth: resolved.maxWidth,
62
+ alignSelf: "center",
63
+ alignItems: "center",
64
+ justifyContent: "center",
65
+ gap: resolved.mainGap,
66
+ }, children: [_jsx(AuthScreenDensityContext.Provider, { value: resolved.density, children: _jsx(InheritedTextAlignContext.Provider, { value: "center", children: _jsx(View, { style: { width: "100%", alignItems: "center", gap: resolved.heroGap }, children: hero }) }) }), _jsxs(MainContainer, { style: { width: "100%" }, children: [_jsx(View, { pointerEvents: pending ? "none" : "auto", accessibilityElementsHidden: pending, importantForAccessibility: pending ? "no-hide-descendants" : "auto", style: pending ? { opacity: 0 } : undefined, children: main }), pending ? _jsx(View, { accessible: true, accessibilityLabel: pendingLabel, accessibilityRole: "progressbar", accessibilityLiveRegion: "polite", accessibilityState: { busy: true }, style: { position: "absolute", top: 0, right: 0, bottom: 0, left: 0, alignItems: "center", justifyContent: "center" }, children: _jsx(ActivityIndicator, { accessible: false }) }) : null] })] }), showFooter ? (_jsx(View, { style: {
67
+ width: "100%",
68
+ maxWidth: resolved.maxWidth,
69
+ alignSelf: "center",
70
+ alignItems: "center",
71
+ marginTop: resolved.footerGap,
72
+ }, children: footer })) : null] }) }));
56
73
  }
57
74
  /**
58
75
  * The `hero` slot content: mark, eyebrow, tagline and one description line. Type
@@ -78,7 +95,7 @@ export function AuthScreenFooter({ notice, links, children }) {
78
95
  // Height comes from a background-less minHeight (Android ignores hitSlop outside the parent row);
79
96
  // only the inline extension up to the separator uses hitSlop.
80
97
  const hitSlop = { left: recipe.linkGap, right: recipe.linkGap };
81
- return (_jsxs(View, { style: { width: "100%", alignItems: "center", gap: recipe.noticeGap }, children: [notice ? _jsx(Text, { variant: recipe.notice.textVariant, tone: recipe.notice.tone, children: notice }) : null, _jsx(View, { style: { flexDirection: "row", flexWrap: "wrap", justifyContent: "center", alignItems: "center", columnGap: recipe.linkGap }, children: links.map((link, index) => (_jsxs(Fragment, { children: [index > 0 ? _jsx(Text, { variant: recipe.link.textVariant, tone: recipe.notice.tone, accessible: false, importantForAccessibility: "no", children: recipe.separator }) : null, _jsx(Pressable, { accessibilityRole: "link", accessibilityLabel: link.label, hitSlop: hitSlop, onPress: link.onPress, style: { minHeight: authScreenRecipe.footerMinTouchTarget, justifyContent: "center" }, children: _jsx(Text, { variant: recipe.link.textVariant, tone: recipe.link.tone, style: { textDecorationLine: recipe.link.underline ? "underline" : "none" }, children: link.label }) })] }, `${index}:${link.label}`))) }), children] }));
98
+ return (_jsxs(View, { style: { width: "100%", alignItems: "center", gap: recipe.noticeGap }, children: [notice ? _jsx(Text, { variant: recipe.notice.textVariant, tone: recipe.notice.tone, children: notice }) : null, _jsx(View, { style: { flexDirection: "row", flexWrap: "wrap", justifyContent: "center", alignItems: "center", columnGap: recipe.linkGap }, children: links.map((link, index) => (_jsxs(Fragment, { children: [index > 0 ? _jsx(Text, { variant: recipe.link.textVariant, tone: recipe.notice.tone, accessible: false, importantForAccessibility: "no", children: recipe.separator }) : null, _jsx(Pressable, { accessibilityRole: "link", accessibilityLabel: link.label, ...(link.accessibilityHint === undefined ? {} : { accessibilityHint: link.accessibilityHint }), hitSlop: hitSlop, onPress: link.onPress, style: { minHeight: authScreenRecipe.footerMinTouchTarget, justifyContent: "center" }, children: _jsx(Text, { variant: recipe.link.textVariant, tone: recipe.link.tone, style: { textDecorationLine: recipe.link.underline ? "underline" : "none" }, children: link.label }) })] }, `${index}:${link.label}`))) }), children] }));
82
99
  }
83
100
  export { authScreenRecipe };
84
101
  //# sourceMappingURL=auth-screen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-screen.js","sourceRoot":"","sources":["../src/auth-screen.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-screen.js","sourceRoot":"","sources":["../src/auth-screen.tsx"],"names":[],"mappings":"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"}
@@ -16,8 +16,14 @@ export type CollectionRailProps = Readonly<{
16
16
  /** Initial scroll anchor, not a selected item or an open detail target. */
17
17
  defaultStartKey?: string;
18
18
  onStartKeyChange?: (key: string | null) => void;
19
+ /**
20
+ * Scroll to the screen edges from inside the default inset ScreenLayout body: the viewport reaches past the body
21
+ * gutter and pads it back, so the first and last items rest on the gutter (no `body-edge` + per-section gutter).
22
+ * Place the rail directly in the body; inside overlays or `body-edge`/`none` bodies there is no gutter to cross.
23
+ */
24
+ bleed?: boolean;
19
25
  layoutStyle?: HjmCompositionStyleProp;
20
26
  testID?: string;
21
27
  }>;
22
- export declare function CollectionRail({ label, items, renderItem, labels, density, emptyContent, defaultStartKey, onStartKeyChange, layoutStyle, testID }: CollectionRailProps): import("react").JSX.Element;
28
+ export declare function CollectionRail({ label, items, renderItem, labels, density, emptyContent, defaultStartKey, onStartKeyChange, bleed, layoutStyle, testID }: CollectionRailProps): import("react").JSX.Element;
23
29
  //# sourceMappingURL=collection-rail.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection-rail.d.ts","sourceRoot":"","sources":["../src/collection-rail.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE1E,OAAO,EAGL,KAAK,kBAAkB,EAAE,KAAK,qBAAqB,EACpD,MAAM,yCAAyC,CAAC;AAMjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AACpG,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC;IACzC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAAC,UAAU,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,SAAS,CAAC;IACzG,MAAM,EAAE,oBAAoB,CAAC;IAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAAC,YAAY,CAAC,EAAE,SAAS,CAAC;IACxF,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1E,WAAW,CAAC,EAAE,uBAAuB,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CACxD,CAAC,CAAC;AAEH,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAA+C,EAChH,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,mBAAmB,+BA8E5F"}
1
+ {"version":3,"file":"collection-rail.d.ts","sourceRoot":"","sources":["../src/collection-rail.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEtF,OAAO,EAGL,KAAK,kBAAkB,EAAE,KAAK,qBAAqB,EACpD,MAAM,yCAAyC,CAAC;AAQjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,MAAM,MAAM,oBAAoB,GAAG,QAAQ,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AACpG,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC;IACzC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAAC,UAAU,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,SAAS,CAAC;IACzG,MAAM,EAAE,oBAAoB,CAAC;IAAC,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAAC,YAAY,CAAC,EAAE,SAAS,CAAC;IACxF,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1E;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,WAAW,CAAC,EAAE,uBAAuB,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CACxD,CAAC,CAAC;AAEH,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAA+C,EAChH,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,KAAa,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,mBAAmB,+BAmF3G"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useLayoutEffect, useRef, useState } from "react";
2
+ import { useContext, useLayoutEffect, useRef, useState } from "react";
3
3
  import { ScrollView, View } from "react-native";
4
4
  import { collectionRailRecipe, validateCollectionRail, resolveCollectionRailLayout, resolveCollectionRailViewport, getCollectionRailTargetOffset, getCollectionRailItemOffset, getCollectionRailRevealOffset, getCollectionRailPhysicalOffset, } from "@hjmds/design-contracts/collection-rail";
5
5
  import { IconButton } from "./actions.js";
@@ -7,13 +7,20 @@ import { glyph } from "@hjmds/design-contracts/foundations";
7
7
  import { resolveIconButtonPresentation } from "@hjmds/design-contracts/recipes";
8
8
  import { DrawnChevron } from "./internal/drawn-glyphs.js";
9
9
  import { useHjmNativeTheme } from "./provider.js";
10
- export function CollectionRail({ label, items, renderItem, labels, density = collectionRailRecipe.defaults.density, emptyContent, defaultStartKey, onStartKeyChange, layoutStyle, testID }) {
10
+ import { ScreenBodyInsetContext } from "./internal/screen-body-inset.js";
11
+ import { listRowScrollRoom } from "./internal/list-row-scroll-room.js";
12
+ export function CollectionRail({ label, items, renderItem, labels, density = collectionRailRecipe.defaults.density, emptyContent, defaultStartKey, onStartKeyChange, bleed = false, layoutStyle, testID }) {
11
13
  validateCollectionRail(items);
12
14
  if (!label.trim() || Object.values(labels).some(value => !value.trim()))
13
15
  throw new TypeError("CollectionRail labels must not be empty");
14
16
  const { environment, palette, tokens } = useHjmNativeTheme(), direction = environment.direction;
15
17
  const chevronColor = resolveIconButtonPresentation("ghost", palette, false).content;
16
18
  const scroll = useRef(null);
19
+ // Same viewport/content room rule as the ListRow bleed, with the screen gutter as the outset. Item geometry keeps
20
+ // using the gutter-aligned width, so offsets and item widths are unchanged by the bleed.
21
+ const bodyInset = useContext(ScreenBodyInsetContext);
22
+ const room = listRowScrollRoom(bleed ? bodyInset : 0);
23
+ const outset = room.content.paddingHorizontal;
17
24
  const [width, setWidth] = useState(0), [offset, setOffset] = useState(0);
18
25
  const layout = resolveCollectionRailLayout(items.length, width, density, tokens.spacing.md);
19
26
  const geometry = useRef(layout);
@@ -65,7 +72,7 @@ export function CollectionRail({ label, items, renderItem, labels, density = col
65
72
  // Use one physical coordinate system on iOS/Android. Reverse only row
66
73
  // placement in RTL; keep data, reading order and child state keyed by ID.
67
74
  const contentWidth = useRef(0);
68
- return _jsxs(View, { testID: testID, style: [{ direction, minWidth: 0 }, layoutStyle], children: [_jsxs(ScrollView, { ref: scroll, horizontal: true, accessibilityRole: "list", accessibilityLabel: label, onLayout: event => setWidth(event.nativeEvent.layout.width), onContentSizeChange: nextWidth => {
75
+ return _jsxs(View, { testID: testID, style: [{ direction, minWidth: 0 }, layoutStyle], children: [_jsxs(ScrollView, { ref: scroll, horizontal: true, accessibilityRole: "list", accessibilityLabel: label, onLayout: event => setWidth(Math.max(0, event.nativeEvent.layout.width - outset * 2)), onContentSizeChange: nextWidth => {
69
76
  // The physical scroll range exists after content layout. Re-align only
70
77
  // for width changes; an edited card's height must not reset touch scroll.
71
78
  if (nextWidth !== contentWidth.current) {
@@ -77,8 +84,8 @@ export function CollectionRail({ label, items, renderItem, labels, density = col
77
84
  if (pendingOffset.current !== null && Math.abs(next - pendingOffset.current) <= 0.5)
78
85
  pendingOffset.current = null;
79
86
  publish(next);
80
- }, scrollEventThrottle: 16, keyboardShouldPersistTaps: "handled", removeClippedSubviews: false, style: { direction: "ltr" }, contentContainerStyle: { direction: "ltr", flexDirection: direction === "rtl" ? "row-reverse" : "row",
81
- gap: tokens.spacing.md, width: Math.max(layout.contentWidth, width), paddingVertical: tokens.spacing.xs }, children: [items.map((item, index) => _jsx(View, { style: { width: layout.itemWidth, direction }, onFocus: () => { focusedKey.current = item.id; scrollToOffset(getCollectionRailRevealOffset(geometry.current, logicalOffset.current, index), false); }, onBlur: () => { if (focusedKey.current === item.id)
87
+ }, scrollEventThrottle: 16, keyboardShouldPersistTaps: "handled", removeClippedSubviews: false, style: { direction: "ltr", ...room.viewport }, contentContainerStyle: { direction: "ltr", flexDirection: direction === "rtl" ? "row-reverse" : "row",
88
+ gap: tokens.spacing.md, width: Math.max(layout.contentWidth, width) + outset * 2, paddingVertical: tokens.spacing.xs, ...room.content }, children: [items.map((item, index) => _jsx(View, { style: { width: layout.itemWidth, direction }, onFocus: () => { focusedKey.current = item.id; scrollToOffset(getCollectionRailRevealOffset(geometry.current, logicalOffset.current, index), false); }, onBlur: () => { if (focusedKey.current === item.id)
82
89
  focusedKey.current = null; }, children: renderItem(item) }, item.id)), items.length === 0 ? emptyContent : null] }), _jsxs(View, { accessibilityLabel: labels.navigation, style: { flexDirection: "row", flexWrap: "wrap", justifyContent: "flex-end", gap: tokens.spacing.sm, marginTop: tokens.spacing.sm }, children: [_jsx(IconButton, { label: labels.previous, tone: "ghost", disabled: state.atStart, onPress: () => navigate("previous"), children: _jsx(DrawnChevron, { direction: "start", size: glyph.sm, color: chevronColor }) }), _jsx(IconButton, { label: labels.next, tone: "ghost", disabled: state.atEnd, onPress: () => navigate("next"), children: _jsx(DrawnChevron, { direction: "end", size: glyph.sm, color: chevronColor }) })] })] });
83
90
  }
84
91
  //# sourceMappingURL=collection-rail.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection-rail.js","sourceRoot":"","sources":["../src/collection-rail.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection-rail.js","sourceRoot":"","sources":["../src/collection-rail.tsx"],"names":[],"mappings":"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"}