@hjmds/react-native 1.10.0 → 1.11.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 (150) hide show
  1. package/README.md +41 -32
  2. package/THIRD_PARTY_NOTICES.md +78 -0
  3. package/dist/actions.d.ts +29 -46
  4. package/dist/actions.d.ts.map +1 -1
  5. package/dist/actions.js +16 -58
  6. package/dist/actions.js.map +1 -1
  7. package/dist/activity-heatmap.d.ts +9 -0
  8. package/dist/activity-heatmap.d.ts.map +1 -0
  9. package/dist/activity-heatmap.js +10 -0
  10. package/dist/activity-heatmap.js.map +1 -0
  11. package/dist/auth-screen.d.ts +5 -4
  12. package/dist/auth-screen.d.ts.map +1 -1
  13. package/dist/auth-screen.js +14 -4
  14. package/dist/auth-screen.js.map +1 -1
  15. package/dist/avatar-blobatar-motion.d.ts +5 -0
  16. package/dist/avatar-blobatar-motion.d.ts.map +1 -0
  17. package/dist/avatar-blobatar-motion.js +33 -0
  18. package/dist/avatar-blobatar-motion.js.map +1 -0
  19. package/dist/avatar-blobatar.d.ts +6 -0
  20. package/dist/avatar-blobatar.d.ts.map +1 -0
  21. package/dist/avatar-blobatar.js +10 -0
  22. package/dist/avatar-blobatar.js.map +1 -0
  23. package/dist/carousel-motion.d.ts +4 -1
  24. package/dist/carousel-motion.d.ts.map +1 -1
  25. package/dist/carousel-motion.js +16 -7
  26. package/dist/carousel-motion.js.map +1 -1
  27. package/dist/code-block.d.ts +8 -0
  28. package/dist/code-block.d.ts.map +1 -0
  29. package/dist/code-block.js +17 -0
  30. package/dist/code-block.js.map +1 -0
  31. package/dist/content-transition.d.ts +5 -2
  32. package/dist/content-transition.d.ts.map +1 -1
  33. package/dist/content-transition.js +14 -8
  34. package/dist/content-transition.js.map +1 -1
  35. package/dist/data-display.d.ts +9 -46
  36. package/dist/data-display.d.ts.map +1 -1
  37. package/dist/data-display.js +50 -108
  38. package/dist/data-display.js.map +1 -1
  39. package/dist/duration-field.d.ts +9 -0
  40. package/dist/duration-field.d.ts.map +1 -0
  41. package/dist/duration-field.js +15 -0
  42. package/dist/duration-field.js.map +1 -0
  43. package/dist/effect-surface.d.ts +11 -0
  44. package/dist/effect-surface.d.ts.map +1 -0
  45. package/dist/effect-surface.js +61 -0
  46. package/dist/effect-surface.js.map +1 -0
  47. package/dist/evidence.d.ts +1 -1
  48. package/dist/evidence.js +1 -1
  49. package/dist/feedback.d.ts +1 -5
  50. package/dist/feedback.d.ts.map +1 -1
  51. package/dist/feedback.js +41 -24
  52. package/dist/feedback.js.map +1 -1
  53. package/dist/floating-action-button.d.ts +2 -2
  54. package/dist/floating-action-button.d.ts.map +1 -1
  55. package/dist/floating-action-button.js +7 -7
  56. package/dist/floating-action-button.js.map +1 -1
  57. package/dist/folder-preview.d.ts +11 -0
  58. package/dist/folder-preview.d.ts.map +1 -0
  59. package/dist/folder-preview.js +10 -0
  60. package/dist/folder-preview.js.map +1 -0
  61. package/dist/forms.d.ts +2 -20
  62. package/dist/forms.d.ts.map +1 -1
  63. package/dist/forms.js +14 -27
  64. package/dist/forms.js.map +1 -1
  65. package/dist/gravity-letters.d.ts +8 -0
  66. package/dist/gravity-letters.d.ts.map +1 -0
  67. package/dist/gravity-letters.js +34 -0
  68. package/dist/gravity-letters.js.map +1 -0
  69. package/dist/grid-reveal.d.ts +9 -0
  70. package/dist/grid-reveal.d.ts.map +1 -0
  71. package/dist/grid-reveal.js +24 -0
  72. package/dist/grid-reveal.js.map +1 -0
  73. package/dist/icon-lucide.d.ts +19 -0
  74. package/dist/icon-lucide.d.ts.map +1 -0
  75. package/dist/icon-lucide.js +11 -0
  76. package/dist/icon-lucide.js.map +1 -0
  77. package/dist/index.d.ts +6 -6
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js.map +1 -1
  80. package/dist/inline-confirm.d.ts +13 -0
  81. package/dist/inline-confirm.d.ts.map +1 -0
  82. package/dist/inline-confirm.js +40 -0
  83. package/dist/inline-confirm.js.map +1 -0
  84. package/dist/inputs.d.ts +7 -53
  85. package/dist/inputs.d.ts.map +1 -1
  86. package/dist/inputs.js +77 -81
  87. package/dist/inputs.js.map +1 -1
  88. package/dist/internal/field-frame.d.ts +16 -0
  89. package/dist/internal/field-frame.d.ts.map +1 -0
  90. package/dist/internal/field-frame.js +19 -0
  91. package/dist/internal/field-frame.js.map +1 -0
  92. package/dist/internal/recipe-button.d.ts +28 -0
  93. package/dist/internal/recipe-button.d.ts.map +1 -0
  94. package/dist/internal/recipe-button.js +64 -0
  95. package/dist/internal/recipe-button.js.map +1 -0
  96. package/dist/navigation-bar.d.ts +10 -0
  97. package/dist/navigation-bar.d.ts.map +1 -0
  98. package/dist/navigation-bar.js +14 -0
  99. package/dist/navigation-bar.js.map +1 -0
  100. package/dist/navigation.d.ts +11 -48
  101. package/dist/navigation.d.ts.map +1 -1
  102. package/dist/navigation.js +189 -132
  103. package/dist/navigation.js.map +1 -1
  104. package/dist/notification-bell.d.ts +11 -0
  105. package/dist/notification-bell.d.ts.map +1 -0
  106. package/dist/notification-bell.js +30 -0
  107. package/dist/notification-bell.js.map +1 -0
  108. package/dist/overlays.d.ts.map +1 -1
  109. package/dist/overlays.js +10 -4
  110. package/dist/overlays.js.map +1 -1
  111. package/dist/primitives.d.ts +9 -45
  112. package/dist/primitives.d.ts.map +1 -1
  113. package/dist/primitives.js +11 -24
  114. package/dist/primitives.js.map +1 -1
  115. package/dist/reaction-picker.d.ts +10 -0
  116. package/dist/reaction-picker.d.ts.map +1 -0
  117. package/dist/reaction-picker.js +11 -0
  118. package/dist/reaction-picker.js.map +1 -0
  119. package/dist/scroll-progress.d.ts +9 -0
  120. package/dist/scroll-progress.d.ts.map +1 -0
  121. package/dist/scroll-progress.js +6 -0
  122. package/dist/scroll-progress.js.map +1 -0
  123. package/dist/sheet-gesture.d.ts.map +1 -1
  124. package/dist/sheet-gesture.js +17 -3
  125. package/dist/sheet-gesture.js.map +1 -1
  126. package/dist/statistic-motion.d.ts +11 -0
  127. package/dist/statistic-motion.d.ts.map +1 -0
  128. package/dist/statistic-motion.js +13 -0
  129. package/dist/statistic-motion.js.map +1 -0
  130. package/dist/step-player.d.ts +24 -0
  131. package/dist/step-player.d.ts.map +1 -0
  132. package/dist/step-player.js +16 -0
  133. package/dist/step-player.js.map +1 -0
  134. package/dist/task-list.d.ts +16 -0
  135. package/dist/task-list.d.ts.map +1 -0
  136. package/dist/task-list.js +19 -0
  137. package/dist/task-list.js.map +1 -0
  138. package/dist/thinking-orb.d.ts +1 -1
  139. package/dist/thinking-orb.d.ts.map +1 -1
  140. package/dist/thinking-orb.js +4 -4
  141. package/dist/thinking-orb.js.map +1 -1
  142. package/dist/toast-liquid.d.ts.map +1 -1
  143. package/dist/toast-liquid.js +14 -10
  144. package/dist/toast-liquid.js.map +1 -1
  145. package/dist/voice-note.d.ts +24 -0
  146. package/dist/voice-note.d.ts.map +1 -0
  147. package/dist/voice-note.js +13 -0
  148. package/dist/voice-note.js.map +1 -0
  149. package/docs/liquid-toast.md +48 -2
  150. package/package.json +136 -7
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useRef, useState, useSyncExternalStore } from "react";
3
+ import { AccessibilityInfo, AppState, Platform, View } from "react-native";
4
+ import { spacing } from "@hjmds/design-contracts/foundations";
5
+ import { createAlertDialogSession } from "@hjmds/design-contracts/components/alert-dialog";
6
+ import { Button } from "./actions.js";
7
+ import { Text } from "./primitives.js";
8
+ const emptySubscribe = () => () => { };
9
+ const emptySnapshot = () => null;
10
+ export function InlineConfirm(props) {
11
+ const [session, setSession] = useState(null);
12
+ const [done, setDone] = useState(false);
13
+ const phase = useSyncExternalStore(session?.subscribe ?? emptySubscribe, session?.getSnapshot ?? emptySnapshot, emptySnapshot);
14
+ useEffect(() => {
15
+ if (phase?.status !== "closing")
16
+ return;
17
+ session?.completeExit();
18
+ setDone(phase.result.outcome === "confirmed");
19
+ setSession(null);
20
+ }, [phase, session]);
21
+ const status = done ? props.successLabel : phase?.status === "error" ? phase.message
22
+ : phase?.status === "busy" ? props.pendingLabel : session && phase?.status !== "closing" ? props.prompt : "";
23
+ const previousStatus = useRef("");
24
+ useEffect(() => {
25
+ const changed = previousStatus.current !== status;
26
+ previousStatus.current = status;
27
+ // Android live regions do not speak on iOS. Announce each transition once,
28
+ // excluding background work and ordinary rerenders; the button retains focus.
29
+ if (changed && status && Platform.OS === "ios" && AppState.currentState === "active") {
30
+ AccessibilityInfo.announceForAccessibilityWithOptions(status, { queue: phase?.status !== "error" });
31
+ }
32
+ }, [status, phase?.status]);
33
+ if (done)
34
+ return _jsx(Text, { accessibilityLiveRegion: "polite", children: props.successLabel });
35
+ if (!session)
36
+ return _jsx(Button, { tone: "danger", disabled: props.disabled ?? false, onPress: () => setSession(createAlertDialogSession({ mode: "confirm", tone: "danger", title: props.label, description: props.prompt, confirmLabel: props.confirmLabel, cancelLabel: props.cancelLabel, onConfirm: props.onConfirm, fallbackErrorMessage: props.errorLabel })), children: props.label });
37
+ const busy = phase?.status === "busy";
38
+ return _jsxs(View, { style: { gap: spacing.sm }, children: [_jsx(Text, { accessibilityLiveRegion: "polite", children: props.prompt }), phase?.status === "error" && _jsx(Text, { accessibilityRole: "alert", tone: "danger", children: phase.message }), _jsxs(View, { style: { flexDirection: "row", flexWrap: "wrap", gap: spacing.sm }, children: [_jsx(Button, { tone: "ghost", disabled: busy, onPress: () => session.cancel("cancel-action"), children: props.cancelLabel }), _jsx(Button, { tone: "danger", loading: busy, disabled: busy || (props.disabled ?? false), onPress: () => { void session.confirm(); }, children: busy ? props.pendingLabel : props.confirmLabel })] })] });
39
+ }
40
+ //# sourceMappingURL=inline-confirm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-confirm.js","sourceRoot":"","sources":["../src/inline-confirm.tsx"],"names":[],"mappings":"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"}
package/dist/inputs.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { type FieldAlign, type FieldShape, type FieldVariant } from "@hjmds/design-contracts/recipes/base";
2
2
  import { type ChipSize, type SearchFieldSize, type SegmentedControlSize, type SelectionControlPresentation, type SelectionControlSize, type SwitchSize, type SwitchPresentation } from "@hjmds/design-contracts/recipes";
3
3
  import { type PasswordFieldAutofillHint, type PasswordFieldSize } from "@hjmds/design-contracts/components/password-field";
4
- import { type OtpFieldSize } from "@hjmds/design-contracts/components/otp-field";
4
+ import { type OtpFieldSize, type OtpFieldPresentation } from "@hjmds/design-contracts/components/otp-field";
5
5
  import { type CheckboxGroupSelection, type CheckboxState, type SelectionItemDescriptor, type SelectionOrientation } from "@hjmds/design-contracts/behaviors";
6
6
  import { type ReactNode } from "react";
7
7
  import { TextInput, type StyleProp, type GestureResponderEvent, type SwitchProps as NativeSwitchProps, type TextInputProps, type TextStyle, type ViewStyle } from "react-native";
@@ -35,28 +35,12 @@ type BaseFieldProps = Omit<TextInputProps, "accessibilityLabel" | "defaultValue"
35
35
  onValueChange?: (value: string) => void;
36
36
  /** Helper copy below the control; the same name as the Web renderer. */
37
37
  description?: string;
38
- /**
39
- * @deprecated Since 1.5.0; use `description`, the name the Web renderer uses.
40
- * Kept for the 1.x train.
41
- */
42
- supportText?: string;
43
38
  error?: string;
44
39
  required?: boolean;
45
40
  disabled?: boolean;
46
41
  busy?: boolean;
47
42
  variant?: FieldVariant;
48
43
  shape?: FieldShape;
49
- /**
50
- * @deprecated Input color, typography, padding, and control height are recipe-owned. Request
51
- * a semantic field axis instead of overriding them in product code.
52
- * @see https://github.com/jim1286/hjm-design-system/blob/main/packages/design-contracts/docs/consumer-policy.md#31-react-native-legacy-style-compatibility-boundary
53
- */
54
- inputStyle?: StyleProp<TextStyle>;
55
- /**
56
- * @deprecated Legacy compatibility only. New apps must use `layoutStyle` for placement.
57
- * @see https://github.com/jim1286/hjm-design-system/blob/main/packages/design-contracts/docs/consumer-policy.md#31-react-native-legacy-style-compatibility-boundary
58
- */
59
- containerStyle?: StyleProp<ViewStyle>;
60
44
  /** Canonical layout-only placement for the complete field. Controlled keys are excluded. */
61
45
  layoutStyle?: HjmCompositionStyleProp;
62
46
  }>;
@@ -115,6 +99,7 @@ export type OtpFieldProps = Omit<BaseFieldProps, "autoComplete" | "defaultValue"
115
99
  onValueChange?: (value: string) => void;
116
100
  onComplete?: (value: string) => void;
117
101
  size?: OtpFieldSize;
102
+ presentation?: OtpFieldPresentation;
118
103
  slotStyle?: StyleProp<ViewStyle>;
119
104
  slotTextStyle?: StyleProp<TextStyle>;
120
105
  }>;
@@ -187,8 +172,6 @@ export type RadioGroupItem<Value extends string = string> = Readonly<{
187
172
  accessibilityHint?: string;
188
173
  leading?: ReactNode;
189
174
  }>;
190
- /** @deprecated Use the renderer-neutral `RadioGroupItem` name. */
191
- export type RadioOption<Value extends string = string> = RadioGroupItem<Value>;
192
175
  type ChoiceGroupVisualProps = ChoiceVisualProps & Readonly<{
193
176
  orientation?: SelectionOrientation;
194
177
  disabled?: boolean;
@@ -203,11 +186,6 @@ type ChoiceGroupVisualProps = ChoiceVisualProps & Readonly<{
203
186
  }>;
204
187
  type RadioGroupCollectionProps<Value extends string> = Readonly<{
205
188
  items: readonly RadioGroupItem<Value>[];
206
- options?: never;
207
- }> | Readonly<{
208
- items?: never;
209
- /** @deprecated Use the renderer-neutral `items` prop. */
210
- options: readonly RadioOption<Value>[];
211
189
  }>;
212
190
  export type RadioGroupProps<Value extends string = string> = ChoiceGroupVisualProps & RadioGroupCollectionProps<Value> & Readonly<{
213
191
  label?: string | undefined;
@@ -218,7 +196,7 @@ export type RadioGroupProps<Value extends string = string> = ChoiceGroupVisualPr
218
196
  renderLeading?: (item: RadioGroupItem<Value>, props: ChoiceVisualRenderProps) => ReactNode;
219
197
  renderIndicator?: (item: RadioGroupItem<Value>, props: ChoiceVisualRenderProps) => ReactNode;
220
198
  }>;
221
- export declare function RadioGroup<Value extends string = string>({ label, accessibilityLabel, items, options, value, defaultValue, onValueChange, required, disabled, readOnly, invalid, description, error, requiredLabel, readOnlyLabel, invalidLabel, orientation, presentation, size, indicator, renderLeading, renderIndicator, style, ...slotStyles }: RadioGroupProps<Value>): import("react").JSX.Element;
199
+ export declare function RadioGroup<Value extends string = string>(props: RadioGroupProps<Value>): import("react").JSX.Element;
222
200
  export type CheckboxGroupProps<Value extends string = string> = ChoiceGroupVisualProps & CheckboxGroupSelection<Value> & Readonly<{
223
201
  label?: string;
224
202
  accessibilityLabel?: string;
@@ -249,19 +227,8 @@ type SwitchCanonicalStateProps = Readonly<{
249
227
  defaultValue?: never;
250
228
  onValueChange?: never;
251
229
  }>;
252
- type SwitchLegacyStateProps = Readonly<{
253
- checked?: never;
254
- defaultChecked?: never;
255
- onCheckedChange?: never;
256
- /** @deprecated Use the renderer-neutral `checked` prop. */
257
- value?: boolean;
258
- /** @deprecated Use the renderer-neutral `defaultChecked` prop. */
259
- defaultValue?: boolean;
260
- /** @deprecated Use the renderer-neutral `onCheckedChange` prop. */
261
- onValueChange?: (value: boolean) => void;
262
- }>;
263
- export type SwitchProps = SwitchBaseProps & (SwitchCanonicalStateProps | SwitchLegacyStateProps);
264
- export declare function Switch({ label, labelVisibility, presentation, testID, description, size, checked, defaultChecked, onCheckedChange, value, defaultValue, onValueChange, disabled, accessibilityLabel, accessibilityHint, layoutStyle, style, ...props }: SwitchProps): import("react").JSX.Element;
230
+ export type SwitchProps = SwitchBaseProps & SwitchCanonicalStateProps;
231
+ export declare function Switch({ label, labelVisibility, presentation, testID, description, size, checked, defaultChecked, onCheckedChange, disabled, accessibilityLabel, accessibilityHint, layoutStyle, style, ...props }: SwitchProps): import("react").JSX.Element;
265
232
  export type SegmentedControlItem<Value extends string = string> = Readonly<{
266
233
  value: Value;
267
234
  label: string;
@@ -269,8 +236,6 @@ export type SegmentedControlItem<Value extends string = string> = Readonly<{
269
236
  leading?: ReactNode;
270
237
  renderLeading?: (props: SegmentedControlLeadingRenderProps) => ReactNode;
271
238
  }>;
272
- /** @deprecated Use the renderer-neutral `SegmentedControlItem` name. */
273
- export type SegmentedControlOption<Value extends string = string> = SegmentedControlItem<Value>;
274
239
  export type SegmentedControlLeadingRenderProps = Readonly<{
275
240
  selected: boolean;
276
241
  disabled: boolean;
@@ -279,11 +244,6 @@ export type SegmentedControlLeadingRenderProps = Readonly<{
279
244
  }>;
280
245
  type SegmentedControlCollectionProps<Value extends string> = Readonly<{
281
246
  items: readonly SegmentedControlItem<Value>[];
282
- options?: never;
283
- }> | Readonly<{
284
- items?: never;
285
- /** @deprecated Use the renderer-neutral `items` prop. */
286
- options: readonly SegmentedControlOption<Value>[];
287
247
  }>;
288
248
  export type SegmentedControlProps<Value extends string = string> = SegmentedControlCollectionProps<Value> & Readonly<{
289
249
  label: string;
@@ -294,7 +254,7 @@ export type SegmentedControlProps<Value extends string = string> = SegmentedCont
294
254
  disabled?: boolean;
295
255
  style?: StyleProp<ViewStyle>;
296
256
  }>;
297
- export declare function SegmentedControl<Value extends string = string>({ label, items, options, value, defaultValue, onValueChange, size, disabled, style, }: SegmentedControlProps<Value>): import("react").JSX.Element;
257
+ export declare function SegmentedControl<Value extends string = string>(props: SegmentedControlProps<Value>): import("react").JSX.Element;
298
258
  type ChipBaseProps = Readonly<{
299
259
  label: string;
300
260
  size?: ChipSize;
@@ -305,12 +265,6 @@ type ChipBaseProps = Readonly<{
305
265
  accessibilityHint?: string;
306
266
  /** Canonical layout-only placement. Controlled visual and state keys are excluded. */
307
267
  layoutStyle?: HjmCompositionStyleProp;
308
- /**
309
- * @deprecated Legacy compatibility only. New apps must use `layoutStyle` and must not
310
- * override color, typography, radius, control height, or interaction state.
311
- * @see https://github.com/jim1286/hjm-design-system/blob/main/packages/design-contracts/docs/consumer-policy.md#31-react-native-legacy-style-compatibility-boundary
312
- */
313
- style?: StyleProp<ViewStyle>;
314
268
  leadingStyle?: HjmCompositionStyleProp;
315
269
  indicatorStyle?: HjmCompositionStyleProp;
316
270
  labelStyle?: StyleProp<TextStyle>;
@@ -334,6 +288,6 @@ type SelectionChipProps = Readonly<{
334
288
  }>;
335
289
  export type ChipProps = ChipBaseProps & (ActionChipProps | SelectionChipProps);
336
290
  /** Action/filter chip with role-specific, controlled selection semantics. */
337
- export declare function Chip({ label, size, disabled, leading, trailing, accessibilityLabel, accessibilityHint, layoutStyle, style, leadingStyle, indicatorStyle, labelStyle, trailingStyle, renderSelectionIndicator, selectionMode, selected, onPress, }: ChipProps): import("react").JSX.Element;
291
+ export declare function Chip({ label, size, disabled, leading, trailing, accessibilityLabel, accessibilityHint, layoutStyle, leadingStyle, indicatorStyle, labelStyle, trailingStyle, renderSelectionIndicator, selectionMode, selected, onPress, }: ChipProps): import("react").JSX.Element;
338
292
  export {};
339
293
  //# sourceMappingURL=inputs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inputs.d.ts","sourceRoot":"","sources":["../src/inputs.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inputs.d.ts","sourceRoot":"","sources":["../src/inputs.tsx"],"names":[],"mappings":"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"}
package/dist/inputs.js CHANGED
@@ -1,7 +1,8 @@
1
1
  import { createElement as _createElement } from "react";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { FieldMessage, NativeFieldFrame } from "./internal/field-frame.js";
3
4
  import { resolveColorReference } from "@hjmds/design-contracts/color-references";
4
- import { glyph, radius, spacing, typography } from "@hjmds/design-contracts/foundations";
5
+ import { glyph, radius, spacing, typography, } from "@hjmds/design-contracts/foundations";
5
6
  import { fieldRecipe, } from "@hjmds/design-contracts/recipes/base";
6
7
  import { chipRecipe, searchFieldRecipe, segmentedControlRecipe, selectionControlRecipe, selectionGroupRecipe, switchRecipe, } from "@hjmds/design-contracts/recipes";
7
8
  import { visibleControlHeight } from "@hjmds/design-contracts/components/design-system-provider";
@@ -9,7 +10,7 @@ import { passwordFieldRecipe, resolvePasswordFieldDescriptor, } from "@hjmds/des
9
10
  import { getOtpFieldSlotValues, otpFieldRecipe, resolveOtpFieldValue, } from "@hjmds/design-contracts/components/otp-field";
10
11
  import { getCheckboxNextState, reconcileCheckboxSelection, resolveControlAccessibleName, resolveInitialRadioValue, resolveInitialTabValue, reconcileRadioSelection, selectionGroupBehaviorDefaults, toggleCheckboxSelection, validateCheckboxSelection, validateRadioSelection, validateSelectionItems, } from "@hjmds/design-contracts/behaviors";
11
12
  import { forwardRef, useEffect, useId, useImperativeHandle, useRef, useState, } from "react";
12
- import { ActivityIndicator, Platform, Pressable, Switch as NativeSwitch, TextInput, View, } from "react-native";
13
+ import { ActivityIndicator, Platform, Pressable, Switch as NativeSwitch, Text as NativeText, TextInput, View, } from "react-native";
13
14
  import { mixedCheckboxState, useControllableState } from "./internal/state.js";
14
15
  import { webChoiceProps, webOnly } from "./internal/web-a11y.js";
15
16
  import { logicalTextAlign, minimumTargetStyle, resolveNativeTextScaleProps, } from "./internal/styles.js";
@@ -27,12 +28,7 @@ function resolveFieldAccessibleName(label, accessibilityLabel) {
27
28
  ...(visibleLabel ? { visibleLabel } : {}),
28
29
  };
29
30
  }
30
- function FieldMessage({ error, supportText }) {
31
- if (!error && !supportText)
32
- return null;
33
- return (_jsx(Text, { accessibilityLiveRegion: error ? "assertive" : "none", tone: error ? "danger" : "muted", variant: fieldRecipe.support.textVariant, children: error ?? supportText }));
34
- }
35
- const FieldRenderer = forwardRef(function FieldRenderer({ label, value, defaultValue = "", onValueChange, description, supportText: legacySupportText, error, required = false, disabled = false, busy = false, variant = fieldRecipe.defaults.variant, shape, accessibilityLabel, inputStyle, containerStyle, layoutStyle, allowFontScaling, multiline, maxVisibleLines, minVisibleLines, align = fieldRecipe.defaults.align, search, searchSize = searchFieldRecipe.defaults.size, leading, trailing, onBlur, onFocus, ...props }, ref) {
31
+ const FieldRenderer = forwardRef(function FieldRenderer({ label, value, defaultValue = "", onValueChange, description, error, required = false, disabled = false, busy = false, variant = fieldRecipe.defaults.variant, shape, accessibilityLabel, layoutStyle, allowFontScaling, multiline, maxVisibleLines, minVisibleLines, align = fieldRecipe.defaults.align, search, recipeInputStyle, searchSize = searchFieldRecipe.defaults.size, leading, trailing, onBlur, onFocus, ...props }, ref) {
36
32
  const theme = useHjmNativeTheme();
37
33
  const { colors, environment, textScaling } = theme;
38
34
  const [focused, setFocused] = useState(false);
@@ -41,13 +37,16 @@ const FieldRenderer = forwardRef(function FieldRenderer({ label, value, defaultV
41
37
  defaultValue,
42
38
  ...(onValueChange === undefined ? {} : { onChange: onValueChange }),
43
39
  });
44
- const supportText = description ?? legacySupportText;
40
+ const supportText = description;
45
41
  const hint = error ?? supportText;
46
42
  const { accessibleName, visibleLabel } = resolveFieldAccessibleName(label, accessibilityLabel);
47
- const resolvedShape = shape ?? (search ? searchFieldRecipe.defaults.shape : fieldRecipe.defaults.shape);
43
+ const resolvedShape = shape ??
44
+ (search ? searchFieldRecipe.defaults.shape : fieldRecipe.defaults.shape);
48
45
  const searchSizing = searchFieldRecipe.sizes[searchSize];
49
46
  const resolvedMaxVisibleLines = maxVisibleLines ?? fieldRecipe.multilineMaxVisibleLines;
50
- const borderWidth = search ? searchFieldRecipe.borderWidth : fieldRecipe.borderWidth;
47
+ const borderWidth = search
48
+ ? searchFieldRecipe.borderWidth
49
+ : fieldRecipe.borderWidth;
51
50
  const borderColor = search
52
51
  ? resolveColorReference(error
53
52
  ? searchFieldRecipe.colors.invalid
@@ -71,11 +70,14 @@ const FieldRenderer = forwardRef(function FieldRenderer({ label, value, defaultV
71
70
  const minHeight = multiline
72
71
  ? minVisibleLines === undefined
73
72
  ? fieldRecipe.multilineMinHeight
74
- : Math.max(fieldRecipe.multilineMinHeight, textStyle.lineHeight * minVisibleLines + fieldRecipe.paddingVertical * 2)
73
+ : Math.max(fieldRecipe.multilineMinHeight, textStyle.lineHeight * minVisibleLines +
74
+ fieldRecipe.paddingVertical * 2)
75
75
  : search
76
76
  ? searchSizing.minHeight
77
77
  : fieldRecipe.minHeight;
78
- const controlRadius = radius[search ? searchFieldRecipe.shapes[resolvedShape] : fieldRecipe.shapes[resolvedShape]];
78
+ const controlRadius = radius[search
79
+ ? searchFieldRecipe.shapes[resolvedShape]
80
+ : fieldRecipe.shapes[resolvedShape]];
79
81
  const inputTextScaleProps = resolveNativeTextScaleProps(textScaling, [
80
82
  {
81
83
  color: search
@@ -85,11 +87,13 @@ const FieldRenderer = forwardRef(function FieldRenderer({ label, value, defaultV
85
87
  fontSize: textStyle.fontSize,
86
88
  fontWeight: textStyle.fontWeight,
87
89
  lineHeight: textStyle.lineHeight,
88
- minHeight: minHeight - (borderWidth * 2),
89
- ...(multiline && resolvedMaxVisibleLines !== null && resolvedMaxVisibleLines !== undefined
90
+ minHeight: minHeight - borderWidth * 2,
91
+ ...(multiline &&
92
+ resolvedMaxVisibleLines !== null &&
93
+ resolvedMaxVisibleLines !== undefined
90
94
  ? {
91
- maxHeight: textStyle.lineHeight * resolvedMaxVisibleLines
92
- + (fieldRecipe.paddingVertical * 2),
95
+ maxHeight: textStyle.lineHeight * resolvedMaxVisibleLines +
96
+ fieldRecipe.paddingVertical * 2,
93
97
  }
94
98
  : {}),
95
99
  paddingHorizontal: 0,
@@ -99,42 +103,37 @@ const FieldRenderer = forwardRef(function FieldRenderer({ label, value, defaultV
99
103
  : logicalTextAlign(environment.direction),
100
104
  textAlignVertical: multiline ? "top" : "center",
101
105
  },
102
- inputStyle,
106
+ recipeInputStyle,
103
107
  ], allowFontScaling);
104
- return (_jsxs(View, { style: [
108
+ return (_jsx(NativeFieldFrame, { ...(visibleLabel === undefined ? {} : { label: visibleLabel }), required: required, ...(error === undefined ? {} : { error }), ...(supportText === undefined ? {} : { description: supportText }), style: [
105
109
  {
106
- gap: fieldRecipe.label.gap,
107
110
  opacity: disabled
108
111
  ? search
109
112
  ? searchFieldRecipe.states.disabledOpacity
110
113
  : fieldRecipe.disabledOpacity
111
114
  : 1,
112
115
  },
113
- containerStyle,
114
116
  layoutStyle,
115
- ], children: [visibleLabel ? (_jsxs(Text, { style: {
116
- color: colors[fieldRecipe.label.color],
117
- fontWeight: fieldRecipe.label.fontWeight,
118
- }, tone: "body", variant: fieldRecipe.label.textVariant, children: [visibleLabel, required ? " *" : ""] })) : null, _jsxs(View, { style: { gap: fieldRecipe.support.gap }, children: [_jsxs(View, { style: {
119
- alignItems: multiline ? "stretch" : "center",
120
- backgroundColor,
121
- borderColor,
122
- borderRadius: controlRadius,
123
- borderWidth,
124
- direction: environment.direction,
125
- flexDirection: "row",
126
- gap: search ? searchSizing.gap : 0,
127
- minHeight,
128
- paddingHorizontal: search
129
- ? searchSizing.paddingHorizontal
130
- : fieldRecipe.paddingHorizontal,
131
- }, children: [leading ? (_jsx(View, { accessibilityElementsHidden: true, accessible: false, importantForAccessibility: "no-hide-descendants", children: leading })) : null, _jsx(TextInput, { ...props, ...inputTextScaleProps, ref: ref, accessibilityHint: hint, accessibilityLabel: accessibleName, accessibilityRole: search ? "search" : undefined, accessibilityState: { busy, disabled }, editable: !disabled && !busy, multiline: multiline, onBlur: (event) => {
132
- setFocused(false);
133
- onBlur?.(event);
134
- }, onChangeText: setCurrentValue, onFocus: (event) => {
135
- setFocused(true);
136
- onFocus?.(event);
137
- }, placeholderTextColor: placeholderColor, value: currentValue }), trailing] }), _jsx(FieldMessage, { ...(error === undefined ? {} : { error }), ...(supportText === undefined ? {} : { supportText }) })] })] }));
117
+ ], children: _jsxs(View, { style: {
118
+ alignItems: multiline ? "stretch" : "center",
119
+ backgroundColor,
120
+ borderColor,
121
+ borderRadius: controlRadius,
122
+ borderWidth,
123
+ direction: environment.direction,
124
+ flexDirection: "row",
125
+ gap: search ? searchSizing.gap : 0,
126
+ minHeight,
127
+ paddingHorizontal: search
128
+ ? searchSizing.paddingHorizontal
129
+ : fieldRecipe.paddingHorizontal,
130
+ }, children: [leading ? (_jsx(View, { accessibilityElementsHidden: true, accessible: false, importantForAccessibility: "no-hide-descendants", children: leading })) : null, _jsx(TextInput, { ...props, ...inputTextScaleProps, ref: ref, accessibilityHint: hint, accessibilityLabel: accessibleName, accessibilityRole: search ? "search" : undefined, accessibilityState: { busy, disabled }, editable: !disabled && !busy, multiline: multiline, onBlur: (event) => {
131
+ setFocused(false);
132
+ onBlur?.(event);
133
+ }, onChangeText: setCurrentValue, onFocus: (event) => {
134
+ setFocused(true);
135
+ onFocus?.(event);
136
+ }, placeholderTextColor: placeholderColor, value: currentValue }), trailing] }) }));
138
137
  });
139
138
  export const TextField = forwardRef(function TextField(props, ref) {
140
139
  return _jsx(FieldRenderer, { ...props, ref: ref, multiline: false, search: false });
@@ -237,7 +236,7 @@ export const PasswordField = forwardRef(function PasswordField({ revealed: revea
237
236
  }, 0);
238
237
  return () => clearTimeout(timeout);
239
238
  }, [revealed]);
240
- return (_jsx(FieldRenderer, { ...props, ref: inputRef, autoComplete: autofillHint === "current" ? "current-password" : "new-password", disabled: disabled, inputStyle: [
239
+ return (_jsx(FieldRenderer, { ...props, ref: inputRef, autoComplete: autofillHint === "current" ? "current-password" : "new-password", disabled: disabled, recipeInputStyle: [
241
240
  size === "large"
242
241
  ? {
243
242
  fontSize: typography.bodyLarge.fontSize,
@@ -245,7 +244,6 @@ export const PasswordField = forwardRef(function PasswordField({ revealed: revea
245
244
  minHeight: metrics.minHeight - (passwordFieldRecipe.frame.borderWidth * 2),
246
245
  }
247
246
  : undefined,
248
- props.inputStyle,
249
247
  ], multiline: false, onSelectionChange: (event) => {
250
248
  selectionRef.current = event.nativeEvent.selection;
251
249
  onSelectionChange?.(event);
@@ -258,8 +256,8 @@ export const PasswordField = forwardRef(function PasswordField({ revealed: revea
258
256
  }), children: renderToggleIcon?.(appearance) ?? _jsx(DefaultPasswordToggleIcon, { ...appearance }) })) }));
259
257
  });
260
258
  /** One accessible numeric TextInput rendered through decorative OTP slots. */
261
- export const OtpField = forwardRef(function OtpField({ label, accessibilityLabel, description, supportText: legacySupportText, error, required = false, disabled = false, busy = false, readOnly = false, length, value: valueProp, defaultValue = "", onValueChange, onComplete, size = otpFieldRecipe.defaults.size, slotStyle, slotTextStyle, containerStyle, allowFontScaling, onBlur, onFocus, ...props }, ref) {
262
- const supportText = description ?? legacySupportText;
259
+ export const OtpField = forwardRef(function OtpField({ label, accessibilityLabel, description, error, required = false, disabled = false, busy = false, readOnly = false, length, value: valueProp, defaultValue = "", onValueChange, onComplete, size = otpFieldRecipe.defaults.size, presentation = "boxes", slotStyle, slotTextStyle, allowFontScaling, onBlur, onFocus, ...props }, ref) {
260
+ const supportText = description;
263
261
  const theme = useHjmNativeTheme();
264
262
  const { accessibleName, visibleLabel } = resolveFieldAccessibleName(label, accessibilityLabel);
265
263
  const [focused, setFocused] = useState(false);
@@ -289,7 +287,6 @@ export const OtpField = forwardRef(function OtpField({ label, accessibilityLabel
289
287
  gap: fieldRecipe.label.gap,
290
288
  opacity: disabled || busy ? otpFieldRecipe.states.disabledOpacity : 1,
291
289
  },
292
- containerStyle,
293
290
  ], children: [visibleLabel ? (_jsxs(Text, { style: {
294
291
  color: theme.colors[fieldRecipe.label.color],
295
292
  fontWeight: fieldRecipe.label.fontWeight,
@@ -329,8 +326,10 @@ export const OtpField = forwardRef(function OtpField({ label, accessibilityLabel
329
326
  alignItems: "center",
330
327
  backgroundColor: theme.colors.bg,
331
328
  borderColor,
332
- borderRadius: radius[otpFieldRecipe.slot.radius],
333
- borderWidth: otpFieldRecipe.slot.borderWidth,
329
+ borderRadius: presentation === "underline" ? 0 : radius[otpFieldRecipe.slot.radius],
330
+ // Underline changes only decoration; one TextInput still owns edits and autofill.
331
+ borderWidth: presentation === "underline" ? 0 : otpFieldRecipe.slot.borderWidth,
332
+ borderBottomWidth: presentation === "underline" ? 2 : otpFieldRecipe.slot.borderWidth,
334
333
  flex: 1,
335
334
  height: slotHeight,
336
335
  justifyContent: "center",
@@ -376,12 +375,14 @@ function ChoiceRow({ kind, label, description, checked, disabled, readOnly, requ
376
375
  readOnly ? readOnlyLabel : undefined,
377
376
  invalid ? invalidLabel : undefined,
378
377
  ].filter(Boolean).join(". ") || undefined;
378
+ // Selection marks are artwork inside a fixed box, not readable copy. HJM Text
379
+ // applies controlled textScale even with allowFontScaling=false, clipping at 200%.
379
380
  const defaultIndicator = kind === "radio" ? (checked === true ? (_jsx(View, { style: {
380
381
  backgroundColor: indicatorColor,
381
382
  borderRadius: radius.full,
382
383
  height: metrics.control * selectionControlRecipe.radioDotRatio,
383
384
  width: metrics.control * selectionControlRecipe.radioDotRatio,
384
- } })) : null) : checked === "mixed" ? (_jsx(Text, { accessible: false, align: "center", style: { color: indicatorColor }, variant: "label", children: "\u2212" })) : checked ? (_jsx(Text, { accessible: false, align: "center", style: { color: indicatorColor }, variant: "label", children: "\u2713" })) : null;
385
+ } })) : null) : checked ? (_jsx(NativeText, { accessible: false, allowFontScaling: false, style: { ...typography.label, color: indicatorColor, textAlign: "center" }, children: checked === "mixed" ? "−" : "✓" })) : null;
385
386
  return (_jsxs(Pressable, { accessibilityHint: resolvedHint, accessibilityLabel: label, accessibilityRole: kind,
386
387
  // See mixedCheckboxState: a checkbox leaving "mixed" kept the suffix on Android.
387
388
  accessibilityState: kind === "checkbox" ? mixedCheckboxState(checked, { disabled: disabled || readOnly }) : { checked, disabled: disabled || readOnly }, ...webOnly(webChoiceProps({
@@ -467,12 +468,6 @@ export function Radio({ label, checked, defaultChecked = false, onCheckedChange,
467
468
  });
468
469
  return (_jsx(ChoiceRow, { ...visual, accessibilityHint: accessibilityHint, checked: selected, description: description, disabled: disabled, indicator: visual.indicator ?? "default", invalid: invalid, invalidLabel: invalidLabel, kind: "radio", label: label, leading: leading, onActivate: () => setSelected(true), readOnly: readOnly, readOnlyLabel: readOnlyLabel, renderIndicator: renderIndicator, renderLeading: renderLeading, required: required, requiredLabel: requiredLabel }));
469
470
  }
470
- function resolveAliasedItems(component, items, options) {
471
- if ((items === undefined) === (options === undefined)) {
472
- throw new TypeError(`${component} requires exactly one of items or options`);
473
- }
474
- return items ?? options;
475
- }
476
471
  function ChoiceGroupFrame({ label, accessibilityLabel, required, requiredLabel, readOnly, readOnlyLabel, disabled, description, error, role, orientation, presentation, style, children, }) {
477
472
  const theme = useHjmNativeTheme();
478
473
  const id = useId().replaceAll(":", "");
@@ -493,8 +488,12 @@ function ChoiceGroupFrame({ label, accessibilityLabel, required, requiredLabel,
493
488
  gap,
494
489
  }, children: children }), error ? (_jsx(Text, { accessibilityLiveRegion: "assertive", accessibilityRole: "alert", tone: "danger", variant: selectionGroupRecipe.error.textVariant, children: error })) : description ? (_jsx(Text, { tone: "muted", variant: selectionGroupRecipe.description.textVariant, children: description })) : null] }));
495
490
  }
496
- export function RadioGroup({ label, accessibilityLabel, items, options, value, defaultValue, onValueChange, required = false, disabled = false, readOnly = false, invalid = false, description, error, requiredLabel, readOnlyLabel, invalidLabel, orientation = selectionGroupBehaviorDefaults.orientation, presentation = selectionGroupRecipe.defaults.presentation, size = selectionControlRecipe.defaults.size, indicator = "default", renderLeading, renderIndicator, style, ...slotStyles }) {
497
- const resolvedItems = resolveAliasedItems("RadioGroup", items, options);
491
+ export function RadioGroup(props) {
492
+ const { label, accessibilityLabel, items, value, defaultValue, onValueChange, required = false, disabled = false, readOnly = false, invalid = false, description, error, requiredLabel, readOnlyLabel, invalidLabel, orientation = selectionGroupBehaviorDefaults.orientation, presentation = selectionGroupRecipe.defaults.presentation, size = selectionControlRecipe.defaults.size, indicator = "default", renderLeading, renderIndicator, style, ...slotStyles } = props;
493
+ // Removed aliases must not silently change the selected collection in JavaScript callers.
494
+ if ("options" in props || !Array.isArray(items))
495
+ throw new TypeError("RadioGroup requires items; options was removed");
496
+ const resolvedItems = items;
498
497
  const selectionItems = resolvedItems.map((item) => ({
499
498
  id: item.value,
500
499
  label: item.label,
@@ -550,19 +549,11 @@ export function CheckboxGroup({ label, accessibilityLabel, items, value, default
550
549
  return (_createElement(ChoiceRow, { ...slotStyles, key: item.id, checked: optionSelected, description: item.description, disabled: optionDisabled, indicator: indicator, invalid: hasError, invalidLabel: invalidLabel ?? error, kind: "checkbox", label: item.label, onActivate: () => setSelected(toggleCheckboxSelection(items, selected, item.id)), presentation: presentation, readOnly: readOnly, readOnlyLabel: readOnlyLabel, renderIndicator: renderIndicator ? (props) => renderIndicator(item, props) : undefined, renderLeading: renderLeading ? (props) => renderLeading(item, props) : undefined, required: required, requiredLabel: requiredLabel, size: size }));
551
550
  }) }));
552
551
  }
553
- export function Switch({ label, labelVisibility = "visible", presentation = switchRecipe.presentationDefaults.native, testID, description, size = switchRecipe.defaults.size, checked, defaultChecked, onCheckedChange, value, defaultValue, onValueChange, disabled = false, accessibilityLabel, accessibilityHint, layoutStyle, style, ...props }) {
554
- const hasCanonicalState = checked !== undefined
555
- || defaultChecked !== undefined
556
- || onCheckedChange !== undefined;
557
- const hasLegacyState = value !== undefined
558
- || defaultValue !== undefined
559
- || onValueChange !== undefined;
560
- if (hasCanonicalState && hasLegacyState) {
561
- throw new TypeError("Switch cannot mix checked/defaultChecked/onCheckedChange with value/defaultValue/onValueChange");
552
+ export function Switch({ label, labelVisibility = "visible", presentation = switchRecipe.presentationDefaults.native, testID, description, size = switchRecipe.defaults.size, checked, defaultChecked, onCheckedChange, disabled = false, accessibilityLabel, accessibilityHint, layoutStyle, style, ...props }) {
553
+ // Reject old JavaScript callers rather than silently dropping their controlled state.
554
+ if (["value", "defaultValue", "onValueChange"].some(key => key in props)) {
555
+ throw new TypeError("Switch no longer accepts value/defaultValue/onValueChange; use checked/defaultChecked/onCheckedChange");
562
556
  }
563
- const resolvedChecked = checked ?? value;
564
- const resolvedDefaultChecked = defaultChecked ?? defaultValue ?? false;
565
- const resolvedOnCheckedChange = onCheckedChange ?? onValueChange;
566
557
  const { colors, environment, ...nativeTheme } = useHjmNativeTheme();
567
558
  const dimensions = switchRecipe.sizes[size];
568
559
  const stacked = presentation === "row" && labelVisibility === "visible"
@@ -577,11 +568,11 @@ export function Switch({ label, labelVisibility = "visible", presentation = swit
577
568
  const trackOn = resolveColorReference(disabled ? switchColors.trackOnDisabled : switchColors.trackOn, palette);
578
569
  const thumb = resolveColorReference(disabled ? switchColors.thumbDisabled : switchColors.thumbOff, palette);
579
570
  const [enabled, setEnabled] = useControllableState({
580
- ...(resolvedChecked === undefined ? {} : { value: resolvedChecked }),
581
- defaultValue: resolvedDefaultChecked,
582
- ...(resolvedOnCheckedChange === undefined
571
+ ...(checked === undefined ? {} : { value: checked }),
572
+ defaultValue: (defaultChecked ?? false),
573
+ ...(onCheckedChange === undefined
583
574
  ? {}
584
- : { onChange: resolvedOnCheckedChange }),
575
+ : { onChange: onCheckedChange }),
585
576
  });
586
577
  return (_jsxs(Pressable, { testID: testID, accessibilityHint: accessibilityHint ?? description, accessibilityLabel: accessibilityLabel ?? label, accessibilityRole: "switch", accessibilityState: { checked: enabled, disabled }, disabled: disabled, onPress: () => setEnabled(!enabled), style: ({ pressed }) => [
587
578
  minimumTargetStyle,
@@ -618,8 +609,12 @@ export function Switch({ label, labelVisibility = "visible", presentation = swit
618
609
  ? { alignSelf: stacked ? "flex-start" : "center" }
619
610
  : { height: dimensions.height, width: dimensions.width }, thumbColor: thumb, trackColor: { false: trackOff, true: trackOn }, value: enabled })] }));
620
611
  }
621
- export function SegmentedControl({ label, items, options, value, defaultValue, onValueChange, size = segmentedControlRecipe.defaults.size, disabled = false, style, }) {
622
- const resolvedItems = resolveAliasedItems("SegmentedControl", items, options);
612
+ export function SegmentedControl(props) {
613
+ const { label, items, value, defaultValue, onValueChange, size = segmentedControlRecipe.defaults.size, disabled = false, style, } = props;
614
+ // Removed aliases must not silently change the selected collection in JavaScript callers.
615
+ if ("options" in props || !Array.isArray(items))
616
+ throw new TypeError("SegmentedControl requires items; options was removed");
617
+ const resolvedItems = items;
623
618
  const theme = useHjmNativeTheme();
624
619
  const { environment } = theme;
625
620
  const sizeContract = segmentedControlRecipe.sizes[size];
@@ -712,7 +707,7 @@ export function SegmentedControl({ label, items, options, value, defaultValue, o
712
707
  }) }));
713
708
  }
714
709
  /** Action/filter chip with role-specific, controlled selection semantics. */
715
- export function Chip({ label, size = chipRecipe.defaults.size, disabled = false, leading, trailing, accessibilityLabel, accessibilityHint, layoutStyle, style, leadingStyle, indicatorStyle, labelStyle, trailingStyle, renderSelectionIndicator, selectionMode = "action", selected, onPress, }) {
710
+ export function Chip({ label, size = chipRecipe.defaults.size, disabled = false, leading, trailing, accessibilityLabel, accessibilityHint, layoutStyle, leadingStyle, indicatorStyle, labelStyle, trailingStyle, renderSelectionIndicator, selectionMode = "action", selected, onPress, }) {
716
711
  const theme = useHjmNativeTheme();
717
712
  const selectable = selectionMode !== "action";
718
713
  const active = selectable && selected === true;
@@ -759,13 +754,14 @@ export function Chip({ label, size = chipRecipe.defaults.size, disabled = false,
759
754
  : 1,
760
755
  paddingHorizontal: metrics.paddingHorizontal,
761
756
  },
762
- style,
763
757
  layoutStyle,
764
758
  ], children: [leading ? _jsx(View, { accessible: false, style: leadingStyle, children: leading }) : null, active ? (_jsx(View, { accessible: false, style: indicatorStyle, children: renderSelectionIndicator ? (renderSelectionIndicator({
765
759
  selected: active,
766
760
  color: indicatorColor,
767
761
  size: glyph[chipRecipe.selectionIndicator.glyph],
768
- })) : (_jsx(Text, { style: { color: indicatorColor }, variant: "caption", children: "\u2713" })) })) : null, _jsx(Text, { align: "center", style: [
762
+ })) : (
763
+ // Like Checkbox, the selection mark fits a fixed glyph slot; the chip label still scales.
764
+ _jsx(NativeText, { accessible: false, allowFontScaling: false, style: { ...typography.caption, color: indicatorColor }, children: "\u2713" })) })) : null, _jsx(Text, { align: "center", style: [
769
765
  {
770
766
  color: contentColor,
771
767
  fontWeight: active