@gunkin/uiify 0.0.25-alpha → 0.0.27-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 (393) hide show
  1. package/README.md +59 -0
  2. package/agents/components.md +2 -0
  3. package/agents/index.md +1 -0
  4. package/agents/reference/components/accordion.md +4 -4
  5. package/agents/reference/components/alert-modal.md +10 -10
  6. package/agents/reference/components/alert.md +1 -1
  7. package/agents/reference/components/aspect-ratio.md +1 -1
  8. package/agents/reference/components/avatar.md +2 -2
  9. package/agents/reference/components/breadcrumb.md +9 -10
  10. package/agents/reference/components/candle-chart.md +35 -35
  11. package/agents/reference/components/carousel.md +10 -14
  12. package/agents/reference/components/collapsible.md +3 -3
  13. package/agents/reference/components/color-picker.md +6 -6
  14. package/agents/reference/components/combobox.md +7 -17
  15. package/agents/reference/components/context-menu.md +5 -26
  16. package/agents/reference/components/date-picker.md +2 -1
  17. package/agents/reference/components/drawer.md +17 -31
  18. package/agents/reference/components/dropdown-menu.md +2 -3
  19. package/agents/reference/components/field.md +11 -11
  20. package/agents/reference/components/form-error-summary.md +4 -4
  21. package/agents/reference/components/input-group.md +1 -0
  22. package/agents/reference/components/input.md +1 -0
  23. package/agents/reference/components/line-chart.md +29 -29
  24. package/agents/reference/components/modal.md +13 -15
  25. package/agents/reference/components/number-field.md +1 -1
  26. package/agents/reference/components/otp-input.md +2 -1
  27. package/agents/reference/components/pagination.md +7 -8
  28. package/agents/reference/components/rating.md +1 -1
  29. package/agents/reference/components/segmented-control.md +1 -0
  30. package/agents/reference/components/select.md +1 -0
  31. package/agents/reference/components/slider.md +4 -4
  32. package/agents/reference/components/spinner.md +1 -1
  33. package/agents/reference/components/table.md +1 -1
  34. package/agents/reference/components/tabs.md +6 -6
  35. package/agents/reference/components/tags-input.md +5 -12
  36. package/agents/reference/components/toast.md +8 -15
  37. package/agents/reference/components/toggle.md +4 -3
  38. package/agents/reference/components/virtual-scroll.md +4 -5
  39. package/agents/reference/elements/choice.md +3 -3
  40. package/agents/reference/elements/details.md +2 -2
  41. package/agents/reference/elements/popover.md +3 -3
  42. package/dist/ai/UiDocument.d.ts +16 -0
  43. package/dist/ai/UiDocument.d.ts.map +1 -0
  44. package/dist/ai/UiDocument.js +33 -0
  45. package/dist/ai/UiDocument.js.map +1 -0
  46. package/dist/ai/catalog.generated.d.ts +2766 -0
  47. package/dist/ai/catalog.generated.d.ts.map +1 -0
  48. package/dist/ai/catalog.generated.js +214 -0
  49. package/dist/ai/catalog.generated.js.map +1 -0
  50. package/dist/ai/index.d.ts +9 -0
  51. package/dist/ai/index.d.ts.map +1 -0
  52. package/dist/ai/index.js +13 -0
  53. package/dist/ai/index.js.map +1 -0
  54. package/dist/ai/issues.d.ts +10 -0
  55. package/dist/ai/issues.d.ts.map +1 -0
  56. package/dist/ai/issues.js +178 -0
  57. package/dist/ai/issues.js.map +1 -0
  58. package/dist/ai/layout.d.ts +26 -0
  59. package/dist/ai/layout.d.ts.map +1 -0
  60. package/dist/ai/layout.js +46 -0
  61. package/dist/ai/layout.js.map +1 -0
  62. package/dist/ai/limits.d.ts +16 -0
  63. package/dist/ai/limits.d.ts.map +1 -0
  64. package/dist/ai/limits.js +99 -0
  65. package/dist/ai/limits.js.map +1 -0
  66. package/dist/ai/load.d.ts +16 -0
  67. package/dist/ai/load.d.ts.map +1 -0
  68. package/dist/ai/load.js +69 -0
  69. package/dist/ai/load.js.map +1 -0
  70. package/dist/ai/loaders.generated.d.ts +5 -0
  71. package/dist/ai/loaders.generated.d.ts.map +1 -0
  72. package/dist/ai/loaders.generated.js +122 -0
  73. package/dist/ai/loaders.generated.js.map +1 -0
  74. package/dist/ai/rules.d.ts +11 -0
  75. package/dist/ai/rules.d.ts.map +1 -0
  76. package/dist/ai/rules.js +126 -0
  77. package/dist/ai/rules.js.map +1 -0
  78. package/dist/ai/schema.generated.d.ts +8 -0
  79. package/dist/ai/schema.generated.d.ts.map +1 -0
  80. package/dist/ai/schema.generated.js +3316 -0
  81. package/dist/ai/schema.generated.js.map +1 -0
  82. package/dist/ai/types.d.ts +33 -0
  83. package/dist/ai/types.d.ts.map +1 -0
  84. package/dist/ai/types.js +14 -0
  85. package/dist/ai/types.js.map +1 -0
  86. package/dist/ai/validate.d.ts +15 -0
  87. package/dist/ai/validate.d.ts.map +1 -0
  88. package/dist/ai/validate.js +32 -0
  89. package/dist/ai/validate.js.map +1 -0
  90. package/dist/ai/validator.generated.d.ts +13 -0
  91. package/dist/ai/validator.generated.d.ts.map +1 -0
  92. package/dist/ai/validator.generated.js +49133 -0
  93. package/dist/ai/validator.generated.js.map +1 -0
  94. package/dist/components/accordion/Accordion.d.ts.map +1 -1
  95. package/dist/components/accordion/Accordion.js +20 -46
  96. package/dist/components/accordion/Accordion.js.map +1 -1
  97. package/dist/components/accordion/types.d.ts +6 -15
  98. package/dist/components/accordion/types.d.ts.map +1 -1
  99. package/dist/components/alert/Alert.d.ts.map +1 -1
  100. package/dist/components/alert/Alert.js +5 -14
  101. package/dist/components/alert/Alert.js.map +1 -1
  102. package/dist/components/alert/types.d.ts +3 -7
  103. package/dist/components/alert/types.d.ts.map +1 -1
  104. package/dist/components/alert-modal/AlertModal.d.ts.map +1 -1
  105. package/dist/components/alert-modal/AlertModal.js +28 -137
  106. package/dist/components/alert-modal/AlertModal.js.map +1 -1
  107. package/dist/components/alert-modal/AlertModalParts.d.ts.map +1 -1
  108. package/dist/components/alert-modal/AlertModalParts.js +4 -37
  109. package/dist/components/alert-modal/AlertModalParts.js.map +1 -1
  110. package/dist/components/alert-modal/types.d.ts +15 -33
  111. package/dist/components/alert-modal/types.d.ts.map +1 -1
  112. package/dist/components/aspect-ratio/AspectRatio.d.ts.map +1 -1
  113. package/dist/components/aspect-ratio/AspectRatio.js +4 -12
  114. package/dist/components/aspect-ratio/AspectRatio.js.map +1 -1
  115. package/dist/components/aspect-ratio/types.d.ts +3 -6
  116. package/dist/components/aspect-ratio/types.d.ts.map +1 -1
  117. package/dist/components/avatar/Avatar.d.ts.map +1 -1
  118. package/dist/components/avatar/Avatar.js +4 -21
  119. package/dist/components/avatar/Avatar.js.map +1 -1
  120. package/dist/components/avatar/types.d.ts +4 -14
  121. package/dist/components/avatar/types.d.ts.map +1 -1
  122. package/dist/components/breadcrumb/Breadcrumb.d.ts.map +1 -1
  123. package/dist/components/breadcrumb/Breadcrumb.js +43 -123
  124. package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
  125. package/dist/components/breadcrumb/types.d.ts +12 -35
  126. package/dist/components/breadcrumb/types.d.ts.map +1 -1
  127. package/dist/components/candle-chart/CandleChart.d.ts.map +1 -1
  128. package/dist/components/candle-chart/CandleChart.js +122 -186
  129. package/dist/components/candle-chart/CandleChart.js.map +1 -1
  130. package/dist/components/candle-chart/client/CandleChartClient.d.ts.map +1 -1
  131. package/dist/components/candle-chart/client/CandleChartClient.js +8 -15
  132. package/dist/components/candle-chart/client/CandleChartClient.js.map +1 -1
  133. package/dist/components/candle-chart/types.d.ts +42 -116
  134. package/dist/components/candle-chart/types.d.ts.map +1 -1
  135. package/dist/components/carousel/CarouselMarkup.d.ts.map +1 -1
  136. package/dist/components/carousel/CarouselMarkup.js +55 -142
  137. package/dist/components/carousel/CarouselMarkup.js.map +1 -1
  138. package/dist/components/carousel/types.d.ts +13 -80
  139. package/dist/components/carousel/types.d.ts.map +1 -1
  140. package/dist/components/collapsible/Collapsible.d.ts +1 -5
  141. package/dist/components/collapsible/Collapsible.d.ts.map +1 -1
  142. package/dist/components/collapsible/Collapsible.js +3 -33
  143. package/dist/components/collapsible/Collapsible.js.map +1 -1
  144. package/dist/components/collapsible/types.d.ts +4 -18
  145. package/dist/components/collapsible/types.d.ts.map +1 -1
  146. package/dist/components/color-picker/ColorPicker.d.ts.map +1 -1
  147. package/dist/components/color-picker/ColorPicker.js +28 -123
  148. package/dist/components/color-picker/ColorPicker.js.map +1 -1
  149. package/dist/components/color-picker/types.d.ts +11 -30
  150. package/dist/components/color-picker/types.d.ts.map +1 -1
  151. package/dist/components/combobox/Combobox.d.ts.map +1 -1
  152. package/dist/components/combobox/Combobox.js +30 -23
  153. package/dist/components/combobox/Combobox.js.map +1 -1
  154. package/dist/components/combobox/types.d.ts +9 -29
  155. package/dist/components/combobox/types.d.ts.map +1 -1
  156. package/dist/components/context-menu/ContextMenu.d.ts.map +1 -1
  157. package/dist/components/context-menu/ContextMenu.js +30 -53
  158. package/dist/components/context-menu/ContextMenu.js.map +1 -1
  159. package/dist/components/context-menu/types.d.ts +6 -31
  160. package/dist/components/context-menu/types.d.ts.map +1 -1
  161. package/dist/components/date-picker/DatePicker.d.ts +1 -1
  162. package/dist/components/date-picker/DatePicker.d.ts.map +1 -1
  163. package/dist/components/date-picker/DatePicker.js +2 -1
  164. package/dist/components/date-picker/DatePicker.js.map +1 -1
  165. package/dist/components/date-picker/types.d.ts +4 -1
  166. package/dist/components/date-picker/types.d.ts.map +1 -1
  167. package/dist/components/drawer/Drawer.d.ts.map +1 -1
  168. package/dist/components/drawer/Drawer.js +12 -12
  169. package/dist/components/drawer/Drawer.js.map +1 -1
  170. package/dist/components/drawer/DrawerNative.d.ts.map +1 -1
  171. package/dist/components/drawer/DrawerNative.js +47 -252
  172. package/dist/components/drawer/DrawerNative.js.map +1 -1
  173. package/dist/components/drawer/types.d.ts +25 -30
  174. package/dist/components/drawer/types.d.ts.map +1 -1
  175. package/dist/components/dropdown-menu/DropdownMenu.d.ts.map +1 -1
  176. package/dist/components/dropdown-menu/DropdownMenu.js +30 -27
  177. package/dist/components/dropdown-menu/DropdownMenu.js.map +1 -1
  178. package/dist/components/dropdown-menu/DropdownMenuBar.d.ts.map +1 -1
  179. package/dist/components/dropdown-menu/DropdownMenuBar.js +3 -7
  180. package/dist/components/dropdown-menu/DropdownMenuBar.js.map +1 -1
  181. package/dist/components/dropdown-menu/types.d.ts +2 -5
  182. package/dist/components/dropdown-menu/types.d.ts.map +1 -1
  183. package/dist/components/field/Field.js +7 -7
  184. package/dist/components/field/Field.js.map +1 -1
  185. package/dist/components/field/types.d.ts +11 -11
  186. package/dist/components/field/types.d.ts.map +1 -1
  187. package/dist/components/form-error-summary/FormErrorSummary.d.ts.map +1 -1
  188. package/dist/components/form-error-summary/FormErrorSummary.js +20 -34
  189. package/dist/components/form-error-summary/FormErrorSummary.js.map +1 -1
  190. package/dist/components/form-error-summary/types.d.ts +6 -16
  191. package/dist/components/form-error-summary/types.d.ts.map +1 -1
  192. package/dist/components/hover-card/HoverCard.d.ts.map +1 -1
  193. package/dist/components/hover-card/HoverCard.js +9 -9
  194. package/dist/components/hover-card/HoverCard.js.map +1 -1
  195. package/dist/components/input/Input.d.ts.map +1 -1
  196. package/dist/components/input/Input.js +2 -0
  197. package/dist/components/input/Input.js.map +1 -1
  198. package/dist/components/input/types.d.ts +3 -0
  199. package/dist/components/input/types.d.ts.map +1 -1
  200. package/dist/components/input-group/InputGroup.d.ts.map +1 -1
  201. package/dist/components/input-group/InputGroup.js +2 -1
  202. package/dist/components/input-group/InputGroup.js.map +1 -1
  203. package/dist/components/input-group/types.d.ts +3 -0
  204. package/dist/components/input-group/types.d.ts.map +1 -1
  205. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.d.ts +2 -2
  206. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.d.ts.map +1 -1
  207. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.js +11 -3
  208. package/dist/components/internal/chart-scrollbar/use-scrollbar-reserve.js.map +1 -1
  209. package/dist/components/internal/choice-family/ChoiceGroup.d.ts.map +1 -1
  210. package/dist/components/internal/choice-family/ChoiceGroup.js +14 -51
  211. package/dist/components/internal/choice-family/ChoiceGroup.js.map +1 -1
  212. package/dist/components/internal/choice-family/types.d.ts +8 -40
  213. package/dist/components/internal/choice-family/types.d.ts.map +1 -1
  214. package/dist/components/internal/control-size/types.d.ts +3 -0
  215. package/dist/components/internal/control-size/types.d.ts.map +1 -0
  216. package/dist/components/internal/control-size/types.js +1 -0
  217. package/dist/components/internal/control-size/types.js.map +1 -0
  218. package/dist/components/internal/live-chart/types.d.ts +3 -1
  219. package/dist/components/internal/live-chart/types.d.ts.map +1 -1
  220. package/dist/components/internal/live-chart/use-live-chart-window.d.ts.map +1 -1
  221. package/dist/components/internal/live-chart/use-live-chart-window.js +21 -5
  222. package/dist/components/internal/live-chart/use-live-chart-window.js.map +1 -1
  223. package/dist/components/internal/menu/menu-parts.d.ts.map +1 -1
  224. package/dist/components/internal/menu/menu-parts.js +3 -3
  225. package/dist/components/internal/menu/menu-parts.js.map +1 -1
  226. package/dist/components/internal/native-check-control/NativeCheckControl.d.ts.map +1 -1
  227. package/dist/components/internal/native-check-control/NativeCheckControl.js +8 -32
  228. package/dist/components/internal/native-check-control/NativeCheckControl.js.map +1 -1
  229. package/dist/components/internal/native-check-control/types.d.ts +4 -18
  230. package/dist/components/internal/native-check-control/types.d.ts.map +1 -1
  231. package/dist/components/line-chart/LineChart.d.ts.map +1 -1
  232. package/dist/components/line-chart/LineChart.js +134 -208
  233. package/dist/components/line-chart/LineChart.js.map +1 -1
  234. package/dist/components/line-chart/client/LineChartClient.d.ts.map +1 -1
  235. package/dist/components/line-chart/client/LineChartClient.js +8 -15
  236. package/dist/components/line-chart/client/LineChartClient.js.map +1 -1
  237. package/dist/components/line-chart/types.d.ts +36 -103
  238. package/dist/components/line-chart/types.d.ts.map +1 -1
  239. package/dist/components/modal/Modal.d.ts.map +1 -1
  240. package/dist/components/modal/Modal.js +34 -115
  241. package/dist/components/modal/Modal.js.map +1 -1
  242. package/dist/components/modal/ModalAnatomy.js +6 -6
  243. package/dist/components/modal/ModalAnatomy.js.map +1 -1
  244. package/dist/components/modal/ModalParts.js +1 -1
  245. package/dist/components/modal/ModalParts.js.map +1 -1
  246. package/dist/components/modal/client/ModalClientContent.d.ts.map +1 -1
  247. package/dist/components/modal/client/ModalClientContent.js +2 -2
  248. package/dist/components/modal/client/ModalClientContent.js.map +1 -1
  249. package/dist/components/modal/types.d.ts +19 -19
  250. package/dist/components/modal/types.d.ts.map +1 -1
  251. package/dist/components/number-field/NumberField.d.ts.map +1 -1
  252. package/dist/components/number-field/NumberField.js +13 -11
  253. package/dist/components/number-field/NumberField.js.map +1 -1
  254. package/dist/components/number-field/types.d.ts +1 -1
  255. package/dist/components/number-field/types.d.ts.map +1 -1
  256. package/dist/components/otp-input/OtpInput.d.ts.map +1 -1
  257. package/dist/components/otp-input/OtpInput.js +9 -9
  258. package/dist/components/otp-input/OtpInput.js.map +1 -1
  259. package/dist/components/otp-input/types.d.ts +4 -1
  260. package/dist/components/otp-input/types.d.ts.map +1 -1
  261. package/dist/components/pagination/Pagination.d.ts.map +1 -1
  262. package/dist/components/pagination/Pagination.js +26 -69
  263. package/dist/components/pagination/Pagination.js.map +1 -1
  264. package/dist/components/pagination/PaginationShell.d.ts.map +1 -1
  265. package/dist/components/pagination/PaginationShell.js +5 -6
  266. package/dist/components/pagination/PaginationShell.js.map +1 -1
  267. package/dist/components/pagination/types.d.ts +9 -32
  268. package/dist/components/pagination/types.d.ts.map +1 -1
  269. package/dist/components/rating/types.d.ts +1 -5
  270. package/dist/components/rating/types.d.ts.map +1 -1
  271. package/dist/components/segmented-control/SegmentedControl.d.ts +1 -1
  272. package/dist/components/segmented-control/SegmentedControl.d.ts.map +1 -1
  273. package/dist/components/segmented-control/SegmentedControl.js +4 -2
  274. package/dist/components/segmented-control/SegmentedControl.js.map +1 -1
  275. package/dist/components/segmented-control/client/SegmentedControlClient.d.ts +1 -1
  276. package/dist/components/segmented-control/client/SegmentedControlClient.d.ts.map +1 -1
  277. package/dist/components/segmented-control/client/SegmentedControlClient.js +4 -2
  278. package/dist/components/segmented-control/client/SegmentedControlClient.js.map +1 -1
  279. package/dist/components/segmented-control/types.d.ts +3 -0
  280. package/dist/components/segmented-control/types.d.ts.map +1 -1
  281. package/dist/components/select/Select.d.ts.map +1 -1
  282. package/dist/components/select/Select.js +2 -0
  283. package/dist/components/select/Select.js.map +1 -1
  284. package/dist/components/select/types.d.ts +3 -0
  285. package/dist/components/select/types.d.ts.map +1 -1
  286. package/dist/components/slider/Slider.d.ts.map +1 -1
  287. package/dist/components/slider/Slider.js +12 -7
  288. package/dist/components/slider/Slider.js.map +1 -1
  289. package/dist/components/slider/client/SliderClient.d.ts.map +1 -1
  290. package/dist/components/slider/client/SliderClient.js +53 -100
  291. package/dist/components/slider/client/SliderClient.js.map +1 -1
  292. package/dist/components/slider/types.d.ts +8 -38
  293. package/dist/components/slider/types.d.ts.map +1 -1
  294. package/dist/components/spinner/Spinner.d.ts.map +1 -1
  295. package/dist/components/spinner/Spinner.js +2 -10
  296. package/dist/components/spinner/Spinner.js.map +1 -1
  297. package/dist/components/spinner/types.d.ts +3 -6
  298. package/dist/components/spinner/types.d.ts.map +1 -1
  299. package/dist/components/table/client/TableColumnHeader.d.ts.map +1 -1
  300. package/dist/components/table/client/TableColumnHeader.js +1 -15
  301. package/dist/components/table/client/TableColumnHeader.js.map +1 -1
  302. package/dist/components/table/types.d.ts +2 -6
  303. package/dist/components/table/types.d.ts.map +1 -1
  304. package/dist/components/tabs/Tabs.d.ts.map +1 -1
  305. package/dist/components/tabs/Tabs.js +9 -43
  306. package/dist/components/tabs/Tabs.js.map +1 -1
  307. package/dist/components/tabs/types.d.ts +8 -21
  308. package/dist/components/tabs/types.d.ts.map +1 -1
  309. package/dist/components/tags-input/TagsInput.d.ts.map +1 -1
  310. package/dist/components/tags-input/TagsInput.js +16 -27
  311. package/dist/components/tags-input/TagsInput.js.map +1 -1
  312. package/dist/components/tags-input/types.d.ts +8 -23
  313. package/dist/components/tags-input/types.d.ts.map +1 -1
  314. package/dist/components/toast/Toast.d.ts.map +1 -1
  315. package/dist/components/toast/Toast.js +13 -62
  316. package/dist/components/toast/Toast.js.map +1 -1
  317. package/dist/components/toast/ToastElements.d.ts.map +1 -1
  318. package/dist/components/toast/ToastElements.js +20 -57
  319. package/dist/components/toast/ToastElements.js.map +1 -1
  320. package/dist/components/toast/types.d.ts +9 -36
  321. package/dist/components/toast/types.d.ts.map +1 -1
  322. package/dist/components/toggle/Toggle.d.ts +1 -1
  323. package/dist/components/toggle/Toggle.d.ts.map +1 -1
  324. package/dist/components/toggle/Toggle.js +36 -61
  325. package/dist/components/toggle/Toggle.js.map +1 -1
  326. package/dist/components/toggle/types.d.ts +5 -24
  327. package/dist/components/toggle/types.d.ts.map +1 -1
  328. package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
  329. package/dist/components/tooltip/Tooltip.js +4 -4
  330. package/dist/components/tooltip/Tooltip.js.map +1 -1
  331. package/dist/components/virtual-scroll/VirtualScroll.d.ts.map +1 -1
  332. package/dist/components/virtual-scroll/VirtualScroll.js +66 -44
  333. package/dist/components/virtual-scroll/VirtualScroll.js.map +1 -1
  334. package/dist/components/virtual-scroll/VirtualScrollRowShell.js +2 -2
  335. package/dist/components/virtual-scroll/VirtualScrollRowShell.js.map +1 -1
  336. package/dist/components/virtual-scroll/types.d.ts +7 -20
  337. package/dist/components/virtual-scroll/types.d.ts.map +1 -1
  338. package/dist/components/virtual-scroll/types.js.map +1 -1
  339. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.d.ts +3 -0
  340. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.d.ts.map +1 -1
  341. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.js +11 -2
  342. package/dist/components/virtual-scroll/virtual-scroll-scroll-sync.js.map +1 -1
  343. package/dist/core/class-names.d.ts +3 -0
  344. package/dist/core/class-names.d.ts.map +1 -0
  345. package/dist/core/class-names.js +7 -0
  346. package/dist/core/class-names.js.map +1 -0
  347. package/dist/core/part-names.d.ts +8 -0
  348. package/dist/core/part-names.d.ts.map +1 -0
  349. package/dist/core/part-names.js +111 -0
  350. package/dist/core/part-names.js.map +1 -0
  351. package/dist/core/polymorphic.d.ts +10 -3
  352. package/dist/core/polymorphic.d.ts.map +1 -1
  353. package/dist/core/render-native-invoker.d.ts +1 -0
  354. package/dist/core/render-native-invoker.d.ts.map +1 -1
  355. package/dist/core/render-native-invoker.js +6 -6
  356. package/dist/core/render-native-invoker.js.map +1 -1
  357. package/dist/core/roving-focus.d.ts +2 -2
  358. package/dist/core/roving-focus.d.ts.map +1 -1
  359. package/dist/core/roving-focus.js +6 -7
  360. package/dist/core/roving-focus.js.map +1 -1
  361. package/dist/core/slot-props.d.ts +9 -7
  362. package/dist/core/slot-props.d.ts.map +1 -1
  363. package/dist/core/slot-props.js +4 -14
  364. package/dist/core/slot-props.js.map +1 -1
  365. package/dist/elements/choice/Choice.d.ts.map +1 -1
  366. package/dist/elements/choice/Choice.js +5 -42
  367. package/dist/elements/choice/Choice.js.map +1 -1
  368. package/dist/elements/choice/types.d.ts +4 -11
  369. package/dist/elements/choice/types.d.ts.map +1 -1
  370. package/dist/elements/details/Details.d.ts.map +1 -1
  371. package/dist/elements/details/Details.js +4 -5
  372. package/dist/elements/details/Details.js.map +1 -1
  373. package/dist/elements/details/types.d.ts +3 -3
  374. package/dist/elements/details/types.d.ts.map +1 -1
  375. package/dist/elements/dialog/Dialog.d.ts.map +1 -1
  376. package/dist/elements/dialog/Dialog.js +1 -1
  377. package/dist/elements/dialog/Dialog.js.map +1 -1
  378. package/dist/elements/invoker/Invoker.js +3 -3
  379. package/dist/elements/invoker/Invoker.js.map +1 -1
  380. package/dist/elements/popover/Popover.d.ts.map +1 -1
  381. package/dist/elements/popover/Popover.js +3 -3
  382. package/dist/elements/popover/Popover.js.map +1 -1
  383. package/dist/elements/popover/types.d.ts +6 -4
  384. package/dist/elements/popover/types.d.ts.map +1 -1
  385. package/dist/styles/index.css +1 -1
  386. package/dist/styles/tailwind.css +2 -2
  387. package/dist/styles/tokens.css +1 -1
  388. package/package.json +10 -1
  389. package/skills/uiify/SKILL.md +14 -10
  390. package/skills/uiify/references/elements/aspect-ratio.md +1 -1
  391. package/skills/uiify/references/elements/field.md +1 -1
  392. package/skills/uiify/references/elements/toggle.md +1 -0
  393. package/skills/uiify/references/guides/verification.md +13 -2
@@ -1,6 +1,6 @@
1
1
  import type { ComponentPropsWithRef, ElementType, ReactNode } from "react";
2
2
  import type { NativeButtonProps } from "@gunkin/uiify/core/render";
3
- import type { ConsumerDataAttributes } from "../../core/slot-props.js";
3
+ import type { ConsumerDataAttributes, SlotProps } from "../../core/slot-props.js";
4
4
  export interface AlertModalOwnProps {
5
5
  readonly id: string;
6
6
  readonly trigger: ReactNode;
@@ -12,58 +12,40 @@ export interface AlertModalOwnProps {
12
12
  /** Native props for each generated part; the AlertModal root takes props directly. */
13
13
  readonly slotProps?: AlertModalSlotProps;
14
14
  }
15
- type AlertModalSlotElementProps<T extends ElementType, TProtected extends string = never> = Omit<ComponentPropsWithRef<T>, "children" | "dangerouslySetInnerHTML" | TProtected> & ConsumerDataAttributes & {
16
- readonly [K in TProtected]?: never;
15
+ type AlertModalInvokerSlotProps = Omit<SlotProps<"button">, "popoverTarget" | "popoverTargetAction"> & {
16
+ readonly command?: string | undefined;
17
+ readonly commandfor?: string | undefined;
17
18
  };
18
- type AlertModalInvokerSlotProps<TProtected extends string = never> = AlertModalSlotElementProps<"button", "type" | "command" | "commandfor" | "commandFor" | "popoverTarget" | "popoverTargetAction" | "data-part" | "data-uiify-button" | "data-uiify-alert-modal" | TProtected>;
19
- type AlertModalChoiceSlotProps = AlertModalInvokerSlotProps<"value" | "data-variant">;
20
19
  export interface AlertModalSlotProps {
21
20
  readonly trigger?: AlertModalInvokerSlotProps;
22
- readonly content?: AlertModalSlotElementProps<"dialog", "id" | "role" | "open" | "popover" | "aria-describedby" | "aria-labelledby" | "data-part" | "data-uiify-alert-modal">;
23
- readonly title?: AlertModalSlotElementProps<"h2", "id" | "data-part" | "data-uiify-alert-modal">;
24
- readonly description?: AlertModalSlotElementProps<"p", "id" | "data-part" | "data-uiify-alert-modal">;
25
- readonly cancel?: AlertModalChoiceSlotProps;
26
- readonly action?: AlertModalChoiceSlotProps;
21
+ readonly content?: Omit<SlotProps<"dialog">, "id" | "open" | "popover">;
22
+ readonly title?: SlotProps<"h2">;
23
+ readonly description?: SlotProps<"p">;
24
+ readonly cancel?: AlertModalInvokerSlotProps;
25
+ readonly action?: AlertModalInvokerSlotProps;
27
26
  }
28
- export type AlertModalProps = AlertModalOwnProps & Omit<AlertModalSlotElementProps<"div", "data-part" | "data-uiify-alert-modal">, keyof AlertModalOwnProps>;
27
+ export type AlertModalProps = AlertModalOwnProps & Omit<SlotProps<"div">, keyof AlertModalOwnProps>;
29
28
  export interface AlertModalTriggerOwnProps {
30
29
  readonly children?: ReactNode;
31
30
  /** `id` of the `AlertModalContent` this button opens. */
32
31
  readonly target: string;
33
32
  }
34
- export type AlertModalTriggerProps<TAs extends ElementType = "button"> = Omit<NativeButtonProps<TAs, AlertModalTriggerOwnProps>, "dangerouslySetInnerHTML"> & ConsumerDataAttributes & {
35
- readonly "data-part"?: never;
36
- readonly "data-uiify-button"?: never;
37
- readonly "data-uiify-alert-modal"?: never;
38
- };
33
+ export type AlertModalTriggerProps<TAs extends ElementType = "button"> = NativeButtonProps<TAs, AlertModalTriggerOwnProps> & ConsumerDataAttributes;
39
34
  export interface AlertModalActionOwnProps {
40
35
  readonly children?: ReactNode;
41
36
  readonly target: string;
42
37
  }
43
- export type AlertModalActionProps<TAs extends ElementType = "button"> = Omit<NativeButtonProps<TAs, AlertModalActionOwnProps>, "dangerouslySetInnerHTML"> & ConsumerDataAttributes & {
44
- readonly "data-part"?: never;
45
- readonly "data-variant"?: never;
46
- readonly "data-uiify-button"?: never;
47
- readonly "data-uiify-alert-modal"?: never;
48
- };
38
+ export type AlertModalActionProps<TAs extends ElementType = "button"> = NativeButtonProps<TAs, AlertModalActionOwnProps> & ConsumerDataAttributes;
49
39
  export interface AlertModalCancelOwnProps {
50
40
  readonly children?: ReactNode;
51
41
  readonly target: string;
52
42
  }
53
- export type AlertModalCancelProps<TAs extends ElementType = "button"> = Omit<NativeButtonProps<TAs, AlertModalCancelOwnProps>, "dangerouslySetInnerHTML"> & ConsumerDataAttributes & {
54
- readonly "data-part"?: never;
55
- readonly "data-variant"?: never;
56
- readonly "data-uiify-button"?: never;
57
- readonly "data-uiify-alert-modal"?: never;
58
- };
43
+ export type AlertModalCancelProps<TAs extends ElementType = "button"> = NativeButtonProps<TAs, AlertModalCancelOwnProps> & ConsumerDataAttributes;
59
44
  export interface AlertModalContentOwnProps {
60
45
  readonly children?: ReactNode;
61
46
  readonly id: string;
62
47
  }
63
- /** `<dialog role="alertdialog">`; `role`, `open` and `popover` belong to the part. */
64
- export type AlertModalContentProps = AlertModalContentOwnProps & Omit<ComponentPropsWithRef<"dialog">, keyof AlertModalContentOwnProps | "open" | "popover" | "role" | "dangerouslySetInnerHTML"> & ConsumerDataAttributes & {
65
- readonly "data-part"?: never;
66
- readonly "data-uiify-alert-modal"?: never;
67
- };
48
+ /** `<dialog role="alertdialog">`; `open` and `popover` use the native modal contract. */
49
+ export type AlertModalContentProps = AlertModalContentOwnProps & Omit<ComponentPropsWithRef<"dialog">, keyof AlertModalContentOwnProps | "open" | "popover" | "dangerouslySetInnerHTML"> & ConsumerDataAttributes;
68
50
  export {};
69
51
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/alert-modal/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/alert-modal/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AspectRatio.d.ts","sourceRoot":"","sources":["../../../src/components/aspect-ratio/AspectRatio.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAGtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,WAAW,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EACzD,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,GAC3B,YAAY,GAAG,IAAI,CA6BrB;yBA/Be,WAAW"}
1
+ {"version":3,"file":"AspectRatio.d.ts","sourceRoot":"","sources":["../../../src/components/aspect-ratio/AspectRatio.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,wBAAgB,WAAW,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EACzD,KAAK,EAAE,gBAAgB,CAAC,GAAG,CAAC,GAC3B,YAAY,GAAG,IAAI,CA0BrB;yBA5Be,WAAW"}
@@ -1,5 +1,4 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { omitProps } from "../../core/slot-props.js";
3
2
  import { useRenderElement } from "@gunkin/uiify/core/render";
4
3
  function AspectRatio(props) {
5
4
  const { as, render, ratio, children, slotProps, ...consumerProps } = props;
@@ -8,20 +7,13 @@ function AspectRatio(props) {
8
7
  as,
9
8
  defaultTag: "div",
10
9
  props: {
11
- ...consumerProps,
12
10
  "data-uiify-aspect-ratio": "",
11
+ ...consumerProps,
13
12
  style: {
14
- ...style,
15
- ...ratio !== void 0 ? { "--uiify-aspect-ratio": Number.isFinite(ratio) && ratio > 0 ? ratio : 1 } : {}
13
+ ...ratio !== void 0 ? { "--uiify-aspect-ratio": Number.isFinite(ratio) && ratio > 0 ? ratio : 1 } : {},
14
+ ...style
16
15
  },
17
- children: /* @__PURE__ */ jsx(
18
- "div",
19
- {
20
- ...omitProps(slotProps?.content, ["data-part", "data-uiify-aspect-ratio"]),
21
- "data-part": "content",
22
- children
23
- }
24
- )
16
+ children: /* @__PURE__ */ jsx("div", { "data-part": "content", ...slotProps?.content, children })
25
17
  },
26
18
  render,
27
19
  state: {}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/aspect-ratio/AspectRatio.tsx"],"sourcesContent":["// API research: Radix UI Aspect Ratio; independently authored from UIify design notes.\nimport type { CSSProperties, ElementType, ReactElement } from \"react\";\nimport { omitProps } from \"../../core/slot-props.js\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { AspectRatioProps } from \"./types.js\";\n\nexport function AspectRatio<TAs extends ElementType = \"div\">(\n props: AspectRatioProps<TAs>,\n): ReactElement | null {\n const { as, render, ratio, children, slotProps, ...consumerProps } =\n props as AspectRatioProps<\"div\">;\n const style = (consumerProps as { style?: CSSProperties }).style;\n\n return useRenderElement({\n as,\n defaultTag: \"div\",\n props: {\n ...consumerProps,\n \"data-uiify-aspect-ratio\": \"\",\n style: {\n ...style,\n ...(ratio !== undefined\n ? { \"--uiify-aspect-ratio\": Number.isFinite(ratio) && ratio > 0 ? ratio : 1 }\n : {}),\n } as CSSProperties,\n children: (\n <div\n {...omitProps(slotProps?.content, [\"data-part\", \"data-uiify-aspect-ratio\"])}\n data-part=\"content\"\n >\n {children}\n </div>\n ),\n },\n render,\n state: {},\n });\n}\nAspectRatio.displayName = \"AspectRatio\";\n"],"mappings":"AA0BQ;AAxBR,SAAS,iBAAiB;AAC1B,SAAS,wBAAwB;AAG1B,SAAS,YACd,OACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,OAAO,UAAU,WAAW,GAAG,cAAc,IAC/D;AACF,QAAM,QAAS,cAA4C;AAE3D,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO;AAAA,MACL,GAAG;AAAA,MACH,2BAA2B;AAAA,MAC3B,OAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAI,UAAU,SACV,EAAE,wBAAwB,OAAO,SAAS,KAAK,KAAK,QAAQ,IAAI,QAAQ,EAAE,IAC1E,CAAC;AAAA,MACP;AAAA,MACA,UACE;AAAA,QAAC;AAAA;AAAA,UACE,GAAG,UAAU,WAAW,SAAS,CAAC,aAAa,yBAAyB,CAAC;AAAA,UAC1E,aAAU;AAAA,UAET;AAAA;AAAA,MACH;AAAA,IAEJ;AAAA,IACA;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AACA,YAAY,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/components/aspect-ratio/AspectRatio.tsx"],"sourcesContent":["// API research: Radix UI Aspect Ratio; independently authored from UIify design notes.\nimport type { CSSProperties, ElementType, ReactElement } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { AspectRatioProps } from \"./types.js\";\n\nexport function AspectRatio<TAs extends ElementType = \"div\">(\n props: AspectRatioProps<TAs>,\n): ReactElement | null {\n const { as, render, ratio, children, slotProps, ...consumerProps } =\n props as AspectRatioProps<\"div\">;\n const style = (consumerProps as { style?: CSSProperties }).style;\n\n return useRenderElement({\n as,\n defaultTag: \"div\",\n props: {\n \"data-uiify-aspect-ratio\": \"\",\n ...consumerProps,\n style: {\n ...(ratio !== undefined\n ? { \"--uiify-aspect-ratio\": Number.isFinite(ratio) && ratio > 0 ? ratio : 1 }\n : {}),\n ...style,\n } as CSSProperties,\n children: (\n <div data-part=\"content\" {...slotProps?.content}>\n {children}\n </div>\n ),\n },\n render,\n state: {},\n });\n}\nAspectRatio.displayName = \"AspectRatio\";\n"],"mappings":"AAyBQ;AAvBR,SAAS,wBAAwB;AAG1B,SAAS,YACd,OACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,OAAO,UAAU,WAAW,GAAG,cAAc,IAC/D;AACF,QAAM,QAAS,cAA4C;AAE3D,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO;AAAA,MACL,2BAA2B;AAAA,MAC3B,GAAG;AAAA,MACH,OAAO;AAAA,QACL,GAAI,UAAU,SACV,EAAE,wBAAwB,OAAO,SAAS,KAAK,KAAK,QAAQ,IAAI,QAAQ,EAAE,IAC1E,CAAC;AAAA,QACL,GAAG;AAAA,MACL;AAAA,MACA,UACE,oBAAC,SAAI,aAAU,WAAW,GAAG,WAAW,SACrC,UACH;AAAA,IAEJ;AAAA,IACA;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AACA,YAAY,cAAc;","names":[]}
@@ -1,5 +1,5 @@
1
- import type { ComponentPropsWithRef, ElementType, ReactNode } from "react";
2
- import type { ConsumerDataAttributes } from "../../core/slot-props.js";
1
+ import type { ElementType, ReactNode } from "react";
2
+ import type { SlotProps } from "../../core/slot-props.js";
3
3
  import type { RenderableProps } from "@gunkin/uiify/core/render";
4
4
  export interface AspectRatioOwnProps {
5
5
  /** Positive finite width / height ratio. Omit to use the CSS default (square). */
@@ -8,10 +8,7 @@ export interface AspectRatioOwnProps {
8
8
  readonly slotProps?: AspectRatioSlotProps;
9
9
  }
10
10
  export type AspectRatioProps<TAs extends ElementType = "div"> = RenderableProps<TAs, AspectRatioOwnProps, Record<string, never>, HTMLElement>;
11
- export type AspectRatioContentSlotProps = Omit<ComponentPropsWithRef<"div">, "children" | "dangerouslySetInnerHTML" | "data-part" | "data-uiify-aspect-ratio"> & {
12
- readonly "data-part"?: never;
13
- readonly "data-uiify-aspect-ratio"?: never;
14
- } & ConsumerDataAttributes;
11
+ export type AspectRatioContentSlotProps = SlotProps<"div">;
15
12
  export interface AspectRatioSlotProps {
16
13
  readonly content?: AspectRatioContentSlotProps;
17
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/aspect-ratio/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,WAAW,mBAAmB;IAClC,kFAAkF;IAClF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAC3C;AAED,MAAM,MAAM,gBAAgB,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,IAAI,eAAe,CAC7E,GAAG,EACH,mBAAmB,EACnB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,IAAI,CAC5C,qBAAqB,CAAC,KAAK,CAAC,EAC5B,UAAU,GAAG,yBAAyB,GAAG,WAAW,GAAG,yBAAyB,CACjF,GAAG;IACF,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,yBAAyB,CAAC,EAAE,KAAK,CAAC;CAC5C,GAAG,sBAAsB,CAAC;AAE3B,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAC;CAChD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/aspect-ratio/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,WAAW,mBAAmB;IAClC,kFAAkF;IAClF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAC3C;AAED,MAAM,MAAM,gBAAgB,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,IAAI,eAAe,CAC7E,GAAG,EACH,mBAAmB,EACnB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;AAE3D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,2BAA2B,CAAC;CAChD"}
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAGvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wBAAgB,MAAM,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,EACrD,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GACtB,YAAY,GAAG,IAAI,CAkCrB;yBApCe,MAAM"}
1
+ {"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/Avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wBAAgB,MAAM,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,EACrD,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GACtB,YAAY,GAAG,IAAI,CAyBrB;yBA3Be,MAAM"}
@@ -1,5 +1,4 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { omitProps } from "../../core/slot-props.js";
3
2
  import { useRenderElement } from "@gunkin/uiify/core/render";
4
3
  function Avatar(props) {
5
4
  const { as, render, name, fallback, src, size, slotProps, ...consumerProps } = props;
@@ -7,28 +6,12 @@ function Avatar(props) {
7
6
  as,
8
7
  defaultTag: "span",
9
8
  props: {
10
- ...consumerProps,
11
- role: consumerProps.role ?? "img",
12
- "aria-label": consumerProps["aria-label"] ?? name,
9
+ role: "img",
10
+ "aria-label": name,
13
11
  "data-uiify-avatar": "",
14
12
  ...size !== void 0 ? { "data-size": size } : {},
15
- children: src !== void 0 ? /* @__PURE__ */ jsx(
16
- "img",
17
- {
18
- ...omitProps(slotProps?.image, ["alt", "data-part", "data-uiify-avatar", "src"]),
19
- "data-part": "image",
20
- src,
21
- alt: ""
22
- }
23
- ) : /* @__PURE__ */ jsx(
24
- "span",
25
- {
26
- ...omitProps(slotProps?.fallback, ["aria-hidden", "data-part", "data-uiify-avatar"]),
27
- "data-part": "fallback",
28
- "aria-hidden": "true",
29
- children: fallback
30
- }
31
- )
13
+ ...consumerProps,
14
+ children: src !== void 0 ? /* @__PURE__ */ jsx("img", { "data-part": "image", src, alt: "", ...slotProps?.image }) : /* @__PURE__ */ jsx("span", { "data-part": "fallback", "aria-hidden": "true", ...slotProps?.fallback, children: fallback })
32
15
  },
33
16
  render,
34
17
  state: {}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/avatar/Avatar.tsx"],"sourcesContent":["import type { ElementType, ReactElement } from \"react\";\nimport { omitProps } from \"../../core/slot-props.js\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { AvatarProps } from \"./types.js\";\n\nexport function Avatar<TAs extends ElementType = \"span\">(\n props: AvatarProps<TAs>,\n): ReactElement | null {\n const { as, render, name, fallback, src, size, slotProps, ...consumerProps } =\n props as AvatarProps<\"span\">;\n\n return useRenderElement({\n as,\n defaultTag: \"span\",\n props: {\n ...consumerProps,\n role: (consumerProps as { role?: string }).role ?? \"img\",\n \"aria-label\": (consumerProps as { \"aria-label\"?: string })[\"aria-label\"] ?? name,\n \"data-uiify-avatar\": \"\",\n ...(size !== undefined ? { \"data-size\": size } : {}),\n children:\n src !== undefined ? (\n <img\n {...omitProps(slotProps?.image, [\"alt\", \"data-part\", \"data-uiify-avatar\", \"src\"])}\n data-part=\"image\"\n src={src}\n alt=\"\"\n />\n ) : (\n <span\n {...omitProps(slotProps?.fallback, [\"aria-hidden\", \"data-part\", \"data-uiify-avatar\"])}\n data-part=\"fallback\"\n aria-hidden=\"true\"\n >\n {fallback}\n </span>\n ),\n },\n render,\n state: {},\n });\n}\n\nAvatar.displayName = \"Avatar\";\n"],"mappings":"AAsBU;AArBV,SAAS,iBAAiB;AAC1B,SAAS,wBAAwB;AAG1B,SAAS,OACd,OACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,MAAM,UAAU,KAAK,MAAM,WAAW,GAAG,cAAc,IACzE;AAEF,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO;AAAA,MACL,GAAG;AAAA,MACH,MAAO,cAAoC,QAAQ;AAAA,MACnD,cAAe,cAA4C,YAAY,KAAK;AAAA,MAC5E,qBAAqB;AAAA,MACrB,GAAI,SAAS,SAAY,EAAE,aAAa,KAAK,IAAI,CAAC;AAAA,MAClD,UACE,QAAQ,SACN;AAAA,QAAC;AAAA;AAAA,UACE,GAAG,UAAU,WAAW,OAAO,CAAC,OAAO,aAAa,qBAAqB,KAAK,CAAC;AAAA,UAChF,aAAU;AAAA,UACV;AAAA,UACA,KAAI;AAAA;AAAA,MACN,IAEA;AAAA,QAAC;AAAA;AAAA,UACE,GAAG,UAAU,WAAW,UAAU,CAAC,eAAe,aAAa,mBAAmB,CAAC;AAAA,UACpF,aAAU;AAAA,UACV,eAAY;AAAA,UAEX;AAAA;AAAA,MACH;AAAA,IAEN;AAAA,IACA;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AAEA,OAAO,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../../src/components/avatar/Avatar.tsx"],"sourcesContent":["import type { ElementType, ReactElement } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport type { AvatarProps } from \"./types.js\";\n\nexport function Avatar<TAs extends ElementType = \"span\">(\n props: AvatarProps<TAs>,\n): ReactElement | null {\n const { as, render, name, fallback, src, size, slotProps, ...consumerProps } =\n props as AvatarProps<\"span\">;\n\n return useRenderElement({\n as,\n defaultTag: \"span\",\n props: {\n role: \"img\",\n \"aria-label\": name,\n \"data-uiify-avatar\": \"\",\n ...(size !== undefined ? { \"data-size\": size } : {}),\n ...consumerProps,\n children:\n src !== undefined ? (\n <img data-part=\"image\" src={src} alt=\"\" {...slotProps?.image} />\n ) : (\n <span data-part=\"fallback\" aria-hidden=\"true\" {...slotProps?.fallback}>\n {fallback}\n </span>\n ),\n },\n render,\n state: {},\n });\n}\n\nAvatar.displayName = \"Avatar\";\n"],"mappings":"AAqBU;AApBV,SAAS,wBAAwB;AAG1B,SAAS,OACd,OACqB;AACrB,QAAM,EAAE,IAAI,QAAQ,MAAM,UAAU,KAAK,MAAM,WAAW,GAAG,cAAc,IACzE;AAEF,SAAO,iBAAiB;AAAA,IACtB;AAAA,IACA,YAAY;AAAA,IACZ,OAAO;AAAA,MACL,MAAM;AAAA,MACN,cAAc;AAAA,MACd,qBAAqB;AAAA,MACrB,GAAI,SAAS,SAAY,EAAE,aAAa,KAAK,IAAI,CAAC;AAAA,MAClD,GAAG;AAAA,MACH,UACE,QAAQ,SACN,oBAAC,SAAI,aAAU,SAAQ,KAAU,KAAI,IAAI,GAAG,WAAW,OAAO,IAE9D,oBAAC,UAAK,aAAU,YAAW,eAAY,QAAQ,GAAG,WAAW,UAC1D,oBACH;AAAA,IAEN;AAAA,IACA;AAAA,IACA,OAAO,CAAC;AAAA,EACV,CAAC;AACH;AAEA,OAAO,cAAc;","names":[]}
@@ -1,5 +1,5 @@
1
- import type { ComponentPropsWithRef, ElementType } from "react";
2
- import type { ConsumerDataAttributes } from "../../core/slot-props.js";
1
+ import type { ElementType } from "react";
2
+ import type { SlotProps } from "../../core/slot-props.js";
3
3
  import type { RenderableProps } from "@gunkin/uiify/core/render";
4
4
  export type AvatarSize = "sm" | "md" | "lg";
5
5
  export interface AvatarOwnProps {
@@ -11,20 +11,10 @@ export interface AvatarOwnProps {
11
11
  readonly slotProps?: AvatarSlotProps;
12
12
  }
13
13
  export type AvatarProps<TAs extends ElementType = "span"> = RenderableProps<TAs, AvatarOwnProps, Record<string, never>, HTMLElement>;
14
- type AvatarImageOwnedAttributes = {
15
- readonly "data-part"?: never;
16
- readonly "data-uiify-avatar"?: never;
17
- };
18
- export type AvatarImageSlotProps = Omit<ComponentPropsWithRef<"img">, "alt" | "children" | "dangerouslySetInnerHTML" | "data-part" | "data-uiify-avatar" | "src"> & AvatarImageOwnedAttributes & ConsumerDataAttributes;
19
- type AvatarFallbackOwnedAttributes = {
20
- readonly "aria-hidden"?: never;
21
- readonly "data-part"?: never;
22
- readonly "data-uiify-avatar"?: never;
23
- };
24
- export type AvatarFallbackSlotProps = Omit<ComponentPropsWithRef<"span">, "aria-hidden" | "children" | "dangerouslySetInnerHTML" | "data-part" | "data-uiify-avatar"> & AvatarFallbackOwnedAttributes & ConsumerDataAttributes;
14
+ export type AvatarImageSlotProps = SlotProps<"img">;
15
+ export type AvatarFallbackSlotProps = SlotProps<"span">;
25
16
  export interface AvatarSlotProps {
26
17
  readonly image?: AvatarImageSlotProps;
27
18
  readonly fallback?: AvatarFallbackSlotProps;
28
19
  }
29
- export {};
30
20
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;CACtC;AAED,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,IAAI,eAAe,CACzE,GAAG,EACH,cAAc,EACd,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,qBAAqB,CAAC,KAAK,CAAC,EAC5B,KAAK,GAAG,UAAU,GAAG,yBAAyB,GAAG,WAAW,GAAG,mBAAmB,GAAG,KAAK,CAC3F,GACC,0BAA0B,GAC1B,sBAAsB,CAAC;AAEzB,KAAK,6BAA6B,GAAG;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,IAAI,CACxC,qBAAqB,CAAC,MAAM,CAAC,EAC7B,aAAa,GAAG,UAAU,GAAG,yBAAyB,GAAG,WAAW,GAAG,mBAAmB,CAC3F,GACC,6BAA6B,GAC7B,sBAAsB,CAAC;AAEzB,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC;CAC7C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/avatar/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,eAAe,CAAC;CACtC;AAED,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,IAAI,eAAe,CACzE,GAAG,EACH,cAAc,EACd,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EACrB,WAAW,CACZ,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;AAEpD,MAAM,MAAM,uBAAuB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;AAExD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC;CAC7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumb.d.ts","sourceRoot":"","sources":["../../../src/components/breadcrumb/Breadcrumb.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AAIlE,OAAO,KAAK,EAEV,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EAEnB,mBAAmB,EACnB,wBAAwB,EAExB,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AAOpB,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EAC5D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CAqBrB;AA8BD,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,IAAI,EAC3D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CA6DrB;yBA/De,cAAc;;;AAkE9B,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,IAAI,EAC3D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CAUrB;AAED,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,GAAG,EAC1D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CAwBrB;AAED,wBAAgB,mBAAmB,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,EAClE,KAAK,EAAE,wBAAwB,CAAC,GAAG,CAAC,GACnC,YAAY,GAAG,IAAI,CAerB;AAyED,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,GACV,GAAE,2BAAgC,GAAG,YAAY,CAkBjD;yBApBe,sBAAsB;;;AAuBtC,eAAO,MAAM,UAAU;;;;;;;CAOtB,CAAC"}
1
+ {"version":3,"file":"Breadcrumb.d.ts","sourceRoot":"","sources":["../../../src/components/breadcrumb/Breadcrumb.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAa,MAAM,OAAO,CAAC;AAIlE,OAAO,KAAK,EAEV,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EAEnB,mBAAmB,EACnB,wBAAwB,EAExB,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AAOpB,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,KAAK,EAC5D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CAerB;AAqBD,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,IAAI,EAC3D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CA6DrB;yBA/De,cAAc;;;AAkE9B,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,IAAI,EAC3D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CAUrB;AAED,wBAAgB,cAAc,CAAC,GAAG,SAAS,WAAW,GAAG,GAAG,EAC1D,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAC9B,YAAY,GAAG,IAAI,CAwBrB;AAED,wBAAgB,mBAAmB,CAAC,GAAG,SAAS,WAAW,GAAG,MAAM,EAClE,KAAK,EAAE,wBAAwB,CAAC,GAAG,CAAC,GACnC,YAAY,GAAG,IAAI,CAerB;AA2CD,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,GACV,GAAE,2BAAgC,GAAG,YAAY,CAQjD;yBAVe,sBAAsB;;;AAatC,eAAO,MAAM,UAAU;;;;;;;CAOtB,CAAC"}
@@ -1,57 +1,37 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { createElement } from "react";
3
3
  import { useRenderElement } from "@gunkin/uiify/core/render";
4
- import { omitProps, resolveRepeatedSlotProps } from "../../core/slot-props.js";
4
+ import { resolveRepeatedSlotProps } from "../../core/slot-props.js";
5
5
  import { collapseBreadcrumbItems } from "./breadcrumb-collapse.js";
6
6
  const DEFAULT_BREADCRUMB_LABELS = {
7
7
  root: "Breadcrumb",
8
8
  showCollapsed: "Show collapsed breadcrumbs"
9
9
  };
10
10
  function BreadcrumbRoot(props) {
11
- const {
12
- as,
13
- render,
14
- "aria-label": ariaLabel,
15
- labels,
16
- ...consumerProps
17
- } = props;
11
+ const { as, render, labels, ...consumerProps } = props;
18
12
  const resolvedLabels = { ...DEFAULT_BREADCRUMB_LABELS, ...labels };
19
13
  return useRenderElement({
20
14
  as,
21
15
  defaultTag: "nav",
22
16
  props: {
23
- ...consumerProps,
24
- "aria-label": ariaLabel ?? resolvedLabels.root,
25
- "data-uiify-breadcrumb": ""
17
+ "aria-label": resolvedLabels.root,
18
+ "data-uiify-breadcrumb": "",
19
+ ...consumerProps
26
20
  },
27
21
  render,
28
22
  state: {}
29
23
  });
30
24
  }
31
25
  function renderDataItem(item, separator, slotProps) {
32
- return /* @__PURE__ */ createElement(
33
- BreadcrumbItem,
26
+ return /* @__PURE__ */ createElement(BreadcrumbItem, { ...resolveRepeatedSlotProps(slotProps?.item, item.key), key: item.key }, /* @__PURE__ */ jsx(
27
+ BreadcrumbLink,
34
28
  {
35
- ...resolveRepeatedSlotProps(slotProps?.item, item.key, ["data-part"]),
36
- key: item.key
37
- },
38
- /* @__PURE__ */ jsx(
39
- BreadcrumbLink,
40
- {
41
- ...resolveRepeatedSlotProps(slotProps?.link, item.key, [
42
- "aria-current",
43
- "current",
44
- "data-current",
45
- "data-part",
46
- "href"
47
- ]),
48
- ...item.current !== void 0 ? { current: item.current } : {},
49
- ...item.href !== void 0 ? { href: item.href } : {},
50
- children: item.label
51
- }
52
- ),
53
- separator
54
- );
29
+ ...item.current !== void 0 ? { current: item.current } : {},
30
+ ...item.href !== void 0 ? { href: item.href } : {},
31
+ ...resolveRepeatedSlotProps(slotProps?.link, item.key),
32
+ children: item.label
33
+ }
34
+ ), separator);
55
35
  }
56
36
  function BreadcrumbList(props) {
57
37
  const {
@@ -102,7 +82,7 @@ function BreadcrumbList(props) {
102
82
  return useRenderElement({
103
83
  as,
104
84
  defaultTag: "ol",
105
- props: { ...consumerProps, children: content, "data-part": "list" },
85
+ props: { "data-part": "list", ...consumerProps, children: content },
106
86
  render,
107
87
  state: {}
108
88
  });
@@ -113,7 +93,7 @@ function BreadcrumbItem(props) {
113
93
  return useRenderElement({
114
94
  as,
115
95
  defaultTag: "li",
116
- props: { ...consumerProps, children, "data-part": "item" },
96
+ props: { "data-part": "item", ...consumerProps, children },
117
97
  render,
118
98
  state: {}
119
99
  });
@@ -131,11 +111,11 @@ function BreadcrumbLink(props) {
131
111
  as,
132
112
  defaultTag: "a",
133
113
  props: {
134
- ...consumerProps,
135
114
  "data-part": "link",
136
115
  "aria-current": current ? "page" : void 0,
137
116
  "data-current": current ? "" : void 0,
138
117
  href,
118
+ ...consumerProps,
139
119
  children
140
120
  },
141
121
  render,
@@ -152,7 +132,7 @@ function BreadcrumbSeparator(props) {
152
132
  return useRenderElement({
153
133
  as,
154
134
  defaultTag: "span",
155
- props: { ...consumerProps, "aria-hidden": true, children, "data-part": "separator" },
135
+ props: { "aria-hidden": true, "data-part": "separator", ...consumerProps, children },
156
136
  render,
157
137
  state: {}
158
138
  });
@@ -163,97 +143,37 @@ function BreadcrumbEllipsis({
163
143
  separator,
164
144
  slotProps
165
145
  }) {
166
- return /* @__PURE__ */ jsxs(
167
- BreadcrumbItem,
168
- {
169
- ...omitProps(slotProps?.ellipsisItem, ["data-part", "children", "dangerouslySetInnerHTML"]),
170
- children: [
171
- /* @__PURE__ */ jsxs(
172
- "details",
173
- {
174
- ...omitProps(slotProps?.ellipsis, [
175
- "data-part",
176
- "data-uiify-breadcrumb",
177
- "data-uiify-details",
178
- "children",
179
- "dangerouslySetInnerHTML"
180
- ]),
181
- "data-part": "ellipsis",
182
- "data-uiify-breadcrumb": "",
183
- "data-uiify-details": "",
184
- children: [
185
- /* @__PURE__ */ jsx(
186
- "summary",
187
- {
188
- ...omitProps(slotProps?.ellipsisTrigger, [
189
- "aria-label",
190
- "data-part",
191
- "data-uiify-details",
192
- "children",
193
- "dangerouslySetInnerHTML"
194
- ]),
195
- "aria-label": labels.showCollapsed,
196
- children: "\u2026"
197
- }
198
- ),
199
- /* @__PURE__ */ jsx(
200
- "ol",
201
- {
202
- ...omitProps(slotProps?.ellipsisContent, [
203
- "data-part",
204
- "data-uiify-details",
205
- "children",
206
- "dangerouslySetInnerHTML"
207
- ]),
208
- children: hiddenItems.map((item) => /* @__PURE__ */ createElement(
209
- BreadcrumbLink,
210
- {
211
- ...resolveRepeatedSlotProps(slotProps?.link, item.key, [
212
- "aria-current",
213
- "current",
214
- "data-current",
215
- "data-part",
216
- "href"
217
- ]),
218
- key: item.key,
219
- ...item.current !== void 0 ? { current: item.current } : {},
220
- ...item.href !== void 0 ? { href: item.href } : {}
221
- },
222
- item.label
223
- ))
224
- }
225
- )
226
- ]
227
- }
228
- ),
229
- separator
230
- ]
231
- }
232
- );
146
+ return /* @__PURE__ */ jsxs(BreadcrumbItem, { ...slotProps?.ellipsisItem, children: [
147
+ /* @__PURE__ */ jsxs(
148
+ "details",
149
+ {
150
+ "data-part": "ellipsis",
151
+ "data-uiify-breadcrumb": "",
152
+ "data-uiify-details": "",
153
+ ...slotProps?.ellipsis,
154
+ children: [
155
+ /* @__PURE__ */ jsx("summary", { "aria-label": labels.showCollapsed, ...slotProps?.ellipsisTrigger, children: "\u2026" }),
156
+ /* @__PURE__ */ jsx("ol", { ...slotProps?.ellipsisContent, children: hiddenItems.map((item) => /* @__PURE__ */ jsx(
157
+ BreadcrumbLink,
158
+ {
159
+ ...item.current !== void 0 ? { current: item.current } : {},
160
+ ...item.href !== void 0 ? { href: item.href } : {},
161
+ ...resolveRepeatedSlotProps(slotProps?.link, item.key),
162
+ children: item.label
163
+ },
164
+ item.key
165
+ )) })
166
+ ]
167
+ }
168
+ ),
169
+ separator
170
+ ] });
233
171
  }
234
172
  BreadcrumbEllipsis.displayName = "BreadcrumbEllipsis";
235
173
  function BreadcrumbEllipsisPart({
236
174
  slotProps
237
175
  } = {}) {
238
- return /* @__PURE__ */ jsx(
239
- BreadcrumbItem,
240
- {
241
- ...omitProps(slotProps?.item, ["data-part", "children", "dangerouslySetInnerHTML"]),
242
- children: /* @__PURE__ */ jsx(
243
- "span",
244
- {
245
- ...omitProps(slotProps?.ellipsis, [
246
- "aria-hidden",
247
- "data-part",
248
- "children",
249
- "dangerouslySetInnerHTML"
250
- ]),
251
- "aria-hidden": "true",
252
- children: "\u2026"
253
- }
254
- )
255
- }
256
- );
176
+ return /* @__PURE__ */ jsx(BreadcrumbItem, { ...slotProps?.item, children: /* @__PURE__ */ jsx("span", { "aria-hidden": "true", ...slotProps?.ellipsis, children: "\u2026" }) });
257
177
  }
258
178
  BreadcrumbEllipsisPart.displayName = "BreadcrumbEllipsisPart";
259
179
  const Breadcrumb = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import type { ElementType, ReactElement, ReactNode } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport { omitProps, resolveRepeatedSlotProps } from \"../../core/slot-props.js\";\nimport { collapseBreadcrumbItems } from \"./breadcrumb-collapse.js\";\nimport type {\n BreadcrumbLabels,\n BreadcrumbRootProps,\n BreadcrumbListProps,\n BreadcrumbItemProps,\n BreadcrumbItemData,\n BreadcrumbLinkProps,\n BreadcrumbSeparatorProps,\n BreadcrumbEllipsisProps,\n BreadcrumbEllipsisPartProps,\n} from \"./types.js\";\n\nconst DEFAULT_BREADCRUMB_LABELS: BreadcrumbLabels = {\n root: \"Breadcrumb\",\n showCollapsed: \"Show collapsed breadcrumbs\",\n};\n\nexport function BreadcrumbRoot<TAs extends ElementType = \"nav\">(\n props: BreadcrumbRootProps<TAs>,\n): ReactElement | null {\n const {\n as,\n render,\n \"aria-label\": ariaLabel,\n labels,\n ...consumerProps\n } = props as BreadcrumbRootProps<\"nav\">;\n const resolvedLabels = { ...DEFAULT_BREADCRUMB_LABELS, ...labels };\n\n return useRenderElement({\n as,\n defaultTag: \"nav\",\n props: {\n ...consumerProps,\n \"aria-label\": ariaLabel ?? resolvedLabels.root,\n \"data-uiify-breadcrumb\": \"\",\n },\n render,\n state: {},\n });\n}\n\nfunction renderDataItem(\n item: BreadcrumbItemData,\n separator: ReactNode,\n slotProps: BreadcrumbListProps[\"slotProps\"],\n): ReactElement {\n return (\n <BreadcrumbItem\n {...resolveRepeatedSlotProps(slotProps?.item, item.key, [\"data-part\"])}\n key={item.key}\n >\n <BreadcrumbLink\n {...resolveRepeatedSlotProps(slotProps?.link, item.key, [\n \"aria-current\",\n \"current\",\n \"data-current\",\n \"data-part\",\n \"href\",\n ])}\n {...(item.current !== undefined ? { current: item.current } : {})}\n {...(item.href !== undefined ? { href: item.href } : {})}\n >\n {item.label}\n </BreadcrumbLink>\n {separator}\n </BreadcrumbItem>\n );\n}\n\nexport function BreadcrumbList<TAs extends ElementType = \"ol\">(\n props: BreadcrumbListProps<TAs>,\n): ReactElement | null {\n const {\n as,\n render,\n children,\n items,\n labels,\n itemsAfterCollapse = 1,\n itemsBeforeCollapse = 1,\n maxItems,\n separator,\n slotProps,\n ...consumerProps\n } = props as BreadcrumbListProps<\"ol\">;\n const resolvedLabels = { ...DEFAULT_BREADCRUMB_LABELS, ...labels };\n\n if (maxItems !== undefined && items === undefined) {\n throw new Error(\n \"Breadcrumb.List: maxItems requires the data-driven `items` prop — collapsing can't \" +\n \"safely introspect `children` (a .map() through a wrapper component hides real \" +\n \"elements from child traversal until React actually renders them).\",\n );\n }\n\n let content: ReactNode = children;\n if (items !== undefined) {\n const collapsed =\n maxItems === undefined\n ? undefined\n : collapseBreadcrumbItems(items, maxItems, itemsBeforeCollapse, itemsAfterCollapse);\n\n content = collapsed\n ? [\n ...collapsed.before.map((item) => renderDataItem(item, separator, slotProps)),\n <BreadcrumbEllipsis\n hiddenItems={collapsed.hidden}\n key=\"ellipsis\"\n labels={resolvedLabels}\n separator={separator}\n {...(slotProps ? { slotProps } : {})}\n />,\n ...collapsed.after.map((item, index) =>\n renderDataItem(\n item,\n index === collapsed.after.length - 1 ? null : separator,\n slotProps,\n ),\n ),\n ]\n : items.map((item, index) =>\n renderDataItem(item, index === items.length - 1 ? null : separator, slotProps),\n );\n }\n\n return useRenderElement({\n as,\n defaultTag: \"ol\",\n props: { ...consumerProps, children: content, \"data-part\": \"list\" },\n render,\n state: {},\n });\n}\nBreadcrumbList.displayName = \"BreadcrumbList\";\n\nexport function BreadcrumbItem<TAs extends ElementType = \"li\">(\n props: BreadcrumbItemProps<TAs>,\n): ReactElement | null {\n const { as, render, children, ...consumerProps } = props as BreadcrumbItemProps<\"li\">;\n\n return useRenderElement({\n as,\n defaultTag: \"li\",\n props: { ...consumerProps, children, \"data-part\": \"item\" },\n render,\n state: {},\n });\n}\n\nexport function BreadcrumbLink<TAs extends ElementType = \"a\">(\n props: BreadcrumbLinkProps<TAs>,\n): ReactElement | null {\n const {\n as,\n render,\n children,\n current = false,\n href,\n ...consumerProps\n } = props as BreadcrumbLinkProps<\"a\">;\n\n return useRenderElement({\n as,\n defaultTag: \"a\",\n props: {\n ...consumerProps,\n \"data-part\": \"link\",\n \"aria-current\": current ? \"page\" : undefined,\n \"data-current\": current ? \"\" : undefined,\n href,\n children,\n },\n render,\n state: { current },\n });\n}\n\nexport function BreadcrumbSeparator<TAs extends ElementType = \"span\">(\n props: BreadcrumbSeparatorProps<TAs>,\n): ReactElement | null {\n const {\n as,\n render,\n children = \"/\",\n ...consumerProps\n } = props as BreadcrumbSeparatorProps<\"span\">;\n\n return useRenderElement({\n as,\n defaultTag: \"span\",\n props: { ...consumerProps, \"aria-hidden\": true, children, \"data-part\": \"separator\" },\n render,\n state: {},\n });\n}\n\n/**\n * Built on `@gunkin/uiify/elements/details`: `Details.Summary`/`Details.Content` are used without a\n * `part` (this trigger and panel carry no `data-part`, unlike Accordion/Collapsible's), and\n * `Details.Content` renders as `<ol>` via `as` instead of the default `<div>`.\n */\nfunction BreadcrumbEllipsis({\n hiddenItems,\n labels,\n separator,\n slotProps,\n}: BreadcrumbEllipsisProps): ReactElement {\n return (\n <BreadcrumbItem\n {...omitProps(slotProps?.ellipsisItem, [\"data-part\", \"children\", \"dangerouslySetInnerHTML\"])}\n >\n <details\n {...omitProps(slotProps?.ellipsis, [\n \"data-part\",\n \"data-uiify-breadcrumb\",\n \"data-uiify-details\",\n \"children\",\n \"dangerouslySetInnerHTML\",\n ])}\n data-part=\"ellipsis\"\n data-uiify-breadcrumb=\"\"\n data-uiify-details=\"\"\n >\n <summary\n {...omitProps(slotProps?.ellipsisTrigger, [\n \"aria-label\",\n \"data-part\",\n \"data-uiify-details\",\n \"children\",\n \"dangerouslySetInnerHTML\",\n ])}\n aria-label={labels.showCollapsed}\n >\n …\n </summary>\n <ol\n {...omitProps(slotProps?.ellipsisContent, [\n \"data-part\",\n \"data-uiify-details\",\n \"children\",\n \"dangerouslySetInnerHTML\",\n ])}\n >\n {hiddenItems.map((item) => (\n <BreadcrumbLink\n {...resolveRepeatedSlotProps(slotProps?.link, item.key, [\n \"aria-current\",\n \"current\",\n \"data-current\",\n \"data-part\",\n \"href\",\n ])}\n key={item.key}\n {...(item.current !== undefined ? { current: item.current } : {})}\n {...(item.href !== undefined ? { href: item.href } : {})}\n >\n {item.label}\n </BreadcrumbLink>\n ))}\n </ol>\n </details>\n {separator}\n </BreadcrumbItem>\n );\n}\nBreadcrumbEllipsis.displayName = \"BreadcrumbEllipsis\";\n\nexport function BreadcrumbEllipsisPart({\n slotProps,\n}: BreadcrumbEllipsisPartProps = {}): ReactElement {\n return (\n <BreadcrumbItem\n {...omitProps(slotProps?.item, [\"data-part\", \"children\", \"dangerouslySetInnerHTML\"])}\n >\n <span\n {...omitProps(slotProps?.ellipsis, [\n \"aria-hidden\",\n \"data-part\",\n \"children\",\n \"dangerouslySetInnerHTML\",\n ])}\n aria-hidden=\"true\"\n >\n …\n </span>\n </BreadcrumbItem>\n );\n}\nBreadcrumbEllipsisPart.displayName = \"BreadcrumbEllipsisPart\";\n\nexport const Breadcrumb = {\n Ellipsis: BreadcrumbEllipsisPart,\n Item: BreadcrumbItem,\n Link: BreadcrumbLink,\n List: BreadcrumbList,\n Root: BreadcrumbRoot,\n Separator: BreadcrumbSeparator,\n};\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/components/breadcrumb/Breadcrumb.tsx"],"sourcesContent":["import type { ElementType, ReactElement, ReactNode } from \"react\";\nimport { useRenderElement } from \"@gunkin/uiify/core/render\";\nimport { resolveRepeatedSlotProps } from \"../../core/slot-props.js\";\nimport { collapseBreadcrumbItems } from \"./breadcrumb-collapse.js\";\nimport type {\n BreadcrumbLabels,\n BreadcrumbRootProps,\n BreadcrumbListProps,\n BreadcrumbItemProps,\n BreadcrumbItemData,\n BreadcrumbLinkProps,\n BreadcrumbSeparatorProps,\n BreadcrumbEllipsisProps,\n BreadcrumbEllipsisPartProps,\n} from \"./types.js\";\n\nconst DEFAULT_BREADCRUMB_LABELS: BreadcrumbLabels = {\n root: \"Breadcrumb\",\n showCollapsed: \"Show collapsed breadcrumbs\",\n};\n\nexport function BreadcrumbRoot<TAs extends ElementType = \"nav\">(\n props: BreadcrumbRootProps<TAs>,\n): ReactElement | null {\n const { as, render, labels, ...consumerProps } = props as BreadcrumbRootProps<\"nav\">;\n const resolvedLabels = { ...DEFAULT_BREADCRUMB_LABELS, ...labels };\n\n return useRenderElement({\n as,\n defaultTag: \"nav\",\n props: {\n \"aria-label\": resolvedLabels.root,\n \"data-uiify-breadcrumb\": \"\",\n ...consumerProps,\n },\n render,\n state: {},\n });\n}\n\nfunction renderDataItem(\n item: BreadcrumbItemData,\n separator: ReactNode,\n slotProps: BreadcrumbListProps[\"slotProps\"],\n): ReactElement {\n return (\n <BreadcrumbItem {...resolveRepeatedSlotProps(slotProps?.item, item.key)} key={item.key}>\n <BreadcrumbLink\n {...(item.current !== undefined ? { current: item.current } : {})}\n {...(item.href !== undefined ? { href: item.href } : {})}\n {...resolveRepeatedSlotProps(slotProps?.link, item.key)}\n >\n {item.label}\n </BreadcrumbLink>\n {separator}\n </BreadcrumbItem>\n );\n}\n\nexport function BreadcrumbList<TAs extends ElementType = \"ol\">(\n props: BreadcrumbListProps<TAs>,\n): ReactElement | null {\n const {\n as,\n render,\n children,\n items,\n labels,\n itemsAfterCollapse = 1,\n itemsBeforeCollapse = 1,\n maxItems,\n separator,\n slotProps,\n ...consumerProps\n } = props as BreadcrumbListProps<\"ol\">;\n const resolvedLabels = { ...DEFAULT_BREADCRUMB_LABELS, ...labels };\n\n if (maxItems !== undefined && items === undefined) {\n throw new Error(\n \"Breadcrumb.List: maxItems requires the data-driven `items` prop — collapsing can't \" +\n \"safely introspect `children` (a .map() through a wrapper component hides real \" +\n \"elements from child traversal until React actually renders them).\",\n );\n }\n\n let content: ReactNode = children;\n if (items !== undefined) {\n const collapsed =\n maxItems === undefined\n ? undefined\n : collapseBreadcrumbItems(items, maxItems, itemsBeforeCollapse, itemsAfterCollapse);\n\n content = collapsed\n ? [\n ...collapsed.before.map((item) => renderDataItem(item, separator, slotProps)),\n <BreadcrumbEllipsis\n hiddenItems={collapsed.hidden}\n key=\"ellipsis\"\n labels={resolvedLabels}\n separator={separator}\n {...(slotProps ? { slotProps } : {})}\n />,\n ...collapsed.after.map((item, index) =>\n renderDataItem(\n item,\n index === collapsed.after.length - 1 ? null : separator,\n slotProps,\n ),\n ),\n ]\n : items.map((item, index) =>\n renderDataItem(item, index === items.length - 1 ? null : separator, slotProps),\n );\n }\n\n return useRenderElement({\n as,\n defaultTag: \"ol\",\n props: { \"data-part\": \"list\", ...consumerProps, children: content },\n render,\n state: {},\n });\n}\nBreadcrumbList.displayName = \"BreadcrumbList\";\n\nexport function BreadcrumbItem<TAs extends ElementType = \"li\">(\n props: BreadcrumbItemProps<TAs>,\n): ReactElement | null {\n const { as, render, children, ...consumerProps } = props as BreadcrumbItemProps<\"li\">;\n\n return useRenderElement({\n as,\n defaultTag: \"li\",\n props: { \"data-part\": \"item\", ...consumerProps, children },\n render,\n state: {},\n });\n}\n\nexport function BreadcrumbLink<TAs extends ElementType = \"a\">(\n props: BreadcrumbLinkProps<TAs>,\n): ReactElement | null {\n const {\n as,\n render,\n children,\n current = false,\n href,\n ...consumerProps\n } = props as BreadcrumbLinkProps<\"a\">;\n\n return useRenderElement({\n as,\n defaultTag: \"a\",\n props: {\n \"data-part\": \"link\",\n \"aria-current\": current ? \"page\" : undefined,\n \"data-current\": current ? \"\" : undefined,\n href,\n ...consumerProps,\n children,\n },\n render,\n state: { current },\n });\n}\n\nexport function BreadcrumbSeparator<TAs extends ElementType = \"span\">(\n props: BreadcrumbSeparatorProps<TAs>,\n): ReactElement | null {\n const {\n as,\n render,\n children = \"/\",\n ...consumerProps\n } = props as BreadcrumbSeparatorProps<\"span\">;\n\n return useRenderElement({\n as,\n defaultTag: \"span\",\n props: { \"aria-hidden\": true, \"data-part\": \"separator\", ...consumerProps, children },\n render,\n state: {},\n });\n}\n\n/**\n * Built on `@gunkin/uiify/elements/details`: `Details.Summary`/`Details.Content` are used without a\n * `part` (this trigger and panel carry no `data-part`, unlike Accordion/Collapsible's), and\n * `Details.Content` renders as `<ol>` via `as` instead of the default `<div>`.\n */\nfunction BreadcrumbEllipsis({\n hiddenItems,\n labels,\n separator,\n slotProps,\n}: BreadcrumbEllipsisProps): ReactElement {\n return (\n <BreadcrumbItem {...slotProps?.ellipsisItem}>\n <details\n data-part=\"ellipsis\"\n data-uiify-breadcrumb=\"\"\n data-uiify-details=\"\"\n {...slotProps?.ellipsis}\n >\n <summary aria-label={labels.showCollapsed} {...slotProps?.ellipsisTrigger}>\n …\n </summary>\n <ol {...slotProps?.ellipsisContent}>\n {hiddenItems.map((item) => (\n <BreadcrumbLink\n key={item.key}\n {...(item.current !== undefined ? { current: item.current } : {})}\n {...(item.href !== undefined ? { href: item.href } : {})}\n {...resolveRepeatedSlotProps(slotProps?.link, item.key)}\n >\n {item.label}\n </BreadcrumbLink>\n ))}\n </ol>\n </details>\n {separator}\n </BreadcrumbItem>\n );\n}\nBreadcrumbEllipsis.displayName = \"BreadcrumbEllipsis\";\n\nexport function BreadcrumbEllipsisPart({\n slotProps,\n}: BreadcrumbEllipsisPartProps = {}): ReactElement {\n return (\n <BreadcrumbItem {...slotProps?.item}>\n <span aria-hidden=\"true\" {...slotProps?.ellipsis}>\n …\n </span>\n </BreadcrumbItem>\n );\n}\nBreadcrumbEllipsisPart.displayName = \"BreadcrumbEllipsisPart\";\n\nexport const Breadcrumb = {\n Ellipsis: BreadcrumbEllipsisPart,\n Item: BreadcrumbItem,\n Link: BreadcrumbLink,\n List: BreadcrumbList,\n Root: BreadcrumbRoot,\n Separator: BreadcrumbSeparator,\n};\n"],"mappings":"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","names":[]}