@wow-two-beta/ui 0.0.56 → 0.0.58

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 (1158) hide show
  1. package/dist/actions/backToTopButton/BackToTopButton.d.ts +0 -1
  2. package/dist/actions/backToTopButton/index.d.ts +0 -1
  3. package/dist/actions/button/Button.d.ts +0 -10
  4. package/dist/actions/button/Button.variants.d.ts +0 -1
  5. package/dist/actions/button/index.d.ts +0 -1
  6. package/dist/actions/buttonGroup/ButtonGroup.d.ts +2 -3
  7. package/dist/actions/buttonGroup/index.d.ts +0 -1
  8. package/dist/actions/copyButton/CopyButton.d.ts +0 -1
  9. package/dist/actions/copyButton/index.d.ts +0 -1
  10. package/dist/actions/disclosureButton/DisclosureButton.d.ts +1 -2
  11. package/dist/actions/disclosureButton/index.d.ts +0 -1
  12. package/dist/actions/fab/FAB.d.ts +0 -1
  13. package/dist/actions/fab/FAB.variants.d.ts +0 -1
  14. package/dist/actions/fab/index.d.ts +0 -1
  15. package/dist/actions/index.d.ts +0 -1
  16. package/dist/actions/index.js +8 -8
  17. package/dist/actions/link/Link.d.ts +0 -1
  18. package/dist/actions/link/Link.variants.d.ts +0 -1
  19. package/dist/actions/link/index.d.ts +0 -1
  20. package/dist/actions/segmentedControl/SegmentedControl.d.ts +0 -1
  21. package/dist/actions/segmentedControl/index.d.ts +0 -1
  22. package/dist/actions/speedDial/SpeedDial.d.ts +2 -3
  23. package/dist/actions/speedDial/index.d.ts +0 -1
  24. package/dist/actions/toggleButton/ToggleButton.d.ts +1 -2
  25. package/dist/actions/toggleButton/ToggleButton.variants.d.ts +0 -1
  26. package/dist/actions/toggleButton/index.d.ts +0 -1
  27. package/dist/actions/toggleButtonGroup/ToggleButtonGroup.d.ts +1 -2
  28. package/dist/actions/toggleButtonGroup/index.d.ts +0 -1
  29. package/dist/actions/toolbar/Toolbar.d.ts +0 -1
  30. package/dist/actions/toolbar/index.d.ts +0 -1
  31. package/dist/{chunk-BWWF3DDM.js → chunk-4XWLEKH2.js} +11 -5
  32. package/dist/chunk-4XWLEKH2.js.map +1 -0
  33. package/dist/{chunk-CRKW4VXA.js → chunk-577JZ2A2.js} +3 -3
  34. package/dist/{chunk-CRKW4VXA.js.map → chunk-577JZ2A2.js.map} +1 -1
  35. package/dist/{chunk-PZ5AY32C.js → chunk-DCHYNTHI.js} +2 -2
  36. package/dist/{chunk-PZ5AY32C.js.map → chunk-DCHYNTHI.js.map} +1 -1
  37. package/dist/chunk-DJJOQWOG.js +27 -0
  38. package/dist/chunk-DJJOQWOG.js.map +1 -0
  39. package/dist/{chunk-BKR7A7WH.js → chunk-EEHJHPAP.js} +126 -68
  40. package/dist/chunk-EEHJHPAP.js.map +1 -0
  41. package/dist/{chunk-O2DK3E3E.js → chunk-EJCO7AWR.js} +47 -46
  42. package/dist/chunk-EJCO7AWR.js.map +1 -0
  43. package/dist/{chunk-LLNJ3GD2.js → chunk-EX4AOJCN.js} +80 -70
  44. package/dist/chunk-EX4AOJCN.js.map +1 -0
  45. package/dist/{chunk-526AMQXZ.js → chunk-FNSC4LAL.js} +4 -4
  46. package/dist/{chunk-526AMQXZ.js.map → chunk-FNSC4LAL.js.map} +1 -1
  47. package/dist/{chunk-2HWZH6GF.js → chunk-FYG23O4O.js} +311 -35
  48. package/dist/chunk-FYG23O4O.js.map +1 -0
  49. package/dist/{chunk-5QP5D3H3.js → chunk-GSAOM2ZR.js} +134 -66
  50. package/dist/chunk-GSAOM2ZR.js.map +1 -0
  51. package/dist/{chunk-BKWLS6V2.js → chunk-HG7NX6GP.js} +853 -574
  52. package/dist/chunk-HG7NX6GP.js.map +1 -0
  53. package/dist/{chunk-RDDIOVK4.js → chunk-JYGC5SRP.js} +42 -8
  54. package/dist/chunk-JYGC5SRP.js.map +1 -0
  55. package/dist/{chunk-KDXJQNB6.js → chunk-LGTGZ3RW.js} +2 -3
  56. package/dist/chunk-LGTGZ3RW.js.map +1 -0
  57. package/dist/{chunk-IEAFEEZB.js → chunk-MTD4RTGO.js} +63 -33
  58. package/dist/chunk-MTD4RTGO.js.map +1 -0
  59. package/dist/{chunk-F227LKWK.js → chunk-MVMDDGW7.js} +4 -4
  60. package/dist/{chunk-F227LKWK.js.map → chunk-MVMDDGW7.js.map} +1 -1
  61. package/dist/{chunk-T6ZDMPHL.js → chunk-NR5DYKSJ.js} +4 -4
  62. package/dist/{chunk-T6ZDMPHL.js.map → chunk-NR5DYKSJ.js.map} +1 -1
  63. package/dist/{chunk-46BOUO7J.js → chunk-OBW7JUNL.js} +13 -13
  64. package/dist/chunk-OBW7JUNL.js.map +1 -0
  65. package/dist/{chunk-BMABNEZX.js → chunk-TTSJZEL7.js} +189 -59
  66. package/dist/chunk-TTSJZEL7.js.map +1 -0
  67. package/dist/{chunk-NUMFGKPY.js → chunk-V267IMBH.js} +136 -27
  68. package/dist/chunk-V267IMBH.js.map +1 -0
  69. package/dist/chunk-X2MYOHOB.js +40 -0
  70. package/dist/chunk-X2MYOHOB.js.map +1 -0
  71. package/dist/{chunk-VIWAIXVK.js → chunk-XDATW7NF.js} +10 -6
  72. package/dist/chunk-XDATW7NF.js.map +1 -0
  73. package/dist/{chunk-PGU27Z2H.js → chunk-Y5GS4CLT.js} +372 -243
  74. package/dist/chunk-Y5GS4CLT.js.map +1 -0
  75. package/dist/display/accordion/Accordion.d.ts +15 -12
  76. package/dist/display/accordion/index.d.ts +0 -1
  77. package/dist/display/activityFeed/ActivityFeed.d.ts +2 -3
  78. package/dist/display/activityFeed/index.d.ts +0 -1
  79. package/dist/display/animatedNumber/AnimatedNumber.d.ts +0 -1
  80. package/dist/display/animatedNumber/index.d.ts +0 -1
  81. package/dist/display/annotationMarker/AnnotationMarker.d.ts +6 -8
  82. package/dist/display/annotationMarker/index.d.ts +0 -1
  83. package/dist/display/audioPlayer/AudioPlayer.d.ts +1 -2
  84. package/dist/display/audioPlayer/index.d.ts +0 -1
  85. package/dist/display/audioWaveform/AudioWaveform.d.ts +1 -2
  86. package/dist/display/audioWaveform/index.d.ts +0 -1
  87. package/dist/display/avatar/Avatar.d.ts +1 -2
  88. package/dist/display/avatar/Avatar.variants.d.ts +0 -1
  89. package/dist/display/avatar/index.d.ts +0 -1
  90. package/dist/display/avatarGroup/AvatarGroup.d.ts +0 -1
  91. package/dist/display/avatarGroup/index.d.ts +0 -1
  92. package/dist/display/badge/Badge.d.ts +0 -1
  93. package/dist/display/badge/Badge.variants.d.ts +0 -1
  94. package/dist/display/badge/index.d.ts +0 -1
  95. package/dist/display/badgeOverlay/BadgeOverlay.d.ts +1 -2
  96. package/dist/display/badgeOverlay/index.d.ts +0 -1
  97. package/dist/display/card/Card.d.ts +0 -1
  98. package/dist/display/card/index.d.ts +0 -1
  99. package/dist/display/carousel/Carousel.d.ts +1 -2
  100. package/dist/display/carousel/index.d.ts +0 -1
  101. package/dist/display/chatBubble/ChatBubble.d.ts +2 -3
  102. package/dist/display/chatBubble/index.d.ts +0 -1
  103. package/dist/display/code/Code.d.ts +0 -1
  104. package/dist/display/code/Code.variants.d.ts +0 -1
  105. package/dist/display/code/index.d.ts +0 -1
  106. package/dist/display/collapsible/Collapsible.d.ts +2 -3
  107. package/dist/display/collapsible/index.d.ts +0 -1
  108. package/dist/display/commentThread/CommentThread.d.ts +1 -2
  109. package/dist/display/commentThread/index.d.ts +0 -1
  110. package/dist/display/confetti/Confetti.d.ts +2 -3
  111. package/dist/display/confetti/index.d.ts +0 -1
  112. package/dist/display/countBadge/CountBadge.d.ts +3 -5
  113. package/dist/display/countBadge/index.d.ts +0 -1
  114. package/dist/display/countUp/CountUp.d.ts +2 -3
  115. package/dist/display/countUp/index.d.ts +0 -1
  116. package/dist/display/dataGrid/DataGrid.d.ts +2 -3
  117. package/dist/display/dataGrid/index.d.ts +0 -1
  118. package/dist/display/dataTable/DataTable.d.ts +5 -6
  119. package/dist/display/dataTable/index.d.ts +0 -1
  120. package/dist/display/descriptionList/DescriptionList.d.ts +0 -1
  121. package/dist/display/descriptionList/index.d.ts +0 -1
  122. package/dist/display/diffViewer/DiffViewer.d.ts +1 -2
  123. package/dist/display/diffViewer/index.d.ts +0 -1
  124. package/dist/display/emptyState/EmptyState.d.ts +0 -1
  125. package/dist/display/emptyState/index.d.ts +0 -1
  126. package/dist/display/eventCalendar/EventCalendar.d.ts +1 -2
  127. package/dist/display/eventCalendar/index.d.ts +0 -1
  128. package/dist/display/eyebrow/Eyebrow.d.ts +0 -1
  129. package/dist/display/eyebrow/index.d.ts +0 -1
  130. package/dist/display/gantt/Gantt.d.ts +1 -2
  131. package/dist/display/gantt/index.d.ts +0 -1
  132. package/dist/display/gradientText/GradientText.d.ts +2 -3
  133. package/dist/display/gradientText/index.d.ts +0 -1
  134. package/dist/display/heading/Heading.d.ts +0 -1
  135. package/dist/display/heading/Heading.variants.d.ts +0 -1
  136. package/dist/display/heading/index.d.ts +0 -1
  137. package/dist/display/heatmapCalendar/HeatmapCalendar.d.ts +2 -2
  138. package/dist/display/heatmapCalendar/index.d.ts +0 -1
  139. package/dist/display/highlight/Highlight.d.ts +2 -3
  140. package/dist/display/highlight/index.d.ts +0 -1
  141. package/dist/display/image/Image.d.ts +0 -1
  142. package/dist/display/image/index.d.ts +0 -1
  143. package/dist/display/index.d.ts +0 -1
  144. package/dist/display/index.js +10 -10
  145. package/dist/display/infoRow/InfoRow.d.ts +0 -1
  146. package/dist/display/infoRow/index.d.ts +0 -1
  147. package/dist/display/kbd/Kbd.d.ts +0 -1
  148. package/dist/display/kbd/index.d.ts +0 -1
  149. package/dist/display/keyboardShortcut/KeyboardShortcut.d.ts +0 -1
  150. package/dist/display/keyboardShortcut/index.d.ts +0 -1
  151. package/dist/display/list/List.d.ts +2 -3
  152. package/dist/display/list/List.variants.d.ts +0 -1
  153. package/dist/display/list/index.d.ts +0 -1
  154. package/dist/display/mark/Mark.d.ts +0 -1
  155. package/dist/display/mark/index.d.ts +0 -1
  156. package/dist/display/marquee/Marquee.d.ts +1 -2
  157. package/dist/display/marquee/index.d.ts +0 -1
  158. package/dist/display/messageList/MessageList.d.ts +3 -4
  159. package/dist/display/messageList/index.d.ts +0 -1
  160. package/dist/display/metaInline/MetaInline.d.ts +0 -1
  161. package/dist/display/metaInline/index.d.ts +0 -1
  162. package/dist/display/metricChip/MetricChip.d.ts +0 -1
  163. package/dist/display/metricChip/index.d.ts +0 -1
  164. package/dist/display/nodeEditor/NodeEditor.d.ts +0 -1
  165. package/dist/display/nodeEditor/index.d.ts +0 -1
  166. package/dist/display/notificationDot/NotificationDot.d.ts +1 -2
  167. package/dist/display/notificationDot/index.d.ts +0 -1
  168. package/dist/display/pdfViewer/PDFViewer.d.ts +1 -2
  169. package/dist/display/pdfViewer/index.d.ts +0 -1
  170. package/dist/display/quote/Quote.d.ts +0 -1
  171. package/dist/display/quote/index.d.ts +0 -1
  172. package/dist/display/reactionBar/ReactionBar.d.ts +6 -7
  173. package/dist/display/reactionBar/index.d.ts +0 -1
  174. package/dist/display/scheduleView/ScheduleView.d.ts +0 -1
  175. package/dist/display/scheduleView/index.d.ts +0 -1
  176. package/dist/display/scrollReveal/ScrollReveal.d.ts +1 -2
  177. package/dist/display/scrollReveal/index.d.ts +0 -1
  178. package/dist/display/sectionHeader/SectionHeader.d.ts +1 -2
  179. package/dist/display/sectionHeader/index.d.ts +0 -1
  180. package/dist/display/separator/Separator.d.ts +2 -4
  181. package/dist/display/separator/index.d.ts +0 -1
  182. package/dist/display/snippet/Snippet.d.ts +0 -1
  183. package/dist/display/snippet/index.d.ts +0 -1
  184. package/dist/display/sparkline/Sparkline.d.ts +1 -2
  185. package/dist/display/sparkline/index.d.ts +0 -1
  186. package/dist/display/stat/Stat.d.ts +0 -1
  187. package/dist/display/stat/index.d.ts +0 -1
  188. package/dist/display/status/Status.d.ts +1 -2
  189. package/dist/display/status/index.d.ts +0 -1
  190. package/dist/display/swipeActions/SwipeActions.d.ts +1 -2
  191. package/dist/display/swipeActions/index.d.ts +0 -1
  192. package/dist/display/table/Table.d.ts +17 -6
  193. package/dist/display/table/index.d.ts +1 -2
  194. package/dist/display/tabs/Tabs.d.ts +1 -2
  195. package/dist/display/tabs/index.d.ts +0 -1
  196. package/dist/display/tag/Tag.d.ts +0 -1
  197. package/dist/display/tag/Tag.variants.d.ts +0 -1
  198. package/dist/display/tag/index.d.ts +0 -1
  199. package/dist/display/text/Text.d.ts +0 -1
  200. package/dist/display/text/Text.variants.d.ts +14 -15
  201. package/dist/display/text/index.d.ts +0 -1
  202. package/dist/display/threadView/ThreadView.d.ts +2 -3
  203. package/dist/display/threadView/index.d.ts +0 -1
  204. package/dist/display/tilt/Tilt.d.ts +2 -4
  205. package/dist/display/tilt/index.d.ts +0 -1
  206. package/dist/display/timeline/Timeline.d.ts +0 -1
  207. package/dist/display/timeline/index.d.ts +0 -1
  208. package/dist/display/tooltip/Tooltip.d.ts +9 -4
  209. package/dist/display/tooltip/index.d.ts +0 -1
  210. package/dist/display/tree/Tree.d.ts +2 -3
  211. package/dist/display/tree/index.d.ts +0 -1
  212. package/dist/display/typewriter/Typewriter.d.ts +2 -3
  213. package/dist/display/typewriter/index.d.ts +0 -1
  214. package/dist/display/videoPlayer/VideoPlayer.d.ts +0 -1
  215. package/dist/display/videoPlayer/index.d.ts +0 -1
  216. package/dist/feedback/alert/Alert.d.ts +0 -1
  217. package/dist/feedback/alert/index.d.ts +0 -1
  218. package/dist/feedback/alertSimple/AlertSimple.d.ts +0 -1
  219. package/dist/feedback/alertSimple/AlertSimple.variants.d.ts +0 -1
  220. package/dist/feedback/alertSimple/index.d.ts +0 -1
  221. package/dist/feedback/banner/Banner.d.ts +0 -1
  222. package/dist/feedback/banner/index.d.ts +0 -1
  223. package/dist/feedback/bannerSimple/BannerSimple.d.ts +0 -1
  224. package/dist/feedback/bannerSimple/BannerSimple.variants.d.ts +0 -1
  225. package/dist/feedback/bannerSimple/index.d.ts +0 -1
  226. package/dist/feedback/callout/Callout.d.ts +0 -1
  227. package/dist/feedback/callout/index.d.ts +0 -1
  228. package/dist/feedback/index.d.ts +0 -1
  229. package/dist/feedback/index.js +10 -10
  230. package/dist/feedback/inlineSpinner/InlineSpinner.d.ts +0 -1
  231. package/dist/feedback/inlineSpinner/index.d.ts +0 -1
  232. package/dist/feedback/liveCursor/LiveCursor.d.ts +4 -7
  233. package/dist/feedback/liveCursor/index.d.ts +0 -1
  234. package/dist/feedback/loadingOverlay/LoadingOverlay.d.ts +5 -7
  235. package/dist/feedback/loadingOverlay/index.d.ts +0 -1
  236. package/dist/feedback/loadingState/LoadingState.d.ts +0 -1
  237. package/dist/feedback/loadingState/index.d.ts +0 -1
  238. package/dist/feedback/meterBar/MeterBar.d.ts +0 -1
  239. package/dist/feedback/meterBar/index.d.ts +0 -1
  240. package/dist/feedback/notificationCenter/NotificationCenter.d.ts +1 -2
  241. package/dist/feedback/notificationCenter/index.d.ts +0 -1
  242. package/dist/feedback/onboardingChecklist/OnboardingChecklist.d.ts +3 -4
  243. package/dist/feedback/onboardingChecklist/index.d.ts +0 -1
  244. package/dist/feedback/presenceIndicator/PresenceIndicator.d.ts +1 -2
  245. package/dist/feedback/presenceIndicator/index.d.ts +0 -1
  246. package/dist/feedback/progressBar/ProgressBar.d.ts +0 -1
  247. package/dist/feedback/progressBar/ProgressBar.variants.d.ts +0 -1
  248. package/dist/feedback/progressBar/index.d.ts +0 -1
  249. package/dist/feedback/progressCircle/ProgressCircle.d.ts +0 -1
  250. package/dist/feedback/progressCircle/index.d.ts +0 -1
  251. package/dist/feedback/progressSteps/ProgressSteps.d.ts +0 -1
  252. package/dist/feedback/progressSteps/index.d.ts +0 -1
  253. package/dist/feedback/skeleton/Skeleton.d.ts +0 -1
  254. package/dist/feedback/skeleton/Skeleton.variants.d.ts +0 -1
  255. package/dist/feedback/skeleton/index.d.ts +0 -1
  256. package/dist/feedback/spinner/Spinner.d.ts +0 -1
  257. package/dist/feedback/spinner/Spinner.variants.d.ts +0 -1
  258. package/dist/feedback/spinner/index.d.ts +0 -1
  259. package/dist/feedback/statusIndicator/StatusIndicator.d.ts +1 -2
  260. package/dist/feedback/statusIndicator/index.d.ts +0 -1
  261. package/dist/feedback/toast/Toast.d.ts +0 -1
  262. package/dist/feedback/toast/index.d.ts +0 -1
  263. package/dist/feedback/toastSimple/ToastSimple.d.ts +0 -1
  264. package/dist/feedback/toastSimple/ToastSimple.variants.d.ts +0 -1
  265. package/dist/feedback/toastSimple/index.d.ts +0 -1
  266. package/dist/feedback/toaster/Toaster.d.ts +2 -3
  267. package/dist/feedback/toaster/index.d.ts +0 -1
  268. package/dist/feedback/tour/Tour.d.ts +2 -3
  269. package/dist/feedback/tour/index.d.ts +0 -1
  270. package/dist/feedback/trendIndicator/TrendIndicator.d.ts +2 -3
  271. package/dist/feedback/trendIndicator/index.d.ts +0 -1
  272. package/dist/feedback/typingIndicator/TypingIndicator.d.ts +1 -2
  273. package/dist/feedback/typingIndicator/index.d.ts +0 -1
  274. package/dist/feedback/undoBar/UndoBar.d.ts +4 -5
  275. package/dist/feedback/undoBar/index.d.ts +0 -1
  276. package/dist/forms/ColorExtensions.d.ts +0 -1
  277. package/dist/forms/DateExtensions.d.ts +0 -1
  278. package/dist/forms/InputStyles.d.ts +0 -1
  279. package/dist/forms/MonthGrid.d.ts +0 -1
  280. package/dist/forms/addressForm/AddressForm.d.ts +3 -4
  281. package/dist/forms/addressForm/index.d.ts +0 -1
  282. package/dist/forms/calendar/Calendar.d.ts +1 -2
  283. package/dist/forms/calendar/index.d.ts +0 -1
  284. package/dist/forms/characterCount/CharacterCount.d.ts +1 -2
  285. package/dist/forms/characterCount/index.d.ts +0 -1
  286. package/dist/forms/chatComposer/ChatComposer.d.ts +2 -3
  287. package/dist/forms/chatComposer/index.d.ts +0 -1
  288. package/dist/forms/checkbox/Checkbox.d.ts +1 -2
  289. package/dist/forms/checkbox/Checkbox.variants.d.ts +0 -1
  290. package/dist/forms/checkbox/index.d.ts +0 -1
  291. package/dist/forms/checkboxField/CheckboxField.d.ts +0 -1
  292. package/dist/forms/checkboxField/index.d.ts +0 -1
  293. package/dist/forms/checkboxGroup/CheckboxGroup.d.ts +0 -1
  294. package/dist/forms/checkboxGroup/index.d.ts +0 -1
  295. package/dist/forms/choiceCard/ChoiceCard.d.ts +0 -1
  296. package/dist/forms/choiceCard/index.d.ts +0 -1
  297. package/dist/forms/codeEditor/CodeEditor.d.ts +2 -3
  298. package/dist/forms/codeEditor/index.d.ts +0 -1
  299. package/dist/forms/colorArea/ColorArea.d.ts +2 -3
  300. package/dist/forms/colorArea/index.d.ts +0 -1
  301. package/dist/forms/colorField/ColorField.d.ts +2 -3
  302. package/dist/forms/colorField/index.d.ts +0 -1
  303. package/dist/forms/colorPicker/ColorPicker.d.ts +3 -4
  304. package/dist/forms/colorPicker/index.d.ts +0 -1
  305. package/dist/forms/colorSlider/ColorSlider.d.ts +2 -3
  306. package/dist/forms/colorSlider/index.d.ts +0 -1
  307. package/dist/forms/colorSwatch/ColorSwatch.d.ts +0 -1
  308. package/dist/forms/colorSwatch/ColorSwatch.variants.d.ts +14 -15
  309. package/dist/forms/colorSwatch/index.d.ts +0 -1
  310. package/dist/forms/colorSwatchPicker/ColorSwatchPicker.d.ts +3 -4
  311. package/dist/forms/colorSwatchPicker/index.d.ts +0 -1
  312. package/dist/forms/colorWheel/ColorWheel.d.ts +2 -3
  313. package/dist/forms/colorWheel/index.d.ts +0 -1
  314. package/dist/forms/combobox/Combobox.d.ts +4 -5
  315. package/dist/forms/combobox/index.d.ts +0 -1
  316. package/dist/forms/cronInput/CronInput.d.ts +2 -3
  317. package/dist/forms/cronInput/index.d.ts +0 -1
  318. package/dist/forms/currencyInput/CurrencyInput.d.ts +0 -1
  319. package/dist/forms/currencyInput/index.d.ts +0 -1
  320. package/dist/forms/dateField/DateField.d.ts +1 -2
  321. package/dist/forms/dateField/index.d.ts +0 -1
  322. package/dist/forms/datePicker/DatePicker.d.ts +2 -3
  323. package/dist/forms/datePicker/index.d.ts +0 -1
  324. package/dist/forms/dateRangePicker/DateRangePicker.d.ts +2 -3
  325. package/dist/forms/dateRangePicker/index.d.ts +0 -1
  326. package/dist/forms/editable/Editable.d.ts +7 -8
  327. package/dist/forms/editable/index.d.ts +0 -1
  328. package/dist/forms/emailInput/EmailInput.d.ts +0 -1
  329. package/dist/forms/emailInput/index.d.ts +0 -1
  330. package/dist/forms/emojiPicker/EmojiPicker.d.ts +1 -2
  331. package/dist/forms/emojiPicker/index.d.ts +0 -1
  332. package/dist/forms/fieldset/Fieldset.d.ts +0 -1
  333. package/dist/forms/fieldset/index.d.ts +0 -1
  334. package/dist/forms/filePicker/FilePicker.d.ts +0 -1
  335. package/dist/forms/filePicker/index.d.ts +0 -1
  336. package/dist/forms/fileUpload/FileUpload.d.ts +1 -2
  337. package/dist/forms/fileUpload/index.d.ts +0 -1
  338. package/dist/forms/fontPicker/FontPicker.d.ts +1 -2
  339. package/dist/forms/fontPicker/index.d.ts +0 -1
  340. package/dist/forms/formErrorMessage/FormErrorMessage.d.ts +0 -1
  341. package/dist/forms/formErrorMessage/index.d.ts +0 -1
  342. package/dist/forms/formField/FormField.d.ts +0 -1
  343. package/dist/forms/formField/index.d.ts +0 -1
  344. package/dist/forms/formHelperText/FormHelperText.d.ts +0 -1
  345. package/dist/forms/formHelperText/index.d.ts +0 -1
  346. package/dist/forms/gradientPicker/GradientPicker.d.ts +1 -2
  347. package/dist/forms/gradientPicker/index.d.ts +0 -1
  348. package/dist/forms/iconPicker/IconPicker.d.ts +1 -2
  349. package/dist/forms/iconPicker/index.d.ts +0 -1
  350. package/dist/forms/index.d.ts +0 -1
  351. package/dist/forms/index.js +15 -15
  352. package/dist/forms/inputAddon/InputAddon.d.ts +0 -1
  353. package/dist/forms/inputAddon/index.d.ts +0 -1
  354. package/dist/forms/inputGroup/InputGroup.d.ts +0 -1
  355. package/dist/forms/inputGroup/index.d.ts +0 -1
  356. package/dist/forms/jsonEditor/JSONEditor.d.ts +3 -4
  357. package/dist/forms/jsonEditor/index.d.ts +0 -1
  358. package/dist/forms/keyboardShortcutPicker/KeyboardShortcutPicker.d.ts +0 -1
  359. package/dist/forms/keyboardShortcutPicker/index.d.ts +0 -1
  360. package/dist/forms/knob/Knob.d.ts +2 -3
  361. package/dist/forms/knob/index.d.ts +0 -1
  362. package/dist/forms/label/Label.d.ts +1 -2
  363. package/dist/forms/label/index.d.ts +0 -1
  364. package/dist/forms/labeledInput/LabeledInput.d.ts +0 -1
  365. package/dist/forms/labeledInput/index.d.ts +0 -1
  366. package/dist/forms/legend/Legend.d.ts +0 -1
  367. package/dist/forms/legend/index.d.ts +0 -1
  368. package/dist/forms/listbox/Listbox.d.ts +8 -5
  369. package/dist/forms/listbox/Listbox.variants.d.ts +0 -1
  370. package/dist/forms/listbox/index.d.ts +0 -1
  371. package/dist/forms/markdownEditor/MarkdownEditor.d.ts +5 -4
  372. package/dist/forms/markdownEditor/index.d.ts +0 -1
  373. package/dist/forms/maskedInput/MaskedInput.d.ts +0 -1
  374. package/dist/forms/maskedInput/index.d.ts +0 -1
  375. package/dist/forms/multiSelect/MultiSelect.d.ts +4 -5
  376. package/dist/forms/multiSelect/index.d.ts +0 -1
  377. package/dist/forms/numberInput/NumberInput.d.ts +0 -1
  378. package/dist/forms/numberInput/index.d.ts +0 -1
  379. package/dist/forms/passwordInput/PasswordInput.d.ts +1 -2
  380. package/dist/forms/passwordInput/index.d.ts +0 -1
  381. package/dist/forms/passwordStrength/PasswordStrength.d.ts +1 -2
  382. package/dist/forms/passwordStrength/index.d.ts +0 -1
  383. package/dist/forms/percentInput/PercentInput.d.ts +0 -1
  384. package/dist/forms/percentInput/index.d.ts +0 -1
  385. package/dist/forms/phoneInput/PhoneInput.d.ts +3 -4
  386. package/dist/forms/phoneInput/index.d.ts +0 -1
  387. package/dist/forms/pinInput/PinInput.d.ts +1 -2
  388. package/dist/forms/pinInput/index.d.ts +0 -1
  389. package/dist/forms/radio/Radio.d.ts +0 -1
  390. package/dist/forms/radio/index.d.ts +0 -1
  391. package/dist/forms/radioField/RadioField.d.ts +0 -1
  392. package/dist/forms/radioField/index.d.ts +0 -1
  393. package/dist/forms/radioGroup/RadioGroup.d.ts +0 -1
  394. package/dist/forms/radioGroup/index.d.ts +0 -1
  395. package/dist/forms/rangeCalendar/RangeCalendar.d.ts +1 -2
  396. package/dist/forms/rangeCalendar/index.d.ts +0 -1
  397. package/dist/forms/reactionPicker/ReactionPicker.d.ts +1 -2
  398. package/dist/forms/reactionPicker/index.d.ts +0 -1
  399. package/dist/forms/recurrenceEditor/RecurrenceEditor.d.ts +2 -3
  400. package/dist/forms/recurrenceEditor/index.d.ts +0 -1
  401. package/dist/forms/searchInput/SearchInput.d.ts +1 -2
  402. package/dist/forms/searchInput/index.d.ts +0 -1
  403. package/dist/forms/select/Select.d.ts +18 -12
  404. package/dist/forms/select/Select.variants.d.ts +46 -4
  405. package/dist/forms/select/index.d.ts +0 -1
  406. package/dist/forms/slider/Slider.d.ts +0 -1
  407. package/dist/forms/slider/index.d.ts +0 -1
  408. package/dist/forms/stepper/Stepper.d.ts +1 -2
  409. package/dist/forms/stepper/index.d.ts +0 -1
  410. package/dist/forms/switch/Switch.d.ts +0 -1
  411. package/dist/forms/switch/index.d.ts +0 -1
  412. package/dist/forms/switchField/SwitchField.d.ts +0 -1
  413. package/dist/forms/switchField/index.d.ts +0 -1
  414. package/dist/forms/tagsInput/TagsInput.d.ts +2 -3
  415. package/dist/forms/tagsInput/index.d.ts +0 -1
  416. package/dist/forms/telInput/TelInput.d.ts +0 -1
  417. package/dist/forms/telInput/index.d.ts +0 -1
  418. package/dist/forms/textInput/TextInput.d.ts +0 -1
  419. package/dist/forms/textInput/index.d.ts +0 -1
  420. package/dist/forms/textarea/Textarea.d.ts +0 -1
  421. package/dist/forms/textarea/index.d.ts +0 -1
  422. package/dist/forms/timeField/TimeField.d.ts +1 -2
  423. package/dist/forms/timeField/index.d.ts +0 -1
  424. package/dist/forms/timePicker/TimePicker.d.ts +2 -3
  425. package/dist/forms/timePicker/index.d.ts +0 -1
  426. package/dist/forms/urlInput/UrlInput.d.ts +0 -1
  427. package/dist/forms/urlInput/index.d.ts +0 -1
  428. package/dist/forms/wizard/Wizard.d.ts +5 -6
  429. package/dist/forms/wizard/index.d.ts +0 -1
  430. package/dist/hooks/index.d.ts +1 -1
  431. package/dist/hooks/index.js +3 -3
  432. package/dist/hooks/useClipboard.d.ts +0 -1
  433. package/dist/hooks/useControlled.d.ts +0 -1
  434. package/dist/hooks/useDebounceHandler.d.ts +0 -1
  435. package/dist/hooks/useDisclosure.d.ts +0 -1
  436. package/dist/hooks/useEscape.d.ts +0 -1
  437. package/dist/hooks/useEventListener.d.ts +0 -1
  438. package/dist/hooks/useFocusTrap.d.ts +0 -1
  439. package/dist/hooks/useId.d.ts +0 -1
  440. package/dist/hooks/useMediaQuery.d.ts +1 -1
  441. package/dist/hooks/useOutsideClick.d.ts +0 -1
  442. package/dist/hooks/useReducedMotion.d.ts +0 -1
  443. package/dist/hooks/useResizeObserver.d.ts +0 -1
  444. package/dist/hooks/useScrollLock.d.ts +0 -1
  445. package/dist/hooks/useTypeahead.d.ts +37 -0
  446. package/dist/icons/Icon.d.ts +0 -1
  447. package/dist/icons/Spinner.d.ts +0 -1
  448. package/dist/icons/index.d.ts +0 -1
  449. package/dist/icons/index.js +4 -4
  450. package/dist/index.d.ts +0 -1
  451. package/dist/index.js +22 -22
  452. package/dist/layout/appShell/AppShell.d.ts +3 -3
  453. package/dist/layout/appShell/index.d.ts +0 -1
  454. package/dist/layout/aspectRatio/AspectRatio.d.ts +0 -1
  455. package/dist/layout/aspectRatio/index.d.ts +0 -1
  456. package/dist/layout/box/Box.d.ts +0 -1
  457. package/dist/layout/box/index.d.ts +0 -1
  458. package/dist/layout/center/Center.d.ts +0 -1
  459. package/dist/layout/center/index.d.ts +0 -1
  460. package/dist/layout/cluster/Cluster.d.ts +0 -1
  461. package/dist/layout/cluster/index.d.ts +0 -1
  462. package/dist/layout/container/Container.d.ts +0 -1
  463. package/dist/layout/container/Container.variants.d.ts +0 -1
  464. package/dist/layout/container/index.d.ts +0 -1
  465. package/dist/layout/flex/Flex.d.ts +0 -1
  466. package/dist/layout/flex/index.d.ts +0 -1
  467. package/dist/layout/frame/Frame.d.ts +1 -2
  468. package/dist/layout/frame/index.d.ts +0 -1
  469. package/dist/layout/grid/Grid.d.ts +17 -6
  470. package/dist/layout/grid/Grid.variants.d.ts +15 -1
  471. package/dist/layout/grid/index.d.ts +1 -2
  472. package/dist/layout/hStack/HStack.d.ts +0 -1
  473. package/dist/layout/hStack/index.d.ts +0 -1
  474. package/dist/layout/index.d.ts +2 -1
  475. package/dist/layout/index.js +12 -12
  476. package/dist/layout/inline/Inline.d.ts +5 -1
  477. package/dist/layout/inline/index.d.ts +0 -1
  478. package/dist/layout/navbar/Navbar.d.ts +37 -0
  479. package/dist/layout/navbar/Navbar.variants.d.ts +76 -0
  480. package/dist/layout/navbar/index.d.ts +2 -0
  481. package/dist/layout/overlay/Overlay.d.ts +0 -1
  482. package/dist/layout/overlay/Overlay.variants.d.ts +0 -1
  483. package/dist/layout/overlay/index.d.ts +0 -1
  484. package/dist/layout/pullToRefresh/PullToRefresh.d.ts +1 -2
  485. package/dist/layout/pullToRefresh/index.d.ts +0 -1
  486. package/dist/layout/resizablePanels/ResizablePanels.d.ts +1 -2
  487. package/dist/layout/resizablePanels/index.d.ts +0 -1
  488. package/dist/layout/scrollArea/ScrollArea.d.ts +0 -1
  489. package/dist/layout/scrollArea/index.d.ts +0 -1
  490. package/dist/layout/section/Section.d.ts +26 -0
  491. package/dist/layout/section/Section.variants.d.ts +62 -0
  492. package/dist/layout/section/index.d.ts +2 -0
  493. package/dist/layout/spacer/Spacer.d.ts +0 -1
  494. package/dist/layout/spacer/index.d.ts +0 -1
  495. package/dist/layout/stack/Stack.d.ts +0 -1
  496. package/dist/layout/stack/Stack.variants.d.ts +0 -1
  497. package/dist/layout/stack/index.d.ts +0 -1
  498. package/dist/layout/surface/Surface.d.ts +0 -1
  499. package/dist/layout/surface/index.d.ts +0 -1
  500. package/dist/layout/twoColumn/TwoColumn.d.ts +0 -1
  501. package/dist/layout/twoColumn/index.d.ts +0 -1
  502. package/dist/layout/vStack/VStack.d.ts +0 -1
  503. package/dist/layout/vStack/index.d.ts +0 -1
  504. package/dist/nav/breadcrumb/Breadcrumb.d.ts +0 -1
  505. package/dist/nav/breadcrumb/index.d.ts +0 -1
  506. package/dist/nav/commandPalette/CommandPalette.d.ts +1 -2
  507. package/dist/nav/commandPalette/index.d.ts +0 -1
  508. package/dist/nav/contextMenu/ContextMenu.d.ts +1 -2
  509. package/dist/nav/contextMenu/index.d.ts +0 -1
  510. package/dist/nav/dropdownMenu/DropdownMenu.d.ts +0 -1
  511. package/dist/nav/dropdownMenu/index.d.ts +0 -1
  512. package/dist/nav/index.d.ts +0 -1
  513. package/dist/nav/index.js +12 -12
  514. package/dist/nav/menu/Menu.d.ts +5 -4
  515. package/dist/nav/menu/Menu.variants.d.ts +0 -1
  516. package/dist/nav/menu/index.d.ts +0 -1
  517. package/dist/nav/menubar/Menubar.d.ts +0 -1
  518. package/dist/nav/menubar/Menubar.variants.d.ts +0 -1
  519. package/dist/nav/menubar/index.d.ts +0 -1
  520. package/dist/nav/navItem/NavItem.d.ts +2 -4
  521. package/dist/nav/navItem/index.d.ts +0 -1
  522. package/dist/nav/navigationMenu/NavigationMenu.d.ts +0 -1
  523. package/dist/nav/navigationMenu/index.d.ts +0 -1
  524. package/dist/nav/pagination/Pagination.d.ts +0 -1
  525. package/dist/nav/pagination/index.d.ts +0 -1
  526. package/dist/nav/scrollSpy/ScrollSpy.d.ts +0 -1
  527. package/dist/nav/scrollSpy/index.d.ts +0 -1
  528. package/dist/nav/tableOfContents/TableOfContents.d.ts +1 -2
  529. package/dist/nav/tableOfContents/index.d.ts +0 -1
  530. package/dist/overlays/OverlayChrome.d.ts +0 -1
  531. package/dist/overlays/actionSheet/ActionSheet.d.ts +1 -2
  532. package/dist/overlays/actionSheet/index.d.ts +0 -1
  533. package/dist/overlays/alertDialog/AlertDialog.d.ts +0 -1
  534. package/dist/overlays/alertDialog/index.d.ts +0 -1
  535. package/dist/overlays/backdrop/Backdrop.d.ts +3 -7
  536. package/dist/overlays/backdrop/index.d.ts +0 -1
  537. package/dist/overlays/bottomSheet/BottomSheet.d.ts +9 -2
  538. package/dist/overlays/bottomSheet/index.d.ts +1 -2
  539. package/dist/overlays/dialog/Dialog.d.ts +1 -2
  540. package/dist/overlays/dialog/index.d.ts +0 -1
  541. package/dist/overlays/drawer/Drawer.d.ts +1 -2
  542. package/dist/overlays/drawer/index.d.ts +0 -1
  543. package/dist/overlays/hoverCard/HoverCard.d.ts +0 -1
  544. package/dist/overlays/hoverCard/index.d.ts +0 -1
  545. package/dist/overlays/index.d.ts +0 -1
  546. package/dist/overlays/index.js +11 -11
  547. package/dist/overlays/popover/Popover.d.ts +1 -2
  548. package/dist/overlays/popover/index.d.ts +0 -1
  549. package/dist/primitives/accessibleIcon/AccessibleIcon.d.ts +0 -1
  550. package/dist/primitives/accessibleIcon/index.d.ts +0 -1
  551. package/dist/primitives/anchoredPositioner/AnchoredPositioner.d.ts +1 -2
  552. package/dist/primitives/anchoredPositioner/index.d.ts +0 -1
  553. package/dist/primitives/announce/Announce.d.ts +0 -1
  554. package/dist/primitives/announce/index.d.ts +0 -1
  555. package/dist/primitives/collection/Collection.d.ts +0 -1
  556. package/dist/primitives/collection/index.d.ts +0 -1
  557. package/dist/primitives/directionProvider/DirectionProvider.d.ts +0 -1
  558. package/dist/primitives/directionProvider/index.d.ts +0 -1
  559. package/dist/primitives/dismissableLayer/DismissableLayer.d.ts +2 -3
  560. package/dist/primitives/dismissableLayer/index.d.ts +0 -1
  561. package/dist/primitives/focusScope/FocusScope.d.ts +0 -1
  562. package/dist/primitives/focusScope/index.d.ts +0 -1
  563. package/dist/primitives/formControlContext/FormControlContext.d.ts +0 -1
  564. package/dist/primitives/formControlContext/index.d.ts +0 -1
  565. package/dist/primitives/index.d.ts +0 -1
  566. package/dist/primitives/index.js +4 -4
  567. package/dist/primitives/overlayArrow/OverlayArrow.d.ts +0 -1
  568. package/dist/primitives/overlayArrow/index.d.ts +0 -1
  569. package/dist/primitives/portal/Portal.d.ts +1 -2
  570. package/dist/primitives/portal/index.d.ts +0 -1
  571. package/dist/primitives/presence/Presence.d.ts +8 -5
  572. package/dist/primitives/presence/index.d.ts +0 -1
  573. package/dist/primitives/rovingFocusGroup/RovingFocusGroup.d.ts +6 -3
  574. package/dist/primitives/rovingFocusGroup/index.d.ts +1 -2
  575. package/dist/primitives/scrollLockProvider/ScrollLockProvider.d.ts +2 -3
  576. package/dist/primitives/scrollLockProvider/index.d.ts +0 -1
  577. package/dist/primitives/slot/Slot.d.ts +0 -1
  578. package/dist/primitives/slot/index.d.ts +0 -1
  579. package/dist/primitives/visuallyHidden/VisuallyHidden.d.ts +0 -1
  580. package/dist/primitives/visuallyHidden/index.d.ts +0 -1
  581. package/dist/utils/ColorExtensions.d.ts +0 -1
  582. package/dist/utils/CssExtensions.d.ts +0 -1
  583. package/dist/utils/Environment.d.ts +8 -0
  584. package/dist/utils/Equality.d.ts +0 -1
  585. package/dist/utils/HtmlExtensions.d.ts +0 -1
  586. package/dist/utils/KeyboardExtensions.d.ts +0 -1
  587. package/dist/utils/Layers.d.ts +0 -1
  588. package/dist/utils/OptionalExtensions.d.ts +0 -1
  589. package/dist/utils/PressExtensions.d.ts +0 -1
  590. package/dist/utils/StyleTokens.d.ts +0 -1
  591. package/dist/utils/SurfaceStyles.d.ts +7 -1
  592. package/dist/utils/Tones.d.ts +1 -2
  593. package/dist/utils/TransitionExtensions.d.ts +0 -1
  594. package/dist/utils/cn.d.ts +0 -1
  595. package/dist/utils/composeEventHandlers.d.ts +0 -1
  596. package/dist/utils/composeRefs.d.ts +11 -3
  597. package/dist/utils/dataAttr.d.ts +0 -1
  598. package/dist/utils/index.d.ts +1 -1
  599. package/dist/utils/index.js +3 -3
  600. package/dist/utils/polymorphic.d.ts +0 -1
  601. package/dist/utils/tv.d.ts +0 -1
  602. package/package.json +27 -14
  603. package/dist/actions/backToTopButton/BackToTopButton.d.ts.map +0 -1
  604. package/dist/actions/backToTopButton/index.d.ts.map +0 -1
  605. package/dist/actions/button/Button.d.ts.map +0 -1
  606. package/dist/actions/button/Button.variants.d.ts.map +0 -1
  607. package/dist/actions/button/index.d.ts.map +0 -1
  608. package/dist/actions/buttonGroup/ButtonGroup.d.ts.map +0 -1
  609. package/dist/actions/buttonGroup/index.d.ts.map +0 -1
  610. package/dist/actions/copyButton/CopyButton.d.ts.map +0 -1
  611. package/dist/actions/copyButton/index.d.ts.map +0 -1
  612. package/dist/actions/disclosureButton/DisclosureButton.d.ts.map +0 -1
  613. package/dist/actions/disclosureButton/index.d.ts.map +0 -1
  614. package/dist/actions/fab/FAB.d.ts.map +0 -1
  615. package/dist/actions/fab/FAB.variants.d.ts.map +0 -1
  616. package/dist/actions/fab/index.d.ts.map +0 -1
  617. package/dist/actions/index.d.ts.map +0 -1
  618. package/dist/actions/link/Link.d.ts.map +0 -1
  619. package/dist/actions/link/Link.variants.d.ts.map +0 -1
  620. package/dist/actions/link/index.d.ts.map +0 -1
  621. package/dist/actions/segmentedControl/SegmentedControl.d.ts.map +0 -1
  622. package/dist/actions/segmentedControl/index.d.ts.map +0 -1
  623. package/dist/actions/speedDial/SpeedDial.d.ts.map +0 -1
  624. package/dist/actions/speedDial/index.d.ts.map +0 -1
  625. package/dist/actions/toggleButton/ToggleButton.d.ts.map +0 -1
  626. package/dist/actions/toggleButton/ToggleButton.variants.d.ts.map +0 -1
  627. package/dist/actions/toggleButton/index.d.ts.map +0 -1
  628. package/dist/actions/toggleButtonGroup/ToggleButtonGroup.d.ts.map +0 -1
  629. package/dist/actions/toggleButtonGroup/index.d.ts.map +0 -1
  630. package/dist/actions/toolbar/Toolbar.d.ts.map +0 -1
  631. package/dist/actions/toolbar/index.d.ts.map +0 -1
  632. package/dist/chunk-2HWZH6GF.js.map +0 -1
  633. package/dist/chunk-46BOUO7J.js.map +0 -1
  634. package/dist/chunk-5QP5D3H3.js.map +0 -1
  635. package/dist/chunk-BKR7A7WH.js.map +0 -1
  636. package/dist/chunk-BKWLS6V2.js.map +0 -1
  637. package/dist/chunk-BLXE2RCC.js +0 -27
  638. package/dist/chunk-BLXE2RCC.js.map +0 -1
  639. package/dist/chunk-BMABNEZX.js.map +0 -1
  640. package/dist/chunk-BWWF3DDM.js.map +0 -1
  641. package/dist/chunk-IEAFEEZB.js.map +0 -1
  642. package/dist/chunk-KDXJQNB6.js.map +0 -1
  643. package/dist/chunk-LDRFQG44.js +0 -25
  644. package/dist/chunk-LDRFQG44.js.map +0 -1
  645. package/dist/chunk-LLNJ3GD2.js.map +0 -1
  646. package/dist/chunk-NUMFGKPY.js.map +0 -1
  647. package/dist/chunk-O2DK3E3E.js.map +0 -1
  648. package/dist/chunk-PGU27Z2H.js.map +0 -1
  649. package/dist/chunk-RDDIOVK4.js.map +0 -1
  650. package/dist/chunk-VIWAIXVK.js.map +0 -1
  651. package/dist/display/accordion/Accordion.d.ts.map +0 -1
  652. package/dist/display/accordion/index.d.ts.map +0 -1
  653. package/dist/display/activityFeed/ActivityFeed.d.ts.map +0 -1
  654. package/dist/display/activityFeed/index.d.ts.map +0 -1
  655. package/dist/display/animatedNumber/AnimatedNumber.d.ts.map +0 -1
  656. package/dist/display/animatedNumber/index.d.ts.map +0 -1
  657. package/dist/display/annotationMarker/AnnotationMarker.d.ts.map +0 -1
  658. package/dist/display/annotationMarker/index.d.ts.map +0 -1
  659. package/dist/display/audioPlayer/AudioPlayer.d.ts.map +0 -1
  660. package/dist/display/audioPlayer/index.d.ts.map +0 -1
  661. package/dist/display/audioWaveform/AudioWaveform.d.ts.map +0 -1
  662. package/dist/display/audioWaveform/index.d.ts.map +0 -1
  663. package/dist/display/avatar/Avatar.d.ts.map +0 -1
  664. package/dist/display/avatar/Avatar.variants.d.ts.map +0 -1
  665. package/dist/display/avatar/index.d.ts.map +0 -1
  666. package/dist/display/avatarGroup/AvatarGroup.d.ts.map +0 -1
  667. package/dist/display/avatarGroup/index.d.ts.map +0 -1
  668. package/dist/display/badge/Badge.d.ts.map +0 -1
  669. package/dist/display/badge/Badge.variants.d.ts.map +0 -1
  670. package/dist/display/badge/index.d.ts.map +0 -1
  671. package/dist/display/badgeOverlay/BadgeOverlay.d.ts.map +0 -1
  672. package/dist/display/badgeOverlay/index.d.ts.map +0 -1
  673. package/dist/display/card/Card.d.ts.map +0 -1
  674. package/dist/display/card/index.d.ts.map +0 -1
  675. package/dist/display/carousel/Carousel.d.ts.map +0 -1
  676. package/dist/display/carousel/index.d.ts.map +0 -1
  677. package/dist/display/chatBubble/ChatBubble.d.ts.map +0 -1
  678. package/dist/display/chatBubble/index.d.ts.map +0 -1
  679. package/dist/display/code/Code.d.ts.map +0 -1
  680. package/dist/display/code/Code.variants.d.ts.map +0 -1
  681. package/dist/display/code/index.d.ts.map +0 -1
  682. package/dist/display/collapsible/Collapsible.d.ts.map +0 -1
  683. package/dist/display/collapsible/index.d.ts.map +0 -1
  684. package/dist/display/commentThread/CommentThread.d.ts.map +0 -1
  685. package/dist/display/commentThread/index.d.ts.map +0 -1
  686. package/dist/display/confetti/Confetti.d.ts.map +0 -1
  687. package/dist/display/confetti/index.d.ts.map +0 -1
  688. package/dist/display/countBadge/CountBadge.d.ts.map +0 -1
  689. package/dist/display/countBadge/index.d.ts.map +0 -1
  690. package/dist/display/countUp/CountUp.d.ts.map +0 -1
  691. package/dist/display/countUp/index.d.ts.map +0 -1
  692. package/dist/display/dataGrid/DataGrid.d.ts.map +0 -1
  693. package/dist/display/dataGrid/index.d.ts.map +0 -1
  694. package/dist/display/dataTable/DataTable.d.ts.map +0 -1
  695. package/dist/display/dataTable/index.d.ts.map +0 -1
  696. package/dist/display/descriptionList/DescriptionList.d.ts.map +0 -1
  697. package/dist/display/descriptionList/index.d.ts.map +0 -1
  698. package/dist/display/diffViewer/DiffViewer.d.ts.map +0 -1
  699. package/dist/display/diffViewer/index.d.ts.map +0 -1
  700. package/dist/display/emptyState/EmptyState.d.ts.map +0 -1
  701. package/dist/display/emptyState/index.d.ts.map +0 -1
  702. package/dist/display/eventCalendar/EventCalendar.d.ts.map +0 -1
  703. package/dist/display/eventCalendar/index.d.ts.map +0 -1
  704. package/dist/display/eyebrow/Eyebrow.d.ts.map +0 -1
  705. package/dist/display/eyebrow/index.d.ts.map +0 -1
  706. package/dist/display/gantt/Gantt.d.ts.map +0 -1
  707. package/dist/display/gantt/index.d.ts.map +0 -1
  708. package/dist/display/gradientText/GradientText.d.ts.map +0 -1
  709. package/dist/display/gradientText/index.d.ts.map +0 -1
  710. package/dist/display/heading/Heading.d.ts.map +0 -1
  711. package/dist/display/heading/Heading.variants.d.ts.map +0 -1
  712. package/dist/display/heading/index.d.ts.map +0 -1
  713. package/dist/display/heatmapCalendar/HeatmapCalendar.d.ts.map +0 -1
  714. package/dist/display/heatmapCalendar/index.d.ts.map +0 -1
  715. package/dist/display/highlight/Highlight.d.ts.map +0 -1
  716. package/dist/display/highlight/index.d.ts.map +0 -1
  717. package/dist/display/image/Image.d.ts.map +0 -1
  718. package/dist/display/image/index.d.ts.map +0 -1
  719. package/dist/display/index.d.ts.map +0 -1
  720. package/dist/display/infoRow/InfoRow.d.ts.map +0 -1
  721. package/dist/display/infoRow/index.d.ts.map +0 -1
  722. package/dist/display/kbd/Kbd.d.ts.map +0 -1
  723. package/dist/display/kbd/index.d.ts.map +0 -1
  724. package/dist/display/keyboardShortcut/KeyboardShortcut.d.ts.map +0 -1
  725. package/dist/display/keyboardShortcut/index.d.ts.map +0 -1
  726. package/dist/display/list/List.d.ts.map +0 -1
  727. package/dist/display/list/List.variants.d.ts.map +0 -1
  728. package/dist/display/list/index.d.ts.map +0 -1
  729. package/dist/display/mark/Mark.d.ts.map +0 -1
  730. package/dist/display/mark/index.d.ts.map +0 -1
  731. package/dist/display/marquee/Marquee.d.ts.map +0 -1
  732. package/dist/display/marquee/index.d.ts.map +0 -1
  733. package/dist/display/messageList/MessageList.d.ts.map +0 -1
  734. package/dist/display/messageList/index.d.ts.map +0 -1
  735. package/dist/display/metaInline/MetaInline.d.ts.map +0 -1
  736. package/dist/display/metaInline/index.d.ts.map +0 -1
  737. package/dist/display/metricChip/MetricChip.d.ts.map +0 -1
  738. package/dist/display/metricChip/index.d.ts.map +0 -1
  739. package/dist/display/nodeEditor/NodeEditor.d.ts.map +0 -1
  740. package/dist/display/nodeEditor/index.d.ts.map +0 -1
  741. package/dist/display/notificationDot/NotificationDot.d.ts.map +0 -1
  742. package/dist/display/notificationDot/index.d.ts.map +0 -1
  743. package/dist/display/pdfViewer/PDFViewer.d.ts.map +0 -1
  744. package/dist/display/pdfViewer/index.d.ts.map +0 -1
  745. package/dist/display/quote/Quote.d.ts.map +0 -1
  746. package/dist/display/quote/index.d.ts.map +0 -1
  747. package/dist/display/reactionBar/ReactionBar.d.ts.map +0 -1
  748. package/dist/display/reactionBar/index.d.ts.map +0 -1
  749. package/dist/display/scheduleView/ScheduleView.d.ts.map +0 -1
  750. package/dist/display/scheduleView/index.d.ts.map +0 -1
  751. package/dist/display/scrollReveal/ScrollReveal.d.ts.map +0 -1
  752. package/dist/display/scrollReveal/index.d.ts.map +0 -1
  753. package/dist/display/sectionHeader/SectionHeader.d.ts.map +0 -1
  754. package/dist/display/sectionHeader/index.d.ts.map +0 -1
  755. package/dist/display/separator/Separator.d.ts.map +0 -1
  756. package/dist/display/separator/index.d.ts.map +0 -1
  757. package/dist/display/snippet/Snippet.d.ts.map +0 -1
  758. package/dist/display/snippet/index.d.ts.map +0 -1
  759. package/dist/display/sparkline/Sparkline.d.ts.map +0 -1
  760. package/dist/display/sparkline/index.d.ts.map +0 -1
  761. package/dist/display/stat/Stat.d.ts.map +0 -1
  762. package/dist/display/stat/index.d.ts.map +0 -1
  763. package/dist/display/status/Status.d.ts.map +0 -1
  764. package/dist/display/status/index.d.ts.map +0 -1
  765. package/dist/display/swipeActions/SwipeActions.d.ts.map +0 -1
  766. package/dist/display/swipeActions/index.d.ts.map +0 -1
  767. package/dist/display/table/Table.d.ts.map +0 -1
  768. package/dist/display/table/index.d.ts.map +0 -1
  769. package/dist/display/tabs/Tabs.d.ts.map +0 -1
  770. package/dist/display/tabs/index.d.ts.map +0 -1
  771. package/dist/display/tag/Tag.d.ts.map +0 -1
  772. package/dist/display/tag/Tag.variants.d.ts.map +0 -1
  773. package/dist/display/tag/index.d.ts.map +0 -1
  774. package/dist/display/text/Text.d.ts.map +0 -1
  775. package/dist/display/text/Text.variants.d.ts.map +0 -1
  776. package/dist/display/text/index.d.ts.map +0 -1
  777. package/dist/display/threadView/ThreadView.d.ts.map +0 -1
  778. package/dist/display/threadView/index.d.ts.map +0 -1
  779. package/dist/display/tilt/Tilt.d.ts.map +0 -1
  780. package/dist/display/tilt/index.d.ts.map +0 -1
  781. package/dist/display/timeline/Timeline.d.ts.map +0 -1
  782. package/dist/display/timeline/index.d.ts.map +0 -1
  783. package/dist/display/tooltip/Tooltip.d.ts.map +0 -1
  784. package/dist/display/tooltip/index.d.ts.map +0 -1
  785. package/dist/display/tree/Tree.d.ts.map +0 -1
  786. package/dist/display/tree/index.d.ts.map +0 -1
  787. package/dist/display/typewriter/Typewriter.d.ts.map +0 -1
  788. package/dist/display/typewriter/index.d.ts.map +0 -1
  789. package/dist/display/videoPlayer/VideoPlayer.d.ts.map +0 -1
  790. package/dist/display/videoPlayer/index.d.ts.map +0 -1
  791. package/dist/feedback/alert/Alert.d.ts.map +0 -1
  792. package/dist/feedback/alert/index.d.ts.map +0 -1
  793. package/dist/feedback/alertSimple/AlertSimple.d.ts.map +0 -1
  794. package/dist/feedback/alertSimple/AlertSimple.variants.d.ts.map +0 -1
  795. package/dist/feedback/alertSimple/index.d.ts.map +0 -1
  796. package/dist/feedback/banner/Banner.d.ts.map +0 -1
  797. package/dist/feedback/banner/index.d.ts.map +0 -1
  798. package/dist/feedback/bannerSimple/BannerSimple.d.ts.map +0 -1
  799. package/dist/feedback/bannerSimple/BannerSimple.variants.d.ts.map +0 -1
  800. package/dist/feedback/bannerSimple/index.d.ts.map +0 -1
  801. package/dist/feedback/callout/Callout.d.ts.map +0 -1
  802. package/dist/feedback/callout/index.d.ts.map +0 -1
  803. package/dist/feedback/index.d.ts.map +0 -1
  804. package/dist/feedback/inlineSpinner/InlineSpinner.d.ts.map +0 -1
  805. package/dist/feedback/inlineSpinner/index.d.ts.map +0 -1
  806. package/dist/feedback/liveCursor/LiveCursor.d.ts.map +0 -1
  807. package/dist/feedback/liveCursor/index.d.ts.map +0 -1
  808. package/dist/feedback/loadingOverlay/LoadingOverlay.d.ts.map +0 -1
  809. package/dist/feedback/loadingOverlay/index.d.ts.map +0 -1
  810. package/dist/feedback/loadingState/LoadingState.d.ts.map +0 -1
  811. package/dist/feedback/loadingState/index.d.ts.map +0 -1
  812. package/dist/feedback/meterBar/MeterBar.d.ts.map +0 -1
  813. package/dist/feedback/meterBar/index.d.ts.map +0 -1
  814. package/dist/feedback/notificationCenter/NotificationCenter.d.ts.map +0 -1
  815. package/dist/feedback/notificationCenter/index.d.ts.map +0 -1
  816. package/dist/feedback/onboardingChecklist/OnboardingChecklist.d.ts.map +0 -1
  817. package/dist/feedback/onboardingChecklist/index.d.ts.map +0 -1
  818. package/dist/feedback/presenceIndicator/PresenceIndicator.d.ts.map +0 -1
  819. package/dist/feedback/presenceIndicator/index.d.ts.map +0 -1
  820. package/dist/feedback/progressBar/ProgressBar.d.ts.map +0 -1
  821. package/dist/feedback/progressBar/ProgressBar.variants.d.ts.map +0 -1
  822. package/dist/feedback/progressBar/index.d.ts.map +0 -1
  823. package/dist/feedback/progressCircle/ProgressCircle.d.ts.map +0 -1
  824. package/dist/feedback/progressCircle/index.d.ts.map +0 -1
  825. package/dist/feedback/progressSteps/ProgressSteps.d.ts.map +0 -1
  826. package/dist/feedback/progressSteps/index.d.ts.map +0 -1
  827. package/dist/feedback/skeleton/Skeleton.d.ts.map +0 -1
  828. package/dist/feedback/skeleton/Skeleton.variants.d.ts.map +0 -1
  829. package/dist/feedback/skeleton/index.d.ts.map +0 -1
  830. package/dist/feedback/spinner/Spinner.d.ts.map +0 -1
  831. package/dist/feedback/spinner/Spinner.variants.d.ts.map +0 -1
  832. package/dist/feedback/spinner/index.d.ts.map +0 -1
  833. package/dist/feedback/statusIndicator/StatusIndicator.d.ts.map +0 -1
  834. package/dist/feedback/statusIndicator/index.d.ts.map +0 -1
  835. package/dist/feedback/toast/Toast.d.ts.map +0 -1
  836. package/dist/feedback/toast/index.d.ts.map +0 -1
  837. package/dist/feedback/toastSimple/ToastSimple.d.ts.map +0 -1
  838. package/dist/feedback/toastSimple/ToastSimple.variants.d.ts.map +0 -1
  839. package/dist/feedback/toastSimple/index.d.ts.map +0 -1
  840. package/dist/feedback/toaster/Toaster.d.ts.map +0 -1
  841. package/dist/feedback/toaster/index.d.ts.map +0 -1
  842. package/dist/feedback/tour/Tour.d.ts.map +0 -1
  843. package/dist/feedback/tour/index.d.ts.map +0 -1
  844. package/dist/feedback/trendIndicator/TrendIndicator.d.ts.map +0 -1
  845. package/dist/feedback/trendIndicator/index.d.ts.map +0 -1
  846. package/dist/feedback/typingIndicator/TypingIndicator.d.ts.map +0 -1
  847. package/dist/feedback/typingIndicator/index.d.ts.map +0 -1
  848. package/dist/feedback/undoBar/UndoBar.d.ts.map +0 -1
  849. package/dist/feedback/undoBar/index.d.ts.map +0 -1
  850. package/dist/forms/ColorExtensions.d.ts.map +0 -1
  851. package/dist/forms/DateExtensions.d.ts.map +0 -1
  852. package/dist/forms/InputStyles.d.ts.map +0 -1
  853. package/dist/forms/MonthGrid.d.ts.map +0 -1
  854. package/dist/forms/addressForm/AddressForm.d.ts.map +0 -1
  855. package/dist/forms/addressForm/index.d.ts.map +0 -1
  856. package/dist/forms/calendar/Calendar.d.ts.map +0 -1
  857. package/dist/forms/calendar/index.d.ts.map +0 -1
  858. package/dist/forms/characterCount/CharacterCount.d.ts.map +0 -1
  859. package/dist/forms/characterCount/index.d.ts.map +0 -1
  860. package/dist/forms/chatComposer/ChatComposer.d.ts.map +0 -1
  861. package/dist/forms/chatComposer/index.d.ts.map +0 -1
  862. package/dist/forms/checkbox/Checkbox.d.ts.map +0 -1
  863. package/dist/forms/checkbox/Checkbox.variants.d.ts.map +0 -1
  864. package/dist/forms/checkbox/index.d.ts.map +0 -1
  865. package/dist/forms/checkboxField/CheckboxField.d.ts.map +0 -1
  866. package/dist/forms/checkboxField/index.d.ts.map +0 -1
  867. package/dist/forms/checkboxGroup/CheckboxGroup.d.ts.map +0 -1
  868. package/dist/forms/checkboxGroup/index.d.ts.map +0 -1
  869. package/dist/forms/choiceCard/ChoiceCard.d.ts.map +0 -1
  870. package/dist/forms/choiceCard/index.d.ts.map +0 -1
  871. package/dist/forms/codeEditor/CodeEditor.d.ts.map +0 -1
  872. package/dist/forms/codeEditor/index.d.ts.map +0 -1
  873. package/dist/forms/colorArea/ColorArea.d.ts.map +0 -1
  874. package/dist/forms/colorArea/index.d.ts.map +0 -1
  875. package/dist/forms/colorField/ColorField.d.ts.map +0 -1
  876. package/dist/forms/colorField/index.d.ts.map +0 -1
  877. package/dist/forms/colorPicker/ColorPicker.d.ts.map +0 -1
  878. package/dist/forms/colorPicker/index.d.ts.map +0 -1
  879. package/dist/forms/colorSlider/ColorSlider.d.ts.map +0 -1
  880. package/dist/forms/colorSlider/index.d.ts.map +0 -1
  881. package/dist/forms/colorSwatch/ColorSwatch.d.ts.map +0 -1
  882. package/dist/forms/colorSwatch/ColorSwatch.variants.d.ts.map +0 -1
  883. package/dist/forms/colorSwatch/index.d.ts.map +0 -1
  884. package/dist/forms/colorSwatchPicker/ColorSwatchPicker.d.ts.map +0 -1
  885. package/dist/forms/colorSwatchPicker/index.d.ts.map +0 -1
  886. package/dist/forms/colorWheel/ColorWheel.d.ts.map +0 -1
  887. package/dist/forms/colorWheel/index.d.ts.map +0 -1
  888. package/dist/forms/combobox/Combobox.d.ts.map +0 -1
  889. package/dist/forms/combobox/index.d.ts.map +0 -1
  890. package/dist/forms/cronInput/CronInput.d.ts.map +0 -1
  891. package/dist/forms/cronInput/index.d.ts.map +0 -1
  892. package/dist/forms/currencyInput/CurrencyInput.d.ts.map +0 -1
  893. package/dist/forms/currencyInput/index.d.ts.map +0 -1
  894. package/dist/forms/dateField/DateField.d.ts.map +0 -1
  895. package/dist/forms/dateField/index.d.ts.map +0 -1
  896. package/dist/forms/datePicker/DatePicker.d.ts.map +0 -1
  897. package/dist/forms/datePicker/index.d.ts.map +0 -1
  898. package/dist/forms/dateRangePicker/DateRangePicker.d.ts.map +0 -1
  899. package/dist/forms/dateRangePicker/index.d.ts.map +0 -1
  900. package/dist/forms/editable/Editable.d.ts.map +0 -1
  901. package/dist/forms/editable/index.d.ts.map +0 -1
  902. package/dist/forms/emailInput/EmailInput.d.ts.map +0 -1
  903. package/dist/forms/emailInput/index.d.ts.map +0 -1
  904. package/dist/forms/emojiPicker/EmojiPicker.d.ts.map +0 -1
  905. package/dist/forms/emojiPicker/index.d.ts.map +0 -1
  906. package/dist/forms/fieldset/Fieldset.d.ts.map +0 -1
  907. package/dist/forms/fieldset/index.d.ts.map +0 -1
  908. package/dist/forms/filePicker/FilePicker.d.ts.map +0 -1
  909. package/dist/forms/filePicker/index.d.ts.map +0 -1
  910. package/dist/forms/fileUpload/FileUpload.d.ts.map +0 -1
  911. package/dist/forms/fileUpload/index.d.ts.map +0 -1
  912. package/dist/forms/fontPicker/FontPicker.d.ts.map +0 -1
  913. package/dist/forms/fontPicker/index.d.ts.map +0 -1
  914. package/dist/forms/formErrorMessage/FormErrorMessage.d.ts.map +0 -1
  915. package/dist/forms/formErrorMessage/index.d.ts.map +0 -1
  916. package/dist/forms/formField/FormField.d.ts.map +0 -1
  917. package/dist/forms/formField/index.d.ts.map +0 -1
  918. package/dist/forms/formHelperText/FormHelperText.d.ts.map +0 -1
  919. package/dist/forms/formHelperText/index.d.ts.map +0 -1
  920. package/dist/forms/gradientPicker/GradientPicker.d.ts.map +0 -1
  921. package/dist/forms/gradientPicker/index.d.ts.map +0 -1
  922. package/dist/forms/iconPicker/IconPicker.d.ts.map +0 -1
  923. package/dist/forms/iconPicker/index.d.ts.map +0 -1
  924. package/dist/forms/index.d.ts.map +0 -1
  925. package/dist/forms/inputAddon/InputAddon.d.ts.map +0 -1
  926. package/dist/forms/inputAddon/index.d.ts.map +0 -1
  927. package/dist/forms/inputGroup/InputGroup.d.ts.map +0 -1
  928. package/dist/forms/inputGroup/index.d.ts.map +0 -1
  929. package/dist/forms/jsonEditor/JSONEditor.d.ts.map +0 -1
  930. package/dist/forms/jsonEditor/index.d.ts.map +0 -1
  931. package/dist/forms/keyboardShortcutPicker/KeyboardShortcutPicker.d.ts.map +0 -1
  932. package/dist/forms/keyboardShortcutPicker/index.d.ts.map +0 -1
  933. package/dist/forms/knob/Knob.d.ts.map +0 -1
  934. package/dist/forms/knob/index.d.ts.map +0 -1
  935. package/dist/forms/label/Label.d.ts.map +0 -1
  936. package/dist/forms/label/index.d.ts.map +0 -1
  937. package/dist/forms/labeledInput/LabeledInput.d.ts.map +0 -1
  938. package/dist/forms/labeledInput/index.d.ts.map +0 -1
  939. package/dist/forms/legend/Legend.d.ts.map +0 -1
  940. package/dist/forms/legend/index.d.ts.map +0 -1
  941. package/dist/forms/listbox/Listbox.d.ts.map +0 -1
  942. package/dist/forms/listbox/Listbox.variants.d.ts.map +0 -1
  943. package/dist/forms/listbox/index.d.ts.map +0 -1
  944. package/dist/forms/markdownEditor/MarkdownEditor.d.ts.map +0 -1
  945. package/dist/forms/markdownEditor/index.d.ts.map +0 -1
  946. package/dist/forms/maskedInput/MaskedInput.d.ts.map +0 -1
  947. package/dist/forms/maskedInput/index.d.ts.map +0 -1
  948. package/dist/forms/multiSelect/MultiSelect.d.ts.map +0 -1
  949. package/dist/forms/multiSelect/index.d.ts.map +0 -1
  950. package/dist/forms/numberInput/NumberInput.d.ts.map +0 -1
  951. package/dist/forms/numberInput/index.d.ts.map +0 -1
  952. package/dist/forms/passwordInput/PasswordInput.d.ts.map +0 -1
  953. package/dist/forms/passwordInput/index.d.ts.map +0 -1
  954. package/dist/forms/passwordStrength/PasswordStrength.d.ts.map +0 -1
  955. package/dist/forms/passwordStrength/index.d.ts.map +0 -1
  956. package/dist/forms/percentInput/PercentInput.d.ts.map +0 -1
  957. package/dist/forms/percentInput/index.d.ts.map +0 -1
  958. package/dist/forms/phoneInput/PhoneInput.d.ts.map +0 -1
  959. package/dist/forms/phoneInput/index.d.ts.map +0 -1
  960. package/dist/forms/pinInput/PinInput.d.ts.map +0 -1
  961. package/dist/forms/pinInput/index.d.ts.map +0 -1
  962. package/dist/forms/radio/Radio.d.ts.map +0 -1
  963. package/dist/forms/radio/index.d.ts.map +0 -1
  964. package/dist/forms/radioField/RadioField.d.ts.map +0 -1
  965. package/dist/forms/radioField/index.d.ts.map +0 -1
  966. package/dist/forms/radioGroup/RadioGroup.d.ts.map +0 -1
  967. package/dist/forms/radioGroup/index.d.ts.map +0 -1
  968. package/dist/forms/rangeCalendar/RangeCalendar.d.ts.map +0 -1
  969. package/dist/forms/rangeCalendar/index.d.ts.map +0 -1
  970. package/dist/forms/reactionPicker/ReactionPicker.d.ts.map +0 -1
  971. package/dist/forms/reactionPicker/index.d.ts.map +0 -1
  972. package/dist/forms/recurrenceEditor/RecurrenceEditor.d.ts.map +0 -1
  973. package/dist/forms/recurrenceEditor/index.d.ts.map +0 -1
  974. package/dist/forms/searchInput/SearchInput.d.ts.map +0 -1
  975. package/dist/forms/searchInput/index.d.ts.map +0 -1
  976. package/dist/forms/select/Select.d.ts.map +0 -1
  977. package/dist/forms/select/Select.variants.d.ts.map +0 -1
  978. package/dist/forms/select/index.d.ts.map +0 -1
  979. package/dist/forms/slider/Slider.d.ts.map +0 -1
  980. package/dist/forms/slider/index.d.ts.map +0 -1
  981. package/dist/forms/stepper/Stepper.d.ts.map +0 -1
  982. package/dist/forms/stepper/index.d.ts.map +0 -1
  983. package/dist/forms/switch/Switch.d.ts.map +0 -1
  984. package/dist/forms/switch/index.d.ts.map +0 -1
  985. package/dist/forms/switchField/SwitchField.d.ts.map +0 -1
  986. package/dist/forms/switchField/index.d.ts.map +0 -1
  987. package/dist/forms/tagsInput/TagsInput.d.ts.map +0 -1
  988. package/dist/forms/tagsInput/index.d.ts.map +0 -1
  989. package/dist/forms/telInput/TelInput.d.ts.map +0 -1
  990. package/dist/forms/telInput/index.d.ts.map +0 -1
  991. package/dist/forms/textInput/TextInput.d.ts.map +0 -1
  992. package/dist/forms/textInput/index.d.ts.map +0 -1
  993. package/dist/forms/textarea/Textarea.d.ts.map +0 -1
  994. package/dist/forms/textarea/index.d.ts.map +0 -1
  995. package/dist/forms/timeField/TimeField.d.ts.map +0 -1
  996. package/dist/forms/timeField/index.d.ts.map +0 -1
  997. package/dist/forms/timePicker/TimePicker.d.ts.map +0 -1
  998. package/dist/forms/timePicker/index.d.ts.map +0 -1
  999. package/dist/forms/urlInput/UrlInput.d.ts.map +0 -1
  1000. package/dist/forms/urlInput/index.d.ts.map +0 -1
  1001. package/dist/forms/wizard/Wizard.d.ts.map +0 -1
  1002. package/dist/forms/wizard/index.d.ts.map +0 -1
  1003. package/dist/hooks/index.d.ts.map +0 -1
  1004. package/dist/hooks/useClipboard.d.ts.map +0 -1
  1005. package/dist/hooks/useControlled.d.ts.map +0 -1
  1006. package/dist/hooks/useDebounceHandler.d.ts.map +0 -1
  1007. package/dist/hooks/useDisclosure.d.ts.map +0 -1
  1008. package/dist/hooks/useEscape.d.ts.map +0 -1
  1009. package/dist/hooks/useEventListener.d.ts.map +0 -1
  1010. package/dist/hooks/useFocusTrap.d.ts.map +0 -1
  1011. package/dist/hooks/useId.d.ts.map +0 -1
  1012. package/dist/hooks/useMediaQuery.d.ts.map +0 -1
  1013. package/dist/hooks/useOutsideClick.d.ts.map +0 -1
  1014. package/dist/hooks/useReducedMotion.d.ts.map +0 -1
  1015. package/dist/hooks/useResizeObserver.d.ts.map +0 -1
  1016. package/dist/hooks/useScrollLock.d.ts.map +0 -1
  1017. package/dist/icons/Icon.d.ts.map +0 -1
  1018. package/dist/icons/Spinner.d.ts.map +0 -1
  1019. package/dist/icons/index.d.ts.map +0 -1
  1020. package/dist/index.d.ts.map +0 -1
  1021. package/dist/layout/appShell/AppShell.d.ts.map +0 -1
  1022. package/dist/layout/appShell/index.d.ts.map +0 -1
  1023. package/dist/layout/aspectRatio/AspectRatio.d.ts.map +0 -1
  1024. package/dist/layout/aspectRatio/index.d.ts.map +0 -1
  1025. package/dist/layout/box/Box.d.ts.map +0 -1
  1026. package/dist/layout/box/index.d.ts.map +0 -1
  1027. package/dist/layout/center/Center.d.ts.map +0 -1
  1028. package/dist/layout/center/index.d.ts.map +0 -1
  1029. package/dist/layout/cluster/Cluster.d.ts.map +0 -1
  1030. package/dist/layout/cluster/index.d.ts.map +0 -1
  1031. package/dist/layout/container/Container.d.ts.map +0 -1
  1032. package/dist/layout/container/Container.variants.d.ts.map +0 -1
  1033. package/dist/layout/container/index.d.ts.map +0 -1
  1034. package/dist/layout/flex/Flex.d.ts.map +0 -1
  1035. package/dist/layout/flex/index.d.ts.map +0 -1
  1036. package/dist/layout/frame/Frame.d.ts.map +0 -1
  1037. package/dist/layout/frame/index.d.ts.map +0 -1
  1038. package/dist/layout/grid/Grid.d.ts.map +0 -1
  1039. package/dist/layout/grid/Grid.variants.d.ts.map +0 -1
  1040. package/dist/layout/grid/index.d.ts.map +0 -1
  1041. package/dist/layout/hStack/HStack.d.ts.map +0 -1
  1042. package/dist/layout/hStack/index.d.ts.map +0 -1
  1043. package/dist/layout/index.d.ts.map +0 -1
  1044. package/dist/layout/inline/Inline.d.ts.map +0 -1
  1045. package/dist/layout/inline/index.d.ts.map +0 -1
  1046. package/dist/layout/overlay/Overlay.d.ts.map +0 -1
  1047. package/dist/layout/overlay/Overlay.variants.d.ts.map +0 -1
  1048. package/dist/layout/overlay/index.d.ts.map +0 -1
  1049. package/dist/layout/pullToRefresh/PullToRefresh.d.ts.map +0 -1
  1050. package/dist/layout/pullToRefresh/index.d.ts.map +0 -1
  1051. package/dist/layout/resizablePanels/ResizablePanels.d.ts.map +0 -1
  1052. package/dist/layout/resizablePanels/index.d.ts.map +0 -1
  1053. package/dist/layout/scrollArea/ScrollArea.d.ts.map +0 -1
  1054. package/dist/layout/scrollArea/index.d.ts.map +0 -1
  1055. package/dist/layout/spacer/Spacer.d.ts.map +0 -1
  1056. package/dist/layout/spacer/index.d.ts.map +0 -1
  1057. package/dist/layout/stack/Stack.d.ts.map +0 -1
  1058. package/dist/layout/stack/Stack.variants.d.ts.map +0 -1
  1059. package/dist/layout/stack/index.d.ts.map +0 -1
  1060. package/dist/layout/surface/Surface.d.ts.map +0 -1
  1061. package/dist/layout/surface/index.d.ts.map +0 -1
  1062. package/dist/layout/twoColumn/TwoColumn.d.ts.map +0 -1
  1063. package/dist/layout/twoColumn/index.d.ts.map +0 -1
  1064. package/dist/layout/vStack/VStack.d.ts.map +0 -1
  1065. package/dist/layout/vStack/index.d.ts.map +0 -1
  1066. package/dist/nav/breadcrumb/Breadcrumb.d.ts.map +0 -1
  1067. package/dist/nav/breadcrumb/index.d.ts.map +0 -1
  1068. package/dist/nav/commandPalette/CommandPalette.d.ts.map +0 -1
  1069. package/dist/nav/commandPalette/index.d.ts.map +0 -1
  1070. package/dist/nav/contextMenu/ContextMenu.d.ts.map +0 -1
  1071. package/dist/nav/contextMenu/index.d.ts.map +0 -1
  1072. package/dist/nav/dropdownMenu/DropdownMenu.d.ts.map +0 -1
  1073. package/dist/nav/dropdownMenu/index.d.ts.map +0 -1
  1074. package/dist/nav/index.d.ts.map +0 -1
  1075. package/dist/nav/menu/Menu.d.ts.map +0 -1
  1076. package/dist/nav/menu/Menu.variants.d.ts.map +0 -1
  1077. package/dist/nav/menu/index.d.ts.map +0 -1
  1078. package/dist/nav/menubar/Menubar.d.ts.map +0 -1
  1079. package/dist/nav/menubar/Menubar.variants.d.ts.map +0 -1
  1080. package/dist/nav/menubar/index.d.ts.map +0 -1
  1081. package/dist/nav/navItem/NavItem.d.ts.map +0 -1
  1082. package/dist/nav/navItem/index.d.ts.map +0 -1
  1083. package/dist/nav/navigationMenu/NavigationMenu.d.ts.map +0 -1
  1084. package/dist/nav/navigationMenu/index.d.ts.map +0 -1
  1085. package/dist/nav/pagination/Pagination.d.ts.map +0 -1
  1086. package/dist/nav/pagination/index.d.ts.map +0 -1
  1087. package/dist/nav/scrollSpy/ScrollSpy.d.ts.map +0 -1
  1088. package/dist/nav/scrollSpy/index.d.ts.map +0 -1
  1089. package/dist/nav/tableOfContents/TableOfContents.d.ts.map +0 -1
  1090. package/dist/nav/tableOfContents/index.d.ts.map +0 -1
  1091. package/dist/overlays/OverlayChrome.d.ts.map +0 -1
  1092. package/dist/overlays/actionSheet/ActionSheet.d.ts.map +0 -1
  1093. package/dist/overlays/actionSheet/index.d.ts.map +0 -1
  1094. package/dist/overlays/alertDialog/AlertDialog.d.ts.map +0 -1
  1095. package/dist/overlays/alertDialog/index.d.ts.map +0 -1
  1096. package/dist/overlays/backdrop/Backdrop.d.ts.map +0 -1
  1097. package/dist/overlays/backdrop/index.d.ts.map +0 -1
  1098. package/dist/overlays/bottomSheet/BottomSheet.d.ts.map +0 -1
  1099. package/dist/overlays/bottomSheet/index.d.ts.map +0 -1
  1100. package/dist/overlays/dialog/Dialog.d.ts.map +0 -1
  1101. package/dist/overlays/dialog/index.d.ts.map +0 -1
  1102. package/dist/overlays/drawer/Drawer.d.ts.map +0 -1
  1103. package/dist/overlays/drawer/index.d.ts.map +0 -1
  1104. package/dist/overlays/hoverCard/HoverCard.d.ts.map +0 -1
  1105. package/dist/overlays/hoverCard/index.d.ts.map +0 -1
  1106. package/dist/overlays/index.d.ts.map +0 -1
  1107. package/dist/overlays/popover/Popover.d.ts.map +0 -1
  1108. package/dist/overlays/popover/index.d.ts.map +0 -1
  1109. package/dist/primitives/accessibleIcon/AccessibleIcon.d.ts.map +0 -1
  1110. package/dist/primitives/accessibleIcon/index.d.ts.map +0 -1
  1111. package/dist/primitives/anchoredPositioner/AnchoredPositioner.d.ts.map +0 -1
  1112. package/dist/primitives/anchoredPositioner/index.d.ts.map +0 -1
  1113. package/dist/primitives/announce/Announce.d.ts.map +0 -1
  1114. package/dist/primitives/announce/index.d.ts.map +0 -1
  1115. package/dist/primitives/collection/Collection.d.ts.map +0 -1
  1116. package/dist/primitives/collection/index.d.ts.map +0 -1
  1117. package/dist/primitives/directionProvider/DirectionProvider.d.ts.map +0 -1
  1118. package/dist/primitives/directionProvider/index.d.ts.map +0 -1
  1119. package/dist/primitives/dismissableLayer/DismissableLayer.d.ts.map +0 -1
  1120. package/dist/primitives/dismissableLayer/index.d.ts.map +0 -1
  1121. package/dist/primitives/focusScope/FocusScope.d.ts.map +0 -1
  1122. package/dist/primitives/focusScope/index.d.ts.map +0 -1
  1123. package/dist/primitives/formControlContext/FormControlContext.d.ts.map +0 -1
  1124. package/dist/primitives/formControlContext/index.d.ts.map +0 -1
  1125. package/dist/primitives/index.d.ts.map +0 -1
  1126. package/dist/primitives/overlayArrow/OverlayArrow.d.ts.map +0 -1
  1127. package/dist/primitives/overlayArrow/index.d.ts.map +0 -1
  1128. package/dist/primitives/portal/Portal.d.ts.map +0 -1
  1129. package/dist/primitives/portal/index.d.ts.map +0 -1
  1130. package/dist/primitives/presence/Presence.d.ts.map +0 -1
  1131. package/dist/primitives/presence/index.d.ts.map +0 -1
  1132. package/dist/primitives/rovingFocusGroup/RovingFocusGroup.d.ts.map +0 -1
  1133. package/dist/primitives/rovingFocusGroup/index.d.ts.map +0 -1
  1134. package/dist/primitives/scrollLockProvider/ScrollLockProvider.d.ts.map +0 -1
  1135. package/dist/primitives/scrollLockProvider/index.d.ts.map +0 -1
  1136. package/dist/primitives/slot/Slot.d.ts.map +0 -1
  1137. package/dist/primitives/slot/index.d.ts.map +0 -1
  1138. package/dist/primitives/visuallyHidden/VisuallyHidden.d.ts.map +0 -1
  1139. package/dist/primitives/visuallyHidden/index.d.ts.map +0 -1
  1140. package/dist/utils/ColorExtensions.d.ts.map +0 -1
  1141. package/dist/utils/CssExtensions.d.ts.map +0 -1
  1142. package/dist/utils/Equality.d.ts.map +0 -1
  1143. package/dist/utils/HtmlExtensions.d.ts.map +0 -1
  1144. package/dist/utils/KeyboardExtensions.d.ts.map +0 -1
  1145. package/dist/utils/Layers.d.ts.map +0 -1
  1146. package/dist/utils/OptionalExtensions.d.ts.map +0 -1
  1147. package/dist/utils/PressExtensions.d.ts.map +0 -1
  1148. package/dist/utils/StyleTokens.d.ts.map +0 -1
  1149. package/dist/utils/SurfaceStyles.d.ts.map +0 -1
  1150. package/dist/utils/Tones.d.ts.map +0 -1
  1151. package/dist/utils/TransitionExtensions.d.ts.map +0 -1
  1152. package/dist/utils/cn.d.ts.map +0 -1
  1153. package/dist/utils/composeEventHandlers.d.ts.map +0 -1
  1154. package/dist/utils/composeRefs.d.ts.map +0 -1
  1155. package/dist/utils/dataAttr.d.ts.map +0 -1
  1156. package/dist/utils/index.d.ts.map +0 -1
  1157. package/dist/utils/polymorphic.d.ts.map +0 -1
  1158. package/dist/utils/tv.d.ts.map +0 -1
@@ -1,17 +1,17 @@
1
- import { listboxItemVariants, listboxVariants, listboxGroupLabelVariants, listboxSeparatorVariants, listboxEmptyVariants } from './chunk-CRKW4VXA.js';
2
- import { PopoverTrigger, Popover, PopoverContent } from './chunk-IEAFEEZB.js';
3
- import { startOfMonth, isSameDay, isToday, isDateDisabled, parseISODate, formatISODate, parseISOTime, Tag, addMonths, Kbd, addDays, buildMonthGrid, MONTHS_LONG, WEEKDAYS_SHORT, formatISOTime, startOfDay, isInRange } from './chunk-VIWAIXVK.js';
4
- import { useControlled } from './chunk-NUMFGKPY.js';
5
- import { Icon } from './chunk-F227LKWK.js';
6
- import { tv, CssExtensions, ColorExtensions, dataAttr, surfaceVariants, Equality } from './chunk-RDDIOVK4.js';
7
- import { useFormControl, FormControlProvider, RovingFocusGroup, useRovingFocusItem, Portal, AnchoredPositioner, DismissableLayer } from './chunk-BMABNEZX.js';
8
- import { useId } from './chunk-KDXJQNB6.js';
9
- import { cn, composeRefs } from './chunk-LDRFQG44.js';
1
+ import { listboxItemVariants, listboxVariants, listboxGroupLabelVariants, listboxSeparatorVariants, listboxEmptyVariants } from './chunk-577JZ2A2.js';
2
+ import { PopoverTrigger, Popover, PopoverContent } from './chunk-MTD4RTGO.js';
3
+ import { startOfMonth, isSameDay, isToday, isDateDisabled, parseISODate, formatISODate, parseISOTime, Tag, addMonths, Kbd, addDays, buildMonthGrid, MONTHS_LONG, WEEKDAYS_SHORT, formatISOTime, startOfDay, isInRange } from './chunk-XDATW7NF.js';
4
+ import { useControlled, useTypeahead } from './chunk-V267IMBH.js';
5
+ import { Icon } from './chunk-MVMDDGW7.js';
6
+ import { tv, CssExtensions, ColorExtensions, dataAttr, surfaceVariants, Equality } from './chunk-JYGC5SRP.js';
7
+ import { useFormControl, FormControlProvider, Announce, RovingFocusGroup, useRovingFocusItem, Portal, AnchoredPositioner, DismissableLayer } from './chunk-TTSJZEL7.js';
8
+ import { useId } from './chunk-LGTGZ3RW.js';
9
+ import { cn, composeRefs } from './chunk-X2MYOHOB.js';
10
10
  import * as React from 'react';
11
- import { forwardRef, useRef, useImperativeHandle, useState, Children, isValidElement, cloneElement, useId as useId$1, createContext, useEffect, useMemo, useCallback, Fragment as Fragment$1, useContext } from 'react';
11
+ import { forwardRef, useRef, useImperativeHandle, useState, useEffect, Children, isValidElement, cloneElement, useId as useId$1, createContext, useMemo, useCallback, Fragment as Fragment$1, useContext } from 'react';
12
12
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
13
13
  import { Minus, Plus, EyeOff, Eye, Search, X, Check, Upload, Loader2, ChevronDown, Calendar as Calendar$1, Clock, UploadCloud, ChevronRight, Copy, Zap, Wallet, Video, User, Trash, Tag as Tag$1, Sun, Star, ShoppingCart, Share2, Settings, Send, Play, Pin, Phone, Pencil, Paperclip, Music, Moon, Mic, MessageCircle, Map as Map$1, Mail, Lock, Link2, Lightbulb, Layers, Info, Inbox, Image, Home, Heart, Globe, Folder, File, ExternalLink, Edit, Download, Compass, Coffee, Code, Cloud, Camera, Bookmark, Bell, ChevronLeft, Heading1, Heading2, Bold, Italic, List, Quote } from 'lucide-react';
14
- import { marked } from 'marked';
14
+ import { Marked } from 'marked';
15
15
 
16
16
  var SIZE = {
17
17
  xs: "text-xs",
@@ -19,9 +19,9 @@ var SIZE = {
19
19
  md: "text-sm"
20
20
  };
21
21
  var Label = forwardRef(
22
- ({ className, required, size = "md", htmlFor, id, children, ...props }, ref) => {
22
+ ({ className, isRequired: isRequiredProp, size = "md", htmlFor, id, children, ...props }, ref) => {
23
23
  const ctx = useFormControl();
24
- const isRequired = required ?? ctx?.isRequired ?? false;
24
+ const isRequired = isRequiredProp ?? ctx?.isRequired ?? false;
25
25
  return /* @__PURE__ */ jsxs(
26
26
  "label",
27
27
  {
@@ -224,8 +224,8 @@ var NumberInput = forwardRef(
224
224
  const adjust = (direction) => {
225
225
  const el = inputRef.current;
226
226
  if (!el || typeof el.stepUp !== "function") return;
227
- if (direction === 1) el.stepUp(step);
228
- else el.stepDown(step);
227
+ if (direction === 1) el.stepUp();
228
+ else el.stepDown();
229
229
  el.dispatchEvent(new Event("input", { bubbles: true }));
230
230
  el.dispatchEvent(new Event("change", { bubbles: true }));
231
231
  };
@@ -285,7 +285,7 @@ var PasswordInput = forwardRef(
285
285
  disabled,
286
286
  required,
287
287
  readOnly,
288
- toggleable = true,
288
+ hasToggle = true,
289
289
  autoComplete = "current-password",
290
290
  ...props
291
291
  }, ref) => {
@@ -307,11 +307,11 @@ var PasswordInput = forwardRef(
307
307
  readOnly: readOnly ?? ctx?.isReadOnly,
308
308
  "aria-invalid": ctx?.isInvalid || void 0,
309
309
  "aria-describedby": ctx ? `${ctx.helperId} ${ctx.errorId}` : void 0,
310
- className: cn(inputBaseVariants({ size, state: finalState }), toggleable && "pr-10"),
310
+ className: cn(inputBaseVariants({ size, state: finalState }), hasToggle && "pr-10"),
311
311
  ...props
312
312
  }
313
313
  ),
314
- toggleable && /* @__PURE__ */ jsx(
314
+ hasToggle && /* @__PURE__ */ jsx(
315
315
  "button",
316
316
  {
317
317
  type: "button",
@@ -336,7 +336,7 @@ var SearchInput = forwardRef(
336
336
  disabled,
337
337
  required,
338
338
  readOnly,
339
- clearable = true,
339
+ isClearable = true,
340
340
  onClear,
341
341
  onChange,
342
342
  defaultValue,
@@ -351,7 +351,7 @@ var SearchInput = forwardRef(
351
351
  const isControlled = value !== void 0;
352
352
  const [uncontrolled, setUncontrolled] = useState(defaultValue ?? "");
353
353
  const currentValue = isControlled ? value : uncontrolled;
354
- const showClear = clearable && String(currentValue ?? "").length > 0;
354
+ const showClear = isClearable && String(currentValue ?? "").length > 0;
355
355
  const handleClear = () => {
356
356
  const el = inputRef.current;
357
357
  if (el) {
@@ -580,7 +580,7 @@ var Checkbox = forwardRef(
580
580
  ({
581
581
  className,
582
582
  size = "md",
583
- indeterminate,
583
+ isIndeterminate,
584
584
  variant = "solid",
585
585
  tone = "primary",
586
586
  color,
@@ -592,6 +592,10 @@ var Checkbox = forwardRef(
592
592
  }, ref) => {
593
593
  const ctx = useFormControl();
594
594
  const isDisabled = disabled ?? ctx?.isDisabled;
595
+ const inputRef = useRef(null);
596
+ useEffect(() => {
597
+ if (inputRef.current) inputRef.current.indeterminate = Boolean(isIndeterminate);
598
+ }, [isIndeterminate]);
595
599
  const { preset: sizePreset, box: sizeBox } = CssExtensions.parseSizeUnion(
596
600
  size,
597
601
  CHECKBOX_SIZE_PRESETS
@@ -610,12 +614,13 @@ var Checkbox = forwardRef(
610
614
  /* @__PURE__ */ jsx(
611
615
  "input",
612
616
  {
613
- ref,
617
+ ref: composeRefs(inputRef, ref),
614
618
  type: "checkbox",
615
619
  id: id ?? ctx?.id,
616
620
  disabled: isDisabled,
617
621
  required: required ?? ctx?.isRequired,
618
622
  checked,
623
+ "aria-checked": isIndeterminate ? "mixed" : void 0,
619
624
  "aria-invalid": ctx?.isInvalid || void 0,
620
625
  "aria-describedby": ctx ? `${ctx.helperId} ${ctx.errorId}` : void 0,
621
626
  className: "peer absolute inset-0 m-0 h-full w-full cursor-pointer opacity-0 disabled:cursor-not-allowed",
@@ -628,9 +633,9 @@ var Checkbox = forwardRef(
628
633
  "aria-hidden": "true",
629
634
  className: cn(
630
635
  checkboxVariants({ variant, tone }),
631
- indeterminate ? INDETERMINATE_CHECKED_CLASS[variant][tone] : "[&>svg]:opacity-0 peer-checked:[&>svg]:opacity-100"
636
+ isIndeterminate ? INDETERMINATE_CHECKED_CLASS[variant][tone] : "[&>svg]:opacity-0 peer-checked:[&>svg]:opacity-100"
632
637
  ),
633
- children: indeterminate ? /* @__PURE__ */ jsx(Minus, { className: iconClass }) : /* @__PURE__ */ jsx(Check, { className: iconClass })
638
+ children: isIndeterminate ? /* @__PURE__ */ jsx(Minus, { className: iconClass }) : /* @__PURE__ */ jsx(Check, { className: iconClass })
634
639
  }
635
640
  )
636
641
  ]
@@ -668,10 +673,12 @@ var Radio = forwardRef(
668
673
  className: cn(
669
674
  "pointer-events-none grid h-full w-full place-items-center rounded-full border border-input bg-background transition-colors",
670
675
  "peer-checked:border-primary",
676
+ /* Dot opacity gate lives on this span (a peer sibling of the input) — child-selector targets the dot. peer-checked: cannot reach descendants directly. */
677
+ "[&>span]:opacity-0 peer-checked:[&>span]:opacity-100",
671
678
  "peer-focus-visible:ring-2 peer-focus-visible:ring-ring peer-focus-visible:ring-offset-1",
672
679
  "peer-disabled:opacity-50"
673
680
  ),
674
- children: /* @__PURE__ */ jsx("span", { className: "h-2 w-2 rounded-full bg-primary opacity-0 peer-checked:opacity-100" })
681
+ children: /* @__PURE__ */ jsx("span", { className: "h-2 w-2 rounded-full bg-primary" })
675
682
  }
676
683
  )
677
684
  ] });
@@ -684,9 +691,14 @@ var TRACK_CLASS = {
684
691
  lg: "h-6 w-11"
685
692
  };
686
693
  var THUMB_CLASS = {
687
- sm: "h-3 w-3 peer-checked:translate-x-3",
688
- md: "h-4 w-4 peer-checked:translate-x-4",
689
- lg: "h-5 w-5 peer-checked:translate-x-5"
694
+ sm: "h-3 w-3",
695
+ md: "h-4 w-4",
696
+ lg: "h-5 w-5"
697
+ };
698
+ var TRACK_CHECKED_CLASS = {
699
+ sm: "peer-checked:[&>span]:translate-x-3",
700
+ md: "peer-checked:[&>span]:translate-x-4",
701
+ lg: "peer-checked:[&>span]:translate-x-5"
690
702
  };
691
703
  var Switch = forwardRef(
692
704
  ({ className, size = "md", id, disabled, required, ...props }, ref) => {
@@ -713,6 +725,7 @@ var Switch = forwardRef(
713
725
  className: cn(
714
726
  "pointer-events-none flex h-full w-full items-center rounded-full bg-input px-0.5 transition-colors",
715
727
  "peer-checked:bg-primary",
728
+ TRACK_CHECKED_CLASS[size],
716
729
  "peer-focus-visible:ring-2 peer-focus-visible:ring-ring peer-focus-visible:ring-offset-1",
717
730
  "peer-disabled:opacity-50"
718
731
  ),
@@ -732,9 +745,9 @@ var Switch = forwardRef(
732
745
  );
733
746
  Switch.displayName = "Switch";
734
747
  var TRACK_CLASS2 = {
735
- sm: "h-1",
736
- md: "h-1.5",
737
- lg: "h-2"
748
+ sm: "[&::-webkit-slider-runnable-track]:h-1 [&::-moz-range-track]:h-1",
749
+ md: "[&::-webkit-slider-runnable-track]:h-1.5 [&::-moz-range-track]:h-1.5",
750
+ lg: "[&::-webkit-slider-runnable-track]:h-2 [&::-moz-range-track]:h-2"
738
751
  };
739
752
  var Slider = forwardRef(
740
753
  ({ className, size = "md", id, disabled, required, min = 0, max = 100, ...props }, ref) => {
@@ -752,12 +765,11 @@ var Slider = forwardRef(
752
765
  "aria-invalid": ctx?.isInvalid || void 0,
753
766
  className: cn(
754
767
  "w-full appearance-none bg-transparent disabled:cursor-not-allowed disabled:opacity-50",
768
+ TRACK_CLASS2[size],
755
769
  // WebKit
756
770
  "[&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:bg-muted",
757
- `[&::-webkit-slider-runnable-track]:${TRACK_CLASS2[size]}`,
758
771
  "[&::-webkit-slider-thumb]:mt-[-6px] [&::-webkit-slider-thumb]:h-4 [&::-webkit-slider-thumb]:w-4 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-2 [&::-webkit-slider-thumb]:border-primary [&::-webkit-slider-thumb]:bg-background",
759
772
  // Firefox
760
- `[&::-moz-range-track]:${TRACK_CLASS2[size]}`,
761
773
  "[&::-moz-range-track]:rounded-full [&::-moz-range-track]:bg-muted",
762
774
  "[&::-moz-range-thumb]:h-4 [&::-moz-range-thumb]:w-4 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border-2 [&::-moz-range-thumb]:border-primary [&::-moz-range-thumb]:bg-background",
763
775
  "focus-visible:outline-none focus-visible:[&::-webkit-slider-thumb]:ring-2 focus-visible:[&::-webkit-slider-thumb]:ring-ring",
@@ -941,33 +953,31 @@ var PinInput = forwardRef(
941
953
  onComplete,
942
954
  type = "numeric",
943
955
  size = "md",
944
- mask,
956
+ isMasked,
945
957
  isDisabled,
946
958
  className,
947
959
  ...props
948
960
  }, ref) => {
949
- const [val, setVal] = useControlled({
950
- controlled: value,
951
- default: defaultValue ?? "",
952
- onChange: onValueChange
961
+ const toCells = (s) => Array.from({ length }, (_, i) => s[i] ?? "");
962
+ const [cells, setCells] = useControlled({
963
+ controlled: value === void 0 ? void 0 : toCells(value),
964
+ default: toCells(defaultValue ?? ""),
965
+ onChange: (next) => onValueChange?.(next.join(""))
953
966
  });
954
- const cells = Array.from({ length }, (_, i) => val[i] ?? "");
955
967
  const inputs = useRef([]);
956
968
  const wrapperRef = useRef(null);
957
969
  useImperativeHandle(ref, () => wrapperRef.current);
958
970
  const isAllowed = (ch) => type === "numeric" ? /^[0-9]$/.test(ch) : /^[A-Za-z0-9]$/.test(ch);
959
971
  const update = (next) => {
960
- const trimmed = next.slice(0, length);
961
- setVal(trimmed);
962
- if (trimmed.length === length) onComplete?.(trimmed);
972
+ setCells(next);
973
+ if (next.every(Boolean)) onComplete?.(next.join(""));
963
974
  };
964
975
  const handleChange = (i, raw) => {
965
976
  const ch = raw.slice(-1);
966
977
  if (ch && !isAllowed(ch)) return;
967
978
  const arr = cells.slice();
968
979
  arr[i] = ch;
969
- const next = arr.join("").slice(0, length);
970
- update(next);
980
+ update(arr);
971
981
  if (ch && i < length - 1) inputs.current[i + 1]?.focus();
972
982
  };
973
983
  const handleKeyDown = (i, e) => {
@@ -986,7 +996,7 @@ var PinInput = forwardRef(
986
996
  const filtered = pasted.split("").filter(isAllowed).join("");
987
997
  if (filtered) {
988
998
  e.preventDefault();
989
- update(filtered);
999
+ update(toCells(filtered));
990
1000
  const focusIdx = Math.min(filtered.length, length - 1);
991
1001
  inputs.current[focusIdx]?.focus();
992
1002
  }
@@ -997,7 +1007,7 @@ var PinInput = forwardRef(
997
1007
  ref: (el) => {
998
1008
  inputs.current[i] = el;
999
1009
  },
1000
- type: mask ? "password" : "text",
1010
+ type: isMasked ? "password" : "text",
1001
1011
  inputMode: type === "numeric" ? "numeric" : "text",
1002
1012
  autoComplete: "one-time-code",
1003
1013
  maxLength: 1,
@@ -1099,7 +1109,7 @@ var PercentInput = forwardRef(
1099
1109
  );
1100
1110
  PercentInput.displayName = "PercentInput";
1101
1111
  var CharacterCount = forwardRef(
1102
- ({ value, max, showMax = true, className, ...props }, ref) => {
1112
+ ({ value, max, isMaxShown = true, className, ...props }, ref) => {
1103
1113
  const over = value > max;
1104
1114
  return /* @__PURE__ */ jsxs(
1105
1115
  "div",
@@ -1114,7 +1124,7 @@ var CharacterCount = forwardRef(
1114
1124
  ...props,
1115
1125
  children: [
1116
1126
  value,
1117
- showMax && ` / ${max}`
1127
+ isMaxShown && ` / ${max}`
1118
1128
  ]
1119
1129
  }
1120
1130
  );
@@ -1219,7 +1229,7 @@ function scorePassword(pw) {
1219
1229
  return Math.min(4, score);
1220
1230
  }
1221
1231
  var PasswordStrength = forwardRef(
1222
- ({ value, score, hideLabel, className, ...props }, ref) => {
1232
+ ({ value, score, isLabelHidden, className, ...props }, ref) => {
1223
1233
  const s = score ?? (value.length === 0 ? 0 : scorePassword(value));
1224
1234
  const label = LABELS[s] ?? "";
1225
1235
  const tone = TONE[s] ?? "bg-destructive";
@@ -1234,7 +1244,7 @@ var PasswordStrength = forwardRef(
1234
1244
  },
1235
1245
  i
1236
1246
  )) }),
1237
- !hideLabel && value && /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: label })
1247
+ !isLabelHidden && value && /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: label })
1238
1248
  ] });
1239
1249
  }
1240
1250
  );
@@ -1272,7 +1282,10 @@ var FilePicker = forwardRef(
1272
1282
  type: "file",
1273
1283
  disabled,
1274
1284
  className: "sr-only",
1275
- onChange: (e) => onFilesChange?.(e.target.files),
1285
+ onChange: (e) => {
1286
+ onFilesChange?.(e.target.files);
1287
+ e.target.value = "";
1288
+ },
1276
1289
  ...props
1277
1290
  }
1278
1291
  ),
@@ -1290,26 +1303,27 @@ function useListboxContext() {
1290
1303
  }
1291
1304
  function ListboxImpl(props, ref) {
1292
1305
  const {
1293
- multiple = false,
1306
+ isMultiple = false,
1294
1307
  value,
1295
1308
  defaultValue,
1296
1309
  onValueChange,
1297
1310
  isEqual,
1298
1311
  indicator,
1312
+ onActiveChange,
1299
1313
  variant,
1300
1314
  tone,
1301
1315
  radius,
1302
1316
  padding,
1303
1317
  elevation,
1304
- disabled,
1318
+ isDisabled,
1305
1319
  className,
1306
1320
  children,
1307
1321
  onKeyDown,
1308
1322
  ...rest
1309
1323
  } = props;
1310
1324
  const equals = isEqual ?? defaultEquals;
1311
- const resolvedIndicator = indicator ?? (multiple ? "checkbox" : "check");
1312
- const initial = defaultValue ?? (multiple ? [] : void 0);
1325
+ const resolvedIndicator = indicator ?? (isMultiple ? "checkbox" : "check");
1326
+ const initial = defaultValue ?? (isMultiple ? [] : void 0);
1313
1327
  const [current, setCurrent] = useControlled({
1314
1328
  controlled: value,
1315
1329
  default: initial,
@@ -1331,7 +1345,7 @@ function ListboxImpl(props, ref) {
1331
1345
  }, []);
1332
1346
  const onItemSelect = useCallback(
1333
1347
  (next) => {
1334
- if (multiple) {
1348
+ if (isMultiple) {
1335
1349
  const cur = Array.isArray(current) ? current : [];
1336
1350
  const has = cur.some((v) => equals(v, next));
1337
1351
  const out = has ? cur.filter((v) => !equals(v, next)) : [...cur, next];
@@ -1340,19 +1354,28 @@ function ListboxImpl(props, ref) {
1340
1354
  setCurrent(next);
1341
1355
  }
1342
1356
  },
1343
- [multiple, current, setCurrent, equals]
1357
+ [isMultiple, current, setCurrent, equals]
1344
1358
  );
1345
1359
  useEffect(() => {
1346
1360
  if (activeId) return;
1347
1361
  const firstSelected = items.current.find(
1348
- (i) => !i.disabled && values.some((v) => equals(v, i.value))
1362
+ (i) => !i.isDisabled && values.some((v) => equals(v, i.value))
1349
1363
  );
1350
- const firstEnabled = items.current.find((i) => !i.disabled);
1364
+ const firstEnabled = items.current.find((i) => !i.isDisabled);
1351
1365
  setActiveId((firstSelected ?? firstEnabled)?.id ?? null);
1352
1366
  }, []);
1367
+ const onActiveChangeRef = useRef(onActiveChange);
1368
+ onActiveChangeRef.current = onActiveChange;
1369
+ useEffect(() => {
1370
+ onActiveChangeRef.current?.(activeId);
1371
+ }, [activeId]);
1372
+ const activateById = useCallback((id) => {
1373
+ setActiveId(id);
1374
+ document.getElementById(id)?.scrollIntoView({ block: "nearest" });
1375
+ }, []);
1353
1376
  const moveActive = useCallback(
1354
1377
  (direction, jump = 1) => {
1355
- const list = items.current.filter((i) => !i.disabled);
1378
+ const list = items.current.filter((i) => !i.isDisabled);
1356
1379
  if (list.length === 0) return;
1357
1380
  const currentIdx = list.findIndex((i) => i.id === activeId);
1358
1381
  let nextIdx = currentIdx + direction * jump;
@@ -1360,14 +1383,25 @@ function ListboxImpl(props, ref) {
1360
1383
  if (nextIdx < 0) nextIdx = 0;
1361
1384
  if (nextIdx >= list.length) nextIdx = list.length - 1;
1362
1385
  const nextEntry = list[nextIdx];
1363
- if (nextEntry) setActiveId(nextEntry.id);
1386
+ if (nextEntry) activateById(nextEntry.id);
1364
1387
  },
1365
- [activeId]
1388
+ [activeId, activateById]
1366
1389
  );
1390
+ const typeahead = useTypeahead({
1391
+ items: () => items.current,
1392
+ getLabel: (entry) => document.getElementById(entry.id)?.textContent ?? "",
1393
+ isDisabled: (entry) => entry.isDisabled,
1394
+ getActiveIndex: () => items.current.findIndex((i) => i.id === activeId),
1395
+ onMatch: (entry) => activateById(entry.id)
1396
+ });
1367
1397
  const handleKeyDown = useCallback(
1368
1398
  (event) => {
1369
1399
  onKeyDown?.(event);
1370
- if (event.defaultPrevented || disabled) return;
1400
+ if (event.defaultPrevented || isDisabled) return;
1401
+ if (typeahead.onKeyDown(event)) {
1402
+ event.preventDefault();
1403
+ return;
1404
+ }
1371
1405
  switch (event.key) {
1372
1406
  case "ArrowDown":
1373
1407
  event.preventDefault();
@@ -1397,18 +1431,18 @@ function ListboxImpl(props, ref) {
1397
1431
  case " ": {
1398
1432
  if (!activeId) return;
1399
1433
  const entry = items.current.find((i) => i.id === activeId);
1400
- if (!entry || entry.disabled) return;
1434
+ if (!entry || entry.isDisabled) return;
1401
1435
  event.preventDefault();
1402
1436
  onItemSelect(entry.value);
1403
1437
  break;
1404
1438
  }
1405
1439
  }
1406
1440
  },
1407
- [activeId, disabled, moveActive, onItemSelect, onKeyDown]
1441
+ [activeId, isDisabled, moveActive, onItemSelect, onKeyDown, typeahead]
1408
1442
  );
1409
1443
  const ctx = useMemo(
1410
1444
  () => ({
1411
- multiple,
1445
+ isMultiple,
1412
1446
  values,
1413
1447
  isEqual: equals,
1414
1448
  activeId,
@@ -1416,17 +1450,19 @@ function ListboxImpl(props, ref) {
1416
1450
  registerItem,
1417
1451
  unregisterItem,
1418
1452
  setActiveId,
1419
- indicator: resolvedIndicator
1453
+ indicator: resolvedIndicator,
1454
+ isDisabled: isDisabled ?? false
1420
1455
  }),
1421
1456
  [
1422
- multiple,
1457
+ isMultiple,
1423
1458
  values,
1424
1459
  equals,
1425
1460
  activeId,
1426
1461
  onItemSelect,
1427
1462
  registerItem,
1428
1463
  unregisterItem,
1429
- resolvedIndicator
1464
+ resolvedIndicator,
1465
+ isDisabled
1430
1466
  ]
1431
1467
  );
1432
1468
  const resolvedPadding = padding ?? "xs";
@@ -1435,10 +1471,10 @@ function ListboxImpl(props, ref) {
1435
1471
  {
1436
1472
  ref,
1437
1473
  role: "listbox",
1438
- tabIndex: disabled ? -1 : 0,
1439
- "aria-multiselectable": multiple || void 0,
1474
+ tabIndex: isDisabled ? -1 : 0,
1475
+ "aria-multiselectable": isMultiple || void 0,
1440
1476
  "aria-activedescendant": activeId ?? void 0,
1441
- "aria-disabled": disabled || void 0,
1477
+ "aria-disabled": isDisabled || void 0,
1442
1478
  onKeyDown: handleKeyDown,
1443
1479
  className: cn(
1444
1480
  surfaceVariants({ variant, tone, radius, padding: resolvedPadding, elevation }),
@@ -1498,25 +1534,25 @@ function LeadingIndicator({
1498
1534
  function TrailingIndicator({
1499
1535
  indicator,
1500
1536
  isSelected,
1501
- multiple
1537
+ isMultiple
1502
1538
  }) {
1503
1539
  if (indicator === "check" && isSelected) {
1504
- return /* @__PURE__ */ jsx(Check, { className: cn("h-4 w-4 shrink-0", !multiple && "opacity-80") });
1540
+ return /* @__PURE__ */ jsx(Check, { className: cn("h-4 w-4 shrink-0", !isMultiple && "opacity-80") });
1505
1541
  }
1506
1542
  return null;
1507
1543
  }
1508
- var ListboxItem = forwardRef(function ListboxItem2({ value, disabled = false, indicator: itemIndicator, className, children, onClick, onPointerEnter, ...rest }, forwardedRef) {
1544
+ var ListboxItem = forwardRef(function ListboxItem2({ value, isDisabled = false, indicator: itemIndicator, className, children, onClick, onPointerEnter, ...rest }, forwardedRef) {
1509
1545
  const ctx = useListboxContext();
1510
1546
  const id = useId$1();
1511
1547
  const ref = useRef(null);
1512
1548
  const indicator = itemIndicator ?? ctx.indicator;
1513
1549
  useEffect(() => {
1514
- ctx.registerItem({ id, value, disabled });
1550
+ ctx.registerItem({ id, value, isDisabled });
1515
1551
  return () => ctx.unregisterItem(id);
1516
- }, [ctx, id, value, disabled]);
1552
+ }, [ctx, id, value, isDisabled]);
1517
1553
  const isSelected = ctx.values.some((v) => ctx.isEqual(v, value));
1518
1554
  const isActive = ctx.activeId === id;
1519
- const state = disabled ? "disabled" : isSelected ? "selected" : isActive ? "active" : "default";
1555
+ const state = isDisabled ? "disabled" : isSelected ? "selected" : isActive ? "active" : "default";
1520
1556
  const setRefs = (node) => {
1521
1557
  ref.current = node;
1522
1558
  if (typeof forwardedRef === "function") forwardedRef(node);
@@ -1529,25 +1565,25 @@ var ListboxItem = forwardRef(function ListboxItem2({ value, disabled = false, in
1529
1565
  id,
1530
1566
  role: "option",
1531
1567
  "aria-selected": isSelected,
1532
- "aria-disabled": disabled || void 0,
1568
+ "aria-disabled": isDisabled || void 0,
1533
1569
  "data-active": isActive ? "" : void 0,
1534
1570
  "data-selected": isSelected ? "" : void 0,
1535
- "data-disabled": disabled ? "" : void 0,
1571
+ "data-disabled": isDisabled ? "" : void 0,
1536
1572
  onClick: (e) => {
1537
1573
  onClick?.(e);
1538
- if (e.defaultPrevented || disabled) return;
1574
+ if (e.defaultPrevented || isDisabled || ctx.isDisabled) return;
1539
1575
  ctx.onItemSelect(value);
1540
1576
  },
1541
1577
  onPointerEnter: (e) => {
1542
1578
  onPointerEnter?.(e);
1543
- if (!disabled) ctx.setActiveId(id);
1579
+ if (!isDisabled) ctx.setActiveId(id);
1544
1580
  },
1545
1581
  className: cn(listboxItemVariants({ state }), className),
1546
1582
  ...rest,
1547
1583
  children: [
1548
1584
  /* @__PURE__ */ jsx(LeadingIndicator, { indicator, isSelected }),
1549
- /* @__PURE__ */ jsx("span", { className: "flex min-w-0 flex-1 items-center gap-2", children }),
1550
- /* @__PURE__ */ jsx(TrailingIndicator, { indicator, isSelected, multiple: ctx.multiple })
1585
+ /* @__PURE__ */ jsx("span", { "data-listbox-item-content": true, className: "flex min-w-0 flex-1 items-center gap-2", children }),
1586
+ /* @__PURE__ */ jsx(TrailingIndicator, { indicator, isSelected, isMultiple: ctx.isMultiple })
1551
1587
  ]
1552
1588
  }
1553
1589
  );
@@ -1573,22 +1609,15 @@ Listbox.Empty = ListboxEmpty;
1573
1609
 
1574
1610
  // src/forms/select/Select.variants.ts
1575
1611
  var selectTriggerVariants = tv({
1576
- base: "flex w-full items-center justify-between gap-2 rounded-md border bg-popover text-foreground transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-60 data-[state=open]:border-border-strong",
1612
+ extend: inputBaseVariants,
1613
+ base: "items-center justify-between gap-2 data-[state=open]:border-border-strong",
1577
1614
  variants: {
1578
1615
  size: {
1579
- xs: "h-7 gap-1.5 px-2.5 text-[11px]",
1580
- sm: "h-8 px-2.5 text-sm",
1581
- md: "h-10 px-3 text-sm",
1582
- lg: "h-12 px-4 text-base"
1583
- },
1584
- state: {
1585
- default: "border-input hover:border-border-strong",
1586
- invalid: "border-destructive focus-visible:ring-destructive"
1616
+ xs: "gap-1.5",
1617
+ sm: "",
1618
+ md: "",
1619
+ lg: ""
1587
1620
  }
1588
- },
1589
- defaultVariants: {
1590
- size: "md",
1591
- state: "default"
1592
1621
  }
1593
1622
  });
1594
1623
  var SelectContext = createContext(null);
@@ -1598,41 +1627,54 @@ function useSelectContext() {
1598
1627
  return ctx;
1599
1628
  }
1600
1629
  function SelectImpl({
1601
- selected,
1602
- defaultSelected,
1603
- onChange,
1630
+ value,
1631
+ defaultValue,
1632
+ onValueChange,
1604
1633
  keyEquals,
1605
- disabled = false,
1634
+ isDisabled,
1606
1635
  isLoading = false,
1607
- clearable = false,
1636
+ loadingLabel = "Loading options\u2026",
1637
+ isClearable = false,
1638
+ clearLabel = "Clear selection",
1608
1639
  name,
1609
1640
  serializeKey,
1610
- invalid,
1641
+ getOptionLabel,
1642
+ isInvalid,
1611
1643
  defaultOpen = false,
1612
1644
  open: openProp,
1613
1645
  onOpenChange,
1614
1646
  placement = "bottom",
1615
1647
  children
1616
1648
  }) {
1649
+ const field = useFormControl();
1650
+ const finalDisabled = isDisabled ?? field?.isDisabled ?? false;
1651
+ const finalInvalid = isInvalid ?? field?.isInvalid ?? false;
1617
1652
  const [openState, setOpenState] = useControlled({
1618
1653
  controlled: openProp,
1619
1654
  default: defaultOpen,
1620
1655
  onChange: onOpenChange
1621
1656
  });
1622
1657
  const [keyState, setKeyState] = useControlled({
1623
- controlled: selected,
1624
- default: defaultSelected ?? null,
1658
+ controlled: value,
1659
+ default: defaultValue ?? null,
1625
1660
  /* Emits via `emitChange` below — needs both key + value, not just key. */
1626
1661
  onChange: void 0
1627
1662
  });
1628
1663
  const [items, setItems] = useState([]);
1664
+ const labelCacheRef = useRef(/* @__PURE__ */ new Map());
1629
1665
  const [query, setQuery] = useState("");
1666
+ const [activeDescendant, setActiveDescendant] = useState(null);
1667
+ const generatedListboxId = useId("select-listbox");
1668
+ const listboxRef = useRef(null);
1669
+ const [selectedEntry, setSelectedEntry] = useState(null);
1630
1670
  const keyEqualsRef = useRef(keyEquals);
1631
1671
  keyEqualsRef.current = keyEquals;
1632
1672
  const serializeKeyRef = useRef(serializeKey);
1633
1673
  serializeKeyRef.current = serializeKey;
1634
- const onChangeRef = useRef(onChange);
1635
- onChangeRef.current = onChange;
1674
+ const getOptionLabelRef = useRef(getOptionLabel);
1675
+ getOptionLabelRef.current = getOptionLabel;
1676
+ const onValueChangeRef = useRef(onValueChange);
1677
+ onValueChangeRef.current = onValueChange;
1636
1678
  const keyEqualsFn = useCallback((a, b) => {
1637
1679
  const fn = keyEqualsRef.current;
1638
1680
  return (fn ?? Equality.strictEquals)(a, b);
@@ -1641,13 +1683,18 @@ function SelectImpl({
1641
1683
  const fn = serializeKeyRef.current;
1642
1684
  return (fn ?? ((x) => String(x)))(k);
1643
1685
  }, []);
1686
+ const getOptionLabelFn = useCallback((k) => {
1687
+ const fn = getOptionLabelRef.current;
1688
+ return fn ? fn(k) : null;
1689
+ }, []);
1644
1690
  const registerItem = useCallback(
1645
1691
  (entry) => {
1692
+ labelCacheRef.current.set(serializeKeyFn(entry.itemKey), entry.label);
1646
1693
  setItems((prev) => {
1647
1694
  const idx = prev.findIndex((p) => Object.is(p.itemKey, entry.itemKey));
1648
1695
  if (idx >= 0) {
1649
1696
  const existing = prev[idx];
1650
- if (existing && existing.label === entry.label && existing.text === entry.text && Object.is(existing.value, entry.value)) {
1697
+ if (existing && existing.label === entry.label && existing.text === entry.text && existing.isDisabled === entry.isDisabled && Object.is(existing.value, entry.value)) {
1651
1698
  return prev;
1652
1699
  }
1653
1700
  const next = prev.slice();
@@ -1657,7 +1704,7 @@ function SelectImpl({
1657
1704
  return [...prev, entry];
1658
1705
  });
1659
1706
  },
1660
- []
1707
+ [serializeKeyFn]
1661
1708
  );
1662
1709
  const unregisterItem = useCallback((k) => {
1663
1710
  setItems((prev) => {
@@ -1668,15 +1715,20 @@ function SelectImpl({
1668
1715
  return next;
1669
1716
  });
1670
1717
  }, []);
1718
+ const getCachedLabel = useCallback(
1719
+ (k) => labelCacheRef.current.get(serializeKeyFn(k)),
1720
+ [serializeKeyFn]
1721
+ );
1671
1722
  const emitChange = useCallback(
1672
1723
  (next) => {
1673
- onChangeRef.current?.(next);
1724
+ onValueChangeRef.current?.(next);
1674
1725
  },
1675
1726
  []
1676
1727
  );
1677
1728
  const onSelect = useCallback(
1678
1729
  (entry) => {
1679
1730
  setKeyState(entry.itemKey);
1731
+ setSelectedEntry({ itemKey: entry.itemKey, label: entry.label });
1680
1732
  setOpenState(false);
1681
1733
  setQuery("");
1682
1734
  emitChange({
@@ -1689,61 +1741,89 @@ function SelectImpl({
1689
1741
  );
1690
1742
  const onClear = useCallback(() => {
1691
1743
  setKeyState(null);
1744
+ setSelectedEntry(null);
1692
1745
  emitChange(null);
1693
1746
  }, [setKeyState, emitChange]);
1694
1747
  const hasSelection = keyState !== null && keyState !== void 0;
1748
+ const selectedLabel = selectedEntry && hasSelection && keyEqualsFn(selectedEntry.itemKey, keyState) ? selectedEntry.label : null;
1695
1749
  const ctx = useMemo(
1696
1750
  () => ({
1697
1751
  open: openState,
1698
1752
  setOpen: setOpenState,
1699
1753
  selectedKey: keyState,
1700
1754
  hasSelection,
1755
+ selectedLabel,
1701
1756
  onSelect,
1702
1757
  onClear,
1703
1758
  keyEquals: keyEqualsFn,
1704
1759
  items,
1705
1760
  registerItem,
1706
1761
  unregisterItem,
1762
+ getCachedLabel,
1707
1763
  query,
1708
1764
  setQuery,
1709
- disabled,
1765
+ isDisabled: finalDisabled,
1710
1766
  isLoading,
1711
- clearable,
1767
+ loadingLabel,
1768
+ isClearable,
1769
+ clearLabel,
1712
1770
  serializeKey: serializeKeyFn,
1771
+ getOptionLabel: getOptionLabelFn,
1713
1772
  name,
1714
- invalid
1773
+ isInvalid: finalInvalid,
1774
+ listboxId: generatedListboxId,
1775
+ activeDescendant,
1776
+ setActiveDescendant,
1777
+ listboxRef,
1778
+ fieldId: field?.id,
1779
+ labelId: field?.labelId,
1780
+ describedBy: field ? `${field.helperId} ${field.errorId}` : void 0
1715
1781
  }),
1716
1782
  [
1717
1783
  openState,
1718
1784
  setOpenState,
1719
1785
  keyState,
1720
1786
  hasSelection,
1787
+ selectedLabel,
1721
1788
  onSelect,
1722
1789
  onClear,
1723
1790
  keyEqualsFn,
1724
1791
  items,
1725
1792
  registerItem,
1726
1793
  unregisterItem,
1794
+ getCachedLabel,
1727
1795
  query,
1728
- disabled,
1796
+ finalDisabled,
1729
1797
  isLoading,
1730
- clearable,
1798
+ loadingLabel,
1799
+ isClearable,
1800
+ clearLabel,
1731
1801
  serializeKeyFn,
1802
+ getOptionLabelFn,
1732
1803
  name,
1733
- invalid
1804
+ finalInvalid,
1805
+ generatedListboxId,
1806
+ activeDescendant,
1807
+ field
1734
1808
  ]
1735
1809
  );
1736
- return /* @__PURE__ */ jsx(SelectContext.Provider, { value: ctx, children: /* @__PURE__ */ jsx(
1810
+ return /* @__PURE__ */ jsx(SelectContext.Provider, { value: ctx, children: /* @__PURE__ */ jsxs(
1737
1811
  Popover,
1738
1812
  {
1739
1813
  open: openState,
1740
1814
  onOpenChange: (o) => {
1741
1815
  setOpenState(o);
1742
- if (!o) setQuery("");
1816
+ if (!o) {
1817
+ setQuery("");
1818
+ setActiveDescendant(null);
1819
+ }
1743
1820
  },
1744
1821
  placement,
1745
1822
  offset: 4,
1746
- children
1823
+ children: [
1824
+ children,
1825
+ name && hasSelection && /* @__PURE__ */ jsx("input", { type: "hidden", name, value: serializeKeyFn(keyState) })
1826
+ ]
1747
1827
  }
1748
1828
  ) });
1749
1829
  }
@@ -1766,81 +1846,115 @@ var TRIGGER_DIVIDER_CLASSES = {
1766
1846
  md: "h-4",
1767
1847
  lg: "h-5"
1768
1848
  };
1849
+ var TRIGGER_CLEAR_OFFSET_CLASSES = {
1850
+ xs: "right-[35px]",
1851
+ sm: "right-[37px]",
1852
+ md: "right-[41px]",
1853
+ lg: "right-[49px]"
1854
+ };
1855
+ function triggerDataState(open, isLoading, isDisabled, isInvalid) {
1856
+ if (open) return "open";
1857
+ if (isLoading) return "loading";
1858
+ if (isDisabled) return "disabled";
1859
+ if (isInvalid) return "invalid";
1860
+ return void 0;
1861
+ }
1769
1862
  var SelectTrigger = forwardRef(
1770
- function SelectTrigger2({ size, state, className, children, ...rest }, ref) {
1863
+ function SelectTrigger2({ size, state, className, children, "aria-label": ariaLabel, onKeyDown, ...rest }, ref) {
1771
1864
  const ctx = useSelectContext();
1772
- const triggerState = state ?? (ctx.invalid ? "invalid" : "default");
1773
- const showClear = ctx.clearable && ctx.hasSelection && !ctx.isLoading && !ctx.disabled;
1865
+ const triggerState = state ?? (ctx.isInvalid ? "invalid" : "default");
1866
+ const triggerTypeahead = useTypeahead({
1867
+ items: () => ctx.items,
1868
+ getLabel: (entry) => entry.text,
1869
+ isDisabled: (entry) => entry.isDisabled,
1870
+ getActiveIndex: () => ctx.hasSelection ? ctx.items.findIndex((i) => ctx.keyEquals(i.itemKey, ctx.selectedKey)) : -1,
1871
+ onMatch: (entry) => ctx.onSelect(entry),
1872
+ enabled: !ctx.open && !ctx.isDisabled && !ctx.isLoading
1873
+ });
1874
+ const handleTriggerKeyDown = (event) => {
1875
+ onKeyDown?.(event);
1876
+ if (event.defaultPrevented) return;
1877
+ if (!ctx.open && triggerTypeahead.onKeyDown(event)) {
1878
+ event.preventDefault();
1879
+ }
1880
+ };
1881
+ const showClear = ctx.isClearable && ctx.hasSelection && !ctx.isLoading && !ctx.isDisabled;
1774
1882
  const sizeKey = size ?? "md";
1775
1883
  const iconClass = TRIGGER_ICON_CLASSES[sizeKey];
1776
1884
  const clearBoxClass = TRIGGER_CLEAR_BOX_CLASSES[sizeKey];
1777
1885
  const dividerClass = TRIGGER_DIVIDER_CLASSES[sizeKey];
1778
- return /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
1779
- "button",
1780
- {
1781
- ref,
1782
- type: "button",
1783
- disabled: ctx.disabled || ctx.isLoading,
1784
- "aria-busy": ctx.isLoading || void 0,
1785
- className: cn(selectTriggerVariants({ size, state: triggerState }), className),
1786
- ...rest,
1787
- children: [
1788
- children ?? /* @__PURE__ */ jsx(SelectValue, {}),
1789
- /* @__PURE__ */ jsxs("span", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [
1790
- showClear && /* @__PURE__ */ jsxs(Fragment, { children: [
1791
- /* @__PURE__ */ jsx(
1792
- "span",
1886
+ const clearOffsetClass = TRIGGER_CLEAR_OFFSET_CLASSES[sizeKey];
1887
+ const labelledBy = !ariaLabel ? ctx.labelId : void 0;
1888
+ return /* @__PURE__ */ jsxs("span", { className: "relative inline-flex w-full", children: [
1889
+ /* @__PURE__ */ jsx(Announce, { children: ctx.isLoading ? ctx.loadingLabel : "" }),
1890
+ /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
1891
+ "button",
1892
+ {
1893
+ ref,
1894
+ type: "button",
1895
+ id: ctx.fieldId,
1896
+ disabled: ctx.isDisabled || ctx.isLoading,
1897
+ "aria-busy": ctx.isLoading || void 0,
1898
+ "aria-haspopup": "listbox",
1899
+ "aria-controls": ctx.listboxId,
1900
+ "aria-activedescendant": ctx.open ? ctx.activeDescendant ?? void 0 : void 0,
1901
+ "aria-invalid": triggerState === "invalid" || void 0,
1902
+ "aria-label": ariaLabel,
1903
+ "aria-labelledby": labelledBy,
1904
+ "aria-describedby": ctx.describedBy,
1905
+ "data-state": triggerDataState(ctx.open, ctx.isLoading, ctx.isDisabled, ctx.isInvalid),
1906
+ className: cn(selectTriggerVariants({ size, state: triggerState }), className),
1907
+ onKeyDown: handleTriggerKeyDown,
1908
+ ...rest,
1909
+ children: [
1910
+ children ?? /* @__PURE__ */ jsx(SelectValue, {}),
1911
+ /* @__PURE__ */ jsxs("span", { className: "ml-auto flex shrink-0 items-center gap-1.5", children: [
1912
+ showClear && /* @__PURE__ */ jsxs(Fragment, { children: [
1913
+ /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: clearBoxClass }),
1914
+ /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: cn("w-px bg-foreground/20", dividerClass) })
1915
+ ] }),
1916
+ ctx.isLoading ? /* @__PURE__ */ jsx(Loader2, { className: cn(iconClass, "animate-spin text-subtle-foreground") }) : /* @__PURE__ */ jsx(
1917
+ ChevronDown,
1793
1918
  {
1794
- role: "button",
1795
- tabIndex: 0,
1796
- "aria-label": "Clear selection",
1797
- onClick: (e) => {
1798
- e.stopPropagation();
1799
- ctx.onClear();
1800
- },
1801
- onPointerDown: (e) => e.stopPropagation(),
1802
- onKeyDown: (e) => {
1803
- if (e.key === "Enter" || e.key === " ") {
1804
- e.preventDefault();
1805
- e.stopPropagation();
1806
- ctx.onClear();
1807
- }
1808
- },
1809
1919
  className: cn(
1810
- "grid place-items-center rounded-full text-subtle-foreground transition-colors hover:bg-muted hover:text-foreground",
1811
- clearBoxClass
1812
- ),
1813
- children: /* @__PURE__ */ jsx(X, { className: iconClass })
1920
+ iconClass,
1921
+ "text-muted-foreground transition-transform",
1922
+ ctx.open && "rotate-180"
1923
+ )
1814
1924
  }
1815
- ),
1816
- /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: cn("w-px bg-foreground/20", dividerClass) })
1817
- ] }),
1818
- ctx.isLoading ? /* @__PURE__ */ jsx(Loader2, { className: cn(iconClass, "animate-spin text-subtle-foreground") }) : /* @__PURE__ */ jsx(
1819
- ChevronDown,
1820
- {
1821
- className: cn(
1822
- iconClass,
1823
- "text-muted-foreground transition-transform",
1824
- ctx.open && "rotate-180"
1825
- )
1826
- }
1827
- )
1828
- ] })
1829
- ]
1830
- }
1831
- ) });
1925
+ )
1926
+ ] })
1927
+ ]
1928
+ }
1929
+ ) }),
1930
+ showClear && /* @__PURE__ */ jsx(
1931
+ "button",
1932
+ {
1933
+ type: "button",
1934
+ "aria-label": ctx.clearLabel,
1935
+ onClick: () => ctx.onClear(),
1936
+ className: cn(
1937
+ "absolute top-1/2 grid min-h-6 min-w-6 -translate-y-1/2 place-items-center rounded-full text-subtle-foreground transition-colors hover:bg-muted hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
1938
+ clearBoxClass,
1939
+ clearOffsetClass
1940
+ ),
1941
+ children: /* @__PURE__ */ jsx(X, { className: iconClass })
1942
+ }
1943
+ )
1944
+ ] });
1832
1945
  }
1833
1946
  );
1834
1947
  function SelectValue({ placeholder, children }) {
1835
1948
  const ctx = useSelectContext();
1836
1949
  if (children) return /* @__PURE__ */ jsx("span", { className: "truncate", children });
1837
1950
  const match = ctx.hasSelection ? ctx.items.find((i) => ctx.keyEquals(i.itemKey, ctx.selectedKey)) : void 0;
1838
- const label = match?.label ?? (ctx.hasSelection ? ctx.serializeKey(ctx.selectedKey) : null);
1951
+ const label = match?.label ?? ctx.selectedLabel ?? (ctx.hasSelection ? ctx.getCachedLabel(ctx.selectedKey) : null) ?? (ctx.hasSelection ? ctx.getOptionLabel?.(ctx.selectedKey) : null) ?? (ctx.hasSelection ? ctx.serializeKey(ctx.selectedKey) : null);
1839
1952
  return /* @__PURE__ */ jsx("span", { className: cn("truncate text-left", !label && "text-subtle-foreground"), children: label ?? placeholder });
1840
1953
  }
1954
+ var FORWARDED_NAV_KEYS = /* @__PURE__ */ new Set(["ArrowDown", "ArrowUp", "Home", "End", "PageDown", "PageUp", "Enter"]);
1841
1955
  function SelectContent({
1842
1956
  className,
1843
- searchable = false,
1957
+ isSearchable = false,
1844
1958
  searchPlaceholder = "Search\u2026",
1845
1959
  noResultsLabel = "No results",
1846
1960
  matchWidth = false,
@@ -1855,6 +1969,21 @@ function SelectContent({
1855
1969
  const hasItems = ctx.items.length > 0;
1856
1970
  const visibleCount = ctx.query ? ctx.items.filter((i) => i.text.toLowerCase().includes(ctx.query.toLowerCase())).length : ctx.items.length;
1857
1971
  const showEmpty = hasItems && visibleCount === 0;
1972
+ const handleSearchKeyDown = useCallback(
1973
+ (event) => {
1974
+ if (event.key === "Escape") {
1975
+ return;
1976
+ }
1977
+ if (!FORWARDED_NAV_KEYS.has(event.key)) return;
1978
+ const node = ctx.listboxRef.current;
1979
+ if (!node) return;
1980
+ event.preventDefault();
1981
+ node.dispatchEvent(
1982
+ new KeyboardEvent("keydown", { key: event.key, bubbles: true, cancelable: true })
1983
+ );
1984
+ },
1985
+ [ctx.listboxRef]
1986
+ );
1858
1987
  return /* @__PURE__ */ jsxs(
1859
1988
  PopoverContent,
1860
1989
  {
@@ -1865,19 +1994,28 @@ function SelectContent({
1865
1994
  elevation,
1866
1995
  className: cn(
1867
1996
  "overflow-hidden",
1868
- matchWidth ? "w-(--anchor-width) [&_[role=option]>span.flex-1>:first-child]:truncate" : "w-auto min-w-(--anchor-width)",
1997
+ /* Truncate the option's first content child (the label) so trailing meta stays visible.
1998
+ Targets Listbox.Item's stable `data-listbox-item-content` wrapper rather than a deep
1999
+ `[role=option]>span.flex-1>:first-child` chain that breaks if the markup shifts. */
2000
+ matchWidth ? "w-(--anchor-width) [&_[data-listbox-item-content]>:first-child]:truncate" : "w-auto min-w-(--anchor-width)",
1869
2001
  className
1870
2002
  ),
1871
2003
  children: [
1872
- searchable && /* @__PURE__ */ jsx("div", { className: "border-b border-border p-1", children: /* @__PURE__ */ jsx(
2004
+ isSearchable && /* @__PURE__ */ jsx("div", { className: "border-b border-border p-1", children: /* @__PURE__ */ jsx(
1873
2005
  SearchInput,
1874
2006
  {
1875
2007
  size: "sm",
1876
2008
  autoFocus: true,
2009
+ role: "combobox",
2010
+ "aria-expanded": true,
2011
+ "aria-controls": ctx.listboxId,
2012
+ "aria-activedescendant": ctx.activeDescendant ?? void 0,
2013
+ "aria-autocomplete": "list",
1877
2014
  value: ctx.query,
1878
2015
  onChange: (e) => ctx.setQuery(e.target.value),
2016
+ onKeyDown: handleSearchKeyDown,
1879
2017
  placeholder: searchPlaceholder,
1880
- clearable: true,
2018
+ isClearable: true,
1881
2019
  onClear: () => ctx.setQuery(""),
1882
2020
  className: "rounded-sm"
1883
2021
  }
@@ -1885,6 +2023,10 @@ function SelectContent({
1885
2023
  /* @__PURE__ */ jsxs(
1886
2024
  Listbox,
1887
2025
  {
2026
+ ref: ctx.listboxRef,
2027
+ id: ctx.listboxId,
2028
+ tabIndex: isSearchable ? -1 : 0,
2029
+ onActiveChange: ctx.setActiveDescendant,
1888
2030
  value: ctx.selectedKey ?? void 0,
1889
2031
  onValueChange: (k) => {
1890
2032
  if (k === null || k === void 0) return;
@@ -1895,12 +2037,22 @@ function SelectContent({
1895
2037
  variant: "flat",
1896
2038
  radius: "none",
1897
2039
  children: [
2040
+ ctx.isLoading && /* @__PURE__ */ jsxs(
2041
+ "div",
2042
+ {
2043
+ role: "status",
2044
+ className: "flex items-center gap-2 px-2 py-2 text-sm text-subtle-foreground",
2045
+ children: [
2046
+ /* @__PURE__ */ jsx(Loader2, { className: "h-4 w-4 animate-spin" }),
2047
+ /* @__PURE__ */ jsx("span", { children: ctx.loadingLabel })
2048
+ ]
2049
+ }
2050
+ ),
1898
2051
  children,
1899
- showEmpty && /* @__PURE__ */ jsx(ListboxEmpty, { children: noResultsLabel })
2052
+ !ctx.isLoading && showEmpty && /* @__PURE__ */ jsx(ListboxEmpty, { children: noResultsLabel })
1900
2053
  ]
1901
2054
  }
1902
- ),
1903
- ctx.name && ctx.hasSelection && /* @__PURE__ */ jsx("input", { type: "hidden", name: ctx.name, value: ctx.serializeKey(ctx.selectedKey) })
2055
+ )
1904
2056
  ]
1905
2057
  }
1906
2058
  );
@@ -1915,20 +2067,22 @@ function extractText(node) {
1915
2067
  }
1916
2068
  return "";
1917
2069
  }
1918
- var SelectItem = forwardRef(function SelectItem2({ itemKey, value, label, children, text, disabled, className }, ref) {
2070
+ var SelectItem = forwardRef(function SelectItem2({ itemKey, value, label, children, text, isDisabled, className }, ref) {
1919
2071
  const ctx = useSelectContext();
1920
- const { registerItem, query } = ctx;
2072
+ const { registerItem, unregisterItem, query } = ctx;
1921
2073
  const resolvedValue = value === void 0 ? itemKey : value;
1922
- const itemText = useMemo(
1923
- () => text ?? extractText(label) ?? extractText(children),
1924
- [text, label, children]
1925
- );
2074
+ const itemText = useMemo(() => {
2075
+ if (text !== void 0) return text;
2076
+ const fromLabel = extractText(label);
2077
+ return fromLabel !== "" ? fromLabel : extractText(children);
2078
+ }, [text, label, children]);
1926
2079
  useEffect(() => {
1927
- registerItem({ itemKey, value: resolvedValue, label, text: itemText });
1928
- }, [registerItem, itemKey, resolvedValue, label, itemText]);
2080
+ registerItem({ itemKey, value: resolvedValue, label, text: itemText, isDisabled: isDisabled ?? false });
2081
+ return () => unregisterItem(itemKey);
2082
+ }, [registerItem, unregisterItem, itemKey, resolvedValue, label, itemText, isDisabled]);
1929
2083
  const matchesQuery = !query || itemText.toLowerCase().includes(query.toLowerCase());
1930
2084
  if (!matchesQuery) return null;
1931
- return /* @__PURE__ */ jsx(ListboxItem, { ref, value: itemKey, disabled, className, children: children ?? label });
2085
+ return /* @__PURE__ */ jsx(ListboxItem, { ref, value: itemKey, isDisabled, className, children: children ?? label });
1932
2086
  });
1933
2087
  Select.Trigger = SelectTrigger;
1934
2088
  Select.Value = SelectValue;
@@ -1947,9 +2101,9 @@ function MultiSelect({
1947
2101
  value,
1948
2102
  defaultValue,
1949
2103
  onValueChange,
1950
- disabled = false,
2104
+ isDisabled = false,
1951
2105
  name,
1952
- invalid,
2106
+ isInvalid,
1953
2107
  defaultOpen = false,
1954
2108
  open: openProp,
1955
2109
  onOpenChange,
@@ -1987,9 +2141,9 @@ function MultiSelect({
1987
2141
  labels,
1988
2142
  registerLabel,
1989
2143
  unregisterLabel,
1990
- disabled,
2144
+ isDisabled,
1991
2145
  name,
1992
- invalid
2146
+ isInvalid
1993
2147
  }),
1994
2148
  [
1995
2149
  openState,
@@ -1999,32 +2153,35 @@ function MultiSelect({
1999
2153
  labels,
2000
2154
  registerLabel,
2001
2155
  unregisterLabel,
2002
- disabled,
2156
+ isDisabled,
2003
2157
  name,
2004
- invalid
2158
+ isInvalid
2005
2159
  ]
2006
2160
  );
2007
- return /* @__PURE__ */ jsx(MultiSelectContext.Provider, { value: ctx, children: /* @__PURE__ */ jsx(
2161
+ return /* @__PURE__ */ jsx(MultiSelectContext.Provider, { value: ctx, children: /* @__PURE__ */ jsxs(
2008
2162
  Popover,
2009
2163
  {
2010
2164
  open: openState,
2011
2165
  onOpenChange: setOpenState,
2012
2166
  placement,
2013
2167
  offset: 6,
2014
- children
2168
+ children: [
2169
+ children,
2170
+ name && valuesState.map((v) => /* @__PURE__ */ jsx("input", { type: "hidden", name, value: v }, v))
2171
+ ]
2015
2172
  }
2016
2173
  ) });
2017
2174
  }
2018
2175
  var MultiSelectTrigger = forwardRef(
2019
2176
  function MultiSelectTrigger2({ size, state, className, onKeyDown, children, ...rest }, ref) {
2020
2177
  const ctx = useMultiSelectContext();
2021
- const triggerState = state ?? (ctx.invalid ? "invalid" : "default");
2178
+ const triggerState = state ?? (ctx.isInvalid ? "invalid" : "default");
2022
2179
  return /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
2023
2180
  "button",
2024
2181
  {
2025
2182
  ref,
2026
2183
  type: "button",
2027
- disabled: ctx.disabled,
2184
+ disabled: ctx.isDisabled,
2028
2185
  onKeyDown: (e) => {
2029
2186
  onKeyDown?.(e);
2030
2187
  if (e.defaultPrevented) return;
@@ -2065,7 +2222,7 @@ function MultiSelectTags({ placeholder }) {
2065
2222
  className: "inline-flex items-center gap-1 rounded-sm bg-muted px-1.5 py-0.5 text-xs",
2066
2223
  children: [
2067
2224
  ctx.labels[v] ?? v,
2068
- !ctx.disabled && /* @__PURE__ */ jsx(
2225
+ !ctx.isDisabled && /* @__PURE__ */ jsx(
2069
2226
  "span",
2070
2227
  {
2071
2228
  role: "button",
@@ -2095,7 +2252,7 @@ function MultiSelectContent({
2095
2252
  children
2096
2253
  }) {
2097
2254
  const ctx = useMultiSelectContext();
2098
- return /* @__PURE__ */ jsxs(
2255
+ return /* @__PURE__ */ jsx(
2099
2256
  PopoverContent,
2100
2257
  {
2101
2258
  variant,
@@ -2104,31 +2261,27 @@ function MultiSelectContent({
2104
2261
  padding: padding ?? "none",
2105
2262
  elevation,
2106
2263
  className: cn("w-auto min-w-[var(--anchor-width)] overflow-hidden", className),
2107
- children: [
2108
- /* @__PURE__ */ jsx(
2109
- Listbox,
2110
- {
2111
- multiple: true,
2112
- value: ctx.values,
2113
- onValueChange: (v) => ctx.setValues(v),
2114
- variant: "flat",
2115
- radius: "none",
2116
- children
2117
- }
2118
- ),
2119
- ctx.name && ctx.values.map((v) => /* @__PURE__ */ jsx("input", { type: "hidden", name: ctx.name, value: v }, v))
2120
- ]
2264
+ children: /* @__PURE__ */ jsx(
2265
+ Listbox,
2266
+ {
2267
+ isMultiple: true,
2268
+ value: ctx.values,
2269
+ onValueChange: (v) => ctx.setValues(v),
2270
+ variant: "flat",
2271
+ radius: "none",
2272
+ children
2273
+ }
2274
+ )
2121
2275
  }
2122
2276
  );
2123
2277
  }
2124
2278
  var MultiSelectItem = forwardRef(
2125
2279
  function MultiSelectItem2(props, ref) {
2126
2280
  const ctx = useMultiSelectContext();
2127
- const { registerLabel, unregisterLabel } = ctx;
2281
+ const { registerLabel } = ctx;
2128
2282
  useEffect(() => {
2129
2283
  registerLabel(props.value, props.children);
2130
- return () => unregisterLabel(props.value);
2131
- }, [registerLabel, unregisterLabel, props.value, props.children]);
2284
+ }, [registerLabel, props.value, props.children]);
2132
2285
  return /* @__PURE__ */ jsx(ListboxItem, { ref, ...props });
2133
2286
  }
2134
2287
  );
@@ -2152,8 +2305,8 @@ function Combobox({
2152
2305
  inputValue,
2153
2306
  defaultInputValue,
2154
2307
  onInputChange,
2155
- disabled = false,
2156
- invalid,
2308
+ isDisabled = false,
2309
+ isInvalid,
2157
2310
  name,
2158
2311
  defaultOpen = false,
2159
2312
  open: openProp,
@@ -2178,6 +2331,7 @@ function Combobox({
2178
2331
  });
2179
2332
  const itemsRef = useRef([]);
2180
2333
  const inputRef = useRef(null);
2334
+ const contentRef = useRef(null);
2181
2335
  const [activeId, setActiveId] = useState(null);
2182
2336
  const listboxId = useId$1();
2183
2337
  const registerItem = useCallback((entry) => {
@@ -2213,9 +2367,10 @@ function Combobox({
2213
2367
  unregisterItem,
2214
2368
  itemsRef,
2215
2369
  inputRef,
2370
+ contentRef,
2216
2371
  listboxId,
2217
- disabled,
2218
- invalid,
2372
+ isDisabled,
2373
+ isInvalid,
2219
2374
  selectItem
2220
2375
  }),
2221
2376
  [
@@ -2229,8 +2384,8 @@ function Combobox({
2229
2384
  registerItem,
2230
2385
  unregisterItem,
2231
2386
  listboxId,
2232
- disabled,
2233
- invalid,
2387
+ isDisabled,
2388
+ isInvalid,
2234
2389
  selectItem
2235
2390
  ]
2236
2391
  );
@@ -2240,12 +2395,19 @@ function Combobox({
2240
2395
  ] });
2241
2396
  }
2242
2397
  var ComboboxInput = forwardRef(
2243
- function ComboboxInput2({ className, size, state, onKeyDown, onFocus, ...rest }, forwardedRef) {
2398
+ function ComboboxInput2({ className, size, state, onKeyDown, onFocus, onBlur, ...rest }, forwardedRef) {
2244
2399
  const ctx = useComboboxContext();
2245
- const inputState = state ?? (ctx.invalid ? "invalid" : "default");
2400
+ const inputState = state ?? (ctx.isInvalid ? "invalid" : "default");
2401
+ const setActiveAndScroll = useCallback(
2402
+ (id) => {
2403
+ ctx.setActiveId(id);
2404
+ document.getElementById(id)?.scrollIntoView({ block: "nearest" });
2405
+ },
2406
+ [ctx]
2407
+ );
2246
2408
  const moveActive = useCallback(
2247
2409
  (direction) => {
2248
- const list = ctx.itemsRef.current.filter((i) => !i.disabled);
2410
+ const list = ctx.itemsRef.current.filter((i) => !i.isDisabled);
2249
2411
  if (list.length === 0) return;
2250
2412
  const idx = list.findIndex((i) => i.id === ctx.activeId);
2251
2413
  let nextIdx = idx + direction;
@@ -2253,13 +2415,13 @@ var ComboboxInput = forwardRef(
2253
2415
  if (nextIdx < 0) nextIdx = list.length - 1;
2254
2416
  if (nextIdx >= list.length) nextIdx = 0;
2255
2417
  const next = list[nextIdx];
2256
- if (next) ctx.setActiveId(next.id);
2418
+ if (next) setActiveAndScroll(next.id);
2257
2419
  },
2258
- [ctx]
2420
+ [ctx, setActiveAndScroll]
2259
2421
  );
2260
2422
  const handleKeyDown = (e) => {
2261
2423
  onKeyDown?.(e);
2262
- if (e.defaultPrevented || ctx.disabled) return;
2424
+ if (e.defaultPrevented || ctx.isDisabled) return;
2263
2425
  switch (e.key) {
2264
2426
  case "ArrowDown":
2265
2427
  e.preventDefault();
@@ -2274,22 +2436,25 @@ var ComboboxInput = forwardRef(
2274
2436
  case "Home":
2275
2437
  if (ctx.open) {
2276
2438
  e.preventDefault();
2277
- const first = ctx.itemsRef.current.find((i) => !i.disabled);
2278
- if (first) ctx.setActiveId(first.id);
2439
+ const first = ctx.itemsRef.current.find((i) => !i.isDisabled);
2440
+ if (first) setActiveAndScroll(first.id);
2279
2441
  }
2280
2442
  break;
2281
2443
  case "End":
2282
2444
  if (ctx.open) {
2283
2445
  e.preventDefault();
2284
- const list = ctx.itemsRef.current.filter((i) => !i.disabled);
2446
+ const list = ctx.itemsRef.current.filter((i) => !i.isDisabled);
2285
2447
  const last = list[list.length - 1];
2286
- if (last) ctx.setActiveId(last.id);
2448
+ if (last) setActiveAndScroll(last.id);
2287
2449
  }
2288
2450
  break;
2451
+ case "Tab":
2452
+ if (ctx.open) ctx.setOpen(false);
2453
+ break;
2289
2454
  case "Enter": {
2290
2455
  if (!ctx.open || !ctx.activeId) return;
2291
2456
  const entry = ctx.itemsRef.current.find((i) => i.id === ctx.activeId);
2292
- if (!entry || entry.disabled) return;
2457
+ if (!entry || entry.isDisabled) return;
2293
2458
  e.preventDefault();
2294
2459
  ctx.selectItem(entry);
2295
2460
  break;
@@ -2316,8 +2481,8 @@ var ComboboxInput = forwardRef(
2316
2481
  "aria-controls": ctx.listboxId,
2317
2482
  "aria-activedescendant": ctx.activeId ?? void 0,
2318
2483
  "aria-autocomplete": "list",
2319
- "aria-disabled": ctx.disabled || void 0,
2320
- disabled: ctx.disabled,
2484
+ "aria-disabled": ctx.isDisabled || void 0,
2485
+ disabled: ctx.isDisabled,
2321
2486
  value: ctx.inputValue,
2322
2487
  onChange: (e) => {
2323
2488
  ctx.setInputValue(e.target.value);
@@ -2328,6 +2493,14 @@ var ComboboxInput = forwardRef(
2328
2493
  onFocus?.(e);
2329
2494
  if (!ctx.open) ctx.setOpen(true);
2330
2495
  },
2496
+ onBlur: (e) => {
2497
+ onBlur?.(e);
2498
+ const next = e.relatedTarget;
2499
+ if (!next || !ctx.open) return;
2500
+ if (ctx.inputRef.current?.contains(next)) return;
2501
+ if (ctx.contentRef.current?.contains(next)) return;
2502
+ ctx.setOpen(false);
2503
+ },
2331
2504
  onKeyDown: handleKeyDown,
2332
2505
  className: cn(inputBaseVariants({ size, state: inputState }), className),
2333
2506
  ...rest
@@ -2347,6 +2520,13 @@ function ComboboxContent({
2347
2520
  children
2348
2521
  }) {
2349
2522
  const ctx = useComboboxContext();
2523
+ useEffect(() => {
2524
+ if (!ctx.open) return;
2525
+ const list = ctx.itemsRef.current.filter((i) => !i.isDisabled);
2526
+ if (ctx.activeId && !list.some((i) => i.id === ctx.activeId)) {
2527
+ ctx.setActiveId(list[0]?.id ?? null);
2528
+ }
2529
+ });
2350
2530
  if (!ctx.open) return null;
2351
2531
  const resolvedPadding = padding ?? "xs";
2352
2532
  return /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(
@@ -2367,6 +2547,7 @@ function ComboboxContent({
2367
2547
  children: /* @__PURE__ */ jsx(
2368
2548
  "div",
2369
2549
  {
2550
+ ref: ctx.contentRef,
2370
2551
  id: ctx.listboxId,
2371
2552
  role: "listbox",
2372
2553
  className: cn(
@@ -2389,22 +2570,22 @@ function ComboboxContent({
2389
2570
  }
2390
2571
  ) });
2391
2572
  }
2392
- var ComboboxItem = forwardRef(function ComboboxItem2({ value, disabled = false, className, children, onClick, onPointerEnter, ...rest }, forwardedRef) {
2573
+ var ComboboxItem = forwardRef(function ComboboxItem2({ value, isDisabled = false, className, children, onClick, onPointerEnter, ...rest }, forwardedRef) {
2393
2574
  const ctx = useComboboxContext();
2394
2575
  const id = useId$1();
2395
2576
  useEffect(() => {
2396
- ctx.registerItem({ id, value, disabled, label: children });
2577
+ ctx.registerItem({ id, value, isDisabled, label: children });
2397
2578
  return () => ctx.unregisterItem(id);
2398
- }, [ctx, id, value, disabled, children]);
2579
+ }, [ctx, id, value, isDisabled, children]);
2399
2580
  useEffect(() => {
2400
2581
  if (!ctx.activeId) {
2401
- const list = ctx.itemsRef.current.filter((i) => !i.disabled);
2582
+ const list = ctx.itemsRef.current.filter((i) => !i.isDisabled);
2402
2583
  if (list[0]) ctx.setActiveId(list[0].id);
2403
2584
  }
2404
2585
  }, [ctx]);
2405
2586
  const isSelected = ctx.value === value;
2406
2587
  const isActive = ctx.activeId === id;
2407
- const state = disabled ? "disabled" : isSelected ? "selected" : isActive ? "active" : "default";
2588
+ const state = isDisabled ? "disabled" : isSelected ? "selected" : isActive ? "active" : "default";
2408
2589
  return /* @__PURE__ */ jsxs(
2409
2590
  "div",
2410
2591
  {
@@ -2412,17 +2593,17 @@ var ComboboxItem = forwardRef(function ComboboxItem2({ value, disabled = false,
2412
2593
  id,
2413
2594
  role: "option",
2414
2595
  "aria-selected": isSelected,
2415
- "aria-disabled": disabled || void 0,
2596
+ "aria-disabled": isDisabled || void 0,
2416
2597
  "data-active": isActive ? "" : void 0,
2417
2598
  "data-selected": isSelected ? "" : void 0,
2418
2599
  onClick: (e) => {
2419
2600
  onClick?.(e);
2420
- if (e.defaultPrevented || disabled) return;
2421
- ctx.selectItem({ id, value, disabled, label: children });
2601
+ if (e.defaultPrevented || isDisabled) return;
2602
+ ctx.selectItem({ id, value, isDisabled, label: children });
2422
2603
  },
2423
2604
  onPointerEnter: (e) => {
2424
2605
  onPointerEnter?.(e);
2425
- if (!disabled) ctx.setActiveId(id);
2606
+ if (!isDisabled) ctx.setActiveId(id);
2426
2607
  },
2427
2608
  className: cn(listboxItemVariants({ state }), className),
2428
2609
  ...rest,
@@ -2452,6 +2633,7 @@ Combobox.Item = ComboboxItem;
2452
2633
  Combobox.Group = ComboboxGroup;
2453
2634
  Combobox.Separator = ComboboxSeparator;
2454
2635
  Combobox.Empty = ComboboxEmpty;
2636
+ var MAX_DISABLED_SKIP = 400;
2455
2637
  function MonthGrid({
2456
2638
  viewMonth,
2457
2639
  onViewMonthChange,
@@ -2463,56 +2645,84 @@ function MonthGrid({
2463
2645
  "aria-label": ariaLabel = "Calendar",
2464
2646
  className
2465
2647
  }) {
2648
+ const rootRef = useRef(null);
2466
2649
  const gridRef = useRef(null);
2650
+ const interactedRef = useRef(false);
2467
2651
  useEffect(() => {
2652
+ if (!interactedRef.current) return;
2468
2653
  const cell = gridRef.current?.querySelector(
2469
2654
  `[data-date="${focusedDate.toDateString()}"]`
2470
2655
  );
2471
2656
  cell?.focus();
2472
2657
  }, [focusedDate]);
2658
+ useEffect(() => {
2659
+ const raf = requestAnimationFrame(() => {
2660
+ if (!rootRef.current?.contains(document.activeElement)) return;
2661
+ gridRef.current?.querySelector('button[tabindex="0"]')?.focus();
2662
+ });
2663
+ return () => cancelAnimationFrame(raf);
2664
+ }, []);
2473
2665
  const moveFocus = useCallback(
2474
- (next) => {
2475
- if (next.getMonth() !== viewMonth.getMonth() || next.getFullYear() !== viewMonth.getFullYear()) {
2476
- onViewMonthChange(startOfMonth(next));
2666
+ (next, dir) => {
2667
+ let target = next;
2668
+ if (isDayDisabled) {
2669
+ let steps = 0;
2670
+ while (isDayDisabled(target) && steps < MAX_DISABLED_SKIP) {
2671
+ target = addDays(target, dir);
2672
+ steps += 1;
2673
+ }
2674
+ if (isDayDisabled(target)) {
2675
+ target = next;
2676
+ steps = 0;
2677
+ while (isDayDisabled(target) && steps < MAX_DISABLED_SKIP) {
2678
+ target = addDays(target, -dir);
2679
+ steps += 1;
2680
+ }
2681
+ }
2682
+ if (isDayDisabled(target)) return;
2683
+ }
2684
+ interactedRef.current = true;
2685
+ if (target.getMonth() !== viewMonth.getMonth() || target.getFullYear() !== viewMonth.getFullYear()) {
2686
+ onViewMonthChange(startOfMonth(target));
2477
2687
  }
2478
- onFocusedDateChange(next);
2688
+ onFocusedDateChange(target);
2479
2689
  },
2480
- [viewMonth, onViewMonthChange, onFocusedDateChange]
2690
+ [isDayDisabled, viewMonth, onViewMonthChange, onFocusedDateChange]
2481
2691
  );
2482
2692
  const onCellKeyDown = useCallback(
2483
2693
  (e, date, outOfMonth) => {
2484
2694
  switch (e.key) {
2485
2695
  case "ArrowRight":
2486
2696
  e.preventDefault();
2487
- moveFocus(addDays(date, 1));
2697
+ moveFocus(addDays(date, 1), 1);
2488
2698
  break;
2489
2699
  case "ArrowLeft":
2490
2700
  e.preventDefault();
2491
- moveFocus(addDays(date, -1));
2701
+ moveFocus(addDays(date, -1), -1);
2492
2702
  break;
2493
2703
  case "ArrowDown":
2494
2704
  e.preventDefault();
2495
- moveFocus(addDays(date, 7));
2705
+ moveFocus(addDays(date, 7), 1);
2496
2706
  break;
2497
2707
  case "ArrowUp":
2498
2708
  e.preventDefault();
2499
- moveFocus(addDays(date, -7));
2709
+ moveFocus(addDays(date, -7), -1);
2500
2710
  break;
2501
2711
  case "Home":
2502
2712
  e.preventDefault();
2503
- moveFocus(addDays(date, -date.getDay()));
2713
+ moveFocus(addDays(date, -date.getDay()), 1);
2504
2714
  break;
2505
2715
  case "End":
2506
2716
  e.preventDefault();
2507
- moveFocus(addDays(date, 6 - date.getDay()));
2717
+ moveFocus(addDays(date, 6 - date.getDay()), -1);
2508
2718
  break;
2509
2719
  case "PageDown":
2510
2720
  e.preventDefault();
2511
- moveFocus(addMonths(date, e.shiftKey ? 12 : 1));
2721
+ moveFocus(addMonths(date, e.shiftKey ? 12 : 1), 1);
2512
2722
  break;
2513
2723
  case "PageUp":
2514
2724
  e.preventDefault();
2515
- moveFocus(addMonths(date, e.shiftKey ? -12 : -1));
2725
+ moveFocus(addMonths(date, e.shiftKey ? -12 : -1), -1);
2516
2726
  break;
2517
2727
  case "Enter":
2518
2728
  case " ":
@@ -2523,12 +2733,18 @@ function MonthGrid({
2523
2733
  },
2524
2734
  [moveFocus, onDayActivate, isDayDisabled]
2525
2735
  );
2736
+ const dayDisabled = (date) => isDayDisabled?.(date) ?? false;
2526
2737
  const cells = buildMonthGrid(viewMonth.getFullYear(), viewMonth.getMonth());
2738
+ const weeks = Array.from({ length: 6 }, (_, w) => cells.slice(w * 7, w * 7 + 7));
2739
+ let tabStopDate = focusedDate;
2740
+ if (dayDisabled(focusedDate)) {
2741
+ const fallback = cells.find((c) => !c.outOfMonth && !dayDisabled(c.date)) ?? cells.find((c) => !dayDisabled(c.date));
2742
+ if (fallback) tabStopDate = fallback.date;
2743
+ }
2527
2744
  return /* @__PURE__ */ jsxs(
2528
2745
  "div",
2529
2746
  {
2530
- role: "application",
2531
- "aria-label": ariaLabel,
2747
+ ref: rootRef,
2532
2748
  className: cn(
2533
2749
  "inline-flex flex-col gap-2 rounded-md border border-border bg-popover p-3 text-popover-foreground",
2534
2750
  className
@@ -2569,9 +2785,9 @@ function MonthGrid({
2569
2785
  },
2570
2786
  w
2571
2787
  )) }),
2572
- /* @__PURE__ */ jsx("div", { ref: gridRef, className: "grid grid-cols-7 gap-0 px-1", role: "grid", children: cells.map(({ date, outOfMonth }) => {
2573
- const disabled = isDayDisabled?.(date) ?? false;
2574
- const isFocusedCell = isSameDay(focusedDate, date);
2788
+ /* @__PURE__ */ jsx("div", { ref: gridRef, role: "grid", "aria-label": ariaLabel, className: "px-1", children: weeks.map((week, weekIndex) => /* @__PURE__ */ jsx("div", { role: "row", className: "grid grid-cols-7 gap-0", children: week.map(({ date, outOfMonth }) => {
2789
+ const disabled = dayDisabled(date);
2790
+ const isTabStop = isSameDay(tabStopDate, date);
2575
2791
  const consumerProps = dayProps?.(date, { outOfMonth }) ?? {};
2576
2792
  const { className: cellClassName, ...consumerRest } = consumerProps;
2577
2793
  return /* @__PURE__ */ jsx(
@@ -2584,10 +2800,10 @@ function MonthGrid({
2584
2800
  "data-today": isToday(date) ? "" : void 0,
2585
2801
  "data-out-of-month": outOfMonth ? "" : void 0,
2586
2802
  "data-disabled": disabled ? "" : void 0,
2587
- tabIndex: isFocusedCell ? 0 : -1,
2588
- disabled,
2803
+ tabIndex: isTabStop ? 0 : -1,
2589
2804
  onClick: () => {
2590
2805
  if (disabled) return;
2806
+ interactedRef.current = true;
2591
2807
  onDayActivate?.(date, { outOfMonth });
2592
2808
  onFocusedDateChange(date);
2593
2809
  if (outOfMonth) onViewMonthChange(startOfMonth(date));
@@ -2606,7 +2822,7 @@ function MonthGrid({
2606
2822
  },
2607
2823
  date.toDateString()
2608
2824
  );
2609
- }) })
2825
+ }) }, weekIndex)) })
2610
2826
  ]
2611
2827
  }
2612
2828
  );
@@ -2614,7 +2830,7 @@ function MonthGrid({
2614
2830
  var Calendar = forwardRef(function Calendar2({
2615
2831
  value,
2616
2832
  defaultValue,
2617
- onChange,
2833
+ onValueChange,
2618
2834
  defaultMonth,
2619
2835
  min,
2620
2836
  max,
@@ -2626,7 +2842,7 @@ var Calendar = forwardRef(function Calendar2({
2626
2842
  const [selected, setSelected] = useControlled({
2627
2843
  controlled: value,
2628
2844
  default: defaultValue ?? null,
2629
- onChange
2845
+ onChange: onValueChange
2630
2846
  });
2631
2847
  const [viewMonth, setViewMonth] = useState(
2632
2848
  () => startOfMonth(defaultMonth ?? selected ?? /* @__PURE__ */ new Date())
@@ -2657,12 +2873,12 @@ var Calendar = forwardRef(function Calendar2({
2657
2873
  }
2658
2874
  ) });
2659
2875
  });
2660
- var DateField = forwardRef(function DateField2({ value, defaultValue, onChange, min, max, size, state, className, id, disabled, required, ...rest }, ref) {
2876
+ var DateField = forwardRef(function DateField2({ value, defaultValue, onValueChange, min, max, size, state, className, id, disabled, required, ...rest }, ref) {
2661
2877
  const ctx = useFormControl();
2662
2878
  const [current, setCurrent] = useControlled({
2663
2879
  controlled: value,
2664
2880
  default: defaultValue ?? null,
2665
- onChange
2881
+ onChange: onValueChange
2666
2882
  });
2667
2883
  return /* @__PURE__ */ jsx(
2668
2884
  "input",
@@ -2689,12 +2905,12 @@ function timeToString(t) {
2689
2905
  date.setHours(t.hours, t.minutes, 0, 0);
2690
2906
  return formatISOTime(date);
2691
2907
  }
2692
- var TimeField = forwardRef(function TimeField2({ value, defaultValue, onChange, size, state, className, id, disabled, required, ...rest }, ref) {
2908
+ var TimeField = forwardRef(function TimeField2({ value, defaultValue, onValueChange, size, state, className, id, disabled, required, ...rest }, ref) {
2693
2909
  const ctx = useFormControl();
2694
2910
  const [current, setCurrent] = useControlled({
2695
2911
  controlled: value,
2696
2912
  default: defaultValue ?? null,
2697
- onChange
2913
+ onChange: onValueChange
2698
2914
  });
2699
2915
  return /* @__PURE__ */ jsx(
2700
2916
  "input",
@@ -2717,7 +2933,7 @@ var RangeCalendar = forwardRef(
2717
2933
  function RangeCalendar2({
2718
2934
  value,
2719
2935
  defaultValue,
2720
- onChange,
2936
+ onValueChange,
2721
2937
  defaultMonth,
2722
2938
  min,
2723
2939
  max,
@@ -2729,7 +2945,7 @@ var RangeCalendar = forwardRef(
2729
2945
  const [range, setRange] = useControlled({
2730
2946
  controlled: value,
2731
2947
  default: defaultValue ?? null,
2732
- onChange
2948
+ onChange: onValueChange
2733
2949
  });
2734
2950
  const [viewMonth, setViewMonth] = useState(
2735
2951
  () => startOfMonth(defaultMonth ?? range?.start ?? /* @__PURE__ */ new Date())
@@ -2793,13 +3009,13 @@ var defaultFormat = (d) => d.toLocaleDateString(void 0, { year: "numeric", month
2793
3009
  var DatePicker = forwardRef(function DatePicker2({
2794
3010
  value,
2795
3011
  defaultValue,
2796
- onChange,
3012
+ onValueChange,
2797
3013
  placeholder = "Pick a date",
2798
3014
  format = defaultFormat,
2799
3015
  min,
2800
3016
  max,
2801
3017
  isDisabled: dayDisabled,
2802
- invalid,
3018
+ isInvalid,
2803
3019
  name,
2804
3020
  size,
2805
3021
  state,
@@ -2810,13 +3026,13 @@ var DatePicker = forwardRef(function DatePicker2({
2810
3026
  const [date, setDate] = useControlled({
2811
3027
  controlled: value,
2812
3028
  default: defaultValue ?? null,
2813
- onChange
3029
+ onChange: onValueChange
2814
3030
  });
2815
3031
  const [open, setOpen] = useControlled({
2816
3032
  controlled: void 0,
2817
3033
  default: false
2818
3034
  });
2819
- const triggerState = state ?? (invalid ? "invalid" : "default");
3035
+ const triggerState = state ?? (isInvalid ? "invalid" : "default");
2820
3036
  return /* @__PURE__ */ jsxs(Popover, { open, onOpenChange: setOpen, placement: "bottom-start", offset: 6, children: [
2821
3037
  /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
2822
3038
  "button",
@@ -2832,11 +3048,11 @@ var DatePicker = forwardRef(function DatePicker2({
2832
3048
  ]
2833
3049
  }
2834
3050
  ) }),
2835
- /* @__PURE__ */ jsx(PopoverContent, { bare: true, children: /* @__PURE__ */ jsx(
3051
+ /* @__PURE__ */ jsx(PopoverContent, { isBare: true, children: /* @__PURE__ */ jsx(
2836
3052
  Calendar,
2837
3053
  {
2838
3054
  value: date,
2839
- onChange: (d) => {
3055
+ onValueChange: (d) => {
2840
3056
  setDate(d);
2841
3057
  setOpen(false);
2842
3058
  },
@@ -2854,11 +3070,11 @@ var HOURS = Array.from({ length: 24 }, (_, i) => i);
2854
3070
  var TimePicker = forwardRef(function TimePicker2({
2855
3071
  value,
2856
3072
  defaultValue,
2857
- onChange,
3073
+ onValueChange,
2858
3074
  minuteStep = 5,
2859
3075
  placeholder = "Pick a time",
2860
3076
  format = defaultFormat2,
2861
- invalid,
3077
+ isInvalid,
2862
3078
  name,
2863
3079
  size,
2864
3080
  state,
@@ -2869,7 +3085,7 @@ var TimePicker = forwardRef(function TimePicker2({
2869
3085
  const [time, setTime] = useControlled({
2870
3086
  controlled: value,
2871
3087
  default: defaultValue ?? null,
2872
- onChange
3088
+ onChange: onValueChange
2873
3089
  });
2874
3090
  const [open, setOpen] = useControlled({
2875
3091
  controlled: void 0,
@@ -2889,7 +3105,7 @@ var TimePicker = forwardRef(function TimePicker2({
2889
3105
  minutesRef.current?.querySelector("[data-selected]")?.scrollIntoView({ block: "center" });
2890
3106
  });
2891
3107
  }, [open]);
2892
- const triggerState = state ?? (invalid ? "invalid" : "default");
3108
+ const triggerState = state ?? (isInvalid ? "invalid" : "default");
2893
3109
  const update = (next) => {
2894
3110
  const merged = {
2895
3111
  hours: next.hours ?? time?.hours ?? 0,
@@ -2912,7 +3128,7 @@ var TimePicker = forwardRef(function TimePicker2({
2912
3128
  ]
2913
3129
  }
2914
3130
  ) }),
2915
- /* @__PURE__ */ jsx(PopoverContent, { bare: true, children: /* @__PURE__ */ jsxs("div", { className: "flex gap-1 rounded-md border border-border bg-popover p-2 text-popover-foreground shadow-md", children: [
3131
+ /* @__PURE__ */ jsx(PopoverContent, { isBare: true, children: /* @__PURE__ */ jsxs("div", { className: "flex gap-1 rounded-md border border-border bg-popover p-2 text-popover-foreground shadow-md", children: [
2916
3132
  /* @__PURE__ */ jsx(
2917
3133
  "div",
2918
3134
  {
@@ -2986,13 +3202,13 @@ var DateRangePicker = forwardRef(
2986
3202
  function DateRangePicker2({
2987
3203
  value,
2988
3204
  defaultValue,
2989
- onChange,
3205
+ onValueChange,
2990
3206
  placeholder = "Pick a range",
2991
3207
  format = defaultFormat3,
2992
3208
  min,
2993
3209
  max,
2994
3210
  isDisabled: dayDisabled,
2995
- invalid,
3211
+ isInvalid,
2996
3212
  name,
2997
3213
  size,
2998
3214
  state,
@@ -3003,13 +3219,13 @@ var DateRangePicker = forwardRef(
3003
3219
  const [range, setRange] = useControlled({
3004
3220
  controlled: value,
3005
3221
  default: defaultValue ?? null,
3006
- onChange
3222
+ onChange: onValueChange
3007
3223
  });
3008
3224
  const [open, setOpen] = useControlled({
3009
3225
  controlled: void 0,
3010
3226
  default: false
3011
3227
  });
3012
- const triggerState = state ?? (invalid ? "invalid" : "default");
3228
+ const triggerState = state ?? (isInvalid ? "invalid" : "default");
3013
3229
  const wasComplete = useRef(false);
3014
3230
  useEffect(() => {
3015
3231
  const complete = !!(range?.start && range?.end);
@@ -3034,11 +3250,11 @@ var DateRangePicker = forwardRef(
3034
3250
  ]
3035
3251
  }
3036
3252
  ) }),
3037
- /* @__PURE__ */ jsx(PopoverContent, { bare: true, children: /* @__PURE__ */ jsx(
3253
+ /* @__PURE__ */ jsx(PopoverContent, { isBare: true, children: /* @__PURE__ */ jsx(
3038
3254
  RangeCalendar,
3039
3255
  {
3040
3256
  value: range,
3041
- onChange: setRange,
3257
+ onValueChange: setRange,
3042
3258
  defaultMonth: range?.start ?? /* @__PURE__ */ new Date(),
3043
3259
  min,
3044
3260
  max,
@@ -3071,11 +3287,11 @@ var colorSwatchVariants = tv({
3071
3287
  true: "cursor-pointer transition-shadow focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 hover:shadow-sm",
3072
3288
  false: ""
3073
3289
  },
3074
- selected: {
3290
+ isSelected: {
3075
3291
  true: "ring-2 ring-ring ring-offset-1",
3076
3292
  false: ""
3077
3293
  },
3078
- disabled: {
3294
+ isDisabled: {
3079
3295
  true: "cursor-not-allowed opacity-50",
3080
3296
  false: ""
3081
3297
  }
@@ -3084,14 +3300,14 @@ var colorSwatchVariants = tv({
3084
3300
  size: "md",
3085
3301
  shape: "square",
3086
3302
  interactive: false,
3087
- selected: false,
3088
- disabled: false
3303
+ isSelected: false,
3304
+ isDisabled: false
3089
3305
  }
3090
3306
  });
3091
- var ColorSwatch = forwardRef(function ColorSwatch2({ color = "#000000", size, shape, selected, disabled, className, onClick, style, ...rest }, ref) {
3307
+ var ColorSwatch = forwardRef(function ColorSwatch2({ color = "#000000", size, shape, isSelected, isDisabled, className, onClick, style, ...rest }, ref) {
3092
3308
  const interactive = !!onClick;
3093
3309
  const classes = cn(
3094
- colorSwatchVariants({ size, shape, interactive, selected, disabled }),
3310
+ colorSwatchVariants({ size, shape, interactive, isSelected, isDisabled }),
3095
3311
  className
3096
3312
  );
3097
3313
  const styleWithColor = {
@@ -3105,7 +3321,7 @@ var ColorSwatch = forwardRef(function ColorSwatch2({ color = "#000000", size, sh
3105
3321
  {
3106
3322
  ref,
3107
3323
  type: "button",
3108
- disabled,
3324
+ disabled: isDisabled,
3109
3325
  onClick,
3110
3326
  style: styleWithColor,
3111
3327
  className: classes,
@@ -3215,18 +3431,18 @@ function parseColorToHsv(input) {
3215
3431
  function hsvToHex(hsv, options) {
3216
3432
  return formatHex(hsvToRgb(hsv), options);
3217
3433
  }
3218
- function commitHex(text, withAlpha) {
3434
+ function commitHex(text, hasAlpha) {
3219
3435
  const normalised = text.startsWith("#") ? text : `#${text}`;
3220
3436
  const rgb = parseHex(normalised);
3221
3437
  if (!rgb) return null;
3222
- return formatHex(rgb, { withAlpha });
3438
+ return formatHex(rgb, { withAlpha: hasAlpha });
3223
3439
  }
3224
3440
  var ColorField = forwardRef(function ColorField2({
3225
3441
  value,
3226
3442
  defaultValue,
3227
- onChange,
3443
+ onValueChange,
3228
3444
  swatchShape = "square",
3229
- withAlpha = false,
3445
+ hasAlpha = false,
3230
3446
  size,
3231
3447
  state,
3232
3448
  className,
@@ -3241,7 +3457,7 @@ var ColorField = forwardRef(function ColorField2({
3241
3457
  const [committed, setCommitted] = useControlled({
3242
3458
  controlled: value,
3243
3459
  default: defaultValue ?? null,
3244
- onChange
3460
+ onChange: onValueChange
3245
3461
  });
3246
3462
  const [draft, setDraft] = useState(committed ?? "");
3247
3463
  useEffect(() => {
@@ -3252,7 +3468,7 @@ var ColorField = forwardRef(function ColorField2({
3252
3468
  setCommitted(null);
3253
3469
  return;
3254
3470
  }
3255
- const next = commitHex(draft, withAlpha);
3471
+ const next = commitHex(draft, hasAlpha);
3256
3472
  if (next) {
3257
3473
  setCommitted(next);
3258
3474
  setDraft(next);
@@ -3331,10 +3547,10 @@ var ColorSlider = forwardRef(function ColorSlider2({
3331
3547
  channel = "hue",
3332
3548
  value,
3333
3549
  defaultValue,
3334
- onChange,
3550
+ onValueChange,
3335
3551
  color,
3336
3552
  step,
3337
- disabled = false,
3553
+ isDisabled = false,
3338
3554
  className,
3339
3555
  "aria-label": ariaLabel,
3340
3556
  ...rest
@@ -3344,7 +3560,7 @@ var ColorSlider = forwardRef(function ColorSlider2({
3344
3560
  const [val, setVal] = useControlled({
3345
3561
  controlled: value,
3346
3562
  default: defaultValue ?? 0,
3347
- onChange
3563
+ onChange: onValueChange
3348
3564
  });
3349
3565
  const trackRef = useRef(null);
3350
3566
  const updateFromClientX = useCallback(
@@ -3354,30 +3570,30 @@ var ColorSlider = forwardRef(function ColorSlider2({
3354
3570
  const rect = track.getBoundingClientRect();
3355
3571
  const ratio2 = clamp01((clientX - rect.left) / rect.width);
3356
3572
  const next = ratio2 * max;
3357
- setVal(channel === "hue" ? clampHue(next) : clamp01(next));
3573
+ setVal(channel === "hue" ? next : clamp01(next));
3358
3574
  },
3359
3575
  [channel, max, setVal]
3360
3576
  );
3361
3577
  const handlePointerDown = useCallback(
3362
3578
  (e) => {
3363
- if (disabled) return;
3579
+ if (isDisabled) return;
3364
3580
  e.preventDefault();
3365
3581
  e.target.setPointerCapture?.(e.pointerId);
3366
3582
  updateFromClientX(e.clientX);
3367
3583
  },
3368
- [disabled, updateFromClientX]
3584
+ [isDisabled, updateFromClientX]
3369
3585
  );
3370
3586
  const handlePointerMove = useCallback(
3371
3587
  (e) => {
3372
- if (disabled) return;
3588
+ if (isDisabled) return;
3373
3589
  if (e.buttons !== 1) return;
3374
3590
  updateFromClientX(e.clientX);
3375
3591
  },
3376
- [disabled, updateFromClientX]
3592
+ [isDisabled, updateFromClientX]
3377
3593
  );
3378
3594
  const handleKeyDown = useCallback(
3379
3595
  (e) => {
3380
- if (disabled) return;
3596
+ if (isDisabled) return;
3381
3597
  let next = val;
3382
3598
  switch (e.key) {
3383
3599
  case "ArrowRight":
@@ -3395,20 +3611,19 @@ var ColorSlider = forwardRef(function ColorSlider2({
3395
3611
  next = val - stepValue * 10;
3396
3612
  break;
3397
3613
  case "Home":
3398
- next = 0;
3399
- break;
3400
3614
  case "End":
3401
- next = max;
3402
- break;
3615
+ e.preventDefault();
3616
+ setVal(e.key === "Home" ? 0 : max);
3617
+ return;
3403
3618
  default:
3404
3619
  return;
3405
3620
  }
3406
3621
  e.preventDefault();
3407
3622
  setVal(channel === "hue" ? clampHue(next) : clamp01(next));
3408
3623
  },
3409
- [channel, disabled, max, setVal, stepValue, val]
3624
+ [channel, isDisabled, max, setVal, stepValue, val]
3410
3625
  );
3411
- const ratio = channel === "hue" ? clampHue(val) / 360 : clamp01(val);
3626
+ const ratio = channel === "hue" ? val >= 360 ? 1 : clampHue(val) / 360 : clamp01(val);
3412
3627
  const gradient = buildGradient(channel, color);
3413
3628
  const trackStyle = {
3414
3629
  backgroundImage: gradient,
@@ -3434,21 +3649,21 @@ var ColorSlider = forwardRef(function ColorSlider2({
3434
3649
  {
3435
3650
  ref: composeRefs(trackRef),
3436
3651
  role: "slider",
3437
- tabIndex: disabled ? -1 : 0,
3652
+ tabIndex: isDisabled ? -1 : 0,
3438
3653
  "aria-label": ariaLabel ?? `${channel} slider`,
3439
3654
  "aria-valuemin": 0,
3440
3655
  "aria-valuemax": max,
3441
3656
  "aria-valuenow": Math.round(val * 100) / 100,
3442
- "aria-disabled": disabled || void 0,
3657
+ "aria-disabled": isDisabled || void 0,
3443
3658
  "aria-orientation": "horizontal",
3444
- "data-disabled": disabled ? "" : void 0,
3659
+ "data-disabled": isDisabled ? "" : void 0,
3445
3660
  onPointerDown: handlePointerDown,
3446
3661
  onPointerMove: handlePointerMove,
3447
3662
  onKeyDown: handleKeyDown,
3448
3663
  style: trackStyle,
3449
3664
  className: cn(
3450
3665
  "relative h-3 w-full rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
3451
- disabled && "pointer-events-none opacity-50"
3666
+ isDisabled && "pointer-events-none opacity-50"
3452
3667
  ),
3453
3668
  children: /* @__PURE__ */ jsx(
3454
3669
  "div",
@@ -3470,9 +3685,9 @@ var ColorArea = forwardRef(function ColorArea2({
3470
3685
  defaultSaturation,
3471
3686
  value,
3472
3687
  defaultValue,
3473
- onChange,
3688
+ onValueChange,
3474
3689
  step = 0.01,
3475
- disabled = false,
3690
+ isDisabled = false,
3476
3691
  className,
3477
3692
  "aria-label": ariaLabel = "Saturation and value",
3478
3693
  ...rest
@@ -3492,9 +3707,9 @@ var ColorArea = forwardRef(function ColorArea2({
3492
3707
  const cv = clamp01(nextV);
3493
3708
  setS(cs);
3494
3709
  setV(cv);
3495
- onChange?.({ saturation: cs, value: cv });
3710
+ onValueChange?.({ saturation: cs, value: cv });
3496
3711
  },
3497
- [onChange, setS, setV]
3712
+ [onValueChange, setS, setV]
3498
3713
  );
3499
3714
  const updateFromClient = useCallback(
3500
3715
  (clientX, clientY) => {
@@ -3509,23 +3724,23 @@ var ColorArea = forwardRef(function ColorArea2({
3509
3724
  );
3510
3725
  const handlePointerDown = useCallback(
3511
3726
  (e) => {
3512
- if (disabled) return;
3727
+ if (isDisabled) return;
3513
3728
  e.preventDefault();
3514
3729
  e.target.setPointerCapture?.(e.pointerId);
3515
3730
  updateFromClient(e.clientX, e.clientY);
3516
3731
  },
3517
- [disabled, updateFromClient]
3732
+ [isDisabled, updateFromClient]
3518
3733
  );
3519
3734
  const handlePointerMove = useCallback(
3520
3735
  (e) => {
3521
- if (disabled || e.buttons !== 1) return;
3736
+ if (isDisabled || e.buttons !== 1) return;
3522
3737
  updateFromClient(e.clientX, e.clientY);
3523
3738
  },
3524
- [disabled, updateFromClient]
3739
+ [isDisabled, updateFromClient]
3525
3740
  );
3526
3741
  const handleKeyDown = useCallback(
3527
3742
  (e) => {
3528
- if (disabled) return;
3743
+ if (isDisabled) return;
3529
3744
  const big = step * 10;
3530
3745
  let nextS = s;
3531
3746
  let nextV = v;
@@ -3562,7 +3777,7 @@ var ColorArea = forwardRef(function ColorArea2({
3562
3777
  e.preventDefault();
3563
3778
  emit(nextS, nextV);
3564
3779
  },
3565
- [disabled, emit, s, step, v]
3780
+ [isDisabled, emit, s, step, v]
3566
3781
  );
3567
3782
  const baseColor = `hsl(${hue}, 100%, 50%)`;
3568
3783
  const trackStyle = {
@@ -3580,18 +3795,18 @@ var ColorArea = forwardRef(function ColorArea2({
3580
3795
  {
3581
3796
  ref: composeRefs(forwardedRef, trackRef),
3582
3797
  role: "slider",
3583
- tabIndex: disabled ? -1 : 0,
3798
+ tabIndex: isDisabled ? -1 : 0,
3584
3799
  "aria-label": ariaLabel,
3585
3800
  "aria-valuetext": `saturation ${(s * 100).toFixed(0)}%, value ${(v * 100).toFixed(0)}%`,
3586
- "aria-disabled": disabled || void 0,
3587
- "data-disabled": disabled ? "" : void 0,
3801
+ "aria-disabled": isDisabled || void 0,
3802
+ "data-disabled": isDisabled ? "" : void 0,
3588
3803
  onPointerDown: handlePointerDown,
3589
3804
  onPointerMove: handlePointerMove,
3590
3805
  onKeyDown: handleKeyDown,
3591
3806
  style: trackStyle,
3592
3807
  className: cn(
3593
3808
  "relative aspect-square w-full select-none rounded-md border border-border focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
3594
- disabled && "pointer-events-none opacity-50",
3809
+ isDisabled && "pointer-events-none opacity-50",
3595
3810
  className
3596
3811
  ),
3597
3812
  ...rest,
@@ -3617,11 +3832,11 @@ function angleFromCenter(clientX, clientY, rect) {
3617
3832
  var ColorWheel = forwardRef(function ColorWheel2({
3618
3833
  value,
3619
3834
  defaultValue,
3620
- onChange,
3835
+ onValueChange,
3621
3836
  size = 200,
3622
3837
  thickness = 30,
3623
3838
  step = 1,
3624
- disabled = false,
3839
+ isDisabled = false,
3625
3840
  className,
3626
3841
  "aria-label": ariaLabel = "Hue",
3627
3842
  ...rest
@@ -3629,7 +3844,7 @@ var ColorWheel = forwardRef(function ColorWheel2({
3629
3844
  const [hue, setHue] = useControlled({
3630
3845
  controlled: value,
3631
3846
  default: defaultValue ?? 0,
3632
- onChange
3847
+ onChange: onValueChange
3633
3848
  });
3634
3849
  const trackRef = useRef(null);
3635
3850
  const updateFromClient = useCallback(
@@ -3642,23 +3857,23 @@ var ColorWheel = forwardRef(function ColorWheel2({
3642
3857
  );
3643
3858
  const handlePointerDown = useCallback(
3644
3859
  (e) => {
3645
- if (disabled) return;
3860
+ if (isDisabled) return;
3646
3861
  e.preventDefault();
3647
3862
  e.target.setPointerCapture?.(e.pointerId);
3648
3863
  updateFromClient(e.clientX, e.clientY);
3649
3864
  },
3650
- [disabled, updateFromClient]
3865
+ [isDisabled, updateFromClient]
3651
3866
  );
3652
3867
  const handlePointerMove = useCallback(
3653
3868
  (e) => {
3654
- if (disabled || e.buttons !== 1) return;
3869
+ if (isDisabled || e.buttons !== 1) return;
3655
3870
  updateFromClient(e.clientX, e.clientY);
3656
3871
  },
3657
- [disabled, updateFromClient]
3872
+ [isDisabled, updateFromClient]
3658
3873
  );
3659
3874
  const handleKeyDown = useCallback(
3660
3875
  (e) => {
3661
- if (disabled) return;
3876
+ if (isDisabled) return;
3662
3877
  let next = hue;
3663
3878
  switch (e.key) {
3664
3879
  case "ArrowRight":
@@ -3687,7 +3902,7 @@ var ColorWheel = forwardRef(function ColorWheel2({
3687
3902
  e.preventDefault();
3688
3903
  setHue(clampHue(next));
3689
3904
  },
3690
- [disabled, hue, setHue, step]
3905
+ [isDisabled, hue, setHue, step]
3691
3906
  );
3692
3907
  const radius = (size - thickness) / 2;
3693
3908
  const angleRad = hue * Math.PI / 180;
@@ -3705,20 +3920,20 @@ var ColorWheel = forwardRef(function ColorWheel2({
3705
3920
  {
3706
3921
  ref: composeRefs(forwardedRef, trackRef),
3707
3922
  role: "slider",
3708
- tabIndex: disabled ? -1 : 0,
3923
+ tabIndex: isDisabled ? -1 : 0,
3709
3924
  "aria-label": ariaLabel,
3710
3925
  "aria-valuemin": 0,
3711
3926
  "aria-valuemax": 360,
3712
3927
  "aria-valuenow": Math.round(hue),
3713
- "aria-disabled": disabled || void 0,
3714
- "data-disabled": disabled ? "" : void 0,
3928
+ "aria-disabled": isDisabled || void 0,
3929
+ "data-disabled": isDisabled ? "" : void 0,
3715
3930
  onPointerDown: handlePointerDown,
3716
3931
  onPointerMove: handlePointerMove,
3717
3932
  onKeyDown: handleKeyDown,
3718
3933
  style: wheelStyle,
3719
3934
  className: cn(
3720
3935
  "relative inline-block select-none rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
3721
- disabled && "pointer-events-none opacity-50",
3936
+ isDisabled && "pointer-events-none opacity-50",
3722
3937
  className
3723
3938
  ),
3724
3939
  ...rest,
@@ -3737,7 +3952,7 @@ var ColorWheel = forwardRef(function ColorWheel2({
3737
3952
  }
3738
3953
  );
3739
3954
  });
3740
- function ColorSwatchItem({ color, selected, disabled, size, shape, onSelect }) {
3955
+ function ColorSwatchItem({ color, isSelected, isDisabled, size, shape, onSelect }) {
3741
3956
  const roving = useRovingFocusItem();
3742
3957
  return /* @__PURE__ */ jsx(
3743
3958
  ColorSwatch,
@@ -3746,8 +3961,8 @@ function ColorSwatchItem({ color, selected, disabled, size, shape, onSelect }) {
3746
3961
  color,
3747
3962
  size,
3748
3963
  shape,
3749
- selected,
3750
- disabled,
3964
+ isSelected,
3965
+ isDisabled,
3751
3966
  tabIndex: roving.tabIndex,
3752
3967
  onClick: () => onSelect(color),
3753
3968
  onKeyDown: (e) => {
@@ -3768,31 +3983,31 @@ function ColorSwatchPicker({
3768
3983
  colors,
3769
3984
  value,
3770
3985
  defaultValue,
3771
- onChange,
3986
+ onValueChange,
3772
3987
  swatchSize = "md",
3773
3988
  swatchShape = "square",
3774
- disabled = false,
3989
+ isDisabled = false,
3775
3990
  className,
3776
3991
  ...rest
3777
3992
  }) {
3778
3993
  const [selected, setSelected] = useControlled({
3779
3994
  controlled: value,
3780
3995
  default: defaultValue ?? null,
3781
- onChange
3996
+ onChange: onValueChange
3782
3997
  });
3783
3998
  return /* @__PURE__ */ jsx(
3784
3999
  RovingFocusGroup,
3785
4000
  {
3786
4001
  orientation: "both",
3787
- loop: true,
4002
+ canLoop: true,
3788
4003
  className: cn("flex flex-wrap gap-1.5", className),
3789
4004
  ...rest,
3790
4005
  children: colors.map((c) => /* @__PURE__ */ jsx(
3791
4006
  ColorSwatchItem,
3792
4007
  {
3793
4008
  color: c,
3794
- selected: selected === c,
3795
- disabled,
4009
+ isSelected: selected === c,
4010
+ isDisabled,
3796
4011
  size: swatchSize,
3797
4012
  shape: swatchShape,
3798
4013
  onSelect: (color) => setSelected(color)
@@ -3806,11 +4021,11 @@ var FALLBACK_HSV = { h: 217, s: 0.91, v: 0.96, a: 1 };
3806
4021
  var ColorPicker = forwardRef(function ColorPicker2({
3807
4022
  value,
3808
4023
  defaultValue = "#3b82f6",
3809
- onChange,
3810
- withAlpha = false,
4024
+ onValueChange,
4025
+ hasAlpha = false,
3811
4026
  presets,
3812
4027
  triggerSize = "md",
3813
- disabled = false,
4028
+ isDisabled = false,
3814
4029
  name,
3815
4030
  className,
3816
4031
  "aria-label": ariaLabel = "Pick a color"
@@ -3818,21 +4033,21 @@ var ColorPicker = forwardRef(function ColorPicker2({
3818
4033
  const [hex, setHex] = useControlled({
3819
4034
  controlled: value,
3820
4035
  default: defaultValue ?? null,
3821
- onChange
4036
+ onChange: onValueChange
3822
4037
  });
3823
4038
  const [hsv, setHsvState] = useState(() => parseColorToHsv(hex) ?? FALLBACK_HSV);
3824
4039
  useEffect(() => {
3825
4040
  if (!hex) return;
3826
4041
  const parsed = parseColorToHsv(hex);
3827
4042
  if (!parsed) return;
3828
- const currentHex = hsvToHex(hsv, { withAlpha });
4043
+ const currentHex = hsvToHex(hsv, { withAlpha: hasAlpha });
3829
4044
  if (currentHex.toLowerCase() !== hex.toLowerCase()) {
3830
4045
  setHsvState({ ...parsed, a: hsv.a });
3831
4046
  }
3832
- }, [hex, withAlpha]);
4047
+ }, [hex, hasAlpha]);
3833
4048
  const updateHsv = (next) => {
3834
4049
  setHsvState(next);
3835
- setHex(hsvToHex(next, { withAlpha }));
4050
+ setHex(hsvToHex(next, { withAlpha: hasAlpha }));
3836
4051
  };
3837
4052
  return /* @__PURE__ */ jsxs(Popover, { children: [
3838
4053
  /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
@@ -3841,7 +4056,7 @@ var ColorPicker = forwardRef(function ColorPicker2({
3841
4056
  ref,
3842
4057
  type: "button",
3843
4058
  "aria-label": ariaLabel,
3844
- disabled,
4059
+ disabled: isDisabled,
3845
4060
  className: cn(
3846
4061
  "inline-flex items-center gap-2 rounded-md border border-border bg-background px-2 py-1 text-sm transition-colors hover:border-border-strong focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-60",
3847
4062
  className
@@ -3859,7 +4074,7 @@ var ColorPicker = forwardRef(function ColorPicker2({
3859
4074
  hue: hsv.h,
3860
4075
  saturation: hsv.s,
3861
4076
  value: hsv.v,
3862
- onChange: ({ saturation, value: value2 }) => updateHsv({ ...hsv, s: saturation, v: value2 })
4077
+ onValueChange: ({ saturation, value: value2 }) => updateHsv({ ...hsv, s: saturation, v: value2 })
3863
4078
  }
3864
4079
  ),
3865
4080
  /* @__PURE__ */ jsx(
@@ -3867,17 +4082,17 @@ var ColorPicker = forwardRef(function ColorPicker2({
3867
4082
  {
3868
4083
  channel: "hue",
3869
4084
  value: hsv.h,
3870
- onChange: (h) => updateHsv({ ...hsv, h }),
4085
+ onValueChange: (h) => updateHsv({ ...hsv, h }),
3871
4086
  "aria-label": "Hue"
3872
4087
  }
3873
4088
  ),
3874
- withAlpha && /* @__PURE__ */ jsx(
4089
+ hasAlpha && /* @__PURE__ */ jsx(
3875
4090
  ColorSlider,
3876
4091
  {
3877
4092
  channel: "alpha",
3878
4093
  value: hsv.a ?? 1,
3879
4094
  color: hsv,
3880
- onChange: (a) => updateHsv({ ...hsv, a }),
4095
+ onValueChange: (a) => updateHsv({ ...hsv, a }),
3881
4096
  "aria-label": "Alpha"
3882
4097
  }
3883
4098
  ),
@@ -3885,8 +4100,8 @@ var ColorPicker = forwardRef(function ColorPicker2({
3885
4100
  ColorField,
3886
4101
  {
3887
4102
  value: hex,
3888
- onChange: (next) => setHex(next),
3889
- withAlpha
4103
+ onValueChange: (next) => setHex(next),
4104
+ hasAlpha
3890
4105
  }
3891
4106
  ),
3892
4107
  presets && presets.length > 0 && /* @__PURE__ */ jsx(
@@ -3894,7 +4109,7 @@ var ColorPicker = forwardRef(function ColorPicker2({
3894
4109
  {
3895
4110
  colors: presets,
3896
4111
  value: hex,
3897
- onChange: setHex,
4112
+ onValueChange: setHex,
3898
4113
  swatchSize: "sm"
3899
4114
  }
3900
4115
  )
@@ -3976,7 +4191,7 @@ var StepperList = forwardRef(function StepperList2({ className, children, ...res
3976
4191
  }
3977
4192
  );
3978
4193
  });
3979
- var StepperStep = forwardRef(function StepperStep2({ value, description, disabled = false, className, onClick, children, ...rest }, ref) {
4194
+ var StepperStep = forwardRef(function StepperStep2({ value, description, isDisabled = false, className, onClick, children, ...rest }, ref) {
3980
4195
  const ctx = useStepperContext();
3981
4196
  const roving = useRovingFocusItem();
3982
4197
  useEffect(() => {
@@ -4006,19 +4221,19 @@ var StepperStep = forwardRef(function StepperStep2({ value, description, disable
4006
4221
  "aria-controls": panelId,
4007
4222
  "aria-current": status === "active" ? "step" : void 0,
4008
4223
  "data-status": status,
4009
- "data-disabled": dataAttr(disabled),
4224
+ "data-disabled": dataAttr(isDisabled),
4010
4225
  tabIndex: roving.tabIndex,
4011
- disabled,
4226
+ disabled: isDisabled,
4012
4227
  onClick: (e) => {
4013
4228
  onClick?.(e);
4014
- if (e.defaultPrevented || disabled) return;
4229
+ if (e.defaultPrevented || isDisabled) return;
4015
4230
  ctx.setValue(value);
4016
4231
  },
4017
4232
  onFocus: roving.onFocus,
4018
4233
  onKeyDown: roving.onKeyDown,
4019
4234
  className: cn(
4020
4235
  "group flex items-center gap-2 text-left text-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded-sm",
4021
- disabled && "pointer-events-none opacity-50",
4236
+ isDisabled && "pointer-events-none opacity-50",
4022
4237
  className
4023
4238
  ),
4024
4239
  ...rest,
@@ -4095,9 +4310,9 @@ var TagsInput = forwardRef(function TagsInput2({
4095
4310
  placeholder = "Add tag\u2026",
4096
4311
  delimiters = [","],
4097
4312
  validate = (t) => t.trim().length > 0,
4098
- allowDuplicates = false,
4313
+ allowsDuplicates = false,
4099
4314
  max,
4100
- invalid,
4315
+ isInvalid,
4101
4316
  disabled,
4102
4317
  readOnly,
4103
4318
  name,
@@ -4120,17 +4335,17 @@ var TagsInput = forwardRef(function TagsInput2({
4120
4335
  });
4121
4336
  const inputRef = useRef(null);
4122
4337
  const [pendingDelete, setPendingDelete] = useState(false);
4123
- const state = invalid ? "invalid" : "default";
4338
+ const state = isInvalid ? "invalid" : "default";
4124
4339
  const commit = useCallback(
4125
4340
  (raw) => {
4126
4341
  const trimmed = raw.trim();
4127
4342
  if (!trimmed || !validate(trimmed)) return;
4128
- if (!allowDuplicates && tags.includes(trimmed)) return;
4343
+ if (!allowsDuplicates && tags.includes(trimmed)) return;
4129
4344
  if (max != null && tags.length >= max) return;
4130
4345
  setTags([...tags, trimmed]);
4131
4346
  setText("");
4132
4347
  },
4133
- [tags, validate, allowDuplicates, max, setTags, setText]
4348
+ [tags, validate, allowsDuplicates, max, setTags, setText]
4134
4349
  );
4135
4350
  const removeAt = useCallback(
4136
4351
  (idx) => {
@@ -4177,7 +4392,7 @@ var TagsInput = forwardRef(function TagsInput2({
4177
4392
  onClick: handleContainerClick,
4178
4393
  "data-disabled": disabled || void 0,
4179
4394
  "data-readonly": readOnly || void 0,
4180
- "data-invalid": invalid || void 0,
4395
+ "data-invalid": isInvalid || void 0,
4181
4396
  className: cn(
4182
4397
  inputBaseVariants({ size, state }),
4183
4398
  "h-auto min-h-10 flex-wrap items-center gap-1.5 py-1.5",
@@ -4206,7 +4421,7 @@ var TagsInput = forwardRef(function TagsInput2({
4206
4421
  placeholder: tags.length === 0 ? placeholder : void 0,
4207
4422
  disabled,
4208
4423
  readOnly,
4209
- "aria-invalid": invalid || void 0,
4424
+ "aria-invalid": isInvalid || void 0,
4210
4425
  onChange: (e) => setText(e.target.value),
4211
4426
  onKeyDown: handleKeyDown,
4212
4427
  onBlur: (e) => {
@@ -4242,7 +4457,7 @@ var FileUpload = forwardRef(function FileUpload2({
4242
4457
  maxFiles,
4243
4458
  onFilesChange,
4244
4459
  disabled,
4245
- invalid,
4460
+ isInvalid,
4246
4461
  label = "Drop files here, or click to browse",
4247
4462
  hint,
4248
4463
  children,
@@ -4339,7 +4554,7 @@ var FileUpload = forwardRef(function FileUpload2({
4339
4554
  openPicker();
4340
4555
  }
4341
4556
  };
4342
- const showError = invalid || dragState === "reject";
4557
+ const showError = isInvalid || dragState === "reject";
4343
4558
  return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-3", className), children: [
4344
4559
  /* @__PURE__ */ jsxs(
4345
4560
  "div",
@@ -4415,15 +4630,15 @@ function Editable({
4415
4630
  value: valueProp,
4416
4631
  defaultValue,
4417
4632
  onValueChange,
4418
- editing: editingProp,
4633
+ isEditing: editingProp,
4419
4634
  defaultEditing = false,
4420
4635
  onEditingChange,
4421
4636
  placeholder = "Click to edit",
4422
- submitOnBlur = true,
4423
- submitOnEnter = true,
4424
- cancelOnEscape = true,
4425
- disabled = false,
4426
- readOnly = false,
4637
+ canSubmitOnBlur = true,
4638
+ canSubmitOnEnter = true,
4639
+ canCancelOnEscape = true,
4640
+ isDisabled = false,
4641
+ isReadOnly = false,
4427
4642
  name,
4428
4643
  className,
4429
4644
  children
@@ -4456,16 +4671,16 @@ function Editable({
4456
4671
  value,
4457
4672
  draft,
4458
4673
  setDraft,
4459
- editing,
4674
+ isEditing: editing,
4460
4675
  setEditing,
4461
4676
  submit,
4462
4677
  cancel,
4463
4678
  placeholder,
4464
- disabled,
4465
- readOnly,
4466
- submitOnBlur,
4467
- submitOnEnter,
4468
- cancelOnEscape,
4679
+ isDisabled,
4680
+ isReadOnly,
4681
+ canSubmitOnBlur,
4682
+ canSubmitOnEnter,
4683
+ canCancelOnEscape,
4469
4684
  inputRef
4470
4685
  }),
4471
4686
  [
@@ -4476,11 +4691,11 @@ function Editable({
4476
4691
  submit,
4477
4692
  cancel,
4478
4693
  placeholder,
4479
- disabled,
4480
- readOnly,
4481
- submitOnBlur,
4482
- submitOnEnter,
4483
- cancelOnEscape
4694
+ isDisabled,
4695
+ isReadOnly,
4696
+ canSubmitOnBlur,
4697
+ canSubmitOnEnter,
4698
+ canCancelOnEscape
4484
4699
  ]
4485
4700
  );
4486
4701
  return /* @__PURE__ */ jsx(EditableContext.Provider, { value: ctx, children: /* @__PURE__ */ jsxs("div", { className: cn("inline-flex items-center gap-1.5", className), children: [
@@ -4491,9 +4706,9 @@ function Editable({
4491
4706
  var EditablePreview = forwardRef(
4492
4707
  function EditablePreview2({ className, onClick, onKeyDown, ...rest }, forwardedRef) {
4493
4708
  const ctx = useEditableContext();
4494
- if (ctx.editing) return null;
4709
+ if (ctx.isEditing) return null;
4495
4710
  const isEmpty = !ctx.value;
4496
- const interactive = !ctx.disabled && !ctx.readOnly;
4711
+ const interactive = !ctx.isDisabled && !ctx.isReadOnly;
4497
4712
  return /* @__PURE__ */ jsx(
4498
4713
  "span",
4499
4714
  {
@@ -4530,20 +4745,20 @@ var EditableInput = forwardRef(
4530
4745
  function EditableInput2({ className, size, state, onKeyDown, onBlur, ...rest }, forwardedRef) {
4531
4746
  const ctx = useEditableContext();
4532
4747
  useEffect(() => {
4533
- if (ctx.editing && ctx.inputRef.current) {
4748
+ if (ctx.isEditing && ctx.inputRef.current) {
4534
4749
  ctx.inputRef.current.focus();
4535
4750
  const len = ctx.inputRef.current.value.length;
4536
4751
  ctx.inputRef.current.setSelectionRange(len, len);
4537
4752
  }
4538
- }, [ctx.editing, ctx.inputRef]);
4539
- if (!ctx.editing) return null;
4753
+ }, [ctx.isEditing, ctx.inputRef]);
4754
+ if (!ctx.isEditing) return null;
4540
4755
  const handleKeyDown = (e) => {
4541
4756
  onKeyDown?.(e);
4542
4757
  if (e.defaultPrevented) return;
4543
- if (ctx.submitOnEnter && e.key === "Enter") {
4758
+ if (ctx.canSubmitOnEnter && e.key === "Enter") {
4544
4759
  e.preventDefault();
4545
4760
  ctx.submit();
4546
- } else if (ctx.cancelOnEscape && e.key === "Escape") {
4761
+ } else if (ctx.canCancelOnEscape && e.key === "Escape") {
4547
4762
  e.preventDefault();
4548
4763
  ctx.cancel();
4549
4764
  }
@@ -4554,14 +4769,14 @@ var EditableInput = forwardRef(
4554
4769
  ref: composeRefs(forwardedRef, ctx.inputRef),
4555
4770
  type: "text",
4556
4771
  value: ctx.draft,
4557
- disabled: ctx.disabled,
4558
- readOnly: ctx.readOnly,
4772
+ disabled: ctx.isDisabled,
4773
+ readOnly: ctx.isReadOnly,
4559
4774
  onChange: (e) => ctx.setDraft(e.target.value),
4560
4775
  onKeyDown: handleKeyDown,
4561
4776
  onBlur: (e) => {
4562
4777
  onBlur?.(e);
4563
4778
  if (e.defaultPrevented) return;
4564
- if (ctx.submitOnBlur) ctx.submit();
4779
+ if (ctx.canSubmitOnBlur) ctx.submit();
4565
4780
  },
4566
4781
  className: cn(inputBaseVariants({ size, state }), className),
4567
4782
  ...rest
@@ -4572,7 +4787,7 @@ var EditableInput = forwardRef(
4572
4787
  var EditableSubmit = forwardRef(
4573
4788
  function EditableSubmit2({ className, onClick, children, type = "button", ...rest }, forwardedRef) {
4574
4789
  const ctx = useEditableContext();
4575
- if (!ctx.editing) return null;
4790
+ if (!ctx.isEditing) return null;
4576
4791
  return /* @__PURE__ */ jsx(
4577
4792
  "button",
4578
4793
  {
@@ -4598,7 +4813,7 @@ var EditableSubmit = forwardRef(
4598
4813
  var EditableCancel = forwardRef(
4599
4814
  function EditableCancel2({ className, onClick, children, type = "button", ...rest }, forwardedRef) {
4600
4815
  const ctx = useEditableContext();
4601
- if (!ctx.editing) return null;
4816
+ if (!ctx.isEditing) return null;
4602
4817
  return /* @__PURE__ */ jsx(
4603
4818
  "button",
4604
4819
  {
@@ -4649,8 +4864,8 @@ var Wizard = forwardRef(function Wizard2({
4649
4864
  return {
4650
4865
  id: props.id,
4651
4866
  label: props.label,
4652
- optional: props.optional,
4653
- final: props.final
4867
+ isOptional: props.isOptional,
4868
+ isFinal: props.isFinal
4654
4869
  };
4655
4870
  });
4656
4871
  const [steps, setSteps] = useState(stepFromChildren);
@@ -4712,7 +4927,7 @@ var Wizard = forwardRef(function Wizard2({
4712
4927
  setIsPending(false);
4713
4928
  }
4714
4929
  }
4715
- if (currentStep.final) {
4930
+ if (currentStep.isFinal) {
4716
4931
  setIsPending(true);
4717
4932
  try {
4718
4933
  await onComplete?.();
@@ -4794,7 +5009,7 @@ var WizardSteps = forwardRef(
4794
5009
  children: [
4795
5010
  /* @__PURE__ */ jsx("span", { className: "grid h-5 w-5 place-items-center rounded-full bg-background/20 text-[10px]", children: i + 1 }),
4796
5011
  step.label ?? step.id,
4797
- step.optional && /* @__PURE__ */ jsx("span", { className: "ml-1 text-[10px] opacity-70", children: "(optional)" })
5012
+ step.isOptional && /* @__PURE__ */ jsx("span", { className: "ml-1 text-[10px] opacity-70", children: "(optional)" })
4798
5013
  ]
4799
5014
  },
4800
5015
  step.id
@@ -4804,18 +5019,19 @@ var WizardSteps = forwardRef(
4804
5019
  );
4805
5020
  }
4806
5021
  );
4807
- var WizardStep = forwardRef(function WizardStep2({ id, label, validate, optional, final, className, children, ...rest }, ref) {
5022
+ var WizardStep = forwardRef(function WizardStep2({ id, label, validate, isOptional, isFinal, className, children, ...rest }, ref) {
4808
5023
  const ctx = useWizard();
4809
5024
  const isCurrent = ctx.currentStep?.id === id;
4810
- useMemo(() => {
4811
- ctx.registerStep({ id, label, optional, final });
4812
- return id;
4813
- }, [id, label, optional, final]);
4814
- useMemo(() => {
4815
- if (validate) ctx.registerValidator(id, validate);
4816
- else ctx.unregisterValidator(id);
4817
- return validate;
4818
- }, [id, validate]);
5025
+ const { registerStep, unregisterStep, registerValidator, unregisterValidator } = ctx;
5026
+ useEffect(() => {
5027
+ registerStep({ id, label, isOptional, isFinal });
5028
+ return () => unregisterStep(id);
5029
+ }, [registerStep, unregisterStep, id, label, isOptional, isFinal]);
5030
+ useEffect(() => {
5031
+ if (validate) registerValidator(id, validate);
5032
+ else unregisterValidator(id);
5033
+ return () => unregisterValidator(id);
5034
+ }, [registerValidator, unregisterValidator, id, validate]);
4819
5035
  if (!isCurrent) return null;
4820
5036
  return /* @__PURE__ */ jsx(
4821
5037
  "div",
@@ -4835,13 +5051,13 @@ var WizardFooter = forwardRef(
4835
5051
  prevLabel = "Back",
4836
5052
  nextLabel = "Next",
4837
5053
  submitLabel = "Finish",
4838
- showPrev = true,
5054
+ hasPrev = true,
4839
5055
  className,
4840
5056
  ...rest
4841
5057
  }, ref) {
4842
5058
  const ctx = useWizard();
4843
5059
  const isFirst = ctx.currentIndex === 0;
4844
- const isFinal = ctx.currentStep?.final ?? false;
5060
+ const isFinal = ctx.currentStep?.isFinal ?? false;
4845
5061
  return /* @__PURE__ */ jsxs(
4846
5062
  "div",
4847
5063
  {
@@ -4849,7 +5065,7 @@ var WizardFooter = forwardRef(
4849
5065
  className: cn("mt-2 flex items-center justify-between gap-3", className),
4850
5066
  ...rest,
4851
5067
  children: [
4852
- showPrev && !isFirst && ctx.canGoBack ? /* @__PURE__ */ jsx(
5068
+ hasPrev && !isFirst && ctx.canGoBack ? /* @__PURE__ */ jsx(
4853
5069
  "button",
4854
5070
  {
4855
5071
  type: "button",
@@ -4884,10 +5100,10 @@ var CodeEditor = forwardRef(
4884
5100
  onValueChange,
4885
5101
  language,
4886
5102
  tabSize = 2,
4887
- useTabs = false,
5103
+ isTabIndented = false,
4888
5104
  disabled,
4889
5105
  readOnly,
4890
- invalid,
5106
+ isInvalid,
4891
5107
  minHeight = "12rem",
4892
5108
  placeholder,
4893
5109
  className,
@@ -4903,9 +5119,8 @@ var CodeEditor = forwardRef(
4903
5119
  const textareaRef = useRef(null);
4904
5120
  const gutterRef = useRef(null);
4905
5121
  const [scrollTop, setScrollTop] = useState(0);
4906
- useImperativeHandle(forwardedRef, () => textareaRef.current);
4907
5122
  const lineCount = useMemo(() => value.split("\n").length, [value]);
4908
- const indentChar = useTabs ? " " : " ".repeat(tabSize);
5123
+ const indentChar = isTabIndented ? " " : " ".repeat(tabSize);
4909
5124
  const insertAtSelection = useCallback(
4910
5125
  (insert, selStart, selEnd) => {
4911
5126
  const next = value.slice(0, selStart) + insert + value.slice(selEnd);
@@ -4926,7 +5141,7 @@ var CodeEditor = forwardRef(
4926
5141
  if (e.shiftKey) {
4927
5142
  const lineStart = value.lastIndexOf("\n", start - 1) + 1;
4928
5143
  const lineSlice = value.slice(lineStart, start);
4929
- const match = useTabs ? /^\t/ : new RegExp(`^ {1,${tabSize}}`);
5144
+ const match = isTabIndented ? /^\t/ : new RegExp(`^ {1,${tabSize}}`);
4930
5145
  const m = match.exec(lineSlice);
4931
5146
  if (m) {
4932
5147
  const next = value.slice(0, lineStart) + lineSlice.slice(m[0].length) + value.slice(start);
@@ -4955,18 +5170,41 @@ var CodeEditor = forwardRef(
4955
5170
  const lineStartOffset = before.lastIndexOf("\n") + 1;
4956
5171
  const blockStart = before.slice(0, lineStartOffset);
4957
5172
  const block = before.slice(lineStartOffset) + between;
5173
+ let newStart;
5174
+ let newEnd;
4958
5175
  if (e.shiftKey) {
4959
- const re = useTabs ? /^\t/gm : new RegExp(`^ {1,${tabSize}}`, "gm");
4960
- const next = blockStart + block.replace(re, "") + after;
4961
- setValue(next);
5176
+ const re = isTabIndented ? /^\t/gm : new RegExp(`^ {1,${tabSize}}`, "gm");
5177
+ let removedTotal = 0;
5178
+ let removedFirst = 0;
5179
+ const outdented = block.replace(re, (m, offset) => {
5180
+ removedTotal += m.length;
5181
+ if (offset === 0) removedFirst = m.length;
5182
+ return "";
5183
+ });
5184
+ setValue(blockStart + outdented + after);
5185
+ newStart = Math.max(lineStartOffset, start - removedFirst);
5186
+ newEnd = Math.max(newStart, end - removedTotal);
4962
5187
  } else {
4963
- const next = blockStart + block.replace(/^/gm, indentChar) + after;
4964
- setValue(next);
5188
+ const relEnd = end - lineStartOffset;
5189
+ let inserted = 0;
5190
+ const indented = block.replace(/^/gm, (_m, offset) => {
5191
+ if (offset < relEnd) inserted++;
5192
+ return indentChar;
5193
+ });
5194
+ setValue(blockStart + indented + after);
5195
+ newStart = start + indentChar.length;
5196
+ newEnd = end + indentChar.length * inserted;
4965
5197
  }
5198
+ requestAnimationFrame(() => {
5199
+ if (textareaRef.current) {
5200
+ textareaRef.current.selectionStart = newStart;
5201
+ textareaRef.current.selectionEnd = newEnd;
5202
+ }
5203
+ });
4966
5204
  }
4967
5205
  }
4968
5206
  };
4969
- const state = invalid ? "invalid" : "default";
5207
+ const state = isInvalid ? "invalid" : "default";
4970
5208
  const gutterText = useMemo(
4971
5209
  () => Array.from({ length: lineCount }, (_, i) => String(i + 1)).join("\n"),
4972
5210
  [lineCount]
@@ -4992,9 +5230,15 @@ var CodeEditor = forwardRef(
4992
5230
  {
4993
5231
  ref: gutterRef,
4994
5232
  "aria-hidden": "true",
4995
- className: "select-none whitespace-pre overflow-hidden border-r border-border bg-muted/40 px-3 py-2 text-right text-muted-foreground tabular-nums",
4996
- style: { transform: `translateY(${-scrollTop}px)` },
4997
- children: gutterText
5233
+ className: "select-none overflow-hidden border-r border-border bg-muted/40 text-right text-muted-foreground tabular-nums",
5234
+ children: /* @__PURE__ */ jsx(
5235
+ "div",
5236
+ {
5237
+ className: "whitespace-pre px-3 py-2",
5238
+ style: { transform: `translateY(${-scrollTop}px)` },
5239
+ children: gutterText
5240
+ }
5241
+ )
4998
5242
  }
4999
5243
  ),
5000
5244
  /* @__PURE__ */ jsx(
@@ -5013,7 +5257,7 @@ var CodeEditor = forwardRef(
5013
5257
  readOnly,
5014
5258
  spellCheck: false,
5015
5259
  placeholder,
5016
- "aria-invalid": invalid || void 0,
5260
+ "aria-invalid": isInvalid || void 0,
5017
5261
  className: "block flex-1 resize-none whitespace-pre overflow-auto bg-transparent px-3 py-2 outline-none placeholder:text-subtle-foreground disabled:cursor-not-allowed"
5018
5262
  }
5019
5263
  )
@@ -5037,6 +5281,29 @@ var linePrefix = (prefix) => ({ value, start, end }) => {
5037
5281
  const next = value.slice(0, lineStart) + updated + value.slice(lineEnd);
5038
5282
  return { value: next, selStart: lineStart + prefix.length, selEnd: lineStart + updated.length };
5039
5283
  };
5284
+ var escapeHtml = (html) => html.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
5285
+ var SAFE_URL = /^(?:https?:|mailto:|tel:|[^a-z0-9.+-]|[a-z0-9.+-]*$)/i;
5286
+ var safeUrl = (href) => SAFE_URL.test(href.trim()) ? href : null;
5287
+ var previewMarked = new Marked({
5288
+ renderer: {
5289
+ html({ text }) {
5290
+ return escapeHtml(text);
5291
+ },
5292
+ link({ href, title, tokens }) {
5293
+ const url = safeUrl(href);
5294
+ const text = this.parser.parseInline(tokens);
5295
+ if (url === null) return text;
5296
+ const titleAttr = title ? ` title="${escapeHtml(title)}"` : "";
5297
+ return `<a href="${escapeHtml(url)}"${titleAttr}>${text}</a>`;
5298
+ },
5299
+ image({ href, title, text }) {
5300
+ const url = safeUrl(href);
5301
+ if (url === null) return escapeHtml(text);
5302
+ const titleAttr = title ? ` title="${escapeHtml(title)}"` : "";
5303
+ return `<img src="${escapeHtml(url)}" alt="${escapeHtml(text)}"${titleAttr}>`;
5304
+ }
5305
+ }
5306
+ });
5040
5307
  var ACTIONS = [
5041
5308
  { key: "h1", label: "Heading 1", icon: /* @__PURE__ */ jsx(Icon, { icon: Heading1, size: 14 }), apply: linePrefix("# ") },
5042
5309
  { key: "h2", label: "Heading 2", icon: /* @__PURE__ */ jsx(Icon, { icon: Heading2, size: 14 }), apply: linePrefix("## ") },
@@ -5058,7 +5325,7 @@ var MarkdownEditor = forwardRef(
5058
5325
  renderPreview,
5059
5326
  disabled,
5060
5327
  readOnly,
5061
- invalid,
5328
+ isInvalid,
5062
5329
  minHeight = "18rem",
5063
5330
  placeholder,
5064
5331
  className,
@@ -5080,7 +5347,7 @@ var MarkdownEditor = forwardRef(
5080
5347
  const previewHtml = useMemo(() => {
5081
5348
  if (renderPreview) return null;
5082
5349
  try {
5083
- return marked.parse(value, { async: false });
5350
+ return previewMarked.parse(value, { async: false });
5084
5351
  } catch {
5085
5352
  return "<p>Failed to render preview.</p>";
5086
5353
  }
@@ -5102,7 +5369,7 @@ var MarkdownEditor = forwardRef(
5102
5369
  };
5103
5370
  const showEdit = view === "split" || view === "edit";
5104
5371
  const showPreview = view === "split" || view === "preview";
5105
- const state = invalid ? "invalid" : "default";
5372
+ const state = isInvalid ? "invalid" : "default";
5106
5373
  return /* @__PURE__ */ jsxs(
5107
5374
  "div",
5108
5375
  {
@@ -5156,7 +5423,7 @@ var MarkdownEditor = forwardRef(
5156
5423
  disabled,
5157
5424
  readOnly,
5158
5425
  spellCheck: false,
5159
- "aria-invalid": invalid || void 0,
5426
+ "aria-invalid": isInvalid || void 0,
5160
5427
  onChange: (e) => setValue(e.target.value),
5161
5428
  className: cn(
5162
5429
  "flex-1 resize-none whitespace-pre-wrap break-words bg-transparent p-3 font-mono text-sm outline-none placeholder:text-subtle-foreground disabled:cursor-not-allowed",
@@ -5185,7 +5452,7 @@ function describeType(v) {
5185
5452
  return typeof v;
5186
5453
  }
5187
5454
  function pathToString(path) {
5188
- return path.map((p) => typeof p === "number" ? `[${p}]` : path.indexOf(p) === 0 ? p : `.${p}`).join("");
5455
+ return path.map((p, i) => typeof p === "number" ? `[${p}]` : i === 0 ? p : `.${p}`).join("");
5189
5456
  }
5190
5457
  function setAtPath(root, path, next) {
5191
5458
  if (path.length === 0) return next;
@@ -5209,9 +5476,9 @@ var JSONEditor = forwardRef(function JSONEditor2({
5209
5476
  mode: modeProp,
5210
5477
  defaultMode = "tree",
5211
5478
  onModeChange,
5212
- disabled,
5213
- readOnly,
5214
- invalid,
5479
+ isDisabled,
5480
+ isReadOnly,
5481
+ isInvalid,
5215
5482
  indent = 2,
5216
5483
  minHeight = "14rem",
5217
5484
  className,
@@ -5234,11 +5501,11 @@ var JSONEditor = forwardRef(function JSONEditor2({
5234
5501
  "div",
5235
5502
  {
5236
5503
  ref,
5237
- "data-state": invalid ? "invalid" : "default",
5504
+ "data-state": isInvalid ? "invalid" : "default",
5238
5505
  className: cn(
5239
5506
  "flex flex-col overflow-hidden rounded-md border border-input bg-card text-card-foreground shadow-sm",
5240
- invalid && "border-destructive",
5241
- disabled && "opacity-60",
5507
+ isInvalid && "border-destructive",
5508
+ isDisabled && "opacity-60",
5242
5509
  className
5243
5510
  ),
5244
5511
  style: { minHeight },
@@ -5259,22 +5526,22 @@ var JSONEditor = forwardRef(function JSONEditor2({
5259
5526
  },
5260
5527
  m
5261
5528
  )) }) }),
5262
- /* @__PURE__ */ jsx("div", { className: "flex-1 overflow-auto", style: { minHeight: 0 }, children: mode === "tree" ? /* @__PURE__ */ jsx(TreeView, { value, updateAt, disabled, readOnly }) : /* @__PURE__ */ jsx(TextView, { value, setValue, disabled, readOnly, indent }) })
5529
+ /* @__PURE__ */ jsx("div", { className: "flex-1 overflow-auto", style: { minHeight: 0 }, children: mode === "tree" ? /* @__PURE__ */ jsx(TreeView, { value, updateAt, isDisabled, isReadOnly }) : /* @__PURE__ */ jsx(TextView, { value, setValue, isDisabled, isReadOnly, indent }) })
5263
5530
  ]
5264
5531
  }
5265
5532
  );
5266
5533
  });
5267
- function TreeView({ value, updateAt, disabled, readOnly }) {
5268
- return /* @__PURE__ */ jsx("ul", { role: "tree", className: "font-mono text-sm", children: /* @__PURE__ */ jsx(TreeNode, { keyName: null, value, path: [], updateAt, disabled, readOnly, depth: 0 }) });
5534
+ function TreeView({ value, updateAt, isDisabled, isReadOnly }) {
5535
+ return /* @__PURE__ */ jsx("ul", { role: "tree", className: "font-mono text-sm", children: /* @__PURE__ */ jsx(TreeNode, { keyName: null, value, path: [], updateAt, isDisabled, isReadOnly, depth: 0 }) });
5269
5536
  }
5270
- function TreeNode({ keyName, value, path, updateAt, disabled, readOnly, depth }) {
5537
+ function TreeNode({ keyName, value, path, updateAt, isDisabled, isReadOnly, depth }) {
5271
5538
  const type = describeType(value);
5272
5539
  const isObject = type === "object" || type === "array";
5273
5540
  const [open, setOpen] = useState(depth < 2);
5274
5541
  const [editing, setEditing] = useState(false);
5275
5542
  const [draft, setDraft] = useState("");
5276
5543
  const startEdit = () => {
5277
- if (disabled || readOnly || isObject) return;
5544
+ if (isDisabled || isReadOnly || isObject) return;
5278
5545
  setEditing(true);
5279
5546
  setDraft(typeof value === "string" ? value : String(value));
5280
5547
  };
@@ -5336,7 +5603,7 @@ function TreeNode({ keyName, value, path, updateAt, disabled, readOnly, depth })
5336
5603
  onClick: startEdit,
5337
5604
  className: cn(
5338
5605
  "cursor-text rounded-sm px-1 text-left transition-colors",
5339
- !disabled && !readOnly && "hover:bg-muted",
5606
+ !isDisabled && !isReadOnly && "hover:bg-muted",
5340
5607
  type === "string" && "text-info",
5341
5608
  type === "number" && "text-warning",
5342
5609
  type === "boolean" && "text-success",
@@ -5363,15 +5630,15 @@ function TreeNode({ keyName, value, path, updateAt, disabled, readOnly, depth })
5363
5630
  value: v,
5364
5631
  path: [...path, k],
5365
5632
  updateAt,
5366
- disabled,
5367
- readOnly,
5633
+ isDisabled,
5634
+ isReadOnly,
5368
5635
  depth: depth + 1
5369
5636
  },
5370
5637
  String(k)
5371
5638
  )) })
5372
5639
  ] });
5373
5640
  }
5374
- function TextView({ value, setValue, disabled, readOnly, indent }) {
5641
+ function TextView({ value, setValue, isDisabled, isReadOnly, indent }) {
5375
5642
  const initial = useMemo(() => safeStringify(value, indent), [value, indent]);
5376
5643
  const [draft, setDraft] = useState(initial);
5377
5644
  const [error, setError] = useState(null);
@@ -5394,8 +5661,8 @@ function TextView({ value, setValue, disabled, readOnly, indent }) {
5394
5661
  "textarea",
5395
5662
  {
5396
5663
  value: draft,
5397
- disabled,
5398
- readOnly,
5664
+ disabled: isDisabled,
5665
+ readOnly: isReadOnly,
5399
5666
  spellCheck: false,
5400
5667
  onChange: (e) => {
5401
5668
  dirty.current = true;
@@ -5453,16 +5720,14 @@ function nextOccurrence(rule, prev) {
5453
5720
  if (!rule.byDay || rule.byDay.length === 0) return addDays(prev, 7 * rule.interval);
5454
5721
  const allowed = new Set(rule.byDay);
5455
5722
  let cursor = addDays(prev, 1);
5456
- let weekJumps = 0;
5457
- const maxIter = 7 * rule.interval + 1;
5458
- for (let i = 0; i < maxIter; i++) {
5459
- const wd = JS_TO_RRULE[cursor.getDay()];
5460
- if (allowed.has(wd)) {
5461
- return cursor;
5462
- }
5723
+ while (cursor.getDay() !== 0) {
5724
+ if (allowed.has(JS_TO_RRULE[cursor.getDay()])) return cursor;
5725
+ cursor = addDays(cursor, 1);
5726
+ }
5727
+ cursor = addDays(cursor, 7 * (rule.interval - 1));
5728
+ for (let i = 0; i < 7; i++) {
5729
+ if (allowed.has(JS_TO_RRULE[cursor.getDay()])) return cursor;
5463
5730
  cursor = addDays(cursor, 1);
5464
- if (cursor.getDay() === 0) weekJumps++;
5465
- if (weekJumps >= rule.interval) ;
5466
5731
  }
5467
5732
  return null;
5468
5733
  }
@@ -5502,8 +5767,8 @@ var RecurrenceEditor = forwardRef(
5502
5767
  onValueChange,
5503
5768
  from = /* @__PURE__ */ new Date(),
5504
5769
  previewCount = 5,
5505
- disabled,
5506
- readOnly,
5770
+ isDisabled,
5771
+ isReadOnly,
5507
5772
  name,
5508
5773
  className,
5509
5774
  ...rest
@@ -5529,7 +5794,7 @@ var RecurrenceEditor = forwardRef(
5529
5794
  ref,
5530
5795
  className: cn(
5531
5796
  "flex flex-col gap-3 rounded-md border border-border bg-card p-4 text-card-foreground shadow-sm",
5532
- disabled && "opacity-60",
5797
+ isDisabled && "opacity-60",
5533
5798
  className
5534
5799
  ),
5535
5800
  ...rest,
@@ -5543,8 +5808,8 @@ var RecurrenceEditor = forwardRef(
5543
5808
  min: 1,
5544
5809
  max: 999,
5545
5810
  value: rule.interval,
5546
- disabled,
5547
- readOnly,
5811
+ disabled: isDisabled,
5812
+ readOnly: isReadOnly,
5548
5813
  onChange: (e) => update({ interval: Math.max(1, Number(e.target.value) || 1) }),
5549
5814
  className: cn(inputBaseVariants({ size: "sm" }), "w-16")
5550
5815
  }
@@ -5554,7 +5819,7 @@ var RecurrenceEditor = forwardRef(
5554
5819
  {
5555
5820
  "aria-label": "Frequency",
5556
5821
  value: rule.freq,
5557
- disabled,
5822
+ disabled: isDisabled,
5558
5823
  onChange: (e) => update({ freq: e.target.value }),
5559
5824
  className: cn(inputBaseVariants({ size: "sm" }), "w-32"),
5560
5825
  children: [
@@ -5576,7 +5841,7 @@ var RecurrenceEditor = forwardRef(
5576
5841
  type: "button",
5577
5842
  role: "checkbox",
5578
5843
  "aria-checked": checked,
5579
- disabled: disabled || readOnly,
5844
+ disabled: isDisabled || isReadOnly,
5580
5845
  onClick: () => {
5581
5846
  const set = new Set(rule.byDay ?? []);
5582
5847
  if (set.has(wd)) set.delete(wd);
@@ -5602,8 +5867,8 @@ var RecurrenceEditor = forwardRef(
5602
5867
  min: 1,
5603
5868
  max: 31,
5604
5869
  value: rule.byMonthDay ?? from.getDate(),
5605
- disabled,
5606
- readOnly,
5870
+ disabled: isDisabled,
5871
+ readOnly: isReadOnly,
5607
5872
  onChange: (e) => update({ byMonthDay: Math.min(31, Math.max(1, Number(e.target.value) || 1)) }),
5608
5873
  className: cn(inputBaseVariants({ size: "sm" }), "w-20")
5609
5874
  }
@@ -5618,7 +5883,7 @@ var RecurrenceEditor = forwardRef(
5618
5883
  type: "radio",
5619
5884
  name: `${name ?? "rule"}-end`,
5620
5885
  checked: endMode === "never",
5621
- disabled: disabled || readOnly,
5886
+ disabled: isDisabled || isReadOnly,
5622
5887
  onChange: () => update({ count: void 0, until: null })
5623
5888
  }
5624
5889
  ),
@@ -5631,7 +5896,7 @@ var RecurrenceEditor = forwardRef(
5631
5896
  type: "radio",
5632
5897
  name: `${name ?? "rule"}-end`,
5633
5898
  checked: endMode === "count",
5634
- disabled: disabled || readOnly,
5899
+ disabled: isDisabled || isReadOnly,
5635
5900
  onChange: () => update({ count: rule.count ?? 10, until: null })
5636
5901
  }
5637
5902
  ),
@@ -5642,7 +5907,7 @@ var RecurrenceEditor = forwardRef(
5642
5907
  type: "number",
5643
5908
  min: 1,
5644
5909
  value: rule.count ?? "",
5645
- disabled: disabled || readOnly || endMode !== "count",
5910
+ disabled: isDisabled || isReadOnly || endMode !== "count",
5646
5911
  onChange: (e) => update({ count: Math.max(1, Number(e.target.value) || 1), until: null }),
5647
5912
  className: cn(inputBaseVariants({ size: "sm" }), "w-20")
5648
5913
  }
@@ -5656,7 +5921,7 @@ var RecurrenceEditor = forwardRef(
5656
5921
  type: "radio",
5657
5922
  name: `${name ?? "rule"}-end`,
5658
5923
  checked: endMode === "until",
5659
- disabled: disabled || readOnly,
5924
+ disabled: isDisabled || isReadOnly,
5660
5925
  onChange: () => update({ until: addMonths(from, 6), count: void 0 })
5661
5926
  }
5662
5927
  ),
@@ -5666,7 +5931,7 @@ var RecurrenceEditor = forwardRef(
5666
5931
  {
5667
5932
  type: "date",
5668
5933
  value: formatISODate(rule.until ?? null),
5669
- disabled: disabled || readOnly || endMode !== "until",
5934
+ disabled: isDisabled || isReadOnly || endMode !== "until",
5670
5935
  onChange: (e) => update({ until: parseISODate(e.target.value), count: void 0 }),
5671
5936
  className: cn(inputBaseVariants({ size: "sm" }), "w-44")
5672
5937
  }
@@ -5705,8 +5970,8 @@ var Knob = forwardRef(function Knob2({
5705
5970
  arcDegrees = 270,
5706
5971
  tone = "brand",
5707
5972
  format = (v) => v.toFixed(2),
5708
- showValue = true,
5709
- disabled,
5973
+ isValueShown = true,
5974
+ isDisabled,
5710
5975
  name,
5711
5976
  className,
5712
5977
  "aria-label": ariaLabel = "Knob",
@@ -5729,12 +5994,12 @@ var Knob = forwardRef(function Knob2({
5729
5994
  [min, max, setValue]
5730
5995
  );
5731
5996
  const handlePointerDown = (e) => {
5732
- if (disabled || e.button !== 0) return;
5997
+ if (isDisabled || e.button !== 0) return;
5733
5998
  dragStateRef.current = { startY: e.clientY, startValue: value };
5734
5999
  e.currentTarget.setPointerCapture(e.pointerId);
5735
6000
  };
5736
6001
  const handlePointerMove = (e) => {
5737
- if (disabled || !dragStateRef.current) return;
6002
+ if (isDisabled || !dragStateRef.current) return;
5738
6003
  const dy = dragStateRef.current.startY - e.clientY;
5739
6004
  const range = max - min;
5740
6005
  const sensitivity = range / 200;
@@ -5745,14 +6010,20 @@ var Knob = forwardRef(function Knob2({
5745
6010
  dragStateRef.current = null;
5746
6011
  e.currentTarget.releasePointerCapture?.(e.pointerId);
5747
6012
  };
5748
- const handleWheel = (e) => {
5749
- if (disabled) return;
5750
- e.preventDefault();
5751
- const delta = e.deltaY < 0 ? step : -step;
5752
- setClamped(value + delta);
5753
- };
6013
+ useEffect(() => {
6014
+ const el = containerRef.current;
6015
+ if (!el) return;
6016
+ const handleWheel = (e) => {
6017
+ if (isDisabled) return;
6018
+ e.preventDefault();
6019
+ const delta = e.deltaY < 0 ? step : -step;
6020
+ setClamped(value + delta);
6021
+ };
6022
+ el.addEventListener("wheel", handleWheel, { passive: false });
6023
+ return () => el.removeEventListener("wheel", handleWheel);
6024
+ }, [isDisabled, step, value, setClamped]);
5754
6025
  const handleKey = (e) => {
5755
- if (disabled) return;
6026
+ if (isDisabled) return;
5756
6027
  const s = e.shiftKey ? largeStep : step;
5757
6028
  switch (e.key) {
5758
6029
  case "ArrowUp":
@@ -5804,19 +6075,18 @@ var Knob = forwardRef(function Knob2({
5804
6075
  "aria-valuemin": min,
5805
6076
  "aria-valuemax": max,
5806
6077
  "aria-orientation": "vertical",
5807
- "aria-disabled": disabled || void 0,
5808
- tabIndex: disabled ? -1 : 0,
6078
+ "aria-disabled": isDisabled || void 0,
6079
+ tabIndex: isDisabled ? -1 : 0,
5809
6080
  onPointerDown: handlePointerDown,
5810
6081
  onPointerMove: handlePointerMove,
5811
6082
  onPointerUp: handlePointerUp,
5812
6083
  onPointerCancel: handlePointerUp,
5813
- onWheel: handleWheel,
5814
6084
  onKeyDown: handleKey,
5815
6085
  style: { width: size, height: size, touchAction: "none" },
5816
6086
  className: cn(
5817
6087
  "relative inline-flex select-none items-center justify-center rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
5818
6088
  TONE_CLASS[tone],
5819
- disabled ? "cursor-not-allowed opacity-50" : "cursor-grab active:cursor-grabbing",
6089
+ isDisabled ? "cursor-not-allowed opacity-50" : "cursor-grab active:cursor-grabbing",
5820
6090
  className
5821
6091
  ),
5822
6092
  ...rest,
@@ -5856,7 +6126,7 @@ var Knob = forwardRef(function Knob2({
5856
6126
  }
5857
6127
  )
5858
6128
  ] }),
5859
- showValue && /* @__PURE__ */ jsx(
6129
+ isValueShown && /* @__PURE__ */ jsx(
5860
6130
  "span",
5861
6131
  {
5862
6132
  "aria-hidden": "true",
@@ -5869,9 +6139,10 @@ var Knob = forwardRef(function Knob2({
5869
6139
  }
5870
6140
  );
5871
6141
  });
6142
+ var IS_MAC = typeof navigator !== "undefined" && navigator.platform?.toLowerCase().includes("mac");
5872
6143
  var MODIFIER_NAMES = {
5873
6144
  Control: "Ctrl",
5874
- Meta: navigator?.platform?.toLowerCase?.().includes("mac") ? "\u2318" : "Meta",
6145
+ Meta: IS_MAC ? "\u2318" : "Meta",
5875
6146
  Alt: "Alt",
5876
6147
  Shift: "Shift"
5877
6148
  };
@@ -6045,7 +6316,7 @@ var IconPicker = forwardRef(
6045
6316
  size = 20,
6046
6317
  iconButtonSize = 36,
6047
6318
  placeholder = "Search icons\u2026",
6048
- disabled,
6319
+ isDisabled,
6049
6320
  name,
6050
6321
  className,
6051
6322
  ...rest
@@ -6078,7 +6349,7 @@ var IconPicker = forwardRef(
6078
6349
  type: "search",
6079
6350
  value: query,
6080
6351
  placeholder,
6081
- disabled,
6352
+ disabled: isDisabled,
6082
6353
  onChange: (e) => setQuery(e.target.value),
6083
6354
  className: cn(inputBaseVariants({ size: "sm" }))
6084
6355
  }
@@ -6099,7 +6370,7 @@ var IconPicker = forwardRef(
6099
6370
  type: "button",
6100
6371
  "aria-pressed": selected,
6101
6372
  "aria-label": key,
6102
- disabled,
6373
+ disabled: isDisabled,
6103
6374
  onClick: () => setValue(key),
6104
6375
  style: { width: iconButtonSize, height: iconButtonSize },
6105
6376
  className: cn(
@@ -6143,7 +6414,7 @@ var FontPicker = forwardRef(
6143
6414
  fonts = BUILT_IN_FONTS,
6144
6415
  placeholder = "Select font\u2026",
6145
6416
  previewText = "The quick brown fox",
6146
- disabled,
6417
+ isDisabled,
6147
6418
  name,
6148
6419
  className,
6149
6420
  ...rest
@@ -6167,7 +6438,7 @@ var FontPicker = forwardRef(
6167
6438
  "button",
6168
6439
  {
6169
6440
  type: "button",
6170
- disabled,
6441
+ disabled: isDisabled,
6171
6442
  "aria-haspopup": "listbox",
6172
6443
  "aria-expanded": open,
6173
6444
  className: cn(
@@ -6179,7 +6450,7 @@ var FontPicker = forwardRef(
6179
6450
  ]
6180
6451
  }
6181
6452
  ) }),
6182
- /* @__PURE__ */ jsxs(PopoverContent, { bare: true, className: "w-[20rem] p-2", children: [
6453
+ /* @__PURE__ */ jsxs(PopoverContent, { isBare: true, className: "w-[20rem] p-2", children: [
6183
6454
  /* @__PURE__ */ jsx(
6184
6455
  "input",
6185
6456
  {
@@ -6322,10 +6593,10 @@ var CronInput = forwardRef(
6322
6593
  defaultValue,
6323
6594
  onValueChange,
6324
6595
  placeholder = "* * * * *",
6325
- invalid,
6596
+ isInvalid,
6326
6597
  size,
6327
6598
  state,
6328
- showPreview = true,
6599
+ hasPreview = true,
6329
6600
  disabled,
6330
6601
  readOnly,
6331
6602
  name,
@@ -6338,7 +6609,7 @@ var CronInput = forwardRef(
6338
6609
  onChange: onValueChange
6339
6610
  });
6340
6611
  const preview = useMemo(() => parseCron(value), [value]);
6341
- const isError = invalid || preview.startsWith("Invalid") || preview.startsWith("Cron");
6612
+ const isError = isInvalid || preview.startsWith("Invalid") || preview.startsWith("Cron");
6342
6613
  const inputState = isError ? "invalid" : state ?? "default";
6343
6614
  return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-1", className), children: [
6344
6615
  /* @__PURE__ */ jsx(
@@ -6357,7 +6628,7 @@ var CronInput = forwardRef(
6357
6628
  className: cn(inputBaseVariants({ size, state: inputState }), "font-mono")
6358
6629
  }
6359
6630
  ),
6360
- showPreview && /* @__PURE__ */ jsx(
6631
+ hasPreview && /* @__PURE__ */ jsx(
6361
6632
  "div",
6362
6633
  {
6363
6634
  "aria-live": "polite",
@@ -6388,7 +6659,7 @@ function gradientToCss(g) {
6388
6659
  return `conic-gradient(from ${g.angle}deg, ${stopsStr})`;
6389
6660
  }
6390
6661
  var GradientPicker = forwardRef(
6391
- function GradientPicker2({ value: valueProp, defaultValue, onValueChange, disabled, name, className, ...rest }, ref) {
6662
+ function GradientPicker2({ value: valueProp, defaultValue, onValueChange, isDisabled, name, className, ...rest }, ref) {
6392
6663
  const [gradient, setGradient] = useControlled({
6393
6664
  controlled: valueProp,
6394
6665
  default: defaultValue ?? DEFAULT_GRADIENT,
@@ -6418,7 +6689,7 @@ var GradientPicker = forwardRef(
6418
6689
  ref,
6419
6690
  className: cn(
6420
6691
  "flex flex-col gap-3 rounded-md border border-border bg-card p-3 text-card-foreground shadow-sm",
6421
- disabled && "opacity-60",
6692
+ isDisabled && "opacity-60",
6422
6693
  className
6423
6694
  ),
6424
6695
  ...rest,
@@ -6430,7 +6701,7 @@ var GradientPicker = forwardRef(
6430
6701
  type: "button",
6431
6702
  role: "radio",
6432
6703
  "aria-checked": gradient.kind === k,
6433
- disabled,
6704
+ disabled: isDisabled,
6434
6705
  onClick: () => update({ kind: k }),
6435
6706
  className: cn(
6436
6707
  "inline-flex h-6 items-center rounded px-2 text-xs font-medium transition-colors",
@@ -6449,7 +6720,7 @@ var GradientPicker = forwardRef(
6449
6720
  min: 0,
6450
6721
  max: 360,
6451
6722
  value: gradient.angle,
6452
- disabled,
6723
+ disabled: isDisabled,
6453
6724
  onChange: (e) => update({ angle: Math.max(0, Math.min(360, Number(e.target.value) || 0)) }),
6454
6725
  className: cn(inputBaseVariants({ size: "sm" }), "w-20")
6455
6726
  }
@@ -6471,7 +6742,7 @@ var GradientPicker = forwardRef(
6471
6742
  {
6472
6743
  type: "color",
6473
6744
  value: stop.color,
6474
- disabled,
6745
+ disabled: isDisabled,
6475
6746
  onChange: (e) => updateStop(i, { color: e.target.value }),
6476
6747
  className: "h-7 w-10 cursor-pointer rounded-sm border border-input bg-background"
6477
6748
  }
@@ -6481,7 +6752,7 @@ var GradientPicker = forwardRef(
6481
6752
  {
6482
6753
  type: "text",
6483
6754
  value: stop.color,
6484
- disabled,
6755
+ disabled: isDisabled,
6485
6756
  onChange: (e) => updateStop(i, { color: e.target.value }),
6486
6757
  className: cn(inputBaseVariants({ size: "sm" }), "flex-1 font-mono")
6487
6758
  }
@@ -6493,7 +6764,7 @@ var GradientPicker = forwardRef(
6493
6764
  min: 0,
6494
6765
  max: 100,
6495
6766
  value: stop.position,
6496
- disabled,
6767
+ disabled: isDisabled,
6497
6768
  onChange: (e) => updateStop(i, { position: Math.max(0, Math.min(100, Number(e.target.value) || 0)) }),
6498
6769
  className: cn(inputBaseVariants({ size: "sm" }), "w-16")
6499
6770
  }
@@ -6504,7 +6775,7 @@ var GradientPicker = forwardRef(
6504
6775
  {
6505
6776
  type: "button",
6506
6777
  "aria-label": "Remove stop",
6507
- disabled: disabled || gradient.stops.length <= 2,
6778
+ disabled: isDisabled || gradient.stops.length <= 2,
6508
6779
  onClick: () => removeStop(i),
6509
6780
  className: "inline-flex h-7 w-7 items-center justify-center rounded text-destructive hover:bg-destructive-soft disabled:pointer-events-none disabled:opacity-40",
6510
6781
  children: /* @__PURE__ */ jsx(Icon, { icon: Trash, size: 12 })
@@ -6515,7 +6786,7 @@ var GradientPicker = forwardRef(
6515
6786
  "button",
6516
6787
  {
6517
6788
  type: "button",
6518
- disabled,
6789
+ disabled: isDisabled,
6519
6790
  onClick: addStop,
6520
6791
  className: "inline-flex h-8 w-full items-center justify-center gap-1 rounded-md border border-dashed border-border text-xs text-muted-foreground hover:bg-muted hover:text-foreground",
6521
6792
  children: [
@@ -6616,7 +6887,7 @@ function configFor(iso) {
6616
6887
  }
6617
6888
  var EMPTY = { country: "US", line1: "", city: "", region: "", postalCode: "" };
6618
6889
  var AddressForm = forwardRef(
6619
- function AddressForm2({ value: valueProp, defaultValue, onValueChange, disabled, readOnly, compact, name, className, ...rest }, ref) {
6890
+ function AddressForm2({ value: valueProp, defaultValue, onValueChange, isDisabled, isReadOnly, isCompact, name, className, ...rest }, ref) {
6620
6891
  const [address, setAddress] = useControlled({
6621
6892
  controlled: valueProp,
6622
6893
  default: defaultValue ?? EMPTY,
@@ -6640,7 +6911,7 @@ var AddressForm = forwardRef(
6640
6911
  {
6641
6912
  id: ids.country,
6642
6913
  value: address.country,
6643
- disabled: disabled || readOnly,
6914
+ disabled: isDisabled || isReadOnly,
6644
6915
  onChange: (e) => update({ country: e.target.value, region: "" }),
6645
6916
  className: cn(inputBaseVariants({ size: "md" })),
6646
6917
  children: [
@@ -6659,8 +6930,8 @@ var AddressForm = forwardRef(
6659
6930
  type: "text",
6660
6931
  autoComplete: "address-line1",
6661
6932
  value: address.line1,
6662
- disabled,
6663
- readOnly,
6933
+ disabled: isDisabled,
6934
+ readOnly: isReadOnly,
6664
6935
  onChange: (e) => update({ line1: e.target.value }),
6665
6936
  className: cn(inputBaseVariants({ size: "md" }))
6666
6937
  }
@@ -6678,14 +6949,14 @@ var AddressForm = forwardRef(
6678
6949
  type: "text",
6679
6950
  autoComplete: "address-line2",
6680
6951
  value: address.line2 ?? "",
6681
- disabled,
6682
- readOnly,
6952
+ disabled: isDisabled,
6953
+ readOnly: isReadOnly,
6683
6954
  onChange: (e) => update({ line2: e.target.value }),
6684
6955
  className: cn(inputBaseVariants({ size: "md" }))
6685
6956
  }
6686
6957
  )
6687
6958
  ] }),
6688
- /* @__PURE__ */ jsxs("div", { className: cn("grid gap-3", compact ? "grid-cols-1" : "grid-cols-3"), children: [
6959
+ /* @__PURE__ */ jsxs("div", { className: cn("grid gap-3", isCompact ? "grid-cols-1" : "grid-cols-3"), children: [
6689
6960
  /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1", children: [
6690
6961
  /* @__PURE__ */ jsx("label", { htmlFor: ids.city, className: "text-xs font-medium text-foreground", children: "City" }),
6691
6962
  /* @__PURE__ */ jsx(
@@ -6695,8 +6966,8 @@ var AddressForm = forwardRef(
6695
6966
  type: "text",
6696
6967
  autoComplete: "address-level2",
6697
6968
  value: address.city,
6698
- disabled,
6699
- readOnly,
6969
+ disabled: isDisabled,
6970
+ readOnly: isReadOnly,
6700
6971
  onChange: (e) => update({ city: e.target.value }),
6701
6972
  className: cn(inputBaseVariants({ size: "md" }))
6702
6973
  }
@@ -6709,7 +6980,7 @@ var AddressForm = forwardRef(
6709
6980
  {
6710
6981
  id: ids.region,
6711
6982
  value: address.region,
6712
- disabled: disabled || readOnly,
6983
+ disabled: isDisabled || isReadOnly,
6713
6984
  onChange: (e) => update({ region: e.target.value }),
6714
6985
  className: cn(inputBaseVariants({ size: "md" })),
6715
6986
  children: [
@@ -6724,8 +6995,8 @@ var AddressForm = forwardRef(
6724
6995
  type: "text",
6725
6996
  autoComplete: "address-level1",
6726
6997
  value: address.region,
6727
- disabled,
6728
- readOnly,
6998
+ disabled: isDisabled,
6999
+ readOnly: isReadOnly,
6729
7000
  onChange: (e) => update({ region: e.target.value }),
6730
7001
  className: cn(inputBaseVariants({ size: "md" }))
6731
7002
  }
@@ -6740,8 +7011,8 @@ var AddressForm = forwardRef(
6740
7011
  type: "text",
6741
7012
  autoComplete: "postal-code",
6742
7013
  value: address.postalCode,
6743
- disabled,
6744
- readOnly,
7014
+ disabled: isDisabled,
7015
+ readOnly: isReadOnly,
6745
7016
  onChange: (e) => update({ postalCode: e.target.value }),
6746
7017
  className: cn(inputBaseVariants({ size: "md" }))
6747
7018
  }
@@ -6829,9 +7100,9 @@ var PhoneInput = forwardRef(
6829
7100
  defaultValue,
6830
7101
  onValueChange,
6831
7102
  defaultCountry = "US",
6832
- disabled,
6833
- readOnly,
6834
- invalid,
7103
+ isDisabled,
7104
+ isReadOnly,
7105
+ isInvalid,
6835
7106
  placeholder = "(555) 555-5555",
6836
7107
  name,
6837
7108
  className,
@@ -6842,10 +7113,18 @@ var PhoneInput = forwardRef(
6842
7113
  default: defaultValue ?? "",
6843
7114
  onChange: onValueChange
6844
7115
  });
6845
- const { iso, national } = useMemo(() => splitE164(value, defaultCountry), [value, defaultCountry]);
7116
+ const [selectedIso, setSelectedIso] = useState(defaultCountry);
7117
+ const { iso, national } = useMemo(() => {
7118
+ const selected = PHONE_COUNTRIES.find((c) => c.iso === selectedIso);
7119
+ if (selected && (!value || value.startsWith(selected.dial))) {
7120
+ return { iso: selected.iso, national: value.slice(selected.dial.length).replace(/\D/g, "") };
7121
+ }
7122
+ return splitE164(value, defaultCountry);
7123
+ }, [value, selectedIso, defaultCountry]);
6846
7124
  const country = PHONE_COUNTRIES.find((c) => c.iso === iso) ?? PHONE_COUNTRIES[0];
6847
7125
  const setCountry = (nextIso) => {
6848
7126
  const next = PHONE_COUNTRIES.find((c) => c.iso === nextIso) ?? country;
7127
+ setSelectedIso(next.iso);
6849
7128
  setValue(`${next.dial}${national}`);
6850
7129
  };
6851
7130
  const setNational = (raw) => {
@@ -6858,8 +7137,8 @@ var PhoneInput = forwardRef(
6858
7137
  ref,
6859
7138
  className: cn(
6860
7139
  "inline-flex items-stretch overflow-hidden rounded-md border bg-background",
6861
- invalid ? "border-destructive" : "border-input",
6862
- disabled && "opacity-60",
7140
+ isInvalid ? "border-destructive" : "border-input",
7141
+ isDisabled && "opacity-60",
6863
7142
  className
6864
7143
  ),
6865
7144
  ...rest,
@@ -6869,7 +7148,7 @@ var PhoneInput = forwardRef(
6869
7148
  {
6870
7149
  "aria-label": "Country",
6871
7150
  value: iso,
6872
- disabled: disabled || readOnly,
7151
+ disabled: isDisabled || isReadOnly,
6873
7152
  onChange: (e) => setCountry(e.target.value),
6874
7153
  className: cn(
6875
7154
  "h-10 cursor-pointer border-r border-input bg-card pl-2 pr-1 text-sm outline-none focus-visible:ring-2 focus-visible:ring-ring"
@@ -6890,9 +7169,9 @@ var PhoneInput = forwardRef(
6890
7169
  autoComplete: "tel-national",
6891
7170
  value: national,
6892
7171
  placeholder,
6893
- disabled,
6894
- readOnly,
6895
- "aria-invalid": invalid || void 0,
7172
+ disabled: isDisabled,
7173
+ readOnly: isReadOnly,
7174
+ "aria-invalid": isInvalid || void 0,
6896
7175
  onChange: (e) => setNational(e.target.value),
6897
7176
  className: cn(
6898
7177
  inputBaseVariants({ size: "md" }),
@@ -7190,7 +7469,7 @@ var EmojiPicker = forwardRef(
7190
7469
  columns = 8,
7191
7470
  cellSize = 28,
7192
7471
  categories = EMOJI,
7193
- disabled,
7472
+ isDisabled,
7194
7473
  className,
7195
7474
  ...rest
7196
7475
  }, ref) {
@@ -7227,7 +7506,7 @@ var EmojiPicker = forwardRef(
7227
7506
  },
7228
7507
  className: cn(
7229
7508
  "flex flex-col rounded-md border border-border bg-card text-card-foreground shadow-sm",
7230
- disabled && "opacity-60",
7509
+ isDisabled && "opacity-60",
7231
7510
  className
7232
7511
  ),
7233
7512
  style: { width: columns * cellSize + 24 },
@@ -7239,7 +7518,7 @@ var EmojiPicker = forwardRef(
7239
7518
  type: "search",
7240
7519
  value: query,
7241
7520
  placeholder,
7242
- disabled,
7521
+ disabled: isDisabled,
7243
7522
  onChange: (e) => setQuery(e.target.value),
7244
7523
  className: cn(inputBaseVariants({ size: "sm" }))
7245
7524
  }
@@ -7267,9 +7546,9 @@ var EmojiPicker = forwardRef(
7267
7546
  "aria-label": "Emoji",
7268
7547
  className: "overflow-y-auto p-2",
7269
7548
  style: { maxHeight: 280 },
7270
- children: matches ? matches.length === 0 ? /* @__PURE__ */ jsx("div", { className: "px-2 py-6 text-center text-xs text-muted-foreground", children: "No emoji match." }) : /* @__PURE__ */ jsx("div", { className: "grid", style: { gridTemplateColumns: `repeat(${columns}, ${cellSize}px)` }, children: matches.map((e) => /* @__PURE__ */ jsx(EmojiCell, { entry: e, cellSize, disabled, onSelect }, e.emoji)) }) : categories.map((cat) => /* @__PURE__ */ jsxs("div", { "data-cat": cat.id, id: `emoji-cat-${cat.id}`, className: "mb-3", children: [
7549
+ children: matches ? matches.length === 0 ? /* @__PURE__ */ jsx("div", { className: "px-2 py-6 text-center text-xs text-muted-foreground", children: "No emoji match." }) : /* @__PURE__ */ jsx("div", { className: "grid", style: { gridTemplateColumns: `repeat(${columns}, ${cellSize}px)` }, children: matches.map((e) => /* @__PURE__ */ jsx(EmojiCell, { entry: e, cellSize, isDisabled, onSelect }, e.emoji)) }) : categories.map((cat) => /* @__PURE__ */ jsxs("div", { "data-cat": cat.id, id: `emoji-cat-${cat.id}`, className: "mb-3", children: [
7271
7550
  /* @__PURE__ */ jsx("div", { className: "mb-1 px-1 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground", children: cat.label }),
7272
- /* @__PURE__ */ jsx("div", { className: "grid", style: { gridTemplateColumns: `repeat(${columns}, ${cellSize}px)` }, children: cat.emojis.map((e) => /* @__PURE__ */ jsx(EmojiCell, { entry: e, cellSize, disabled, onSelect }, e.emoji)) })
7551
+ /* @__PURE__ */ jsx("div", { className: "grid", style: { gridTemplateColumns: `repeat(${columns}, ${cellSize}px)` }, children: cat.emojis.map((e) => /* @__PURE__ */ jsx(EmojiCell, { entry: e, cellSize, isDisabled, onSelect }, e.emoji)) })
7273
7552
  ] }, cat.id))
7274
7553
  }
7275
7554
  )
@@ -7278,13 +7557,13 @@ var EmojiPicker = forwardRef(
7278
7557
  );
7279
7558
  }
7280
7559
  );
7281
- function EmojiCell({ entry, cellSize, disabled, onSelect }) {
7560
+ function EmojiCell({ entry, cellSize, isDisabled, onSelect }) {
7282
7561
  return /* @__PURE__ */ jsx("div", { role: "gridcell", children: /* @__PURE__ */ jsx(
7283
7562
  "button",
7284
7563
  {
7285
7564
  type: "button",
7286
7565
  "aria-label": entry.name,
7287
- disabled,
7566
+ disabled: isDisabled,
7288
7567
  onClick: () => onSelect(entry.emoji),
7289
7568
  style: { width: cellSize, height: cellSize },
7290
7569
  className: "inline-flex items-center justify-center rounded-md text-lg transition-colors hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
@@ -7304,7 +7583,7 @@ var ReactionPicker = forwardRef(
7304
7583
  selected,
7305
7584
  onSelect,
7306
7585
  onMore,
7307
- hideMore,
7586
+ isMoreHidden,
7308
7587
  size = "md",
7309
7588
  className,
7310
7589
  ...props
@@ -7341,7 +7620,7 @@ var ReactionPicker = forwardRef(
7341
7620
  emoji
7342
7621
  );
7343
7622
  }),
7344
- !hideMore && onMore && /* @__PURE__ */ jsx(
7623
+ !isMoreHidden && onMore && /* @__PURE__ */ jsx(
7345
7624
  "button",
7346
7625
  {
7347
7626
  type: "button",
@@ -7367,11 +7646,11 @@ var ChatComposer = forwardRef(
7367
7646
  onValueChange,
7368
7647
  onSubmit,
7369
7648
  placeholder = "Write a message\u2026",
7370
- disabled,
7649
+ isDisabled,
7371
7650
  leading,
7372
7651
  trailing,
7373
7652
  sendButton,
7374
- hideSendButton,
7653
+ isSendButtonHidden,
7375
7654
  submitOn = "enter",
7376
7655
  maxHeight = 200,
7377
7656
  textareaProps,
@@ -7399,7 +7678,7 @@ var ChatComposer = forwardRef(
7399
7678
  const handleSubmit = (e) => {
7400
7679
  e?.preventDefault();
7401
7680
  const trimmed = value.trim();
7402
- if (!trimmed || disabled) return;
7681
+ if (!trimmed || isDisabled) return;
7403
7682
  onSubmit?.(trimmed);
7404
7683
  if (valueProp === void 0) setValue("");
7405
7684
  };
@@ -7422,7 +7701,7 @@ var ChatComposer = forwardRef(
7422
7701
  className: cn(
7423
7702
  "flex w-full items-end gap-2 rounded-2xl border border-input bg-background px-3 py-2",
7424
7703
  "focus-within:ring-2 focus-within:ring-ring",
7425
- disabled && "cursor-not-allowed opacity-60",
7704
+ isDisabled && "cursor-not-allowed opacity-60",
7426
7705
  className
7427
7706
  ),
7428
7707
  ...props,
@@ -7438,7 +7717,7 @@ var ChatComposer = forwardRef(
7438
7717
  onKeyDown: handleKeyDown,
7439
7718
  rows: 1,
7440
7719
  placeholder,
7441
- disabled,
7720
+ disabled: isDisabled,
7442
7721
  className: cn(
7443
7722
  "flex-1 resize-none bg-transparent py-1 text-sm leading-relaxed text-foreground placeholder:text-muted-foreground focus:outline-none",
7444
7723
  textareaProps?.className
@@ -7446,11 +7725,11 @@ var ChatComposer = forwardRef(
7446
7725
  }
7447
7726
  ),
7448
7727
  trailing && /* @__PURE__ */ jsx("div", { className: "flex shrink-0 items-center gap-1 self-end pb-1", children: trailing }),
7449
- !hideSendButton && (sendButton ?? /* @__PURE__ */ jsx(
7728
+ !isSendButtonHidden && (sendButton ?? /* @__PURE__ */ jsx(
7450
7729
  "button",
7451
7730
  {
7452
7731
  type: "submit",
7453
- disabled: disabled || isEmpty,
7732
+ disabled: isDisabled || isEmpty,
7454
7733
  "aria-label": "Send message",
7455
7734
  className: cn(
7456
7735
  "inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full self-end",
@@ -7469,5 +7748,5 @@ var ChatComposer = forwardRef(
7469
7748
  ChatComposer.displayName = "ChatComposer";
7470
7749
 
7471
7750
  export { ADDRESS_COUNTRIES, AddressForm, BUILT_IN_EMOJI, BUILT_IN_FONTS, Calendar, CharacterCount, ChatComposer, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, CodeEditor, ColorArea, ColorField, ColorPicker, ColorSlider, ColorSwatch, ColorSwatchPicker, ColorWheel, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CronInput, CurrencyInput, DateField, DatePicker, DateRangePicker, Editable, EditableCancel, EditableInput, EditablePreview, EditableSubmit, EmailInput, EmojiPicker, Fieldset, FilePicker, FileUpload, FontPicker, FormErrorMessage, FormField, FormHelperText, GradientPicker, IconPicker, InputAddon, InputGroup, JSONEditor, KeyboardShortcutPicker, Knob, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MarkdownEditor, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PHONE_COUNTRIES, PasswordInput, PasswordStrength, PercentInput, PhoneInput, PinInput, Radio, RadioField, RadioGroup, RangeCalendar, ReactionPicker, RecurrenceEditor, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Stepper, StepperList, StepperPanel, StepperStep, Switch, SwitchField, TagsInput, TelInput, TextInput, Textarea, TimeField, TimePicker, UrlInput, Wizard, WizardFooter, WizardStep, WizardSteps, colorSwatchVariants, gradientToCss, useWizard };
7472
- //# sourceMappingURL=chunk-BKWLS6V2.js.map
7473
- //# sourceMappingURL=chunk-BKWLS6V2.js.map
7751
+ //# sourceMappingURL=chunk-HG7NX6GP.js.map
7752
+ //# sourceMappingURL=chunk-HG7NX6GP.js.map