@accelint/design-toolkit 9.4.1 → 9.6.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 (277) hide show
  1. package/catalog-info.yaml +2 -2
  2. package/dist/components/accordion/group.d.ts +2 -2
  3. package/dist/components/accordion/header.d.ts +2 -2
  4. package/dist/components/accordion/index.d.ts +2 -2
  5. package/dist/components/accordion/panel.d.ts +2 -2
  6. package/dist/components/accordion/styles.module.css +1 -1
  7. package/dist/components/accordion/trigger.d.ts +2 -2
  8. package/dist/components/action-bar/index.d.ts +2 -2
  9. package/dist/components/audio/index.d.ts +104 -0
  10. package/dist/components/audio/index.js +242 -0
  11. package/dist/components/audio/index.js.map +1 -0
  12. package/dist/components/audio/styles.module.css +77 -0
  13. package/dist/components/audio/types.d.ts +45 -0
  14. package/dist/components/audio/types.js +12 -0
  15. package/dist/components/avatar/context.d.ts +4 -4
  16. package/dist/components/avatar/index.d.ts +2 -2
  17. package/dist/components/badge/context.d.ts +4 -4
  18. package/dist/components/badge/index.d.ts +2 -2
  19. package/dist/components/breadcrumbs/index.d.ts +2 -2
  20. package/dist/components/breadcrumbs/item.d.ts +2 -2
  21. package/dist/components/breadcrumbs/styles.module.css +1 -0
  22. package/dist/components/button/__internal__/clear.js +42 -0
  23. package/dist/components/button/__internal__/clear.js.map +1 -0
  24. package/dist/components/button/__internal__/styles.module.css +23 -0
  25. package/dist/components/button/context.d.ts +8 -8
  26. package/dist/components/button/index.d.ts +2 -2
  27. package/dist/components/button/link.d.ts +2 -2
  28. package/dist/components/button/styles.module.css +1 -1
  29. package/dist/components/button/toggle.d.ts +2 -2
  30. package/dist/components/checkbox/context.d.ts +3 -3
  31. package/dist/components/checkbox/group.d.ts +2 -2
  32. package/dist/components/checkbox/index.d.ts +2 -2
  33. package/dist/components/chip/context.d.ts +4 -4
  34. package/dist/components/chip/deletable.d.ts +2 -2
  35. package/dist/components/chip/index.d.ts +2 -2
  36. package/dist/components/chip/list.d.ts +4 -4
  37. package/dist/components/chip/selectable.d.ts +2 -2
  38. package/dist/components/chip/styles.module.css +4 -4
  39. package/dist/components/classification-badge/context.d.ts +4 -4
  40. package/dist/components/classification-badge/index.d.ts +2 -2
  41. package/dist/components/classification-banner/context.d.ts +4 -4
  42. package/dist/components/classification-banner/index.d.ts +2 -2
  43. package/dist/components/clock/index.d.ts +2 -2
  44. package/dist/components/clock/index.js +1 -0
  45. package/dist/components/clock/index.js.map +1 -1
  46. package/dist/components/color-picker/index.d.ts +2 -2
  47. package/dist/components/combobox-field/context.d.ts +4 -4
  48. package/dist/components/combobox-field/index.d.ts +2 -2
  49. package/dist/components/combobox-field/index.js +42 -14
  50. package/dist/components/combobox-field/index.js.map +1 -1
  51. package/dist/components/combobox-field/styles.module.css +15 -3
  52. package/dist/components/combobox-field/types.d.ts +4 -0
  53. package/dist/components/coordinate-field/context.d.ts +6 -6
  54. package/dist/components/coordinate-field/index.d.ts +2 -2
  55. package/dist/components/coordinate-field/segment.d.ts +2 -2
  56. package/dist/components/date-field/index.d.ts +2 -2
  57. package/dist/components/deferred-collection/index.d.ts +2 -2
  58. package/dist/components/details-list/context.d.ts +4 -4
  59. package/dist/components/details-list/index.d.ts +2 -2
  60. package/dist/components/details-list/label.d.ts +2 -2
  61. package/dist/components/details-list/value.d.ts +2 -2
  62. package/dist/components/dialog/content.d.ts +2 -2
  63. package/dist/components/dialog/context.d.ts +2 -2
  64. package/dist/components/dialog/footer.d.ts +2 -2
  65. package/dist/components/dialog/index.d.ts +2 -2
  66. package/dist/components/dialog/title.d.ts +2 -2
  67. package/dist/components/divider/context.d.ts +4 -4
  68. package/dist/components/divider/index.d.ts +2 -2
  69. package/dist/components/drawer/back.d.ts +2 -2
  70. package/dist/components/drawer/close.d.ts +2 -2
  71. package/dist/components/drawer/content.d.ts +2 -2
  72. package/dist/components/drawer/context.d.ts +2 -2
  73. package/dist/components/drawer/footer.d.ts +2 -2
  74. package/dist/components/drawer/header-title.d.ts +2 -2
  75. package/dist/components/drawer/header.d.ts +2 -2
  76. package/dist/components/drawer/header.js +1 -1
  77. package/dist/components/drawer/index.d.ts +2 -2
  78. package/dist/components/drawer/layout-main.d.ts +2 -2
  79. package/dist/components/drawer/layout.d.ts +2 -2
  80. package/dist/components/drawer/menu-item.d.ts +2 -2
  81. package/dist/components/drawer/menu.d.ts +2 -2
  82. package/dist/components/drawer/panel.d.ts +2 -2
  83. package/dist/components/drawer/trigger.d.ts +2 -2
  84. package/dist/components/drawer/view.d.ts +2 -2
  85. package/dist/components/flashcard/index.d.ts +9 -9
  86. package/dist/components/hero/context.d.ts +2 -2
  87. package/dist/components/hero/index.d.ts +2 -2
  88. package/dist/components/hero/subtitle.d.ts +2 -2
  89. package/dist/components/hero/title.d.ts +3 -3
  90. package/dist/components/hotkey/context.d.ts +2 -2
  91. package/dist/components/hotkey/index.d.ts +2 -2
  92. package/dist/components/hotkey/set.d.ts +2 -2
  93. package/dist/components/icon/context.d.ts +4 -4
  94. package/dist/components/icon/index.d.ts +2 -2
  95. package/dist/components/input/context.d.ts +2 -2
  96. package/dist/components/input/index.d.ts +2 -2
  97. package/dist/components/input/index.js +10 -14
  98. package/dist/components/input/index.js.map +1 -1
  99. package/dist/components/kanban/card-body.d.ts +2 -2
  100. package/dist/components/kanban/card-header-actions.d.ts +2 -2
  101. package/dist/components/kanban/card-header-title.d.ts +2 -2
  102. package/dist/components/kanban/card-header.d.ts +2 -2
  103. package/dist/components/kanban/card.d.ts +2 -2
  104. package/dist/components/kanban/column-actions.d.ts +2 -2
  105. package/dist/components/kanban/column-container.d.ts +2 -2
  106. package/dist/components/kanban/column-content.d.ts +2 -2
  107. package/dist/components/kanban/column-header-actions.d.ts +2 -2
  108. package/dist/components/kanban/column-header-drag-handle.d.ts +2 -2
  109. package/dist/components/kanban/column-header-title.d.ts +2 -2
  110. package/dist/components/kanban/column-header.d.ts +2 -2
  111. package/dist/components/kanban/column.d.ts +2 -2
  112. package/dist/components/kanban/context.d.ts +2 -2
  113. package/dist/components/kanban/header-actions.d.ts +2 -2
  114. package/dist/components/kanban/header-search.d.ts +2 -2
  115. package/dist/components/kanban/header-title.d.ts +2 -2
  116. package/dist/components/kanban/header.d.ts +2 -2
  117. package/dist/components/kanban/kanban.d.ts +4 -4
  118. package/dist/components/kanban/styles.module.css +1 -1
  119. package/dist/components/label/context.d.ts +4 -4
  120. package/dist/components/label/index.d.ts +2 -2
  121. package/dist/components/lines/index.d.ts +2 -2
  122. package/dist/components/link/context.d.ts +2 -2
  123. package/dist/components/link/index.d.ts +2 -2
  124. package/dist/components/list/context.d.ts +2 -2
  125. package/dist/components/list/index.d.ts +2 -2
  126. package/dist/components/list/item-content.d.ts +2 -2
  127. package/dist/components/list/item-description.d.ts +2 -2
  128. package/dist/components/list/item-title.d.ts +2 -2
  129. package/dist/components/list/item.d.ts +2 -2
  130. package/dist/components/list/styles.module.css +1 -1
  131. package/dist/components/media-controls/context.d.ts +66 -0
  132. package/dist/components/media-controls/context.js +77 -0
  133. package/dist/components/media-controls/context.js.map +1 -0
  134. package/dist/components/media-controls/fullscreen-button.d.ts +55 -0
  135. package/dist/components/media-controls/fullscreen-button.js +80 -0
  136. package/dist/components/media-controls/fullscreen-button.js.map +1 -0
  137. package/dist/components/media-controls/index.d.ts +68 -0
  138. package/dist/components/media-controls/index.js +78 -0
  139. package/dist/components/media-controls/index.js.map +1 -0
  140. package/dist/components/media-controls/mute-button.d.ts +47 -0
  141. package/dist/components/media-controls/mute-button.js +73 -0
  142. package/dist/components/media-controls/mute-button.js.map +1 -0
  143. package/dist/components/media-controls/play-button.d.ts +47 -0
  144. package/dist/components/media-controls/play-button.js +71 -0
  145. package/dist/components/media-controls/play-button.js.map +1 -0
  146. package/dist/components/media-controls/playback-rate.d.ts +58 -0
  147. package/dist/components/media-controls/playback-rate.js +114 -0
  148. package/dist/components/media-controls/playback-rate.js.map +1 -0
  149. package/dist/components/media-controls/seek-button.d.ts +60 -0
  150. package/dist/components/media-controls/seek-button.js +116 -0
  151. package/dist/components/media-controls/seek-button.js.map +1 -0
  152. package/dist/components/media-controls/styles.module.css +145 -0
  153. package/dist/components/media-controls/time-display.d.ts +69 -0
  154. package/dist/components/media-controls/time-display.js +95 -0
  155. package/dist/components/media-controls/time-display.js.map +1 -0
  156. package/dist/components/media-controls/time-range.d.ts +46 -0
  157. package/dist/components/media-controls/time-range.js +63 -0
  158. package/dist/components/media-controls/time-range.js.map +1 -0
  159. package/dist/components/media-controls/types.d.ts +127 -0
  160. package/dist/components/media-controls/types.js +12 -0
  161. package/dist/components/media-controls/volume-slider.d.ts +54 -0
  162. package/dist/components/media-controls/volume-slider.js +70 -0
  163. package/dist/components/media-controls/volume-slider.js.map +1 -0
  164. package/dist/components/menu/context.d.ts +2 -2
  165. package/dist/components/menu/index.d.ts +2 -2
  166. package/dist/components/menu/item-description.d.ts +2 -2
  167. package/dist/components/menu/item-label.d.ts +2 -2
  168. package/dist/components/menu/item.d.ts +2 -2
  169. package/dist/components/menu/section.d.ts +2 -2
  170. package/dist/components/menu/separator.d.ts +2 -2
  171. package/dist/components/menu/styles.module.css +1 -1
  172. package/dist/components/menu/submenu.d.ts +3 -3
  173. package/dist/components/notice/index.d.ts +2 -2
  174. package/dist/components/notice/list.d.ts +2 -2
  175. package/dist/components/notice/notice-icon.d.ts +2 -2
  176. package/dist/components/options/context.d.ts +2 -2
  177. package/dist/components/options/index.d.ts +2 -2
  178. package/dist/components/options/item-content.d.ts +2 -2
  179. package/dist/components/options/item-description.d.ts +2 -2
  180. package/dist/components/options/item-label.d.ts +2 -2
  181. package/dist/components/options/item.d.ts +2 -2
  182. package/dist/components/options/section.d.ts +2 -2
  183. package/dist/components/options/styles.module.css +1 -1
  184. package/dist/components/pagination/context.d.ts +2 -2
  185. package/dist/components/pagination/index.d.ts +2 -2
  186. package/dist/components/pagination/next.d.ts +2 -2
  187. package/dist/components/pagination/pages.d.ts +2 -2
  188. package/dist/components/pagination/prev.d.ts +2 -2
  189. package/dist/components/popover/content.d.ts +2 -2
  190. package/dist/components/popover/footer.d.ts +2 -2
  191. package/dist/components/popover/index.d.ts +2 -2
  192. package/dist/components/popover/title.d.ts +2 -2
  193. package/dist/components/popover/trigger.d.ts +2 -2
  194. package/dist/components/query-builder/action-element.d.ts +2 -2
  195. package/dist/components/query-builder/actions.d.ts +4 -4
  196. package/dist/components/query-builder/combinator-selector.d.ts +2 -2
  197. package/dist/components/query-builder/combinator-selector.js +5 -4
  198. package/dist/components/query-builder/combinator-selector.js.map +1 -1
  199. package/dist/components/query-builder/index.d.ts +2 -2
  200. package/dist/components/query-builder/rule-group.d.ts +4 -4
  201. package/dist/components/query-builder/rule.d.ts +2 -2
  202. package/dist/components/query-builder/value-editor.d.ts +2 -2
  203. package/dist/components/query-builder/value-selector.d.ts +2 -2
  204. package/dist/components/radio/context.d.ts +2 -2
  205. package/dist/components/radio/group.d.ts +2 -2
  206. package/dist/components/radio/index.d.ts +2 -2
  207. package/dist/components/search-field/context.d.ts +4 -4
  208. package/dist/components/search-field/index.d.ts +2 -2
  209. package/dist/components/search-field/styles.module.css +1 -1
  210. package/dist/components/select-field/context.d.ts +4 -4
  211. package/dist/components/select-field/index.d.ts +2 -2
  212. package/dist/components/sidenav/avatar.d.ts +2 -2
  213. package/dist/components/sidenav/content.d.ts +2 -2
  214. package/dist/components/sidenav/context.d.ts +2 -2
  215. package/dist/components/sidenav/footer.d.ts +2 -2
  216. package/dist/components/sidenav/header.d.ts +2 -2
  217. package/dist/components/sidenav/index.d.ts +2 -2
  218. package/dist/components/sidenav/item.d.ts +2 -2
  219. package/dist/components/sidenav/link.d.ts +2 -2
  220. package/dist/components/sidenav/menu-item.d.ts +2 -2
  221. package/dist/components/sidenav/menu.d.ts +2 -2
  222. package/dist/components/sidenav/trigger.d.ts +2 -2
  223. package/dist/components/skeleton/index.d.ts +2 -2
  224. package/dist/components/slider/index.d.ts +2 -2
  225. package/dist/components/status-indicator/index.d.ts +41 -0
  226. package/dist/components/status-indicator/index.js +49 -0
  227. package/dist/components/status-indicator/index.js.map +1 -0
  228. package/dist/components/status-indicator/styles.module.css +34 -0
  229. package/dist/components/status-indicator/types.d.ts +21 -0
  230. package/dist/components/status-indicator/types.js +12 -0
  231. package/dist/components/switch/context.d.ts +4 -4
  232. package/dist/components/switch/index.d.ts +2 -2
  233. package/dist/components/table/body.d.ts +2 -2
  234. package/dist/components/table/cell.d.ts +2 -2
  235. package/dist/components/table/context.d.ts +2 -2
  236. package/dist/components/table/header-cell.d.ts +2 -2
  237. package/dist/components/table/header.d.ts +2 -2
  238. package/dist/components/table/index.d.ts +2 -2
  239. package/dist/components/table/row.d.ts +2 -2
  240. package/dist/components/table/styles.module.css +5 -1
  241. package/dist/components/tabs/context.d.ts +4 -4
  242. package/dist/components/tabs/index.d.ts +2 -2
  243. package/dist/components/tabs/list.d.ts +2 -2
  244. package/dist/components/tabs/panel.d.ts +2 -2
  245. package/dist/components/tabs/styles.module.css +1 -1
  246. package/dist/components/tabs/tab.d.ts +2 -2
  247. package/dist/components/text-area-field/context.d.ts +4 -4
  248. package/dist/components/text-area-field/index.d.ts +2 -2
  249. package/dist/components/text-field/context.d.ts +4 -4
  250. package/dist/components/text-field/index.d.ts +2 -2
  251. package/dist/components/time-field/index.d.ts +2 -2
  252. package/dist/components/tooltip/context.d.ts +2 -2
  253. package/dist/components/tooltip/index.d.ts +2 -2
  254. package/dist/components/tooltip/styles.module.css +1 -1
  255. package/dist/components/tooltip/trigger.d.ts +2 -2
  256. package/dist/components/tree/index.d.ts +2 -2
  257. package/dist/components/tree/item-actions.d.ts +2 -2
  258. package/dist/components/tree/item-content.d.ts +2 -2
  259. package/dist/components/tree/item-description.d.ts +2 -2
  260. package/dist/components/tree/item-label.d.ts +2 -2
  261. package/dist/components/tree/item-prefix-icon.d.ts +2 -2
  262. package/dist/components/tree/lines.d.ts +2 -2
  263. package/dist/components/tree/styles.module.css +1 -1
  264. package/dist/components/video/index.d.ts +97 -0
  265. package/dist/components/video/index.js +261 -0
  266. package/dist/components/video/index.js.map +1 -0
  267. package/dist/components/video/styles.module.css +99 -0
  268. package/dist/components/video/types.d.ts +52 -0
  269. package/dist/components/video/types.js +12 -0
  270. package/dist/components/view-stack/index.d.ts +2 -2
  271. package/dist/components/view-stack/trigger.d.ts +2 -2
  272. package/dist/components/view-stack/view.d.ts +2 -2
  273. package/dist/index.d.ts +18 -1
  274. package/dist/index.js +14 -1
  275. package/dist/providers/portal.d.ts +2 -2
  276. package/dist/providers/theme-provider.d.ts +2 -2
  277. package/package.json +29 -11
@@ -68,6 +68,7 @@ function Clock({ formatter = DEFAULT_FORMATTER, ...rest }) {
68
68
  const [time, setTime] = useState(now());
69
69
  useEffect(() => setClockInterval(() => setTime(now()), 1e3), [now]);
70
70
  return /* @__PURE__ */ jsx("time", {
71
+ suppressHydrationWarning: true,
71
72
  ...rest,
72
73
  children: time
73
74
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/clock/index.tsx"],"sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport { setClockInterval } from '@accelint/temporal';\nimport 'client-only';\nimport { useCallback, useEffect, useState } from 'react';\nimport type { ClockProps } from './types';\n\nconst DEFAULT_FORMATTER = new Intl.DateTimeFormat('en-US', {\n timeStyle: 'long',\n timeZone: 'UTC',\n hour12: false,\n});\n\n/**\n * Clock - An auto-updating UTC time component.\n *\n * Uses a {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat|DateTimeFormat} configured with `'en-US', { timeStyle: 'long, timeZone: 'UTC', hour12: false }` by default,\n * but can be overridden with the `formatter` prop.\n *\n * NOTE: This component comes **unstyled by default**.\n *\n * @param props - The clock props.\n * @param props.formatter - Custom DateTimeFormat for time display.\n * @returns The clock component displaying current time.\n *\n * @example\n * ```tsx\n * // Standard Clock\n * <Clock /> // <time>15:54:14 UTC</time>\n * ```\n *\n * @example\n * ```tsx\n * // Styled\n * <Clock className=\"fg-accent-primary-bold\" />\n * ```\n *\n * @example\n * ```tsx\n * // Custom Format\n * const formatter = new Intl.DateTimeFormat('en-US', {\n * dateStyle: \"short\",\n * timeStyle: 'long',\n * timeZone: 'UTC',\n * hour12: false\n * });\n *\n * <Clock formatter={formatter} /> // <time>9/30/25, 15:54:14 UTC</time>\n * ```\n *\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat| DateTimeFormat MDN}\n */\nexport function Clock({ formatter = DEFAULT_FORMATTER, ...rest }: ClockProps) {\n const now = useCallback(() => formatter.format(Date.now()), [formatter]);\n\n const [time, setTime] = useState<string>(now());\n\n useEffect(() => setClockInterval(() => setTime(now()), 1000), [now]);\n\n return <time {...rest}>{time}</time>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAkBA,MAAM,oBAAoB,IAAI,KAAK,eAAe,SAAS;CACzD,WAAW;CACX,UAAU;CACV,QAAQ;CACT,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCF,SAAgB,MAAM,EAAE,YAAY,mBAAmB,GAAG,QAAoB;CAC5E,MAAM,MAAM,kBAAkB,UAAU,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC;CAExE,MAAM,CAAC,MAAM,WAAW,SAAiB,KAAK,CAAC;AAE/C,iBAAgB,uBAAuB,QAAQ,KAAK,CAAC,EAAE,IAAK,EAAE,CAAC,IAAI,CAAC;AAEpE,QAAO,oBAAC;EAAK,GAAI;YAAO;GAAY"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/clock/index.tsx"],"sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport { setClockInterval } from '@accelint/temporal';\nimport 'client-only';\nimport { useCallback, useEffect, useState } from 'react';\nimport type { ClockProps } from './types';\n\nconst DEFAULT_FORMATTER = new Intl.DateTimeFormat('en-US', {\n timeStyle: 'long',\n timeZone: 'UTC',\n hour12: false,\n});\n\n/**\n * Clock - An auto-updating UTC time component.\n *\n * Uses a {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat|DateTimeFormat} configured with `'en-US', { timeStyle: 'long, timeZone: 'UTC', hour12: false }` by default,\n * but can be overridden with the `formatter` prop.\n *\n * NOTE: This component comes **unstyled by default**.\n *\n * @param props - The clock props.\n * @param props.formatter - Custom DateTimeFormat for time display.\n * @returns The clock component displaying current time.\n *\n * @example\n * ```tsx\n * // Standard Clock\n * <Clock /> // <time>15:54:14 UTC</time>\n * ```\n *\n * @example\n * ```tsx\n * // Styled\n * <Clock className=\"fg-accent-primary-bold\" />\n * ```\n *\n * @example\n * ```tsx\n * // Custom Format\n * const formatter = new Intl.DateTimeFormat('en-US', {\n * dateStyle: \"short\",\n * timeStyle: 'long',\n * timeZone: 'UTC',\n * hour12: false\n * });\n *\n * <Clock formatter={formatter} /> // <time>9/30/25, 15:54:14 UTC</time>\n * ```\n *\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat| DateTimeFormat MDN}\n */\nexport function Clock({ formatter = DEFAULT_FORMATTER, ...rest }: ClockProps) {\n const now = useCallback(() => formatter.format(Date.now()), [formatter]);\n\n const [time, setTime] = useState<string>(now());\n\n useEffect(() => setClockInterval(() => setTime(now()), 1000), [now]);\n\n return (\n <time suppressHydrationWarning {...rest}>\n {time}\n </time>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAkBA,MAAM,oBAAoB,IAAI,KAAK,eAAe,SAAS;CACzD,WAAW;CACX,UAAU;CACV,QAAQ;CACT,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCF,SAAgB,MAAM,EAAE,YAAY,mBAAmB,GAAG,QAAoB;CAC5E,MAAM,MAAM,kBAAkB,UAAU,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC;CAExE,MAAM,CAAC,MAAM,WAAW,SAAiB,KAAK,CAAC;AAE/C,iBAAgB,uBAAuB,QAAQ,KAAK,CAAC,EAAE,IAAK,EAAE,CAAC,IAAI,CAAC;AAEpE,QACE,oBAAC;EAAK;EAAyB,GAAI;YAChC;GACI"}
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { ColorPickerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime40 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime19 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/color-picker/index.d.ts
18
18
 
@@ -62,7 +62,7 @@ declare function ColorPicker({
62
62
  classNames,
63
63
  items,
64
64
  ...rest
65
- }: ColorPickerProps): react_jsx_runtime40.JSX.Element;
65
+ }: ColorPickerProps): react_jsx_runtime19.JSX.Element;
66
66
  //#endregion
67
67
  export { ColorPicker };
68
68
  //# sourceMappingURL=index.d.ts.map
@@ -14,13 +14,13 @@ import { ProviderProps } from "../../lib/types.js";
14
14
  import { OptionsDataItem } from "../options/types.js";
15
15
  import { ComboBoxFieldProps } from "./types.js";
16
16
  import "client-only";
17
- import * as react11 from "react";
17
+ import * as react4 from "react";
18
18
  import { ContextValue } from "react-aria-components";
19
- import * as react_jsx_runtime41 from "react/jsx-runtime";
19
+ import * as react_jsx_runtime20 from "react/jsx-runtime";
20
20
 
21
21
  //#region src/components/combobox-field/context.d.ts
22
22
  /** React context for sharing ComboBoxField configuration across components. */
23
- declare const ComboBoxFieldContext: react11.Context<ContextValue<ComboBoxFieldProps<any>, HTMLDivElement>>;
23
+ declare const ComboBoxFieldContext: react4.Context<ContextValue<ComboBoxFieldProps<any>, HTMLDivElement>>;
24
24
  /**
25
25
  * Context provider for setting default props across multiple ComboBoxField components.
26
26
  *
@@ -39,7 +39,7 @@ declare const ComboBoxFieldContext: react11.Context<ContextValue<ComboBoxFieldPr
39
39
  declare function ComboBoxFieldProvider<T extends OptionsDataItem>({
40
40
  children,
41
41
  ...props
42
- }: ProviderProps<ComboBoxFieldProps<T>>): react_jsx_runtime41.JSX.Element;
42
+ }: ProviderProps<ComboBoxFieldProps<T>>): react_jsx_runtime20.JSX.Element;
43
43
  //#endregion
44
44
  export { ComboBoxFieldContext, ComboBoxFieldProvider };
45
45
  //# sourceMappingURL=context.d.ts.map
@@ -13,7 +13,7 @@
13
13
  import { OptionsDataItem } from "../options/types.js";
14
14
  import { ComboBoxFieldProps } from "./types.js";
15
15
  import "client-only";
16
- import * as react_jsx_runtime42 from "react/jsx-runtime";
16
+ import * as react_jsx_runtime22 from "react/jsx-runtime";
17
17
 
18
18
  //#region src/components/combobox-field/index.d.ts
19
19
 
@@ -43,7 +43,7 @@ import * as react_jsx_runtime42 from "react/jsx-runtime";
43
43
  declare function ComboBoxField<T extends OptionsDataItem>({
44
44
  ref,
45
45
  ...props
46
- }: ComboBoxFieldProps<T>): react_jsx_runtime42.JSX.Element;
46
+ }: ComboBoxFieldProps<T>): react_jsx_runtime22.JSX.Element;
47
47
  //#endregion
48
48
  export { ComboBoxField };
49
49
  //# sourceMappingURL=index.d.ts.map
@@ -16,12 +16,15 @@
16
16
  import { Icon } from "../icon/index.js";
17
17
  import { Label as Label$1 } from "../label/index.js";
18
18
  import { ComboBoxFieldContext } from "./context.js";
19
+ import { ClearButton } from "../button/__internal__/clear.js";
19
20
  import { Options } from "../options/index.js";
20
21
  import "client-only";
22
+ import { useCallback } from "react";
21
23
  import { clsx } from "@accelint/design-foundation/lib/utils";
22
24
  import { Button, ComboBox, FieldError, Input, ListLayout, Popover, Text, Virtualizer, composeRenderProps, useContextProps } from "react-aria-components";
23
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
25
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
24
26
  import ChevronDown from "@accelint/icons/chevron-down";
27
+ import { useControlledState } from "@react-stately/utils";
25
28
  import styles from "./styles.module.css";
26
29
 
27
30
  //#region src/components/combobox-field/index.tsx
@@ -50,9 +53,22 @@ import styles from "./styles.module.css";
50
53
  */
51
54
  function ComboBoxField({ ref, ...props }) {
52
55
  [props, ref] = useContextProps(props, ref ?? null, ComboBoxFieldContext);
53
- const { children, classNames, description: descriptionProp, errorMessage: errorMessageProp, inputProps, label: labelProp, layoutOptions, menuTrigger = "focus", size = "medium", isInvalid: isInvalidProp, isReadOnly = false, ...rest } = props;
56
+ const { children, classNames, description: descriptionProp, errorMessage: errorMessageProp, inputProps, inputValue: inputValueProp, defaultInputValue = "", label: labelProp, layoutOptions, menuTrigger = "focus", size = "medium", isInvalid: isInvalidProp, isReadOnly = false, isClearable = true, onInputChange, onKeyDown, ...rest } = props;
57
+ const [inputValue, setInputValue] = useControlledState(inputValueProp, defaultInputValue, onInputChange);
54
58
  const errorMessage = errorMessageProp || null;
55
59
  const isSmall = size === "small";
60
+ const handleClear = useCallback(() => {
61
+ setInputValue("");
62
+ }, [setInputValue]);
63
+ const handleKeyDown = useCallback((event) => {
64
+ onKeyDown?.(event);
65
+ if (isClearable && event.key === "Escape" && inputValue) handleClear();
66
+ }, [
67
+ onKeyDown,
68
+ isClearable,
69
+ handleClear,
70
+ inputValue
71
+ ]);
56
72
  return /* @__PURE__ */ jsx(ComboBox, {
57
73
  ...rest,
58
74
  ref,
@@ -60,10 +76,14 @@ function ComboBoxField({ ref, ...props }) {
60
76
  menuTrigger,
61
77
  isInvalid: isInvalidProp || (errorMessage ? true : void 0),
62
78
  isReadOnly,
79
+ inputValue,
80
+ onInputChange: setInputValue,
81
+ onKeyDown: handleKeyDown,
63
82
  "data-size": size,
83
+ "data-empty": !inputValue || null,
64
84
  children: ({ isDisabled, isInvalid, isRequired }) => {
65
85
  const shouldShowDescription = !isReadOnly && !!descriptionProp && !(isSmall || isInvalid);
66
- return /* @__PURE__ */ jsxs(Fragment, { children: [
86
+ return /* @__PURE__ */ jsxs(Fragment$1, { children: [
67
87
  !!labelProp && !isSmall && /* @__PURE__ */ jsx(Label$1, {
68
88
  className: clsx(styles.label, classNames?.label),
69
89
  isDisabled,
@@ -73,18 +93,26 @@ function ComboBoxField({ ref, ...props }) {
73
93
  /* @__PURE__ */ jsxs("div", {
74
94
  className: clsx(styles.control, classNames?.control),
75
95
  "data-readonly": isReadOnly || null,
76
- children: [/* @__PURE__ */ jsx(Input, {
77
- ...inputProps,
78
- tabIndex: isReadOnly ? -1 : 0,
79
- className: composeRenderProps(classNames?.input, (className) => clsx(styles.input, className)),
80
- title: inputProps?.value ? String(inputProps?.value) : ""
81
- }), !isReadOnly && /* @__PURE__ */ jsx(Button, {
82
- className: composeRenderProps(classNames?.trigger, (className) => clsx(styles.trigger, className)),
83
- children: /* @__PURE__ */ jsx(Icon, {
84
- size: "small",
85
- children: /* @__PURE__ */ jsx(ChevronDown, {})
96
+ children: [
97
+ /* @__PURE__ */ jsx(Input, {
98
+ ...inputProps,
99
+ tabIndex: isReadOnly ? -1 : 0,
100
+ className: composeRenderProps(classNames?.input, (className) => clsx(styles.input, className)),
101
+ title: inputProps?.value ? String(inputProps?.value) : ""
102
+ }),
103
+ !isReadOnly && isClearable && /* @__PURE__ */ jsx(ClearButton, {
104
+ className: composeRenderProps(classNames?.clear, (className) => clsx(styles.clear, className)),
105
+ isDisabled,
106
+ onPress: handleClear
107
+ }),
108
+ !isReadOnly && /* @__PURE__ */ jsx(Button, {
109
+ className: composeRenderProps(classNames?.trigger, (className) => clsx(styles.trigger, className)),
110
+ children: /* @__PURE__ */ jsx(Icon, {
111
+ size: "small",
112
+ children: /* @__PURE__ */ jsx(ChevronDown, {})
113
+ })
86
114
  })
87
- })]
115
+ ]
88
116
  }),
89
117
  shouldShowDescription && /* @__PURE__ */ jsx(Text, {
90
118
  className: clsx(styles.description, classNames?.description),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Label"],"sources":["../../../src/components/combobox-field/index.tsx"],"sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport ChevronDown from '@accelint/icons/chevron-down';\nimport {\n Button,\n ComboBox,\n composeRenderProps,\n FieldError,\n Input,\n ListLayout,\n Popover,\n Text,\n useContextProps,\n Virtualizer,\n} from 'react-aria-components';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { Options } from '../options';\nimport { ComboBoxFieldContext } from './context';\nimport styles from './styles.module.css';\nimport type { OptionsDataItem } from '../options/types';\nimport type { ComboBoxFieldProps } from './types';\n\n/**\n * ComboBoxField - Accessible searchable combobox with dropdown options\n *\n * A combobox field that provides a searchable input with virtualized dropdown\n * options and support for sections, icons, and rich content.\n *\n * @param props - The combobox field props.\n * @param props.ref - Reference to the field element.\n * @param props.children - Render function for options.\n * @param props.classNames - Custom class names for sub-elements.\n * @param props.label - Label text displayed above the field.\n * @param props.description - Helper text displayed below the field.\n * @param props.errorMessage - Error message displayed when invalid.\n * @param props.size - Size variant of the field.\n * @returns The combobox field component.\n *\n * @example\n * ```tsx\n * <ComboBoxField defaultItems={items}>\n * {(item) => <OptionsItem key={item.id} textValue={item.name}>{item.name}</OptionsItem>}\n * </ComboBoxField>\n * ```\n */\nexport function ComboBoxField<T extends OptionsDataItem>({\n ref,\n ...props\n}: ComboBoxFieldProps<T>) {\n [props, ref] = useContextProps(props, ref ?? null, ComboBoxFieldContext);\n\n const {\n children,\n classNames,\n description: descriptionProp,\n errorMessage: errorMessageProp,\n inputProps,\n label: labelProp,\n layoutOptions,\n menuTrigger = 'focus',\n size = 'medium',\n isInvalid: isInvalidProp,\n isReadOnly = false,\n ...rest\n } = props;\n const errorMessage = errorMessageProp || null; // Protect against empty string\n const isSmall = size === 'small';\n\n return (\n <ComboBox<T>\n {...rest}\n ref={ref}\n className={composeRenderProps(classNames?.field, (className) =>\n clsx('group/combobox-field', styles.field, className),\n )}\n menuTrigger={menuTrigger}\n isInvalid={isInvalidProp || (errorMessage ? true : undefined)} // Leave uncontrolled if possible to fallback to validation state\n isReadOnly={isReadOnly}\n data-size={size}\n >\n {(\n { isDisabled, isInvalid, isRequired }, // Rely on internal state, not props, since state could differ from props\n ) => {\n const shouldShowDescription =\n !isReadOnly && !!descriptionProp && !(isSmall || isInvalid);\n\n return (\n <>\n {!!labelProp && !isSmall && (\n <Label\n className={clsx(styles.label, classNames?.label)}\n isDisabled={isDisabled}\n isRequired={isRequired}\n >\n {labelProp}\n </Label>\n )}\n <div\n className={clsx(styles.control, classNames?.control)}\n data-readonly={isReadOnly || null}\n >\n <Input\n {...inputProps}\n tabIndex={isReadOnly ? -1 : 0}\n className={composeRenderProps(classNames?.input, (className) =>\n clsx(styles.input, className),\n )}\n title={inputProps?.value ? String(inputProps?.value) : ''}\n />\n {!isReadOnly && (\n <Button\n className={composeRenderProps(\n classNames?.trigger,\n (className) => clsx(styles.trigger, className),\n )}\n >\n <Icon size='small'>\n <ChevronDown />\n </Icon>\n </Button>\n )}\n </div>\n {shouldShowDescription && (\n <Text\n className={clsx(styles.description, classNames?.description)}\n slot='description'\n >\n {descriptionProp}\n </Text>\n )}\n <FieldError\n className={composeRenderProps(classNames?.error, (className) =>\n clsx(styles.error, className),\n )}\n >\n {errorMessage}\n </FieldError>\n <Popover\n className={composeRenderProps(classNames?.popover, (className) =>\n clsx(styles.popover, className),\n )}\n >\n <Virtualizer layout={ListLayout} layoutOptions={layoutOptions}>\n <Options>{children}</Options>\n </Virtualizer>\n </Popover>\n </>\n );\n }}\n </ComboBox>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DA,SAAgB,cAAyC,EACvD,KACA,GAAG,SACqB;AACxB,EAAC,OAAO,OAAO,gBAAgB,OAAO,OAAO,MAAM,qBAAqB;CAExE,MAAM,EACJ,UACA,YACA,aAAa,iBACb,cAAc,kBACd,YACA,OAAO,WACP,eACA,cAAc,SACd,OAAO,UACP,WAAW,eACX,aAAa,OACb,GAAG,SACD;CACJ,MAAM,eAAe,oBAAoB;CACzC,MAAM,UAAU,SAAS;AAEzB,QACE,oBAAC;EACC,GAAI;EACC;EACL,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,wBAAwB,OAAO,OAAO,UAAU,CACtD;EACY;EACb,WAAW,kBAAkB,eAAe,OAAO;EACvC;EACZ,aAAW;aAGT,EAAE,YAAY,WAAW,iBACtB;GACH,MAAM,wBACJ,CAAC,cAAc,CAAC,CAAC,mBAAmB,EAAE,WAAW;AAEnD,UACE;IACG,CAAC,CAAC,aAAa,CAAC,WACf,oBAACA;KACC,WAAW,KAAK,OAAO,OAAO,YAAY,MAAM;KACpC;KACA;eAEX;MACK;IAEV,qBAAC;KACC,WAAW,KAAK,OAAO,SAAS,YAAY,QAAQ;KACpD,iBAAe,cAAc;gBAE7B,oBAAC;MACC,GAAI;MACJ,UAAU,aAAa,KAAK;MAC5B,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;MACD,OAAO,YAAY,QAAQ,OAAO,YAAY,MAAM,GAAG;OACvD,EACD,CAAC,cACA,oBAAC;MACC,WAAW,mBACT,YAAY,UACX,cAAc,KAAK,OAAO,SAAS,UAAU,CAC/C;gBAED,oBAAC;OAAK,MAAK;iBACT,oBAAC,gBAAc;QACV;OACA;MAEP;IACL,yBACC,oBAAC;KACC,WAAW,KAAK,OAAO,aAAa,YAAY,YAAY;KAC5D,MAAK;eAEJ;MACI;IAET,oBAAC;KACC,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;eAEA;MACU;IACb,oBAAC;KACC,WAAW,mBAAmB,YAAY,UAAU,cAClD,KAAK,OAAO,SAAS,UAAU,CAChC;eAED,oBAAC;MAAY,QAAQ;MAA2B;gBAC9C,oBAAC,WAAS,WAAmB;OACjB;MACN;OACT;;GAGE"}
1
+ {"version":3,"file":"index.js","names":["Label"],"sources":["../../../src/components/combobox-field/index.tsx"],"sourcesContent":["/*\n * Copyright 2025 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport ChevronDown from '@accelint/icons/chevron-down';\nimport { useControlledState } from '@react-stately/utils';\nimport { useCallback } from 'react';\nimport {\n Button,\n ComboBox,\n type ComboBoxProps,\n composeRenderProps,\n FieldError,\n Input,\n ListLayout,\n Popover,\n Text,\n useContextProps,\n Virtualizer,\n} from 'react-aria-components';\nimport { ClearButton } from '../button/__internal__/clear';\nimport { Icon } from '../icon';\nimport { Label } from '../label';\nimport { Options } from '../options';\nimport { ComboBoxFieldContext } from './context';\nimport styles from './styles.module.css';\nimport type { OptionsDataItem } from '../options/types';\nimport type { ComboBoxFieldProps } from './types';\n\n/**\n * ComboBoxField - Accessible searchable combobox with dropdown options\n *\n * A combobox field that provides a searchable input with virtualized dropdown\n * options and support for sections, icons, and rich content.\n *\n * @param props - The combobox field props.\n * @param props.ref - Reference to the field element.\n * @param props.children - Render function for options.\n * @param props.classNames - Custom class names for sub-elements.\n * @param props.label - Label text displayed above the field.\n * @param props.description - Helper text displayed below the field.\n * @param props.errorMessage - Error message displayed when invalid.\n * @param props.size - Size variant of the field.\n * @returns The combobox field component.\n *\n * @example\n * ```tsx\n * <ComboBoxField defaultItems={items}>\n * {(item) => <OptionsItem key={item.id} textValue={item.name}>{item.name}</OptionsItem>}\n * </ComboBoxField>\n * ```\n */\nexport function ComboBoxField<T extends OptionsDataItem>({\n ref,\n ...props\n}: ComboBoxFieldProps<T>) {\n [props, ref] = useContextProps(props, ref ?? null, ComboBoxFieldContext);\n\n const {\n children,\n classNames,\n description: descriptionProp,\n errorMessage: errorMessageProp,\n inputProps,\n inputValue: inputValueProp,\n defaultInputValue = '',\n label: labelProp,\n layoutOptions,\n menuTrigger = 'focus',\n size = 'medium',\n isInvalid: isInvalidProp,\n isReadOnly = false,\n isClearable = true,\n onInputChange,\n onKeyDown,\n ...rest\n } = props;\n\n const [inputValue, setInputValue] = useControlledState(\n inputValueProp,\n defaultInputValue,\n onInputChange,\n );\n\n const errorMessage = errorMessageProp || null; // Protect against empty string\n const isSmall = size === 'small';\n\n const handleClear = useCallback(() => {\n setInputValue('');\n }, [setInputValue]);\n\n const handleKeyDown = useCallback<Required<ComboBoxProps<T>>['onKeyDown']>(\n (event) => {\n onKeyDown?.(event);\n if (isClearable && event.key === 'Escape' && inputValue) {\n handleClear();\n }\n },\n [onKeyDown, isClearable, handleClear, inputValue],\n );\n\n return (\n <ComboBox<T>\n {...rest}\n ref={ref}\n className={composeRenderProps(classNames?.field, (className) =>\n clsx('group/combobox-field', styles.field, className),\n )}\n menuTrigger={menuTrigger}\n isInvalid={isInvalidProp || (errorMessage ? true : undefined)} // Leave uncontrolled if possible to fallback to validation state\n isReadOnly={isReadOnly}\n inputValue={inputValue}\n onInputChange={setInputValue}\n onKeyDown={handleKeyDown}\n data-size={size}\n data-empty={!inputValue || null}\n >\n {({ isDisabled, isInvalid, isRequired }) => {\n const shouldShowDescription =\n !isReadOnly && !!descriptionProp && !(isSmall || isInvalid);\n\n return (\n <>\n {!!labelProp && !isSmall && (\n <Label\n className={clsx(styles.label, classNames?.label)}\n isDisabled={isDisabled}\n isRequired={isRequired}\n >\n {labelProp}\n </Label>\n )}\n <div\n className={clsx(styles.control, classNames?.control)}\n data-readonly={isReadOnly || null}\n >\n <Input\n {...inputProps}\n tabIndex={isReadOnly ? -1 : 0}\n className={composeRenderProps(classNames?.input, (className) =>\n clsx(styles.input, className),\n )}\n title={inputProps?.value ? String(inputProps?.value) : ''}\n />\n {!isReadOnly && isClearable && (\n <ClearButton\n className={composeRenderProps(\n classNames?.clear,\n (className) => clsx(styles.clear, className),\n )}\n isDisabled={isDisabled}\n onPress={handleClear}\n />\n )}\n {!isReadOnly && (\n <Button\n className={composeRenderProps(\n classNames?.trigger,\n (className) => clsx(styles.trigger, className),\n )}\n >\n <Icon size='small'>\n <ChevronDown />\n </Icon>\n </Button>\n )}\n </div>\n {shouldShowDescription && (\n <Text\n className={clsx(styles.description, classNames?.description)}\n slot='description'\n >\n {descriptionProp}\n </Text>\n )}\n <FieldError\n className={composeRenderProps(classNames?.error, (className) =>\n clsx(styles.error, className),\n )}\n >\n {errorMessage}\n </FieldError>\n <Popover\n className={composeRenderProps(classNames?.popover, (className) =>\n clsx(styles.popover, className),\n )}\n >\n <Virtualizer layout={ListLayout} layoutOptions={layoutOptions}>\n <Options>{children}</Options>\n </Virtualizer>\n </Popover>\n </>\n );\n }}\n </ComboBox>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8DA,SAAgB,cAAyC,EACvD,KACA,GAAG,SACqB;AACxB,EAAC,OAAO,OAAO,gBAAgB,OAAO,OAAO,MAAM,qBAAqB;CAExE,MAAM,EACJ,UACA,YACA,aAAa,iBACb,cAAc,kBACd,YACA,YAAY,gBACZ,oBAAoB,IACpB,OAAO,WACP,eACA,cAAc,SACd,OAAO,UACP,WAAW,eACX,aAAa,OACb,cAAc,MACd,eACA,WACA,GAAG,SACD;CAEJ,MAAM,CAAC,YAAY,iBAAiB,mBAClC,gBACA,mBACA,cACD;CAED,MAAM,eAAe,oBAAoB;CACzC,MAAM,UAAU,SAAS;CAEzB,MAAM,cAAc,kBAAkB;AACpC,gBAAc,GAAG;IAChB,CAAC,cAAc,CAAC;CAEnB,MAAM,gBAAgB,aACnB,UAAU;AACT,cAAY,MAAM;AAClB,MAAI,eAAe,MAAM,QAAQ,YAAY,WAC3C,cAAa;IAGjB;EAAC;EAAW;EAAa;EAAa;EAAW,CAClD;AAED,QACE,oBAAC;EACC,GAAI;EACC;EACL,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,wBAAwB,OAAO,OAAO,UAAU,CACtD;EACY;EACb,WAAW,kBAAkB,eAAe,OAAO;EACvC;EACA;EACZ,eAAe;EACf,WAAW;EACX,aAAW;EACX,cAAY,CAAC,cAAc;aAEzB,EAAE,YAAY,WAAW,iBAAiB;GAC1C,MAAM,wBACJ,CAAC,cAAc,CAAC,CAAC,mBAAmB,EAAE,WAAW;AAEnD,UACE;IACG,CAAC,CAAC,aAAa,CAAC,WACf,oBAACA;KACC,WAAW,KAAK,OAAO,OAAO,YAAY,MAAM;KACpC;KACA;eAEX;MACK;IAEV,qBAAC;KACC,WAAW,KAAK,OAAO,SAAS,YAAY,QAAQ;KACpD,iBAAe,cAAc;;MAE7B,oBAAC;OACC,GAAI;OACJ,UAAU,aAAa,KAAK;OAC5B,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;OACD,OAAO,YAAY,QAAQ,OAAO,YAAY,MAAM,GAAG;QACvD;MACD,CAAC,cAAc,eACd,oBAAC;OACC,WAAW,mBACT,YAAY,QACX,cAAc,KAAK,OAAO,OAAO,UAAU,CAC7C;OACW;OACZ,SAAS;QACT;MAEH,CAAC,cACA,oBAAC;OACC,WAAW,mBACT,YAAY,UACX,cAAc,KAAK,OAAO,SAAS,UAAU,CAC/C;iBAED,oBAAC;QAAK,MAAK;kBACT,oBAAC,gBAAc;SACV;QACA;;MAEP;IACL,yBACC,oBAAC;KACC,WAAW,KAAK,OAAO,aAAa,YAAY,YAAY;KAC5D,MAAK;eAEJ;MACI;IAET,oBAAC;KACC,WAAW,mBAAmB,YAAY,QAAQ,cAChD,KAAK,OAAO,OAAO,UAAU,CAC9B;eAEA;MACU;IACb,oBAAC;KACC,WAAW,mBAAmB,YAAY,UAAU,cAClD,KAAK,OAAO,SAAS,UAAU,CAChC;eAED,oBAAC;MAAY,QAAQ;MAA2B;gBAC9C,oBAAC,WAAS,WAAmB;OACjB;MACN;OACT;;GAGE"}
@@ -14,11 +14,11 @@
14
14
 
15
15
  @layer components.l1 {
16
16
  .field {
17
- @apply gap-xs flex flex-col;
17
+ @apply gap-xs flex flex-col select-none;
18
18
  }
19
19
 
20
20
  .control {
21
- @apply rounded-medium px-s py-xs fg-primary-bold outline-interactive flex items-center outline;
21
+ @apply rounded-medium px-s py-xs fg-primary-bold outline-interactive gap-xs flex items-center outline;
22
22
 
23
23
  @variant placeholder {
24
24
  @apply fg-primary-muted;
@@ -99,7 +99,19 @@
99
99
 
100
100
  .popover {
101
101
  --trigger-width: initial; /* is inlined by react aria components on render */
102
- @apply -ml-s;
102
+ @apply -ml-s select-none;
103
103
  min-width: calc(var(--trigger-width) + (var(--spacing-s) * 2));
104
104
  }
105
105
  }
106
+
107
+ @layer components.l2 {
108
+ .clear {
109
+ @apply invisible;
110
+
111
+ @variant group-focus-within/combobox-field {
112
+ @variant group-not-data-empty/combobox-field {
113
+ @apply visible;
114
+ }
115
+ }
116
+ }
117
+ }
@@ -32,6 +32,8 @@ type ComboBoxFieldProps<T extends OptionsDataItem> = Omit<ComboBoxProps<T>, 'chi
32
32
  control?: string;
33
33
  /** Class name for the input element. */
34
34
  input?: InputProps['className'];
35
+ /** Class name for the clear button. */
36
+ clear?: ButtonProps$1['className'];
35
37
  /** Class name for the trigger button. */
36
38
  trigger?: ButtonProps$1['className'];
37
39
  /** Class name for the description text. */
@@ -51,6 +53,8 @@ type ComboBoxFieldProps<T extends OptionsDataItem> = Omit<ComboBoxProps<T>, 'chi
51
53
  errorMessage?: string;
52
54
  /** Size variant of the field. */
53
55
  size?: 'small' | 'medium';
56
+ /** Whether the field shows a clear button. Will not show if the field is read-only. */
57
+ isClearable?: boolean;
54
58
  };
55
59
  //#endregion
56
60
  export { ComboBoxFieldProps };
@@ -12,9 +12,9 @@
12
12
 
13
13
  import { ProviderProps } from "../../lib/types.js";
14
14
  import { CoordinateFieldProps, CoordinateFieldState } from "./types.js";
15
- import * as react12 from "react";
15
+ import * as react5 from "react";
16
16
  import { ContextValue } from "react-aria-components";
17
- import * as react_jsx_runtime43 from "react/jsx-runtime";
17
+ import * as react_jsx_runtime24 from "react/jsx-runtime";
18
18
 
19
19
  //#region src/components/coordinate-field/context.d.ts
20
20
 
@@ -48,7 +48,7 @@ import * as react_jsx_runtime43 from "react/jsx-runtime";
48
48
  *
49
49
  * @see CoordinateFieldStateContext for internal runtime state
50
50
  */
51
- declare const CoordinateFieldContext: react12.Context<ContextValue<CoordinateFieldProps, HTMLDivElement>>;
51
+ declare const CoordinateFieldContext: react5.Context<ContextValue<CoordinateFieldProps, HTMLDivElement>>;
52
52
  /**
53
53
  * State Context for CoordinateField component.
54
54
  *
@@ -66,7 +66,7 @@ declare const CoordinateFieldContext: react12.Context<ContextValue<CoordinateFie
66
66
  * const state = useCoordinateFieldStateContext();
67
67
  * const { segmentValues, isDisabled, registerTimeout } = state;
68
68
  */
69
- declare const CoordinateFieldStateContext: react12.Context<CoordinateFieldState | null>;
69
+ declare const CoordinateFieldStateContext: react5.Context<CoordinateFieldState | null>;
70
70
  /**
71
71
  * Provider component for CoordinateField context
72
72
  * Wraps children with CoordinateFieldContext
@@ -78,7 +78,7 @@ declare const CoordinateFieldStateContext: react12.Context<CoordinateFieldState
78
78
  declare function CoordinateFieldProvider({
79
79
  children,
80
80
  ...props
81
- }: ProviderProps<CoordinateFieldProps>): react_jsx_runtime43.JSX.Element;
81
+ }: ProviderProps<CoordinateFieldProps>): react_jsx_runtime24.JSX.Element;
82
82
  /**
83
83
  * Provider component for CoordinateField state context
84
84
  * Wraps children with CoordinateFieldStateContext
@@ -94,7 +94,7 @@ declare function CoordinateFieldStateProvider({
94
94
  }: {
95
95
  children: React.ReactNode;
96
96
  value: CoordinateFieldState;
97
- }): react_jsx_runtime43.JSX.Element;
97
+ }): react_jsx_runtime24.JSX.Element;
98
98
  /**
99
99
  * Hook to access CoordinateField state context
100
100
  * Must be used within a CoordinateField component
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { CoordinateFieldProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime46 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime62 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/coordinate-field/index.d.ts
18
18
 
@@ -104,7 +104,7 @@ import * as react_jsx_runtime46 from "react/jsx-runtime";
104
104
  declare function CoordinateField({
105
105
  ref,
106
106
  ...props
107
- }: CoordinateFieldProps): react_jsx_runtime46.JSX.Element;
107
+ }: CoordinateFieldProps): react_jsx_runtime62.JSX.Element;
108
108
  //#endregion
109
109
  export { CoordinateField };
110
110
  //# sourceMappingURL=index.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { CoordinateSegmentProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime49 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime63 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/coordinate-field/segment.d.ts
18
18
 
@@ -91,7 +91,7 @@ declare function CoordinateSegment({
91
91
  onAutoRetreat,
92
92
  pad,
93
93
  ariaLabel
94
- }: CoordinateSegmentProps): react_jsx_runtime49.JSX.Element;
94
+ }: CoordinateSegmentProps): react_jsx_runtime63.JSX.Element;
95
95
  //#endregion
96
96
  export { CoordinateSegment };
97
97
  //# sourceMappingURL=segment.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DateFieldProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime51 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime64 from "react/jsx-runtime";
16
16
  import { DateValue } from "@internationalized/date";
17
17
 
18
18
  //#region src/components/date-field/index.d.ts
@@ -100,7 +100,7 @@ declare function DateField<T extends DateValue>({
100
100
  isRequired,
101
101
  isReadOnly,
102
102
  ...rest
103
- }: DateFieldProps<T>): react_jsx_runtime51.JSX.Element;
103
+ }: DateFieldProps<T>): react_jsx_runtime64.JSX.Element;
104
104
  //#endregion
105
105
  export { DateField };
106
106
  //# sourceMappingURL=index.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DeferredCollectionProps } from "./types.js";
14
- import * as react_jsx_runtime52 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime7 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/deferred-collection/index.d.ts
17
17
 
@@ -45,7 +45,7 @@ declare function DeferredCollection({
45
45
  children,
46
46
  fallback,
47
47
  deferFrames
48
- }: DeferredCollectionProps): react_jsx_runtime52.JSX.Element;
48
+ }: DeferredCollectionProps): react_jsx_runtime7.JSX.Element;
49
49
  //#endregion
50
50
  export { DeferredCollection, type DeferredCollectionProps };
51
51
  //# sourceMappingURL=index.d.ts.map
@@ -13,15 +13,15 @@
13
13
  import { ProviderProps } from "../../lib/types.js";
14
14
  import { DetailsListProps } from "./types.js";
15
15
  import "client-only";
16
- import * as react15 from "react";
16
+ import * as react1 from "react";
17
17
  import { ContextValue } from "react-aria-components";
18
- import * as react_jsx_runtime53 from "react/jsx-runtime";
18
+ import * as react_jsx_runtime10 from "react/jsx-runtime";
19
19
 
20
20
  //#region src/components/details-list/context.d.ts
21
21
  /**
22
22
  * Context for sharing DetailsList props across component tree.
23
23
  */
24
- declare const DetailsListContext: react15.Context<ContextValue<DetailsListProps, HTMLDListElement>>;
24
+ declare const DetailsListContext: react1.Context<ContextValue<DetailsListProps, HTMLDListElement>>;
25
25
  /**
26
26
  * DetailsListProvider - Context provider for setting default DetailsList props.
27
27
  *
@@ -43,7 +43,7 @@ declare const DetailsListContext: react15.Context<ContextValue<DetailsListProps,
43
43
  declare function DetailsListProvider({
44
44
  children,
45
45
  ...props
46
- }: ProviderProps<DetailsListProps>): react_jsx_runtime53.JSX.Element;
46
+ }: ProviderProps<DetailsListProps>): react_jsx_runtime10.JSX.Element;
47
47
  //#endregion
48
48
  export { DetailsListContext, DetailsListProvider };
49
49
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DetailsListProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime55 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime11 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/details-list/index.d.ts
18
18
 
@@ -55,7 +55,7 @@ import * as react_jsx_runtime55 from "react/jsx-runtime";
55
55
  declare function DetailsList({
56
56
  ref,
57
57
  ...props
58
- }: DetailsListProps): react_jsx_runtime55.JSX.Element;
58
+ }: DetailsListProps): react_jsx_runtime11.JSX.Element;
59
59
  //#endregion
60
60
  export { DetailsList };
61
61
  //# sourceMappingURL=index.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DetailsListLabelProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime54 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime12 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/details-list/label.d.ts
18
18
  /**
@@ -31,7 +31,7 @@ import * as react_jsx_runtime54 from "react/jsx-runtime";
31
31
  * </DetailsList>
32
32
  * ```
33
33
  */
34
- declare function DetailsListLabel(props: DetailsListLabelProps): react_jsx_runtime54.JSX.Element;
34
+ declare function DetailsListLabel(props: DetailsListLabelProps): react_jsx_runtime12.JSX.Element;
35
35
  //#endregion
36
36
  export { DetailsListLabel };
37
37
  //# sourceMappingURL=label.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DetailsListValueProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime17 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime13 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/details-list/value.d.ts
18
18
 
@@ -33,7 +33,7 @@ import * as react_jsx_runtime17 from "react/jsx-runtime";
33
33
  * </DetailsList>
34
34
  * ```
35
35
  */
36
- declare function DetailsListValue(props: DetailsListValueProps): react_jsx_runtime17.JSX.Element;
36
+ declare function DetailsListValue(props: DetailsListValueProps): react_jsx_runtime13.JSX.Element;
37
37
  //#endregion
38
38
  export { DetailsListValue };
39
39
  //# sourceMappingURL=value.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import "client-only";
14
14
  import { ComponentProps } from "react";
15
- import * as react_jsx_runtime56 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime26 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/dialog/content.d.ts
18
18
 
@@ -39,7 +39,7 @@ import * as react_jsx_runtime56 from "react/jsx-runtime";
39
39
  declare function DialogContent({
40
40
  children,
41
41
  className
42
- }: ComponentProps<'div'>): react_jsx_runtime56.JSX.Element;
42
+ }: ComponentProps<'div'>): react_jsx_runtime26.JSX.Element;
43
43
  //#endregion
44
44
  export { DialogContent };
45
45
  //# sourceMappingURL=content.d.ts.map
@@ -12,14 +12,14 @@
12
12
 
13
13
  import { DialogProps as DialogProps$1 } from "./types.js";
14
14
  import "client-only";
15
- import * as react16 from "react";
15
+ import * as react2 from "react";
16
16
  import { ContextValue } from "react-aria-components";
17
17
 
18
18
  //#region src/components/dialog/context.d.ts
19
19
  /**
20
20
  * Context for sharing Dialog props across component tree.
21
21
  */
22
- declare const DialogContext: react16.Context<ContextValue<DialogProps$1, HTMLDivElement>>;
22
+ declare const DialogContext: react2.Context<ContextValue<DialogProps$1, HTMLDivElement>>;
23
23
  //#endregion
24
24
  export { DialogContext };
25
25
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import "client-only";
14
14
  import { ComponentProps } from "react";
15
- import * as react_jsx_runtime58 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime14 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/dialog/footer.d.ts
18
18
 
@@ -42,7 +42,7 @@ import * as react_jsx_runtime58 from "react/jsx-runtime";
42
42
  declare function DialogFooter({
43
43
  children,
44
44
  className
45
- }: ComponentProps<'footer'>): react_jsx_runtime58.JSX.Element;
45
+ }: ComponentProps<'footer'>): react_jsx_runtime14.JSX.Element;
46
46
  //#endregion
47
47
  export { DialogFooter };
48
48
  //# sourceMappingURL=footer.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DialogProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime111 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime16 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/dialog/index.d.ts
18
18
 
@@ -53,7 +53,7 @@ import * as react_jsx_runtime111 from "react/jsx-runtime";
53
53
  declare function Dialog({
54
54
  ref,
55
55
  ...props
56
- }: DialogProps): react_jsx_runtime111.JSX.Element;
56
+ }: DialogProps): react_jsx_runtime16.JSX.Element;
57
57
  //#endregion
58
58
  export { Dialog };
59
59
  //# sourceMappingURL=index.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import "client-only";
14
14
  import { HeadingProps } from "react-aria-components";
15
- import * as react_jsx_runtime100 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime18 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/dialog/title.d.ts
18
18
 
@@ -37,7 +37,7 @@ import * as react_jsx_runtime100 from "react/jsx-runtime";
37
37
  declare function DialogTitle({
38
38
  children,
39
39
  className
40
- }: HeadingProps): react_jsx_runtime100.JSX.Element;
40
+ }: HeadingProps): react_jsx_runtime18.JSX.Element;
41
41
  //#endregion
42
42
  export { DialogTitle };
43
43
  //# sourceMappingURL=title.d.ts.map
@@ -13,15 +13,15 @@
13
13
  import { ProviderProps } from "../../lib/types.js";
14
14
  import { DividerProps } from "./types.js";
15
15
  import "client-only";
16
- import * as react26 from "react";
16
+ import * as react3 from "react";
17
17
  import { ContextValue } from "react-aria-components";
18
- import * as react_jsx_runtime105 from "react/jsx-runtime";
18
+ import * as react_jsx_runtime15 from "react/jsx-runtime";
19
19
 
20
20
  //#region src/components/divider/context.d.ts
21
21
  /**
22
22
  * Context for sharing Divider props across component tree.
23
23
  */
24
- declare const DividerContext: react26.Context<ContextValue<DividerProps, HTMLHRElement>>;
24
+ declare const DividerContext: react3.Context<ContextValue<DividerProps, HTMLHRElement>>;
25
25
  /**
26
26
  * DividerProvider - Context provider for setting default Divider props.
27
27
  *
@@ -42,7 +42,7 @@ declare const DividerContext: react26.Context<ContextValue<DividerProps, HTMLHRE
42
42
  declare function DividerProvider({
43
43
  children,
44
44
  ...props
45
- }: ProviderProps<DividerProps>): react_jsx_runtime105.JSX.Element;
45
+ }: ProviderProps<DividerProps>): react_jsx_runtime15.JSX.Element;
46
46
  //#endregion
47
47
  export { DividerContext, DividerProvider };
48
48
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DividerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime108 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime17 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/divider/index.d.ts
18
18
 
@@ -43,7 +43,7 @@ import * as react_jsx_runtime108 from "react/jsx-runtime";
43
43
  declare function Divider({
44
44
  ref,
45
45
  ...props
46
- }: DividerProps): react_jsx_runtime108.JSX.Element;
46
+ }: DividerProps): react_jsx_runtime17.JSX.Element;
47
47
  //#endregion
48
48
  export { Divider };
49
49
  //# sourceMappingURL=index.d.ts.map