@gunkin/uiify 0.0.25-alpha → 0.0.26-alpha

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 (336) hide show
  1. package/agents/reference/components/accordion.md +4 -4
  2. package/agents/reference/components/alert-modal.md +10 -10
  3. package/agents/reference/components/alert.md +1 -1
  4. package/agents/reference/components/aspect-ratio.md +1 -1
  5. package/agents/reference/components/avatar.md +2 -2
  6. package/agents/reference/components/breadcrumb.md +9 -10
  7. package/agents/reference/components/candle-chart.md +35 -35
  8. package/agents/reference/components/carousel.md +10 -14
  9. package/agents/reference/components/collapsible.md +3 -3
  10. package/agents/reference/components/color-picker.md +6 -6
  11. package/agents/reference/components/combobox.md +7 -17
  12. package/agents/reference/components/context-menu.md +5 -26
  13. package/agents/reference/components/date-picker.md +2 -1
  14. package/agents/reference/components/drawer.md +17 -31
  15. package/agents/reference/components/dropdown-menu.md +2 -3
  16. package/agents/reference/components/field.md +11 -11
  17. package/agents/reference/components/form-error-summary.md +4 -4
  18. package/agents/reference/components/input-group.md +1 -0
  19. package/agents/reference/components/input.md +1 -0
  20. package/agents/reference/components/line-chart.md +29 -29
  21. package/agents/reference/components/modal.md +13 -15
  22. package/agents/reference/components/number-field.md +1 -1
  23. package/agents/reference/components/otp-input.md +2 -1
  24. package/agents/reference/components/pagination.md +7 -8
  25. package/agents/reference/components/rating.md +1 -1
  26. package/agents/reference/components/segmented-control.md +1 -0
  27. package/agents/reference/components/select.md +1 -0
  28. package/agents/reference/components/slider.md +4 -4
  29. package/agents/reference/components/spinner.md +1 -1
  30. package/agents/reference/components/table.md +1 -1
  31. package/agents/reference/components/tabs.md +6 -6
  32. package/agents/reference/components/tags-input.md +5 -12
  33. package/agents/reference/components/toast.md +8 -15
  34. package/agents/reference/components/toggle.md +4 -3
  35. package/agents/reference/components/virtual-scroll.md +4 -5
  36. package/agents/reference/elements/choice.md +3 -3
  37. package/agents/reference/elements/details.md +2 -2
  38. package/agents/reference/elements/popover.md +3 -3
  39. package/dist/components/accordion/Accordion.d.ts.map +1 -1
  40. package/dist/components/accordion/Accordion.js +20 -46
  41. package/dist/components/accordion/Accordion.js.map +1 -1
  42. package/dist/components/accordion/types.d.ts +6 -15
  43. package/dist/components/accordion/types.d.ts.map +1 -1
  44. package/dist/components/alert/Alert.d.ts.map +1 -1
  45. package/dist/components/alert/Alert.js +5 -14
  46. package/dist/components/alert/Alert.js.map +1 -1
  47. package/dist/components/alert/types.d.ts +3 -7
  48. package/dist/components/alert/types.d.ts.map +1 -1
  49. package/dist/components/alert-modal/AlertModal.d.ts.map +1 -1
  50. package/dist/components/alert-modal/AlertModal.js +28 -137
  51. package/dist/components/alert-modal/AlertModal.js.map +1 -1
  52. package/dist/components/alert-modal/AlertModalParts.d.ts.map +1 -1
  53. package/dist/components/alert-modal/AlertModalParts.js +4 -37
  54. package/dist/components/alert-modal/AlertModalParts.js.map +1 -1
  55. package/dist/components/alert-modal/types.d.ts +15 -33
  56. package/dist/components/alert-modal/types.d.ts.map +1 -1
  57. package/dist/components/aspect-ratio/AspectRatio.d.ts.map +1 -1
  58. package/dist/components/aspect-ratio/AspectRatio.js +4 -12
  59. package/dist/components/aspect-ratio/AspectRatio.js.map +1 -1
  60. package/dist/components/aspect-ratio/types.d.ts +3 -6
  61. package/dist/components/aspect-ratio/types.d.ts.map +1 -1
  62. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  63. package/dist/components/avatar/Avatar.js +4 -21
  64. package/dist/components/avatar/Avatar.js.map +1 -1
  65. package/dist/components/avatar/types.d.ts +4 -14
  66. package/dist/components/avatar/types.d.ts.map +1 -1
  67. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -1
  68. package/dist/components/breadcrumb/Breadcrumb.js +43 -123
  69. package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
  70. package/dist/components/breadcrumb/types.d.ts +12 -35
  71. package/dist/components/breadcrumb/types.d.ts.map +1 -1
  72. package/dist/components/candle-chart/CandleChart.d.ts.map +1 -1
  73. package/dist/components/candle-chart/CandleChart.js +122 -186
  74. package/dist/components/candle-chart/CandleChart.js.map +1 -1
  75. package/dist/components/candle-chart/client/CandleChartClient.d.ts.map +1 -1
  76. package/dist/components/candle-chart/client/CandleChartClient.js +8 -15
  77. package/dist/components/candle-chart/client/CandleChartClient.js.map +1 -1
  78. package/dist/components/candle-chart/types.d.ts +42 -116
  79. package/dist/components/candle-chart/types.d.ts.map +1 -1
  80. package/dist/components/carousel/CarouselMarkup.d.ts.map +1 -1
  81. package/dist/components/carousel/CarouselMarkup.js +55 -142
  82. package/dist/components/carousel/CarouselMarkup.js.map +1 -1
  83. package/dist/components/carousel/types.d.ts +13 -80
  84. package/dist/components/carousel/types.d.ts.map +1 -1
  85. package/dist/components/collapsible/Collapsible.d.ts +1 -5
  86. package/dist/components/collapsible/Collapsible.d.ts.map +1 -1
  87. package/dist/components/collapsible/Collapsible.js +3 -33
  88. package/dist/components/collapsible/Collapsible.js.map +1 -1
  89. package/dist/components/collapsible/types.d.ts +4 -18
  90. package/dist/components/collapsible/types.d.ts.map +1 -1
  91. package/dist/components/color-picker/ColorPicker.d.ts.map +1 -1
  92. package/dist/components/color-picker/ColorPicker.js +28 -123
  93. package/dist/components/color-picker/ColorPicker.js.map +1 -1
  94. package/dist/components/color-picker/types.d.ts +11 -30
  95. package/dist/components/color-picker/types.d.ts.map +1 -1
  96. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  97. package/dist/components/combobox/Combobox.js +30 -23
  98. package/dist/components/combobox/Combobox.js.map +1 -1
  99. package/dist/components/combobox/types.d.ts +9 -29
  100. package/dist/components/combobox/types.d.ts.map +1 -1
  101. package/dist/components/context-menu/ContextMenu.d.ts.map +1 -1
  102. package/dist/components/context-menu/ContextMenu.js +30 -53
  103. package/dist/components/context-menu/ContextMenu.js.map +1 -1
  104. package/dist/components/context-menu/types.d.ts +6 -31
  105. package/dist/components/context-menu/types.d.ts.map +1 -1
  106. package/dist/components/date-picker/DatePicker.d.ts +1 -1
  107. package/dist/components/date-picker/DatePicker.d.ts.map +1 -1
  108. package/dist/components/date-picker/DatePicker.js +2 -1
  109. package/dist/components/date-picker/DatePicker.js.map +1 -1
  110. package/dist/components/date-picker/types.d.ts +4 -1
  111. package/dist/components/date-picker/types.d.ts.map +1 -1
  112. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  113. package/dist/components/drawer/Drawer.js +12 -12
  114. package/dist/components/drawer/Drawer.js.map +1 -1
  115. package/dist/components/drawer/DrawerNative.d.ts.map +1 -1
  116. package/dist/components/drawer/DrawerNative.js +47 -252
  117. package/dist/components/drawer/DrawerNative.js.map +1 -1
  118. package/dist/components/drawer/types.d.ts +25 -30
  119. package/dist/components/drawer/types.d.ts.map +1 -1
  120. package/dist/components/dropdown-menu/DropdownMenu.d.ts.map +1 -1
  121. package/dist/components/dropdown-menu/DropdownMenu.js +30 -27
  122. package/dist/components/dropdown-menu/DropdownMenu.js.map +1 -1
  123. package/dist/components/dropdown-menu/DropdownMenuBar.d.ts.map +1 -1
  124. package/dist/components/dropdown-menu/DropdownMenuBar.js +3 -7
  125. package/dist/components/dropdown-menu/DropdownMenuBar.js.map +1 -1
  126. package/dist/components/dropdown-menu/types.d.ts +2 -5
  127. package/dist/components/dropdown-menu/types.d.ts.map +1 -1
  128. package/dist/components/field/Field.js +7 -7
  129. package/dist/components/field/Field.js.map +1 -1
  130. package/dist/components/field/types.d.ts +11 -11
  131. package/dist/components/field/types.d.ts.map +1 -1
  132. package/dist/components/form-error-summary/FormErrorSummary.d.ts.map +1 -1
  133. package/dist/components/form-error-summary/FormErrorSummary.js +20 -34
  134. package/dist/components/form-error-summary/FormErrorSummary.js.map +1 -1
  135. package/dist/components/form-error-summary/types.d.ts +6 -16
  136. package/dist/components/form-error-summary/types.d.ts.map +1 -1
  137. package/dist/components/hover-card/HoverCard.d.ts.map +1 -1
  138. package/dist/components/hover-card/HoverCard.js +9 -9
  139. package/dist/components/hover-card/HoverCard.js.map +1 -1
  140. package/dist/components/input/Input.d.ts.map +1 -1
  141. package/dist/components/input/Input.js +2 -0
  142. package/dist/components/input/Input.js.map +1 -1
  143. package/dist/components/input/types.d.ts +3 -0
  144. package/dist/components/input/types.d.ts.map +1 -1
  145. package/dist/components/input-group/InputGroup.d.ts.map +1 -1
  146. package/dist/components/input-group/InputGroup.js +2 -1
  147. package/dist/components/input-group/InputGroup.js.map +1 -1
  148. package/dist/components/input-group/types.d.ts +3 -0
  149. package/dist/components/input-group/types.d.ts.map +1 -1
  150. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.d.ts +2 -2
  151. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.d.ts.map +1 -1
  152. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.js +11 -3
  153. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.js.map +1 -1
  154. package/dist/components/internal/choice-family/ChoiceGroup.d.ts.map +1 -1
  155. package/dist/components/internal/choice-family/ChoiceGroup.js +14 -51
  156. package/dist/components/internal/choice-family/ChoiceGroup.js.map +1 -1
  157. package/dist/components/internal/choice-family/types.d.ts +8 -40
  158. package/dist/components/internal/choice-family/types.d.ts.map +1 -1
  159. package/dist/components/internal/control-size/types.d.ts +3 -0
  160. package/dist/components/internal/control-size/types.d.ts.map +1 -0
  161. package/dist/components/internal/control-size/types.js +1 -0
  162. package/dist/components/internal/control-size/types.js.map +1 -0
  163. package/dist/components/internal/live-chart/types.d.ts +3 -1
  164. package/dist/components/internal/live-chart/types.d.ts.map +1 -1
  165. package/dist/components/internal/live-chart/use-live-chart-window.d.ts.map +1 -1
  166. package/dist/components/internal/live-chart/use-live-chart-window.js +21 -5
  167. package/dist/components/internal/live-chart/use-live-chart-window.js.map +1 -1
  168. package/dist/components/internal/menu/menu-parts.d.ts.map +1 -1
  169. package/dist/components/internal/menu/menu-parts.js +3 -3
  170. package/dist/components/internal/menu/menu-parts.js.map +1 -1
  171. package/dist/components/internal/native-check-control/NativeCheckControl.d.ts.map +1 -1
  172. package/dist/components/internal/native-check-control/NativeCheckControl.js +8 -32
  173. package/dist/components/internal/native-check-control/NativeCheckControl.js.map +1 -1
  174. package/dist/components/internal/native-check-control/types.d.ts +4 -18
  175. package/dist/components/internal/native-check-control/types.d.ts.map +1 -1
  176. package/dist/components/line-chart/LineChart.d.ts.map +1 -1
  177. package/dist/components/line-chart/LineChart.js +134 -208
  178. package/dist/components/line-chart/LineChart.js.map +1 -1
  179. package/dist/components/line-chart/client/LineChartClient.d.ts.map +1 -1
  180. package/dist/components/line-chart/client/LineChartClient.js +8 -15
  181. package/dist/components/line-chart/client/LineChartClient.js.map +1 -1
  182. package/dist/components/line-chart/types.d.ts +36 -103
  183. package/dist/components/line-chart/types.d.ts.map +1 -1
  184. package/dist/components/modal/Modal.d.ts.map +1 -1
  185. package/dist/components/modal/Modal.js +34 -115
  186. package/dist/components/modal/Modal.js.map +1 -1
  187. package/dist/components/modal/ModalAnatomy.js +6 -6
  188. package/dist/components/modal/ModalAnatomy.js.map +1 -1
  189. package/dist/components/modal/ModalParts.js +1 -1
  190. package/dist/components/modal/ModalParts.js.map +1 -1
  191. package/dist/components/modal/client/ModalClientContent.d.ts.map +1 -1
  192. package/dist/components/modal/client/ModalClientContent.js +2 -2
  193. package/dist/components/modal/client/ModalClientContent.js.map +1 -1
  194. package/dist/components/modal/types.d.ts +19 -19
  195. package/dist/components/modal/types.d.ts.map +1 -1
  196. package/dist/components/number-field/NumberField.d.ts.map +1 -1
  197. package/dist/components/number-field/NumberField.js +13 -11
  198. package/dist/components/number-field/NumberField.js.map +1 -1
  199. package/dist/components/number-field/types.d.ts +1 -1
  200. package/dist/components/number-field/types.d.ts.map +1 -1
  201. package/dist/components/otp-input/OtpInput.d.ts.map +1 -1
  202. package/dist/components/otp-input/OtpInput.js +9 -9
  203. package/dist/components/otp-input/OtpInput.js.map +1 -1
  204. package/dist/components/otp-input/types.d.ts +4 -1
  205. package/dist/components/otp-input/types.d.ts.map +1 -1
  206. package/dist/components/pagination/Pagination.d.ts.map +1 -1
  207. package/dist/components/pagination/Pagination.js +26 -69
  208. package/dist/components/pagination/Pagination.js.map +1 -1
  209. package/dist/components/pagination/PaginationShell.d.ts.map +1 -1
  210. package/dist/components/pagination/PaginationShell.js +5 -6
  211. package/dist/components/pagination/PaginationShell.js.map +1 -1
  212. package/dist/components/pagination/types.d.ts +9 -32
  213. package/dist/components/pagination/types.d.ts.map +1 -1
  214. package/dist/components/rating/types.d.ts +1 -5
  215. package/dist/components/rating/types.d.ts.map +1 -1
  216. package/dist/components/segmented-control/SegmentedControl.d.ts +1 -1
  217. package/dist/components/segmented-control/SegmentedControl.d.ts.map +1 -1
  218. package/dist/components/segmented-control/SegmentedControl.js +4 -2
  219. package/dist/components/segmented-control/SegmentedControl.js.map +1 -1
  220. package/dist/components/segmented-control/client/SegmentedControlClient.d.ts +1 -1
  221. package/dist/components/segmented-control/client/SegmentedControlClient.d.ts.map +1 -1
  222. package/dist/components/segmented-control/client/SegmentedControlClient.js +4 -2
  223. package/dist/components/segmented-control/client/SegmentedControlClient.js.map +1 -1
  224. package/dist/components/segmented-control/types.d.ts +3 -0
  225. package/dist/components/segmented-control/types.d.ts.map +1 -1
  226. package/dist/components/select/Select.d.ts.map +1 -1
  227. package/dist/components/select/Select.js +2 -0
  228. package/dist/components/select/Select.js.map +1 -1
  229. package/dist/components/select/types.d.ts +3 -0
  230. package/dist/components/select/types.d.ts.map +1 -1
  231. package/dist/components/slider/Slider.d.ts.map +1 -1
  232. package/dist/components/slider/Slider.js +12 -7
  233. package/dist/components/slider/Slider.js.map +1 -1
  234. package/dist/components/slider/client/SliderClient.d.ts.map +1 -1
  235. package/dist/components/slider/client/SliderClient.js +53 -100
  236. package/dist/components/slider/client/SliderClient.js.map +1 -1
  237. package/dist/components/slider/types.d.ts +8 -38
  238. package/dist/components/slider/types.d.ts.map +1 -1
  239. package/dist/components/spinner/Spinner.d.ts.map +1 -1
  240. package/dist/components/spinner/Spinner.js +2 -10
  241. package/dist/components/spinner/Spinner.js.map +1 -1
  242. package/dist/components/spinner/types.d.ts +3 -6
  243. package/dist/components/spinner/types.d.ts.map +1 -1
  244. package/dist/components/table/client/TableColumnHeader.d.ts.map +1 -1
  245. package/dist/components/table/client/TableColumnHeader.js +1 -15
  246. package/dist/components/table/client/TableColumnHeader.js.map +1 -1
  247. package/dist/components/table/types.d.ts +2 -6
  248. package/dist/components/table/types.d.ts.map +1 -1
  249. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  250. package/dist/components/tabs/Tabs.js +9 -43
  251. package/dist/components/tabs/Tabs.js.map +1 -1
  252. package/dist/components/tabs/types.d.ts +8 -21
  253. package/dist/components/tabs/types.d.ts.map +1 -1
  254. package/dist/components/tags-input/TagsInput.d.ts.map +1 -1
  255. package/dist/components/tags-input/TagsInput.js +16 -27
  256. package/dist/components/tags-input/TagsInput.js.map +1 -1
  257. package/dist/components/tags-input/types.d.ts +8 -23
  258. package/dist/components/tags-input/types.d.ts.map +1 -1
  259. package/dist/components/toast/Toast.d.ts.map +1 -1
  260. package/dist/components/toast/Toast.js +13 -62
  261. package/dist/components/toast/Toast.js.map +1 -1
  262. package/dist/components/toast/ToastElements.d.ts.map +1 -1
  263. package/dist/components/toast/ToastElements.js +20 -57
  264. package/dist/components/toast/ToastElements.js.map +1 -1
  265. package/dist/components/toast/types.d.ts +9 -36
  266. package/dist/components/toast/types.d.ts.map +1 -1
  267. package/dist/components/toggle/Toggle.d.ts +1 -1
  268. package/dist/components/toggle/Toggle.d.ts.map +1 -1
  269. package/dist/components/toggle/Toggle.js +36 -61
  270. package/dist/components/toggle/Toggle.js.map +1 -1
  271. package/dist/components/toggle/types.d.ts +5 -24
  272. package/dist/components/toggle/types.d.ts.map +1 -1
  273. package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
  274. package/dist/components/tooltip/Tooltip.js +4 -4
  275. package/dist/components/tooltip/Tooltip.js.map +1 -1
  276. package/dist/components/virtual-scroll/VirtualScroll.d.ts.map +1 -1
  277. package/dist/components/virtual-scroll/VirtualScroll.js +65 -43
  278. package/dist/components/virtual-scroll/VirtualScroll.js.map +1 -1
  279. package/dist/components/virtual-scroll/VirtualScrollRowShell.js +2 -2
  280. package/dist/components/virtual-scroll/VirtualScrollRowShell.js.map +1 -1
  281. package/dist/components/virtual-scroll/types.d.ts +7 -20
  282. package/dist/components/virtual-scroll/types.d.ts.map +1 -1
  283. package/dist/components/virtual-scroll/types.js.map +1 -1
  284. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.d.ts +3 -0
  285. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.d.ts.map +1 -1
  286. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.js +11 -2
  287. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.js.map +1 -1
  288. package/dist/core/class-names.d.ts +3 -0
  289. package/dist/core/class-names.d.ts.map +1 -0
  290. package/dist/core/class-names.js +7 -0
  291. package/dist/core/class-names.js.map +1 -0
  292. package/dist/core/part-names.d.ts +8 -0
  293. package/dist/core/part-names.d.ts.map +1 -0
  294. package/dist/core/part-names.js +111 -0
  295. package/dist/core/part-names.js.map +1 -0
  296. package/dist/core/polymorphic.d.ts +10 -3
  297. package/dist/core/polymorphic.d.ts.map +1 -1
  298. package/dist/core/render-native-invoker.d.ts +1 -0
  299. package/dist/core/render-native-invoker.d.ts.map +1 -1
  300. package/dist/core/render-native-invoker.js +6 -6
  301. package/dist/core/render-native-invoker.js.map +1 -1
  302. package/dist/core/roving-focus.d.ts +2 -2
  303. package/dist/core/roving-focus.d.ts.map +1 -1
  304. package/dist/core/roving-focus.js +6 -7
  305. package/dist/core/roving-focus.js.map +1 -1
  306. package/dist/core/slot-props.d.ts +9 -7
  307. package/dist/core/slot-props.d.ts.map +1 -1
  308. package/dist/core/slot-props.js +4 -14
  309. package/dist/core/slot-props.js.map +1 -1
  310. package/dist/elements/choice/Choice.d.ts.map +1 -1
  311. package/dist/elements/choice/Choice.js +5 -42
  312. package/dist/elements/choice/Choice.js.map +1 -1
  313. package/dist/elements/choice/types.d.ts +4 -11
  314. package/dist/elements/choice/types.d.ts.map +1 -1
  315. package/dist/elements/details/Details.d.ts.map +1 -1
  316. package/dist/elements/details/Details.js +4 -5
  317. package/dist/elements/details/Details.js.map +1 -1
  318. package/dist/elements/details/types.d.ts +3 -3
  319. package/dist/elements/details/types.d.ts.map +1 -1
  320. package/dist/elements/dialog/Dialog.d.ts.map +1 -1
  321. package/dist/elements/dialog/Dialog.js +1 -1
  322. package/dist/elements/dialog/Dialog.js.map +1 -1
  323. package/dist/elements/invoker/Invoker.js +3 -3
  324. package/dist/elements/invoker/Invoker.js.map +1 -1
  325. package/dist/elements/popover/Popover.d.ts.map +1 -1
  326. package/dist/elements/popover/Popover.js +3 -3
  327. package/dist/elements/popover/Popover.js.map +1 -1
  328. package/dist/elements/popover/types.d.ts +6 -4
  329. package/dist/elements/popover/types.d.ts.map +1 -1
  330. package/dist/styles/index.css +1 -1
  331. package/dist/styles/tailwind.css +2 -2
  332. package/dist/styles/tokens.css +1 -1
  333. package/package.json +1 -1
  334. package/skills/uiify/references/elements/aspect-ratio.md +1 -1
  335. package/skills/uiify/references/elements/field.md +1 -1
  336. package/skills/uiify/references/elements/toggle.md +1 -0
@@ -1,6 +1,7 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { createElement } from "react";
3
- import { mergeRepeatedSlotProps, resolveRepeatedSlotProps } from "../../../core/slot-props.js";
3
+ import { cn } from "../../../core/class-names.js";
4
+ import { resolveRepeatedSlotProps } from "../../../core/slot-props.js";
4
5
  import {
5
6
  ChoiceGroup as ElementChoiceGroup,
6
7
  ChoiceItem as ElementChoiceItem
@@ -23,8 +24,6 @@ function ChoiceGroup(props) {
23
24
  rootAttributes,
24
25
  labelAttributes,
25
26
  itemInputClassName,
26
- itemProps,
27
- itemSlotProps,
28
27
  slotProps,
29
28
  onItemChange,
30
29
  renderPanel,
@@ -36,53 +35,21 @@ function ChoiceGroup(props) {
36
35
  return /* @__PURE__ */ jsxs(
37
36
  ElementChoiceGroup,
38
37
  {
39
- ...rootProps,
38
+ ...{ [`data-uiify-${namespace}`]: "" },
40
39
  ...rootAttributes,
40
+ ...rootProps,
41
41
  className,
42
42
  id,
43
43
  kind,
44
44
  orientation,
45
- ...{ [`data-uiify-${namespace}`]: "" },
46
45
  children: [
47
46
  items.map((item) => {
48
- const panel = renderPanel ? renderPanel(item) : void 0;
49
- const itemSlots = itemSlotProps?.(item);
50
- const inputSlotProps = mergeRepeatedSlotProps(
51
- resolveRepeatedSlotProps(slotProps?.input, item.value, ["data-part", "data-uiify-radio"]),
52
- itemSlots?.input
53
- );
54
- const controlClassName = [inputSlotProps.className, itemInputClassName?.(item)].filter(Boolean).join(" ");
55
- const itemPropsForValue = mergeRepeatedSlotProps(
56
- resolveRepeatedSlotProps(slotProps?.item, item.value, [
57
- "checked",
58
- "defaultChecked",
59
- "disabled",
60
- "groupId",
61
- "kind",
62
- "label",
63
- "labelPart",
64
- "name",
65
- "onValueChange",
66
- "panel",
67
- "part",
68
- "slotProps",
69
- "value"
70
- ]),
71
- itemProps?.(item)
72
- );
73
- const labelPropsForValue = mergeRepeatedSlotProps(
74
- resolveRepeatedSlotProps(slotProps?.label, item.value),
75
- itemSlots?.label
76
- );
77
- const panelPropsForValue = mergeRepeatedSlotProps(
78
- resolveRepeatedSlotProps(slotProps?.panel, item.value),
79
- itemSlots?.panel
80
- );
47
+ const inputSlotProps = resolveRepeatedSlotProps(slotProps?.input, item.value);
81
48
  return /* @__PURE__ */ createElement(
82
49
  ElementChoiceItem,
83
50
  {
84
- ...itemPropsForValue,
85
- ...panel === void 0 ? {} : { panel },
51
+ ...resolveRepeatedSlotProps(slotProps?.item, item.value),
52
+ ...renderPanel ? { panel: renderPanel(item) } : {},
86
53
  ...isControlled ? { checked: isChecked(item) } : { defaultChecked: isChecked(item) },
87
54
  disabled: item.disabled ?? false,
88
55
  groupId: id,
@@ -91,21 +58,17 @@ function ChoiceGroup(props) {
91
58
  label: renderLabel ? renderLabel(item) : item.label,
92
59
  labelPart: labelPart ? "trigger" : "label",
93
60
  slotProps: {
94
- ...itemSlots,
95
61
  input: {
96
- ...inputSlotProps,
97
- ...controlClassName ? { className: controlClassName } : {},
98
62
  "data-part": "control",
99
- ...kind === "single" ? { "data-uiify-radio": "" } : {}
63
+ ...kind === "single" ? { "data-uiify-radio": "" } : {},
64
+ ...inputSlotProps,
65
+ className: cn(inputSlotProps.className, itemInputClassName?.(item))
100
66
  },
101
67
  label: {
102
- ...labelPropsForValue,
103
- ...labelAttributes
68
+ ...labelAttributes,
69
+ ...resolveRepeatedSlotProps(slotProps?.label, item.value)
104
70
  },
105
- panel: {
106
- ...panelPropsForValue,
107
- "data-part": "panel"
108
- }
71
+ panel: resolveRepeatedSlotProps(slotProps?.panel, item.value)
109
72
  },
110
73
  name: groupName,
111
74
  ...onItemChange ? { onValueChange: () => onItemChange(item) } : {},
@@ -114,7 +77,7 @@ function ChoiceGroup(props) {
114
77
  }
115
78
  );
116
79
  }),
117
- append ? /* @__PURE__ */ jsx("div", { ...appendProps, "data-part": "append", children: append }) : null
80
+ append ? /* @__PURE__ */ jsx("div", { "data-part": "append", ...appendProps, children: append }) : null
118
81
  ]
119
82
  }
120
83
  );
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/internal/choice-family/ChoiceGroup.tsx"],"sourcesContent":["import type { ReactElement } from \"react\";\nimport { mergeRepeatedSlotProps, resolveRepeatedSlotProps } from \"../../../core/slot-props.js\";\nimport {\n ChoiceGroup as ElementChoiceGroup,\n ChoiceItem as ElementChoiceItem,\n} from \"../../../elements/choice/index.js\";\nimport { getChoiceGroupName } from \"./ids.js\";\nimport type { ChoiceItemSlotProps } from \"../../../elements/choice/types.js\";\nimport type { ChoiceGroupProps, ChoiceItem } from \"./types.js\";\n\n/**\n * Built on `@gunkin/uiify/elements/choice`: this component\n * stays the ergonomic, items-array API six components share, now implemented as a thin map\n * from `items` onto `Choice.Item` with canonical `data-part` anatomy.\n */\nexport function ChoiceGroup<TItem extends ChoiceItem>(\n props: ChoiceGroupProps<TItem>,\n): ReactElement {\n const {\n id,\n items,\n namespace,\n kind,\n isChecked,\n isControlled = false,\n name,\n orientation,\n className,\n rootProps,\n itemPart = \"item\",\n labelPart = false,\n rootAttributes,\n labelAttributes,\n itemInputClassName,\n itemProps,\n itemSlotProps,\n slotProps,\n onItemChange,\n renderPanel,\n renderLabel,\n append,\n appendProps,\n } = props;\n const groupName = name ?? getChoiceGroupName(id, kind);\n\n return (\n <ElementChoiceGroup\n {...rootProps}\n {...rootAttributes}\n className={className}\n id={id}\n kind={kind}\n orientation={orientation}\n {...{ [`data-uiify-${namespace}`]: \"\" }}\n >\n {items.map((item) => {\n const panel = renderPanel ? renderPanel(item) : undefined;\n const itemSlots = itemSlotProps?.(item);\n const inputSlotProps = mergeRepeatedSlotProps(\n resolveRepeatedSlotProps(slotProps?.input, item.value, [\"data-part\", \"data-uiify-radio\"]),\n itemSlots?.input,\n );\n const controlClassName = [inputSlotProps.className, itemInputClassName?.(item)]\n .filter(Boolean)\n .join(\" \");\n const itemPropsForValue = mergeRepeatedSlotProps(\n resolveRepeatedSlotProps(slotProps?.item, item.value, [\n \"checked\",\n \"defaultChecked\",\n \"disabled\",\n \"groupId\",\n \"kind\",\n \"label\",\n \"labelPart\",\n \"name\",\n \"onValueChange\",\n \"panel\",\n \"part\",\n \"slotProps\",\n \"value\",\n ]),\n itemProps?.(item),\n );\n const labelPropsForValue = mergeRepeatedSlotProps(\n resolveRepeatedSlotProps(slotProps?.label, item.value),\n itemSlots?.label,\n );\n const panelPropsForValue = mergeRepeatedSlotProps(\n resolveRepeatedSlotProps(slotProps?.panel, item.value),\n itemSlots?.panel,\n );\n return (\n <ElementChoiceItem\n {...itemPropsForValue}\n {...(panel === undefined ? {} : { panel })}\n {...(isControlled ? { checked: isChecked(item) } : { defaultChecked: isChecked(item) })}\n disabled={item.disabled ?? false}\n groupId={id}\n key={item.value}\n kind={kind}\n label={renderLabel ? renderLabel(item) : item.label}\n labelPart={labelPart ? \"trigger\" : \"label\"}\n slotProps={{\n ...itemSlots,\n input: {\n ...inputSlotProps,\n ...(controlClassName ? { className: controlClassName } : {}),\n \"data-part\": \"control\",\n ...(kind === \"single\" ? { \"data-uiify-radio\": \"\" } : {}),\n } as unknown as NonNullable<ChoiceItemSlotProps[\"input\"]>,\n label: {\n ...labelPropsForValue,\n ...labelAttributes,\n } as NonNullable<ChoiceItemSlotProps[\"label\"]>,\n panel: {\n ...panelPropsForValue,\n \"data-part\": \"panel\",\n } as NonNullable<ChoiceItemSlotProps[\"panel\"]>,\n }}\n name={groupName}\n {...(onItemChange ? { onValueChange: () => onItemChange(item) } : {})}\n part={itemPart}\n value={item.value}\n />\n );\n })}\n {append ? (\n <div {...appendProps} data-part=\"append\">\n {append}\n </div>\n ) : null}\n </ElementChoiceGroup>\n );\n}\nChoiceGroup.displayName = \"ChoiceGroup\";\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/internal/choice-family/ChoiceGroup.tsx"],"sourcesContent":["import type { ReactElement } from \"react\";\nimport { cn } from \"../../../core/class-names.js\";\nimport { resolveRepeatedSlotProps } from \"../../../core/slot-props.js\";\nimport {\n ChoiceGroup as ElementChoiceGroup,\n ChoiceItem as ElementChoiceItem,\n} from \"../../../elements/choice/index.js\";\nimport { getChoiceGroupName } from \"./ids.js\";\nimport type { ChoiceGroupProps, ChoiceItem } from \"./types.js\";\n\n/**\n * Built on `@gunkin/uiify/elements/choice`: this component\n * stays the ergonomic, items-array API six components share, now implemented as a thin map\n * from `items` onto `Choice.Item` with canonical `data-part` anatomy.\n */\nexport function ChoiceGroup<TItem extends ChoiceItem>(\n props: ChoiceGroupProps<TItem>,\n): ReactElement {\n const {\n id,\n items,\n namespace,\n kind,\n isChecked,\n isControlled = false,\n name,\n orientation,\n className,\n rootProps,\n itemPart = \"item\",\n labelPart = false,\n rootAttributes,\n labelAttributes,\n itemInputClassName,\n slotProps,\n onItemChange,\n renderPanel,\n renderLabel,\n append,\n appendProps,\n } = props;\n const groupName = name ?? getChoiceGroupName(id, kind);\n\n return (\n <ElementChoiceGroup\n {...{ [`data-uiify-${namespace}`]: \"\" }}\n {...rootAttributes}\n {...rootProps}\n className={className}\n id={id}\n kind={kind}\n orientation={orientation}\n >\n {items.map((item) => {\n const inputSlotProps = resolveRepeatedSlotProps(slotProps?.input, item.value);\n return (\n <ElementChoiceItem\n {...resolveRepeatedSlotProps(slotProps?.item, item.value)}\n {...(renderPanel ? { panel: renderPanel(item) } : {})}\n {...(isControlled ? { checked: isChecked(item) } : { defaultChecked: isChecked(item) })}\n disabled={item.disabled ?? false}\n groupId={id}\n key={item.value}\n kind={kind}\n label={renderLabel ? renderLabel(item) : item.label}\n labelPart={labelPart ? \"trigger\" : \"label\"}\n slotProps={{\n input: {\n \"data-part\": \"control\",\n ...(kind === \"single\" ? { \"data-uiify-radio\": \"\" } : {}),\n ...inputSlotProps,\n className: cn(inputSlotProps.className, itemInputClassName?.(item)),\n },\n label: {\n ...labelAttributes,\n ...resolveRepeatedSlotProps(slotProps?.label, item.value),\n },\n panel: resolveRepeatedSlotProps(slotProps?.panel, item.value),\n }}\n name={groupName}\n {...(onItemChange ? { onValueChange: () => onItemChange(item) } : {})}\n part={itemPart}\n value={item.value}\n />\n );\n })}\n {append ? (\n <div data-part=\"append\" {...appendProps}>\n {append}\n </div>\n ) : null}\n </ElementChoiceGroup>\n );\n}\nChoiceGroup.displayName = \"ChoiceGroup\";\n"],"mappings":"AA4CI,SA2CI,KA3CJ;AAYM;AAvDV,SAAS,UAAU;AACnB,SAAS,gCAAgC;AACzC;AAAA,EACE,eAAe;AAAA,EACf,cAAc;AAAA,OACT;AACP,SAAS,0BAA0B;AAQ5B,SAAS,YACd,OACc;AACd,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AACJ,QAAM,YAAY,QAAQ,mBAAmB,IAAI,IAAI;AAErD,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG,EAAE,CAAC,cAAc,SAAS,EAAE,GAAG,GAAG;AAAA,MACrC,GAAG;AAAA,MACH,GAAG;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA,cAAM,IAAI,CAAC,SAAS;AACnB,gBAAM,iBAAiB,yBAAyB,WAAW,OAAO,KAAK,KAAK;AAC5E,iBACE;AAAA,YAAC;AAAA;AAAA,cACE,GAAG,yBAAyB,WAAW,MAAM,KAAK,KAAK;AAAA,cACvD,GAAI,cAAc,EAAE,OAAO,YAAY,IAAI,EAAE,IAAI,CAAC;AAAA,cAClD,GAAI,eAAe,EAAE,SAAS,UAAU,IAAI,EAAE,IAAI,EAAE,gBAAgB,UAAU,IAAI,EAAE;AAAA,cACrF,UAAU,KAAK,YAAY;AAAA,cAC3B,SAAS;AAAA,cACT,KAAK,KAAK;AAAA,cACV;AAAA,cACA,OAAO,cAAc,YAAY,IAAI,IAAI,KAAK;AAAA,cAC9C,WAAW,YAAY,YAAY;AAAA,cACnC,WAAW;AAAA,gBACT,OAAO;AAAA,kBACL,aAAa;AAAA,kBACb,GAAI,SAAS,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAC;AAAA,kBACtD,GAAG;AAAA,kBACH,WAAW,GAAG,eAAe,WAAW,qBAAqB,IAAI,CAAC;AAAA,gBACpE;AAAA,gBACA,OAAO;AAAA,kBACL,GAAG;AAAA,kBACH,GAAG,yBAAyB,WAAW,OAAO,KAAK,KAAK;AAAA,gBAC1D;AAAA,gBACA,OAAO,yBAAyB,WAAW,OAAO,KAAK,KAAK;AAAA,cAC9D;AAAA,cACA,MAAM;AAAA,cACL,GAAI,eAAe,EAAE,eAAe,MAAM,aAAa,IAAI,EAAE,IAAI,CAAC;AAAA,cACnE,MAAM;AAAA,cACN,OAAO,KAAK;AAAA;AAAA,UACd;AAAA,QAEJ,CAAC;AAAA,QACA,SACC,oBAAC,SAAI,aAAU,UAAU,GAAG,aACzB,kBACH,IACE;AAAA;AAAA;AAAA,EACN;AAEJ;AACA,YAAY,cAAc;","names":[]}
@@ -1,40 +1,12 @@
1
1
  import type { ComponentPropsWithRef, ReactNode } from "react";
2
- import type { ConsumerDataAttributes } from "../../../core/slot-props.js";
3
- import type { ChoiceInputSlotProps, ChoiceItemOwnProps, ChoiceItemSlotProps, ChoiceLabelSlotProps, ChoicePanelSlotProps } from "../../../elements/choice/types.js";
4
- type ChoiceItemWrapperSlotProps = Omit<ComponentPropsWithRef<"div">, keyof ChoiceItemOwnProps | "children" | "dangerouslySetInnerHTML" | "data-part" | "data-uiify-choice"> & {
5
- readonly "data-part"?: never;
6
- readonly "data-uiify-choice"?: never;
7
- } & ConsumerDataAttributes;
8
- type ChoiceInputProtectedProps = {
9
- readonly "aria-labelledby"?: never;
10
- readonly checked?: never;
11
- readonly defaultChecked?: never;
12
- readonly disabled?: never;
13
- readonly id?: never;
14
- readonly name?: never;
15
- readonly type?: never;
16
- readonly value?: never;
17
- readonly "data-part"?: never;
18
- readonly "data-uiify-choice"?: never;
19
- readonly "data-uiify-radio"?: never;
20
- };
21
- type ChoiceLabelProtectedProps = {
22
- readonly htmlFor?: never;
23
- readonly id?: never;
24
- readonly "data-part"?: never;
25
- };
26
- type ChoicePanelProtectedProps = {
27
- readonly id?: never;
28
- readonly "data-part"?: never;
29
- };
30
- type ChoiceRepeatedSlotProps<TProps extends object, TProtected extends object> = TProps & TProtected & {
31
- readonly byItemValue?: Readonly<Record<string, TProps & TProtected>>;
32
- };
2
+ import type { ConsumerDataAttributes, RepeatedSlotProps, SlotProps } from "../../../core/slot-props.js";
3
+ import type { ChoiceInputSlotProps, ChoiceItemOwnProps, ChoiceLabelSlotProps, ChoicePanelSlotProps } from "../../../elements/choice/types.js";
4
+ type ChoiceItemWrapperSlotProps = Omit<ComponentPropsWithRef<"div">, keyof ChoiceItemOwnProps | "children" | "dangerouslySetInnerHTML"> & ConsumerDataAttributes;
33
5
  export interface ChoiceGroupSlotProps {
34
- readonly item?: ChoiceRepeatedSlotProps<ChoiceItemWrapperSlotProps, Pick<ChoiceItemWrapperSlotProps, "data-part" | "data-uiify-choice">>;
35
- readonly input?: ChoiceRepeatedSlotProps<ChoiceInputSlotProps, ChoiceInputProtectedProps>;
36
- readonly label?: ChoiceRepeatedSlotProps<ChoiceLabelSlotProps, ChoiceLabelProtectedProps>;
37
- readonly panel?: ChoiceRepeatedSlotProps<ChoicePanelSlotProps, ChoicePanelProtectedProps>;
6
+ readonly item?: RepeatedSlotProps<ChoiceItemWrapperSlotProps> | undefined;
7
+ readonly input?: RepeatedSlotProps<ChoiceInputSlotProps> | undefined;
8
+ readonly label?: RepeatedSlotProps<ChoiceLabelSlotProps> | undefined;
9
+ readonly panel?: RepeatedSlotProps<ChoicePanelSlotProps> | undefined;
38
10
  }
39
11
  export type ChoiceOptionSlotProps = Omit<ChoiceGroupSlotProps, "panel">;
40
12
  export interface ChoiceItem {
@@ -73,10 +45,6 @@ export interface ChoiceGroupProps<TItem extends ChoiceItem = ChoiceItem> {
73
45
  readonly labelAttributes?: Record<string, string>;
74
46
  /** Per-item `className` hook for the input, e.g. RadioGroup's `item.className`. */
75
47
  readonly itemInputClassName?: (item: TItem) => string | undefined;
76
- /** Native props for each generated Choice.Item wrapper. */
77
- readonly itemProps?: (item: TItem) => Omit<ComponentPropsWithRef<"div">, keyof ChoiceItemOwnProps | "children">;
78
- /** Native props for generated Choice.Item subparts. */
79
- readonly itemSlotProps?: (item: TItem) => ChoiceItemSlotProps;
80
48
  /** Props for generated item parts. Repeated values can target one item by value. */
81
49
  readonly slotProps?: ChoiceGroupSlotProps;
82
50
  /** Fires on the input's native `change` event, e.g. a client wrapper syncing
@@ -89,7 +57,7 @@ export interface ChoiceGroupProps<TItem extends ChoiceItem = ChoiceItem> {
89
57
  /** Trailing content rendered inside the root after the mapped items, e.g. Tabs' `append`. */
90
58
  readonly append?: ReactNode;
91
59
  /** Props for the generated append wrapper. */
92
- readonly appendProps?: Omit<ComponentPropsWithRef<"div">, "children" | "data-part">;
60
+ readonly appendProps?: SlotProps<"div">;
93
61
  }
94
62
  export {};
95
63
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/choice-family/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/choice-family/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /** Height and text scale shared by form controls; `md` is the default. */
2
+ export type ControlSize = "sm" | "md" | "lg";
3
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/control-size/types.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,4 +1,4 @@
1
- import type { ReactNode, RefObject } from "react";
1
+ import type { CSSProperties, ReactNode, RefObject } from "react";
2
2
  import type { VirtualScrollHandle, VirtualScrollRangeChange } from "../../virtual-scroll/types.js";
3
3
  export interface LiveChartAxisLabel {
4
4
  readonly label: ReactNode;
@@ -16,6 +16,8 @@ export interface UseLiveChartWindowOptions {
16
16
  readonly figureHeight: number | undefined;
17
17
  /** Custom property that receives the scroll offset, e.g. `--candle-scroll-x`. */
18
18
  readonly scrollVariable: `--${string}`;
19
+ /** Native root styles override the computed scroll custom property, including removal. */
20
+ readonly consumerStyle?: CSSProperties | undefined;
19
21
  }
20
22
  export interface UseLiveChartWindowResult {
21
23
  readonly live: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/live-chart/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEnG,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,yBAAyB;IACxC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,sDAAsD;IACtD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,iFAAiF;IACjF,QAAQ,CAAC,cAAc,EAAE,KAAK,MAAM,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAC1D,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACjD,yDAAyD;IACzD,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAClE,wFAAwF;IACxF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8CAA8C;IAC9C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/live-chart/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEnG,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,iFAAiF;IACjF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,yBAAyB;IACxC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,sDAAsD;IACtD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,mEAAmE;IACnE,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,iFAAiF;IACjF,QAAQ,CAAC,cAAc,EAAE,KAAK,MAAM,EAAE,CAAC;IACvC,0FAA0F;IAC1F,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACpD;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAC1D,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IACjD,yDAAyD;IACzD,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,CAAC;IAClE,wFAAwF;IACxF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8CAA8C;IAC9C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-live-chart-window.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/live-chart/use-live-chart-window.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAQpB;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAAE,EACnD,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,kBAAkB,EAAE,CAYtB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,wBAAwB,CAqE/F"}
1
+ {"version":3,"file":"use-live-chart-window.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/live-chart/use-live-chart-window.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAQpB;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAAE,EACnD,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,kBAAkB,EAAE,CAYtB;AAiBD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,wBAAwB,CA4E/F"}
@@ -17,8 +17,24 @@ function liveTimeAxis(data, start, end, visibleCount) {
17
17
  }
18
18
  return labels;
19
19
  }
20
+ function writeScrollVariable(chart, scrollVariable, offset, consumerStyle) {
21
+ const style = {
22
+ [scrollVariable]: `${offset}px`,
23
+ ...consumerStyle
24
+ };
25
+ const value = style[scrollVariable];
26
+ if (value === void 0) chart.style.removeProperty(scrollVariable);
27
+ else chart.style.setProperty(scrollVariable, String(value));
28
+ }
20
29
  function useLiveChartWindow(options) {
21
- const { count, visibleCount = 0, itemWidth, figureHeight, scrollVariable } = options;
30
+ const {
31
+ count,
32
+ visibleCount = 0,
33
+ itemWidth,
34
+ figureHeight,
35
+ scrollVariable,
36
+ consumerStyle
37
+ } = options;
22
38
  const live = visibleCount > 0;
23
39
  const scrollRef = useRef(null);
24
40
  const chartRef = useRef(null);
@@ -26,8 +42,8 @@ function useLiveChartWindow(options) {
26
42
  const [following, setFollowing] = useState(true);
27
43
  const contentSize = count * itemWidth;
28
44
  const viewportWidth = itemWidth * visibleCount;
29
- const layoutRef = useRef({ contentSize, itemWidth, viewportWidth });
30
- layoutRef.current = { contentSize, itemWidth, viewportWidth };
45
+ const layoutRef = useRef({ contentSize, itemWidth, viewportWidth, consumerStyle });
46
+ layoutRef.current = { contentSize, itemWidth, viewportWidth, consumerStyle };
31
47
  useEffect(() => {
32
48
  if (!live) return;
33
49
  const element = scrollRef.current?.element;
@@ -35,8 +51,8 @@ function useLiveChartWindow(options) {
35
51
  if (!element || !chart) return;
36
52
  const onScroll = () => {
37
53
  const offset = element.scrollLeft;
38
- chart.style.setProperty(scrollVariable, `${offset}px`);
39
54
  const layout = layoutRef.current;
55
+ writeScrollVariable(chart, scrollVariable, offset, layout.consumerStyle);
40
56
  setFollowing(
41
57
  offset + layout.viewportWidth >= layout.contentSize - Math.max(1, layout.itemWidth)
42
58
  );
@@ -51,7 +67,7 @@ function useLiveChartWindow(options) {
51
67
  if (!element || !chart) return;
52
68
  const end = Math.max(0, contentSize - viewportWidth);
53
69
  element.scrollLeft = end;
54
- chart.style.setProperty(scrollVariable, `${end}px`);
70
+ writeScrollVariable(chart, scrollVariable, end, layoutRef.current.consumerStyle);
55
71
  }, [live, following, contentSize, viewportWidth, scrollVariable]);
56
72
  const tail = following || !visibleRange;
57
73
  const sliceStart = tail ? Math.max(0, count - visibleCount) : Math.min(visibleRange.startIndex, Math.max(0, count - 1));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/internal/live-chart/use-live-chart-window.ts"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useRef, useState } from \"react\";\nimport { useIsomorphicLayoutEffect } from \"../../../hooks/use-isomorphic-layout-effect.js\";\nimport type { VirtualScrollHandle, VirtualScrollRangeChange } from \"../../virtual-scroll/types.js\";\nimport type {\n LiveChartAxisLabel,\n UseLiveChartWindowOptions,\n UseLiveChartWindowResult,\n} from \"./types.js\";\n\n/** The plot's 1.5rem time-axis row below the item viewport (candle-chart.css, line-chart.css). */\nconst TIME_AXIS_ROW_HEIGHT = 24;\n/** The item viewport's 18rem minimum block size, used until the figure is measured. */\nconst MIN_PLOT_HEIGHT = 288;\nconst LIVE_TIME_TICKS = 4;\n\n/**\n * Time ticks pinned to absolute item indices and positioned at slot centers\n * across the whole scrolled content, so labels scroll with their items. Only\n * ticks near the visible slice are returned.\n */\nexport function liveTimeAxis(\n data: readonly { readonly time: string | number }[],\n start: number,\n end: number,\n visibleCount: number,\n): LiveChartAxisLabel[] {\n const step = Math.max(1, Math.ceil(visibleCount / LIVE_TIME_TICKS));\n const labels: LiveChartAxisLabel[] = [];\n const first = Math.max(0, Math.floor(start / step) - 1) * step;\n const last = Math.min(data.length, end + step);\n for (let index = first; index < last; index += step) {\n labels.push({\n label: String(data[index]?.time),\n position: ((index + 0.5) / data.length) * 100,\n });\n }\n return labels;\n}\n\n/**\n * Live chart window over a horizontal VirtualScroll: follows appends while the\n * reader is at the newest item, leaves a scrolled-back reader in place, and\n * reports the visible slice. The chart pins the scroll position itself rather\n * than using VirtualScroll's `anchor`, and publishes the offset as a CSS\n * variable so axes and crosshairs scroll without re-rendering.\n */\nexport function useLiveChartWindow(options: UseLiveChartWindowOptions): UseLiveChartWindowResult {\n const { count, visibleCount = 0, itemWidth, figureHeight, scrollVariable } = options;\n const live = visibleCount > 0;\n const scrollRef = useRef<VirtualScrollHandle>(null);\n const chartRef = useRef<HTMLElement | null>(null);\n const [visibleRange, setVisibleRange] = useState<VirtualScrollRangeChange | null>(null);\n // True while the reader sits at the newest item; appends then keep it in view.\n const [following, setFollowing] = useState(true);\n const contentSize = count * itemWidth;\n const viewportWidth = itemWidth * visibleCount;\n const layoutRef = useRef({ contentSize, itemWidth, viewportWidth });\n layoutRef.current = { contentSize, itemWidth, viewportWidth };\n\n // Publish the scroll offset (a CSS variable, so scrolling re-renders nothing)\n // and track whether the reader is at the end.\n useEffect(() => {\n if (!live) return;\n const element = scrollRef.current?.element;\n const chart = chartRef.current;\n if (!element || !chart) return;\n const onScroll = (): void => {\n const offset = element.scrollLeft; // banned-read-ok: scroll position drives the axis offset.\n chart.style.setProperty(scrollVariable, `${offset}px`);\n const layout = layoutRef.current;\n // Within one item of the end counts: an item appended while the reader\n // scrolls there moves the end by exactly one item width.\n setFollowing(\n offset + layout.viewportWidth >= layout.contentSize - Math.max(1, layout.itemWidth),\n );\n };\n element.addEventListener(\"scroll\", onScroll, { passive: true });\n return () => element.removeEventListener(\"scroll\", onScroll);\n }, [live, scrollVariable]);\n\n // Keep the newest item in view while following: on appends, resizes, and once measured.\n useIsomorphicLayoutEffect(() => {\n if (!live || !following) return;\n const element = scrollRef.current?.element;\n const chart = chartRef.current;\n if (!element || !chart) return;\n const end = Math.max(0, contentSize - viewportWidth);\n element.scrollLeft = end; // banned-read-ok: pin the newest item before paint.\n chart.style.setProperty(scrollVariable, `${end}px`);\n }, [live, following, contentSize, viewportWidth, scrollVariable]);\n\n // While following, the slice is the tail, so an append rescales in the same\n // commit that adds the item.\n const tail = following || !visibleRange;\n const sliceStart = tail\n ? Math.max(0, count - visibleCount)\n : Math.min(visibleRange.startIndex, Math.max(0, count - 1));\n const sliceEnd = tail\n ? count\n : Math.min(count, Math.max(sliceStart + 1, visibleRange.endIndex + 1));\n const plotHeight =\n figureHeight === undefined\n ? MIN_PLOT_HEIGHT\n : Math.max(MIN_PLOT_HEIGHT, figureHeight - TIME_AXIS_ROW_HEIGHT);\n\n return {\n live,\n scrollRef,\n chartRef,\n onRangeChange: setVisibleRange,\n sliceStart,\n sliceEnd,\n contentSize,\n plotHeight,\n };\n}\n"],"mappings":";AAEA,SAAS,WAAW,QAAQ,gBAAgB;AAC5C,SAAS,iCAAiC;AAS1C,MAAM,uBAAuB;AAE7B,MAAM,kBAAkB;AACxB,MAAM,kBAAkB;AAOjB,SAAS,aACd,MACA,OACA,KACA,cACsB;AACtB,QAAM,OAAO,KAAK,IAAI,GAAG,KAAK,KAAK,eAAe,eAAe,CAAC;AAClE,QAAM,SAA+B,CAAC;AACtC,QAAM,QAAQ,KAAK,IAAI,GAAG,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,IAAI;AAC1D,QAAM,OAAO,KAAK,IAAI,KAAK,QAAQ,MAAM,IAAI;AAC7C,WAAS,QAAQ,OAAO,QAAQ,MAAM,SAAS,MAAM;AACnD,WAAO,KAAK;AAAA,MACV,OAAO,OAAO,KAAK,KAAK,GAAG,IAAI;AAAA,MAC/B,WAAY,QAAQ,OAAO,KAAK,SAAU;AAAA,IAC5C,CAAC;AAAA,EACH;AACA,SAAO;AACT;AASO,SAAS,mBAAmB,SAA8D;AAC/F,QAAM,EAAE,OAAO,eAAe,GAAG,WAAW,cAAc,eAAe,IAAI;AAC7E,QAAM,OAAO,eAAe;AAC5B,QAAM,YAAY,OAA4B,IAAI;AAClD,QAAM,WAAW,OAA2B,IAAI;AAChD,QAAM,CAAC,cAAc,eAAe,IAAI,SAA0C,IAAI;AAEtF,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,IAAI;AAC/C,QAAM,cAAc,QAAQ;AAC5B,QAAM,gBAAgB,YAAY;AAClC,QAAM,YAAY,OAAO,EAAE,aAAa,WAAW,cAAc,CAAC;AAClE,YAAU,UAAU,EAAE,aAAa,WAAW,cAAc;AAI5D,YAAU,MAAM;AACd,QAAI,CAAC,KAAM;AACX,UAAM,UAAU,UAAU,SAAS;AACnC,UAAM,QAAQ,SAAS;AACvB,QAAI,CAAC,WAAW,CAAC,MAAO;AACxB,UAAM,WAAW,MAAY;AAC3B,YAAM,SAAS,QAAQ;AACvB,YAAM,MAAM,YAAY,gBAAgB,GAAG,MAAM,IAAI;AACrD,YAAM,SAAS,UAAU;AAGzB;AAAA,QACE,SAAS,OAAO,iBAAiB,OAAO,cAAc,KAAK,IAAI,GAAG,OAAO,SAAS;AAAA,MACpF;AAAA,IACF;AACA,YAAQ,iBAAiB,UAAU,UAAU,EAAE,SAAS,KAAK,CAAC;AAC9D,WAAO,MAAM,QAAQ,oBAAoB,UAAU,QAAQ;AAAA,EAC7D,GAAG,CAAC,MAAM,cAAc,CAAC;AAGzB,4BAA0B,MAAM;AAC9B,QAAI,CAAC,QAAQ,CAAC,UAAW;AACzB,UAAM,UAAU,UAAU,SAAS;AACnC,UAAM,QAAQ,SAAS;AACvB,QAAI,CAAC,WAAW,CAAC,MAAO;AACxB,UAAM,MAAM,KAAK,IAAI,GAAG,cAAc,aAAa;AACnD,YAAQ,aAAa;AACrB,UAAM,MAAM,YAAY,gBAAgB,GAAG,GAAG,IAAI;AAAA,EACpD,GAAG,CAAC,MAAM,WAAW,aAAa,eAAe,cAAc,CAAC;AAIhE,QAAM,OAAO,aAAa,CAAC;AAC3B,QAAM,aAAa,OACf,KAAK,IAAI,GAAG,QAAQ,YAAY,IAChC,KAAK,IAAI,aAAa,YAAY,KAAK,IAAI,GAAG,QAAQ,CAAC,CAAC;AAC5D,QAAM,WAAW,OACb,QACA,KAAK,IAAI,OAAO,KAAK,IAAI,aAAa,GAAG,aAAa,WAAW,CAAC,CAAC;AACvE,QAAM,aACJ,iBAAiB,SACb,kBACA,KAAK,IAAI,iBAAiB,eAAe,oBAAoB;AAEnE,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/internal/live-chart/use-live-chart-window.ts"],"sourcesContent":["\"use client\";\n\nimport type { CSSProperties } from \"react\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { useIsomorphicLayoutEffect } from \"../../../hooks/use-isomorphic-layout-effect.js\";\nimport type { VirtualScrollHandle, VirtualScrollRangeChange } from \"../../virtual-scroll/types.js\";\nimport type {\n LiveChartAxisLabel,\n UseLiveChartWindowOptions,\n UseLiveChartWindowResult,\n} from \"./types.js\";\n\n/** The plot's 1.5rem time-axis row below the item viewport (candle-chart.css, line-chart.css). */\nconst TIME_AXIS_ROW_HEIGHT = 24;\n/** The item viewport's 18rem minimum block size, used until the figure is measured. */\nconst MIN_PLOT_HEIGHT = 288;\nconst LIVE_TIME_TICKS = 4;\n\n/**\n * Time ticks pinned to absolute item indices and positioned at slot centers\n * across the whole scrolled content, so labels scroll with their items. Only\n * ticks near the visible slice are returned.\n */\nexport function liveTimeAxis(\n data: readonly { readonly time: string | number }[],\n start: number,\n end: number,\n visibleCount: number,\n): LiveChartAxisLabel[] {\n const step = Math.max(1, Math.ceil(visibleCount / LIVE_TIME_TICKS));\n const labels: LiveChartAxisLabel[] = [];\n const first = Math.max(0, Math.floor(start / step) - 1) * step;\n const last = Math.min(data.length, end + step);\n for (let index = first; index < last; index += step) {\n labels.push({\n label: String(data[index]?.time),\n position: ((index + 0.5) / data.length) * 100,\n });\n }\n return labels;\n}\n\nfunction writeScrollVariable(\n chart: HTMLElement,\n scrollVariable: `--${string}`,\n offset: number,\n consumerStyle: CSSProperties | undefined,\n): void {\n const style: CSSProperties & Record<`--${string}`, string | number | undefined> = {\n [scrollVariable]: `${offset}px`,\n ...consumerStyle,\n };\n const value = style[scrollVariable];\n if (value === undefined) chart.style.removeProperty(scrollVariable);\n else chart.style.setProperty(scrollVariable, String(value));\n}\n\n/**\n * Live chart window over a horizontal VirtualScroll: follows appends while the\n * reader is at the newest item, leaves a scrolled-back reader in place, and\n * reports the visible slice. The chart pins the scroll position itself rather\n * than using VirtualScroll's `anchor`, and publishes the offset as a CSS\n * variable so axes and crosshairs scroll without re-rendering.\n */\nexport function useLiveChartWindow(options: UseLiveChartWindowOptions): UseLiveChartWindowResult {\n const {\n count,\n visibleCount = 0,\n itemWidth,\n figureHeight,\n scrollVariable,\n consumerStyle,\n } = options;\n const live = visibleCount > 0;\n const scrollRef = useRef<VirtualScrollHandle>(null);\n const chartRef = useRef<HTMLElement | null>(null);\n const [visibleRange, setVisibleRange] = useState<VirtualScrollRangeChange | null>(null);\n // True while the reader sits at the newest item; appends then keep it in view.\n const [following, setFollowing] = useState(true);\n const contentSize = count * itemWidth;\n const viewportWidth = itemWidth * visibleCount;\n const layoutRef = useRef({ contentSize, itemWidth, viewportWidth, consumerStyle });\n layoutRef.current = { contentSize, itemWidth, viewportWidth, consumerStyle };\n\n // Publish the scroll offset (a CSS variable, so scrolling re-renders nothing)\n // and track whether the reader is at the end.\n useEffect(() => {\n if (!live) return;\n const element = scrollRef.current?.element;\n const chart = chartRef.current;\n if (!element || !chart) return;\n const onScroll = (): void => {\n const offset = element.scrollLeft; // banned-read-ok: scroll position drives the axis offset.\n const layout = layoutRef.current;\n writeScrollVariable(chart, scrollVariable, offset, layout.consumerStyle);\n // Within one item of the end counts: an item appended while the reader\n // scrolls there moves the end by exactly one item width.\n setFollowing(\n offset + layout.viewportWidth >= layout.contentSize - Math.max(1, layout.itemWidth),\n );\n };\n element.addEventListener(\"scroll\", onScroll, { passive: true });\n return () => element.removeEventListener(\"scroll\", onScroll);\n }, [live, scrollVariable]);\n\n // Keep the newest item in view while following: on appends, resizes, and once measured.\n useIsomorphicLayoutEffect(() => {\n if (!live || !following) return;\n const element = scrollRef.current?.element;\n const chart = chartRef.current;\n if (!element || !chart) return;\n const end = Math.max(0, contentSize - viewportWidth);\n element.scrollLeft = end; // banned-read-ok: pin the newest item before paint.\n writeScrollVariable(chart, scrollVariable, end, layoutRef.current.consumerStyle);\n }, [live, following, contentSize, viewportWidth, scrollVariable]);\n\n // While following, the slice is the tail, so an append rescales in the same\n // commit that adds the item.\n const tail = following || !visibleRange;\n const sliceStart = tail\n ? Math.max(0, count - visibleCount)\n : Math.min(visibleRange.startIndex, Math.max(0, count - 1));\n const sliceEnd = tail\n ? count\n : Math.min(count, Math.max(sliceStart + 1, visibleRange.endIndex + 1));\n const plotHeight =\n figureHeight === undefined\n ? MIN_PLOT_HEIGHT\n : Math.max(MIN_PLOT_HEIGHT, figureHeight - TIME_AXIS_ROW_HEIGHT);\n\n return {\n live,\n scrollRef,\n chartRef,\n onRangeChange: setVisibleRange,\n sliceStart,\n sliceEnd,\n contentSize,\n plotHeight,\n };\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"menu-parts.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/menu/menu-parts.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AAElE,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAsCrF,wBAAgB,SAAS,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EACvD,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,YAAY,GAAG,IAAI,CAErB;AAED,wBAAgB,SAAS,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EACvD,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,YAAY,GAAG,IAAI,CAErB;AAED,wBAAgB,aAAa,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EAC3D,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAC7B,YAAY,GAAG,IAAI,CAErB"}
1
+ {"version":3,"file":"menu-parts.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/menu/menu-parts.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AAGlE,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAkCrF,wBAAgB,SAAS,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EACvD,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,YAAY,GAAG,IAAI,CAErB;AACD,wBAAgB,SAAS,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EACvD,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,YAAY,GAAG,IAAI,CAErB;AACD,wBAAgB,aAAa,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EAC3D,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAC7B,YAAY,GAAG,IAAI,CAErB"}
@@ -6,11 +6,11 @@ function useMenuPart(props, options) {
6
6
  defaultTag: options.defaultTag,
7
7
  render,
8
8
  props: {
9
- ...consumerProps,
10
9
  ...className ? { className } : {},
11
- children,
12
10
  role: options.role,
13
- "data-part": options.part
11
+ "data-part": options.part,
12
+ ...consumerProps,
13
+ children
14
14
  },
15
15
  state: {}
16
16
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/internal/menu/menu-parts.tsx"],"sourcesContent":["import type { ElementType, ReactElement, ReactNode } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { MenuGroupProps, MenuLabelProps, MenuSeparatorProps } from \"./types.js\";\n\ninterface MenuPartOptions {\n readonly defaultTag: ElementType;\n readonly part: string;\n readonly role: string;\n}\n\ninterface MenuPartValues {\n readonly as?: ElementType | undefined;\n readonly children?: ReactNode;\n readonly className?: string;\n readonly render?:\n | ((props: Record<string, unknown>, state: Record<string, never>) => ReactElement | null)\n | undefined;\n readonly [key: string]: unknown;\n}\n\nfunction useMenuPart<TAs extends ElementType>(\n props: MenuGroupProps<TAs> | MenuLabelProps<TAs> | MenuSeparatorProps<TAs>,\n options: MenuPartOptions,\n): ReactElement | null {\n const { as, render, children, className, ...consumerProps } = props as MenuPartValues;\n return useRenderElement({\n as,\n defaultTag: options.defaultTag,\n render,\n props: {\n ...consumerProps,\n ...(className ? { className } : {}),\n children,\n role: options.role,\n \"data-part\": options.part,\n },\n state: {},\n });\n}\n\nexport function MenuGroup<TAs extends ElementType = \"div\">(\n props: MenuGroupProps<TAs>,\n): ReactElement | null {\n return useMenuPart(props, { defaultTag: \"div\", part: \"group\", role: \"group\" });\n}\n\nexport function MenuLabel<TAs extends ElementType = \"div\">(\n props: MenuLabelProps<TAs>,\n): ReactElement | null {\n return useMenuPart(props, { defaultTag: \"div\", part: \"label\", role: \"presentation\" });\n}\n\nexport function MenuSeparator<TAs extends ElementType = \"div\">(\n props: MenuSeparatorProps<TAs>,\n): ReactElement | null {\n return useMenuPart(props, { defaultTag: \"div\", part: \"separator\", role: \"separator\" });\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAmBjC,SAAS,YACP,OACA,SACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,UAAU,WAAW,GAAG,cAAc,IAAI;AAC9D,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY,QAAQ;AAAA,IACpB;AAAA,IACA,OAAO;AAAA,MACL,GAAG;AAAA,MACH,GAAI,YAAY,EAAE,UAAU,IAAI,CAAC;AAAA,MACjC;AAAA,MACA,MAAM,QAAQ;AAAA,MACd,aAAa,QAAQ;AAAA,IACvB;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AAEO,SAAS,UACd,OACqB;AACrB,SAAO,YAAY,OAAO,EAAE,YAAY,OAAO,MAAM,SAAS,MAAM,QAAQ,CAAC;AAC/E;AAEO,SAAS,UACd,OACqB;AACrB,SAAO,YAAY,OAAO,EAAE,YAAY,OAAO,MAAM,SAAS,MAAM,eAAe,CAAC;AACtF;AAEO,SAAS,cACd,OACqB;AACrB,SAAO,YAAY,OAAO,EAAE,YAAY,OAAO,MAAM,aAAa,MAAM,YAAY,CAAC;AACvF;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/internal/menu/menu-parts.tsx"],"sourcesContent":["import type { ElementType, ReactElement, ReactNode } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { PartName } from \"../../../core/part-names.js\";\nimport type { MenuGroupProps, MenuLabelProps, MenuSeparatorProps } from \"./types.js\";\ninterface MenuPartOptions {\n readonly defaultTag: ElementType;\n readonly part: PartName;\n readonly role: string;\n}\ninterface MenuPartValues {\n readonly as?: ElementType | undefined;\n readonly children?: ReactNode;\n readonly className?: string;\n readonly render?:\n | ((props: Record<string, unknown>, state: Record<string, never>) => ReactElement | null)\n | undefined;\n readonly [key: string]: unknown;\n}\nfunction useMenuPart<TAs extends ElementType>(\n props: MenuGroupProps<TAs> | MenuLabelProps<TAs> | MenuSeparatorProps<TAs>,\n options: MenuPartOptions,\n): ReactElement | null {\n const { as, render, children, className, ...consumerProps } = props as MenuPartValues;\n return useRenderElement({\n as,\n defaultTag: options.defaultTag,\n render,\n props: {\n ...(className ? { className } : {}),\n role: options.role,\n \"data-part\": options.part,\n ...consumerProps,\n children,\n },\n state: {},\n });\n}\nexport function MenuGroup<TAs extends ElementType = \"div\">(\n props: MenuGroupProps<TAs>,\n): ReactElement | null {\n return useMenuPart(props, { defaultTag: \"div\", part: \"group\", role: \"group\" });\n}\nexport function MenuLabel<TAs extends ElementType = \"div\">(\n props: MenuLabelProps<TAs>,\n): ReactElement | null {\n return useMenuPart(props, { defaultTag: \"div\", part: \"label\", role: \"presentation\" });\n}\nexport function MenuSeparator<TAs extends ElementType = \"div\">(\n props: MenuSeparatorProps<TAs>,\n): ReactElement | null {\n return useMenuPart(props, { defaultTag: \"div\", part: \"separator\", role: \"separator\" });\n}\n"],"mappings":"AACA,SAAS,wBAAwB;AAiBjC,SAAS,YACP,OACA,SACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,UAAU,WAAW,GAAG,cAAc,IAAI;AAC9D,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY,QAAQ;AAAA,IACpB;AAAA,IACA,OAAO;AAAA,MACL,GAAI,YAAY,EAAE,UAAU,IAAI,CAAC;AAAA,MACjC,MAAM,QAAQ;AAAA,MACd,aAAa,QAAQ;AAAA,MACrB,GAAG;AAAA,MACH;AAAA,IACF;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AACO,SAAS,UACd,OACqB;AACrB,SAAO,YAAY,OAAO,EAAE,YAAY,OAAO,MAAM,SAAS,MAAM,QAAQ,CAAC;AAC/E;AACO,SAAS,UACd,OACqB;AACrB,SAAO,YAAY,OAAO,EAAE,YAAY,OAAO,MAAM,SAAS,MAAM,eAAe,CAAC;AACtF;AACO,SAAS,cACd,OACqB;AACrB,SAAO,YAAY,OAAO,EAAE,YAAY,OAAO,MAAM,aAAa,MAAM,YAAY,CAAC;AACvF;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"NativeCheckControl.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/native-check-control/NativeCheckControl.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,OAAO,CAAC;AAIvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAE1D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,YAAY,CA+F/E;yBA/Fe,kBAAkB"}
1
+ {"version":3,"file":"NativeCheckControl.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/native-check-control/NativeCheckControl.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAe,YAAY,EAAE,MAAM,OAAO,CAAC;AAIvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAE1D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,GAAG,YAAY,CAuE/E;yBAvEe,kBAAkB"}
@@ -3,7 +3,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { useEffect, useRef, useState } from "react";
4
4
  import { useMergedRefs } from "@gunkin/uiify/hooks";
5
5
  import { composeEventHandlers } from "@gunkin/uiify/core/compose-event-handlers";
6
- import { mergeRepeatedSlotProps, omitProps } from "../../../core/slot-props.js";
6
+ import { mergeRepeatedSlotProps } from "../../../core/slot-props.js";
7
7
  function NativeCheckControl(props) {
8
8
  const {
9
9
  checked,
@@ -21,32 +21,8 @@ function NativeCheckControl(props) {
21
21
  const isControlled = checked !== void 0;
22
22
  const [uncontrolledChecked, setUncontrolledChecked] = useState(defaultChecked ?? false);
23
23
  const inputRef = useRef(null);
24
- const inputProps = omitProps(slotProps?.input, [
25
- "aria-checked",
26
- "aria-label",
27
- "aria-labelledby",
28
- "checked",
29
- "children",
30
- "dangerouslySetInnerHTML",
31
- "data-disabled",
32
- "data-part",
33
- "data-state",
34
- "data-uiify-checkbox",
35
- "defaultChecked",
36
- "defaultValue",
37
- "disabled",
38
- "id",
39
- "name",
40
- "type",
41
- "value"
42
- ]);
43
- const labelProps = omitProps(mergeRepeatedSlotProps({ className }, slotProps?.label), [
44
- "children",
45
- "dangerouslySetInnerHTML",
46
- "data-uiify-checkbox",
47
- "htmlFor",
48
- "id"
49
- ]);
24
+ const inputProps = slotProps?.input ?? {};
25
+ const labelProps = mergeRepeatedSlotProps({ className }, slotProps?.label);
50
26
  const mergedInputRef = useMergedRefs(inputProps.ref, inputRef);
51
27
  const checkedValue = isControlled ? checked === true : uncontrolledChecked;
52
28
  useEffect(() => {
@@ -62,7 +38,6 @@ function NativeCheckControl(props) {
62
38
  const input = /* @__PURE__ */ jsx(
63
39
  "input",
64
40
  {
65
- ...inputProps,
66
41
  "aria-checked": checked === "indeterminate" ? "mixed" : void 0,
67
42
  "aria-label": label === void 0 ? ariaLabel : void 0,
68
43
  "aria-labelledby": label !== void 0 ? `${id}-label` : void 0,
@@ -73,14 +48,15 @@ function NativeCheckControl(props) {
73
48
  disabled: disabled || void 0,
74
49
  id,
75
50
  name,
76
- onChange: composeEventHandlers(inputProps.onChange, handleChange),
77
- ref: mergedInputRef,
78
51
  type: "checkbox",
79
52
  value,
80
- ...label === void 0 ? { "data-uiify-checkbox": "" } : { "data-part": "control" }
53
+ ...label === void 0 ? { "data-uiify-checkbox": "" } : { "data-part": "control" },
54
+ ...inputProps,
55
+ onChange: composeEventHandlers(inputProps.onChange, handleChange),
56
+ ref: mergedInputRef
81
57
  }
82
58
  );
83
- return label === void 0 ? input : /* @__PURE__ */ jsxs("label", { ...labelProps, "data-uiify-checkbox": "", id: `${id}-label`, children: [
59
+ return label === void 0 ? input : /* @__PURE__ */ jsxs("label", { "data-uiify-checkbox": "", id: `${id}-label`, ...labelProps, children: [
84
60
  input,
85
61
  label
86
62
  ] });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/internal/native-check-control/NativeCheckControl.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useRef, useState } from \"react\";\nimport type { ChangeEvent, ReactElement } from \"react\";\nimport { useMergedRefs } from \"@gunkin/uiify/hooks\";\nimport { composeEventHandlers } from \"@gunkin/uiify/core/compose-event-handlers\";\nimport { mergeRepeatedSlotProps, omitProps } from \"../../../core/slot-props.js\";\nimport type { NativeCheckControlProps } from \"./types.js\";\n\nexport function NativeCheckControl(props: NativeCheckControlProps): ReactElement {\n const {\n checked,\n defaultChecked,\n disabled = false,\n id,\n label,\n name,\n onCheckedChange,\n className,\n slotProps,\n value,\n \"aria-label\": ariaLabel,\n } = props;\n const isControlled = checked !== undefined;\n const [uncontrolledChecked, setUncontrolledChecked] = useState(defaultChecked ?? false);\n const inputRef = useRef<HTMLInputElement | null>(null);\n const inputProps = omitProps(slotProps?.input, [\n \"aria-checked\",\n \"aria-label\",\n \"aria-labelledby\",\n \"checked\",\n \"children\",\n \"dangerouslySetInnerHTML\",\n \"data-disabled\",\n \"data-part\",\n \"data-state\",\n \"data-uiify-checkbox\",\n \"defaultChecked\",\n \"defaultValue\",\n \"disabled\",\n \"id\",\n \"name\",\n \"type\",\n \"value\",\n ]);\n const labelProps = omitProps(mergeRepeatedSlotProps({ className }, slotProps?.label), [\n \"children\",\n \"dangerouslySetInnerHTML\",\n \"data-uiify-checkbox\",\n \"htmlFor\",\n \"id\",\n ]);\n const mergedInputRef = useMergedRefs(inputProps.ref, inputRef);\n const checkedValue = isControlled ? checked === true : uncontrolledChecked;\n\n useEffect(() => {\n if (inputRef.current) inputRef.current.indeterminate = checked === \"indeterminate\";\n }, [checked]);\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (checked === \"indeterminate\" && inputRef.current) {\n inputRef.current.indeterminate = true;\n }\n if (!isControlled) setUncontrolledChecked(event.currentTarget.checked);\n onCheckedChange?.(event.currentTarget.checked);\n };\n\n const input = (\n <input\n {...inputProps}\n aria-checked={checked === \"indeterminate\" ? \"mixed\" : undefined}\n aria-label={label === undefined ? ariaLabel : undefined}\n aria-labelledby={label !== undefined ? `${id}-label` : undefined}\n checked={isControlled ? checkedValue : undefined}\n data-disabled={disabled ? \"\" : undefined}\n data-state={\n isControlled\n ? checked === \"indeterminate\"\n ? \"indeterminate\"\n : checkedValue\n ? \"checked\"\n : \"unchecked\"\n : undefined\n }\n defaultChecked={!isControlled ? defaultChecked : undefined}\n disabled={disabled || undefined}\n id={id}\n name={name}\n onChange={composeEventHandlers(inputProps.onChange, handleChange)}\n ref={mergedInputRef}\n type=\"checkbox\"\n value={value}\n {...(label === undefined ? { \"data-uiify-checkbox\": \"\" } : { \"data-part\": \"control\" })}\n />\n );\n\n return label === undefined ? (\n input\n ) : (\n <label {...labelProps} data-uiify-checkbox=\"\" id={`${id}-label`}>\n {input}\n {label}\n </label>\n );\n}\nNativeCheckControl.displayName = \"NativeCheckControl\";\n"],"mappings":";AAoEI,cA+BA,YA/BA;AAlEJ,SAAS,WAAW,QAAQ,gBAAgB;AAE5C,SAAS,qBAAqB;AAC9B,SAAS,4BAA4B;AACrC,SAAS,wBAAwB,iBAAiB;AAG3C,SAAS,mBAAmB,OAA8C;AAC/E,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc;AAAA,EAChB,IAAI;AACJ,QAAM,eAAe,YAAY;AACjC,QAAM,CAAC,qBAAqB,sBAAsB,IAAI,SAAS,kBAAkB,KAAK;AACtF,QAAM,WAAW,OAAgC,IAAI;AACrD,QAAM,aAAa,UAAU,WAAW,OAAO;AAAA,IAC7C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACD,QAAM,aAAa,UAAU,uBAAuB,EAAE,UAAU,GAAG,WAAW,KAAK,GAAG;AAAA,IACpF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AACD,QAAM,iBAAiB,cAAc,WAAW,KAAK,QAAQ;AAC7D,QAAM,eAAe,eAAe,YAAY,OAAO;AAEvD,YAAU,MAAM;AACd,QAAI,SAAS,QAAS,UAAS,QAAQ,gBAAgB,YAAY;AAAA,EACrE,GAAG,CAAC,OAAO,CAAC;AAEZ,QAAM,eAAe,CAAC,UAAyC;AAC7D,QAAI,YAAY,mBAAmB,SAAS,SAAS;AACnD,eAAS,QAAQ,gBAAgB;AAAA,IACnC;AACA,QAAI,CAAC,aAAc,wBAAuB,MAAM,cAAc,OAAO;AACrE,sBAAkB,MAAM,cAAc,OAAO;AAAA,EAC/C;AAEA,QAAM,QACJ;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ,gBAAc,YAAY,kBAAkB,UAAU;AAAA,MACtD,cAAY,UAAU,SAAY,YAAY;AAAA,MAC9C,mBAAiB,UAAU,SAAY,GAAG,EAAE,WAAW;AAAA,MACvD,SAAS,eAAe,eAAe;AAAA,MACvC,iBAAe,WAAW,KAAK;AAAA,MAC/B,cACE,eACI,YAAY,kBACV,kBACA,eACE,YACA,cACJ;AAAA,MAEN,gBAAgB,CAAC,eAAe,iBAAiB;AAAA,MACjD,UAAU,YAAY;AAAA,MACtB;AAAA,MACA;AAAA,MACA,UAAU,qBAAqB,WAAW,UAAU,YAAY;AAAA,MAChE,KAAK;AAAA,MACL,MAAK;AAAA,MACL;AAAA,MACC,GAAI,UAAU,SAAY,EAAE,uBAAuB,GAAG,IAAI,EAAE,aAAa,UAAU;AAAA;AAAA,EACtF;AAGF,SAAO,UAAU,SACf,QAEA,qBAAC,WAAO,GAAG,YAAY,uBAAoB,IAAG,IAAI,GAAG,EAAE,UACpD;AAAA;AAAA,IACA;AAAA,KACH;AAEJ;AACA,mBAAmB,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/internal/native-check-control/NativeCheckControl.tsx"],"sourcesContent":["\"use client\";\n\nimport { useEffect, useRef, useState } from \"react\";\nimport type { ChangeEvent, ReactElement } from \"react\";\nimport { useMergedRefs } from \"@gunkin/uiify/hooks\";\nimport { composeEventHandlers } from \"@gunkin/uiify/core/compose-event-handlers\";\nimport { mergeRepeatedSlotProps } from \"../../../core/slot-props.js\";\nimport type { NativeCheckControlProps } from \"./types.js\";\n\nexport function NativeCheckControl(props: NativeCheckControlProps): ReactElement {\n const {\n checked,\n defaultChecked,\n disabled = false,\n id,\n label,\n name,\n onCheckedChange,\n className,\n slotProps,\n value,\n \"aria-label\": ariaLabel,\n } = props;\n const isControlled = checked !== undefined;\n const [uncontrolledChecked, setUncontrolledChecked] = useState(defaultChecked ?? false);\n const inputRef = useRef<HTMLInputElement | null>(null);\n const inputProps = slotProps?.input ?? {};\n const labelProps = mergeRepeatedSlotProps({ className }, slotProps?.label);\n const mergedInputRef = useMergedRefs(inputProps.ref, inputRef);\n const checkedValue = isControlled ? checked === true : uncontrolledChecked;\n\n useEffect(() => {\n if (inputRef.current) inputRef.current.indeterminate = checked === \"indeterminate\";\n }, [checked]);\n\n const handleChange = (event: ChangeEvent<HTMLInputElement>) => {\n if (checked === \"indeterminate\" && inputRef.current) {\n inputRef.current.indeterminate = true;\n }\n if (!isControlled) setUncontrolledChecked(event.currentTarget.checked);\n onCheckedChange?.(event.currentTarget.checked);\n };\n\n const input = (\n <input\n aria-checked={checked === \"indeterminate\" ? \"mixed\" : undefined}\n aria-label={label === undefined ? ariaLabel : undefined}\n aria-labelledby={label !== undefined ? `${id}-label` : undefined}\n checked={isControlled ? checkedValue : undefined}\n data-disabled={disabled ? \"\" : undefined}\n data-state={\n isControlled\n ? checked === \"indeterminate\"\n ? \"indeterminate\"\n : checkedValue\n ? \"checked\"\n : \"unchecked\"\n : undefined\n }\n defaultChecked={!isControlled ? defaultChecked : undefined}\n disabled={disabled || undefined}\n id={id}\n name={name}\n type=\"checkbox\"\n value={value}\n {...(label === undefined ? { \"data-uiify-checkbox\": \"\" } : { \"data-part\": \"control\" })}\n {...inputProps}\n onChange={composeEventHandlers(inputProps.onChange, handleChange)}\n ref={mergedInputRef}\n />\n );\n\n return label === undefined ? (\n input\n ) : (\n <label data-uiify-checkbox=\"\" id={`${id}-label`} {...labelProps}>\n {input}\n {label}\n </label>\n );\n}\nNativeCheckControl.displayName = \"NativeCheckControl\";\n"],"mappings":";AA4CI,cA+BA,YA/BA;AA1CJ,SAAS,WAAW,QAAQ,gBAAgB;AAE5C,SAAS,qBAAqB;AAC9B,SAAS,4BAA4B;AACrC,SAAS,8BAA8B;AAGhC,SAAS,mBAAmB,OAA8C;AAC/E,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,cAAc;AAAA,EAChB,IAAI;AACJ,QAAM,eAAe,YAAY;AACjC,QAAM,CAAC,qBAAqB,sBAAsB,IAAI,SAAS,kBAAkB,KAAK;AACtF,QAAM,WAAW,OAAgC,IAAI;AACrD,QAAM,aAAa,WAAW,SAAS,CAAC;AACxC,QAAM,aAAa,uBAAuB,EAAE,UAAU,GAAG,WAAW,KAAK;AACzE,QAAM,iBAAiB,cAAc,WAAW,KAAK,QAAQ;AAC7D,QAAM,eAAe,eAAe,YAAY,OAAO;AAEvD,YAAU,MAAM;AACd,QAAI,SAAS,QAAS,UAAS,QAAQ,gBAAgB,YAAY;AAAA,EACrE,GAAG,CAAC,OAAO,CAAC;AAEZ,QAAM,eAAe,CAAC,UAAyC;AAC7D,QAAI,YAAY,mBAAmB,SAAS,SAAS;AACnD,eAAS,QAAQ,gBAAgB;AAAA,IACnC;AACA,QAAI,CAAC,aAAc,wBAAuB,MAAM,cAAc,OAAO;AACrE,sBAAkB,MAAM,cAAc,OAAO;AAAA,EAC/C;AAEA,QAAM,QACJ;AAAA,IAAC;AAAA;AAAA,MACC,gBAAc,YAAY,kBAAkB,UAAU;AAAA,MACtD,cAAY,UAAU,SAAY,YAAY;AAAA,MAC9C,mBAAiB,UAAU,SAAY,GAAG,EAAE,WAAW;AAAA,MACvD,SAAS,eAAe,eAAe;AAAA,MACvC,iBAAe,WAAW,KAAK;AAAA,MAC/B,cACE,eACI,YAAY,kBACV,kBACA,eACE,YACA,cACJ;AAAA,MAEN,gBAAgB,CAAC,eAAe,iBAAiB;AAAA,MACjD,UAAU,YAAY;AAAA,MACtB;AAAA,MACA;AAAA,MACA,MAAK;AAAA,MACL;AAAA,MACC,GAAI,UAAU,SAAY,EAAE,uBAAuB,GAAG,IAAI,EAAE,aAAa,UAAU;AAAA,MACnF,GAAG;AAAA,MACJ,UAAU,qBAAqB,WAAW,UAAU,YAAY;AAAA,MAChE,KAAK;AAAA;AAAA,EACP;AAGF,SAAO,UAAU,SACf,QAEA,qBAAC,WAAM,uBAAoB,IAAG,IAAI,GAAG,EAAE,UAAW,GAAG,YAClD;AAAA;AAAA,IACA;AAAA,KACH;AAEJ;AACA,mBAAmB,cAAc;","names":[]}
@@ -1,22 +1,9 @@
1
- import type { ComponentPropsWithRef, ReactNode } from "react";
2
- import type { ConsumerDataAttributes } from "../../../core/slot-props.js";
1
+ import type { ReactNode } from "react";
2
+ import type { SlotProps } from "../../../core/slot-props.js";
3
3
  export type CheckedState = boolean | "indeterminate";
4
- type NativeCheckControlInputOwnedAttributes = {
5
- readonly "aria-checked"?: never;
6
- readonly "aria-label"?: never;
7
- readonly "aria-labelledby"?: never;
8
- readonly "data-disabled"?: never;
9
- readonly "data-part"?: never;
10
- readonly "data-state"?: never;
11
- readonly "data-uiify-checkbox"?: never;
12
- };
13
- type NativeCheckControlLabelOwnedAttributes = {
14
- readonly "data-uiify-checkbox"?: never;
15
- readonly id?: never;
16
- };
17
4
  export interface NativeCheckControlSlotProps {
18
- readonly input?: Omit<ComponentPropsWithRef<"input">, "aria-checked" | "aria-label" | "aria-labelledby" | "checked" | "children" | "defaultChecked" | "defaultValue" | "disabled" | "dangerouslySetInnerHTML" | "id" | "name" | "type" | "value" | "data-disabled" | "data-part" | "data-state" | "data-uiify-checkbox"> & ConsumerDataAttributes & NativeCheckControlInputOwnedAttributes;
19
- readonly label?: Omit<ComponentPropsWithRef<"label">, "children" | "dangerouslySetInnerHTML" | "htmlFor" | "id" | "data-uiify-checkbox"> & ConsumerDataAttributes & NativeCheckControlLabelOwnedAttributes;
5
+ readonly input?: SlotProps<"input">;
6
+ readonly label?: SlotProps<"label">;
20
7
  }
21
8
  export interface NativeCheckControlProps {
22
9
  readonly id: string;
@@ -31,5 +18,4 @@ export interface NativeCheckControlProps {
31
18
  readonly slotProps?: NativeCheckControlSlotProps;
32
19
  readonly "aria-label"?: string;
33
20
  }
34
- export {};
35
21
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/native-check-control/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE1E,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC;AAErD,KAAK,sCAAsC,GAAG;IAC5C,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC;IACnC,QAAQ,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IAC9B,QAAQ,CAAC,qBAAqB,CAAC,EAAE,KAAK,CAAC;CACxC,CAAC;AAEF,KAAK,sCAAsC,GAAG;IAC5C,QAAQ,CAAC,qBAAqB,CAAC,EAAE,KAAK,CAAC;IACvC,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CACnB,qBAAqB,CAAC,OAAO,CAAC,EAC5B,cAAc,GACd,YAAY,GACZ,iBAAiB,GACjB,SAAS,GACT,UAAU,GACV,gBAAgB,GAChB,cAAc,GACd,UAAU,GACV,yBAAyB,GACzB,IAAI,GACJ,MAAM,GACN,MAAM,GACN,OAAO,GACP,eAAe,GACf,WAAW,GACX,YAAY,GACZ,qBAAqB,CACxB,GACC,sBAAsB,GACtB,sCAAsC,CAAC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CACnB,qBAAqB,CAAC,OAAO,CAAC,EAC9B,UAAU,GAAG,yBAAyB,GAAG,SAAS,GAAG,IAAI,GAAG,qBAAqB,CAClF,GACC,sBAAsB,GACtB,sCAAsC,CAAC;CAC1C;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,2BAA2B,CAAC;IACjD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/internal/native-check-control/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,eAAe,CAAC;AAErD,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACtD,QAAQ,CAAC,SAAS,CAAC,EAAE,2BAA2B,CAAC;IACjD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC"}
@@ -1 +1 @@
1
- {"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../src/components/line-chart/LineChart.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAA+B,YAAY,EAAO,MAAM,OAAO,CAAC;AAiBzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAsB,MAAM,YAAY,CAAC;AAyC1F,kGAAkG;AAClG,wBAAgB,cAAc,CAAC,EAC7B,EAAE,EAAE,GAAG,EACP,KAAK,EACL,aAAa,EACb,KAAK,EACL,KAAK,EACL,GAAG,EACH,GAAG,EACH,WAAW,EACX,QAAQ,EACR,UAAU,EACV,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,GACV,EAAE,mBAAmB,GAAG,YAAY,CAmEpC;yBAnFe,cAAc;;;AAsF9B,wBAAgB,SAAS,CAAC,GAAG,SAAS,WAAW,GAAG,QAAQ,EAC1D,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,YAAY,GAAG,IAAI,CAqOrB;yBAvOe,SAAS"}
1
+ {"version":3,"file":"LineChart.d.ts","sourceRoot":"","sources":["../../../src/components/line-chart/LineChart.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAA+B,YAAY,EAAO,MAAM,OAAO,CAAC;AAkBzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAsB,MAAM,YAAY,CAAC;AA2B1F,kGAAkG;AAClG,wBAAgB,cAAc,CAAC,EAC7B,EAAE,EAAE,GAAG,EACP,KAAK,EACL,aAAa,EACb,KAAK,EACL,KAAK,EACL,GAAG,EACH,GAAG,EACH,WAAW,EACX,QAAQ,EACR,UAAU,EACV,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,GACV,EAAE,mBAAmB,GAAG,YAAY,CAgDpC;yBAhEe,cAAc;;;AAmE9B,wBAAgB,SAAS,CAAC,GAAG,SAAS,WAAW,GAAG,QAAQ,EAC1D,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GACzB,YAAY,GAAG,IAAI,CA8MrB;yBAhNe,SAAS"}