@starci/grammar 0.10.0 → 0.12.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 (191) hide show
  1. package/README.md +139 -8
  2. package/dist/.build-stamp.json +4 -4
  3. package/dist/common/components-avatar-group.css +65 -0
  4. package/dist/common/components-forms.css +86 -56
  5. package/dist/common/components-list-panel.css +13 -0
  6. package/dist/common/components-navigation.css +161 -32
  7. package/dist/common/components-overlays.css +44 -86
  8. package/dist/common/components-surface-controls.css +15 -0
  9. package/dist/common/registry.d.ts +22 -18
  10. package/dist/common/registry.d.ts.map +1 -1
  11. package/dist/common/registry.js +2 -2
  12. package/dist/common/registry.js.map +1 -1
  13. package/dist/common/renderers-forms.d.ts +14 -14
  14. package/dist/common/renderers-forms.d.ts.map +1 -1
  15. package/dist/common/renderers-forms.js.map +1 -1
  16. package/dist/common/renderers-navigation.d.ts +11 -5
  17. package/dist/common/renderers-navigation.d.ts.map +1 -1
  18. package/dist/common/renderers-navigation.js +8 -2
  19. package/dist/common/renderers-navigation.js.map +1 -1
  20. package/dist/common/renderers.d.ts +2 -1
  21. package/dist/common/renderers.d.ts.map +1 -1
  22. package/dist/common/renderers.js +1 -0
  23. package/dist/common/renderers.js.map +1 -1
  24. package/dist/common/rule-catalog.generated.d.ts +1 -1
  25. package/dist/common/rule-catalog.generated.d.ts.map +1 -1
  26. package/dist/common/rule-catalog.generated.js +3 -2
  27. package/dist/common/rule-catalog.generated.js.map +1 -1
  28. package/dist/common/styles.css +61 -2
  29. package/dist/core/OtpInput.d.ts +3 -0
  30. package/dist/core/OtpInput.d.ts.map +1 -1
  31. package/dist/core/OtpInput.js +4 -2
  32. package/dist/core/OtpInput.js.map +1 -1
  33. package/dist/core/branch/AlertDialog/index.d.ts.map +1 -1
  34. package/dist/core/branch/AlertDialog/index.js +25 -20
  35. package/dist/core/branch/AlertDialog/index.js.map +1 -1
  36. package/dist/core/branch/ComboBox/index.d.ts +2 -2
  37. package/dist/core/branch/ComboBox/index.d.ts.map +1 -1
  38. package/dist/core/branch/ComboBox/index.js +3 -1
  39. package/dist/core/branch/ComboBox/index.js.map +1 -1
  40. package/dist/core/branch/DatePicker/index.d.ts +2 -2
  41. package/dist/core/branch/DatePicker/index.d.ts.map +1 -1
  42. package/dist/core/branch/DatePicker/index.js +3 -1
  43. package/dist/core/branch/DatePicker/index.js.map +1 -1
  44. package/dist/core/branch/DateRangePicker/index.d.ts +2 -2
  45. package/dist/core/branch/DateRangePicker/index.d.ts.map +1 -1
  46. package/dist/core/branch/DateRangePicker/index.js +3 -1
  47. package/dist/core/branch/DateRangePicker/index.js.map +1 -1
  48. package/dist/core/branch/Dialog/index.d.ts.map +1 -1
  49. package/dist/core/branch/Dialog/index.js +6 -2
  50. package/dist/core/branch/Dialog/index.js.map +1 -1
  51. package/dist/core/branch/Drawer/index.d.ts.map +1 -1
  52. package/dist/core/branch/Drawer/index.js +6 -2
  53. package/dist/core/branch/Drawer/index.js.map +1 -1
  54. package/dist/core/branch/DropdownMenu/index.d.ts +16 -4
  55. package/dist/core/branch/DropdownMenu/index.d.ts.map +1 -1
  56. package/dist/core/branch/DropdownMenu/index.js +18 -8
  57. package/dist/core/branch/DropdownMenu/index.js.map +1 -1
  58. package/dist/core/branch/ListBox/index.d.ts +20 -5
  59. package/dist/core/branch/ListBox/index.d.ts.map +1 -1
  60. package/dist/core/branch/ListBox/index.js +19 -9
  61. package/dist/core/branch/ListBox/index.js.map +1 -1
  62. package/dist/core/branch/Popover/index.d.ts.map +1 -1
  63. package/dist/core/branch/Popover/index.js +2 -1
  64. package/dist/core/branch/Popover/index.js.map +1 -1
  65. package/dist/core/branch/Rail/index.d.ts.map +1 -1
  66. package/dist/core/branch/Rail/index.js +4 -2
  67. package/dist/core/branch/Rail/index.js.map +1 -1
  68. package/dist/core/branch/Select/index.d.ts +6 -3
  69. package/dist/core/branch/Select/index.d.ts.map +1 -1
  70. package/dist/core/branch/Select/index.js +14 -21
  71. package/dist/core/branch/Select/index.js.map +1 -1
  72. package/dist/core/branch/SurfaceAccordionCard/index.d.ts.map +1 -1
  73. package/dist/core/branch/SurfaceAccordionCard/index.js +3 -1
  74. package/dist/core/branch/SurfaceAccordionCard/index.js.map +1 -1
  75. package/dist/core/branch/SurfaceCard/index.d.ts.map +1 -1
  76. package/dist/core/branch/SurfaceCard/index.js +3 -1
  77. package/dist/core/branch/SurfaceCard/index.js.map +1 -1
  78. package/dist/core/branch/SurfaceListCard/index.d.ts.map +1 -1
  79. package/dist/core/branch/SurfaceListCard/index.js +3 -1
  80. package/dist/core/branch/SurfaceListCard/index.js.map +1 -1
  81. package/dist/core/composite/AvatarButton/index.d.ts +22 -0
  82. package/dist/core/composite/AvatarButton/index.d.ts.map +1 -0
  83. package/dist/core/composite/AvatarButton/index.js +11 -0
  84. package/dist/core/composite/AvatarButton/index.js.map +1 -0
  85. package/dist/core/composite/AvatarGroup/index.d.ts +11 -3
  86. package/dist/core/composite/AvatarGroup/index.d.ts.map +1 -1
  87. package/dist/core/composite/AvatarGroup/index.js +9 -5
  88. package/dist/core/composite/AvatarGroup/index.js.map +1 -1
  89. package/dist/core/composite/CheckboxGroup/index.d.ts +2 -2
  90. package/dist/core/composite/CheckboxGroup/index.d.ts.map +1 -1
  91. package/dist/core/composite/CheckboxGroup/index.js +5 -1
  92. package/dist/core/composite/CheckboxGroup/index.js.map +1 -1
  93. package/dist/core/composite/IdentityLockup/index.d.ts +20 -0
  94. package/dist/core/composite/IdentityLockup/index.d.ts.map +1 -0
  95. package/dist/core/composite/IdentityLockup/index.js +11 -0
  96. package/dist/core/composite/IdentityLockup/index.js.map +1 -0
  97. package/dist/core/composite/RadioGroup/index.d.ts +2 -2
  98. package/dist/core/composite/RadioGroup/index.d.ts.map +1 -1
  99. package/dist/core/composite/RadioGroup/index.js +5 -1
  100. package/dist/core/composite/RadioGroup/index.js.map +1 -1
  101. package/dist/core/composite/Timeline/index.js +1 -1
  102. package/dist/core/composite/Timeline/index.js.map +1 -1
  103. package/dist/core/composition/ChatWorkspace/index.d.ts.map +1 -1
  104. package/dist/core/composition/ChatWorkspace/index.js +2 -1
  105. package/dist/core/composition/ChatWorkspace/index.js.map +1 -1
  106. package/dist/core/composition/Sidebar/index.d.ts +1 -1
  107. package/dist/core/composition/Sidebar/index.d.ts.map +1 -1
  108. package/dist/core/composition/Sidebar/index.js +10 -4
  109. package/dist/core/composition/Sidebar/index.js.map +1 -1
  110. package/dist/core/composition/WorkspaceShell/classNames.d.ts +1 -0
  111. package/dist/core/composition/WorkspaceShell/classNames.d.ts.map +1 -1
  112. package/dist/core/composition/WorkspaceShell/classNames.js +1 -0
  113. package/dist/core/composition/WorkspaceShell/classNames.js.map +1 -1
  114. package/dist/core/composition/WorkspaceShell/index.d.ts +30 -0
  115. package/dist/core/composition/WorkspaceShell/index.d.ts.map +1 -1
  116. package/dist/core/composition/WorkspaceShell/index.js +9 -4
  117. package/dist/core/composition/WorkspaceShell/index.js.map +1 -1
  118. package/dist/core/dna.d.ts +5 -0
  119. package/dist/core/dna.d.ts.map +1 -1
  120. package/dist/core/dna.js +5 -0
  121. package/dist/core/dna.js.map +1 -1
  122. package/dist/core/overlayScope.d.ts +16 -0
  123. package/dist/core/overlayScope.d.ts.map +1 -1
  124. package/dist/core/overlayScope.js +12 -0
  125. package/dist/core/overlayScope.js.map +1 -1
  126. package/dist/core/primitive/Avatar/index.d.ts +17 -6
  127. package/dist/core/primitive/Avatar/index.d.ts.map +1 -1
  128. package/dist/core/primitive/Avatar/index.js +21 -4
  129. package/dist/core/primitive/Avatar/index.js.map +1 -1
  130. package/dist/core/primitive/Checkbox/index.d.ts +2 -2
  131. package/dist/core/primitive/Checkbox/index.d.ts.map +1 -1
  132. package/dist/core/primitive/Checkbox/index.js +5 -1
  133. package/dist/core/primitive/Checkbox/index.js.map +1 -1
  134. package/dist/core/primitive/DateField/index.d.ts +2 -2
  135. package/dist/core/primitive/DateField/index.d.ts.map +1 -1
  136. package/dist/core/primitive/DateField/index.js +5 -1
  137. package/dist/core/primitive/DateField/index.js.map +1 -1
  138. package/dist/core/primitive/Field/index.d.ts +5 -2
  139. package/dist/core/primitive/Field/index.d.ts.map +1 -1
  140. package/dist/core/primitive/Field/index.js +2 -2
  141. package/dist/core/primitive/Field/index.js.map +1 -1
  142. package/dist/core/primitive/Input/index.d.ts +2 -1
  143. package/dist/core/primitive/Input/index.d.ts.map +1 -1
  144. package/dist/core/primitive/Input/index.js +4 -2
  145. package/dist/core/primitive/Input/index.js.map +1 -1
  146. package/dist/core/primitive/Kbd/index.d.ts +2 -0
  147. package/dist/core/primitive/Kbd/index.d.ts.map +1 -1
  148. package/dist/core/primitive/Kbd/index.js +5 -3
  149. package/dist/core/primitive/Kbd/index.js.map +1 -1
  150. package/dist/core/primitive/NumberField/index.d.ts +2 -2
  151. package/dist/core/primitive/NumberField/index.d.ts.map +1 -1
  152. package/dist/core/primitive/NumberField/index.js +5 -1
  153. package/dist/core/primitive/NumberField/index.js.map +1 -1
  154. package/dist/core/primitive/PlainPressable/index.d.ts +21 -0
  155. package/dist/core/primitive/PlainPressable/index.d.ts.map +1 -0
  156. package/dist/core/primitive/PlainPressable/index.js +16 -0
  157. package/dist/core/primitive/PlainPressable/index.js.map +1 -0
  158. package/dist/core/primitive/PressableField/index.d.ts +4 -1
  159. package/dist/core/primitive/PressableField/index.d.ts.map +1 -1
  160. package/dist/core/primitive/PressableField/index.js +5 -1
  161. package/dist/core/primitive/PressableField/index.js.map +1 -1
  162. package/dist/core/primitive/RelativeTime/clock.d.ts +5 -0
  163. package/dist/core/primitive/RelativeTime/clock.d.ts.map +1 -0
  164. package/dist/core/primitive/RelativeTime/clock.js +28 -0
  165. package/dist/core/primitive/RelativeTime/clock.js.map +1 -0
  166. package/dist/core/primitive/RelativeTime/index.d.ts +18 -0
  167. package/dist/core/primitive/RelativeTime/index.d.ts.map +1 -0
  168. package/dist/core/primitive/RelativeTime/index.js +45 -0
  169. package/dist/core/primitive/RelativeTime/index.js.map +1 -0
  170. package/dist/core/primitive/SearchField/index.d.ts +2 -2
  171. package/dist/core/primitive/SearchField/index.d.ts.map +1 -1
  172. package/dist/core/primitive/SearchField/index.js +5 -1
  173. package/dist/core/primitive/SearchField/index.js.map +1 -1
  174. package/dist/core/primitive/Switch/index.d.ts +18 -2
  175. package/dist/core/primitive/Switch/index.d.ts.map +1 -1
  176. package/dist/core/primitive/Switch/index.js +2 -1
  177. package/dist/core/primitive/Switch/index.js.map +1 -1
  178. package/dist/core/primitive/Textarea/index.d.ts +2 -2
  179. package/dist/core/primitive/Textarea/index.d.ts.map +1 -1
  180. package/dist/core/primitive/Textarea/index.js +3 -1
  181. package/dist/core/primitive/Textarea/index.js.map +1 -1
  182. package/dist/core/primitive/TimeField/index.d.ts +2 -2
  183. package/dist/core/primitive/TimeField/index.d.ts.map +1 -1
  184. package/dist/core/primitive/TimeField/index.js +5 -1
  185. package/dist/core/primitive/TimeField/index.js.map +1 -1
  186. package/dist/core/surfaceContext.d.ts +11 -0
  187. package/dist/core/surfaceContext.d.ts.map +1 -0
  188. package/dist/core/surfaceContext.js +14 -0
  189. package/dist/core/surfaceContext.js.map +1 -0
  190. package/dist/offset-pop/components-overlays.css +1 -1
  191. package/package.json +8 -3
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useFieldVariant } from "../../surfaceContext.js";
3
4
  import { NumberField as HeroNumberField } from "@heroui/react";
4
5
  import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVariantAttributes, vendorFieldProps, } from "../Field/index.js";
5
6
  /*
@@ -11,5 +12,8 @@ import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVaria
11
12
  * A number with stepping. The vendor owns `role="spinbutton"`-equivalent semantics on the input,
12
13
  * locale parsing, arrow-key and wheel stepping, clamping to min/max and the localized stepper names.
13
14
  */
14
- export const NumberField = ({ id, placeholder, value, defaultValue, onValueChange, minValue, maxValue, step, formatOptions, hideSteppers = false, variant = "primary", isSkeleton = false, ...field }) => isSkeleton ? (_jsx(FieldSkeleton, { component: "NumberField", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, variant: variant, kind: "input", className: "starci-core-number-field" })) : (_jsxs(HeroNumberField, { "data-tier": "atom", "data-component": "NumberField", "data-contract": "A11Y-1 FEEDBACK-1 STATE-1", className: "starci-core-field starci-core-number-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(minValue === undefined ? {} : { minValue }), ...(maxValue === undefined ? {} : { maxValue }), ...(step === undefined ? {} : { step }), ...(formatOptions === undefined ? {} : { formatOptions }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroNumberField.Group, { className: "starci-core-number-field-group", "data-grammar-field-control": "true", children: [hideSteppers ? null : _jsx(HeroNumberField.DecrementButton, { className: "starci-core-number-field-step" }), _jsx(HeroNumberField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-number-field-input" }), hideSteppers ? null : _jsx(HeroNumberField.IncrementButton, { className: "starci-core-number-field-step" })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
15
+ export const NumberField = ({ id, placeholder, value, defaultValue, onValueChange, minValue, maxValue, step, formatOptions, hideSteppers = false, variant: requestedVariant, isSkeleton = false, ...field }) => {
16
+ const variant = useFieldVariant(requestedVariant);
17
+ return isSkeleton ? (_jsx(FieldSkeleton, { component: "NumberField", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, variant: variant, kind: "input", className: "starci-core-number-field" })) : (_jsxs(HeroNumberField, { "data-tier": "atom", "data-component": "NumberField", "data-contract": "A11Y-1 FEEDBACK-1 STATE-1", className: "starci-core-field starci-core-number-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(minValue === undefined ? {} : { minValue }), ...(maxValue === undefined ? {} : { maxValue }), ...(step === undefined ? {} : { step }), ...(formatOptions === undefined ? {} : { formatOptions }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroNumberField.Group, { className: "starci-core-number-field-group", "data-grammar-field-control": "true", children: [hideSteppers ? null : _jsx(HeroNumberField.DecrementButton, { className: "starci-core-number-field-step" }), _jsx(HeroNumberField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-number-field-input" }), hideSteppers ? null : _jsx(HeroNumberField.IncrementButton, { className: "starci-core-number-field-step" })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
18
+ };
15
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/NumberField/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/NumberField/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { ReactNode } from "react";
2
+ export type PlainPressableShape = "rounded" | "circle";
3
+ export type PlainPressableProps = {
4
+ /** The visible content: a mark, an avatar, a lockup. It is the whole pressable; nothing is drawn around it. */
5
+ readonly children: ReactNode;
6
+ /** The accessible name. Needed when the content carries no text of its own (an avatar, a logo). */
7
+ readonly "aria-label"?: string;
8
+ /** Runs on a press: pointer, Enter or Space. */
9
+ readonly onPress?: () => void;
10
+ readonly isDisabled?: boolean;
11
+ /** The shape of the keyboard focus ring: `circle` for a round mark, `rounded` (default) for a lockup. */
12
+ readonly shape?: PlainPressableShape;
13
+ readonly className?: string;
14
+ };
15
+ /**
16
+ * A pressable that does not look like a button: the content itself is the control. Use it for a brand or
17
+ * workspace lockup, or an avatar, that opens a menu or goes somewhere. Name it with `aria-label` when the content has no text.
18
+ * Contract: A11Y-2 (a named control), FOCUS-1 (a visible ring), MOTION-2 (reduced motion removes the zoom, never the control).
19
+ */
20
+ export declare const PlainPressable: ({ children, "aria-label": ariaLabel, onPress, isDisabled, shape, className }: PlainPressableProps) => import("react").JSX.Element;
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/PlainPressable/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,QAAQ,CAAA;AAEtD,MAAM,MAAM,mBAAmB,GAAG;IAC9B,+GAA+G;IAC/G,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;IAC5B,mGAAmG;IACnG,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,gDAAgD;IAChD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,yGAAyG;IACzG,QAAQ,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAA;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC9B,CAAA;AAQD;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,8EAAkG,mBAAmB,gCAcnJ,CAAA"}
@@ -0,0 +1,16 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { Button as HeroButton } from "@heroui/react";
4
+ import { navigationClassName } from "../../navigationClassNames.js";
5
+ /*
6
+ * The look is SHIPPED by `[data-component="PlainPressable"]` in `src/common/styles.css`: no padding, background, border or button shape in
7
+ * any state, no hover effect, a zoom-out on press only (removed under reduced motion), and a focus ring. It is a vendor
8
+ * React Aria button, so it also works as the trigger of a DropdownMenu or Popover (aria-haspopup / aria-expanded come with it).
9
+ */
10
+ /**
11
+ * A pressable that does not look like a button: the content itself is the control. Use it for a brand or
12
+ * workspace lockup, or an avatar, that opens a menu or goes somewhere. Name it with `aria-label` when the content has no text.
13
+ * Contract: A11Y-2 (a named control), FOCUS-1 (a visible ring), MOTION-2 (reduced motion removes the zoom, never the control).
14
+ */
15
+ export const PlainPressable = ({ children, "aria-label": ariaLabel, onPress, isDisabled = false, shape = "rounded", className }) => (_jsx(HeroButton, { "data-tier": "atom", "data-component": "PlainPressable", "data-contract": "A11Y-2 FOCUS-1 MOTION-2", "data-grammar-pressable-shape": shape, className: navigationClassName("starci-core-plain-pressable", className), type: "button", isDisabled: isDisabled, ...(ariaLabel === undefined ? {} : { "aria-label": ariaLabel }), ...(onPress === undefined ? {} : { onPress }), children: children }));
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/PlainPressable/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,eAAe,CAAA;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAiBnE;;;;GAIG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,GAAG,KAAK,EAAE,KAAK,GAAG,SAAS,EAAE,SAAS,EAAuB,EAAE,EAAE,CAAC,CACrJ,KAAC,UAAU,iBACG,MAAM,oBACD,gBAAgB,mBACjB,yBAAyB,kCACT,KAAK,EACnC,SAAS,EAAE,mBAAmB,CAAC,6BAA6B,EAAE,SAAS,CAAC,EACxE,IAAI,EAAC,QAAQ,EACb,UAAU,EAAE,UAAU,KAClB,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,KAC5D,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,YAE7C,QAAQ,GACA,CAChB,CAAA"}
@@ -1,9 +1,12 @@
1
+ import type { FieldVariant } from "../Field/index.js";
1
2
  import { type IconSource } from "../Icon/index.js";
2
3
  export type PressableFieldProps = {
3
4
  /** Accessible name of the control; the placeholder is decoration, not a name. */
4
5
  readonly label: string;
5
6
  /** Placeholder-style copy that says what pressing the field will let the reader do. */
6
7
  readonly placeholder: string;
8
+ /** Defaults to secondary inside a Grammar surface and primary outside (ANATOMY-2). */
9
+ readonly variant?: FieldVariant;
7
10
  readonly source?: IconSource;
8
11
  /** Keyboard hint shown at the end of the field, rendered as a `kbd`. */
9
12
  readonly shortcut?: string;
@@ -18,5 +21,5 @@ export type PressableFieldProps = {
18
21
  * matches them without any application restating field geometry. It never accepts text - the whole
19
22
  * field is one press target - so it carries its own accessible name and no form value.
20
23
  */
21
- export declare const PressableField: ({ label, placeholder, source, shortcut, isDisabled, onPress }: PressableFieldProps) => import("react").JSX.Element;
24
+ export declare const PressableField: ({ label, placeholder, source, shortcut, variant: requestedVariant, isDisabled, onPress }: PressableFieldProps) => import("react").JSX.Element;
22
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/PressableField/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAQxD,MAAM,MAAM,mBAAmB,GAAG;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,uFAAuF;IACvF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAA;IAC5B,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAChC,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GAAI,+DAAuE,mBAAmB,gCAkBxH,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/PressableField/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAQxD,MAAM,MAAM,mBAAmB,GAAG;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,uFAAuF;IACvF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,sFAAsF;IACtF,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAA;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAA;IAC5B,wEAAwE;IACxE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CAChC,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GAAI,0FAAkG,mBAAmB,gCAsBnJ,CAAA"}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useFieldVariant } from "../../surfaceContext.js";
3
4
  import { Icon } from "../Icon/index.js";
4
5
  import { pressableFieldClassName, pressableFieldContentClassName, pressableFieldPlaceholderClassName, pressableFieldShortcutClassName, } from "./classNames.js";
5
6
  /**
@@ -10,5 +11,8 @@ import { pressableFieldClassName, pressableFieldContentClassName, pressableField
10
11
  * matches them without any application restating field geometry. It never accepts text - the whole
11
12
  * field is one press target - so it carries its own accessible name and no form value.
12
13
  */
13
- export const PressableField = ({ label, placeholder, source, shortcut, isDisabled = false, onPress }) => (_jsxs("button", { type: "button", "aria-label": label, disabled: isDisabled, "data-tier": "atom", "data-component": "PressableField", "data-disabled": isDisabled ? "true" : "false", "data-contract": "MEASURE-2 PADDING-3 GAP-2 SURFACE-4 TONE-1", className: pressableFieldClassName, onClick: () => onPress?.(), children: [_jsxs("span", { className: pressableFieldContentClassName, "data-contract": "GAP-2", children: [source === undefined ? null : _jsx(Icon, { source: source, usage: "leading" }), _jsx("span", { className: pressableFieldPlaceholderClassName, "data-contract": "FLOW-4 FONT-2 TONE-2", children: placeholder })] }), shortcut === undefined ? null : _jsx("kbd", { className: pressableFieldShortcutClassName, "data-contract": "FONT-1 PADDING-1 TONE-2", children: shortcut })] }));
14
+ export const PressableField = ({ label, placeholder, source, shortcut, variant: requestedVariant, isDisabled = false, onPress }) => {
15
+ const variant = useFieldVariant(requestedVariant);
16
+ return (_jsxs("button", { type: "button", "aria-label": label, disabled: isDisabled, "data-tier": "atom", "data-component": "PressableField", "data-grammar-variant": variant, "data-disabled": isDisabled ? "true" : "false", "data-contract": "MEASURE-2 PADDING-3 GAP-2 SURFACE-4 TONE-1", className: pressableFieldClassName, onClick: () => onPress?.(), children: [_jsxs("span", { className: pressableFieldContentClassName, "data-contract": "GAP-2", children: [source === undefined ? null : _jsx(Icon, { source: source, usage: "leading" }), _jsx("span", { className: pressableFieldPlaceholderClassName, "data-contract": "FLOW-4 FONT-2 TONE-2", children: placeholder })] }), shortcut === undefined ? null : _jsx("kbd", { className: pressableFieldShortcutClassName, "data-contract": "FONT-1 PADDING-1 TONE-2", children: shortcut })] }));
17
+ };
14
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/PressableField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,IAAI,EAAmB,MAAM,kBAAkB,CAAA;AACxD,OAAO,EACH,uBAAuB,EACvB,8BAA8B,EAC9B,kCAAkC,EAClC,+BAA+B,GAClC,MAAM,iBAAiB,CAAA;AAcxB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,KAAK,EAAE,OAAO,EAAuB,EAAE,EAAE,CAAC,CAC1H,kBACI,IAAI,EAAC,QAAQ,gBACD,KAAK,EACjB,QAAQ,EAAE,UAAU,eACV,MAAM,oBACD,gBAAgB,mBAChB,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,mBAC9B,4CAA4C,EAC1D,SAAS,EAAE,uBAAuB,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,aAE1B,gBAAM,SAAS,EAAE,8BAA8B,mBAAgB,OAAO,aACjE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAC,SAAS,GAAG,EACvE,eAAM,SAAS,EAAE,kCAAkC,mBAAgB,sBAAsB,YAAE,WAAW,GAAQ,IAC3G,EACN,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAK,SAAS,EAAE,+BAA+B,mBAAgB,yBAAyB,YAAE,QAAQ,GAAO,IACrI,CACZ,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/PressableField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAEzD,OAAO,EAAE,IAAI,EAAmB,MAAM,kBAAkB,CAAA;AACxD,OAAO,EACH,uBAAuB,EACvB,8BAA8B,EAC9B,kCAAkC,EAClC,+BAA+B,GAClC,MAAM,iBAAiB,CAAA;AAgBxB;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,GAAG,KAAK,EAAE,OAAO,EAAuB,EAAE,EAAE;IACpJ,MAAM,OAAO,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAA;IACjD,OAAO,CACH,kBACI,IAAI,EAAC,QAAQ,gBACD,KAAK,EACjB,QAAQ,EAAE,UAAU,eACV,MAAM,oBACD,gBAAgB,0BACT,OAAO,mBACd,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,mBAC9B,4CAA4C,EAC1D,SAAS,EAAE,uBAAuB,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,aAE1B,gBAAM,SAAS,EAAE,8BAA8B,mBAAgB,OAAO,aACjE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAC,SAAS,GAAG,EACvE,eAAM,SAAS,EAAE,kCAAkC,mBAAgB,sBAAsB,YAAE,WAAW,GAAQ,IAC3G,EACN,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAK,SAAS,EAAE,+BAA+B,mBAAgB,yBAAyB,YAAE,QAAQ,GAAO,IACrI,CACZ,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,5 @@
1
+ export declare const subscribeClock: (listener: () => void) => () => void;
2
+ export declare const getClockSnapshot: () => number | null;
3
+ /** Server rendering and the first hydration render always use the same deterministic fallback. */
4
+ export declare const getServerClockSnapshot: () => null;
5
+ //# sourceMappingURL=clock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/RelativeTime/clock.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,GAAI,UAAU,MAAM,IAAI,eAclD,CAAA;AAED,eAAO,MAAM,gBAAgB,qBAAiB,CAAA;AAE9C,kGAAkG;AAClG,eAAO,MAAM,sBAAsB,YAAa,CAAA"}
@@ -0,0 +1,28 @@
1
+ /** One lazily subscribed clock for every RelativeTime instance in this module graph. */
2
+ const listeners = new Set();
3
+ let snapshot = null;
4
+ let ticker;
5
+ const tick = () => {
6
+ snapshot = Date.now();
7
+ for (const listener of listeners)
8
+ listener();
9
+ };
10
+ export const subscribeClock = (listener) => {
11
+ listeners.add(listener);
12
+ if (listeners.size === 1) {
13
+ snapshot = Date.now();
14
+ ticker = setInterval(tick, 1000);
15
+ }
16
+ return () => {
17
+ listeners.delete(listener);
18
+ if (listeners.size === 0) {
19
+ clearInterval(ticker);
20
+ ticker = undefined;
21
+ snapshot = null;
22
+ }
23
+ };
24
+ };
25
+ export const getClockSnapshot = () => snapshot;
26
+ /** Server rendering and the first hydration render always use the same deterministic fallback. */
27
+ export const getServerClockSnapshot = () => null;
28
+ //# sourceMappingURL=clock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clock.js","sourceRoot":"","sources":["../../../../src/core/primitive/RelativeTime/clock.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;AACvC,IAAI,QAAQ,GAAkB,IAAI,CAAA;AAClC,IAAI,MAAkD,CAAA;AAEtD,MAAM,IAAI,GAAG,GAAG,EAAE;IACd,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IACrB,KAAK,MAAM,QAAQ,IAAI,SAAS;QAAE,QAAQ,EAAE,CAAA;AAChD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAoB,EAAE,EAAE;IACnD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACvB,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACvB,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACrB,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACpC,CAAC;IACD,OAAO,GAAG,EAAE;QACR,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC1B,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACvB,aAAa,CAAC,MAAM,CAAC,CAAA;YACrB,MAAM,GAAG,SAAS,CAAA;YAClB,QAAQ,GAAG,IAAI,CAAA;QACnB,CAAC;IACL,CAAC,CAAA;AACL,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAA;AAE9C,kGAAkG;AAClG,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA"}
@@ -0,0 +1,18 @@
1
+ import { type TextTone } from "../Text/index.js";
2
+ export type RelativeTimeMode = "relative" | "countdown";
3
+ export type RelativeTimeProps = {
4
+ /** An ISO timestamp with an explicit Z or numeric timezone offset, never a local wall time. */
5
+ readonly dateTime: string;
6
+ /** The application's active BCP 47 locale; never inferred from the server or browser. */
7
+ readonly locale: string;
8
+ /** Countdown shows future relative time and settles at the localized equivalent of "now". */
9
+ readonly mode?: RelativeTimeMode;
10
+ /** Stable server/first-hydration copy. Defaults to the canonical ISO timestamp. */
11
+ readonly fallback?: string;
12
+ readonly id?: string;
13
+ readonly size?: "xs" | "sm" | "md";
14
+ readonly tone?: TextTone;
15
+ };
16
+ /** Accessible live time; all leaves subscribe to the same clock and own no interval or wall-clock read. */
17
+ export declare const RelativeTime: ({ dateTime, locale, mode, fallback, id, size, tone }: RelativeTimeProps) => import("react").JSX.Element;
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/RelativeTime/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAQ,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAGtD,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,WAAW,CAAA;AAEvD,MAAM,MAAM,iBAAiB,GAAG;IAC5B,+FAA+F;IAC/F,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,yFAAyF;IACzF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,6FAA6F;IAC7F,QAAQ,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAA;IAChC,mFAAmF;IACnF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAA;CAC3B,CAAA;AAmCD,2GAA2G;AAC3G,eAAO,MAAM,YAAY,GAAI,sDAAoF,iBAAiB,gCAWjI,CAAA"}
@@ -0,0 +1,45 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { useMemo, useSyncExternalStore } from "react";
4
+ import { Text } from "../Text/index.js";
5
+ import { getClockSnapshot, getServerClockSnapshot, subscribeClock } from "./clock.js";
6
+ const UNITS = [
7
+ ["year", 365 * 24 * 60 * 60 * 1000],
8
+ ["month", 30 * 24 * 60 * 60 * 1000],
9
+ ["week", 7 * 24 * 60 * 60 * 1000],
10
+ ["day", 24 * 60 * 60 * 1000],
11
+ ["hour", 60 * 60 * 1000],
12
+ ["minute", 60 * 1000],
13
+ ["second", 1000],
14
+ ];
15
+ /** Refuse timezone-dependent parsing before producing the machine-readable absolute instant. */
16
+ const parseInstant = (dateTime) => {
17
+ const parts = /^(\d{4})-(\d{2})-(\d{2})T\d{2}:\d{2}(?::\d{2}(?:\.\d{1,3})?)?(?:Z|[+-]\d{2}:\d{2})$/.exec(dateTime);
18
+ if (parts === null) {
19
+ throw new TypeError("RelativeTime dateTime must be a timezone-qualified ISO timestamp");
20
+ }
21
+ const year = Number(parts[1]);
22
+ const month = Number(parts[2]);
23
+ const day = Number(parts[3]);
24
+ const leapYear = year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
25
+ const daysInMonth = [31, leapYear ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month - 1] ?? 0;
26
+ const value = Date.parse(dateTime);
27
+ if (day < 1 || day > daysInMonth || !Number.isFinite(value))
28
+ throw new TypeError("RelativeTime dateTime must be a valid instant");
29
+ return { value, iso: new Date(value).toISOString() };
30
+ };
31
+ const relativeLabel = (target, now, mode, formatter) => {
32
+ const delta = mode === "countdown" ? Math.max(0, target - now) : target - now;
33
+ const [unit, duration] = UNITS.find(([, length]) => Math.abs(delta) >= length) ?? ["second", 1000];
34
+ const value = mode === "countdown" ? Math.ceil(delta / duration) : Math.round(delta / duration);
35
+ return formatter.format(value, unit);
36
+ };
37
+ /** Accessible live time; all leaves subscribe to the same clock and own no interval or wall-clock read. */
38
+ export const RelativeTime = ({ dateTime, locale, mode = "relative", fallback, id, size = "sm", tone = "muted" }) => {
39
+ const instant = useMemo(() => parseInstant(dateTime), [dateTime]);
40
+ const formatter = useMemo(() => new Intl.RelativeTimeFormat(locale, { numeric: "auto" }), [locale]);
41
+ const now = useSyncExternalStore(subscribeClock, getClockSnapshot, getServerClockSnapshot);
42
+ const label = now === null ? fallback ?? instant.iso : relativeLabel(instant.value, now, mode, formatter);
43
+ return (_jsx("time", { id: id, dateTime: instant.iso, title: instant.iso, "data-tier": "atom", "data-component": "RelativeTime", "data-mode": mode, children: _jsx(Text, { as: "span", size: size, tone: tone, children: label }) }));
44
+ };
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/RelativeTime/index.tsx"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export type SearchFieldProps = FieldControlProps & {
14
14
  readonly isPending?: boolean;
15
15
  /** Accessible name of the clear button. Pass the app's localized "clear" copy. */
16
16
  readonly clearLabel?: string;
17
- /** Layer variant: `secondary` when the control sits on a surface (ANATOMY-2 case-1). */
17
+ /** Defaults to `secondary` inside a Grammar surface and `primary` outside (ANATOMY-2 case-1). */
18
18
  readonly variant?: "primary" | "secondary";
19
19
  /**
20
20
  * Initial unresolved content (knowledge STATE-8): the label stays real text and the search box becomes Skeleton geometry of the same size,
@@ -32,5 +32,5 @@ export type SearchFieldProps = FieldControlProps & {
32
32
  * A text field whose job is a query: `type="search"`, a clear button, Escape to clear, Enter to
33
33
  * submit - all the vendor's. The leading glyph is decoration; the label is the name.
34
34
  */
35
- export declare const SearchField: ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending, clearLabel, variant, isSkeleton, onBlur, onPaste, autoFocus, ...field }: SearchFieldProps) => import("react").JSX.Element;
35
+ export declare const SearchField: ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending, clearLabel, variant: requestedVariant, isSkeleton, onBlur, onPaste, autoFocus, ...field }: SearchFieldProps) => import("react").JSX.Element;
36
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAOH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IAC/C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,oDAAoD;IACpD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,wFAAwF;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,4BAA4B;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IACpE,wCAAwC;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,8JAgBzB,gBAAgB,gCAuClB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,EAOH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IAC/C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,0BAA0B;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC3C,oDAAoD;IACpD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IAC7B,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,kFAAkF;IAClF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,iGAAiG;IACjG,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,4BAA4B;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,2CAA2C;IAC3C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IACpE,wCAAwC;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,gLAgBzB,gBAAgB,gCA0ClB,CAAA"}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useFieldVariant } from "../../surfaceContext.js";
3
4
  import { SearchField as HeroSearchField, Spinner as HeroSpinner } from "@heroui/react";
4
5
  import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVariantAttributes, vendorFieldProps, } from "../Field/index.js";
5
6
  /*
@@ -11,5 +12,8 @@ import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVaria
11
12
  * A text field whose job is a query: `type="search"`, a clear button, Escape to clear, Enter to
12
13
  * submit - all the vendor's. The leading glyph is decoration; the label is the name.
13
14
  */
14
- export const SearchField = ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending = false, clearLabel, variant = "primary", isSkeleton = false, onBlur, onPaste, autoFocus = false, ...field }) => isSkeleton ? (_jsx(FieldSkeleton, { component: "SearchField", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, variant: variant, kind: "input", className: "starci-core-search-field" })) : (_jsxs(HeroSearchField, { "data-tier": "atom", "data-component": "SearchField", "data-contract": "A11Y-1 FEEDBACK-1 STATE-1", className: "starci-core-field starci-core-search-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps({ ...field, isPending }), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(onSubmit === undefined ? {} : { onSubmit }), ...(onClear === undefined ? {} : { onClear }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroSearchField.Group, { className: "starci-core-search-field-group", "data-grammar-field-control": "true", children: [_jsx(HeroSearchField.SearchIcon, { "aria-hidden": "true" }), _jsx(HeroSearchField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-search-field-input", ...(autoFocus ? { autoFocus: true } : {}), ...(onBlur === undefined ? {} : { onBlur: () => onBlur() }), ...(onPaste === undefined ? {} : { onPaste }), ...(isPending ? { "aria-busy": true } : {}) }), isPending ? _jsx(HeroSpinner, { size: "sm", color: "current", "aria-hidden": "true", className: "starci-core-field-spinner" }) : null, _jsx(HeroSearchField.ClearButton, { className: "starci-core-search-field-clear", ...(clearLabel === undefined ? {} : { "aria-label": clearLabel }) })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
15
+ export const SearchField = ({ id, placeholder, value, defaultValue, onValueChange, onSubmit, onClear, isPending = false, clearLabel, variant: requestedVariant, isSkeleton = false, onBlur, onPaste, autoFocus = false, ...field }) => {
16
+ const variant = useFieldVariant(requestedVariant);
17
+ return isSkeleton ? (_jsx(FieldSkeleton, { component: "SearchField", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, variant: variant, kind: "input", className: "starci-core-search-field" })) : (_jsxs(HeroSearchField, { "data-tier": "atom", "data-component": "SearchField", "data-contract": "A11Y-1 FEEDBACK-1 STATE-1", className: "starci-core-field starci-core-search-field", fullWidth: true, variant: variant, ...fieldVariantAttributes(variant), ...vendorFieldProps({ ...field, isPending }), isReadOnly: field.isReadOnly === true, ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(onSubmit === undefined ? {} : { onSubmit }), ...(onClear === undefined ? {} : { onClear }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsxs(HeroSearchField.Group, { className: "starci-core-search-field-group", "data-grammar-field-control": "true", children: [_jsx(HeroSearchField.SearchIcon, { "aria-hidden": "true" }), _jsx(HeroSearchField.Input, { ...(id === undefined ? {} : { id }), ...(placeholder === undefined ? {} : { placeholder }), className: "starci-core-search-field-input", ...(autoFocus ? { autoFocus: true } : {}), ...(onBlur === undefined ? {} : { onBlur: () => onBlur() }), ...(onPaste === undefined ? {} : { onPaste }), ...(isPending ? { "aria-busy": true } : {}) }), isPending ? _jsx(HeroSpinner, { size: "sm", color: "current", "aria-hidden": "true", className: "starci-core-field-spinner" }) : null, _jsx(HeroSearchField.ClearButton, { className: "starci-core-search-field-clear", ...(clearLabel === undefined ? {} : { "aria-label": clearLabel }) })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
18
+ };
15
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/SearchField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,WAAW,IAAI,eAAe,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AAEtF,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,sBAAsB,EACtB,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;AA+B1B;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EACxB,EAAE,EACF,WAAW,EACX,KAAK,EACL,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,OAAO,EACP,SAAS,GAAG,KAAK,EACjB,UAAU,EACV,OAAO,EAAE,gBAAgB,EACzB,UAAU,GAAG,KAAK,EAClB,MAAM,EACN,OAAO,EACP,SAAS,GAAG,KAAK,EACjB,GAAG,KAAK,EACO,EAAE,EAAE;IACnB,MAAM,OAAO,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAA;IACjD,OAAO,UAAU,CAAC,CAAC,CAAC,CAChB,KAAC,aAAa,IAAC,SAAS,EAAC,aAAa,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,0BAA0B,GAAG,CAClN,CAAC,CAAC,CAAC,CACA,MAAC,eAAe,iBACF,MAAM,oBACD,aAAa,mBACd,2BAA2B,EACzC,SAAS,EAAC,4CAA4C,EACtD,SAAS,QACT,OAAO,EAAE,OAAO,KACZ,sBAAsB,CAAC,OAAO,CAAC,KAC/B,gBAAgB,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,CAAC,EAC7C,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,KACjC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtF,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,KAChE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAC5C,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,aAE9C,KAAC,UAAU,IAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,YAAG,KAAK,CAAC,KAAK,GAAc,EACnG,MAAC,eAAe,CAAC,KAAK,IAAC,SAAS,EAAC,gCAAgC,gCAA4B,MAAM,aAC/F,KAAC,eAAe,CAAC,UAAU,mBAAa,MAAM,GAAG,EACjD,KAAC,eAAe,CAAC,KAAK,OACd,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,KAChC,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EACtD,SAAS,EAAC,gCAAgC,KACtC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KACtC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,KACxD,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAC1C,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAC9C,EACD,SAAS,CAAC,CAAC,CAAC,KAAC,WAAW,IAAC,IAAI,EAAC,IAAI,EAAC,KAAK,EAAC,SAAS,iBAAa,MAAM,EAAC,SAAS,EAAC,2BAA2B,GAAG,CAAC,CAAC,CAAC,IAAI,EACtH,KAAC,eAAe,CAAC,WAAW,IACxB,SAAS,EAAC,gCAAgC,KACtC,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,GACpE,IACkB,EACxB,KAAC,gBAAgB,cAAE,KAAK,CAAC,WAAW,GAAoB,EACxD,KAAC,cAAc,cAAE,KAAK,CAAC,YAAY,GAAkB,IACvC,CACrB,CAAA;AACL,CAAC,CAAA"}
@@ -1,9 +1,25 @@
1
+ import { type IconSource } from "../Icon/index.js";
1
2
  import { type FieldControlProps } from "../Field/index.js";
2
- export type SwitchProps = Omit<FieldControlProps, "isLabelHidden"> & {
3
+ export type SwitchSize = "md" | "lg" | "control";
4
+ export type SwitchProps = FieldControlProps & {
3
5
  readonly value?: string;
4
6
  readonly isSelected?: boolean;
5
7
  readonly defaultSelected?: boolean;
6
8
  readonly onSelectedChange?: (isSelected: boolean) => void;
9
+ /**
10
+ * The track and thumb size. `md` (default) is HeroUI's compact switch. `lg` is the StarCi look: a 4rem by
11
+ * 2.25rem fully round track and a 1.75rem round thumb inset 0.25rem, roomy enough to carry an icon. `control` is `lg` scaled to the
12
+ * shared control height (2.75rem, the IconButton and bar control height), so a switch lines up with the buttons beside it.
13
+ * With `isLabelHidden` the label stays the accessible name and draws nothing, for a switch that carries only an aria label.
14
+ */
15
+ readonly size?: SwitchSize;
16
+ /**
17
+ * A glyph drawn centred in the thumb, at the canon icon size: 20px (`Icon` `leading`, size-5) on `lg` and `control`, whose thumb is
18
+ * 1.75rem or 2.25rem; the 1rem thumb of `md` takes the 16px `chip` step. With `selectedThumbIcon` it is the glyph of the off state.
19
+ */
20
+ readonly thumbIcon?: IconSource;
21
+ /** The thumb glyph while on (a sun/moon theme switch passes the moon here). Needs `thumbIcon`; without one it is ignored. */
22
+ readonly selectedThumbIcon?: IconSource;
7
23
  /**
8
24
  * Initial unresolved content (knowledge STATE-8): the label stays real text and the switch track becomes a Skeleton of the same size,
9
25
  * `aria-hidden`, no `role="switch"` and nothing focusable; the root is `aria-busy`.
@@ -14,5 +30,5 @@ export type SwitchProps = Omit<FieldControlProps, "isLabelHidden"> & {
14
30
  * An immediate on/off setting (`role="switch"`). Use Checkbox for a choice that only takes effect
15
31
  * on submit. The label is part of the hit area; Space toggles.
16
32
  */
17
- export declare const Switch: ({ value, isSelected, defaultSelected, onSelectedChange, isSkeleton, ...field }: SwitchProps) => import("react").JSX.Element;
33
+ export declare const Switch: ({ value, isSelected, defaultSelected, onSelectedChange, size, thumbIcon, selectedThumbIcon, isSkeleton, ...field }: SwitchProps) => import("react").JSX.Element;
18
34
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAMH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,GAAG;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAA;IACzD;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,gFAAwF,WAAW,gCAuBzH,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAMH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAA;AAEhD,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAA;IACzD;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAA;IAC1B;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,UAAU,CAAA;IAC/B,6HAA6H;IAC7H,QAAQ,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAA;IACvC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAChC,CAAA;AAQD;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,oHAAmI,WAAW,gCAkCpK,CAAA"}
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { Switch as HeroSwitch } from "@heroui/react";
4
+ import { Icon } from "../Icon/index.js";
4
5
  import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, vendorFieldProps, } from "../Field/index.js";
5
6
  /*
6
7
  * Consumer hook: `starci-core-switch` names this control's root for a consumer or family
@@ -11,5 +12,5 @@ import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, vendorFiel
11
12
  * An immediate on/off setting (`role="switch"`). Use Checkbox for a choice that only takes effect
12
13
  * on submit. The label is part of the hit area; Space toggles.
13
14
  */
14
- export const Switch = ({ value, isSelected, defaultSelected, onSelectedChange, isSkeleton = false, ...field }) => isSkeleton ? (_jsx(FieldSkeleton, { component: "Switch", tier: "atom", label: field.label, isRequired: field.isRequired, kind: "switch", className: "starci-core-switch" })) : (_jsxs(HeroSwitch, { "data-tier": "atom", "data-component": "Switch", "data-contract": "A11Y-1 STATE-1", className: "starci-core-choice starci-core-switch", ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? {} : { value }), ...(isSelected === undefined ? defaultSelected === undefined ? {} : { defaultSelected } : { isSelected }), ...(onSelectedChange === undefined ? {} : { onChange: onSelectedChange }), children: [_jsxs(HeroSwitch.Content, { className: "starci-core-choice-content", "data-grammar-choice-target": "true", children: [_jsx(HeroSwitch.Control, { className: "starci-core-choice-control", "data-grammar-choice-control": "switch", children: _jsx(HeroSwitch.Thumb, {}) }), _jsx(FieldLabel, { children: field.label })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
15
+ export const Switch = ({ value, isSelected, defaultSelected, onSelectedChange, size = "md", thumbIcon, selectedThumbIcon, isSkeleton = false, ...field }) => isSkeleton ? (_jsx(FieldSkeleton, { component: "Switch", tier: "atom", label: field.label, isLabelHidden: field.isLabelHidden, isRequired: field.isRequired, kind: "switch", switchSize: size, className: "starci-core-switch" })) : (_jsxs(HeroSwitch, { "data-tier": "atom", "data-component": "Switch", "data-contract": "A11Y-1 STATE-1", "data-grammar-switch-size": size, "data-grammar-switch-icons": thumbIcon === undefined ? "none" : selectedThumbIcon === undefined ? "single" : "swap", className: "starci-core-choice starci-core-switch", ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, ...(value === undefined ? {} : { value }), ...(isSelected === undefined ? defaultSelected === undefined ? {} : { defaultSelected } : { isSelected }), ...(onSelectedChange === undefined ? {} : { onChange: onSelectedChange }), children: [_jsxs(HeroSwitch.Content, { className: "starci-core-choice-content", "data-grammar-choice-target": "true", children: [_jsx(HeroSwitch.Control, { className: "starci-core-choice-control", "data-grammar-choice-control": "switch", children: _jsx(HeroSwitch.Thumb, { "data-grammar-switch-thumb": "true", children: thumbIcon === undefined ? null : (_jsxs(HeroSwitch.Icon, { children: [_jsx("span", { "aria-hidden": "true", className: "starci-core-switch-icon", "data-grammar-switch-icon": "off", children: _jsx(Icon, { source: thumbIcon, usage: size === "md" ? "chip" : "leading" }) }), selectedThumbIcon === undefined ? null : (_jsx("span", { "aria-hidden": "true", className: "starci-core-switch-icon", "data-grammar-switch-icon": "on", children: _jsx(Icon, { source: selectedThumbIcon, usage: size === "md" ? "chip" : "leading" }) }))] })) }) }), _jsx(FieldLabel, { isHidden: field.isLabelHidden === true, children: field.label })] }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
15
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,aAAa,EACb,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;AAc1B;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,GAAG,KAAK,EAAE,GAAG,KAAK,EAAe,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CACxI,KAAC,aAAa,IAAC,SAAS,EAAC,QAAQ,EAAC,IAAI,EAAC,MAAM,EAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,oBAAoB,GAAG,CAClJ,CAAC,CAAC,CAAC,CACA,MAAC,UAAU,iBACG,MAAM,oBACD,QAAQ,mBACT,gBAAgB,EAC9B,SAAS,EAAC,uCAAuC,KAC7C,gBAAgB,CAAC,KAAK,CAAC,EAC3B,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,KACjC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtC,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,KACtG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,aAE1E,MAAC,UAAU,CAAC,OAAO,IAAC,SAAS,EAAC,4BAA4B,gCAA4B,MAAM,aACxF,KAAC,UAAU,CAAC,OAAO,IAAC,SAAS,EAAC,4BAA4B,iCAA6B,QAAQ,YAC3F,KAAC,UAAU,CAAC,KAAK,KAAG,GACH,EACrB,KAAC,UAAU,cAAE,KAAK,CAAC,KAAK,GAAc,IACrB,EACrB,KAAC,gBAAgB,cAAE,KAAK,CAAC,WAAW,GAAoB,EACxD,KAAC,cAAc,cAAE,KAAK,CAAC,YAAY,GAAkB,IAC5C,CAChB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Switch/index.tsx"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ export type TextareaProps = FieldControlProps & {
36
36
  readonly maxLength?: number;
37
37
  readonly minLength?: number;
38
38
  readonly onValueChange?: (value: string) => void;
39
- /** Layer variant: `secondary` when the control sits on a surface (ANATOMY-2 case-1). */
39
+ /** Defaults to `secondary` inside a Grammar surface and `primary` outside (ANATOMY-2 case-1). */
40
40
  readonly variant?: "primary" | "secondary";
41
41
  /**
42
42
  * Chat composer shortcut: Enter (without Shift, outside an IME composition and with no suggestion list open) calls this
@@ -61,6 +61,6 @@ export declare const findMentionQuery: (text: string, caret: number, trigger?: s
61
61
  /** Options whose label (accent- and case-insensitive) contains the query, at most eight. */
62
62
  export declare const filterMentionOptions: (options: ReadonlyArray<TextareaMentionOption>, query: string) => ReadonlyArray<TextareaMentionOption>;
63
63
  /** Multi-line text with the shared field anatomy, an optional Enter-to-submit shortcut and optional mention suggestions. */
64
- export declare const Textarea: ({ id, placeholder, value, defaultValue, rows, isSkeleton, maxLength, minLength, onValueChange, variant, onSubmitShortcut, mentions, onBlur, onPaste, autoFocus, ...field }: TextareaProps) => import("react").JSX.Element;
64
+ export declare const Textarea: ({ id, placeholder, value, defaultValue, rows, isSkeleton, maxLength, minLength, onValueChange, variant: requestedVariant, onSubmitShortcut, mentions, onBlur, onPaste, autoFocus, ...field }: TextareaProps) => import("react").JSX.Element;
65
65
  export {};
66
66
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAA4B,KAAK,cAAc,EAAsB,MAAM,OAAO,CAAA;AACzF,OAAO,EAQH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,iGAAiG;AACjG,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,iEAAiE;IACjE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAChC,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAA;IACtD,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAA;CAC9D,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG;IAC5C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,2DAA2D;IAC3D,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,wFAAwF;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IACpC,+BAA+B;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;IACvE,2CAA2C;IAC3C,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED,KAAK,YAAY,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAI3F,gIAAgI;AAChI,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,EAAE,gBAAa,KAAG,YAAY,GAAG,IAQ5F,CAAA;AAED,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,GAAI,SAAS,aAAa,CAAC,qBAAqB,CAAC,EAAE,OAAO,MAAM,KAAG,aAAa,CAAC,qBAAqB,CAGtI,CAAA;AAQD,4HAA4H;AAC5H,eAAO,MAAM,QAAQ,GAAI,4KAiBtB,aAAa,gCAqKf,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAA4B,KAAK,cAAc,EAAsB,MAAM,OAAO,CAAA;AACzF,OAAO,EAQH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAE1B,iGAAiG;AACjG,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,iEAAiE;IACjE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAChC,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAA;IACtD,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAA;CAC9D,CAAA;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG;IAC5C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,2DAA2D;IAC3D,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,iGAAiG;IACjG,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;IAC1C;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAA;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IACpC,+BAA+B;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;IACvE,2CAA2C;IAC3C,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAC/B,CAAA;AAED,KAAK,YAAY,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAI3F,gIAAgI;AAChI,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,EAAE,gBAAa,KAAG,YAAY,GAAG,IAQ5F,CAAA;AAED,4FAA4F;AAC5F,eAAO,MAAM,oBAAoB,GAAI,SAAS,aAAa,CAAC,qBAAqB,CAAC,EAAE,OAAO,MAAM,KAAG,aAAa,CAAC,qBAAqB,CAGtI,CAAA;AAQD,4HAA4H;AAC5H,eAAO,MAAM,QAAQ,GAAI,8LAiBtB,aAAa,gCAsKf,CAAA"}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useFieldVariant } from "../../surfaceContext.js";
3
4
  import { TextArea as HeroTextArea, TextField as HeroTextField } from "@heroui/react";
4
5
  import { useId, useMemo, useState } from "react";
5
6
  import { FieldDescription, FieldErrorText, FieldLabel, FieldSkeleton, fieldVariantAttributes, isFieldInvalid, vendorFieldProps, } from "../Field/index.js";
@@ -28,7 +29,8 @@ export const filterMentionOptions = (options, query) => {
28
29
  * a rule on the hook adds to the shared anatomy and never has to replace it.
29
30
  */
30
31
  /** Multi-line text with the shared field anatomy, an optional Enter-to-submit shortcut and optional mention suggestions. */
31
- export const Textarea = ({ id, placeholder, value, defaultValue, rows = 4, isSkeleton = false, maxLength, minLength, onValueChange, variant = "primary", onSubmitShortcut, mentions, onBlur, onPaste, autoFocus = false, ...field }) => {
32
+ export const Textarea = ({ id, placeholder, value, defaultValue, rows = 4, isSkeleton = false, maxLength, minLength, onValueChange, variant: requestedVariant, onSubmitShortcut, mentions, onBlur, onPaste, autoFocus = false, ...field }) => {
33
+ const variant = useFieldVariant(requestedVariant);
32
34
  const [uncontrolledLength, setUncontrolledLength] = useState((defaultValue ?? "").length);
33
35
  const length = value === undefined ? uncontrolledLength : value.length;
34
36
  const generatedId = useId();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/Textarea/index.tsx"],"names":[],"mappings":"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"}
@@ -9,9 +9,9 @@ export type TimeFieldProps = FieldControlProps & {
9
9
  readonly granularity?: "hour" | "minute" | "second";
10
10
  /** Forces 12- or 24-hour display; the locale decides by default. */
11
11
  readonly hourCycle?: 12 | 24;
12
- /** Layer variant: `secondary` when the control sits on a surface (ANATOMY-2 case-1). */
12
+ /** Defaults to `secondary` inside a Grammar surface and `primary` outside (ANATOMY-2 case-1). */
13
13
  readonly variant?: "primary" | "secondary";
14
14
  };
15
15
  /** A typed time of day in locale-ordered spinbutton segments. */
16
- export declare const TimeField: ({ value, defaultValue, onValueChange, minValue, maxValue, granularity, hourCycle, variant, ...field }: TimeFieldProps) => import("react").JSX.Element;
16
+ export declare const TimeField: ({ value, defaultValue, onValueChange, minValue, maxValue, granularity, hourCycle, variant: requestedVariant, ...field }: TimeFieldProps) => import("react").JSX.Element;
17
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/TimeField/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,eAAe,CAAA;AAC1E,OAAO,EAOH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAG1B,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAA;IAC1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;IACnD,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAA;IAC5B,wFAAwF;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;CAC7C,CAAA;AAQD,iEAAiE;AACjE,eAAO,MAAM,SAAS,GAAI,uGAUvB,cAAc,gCAwBhB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/primitive/TimeField/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,eAAe,CAAA;AAC1E,OAAO,EAOH,KAAK,iBAAiB,EACzB,MAAM,mBAAmB,CAAA;AAG1B,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,KAAK,IAAI,CAAA;IAC1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;IACnD,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,CAAA;IAC5B,iGAAiG;IACjG,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAA;CAC7C,CAAA;AAQD,iEAAiE;AACjE,eAAO,MAAM,SAAS,GAAI,yHAUvB,cAAc,gCA2BhB,CAAA"}
@@ -1,5 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useFieldVariant } from "../../surfaceContext.js";
3
4
  import { TimeField as HeroTimeField } from "@heroui/react";
4
5
  import { FieldDescription, FieldErrorText, FieldLabel, fieldVariantAttributes, isFieldInvalid, vendorFieldProps, } from "../Field/index.js";
5
6
  import { DateFieldBox, DateSegments } from "../DateField/index.js";
@@ -9,5 +10,8 @@ import { DateFieldBox, DateSegments } from "../DateField/index.js";
9
10
  * a rule on the hook adds to the shared anatomy and never has to replace it.
10
11
  */
11
12
  /** A typed time of day in locale-ordered spinbutton segments. */
12
- export const TimeField = ({ value, defaultValue, onValueChange, minValue, maxValue, granularity = "minute", hourCycle, variant = "primary", ...field }) => (_jsxs(HeroTimeField, { "data-tier": "atom", "data-component": "TimeField", "data-contract": "A11Y-1 FEEDBACK-1 STATE-1", className: "starci-core-field starci-core-time-field", fullWidth: true, ...fieldVariantAttributes(variant), ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, granularity: granularity, ...(hourCycle === undefined ? {} : { hourCycle }), ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(minValue === undefined ? {} : { minValue }), ...(maxValue === undefined ? {} : { maxValue }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsx(DateFieldBox, { isInvalid: isFieldInvalid(field), isDisabled: field.isDisabled === true, variant: variant, children: _jsx(DateSegments, {}) }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
13
+ export const TimeField = ({ value, defaultValue, onValueChange, minValue, maxValue, granularity = "minute", hourCycle, variant: requestedVariant, ...field }) => {
14
+ const variant = useFieldVariant(requestedVariant);
15
+ return (_jsxs(HeroTimeField, { "data-tier": "atom", "data-component": "TimeField", "data-contract": "A11Y-1 FEEDBACK-1 STATE-1", className: "starci-core-field starci-core-time-field", fullWidth: true, ...fieldVariantAttributes(variant), ...vendorFieldProps(field), isReadOnly: field.isReadOnly === true, granularity: granularity, ...(hourCycle === undefined ? {} : { hourCycle }), ...(value === undefined ? defaultValue === undefined ? {} : { defaultValue } : { value }), ...(onValueChange === undefined ? {} : { onChange: onValueChange }), ...(minValue === undefined ? {} : { minValue }), ...(maxValue === undefined ? {} : { maxValue }), children: [_jsx(FieldLabel, { isHidden: field.isLabelHidden, isRequired: field.isRequired, children: field.label }), _jsx(DateFieldBox, { isInvalid: isFieldInvalid(field), isDisabled: field.isDisabled === true, variant: variant, children: _jsx(DateSegments, {}) }), _jsx(FieldDescription, { children: field.description }), _jsx(FieldErrorText, { children: field.errorMessage })] }));
16
+ };
13
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/TimeField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,SAAS,IAAI,aAAa,EAAkB,MAAM,eAAe,CAAA;AAC1E,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,sBAAsB,EACtB,cAAc,EACd,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAelE;;;;GAIG;AAEH,iEAAiE;AACjE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACtB,KAAK,EACL,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,GAAG,QAAQ,EACtB,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,GAAG,KAAK,EACK,EAAE,EAAE,CAAC,CAClB,MAAC,aAAa,iBACA,MAAM,oBACD,WAAW,mBACZ,2BAA2B,EACzC,SAAS,EAAC,0CAA0C,EACpD,SAAS,WACL,sBAAsB,CAAC,OAAO,CAAC,KAC/B,gBAAgB,CAAC,KAAK,CAAC,EAC3B,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,EACrC,WAAW,EAAE,WAAW,KACpB,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAC9C,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtF,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,KAChE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAC5C,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,aAEhD,KAAC,UAAU,IAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,YAAG,KAAK,CAAC,KAAK,GAAc,EACnG,KAAC,YAAY,IAAC,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,EAAE,OAAO,EAAE,OAAO,YACnG,KAAC,YAAY,KAAG,GACL,EACf,KAAC,gBAAgB,cAAE,KAAK,CAAC,WAAW,GAAoB,EACxD,KAAC,cAAc,cAAE,KAAK,CAAC,YAAY,GAAkB,IACzC,CACnB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/primitive/TimeField/index.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAkB,MAAM,eAAe,CAAA;AAC1E,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,sBAAsB,EACtB,cAAc,EACd,gBAAgB,GAEnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAelE;;;;GAIG;AAEH,iEAAiE;AACjE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EACtB,KAAK,EACL,YAAY,EACZ,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,WAAW,GAAG,QAAQ,EACtB,SAAS,EACT,OAAO,EAAE,gBAAgB,EACzB,GAAG,KAAK,EACK,EAAE,EAAE;IACjB,MAAM,OAAO,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAA;IACjD,OAAO,CACH,MAAC,aAAa,iBACA,MAAM,oBACD,WAAW,mBACZ,2BAA2B,EACzC,SAAS,EAAC,0CAA0C,EACpD,SAAS,WACL,sBAAsB,CAAC,OAAO,CAAC,KAC/B,gBAAgB,CAAC,KAAK,CAAC,EAC3B,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,EACrC,WAAW,EAAE,WAAW,KACpB,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,KAC9C,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,KACtF,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,KAChE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAC5C,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,aAEhD,KAAC,UAAU,IAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,YAAG,KAAK,CAAC,KAAK,GAAc,EACnG,KAAC,YAAY,IAAC,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,EAAE,OAAO,EAAE,OAAO,YACnG,KAAC,YAAY,KAAG,GACL,EACf,KAAC,gBAAgB,cAAE,KAAK,CAAC,WAAW,GAAoB,EACxD,KAAC,cAAc,cAAE,KAAK,CAAC,YAAY,GAAkB,IACzC,CACnB,CAAA;AACL,CAAC,CAAA"}
@@ -0,0 +1,11 @@
1
+ import { type ReactNode } from "react";
2
+ import type { FieldVariant } from "./primitive/Field/index.js";
3
+ /** Supplies the nested-control layer to every child, including portalled overlay content. */
4
+ export declare const SurfaceNesting: ({ children }: {
5
+ readonly children: ReactNode;
6
+ }) => import("react").JSX.Element;
7
+ /** Whether the current composition supplies a Grammar surface content edge and control layer. */
8
+ export declare const useSurfaceNesting: () => boolean;
9
+ /** Resolve an explicit field layer, or the surface's secondary/page's primary default. */
10
+ export declare const useFieldVariant: (variant?: FieldVariant) => FieldVariant;
11
+ //# sourceMappingURL=surfaceContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"surfaceContext.d.ts","sourceRoot":"","sources":["../../src/core/surfaceContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAI9D,6FAA6F;AAC7F,eAAO,MAAM,cAAc,GAAI,cAAc;IAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,gCAE5E,CAAA;AAED,iGAAiG;AACjG,eAAO,MAAM,iBAAiB,QAAO,OAA4C,CAAA;AAEjF,0FAA0F;AAC1F,eAAO,MAAM,eAAe,GAAI,UAAU,YAAY,KAAG,YAGxD,CAAA"}