@yamada-ui/react 2.2.1-dev-20260428141643 → 2.2.1-dev-20260428144932

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 (196) hide show
  1. package/dist/cjs/components/chart/use-chart.cjs +6 -16
  2. package/dist/cjs/components/chart/use-chart.cjs.map +1 -1
  3. package/dist/cjs/components/checkbox/use-checkbox-group.cjs +5 -8
  4. package/dist/cjs/components/checkbox/use-checkbox-group.cjs.map +1 -1
  5. package/dist/cjs/components/checkbox/use-checkbox.cjs +6 -7
  6. package/dist/cjs/components/checkbox/use-checkbox.cjs.map +1 -1
  7. package/dist/esm/components/chart/use-chart.js +6 -16
  8. package/dist/esm/components/chart/use-chart.js.map +1 -1
  9. package/dist/esm/components/checkbox/use-checkbox-group.js +5 -8
  10. package/dist/esm/components/checkbox/use-checkbox-group.js.map +1 -1
  11. package/dist/esm/components/checkbox/use-checkbox.js +6 -7
  12. package/dist/esm/components/checkbox/use-checkbox.js.map +1 -1
  13. package/dist/types/components/accordion/accordion.d.ts +2 -2
  14. package/dist/types/components/accordion/use-accordion.d.ts +11 -11
  15. package/dist/types/components/action-bar/action-bar.d.ts +2 -2
  16. package/dist/types/components/airy/airy.d.ts +2 -2
  17. package/dist/types/components/alert/alert.d.ts +2 -2
  18. package/dist/types/components/alert/alert.style.d.ts +1 -1
  19. package/dist/types/components/alpha-slider/alpha-slider.d.ts +2 -2
  20. package/dist/types/components/aspect-ratio/aspect-ratio.d.ts +2 -2
  21. package/dist/types/components/autocomplete/autocomplete.d.ts +2 -2
  22. package/dist/types/components/autocomplete/use-autocomplete.d.ts +5 -5
  23. package/dist/types/components/avatar/avatar.d.ts +5 -5
  24. package/dist/types/components/avatar/avatar.style.d.ts +1 -1
  25. package/dist/types/components/avatar/use-avatar-group.d.ts +2 -2
  26. package/dist/types/components/badge/badge.d.ts +2 -2
  27. package/dist/types/components/bleed/bleed.d.ts +2 -2
  28. package/dist/types/components/blockquote/blockquote.d.ts +2 -2
  29. package/dist/types/components/breadcrumb/breadcrumb.d.ts +2 -2
  30. package/dist/types/components/breadcrumb/use-breadcrumb.d.ts +2 -2
  31. package/dist/types/components/button/button.d.ts +2 -2
  32. package/dist/types/components/button/icon-button.d.ts +2 -2
  33. package/dist/types/components/calendar/calendar.d.ts +2 -2
  34. package/dist/types/components/calendar/calendar.style.d.ts +2 -2
  35. package/dist/types/components/calendar/use-calendar.d.ts +8 -8
  36. package/dist/types/components/card/card.d.ts +2 -2
  37. package/dist/types/components/carousel/carousel.d.ts +2 -2
  38. package/dist/types/components/carousel/carousel.style.d.ts +2 -2
  39. package/dist/types/components/carousel/use-carousel.d.ts +3 -3
  40. package/dist/types/components/center/center.d.ts +2 -2
  41. package/dist/types/components/chart/chart.d.ts +5 -5
  42. package/dist/types/components/chart/polar-chart.style.d.ts +1 -1
  43. package/dist/types/components/chart/use-chart.d.ts +2 -2
  44. package/dist/types/components/checkbox/checkbox.d.ts +4 -4
  45. package/dist/types/components/checkbox/use-checkbox-group.d.ts +2 -2
  46. package/dist/types/components/checkbox-card/checkbox-card.d.ts +5 -5
  47. package/dist/types/components/checkbox-card/checkbox-card.style.d.ts +1 -1
  48. package/dist/types/components/circle-progress/circle-progress.d.ts +2 -2
  49. package/dist/types/components/close-button/close-button.d.ts +2 -2
  50. package/dist/types/components/code/code.d.ts +2 -2
  51. package/dist/types/components/collapse/collapse.d.ts +2 -2
  52. package/dist/types/components/color-picker/color-picker.d.ts +2 -2
  53. package/dist/types/components/color-picker/color-picker.style.d.ts +1 -1
  54. package/dist/types/components/color-picker/use-color-picker.d.ts +2 -2
  55. package/dist/types/components/color-selector/color-selector.d.ts +2 -2
  56. package/dist/types/components/color-selector/use-color-selector.d.ts +3 -3
  57. package/dist/types/components/color-swatch/color-swatch.d.ts +2 -2
  58. package/dist/types/components/container/container.d.ts +2 -2
  59. package/dist/types/components/data-list/data-list.d.ts +2 -2
  60. package/dist/types/components/data-list/data-list.style.d.ts +1 -1
  61. package/dist/types/components/date-picker/date-picker.d.ts +2 -2
  62. package/dist/types/components/date-picker/use-date-picker.d.ts +4 -4
  63. package/dist/types/components/drawer/drawer.d.ts +2 -2
  64. package/dist/types/components/dropzone/dropzone.d.ts +5 -5
  65. package/dist/types/components/dropzone/dropzone.style.d.ts +1 -1
  66. package/dist/types/components/editable/editable.d.ts +4 -4
  67. package/dist/types/components/editable/use-editable.d.ts +2 -2
  68. package/dist/types/components/em/em.d.ts +2 -2
  69. package/dist/types/components/empty-state/empty-state.d.ts +2 -2
  70. package/dist/types/components/empty-state/empty-state.style.d.ts +2 -2
  71. package/dist/types/components/fade/fade.d.ts +2 -2
  72. package/dist/types/components/field/field.d.ts +3 -3
  73. package/dist/types/components/field/use-field-props.d.ts +3 -3
  74. package/dist/types/components/fieldset/fieldset.d.ts +3 -3
  75. package/dist/types/components/file-button/file-button.d.ts +2 -2
  76. package/dist/types/components/file-button/use-file-button.d.ts +18 -18
  77. package/dist/types/components/file-input/file-input.d.ts +2 -2
  78. package/dist/types/components/file-input/use-file-input.d.ts +15 -15
  79. package/dist/types/components/flex/flex.d.ts +2 -2
  80. package/dist/types/components/flip/flip.d.ts +4 -4
  81. package/dist/types/components/float/float.d.ts +2 -2
  82. package/dist/types/components/form/form.d.ts +3 -3
  83. package/dist/types/components/form/form.style.d.ts +1 -1
  84. package/dist/types/components/format/format-byte.d.ts +4 -4
  85. package/dist/types/components/format/format-date-time.d.ts +4 -4
  86. package/dist/types/components/format/format-number.d.ts +2 -2
  87. package/dist/types/components/grid/grid-item.d.ts +2 -2
  88. package/dist/types/components/grid/grid.d.ts +2 -2
  89. package/dist/types/components/group/group.d.ts +2 -2
  90. package/dist/types/components/group/use-group.d.ts +2 -2
  91. package/dist/types/components/heading/heading.d.ts +2 -2
  92. package/dist/types/components/hue-slider/hue-slider.d.ts +3 -3
  93. package/dist/types/components/icon/icon.d.ts +5 -5
  94. package/dist/types/components/image/image.d.ts +2 -2
  95. package/dist/types/components/indicator/indicator.d.ts +4 -4
  96. package/dist/types/components/infinite-scroll-area/infinite-scroll-area.d.ts +2 -2
  97. package/dist/types/components/input/input-addon.d.ts +2 -2
  98. package/dist/types/components/input/input-element.d.ts +2 -2
  99. package/dist/types/components/input/input.d.ts +2 -2
  100. package/dist/types/components/kbd/kbd.d.ts +2 -2
  101. package/dist/types/components/link/link.d.ts +2 -2
  102. package/dist/types/components/link-box/link-box.d.ts +2 -2
  103. package/dist/types/components/list/list.d.ts +2 -2
  104. package/dist/types/components/loading/loading-provider.d.ts +2 -2
  105. package/dist/types/components/loading/loading.d.ts +3 -3
  106. package/dist/types/components/mark/mark.d.ts +2 -2
  107. package/dist/types/components/menu/menu.d.ts +2 -2
  108. package/dist/types/components/menu/use-menu.d.ts +11 -11
  109. package/dist/types/components/modal/modal.d.ts +2 -2
  110. package/dist/types/components/native-accordion/native-accordion.d.ts +2 -2
  111. package/dist/types/components/native-accordion/use-native-accordion.d.ts +2 -2
  112. package/dist/types/components/native-popover/native-popover.d.ts +2 -2
  113. package/dist/types/components/native-select/native-select.d.ts +2 -2
  114. package/dist/types/components/native-table/native-table.d.ts +4 -4
  115. package/dist/types/components/number-input/number-input.d.ts +2 -2
  116. package/dist/types/components/pagination/pagination.d.ts +2 -2
  117. package/dist/types/components/pagination/use-pagination.d.ts +2 -2
  118. package/dist/types/components/password-input/password-input.d.ts +2 -2
  119. package/dist/types/components/password-input/strength-meter.d.ts +2 -2
  120. package/dist/types/components/password-input/use-password-input.d.ts +2 -2
  121. package/dist/types/components/pin-input/pin-input.d.ts +2 -2
  122. package/dist/types/components/pin-input/use-pin-input.d.ts +7 -7
  123. package/dist/types/components/popover/popover.d.ts +2 -2
  124. package/dist/types/components/progress/progress.d.ts +4 -4
  125. package/dist/types/components/progress/use-progress.d.ts +706 -706
  126. package/dist/types/components/qr-code/qr-code.d.ts +2 -2
  127. package/dist/types/components/radio/radio.d.ts +4 -4
  128. package/dist/types/components/radio/use-radio-group.d.ts +2 -2
  129. package/dist/types/components/radio-card/radio-card.d.ts +5 -5
  130. package/dist/types/components/radio-card/radio-card.style.d.ts +1 -1
  131. package/dist/types/components/rating/use-rating.d.ts +7 -7
  132. package/dist/types/components/reorder/reorder.d.ts +2 -2
  133. package/dist/types/components/reorder/reorder.style.d.ts +1 -1
  134. package/dist/types/components/reorder/use-reorder.d.ts +3 -3
  135. package/dist/types/components/resizable/resizable.d.ts +2 -2
  136. package/dist/types/components/resizable/resizable.style.d.ts +2 -2
  137. package/dist/types/components/resizable/use-resizable.d.ts +2 -2
  138. package/dist/types/components/ripple/ripple.d.ts +2 -2
  139. package/dist/types/components/ripple/use-ripple.d.ts +2 -2
  140. package/dist/types/components/rotate/rotate.d.ts +2 -2
  141. package/dist/types/components/saturation-slider/saturation-slider.d.ts +2 -2
  142. package/dist/types/components/saturation-slider/use-saturation-slider.d.ts +2 -2
  143. package/dist/types/components/scroll-area/scroll-area.d.ts +2 -2
  144. package/dist/types/components/segmented-control/segmented-control.d.ts +2 -2
  145. package/dist/types/components/segmented-control/use-segmented-control.d.ts +9 -9
  146. package/dist/types/components/select/select.d.ts +2 -2
  147. package/dist/types/components/select/use-select.d.ts +4 -4
  148. package/dist/types/components/separator/separator.d.ts +2 -2
  149. package/dist/types/components/sidebar/sidebar.d.ts +2 -2
  150. package/dist/types/components/sidebar/use-sidebar.d.ts +9 -9
  151. package/dist/types/components/simple-grid/simple-grid.d.ts +2 -2
  152. package/dist/types/components/skeleton/skeleton.d.ts +2 -2
  153. package/dist/types/components/slide/slide.d.ts +2 -2
  154. package/dist/types/components/slide-fade/slide-fade.d.ts +2 -2
  155. package/dist/types/components/slider/slider.d.ts +2 -2
  156. package/dist/types/components/slider/use-slider.d.ts +2 -2
  157. package/dist/types/components/stack/h-stack.d.ts +2 -2
  158. package/dist/types/components/stack/stack.d.ts +2 -2
  159. package/dist/types/components/stack/v-stack.d.ts +2 -2
  160. package/dist/types/components/stack/z-stack.d.ts +2 -2
  161. package/dist/types/components/stat/stat.d.ts +2 -2
  162. package/dist/types/components/status/status.d.ts +2 -2
  163. package/dist/types/components/steps/steps.d.ts +2 -2
  164. package/dist/types/components/steps/steps.style.d.ts +1 -1
  165. package/dist/types/components/steps/use-steps.d.ts +10 -10
  166. package/dist/types/components/switch/switch.d.ts +2 -2
  167. package/dist/types/components/table/table.d.ts +2 -2
  168. package/dist/types/components/tabs/tabs.d.ts +2 -2
  169. package/dist/types/components/tabs/use-tabs.d.ts +16 -16
  170. package/dist/types/components/tag/tag.d.ts +2 -2
  171. package/dist/types/components/text/text.d.ts +2 -2
  172. package/dist/types/components/textarea/textarea.d.ts +2 -2
  173. package/dist/types/components/textarea/use-autosize.d.ts +2 -2
  174. package/dist/types/components/timeline/timeline.d.ts +5 -5
  175. package/dist/types/components/timeline/timeline.style.d.ts +1 -1
  176. package/dist/types/components/toggle/toggle.d.ts +5 -5
  177. package/dist/types/components/toggle/use-toggle-group.d.ts +2 -2
  178. package/dist/types/components/toggle/use-toggle.d.ts +2 -2
  179. package/dist/types/components/tooltip/tooltip.d.ts +2 -2
  180. package/dist/types/components/tree/tree.d.ts +2 -2
  181. package/dist/types/components/tree/use-tree.d.ts +183 -183
  182. package/dist/types/components/visually-hidden/visually-hidden.d.ts +2 -2
  183. package/dist/types/components/wrap/wrap.d.ts +2 -2
  184. package/dist/types/core/components/create-component.d.ts +7 -7
  185. package/dist/types/core/system/color-mode-provider.d.ts +2 -2
  186. package/dist/types/core/system/styled.d.ts +2 -2
  187. package/dist/types/core/system/system-provider.d.ts +2 -2
  188. package/dist/types/hooks/use-breakpoint/use-breakpoint-state.d.ts +2 -2
  189. package/dist/types/hooks/use-clickable/index.d.ts +7 -7
  190. package/dist/types/hooks/use-clipboard/index.d.ts +2 -2
  191. package/dist/types/hooks/use-combobox/index.d.ts +12 -12
  192. package/dist/types/hooks/use-counter/index.d.ts +2 -2
  193. package/dist/types/hooks/use-descendants/index.d.ts +2 -2
  194. package/dist/types/providers/i18n-provider/i18n-provider.d.ts +3 -3
  195. package/dist/types/providers/ui-provider/ui-provider.d.ts +2 -2
  196. package/package.json +2 -2
@@ -3,6 +3,8 @@
3
3
  const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
4
4
  const require_context = require('../../utils/context.cjs');
5
5
  const require_utils_index = require('../../utils/index.cjs');
6
+ const require_props = require('../../core/components/props.cjs');
7
+ require('../../core/index.cjs');
6
8
  let react = require("react");
7
9
 
8
10
  //#region src/components/chart/use-chart.ts
@@ -76,10 +78,7 @@ const useChart = () => {
76
78
  };
77
79
  const useChartLegend = ({ placement = "start-end", align = PLACEMENT_MAP[placement].align, content, formatter, itemSorter, layout = placement.startsWith("center") ? "vertical" : "horizontal", payloadUniqBy, portal, verticalAlign = PLACEMENT_MAP[placement].verticalAlign, onBBoxUpdate, onClick, onMouseEnter, onMouseLeave, ...rest } = {}) => {
78
80
  const { highlightedDataKey, onHighlight } = useChartContext();
79
- const getRootProps = (0, react.useCallback)((props) => ({
80
- ...rest,
81
- ...props
82
- }), [rest]);
81
+ const getRootProps = (0, react.useCallback)((props) => require_props.mergeProps(rest, props)(), [rest]);
83
82
  const getLegendProps = (0, react.useCallback)((props) => ({
84
83
  align,
85
84
  content,
@@ -180,18 +179,12 @@ const useChartTooltip = ({ active, allowEscapeViewBox, animationDuration = 0, an
180
179
  useTranslate3d
181
180
  ]);
182
181
  return {
183
- getContentProps: (0, react.useCallback)((props) => ({
184
- ...rest,
185
- ...props
186
- }), [rest]),
182
+ getContentProps: (0, react.useCallback)((props) => require_props.mergeProps(rest, props)(), [rest]),
187
183
  getRootProps
188
184
  };
189
185
  };
190
186
  const useChartLabelList = ({ angle, clockWise, content, dataKey, formatter, offset = 12, position = "top", textBreakAll, valueAccessor, zIndex, ...rest } = {}) => {
191
- const getRootProps = (0, react.useCallback)((props) => ({
192
- ...rest,
193
- ...props
194
- }), [rest]);
187
+ const getRootProps = (0, react.useCallback)((props) => require_props.mergeProps(rest, props)(), [rest]);
195
188
  return {
196
189
  getLabelListProps: (0, react.useCallback)((props) => ({
197
190
  angle,
@@ -222,10 +215,7 @@ const useChartLabelList = ({ angle, clockWise, content, dataKey, formatter, offs
222
215
  };
223
216
  };
224
217
  const useChartLabel = ({ angle, children, content, formatter, labelRef, offset, parentViewBox, position, value, viewBox, zIndex, ...rest } = {}) => {
225
- const getRootProps = (0, react.useCallback)((props) => ({
226
- ...rest,
227
- ...props
228
- }), [rest]);
218
+ const getRootProps = (0, react.useCallback)((props) => require_props.mergeProps(rest, props)(), [rest]);
229
219
  return {
230
220
  getLabelProps: (0, react.useCallback)((props) => ({
231
221
  angle,
@@ -1 +1 @@
1
- {"version":3,"file":"use-chart.cjs","names":["PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n}","createContext","getRootProps: PropGetter","getLegendProps: PropGetter<LegendProps>","getRootProps: PropGetter<TooltipProps<Y, M>>","getRootProps: PropGetter<\"text\">"],"sources":["../../../../src/components/chart/use-chart.ts"],"sourcesContent":["\"use client\"\n\nimport type {\n LabelListProps,\n LabelProps,\n LegendProps,\n TooltipProps,\n} from \"recharts\"\nimport type {\n Direction,\n HTMLProps,\n PropGetter,\n RequiredPropGetter,\n} from \"../../core\"\nimport type { Merge } from \"../../utils\"\nimport { useCallback, useState } from \"react\"\nimport { createContext, dataAttr, handlerAll, isUndefined } from \"../../utils\"\n\nconst PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n} = {\n \"center-end\": { align: \"right\", verticalAlign: \"middle\" },\n \"center-end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"center-end-start\": { align: \"right\", verticalAlign: \"top\" },\n \"center-start\": { align: \"left\", verticalAlign: \"middle\" },\n \"center-start-end\": { align: \"left\", verticalAlign: \"bottom\" },\n \"center-start-start\": { align: \"left\", verticalAlign: \"top\" },\n end: { align: \"center\", verticalAlign: \"bottom\" },\n \"end-center\": { align: \"center\", verticalAlign: \"bottom\" },\n \"end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"end-start\": { align: \"left\", verticalAlign: \"bottom\" },\n start: { align: \"center\", verticalAlign: \"top\" },\n \"start-center\": { align: \"center\", verticalAlign: \"top\" },\n \"start-end\": { align: \"right\", verticalAlign: \"top\" },\n \"start-start\": { align: \"left\", verticalAlign: \"top\" },\n}\n\ninterface ChartContext extends UseChartReturn {}\n\nconst [ChartContext, useChartContext] = createContext<ChartContext>({\n name: \"ChartContext\",\n})\n\nexport { ChartContext, useChartContext }\n\nexport const useChart = () => {\n const [highlightedDataKey, setHighlightedDataKey] = useState<\n number | string | undefined\n >(undefined)\n\n const onHighlight = useCallback((dataKey?: number | string) => {\n setHighlightedDataKey(dataKey)\n }, [])\n\n return { highlightedDataKey, onHighlight }\n}\n\nexport type UseChartReturn = ReturnType<typeof useChart>\n\nexport interface UseChartLegendProps extends Merge<\n HTMLProps,\n Pick<\n LegendProps,\n | \"align\"\n | \"content\"\n | \"formatter\"\n | \"itemSorter\"\n | \"layout\"\n | \"onBBoxUpdate\"\n | \"onClick\"\n | \"onMouseEnter\"\n | \"onMouseLeave\"\n | \"payloadUniqBy\"\n | \"portal\"\n | \"verticalAlign\"\n >\n> {\n /**\n * The placement of the legend.\n *\n * @default 'start-end'\n */\n placement?: Direction\n}\n\nexport const useChartLegend = ({\n placement = \"start-end\",\n align = PLACEMENT_MAP[placement].align,\n content,\n formatter,\n itemSorter,\n layout = placement.startsWith(\"center\") ? \"vertical\" : \"horizontal\",\n payloadUniqBy,\n portal,\n verticalAlign = PLACEMENT_MAP[placement].verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...rest\n}: UseChartLegendProps = {}) => {\n const { highlightedDataKey, onHighlight } = useChartContext()\n\n const getRootProps: PropGetter = useCallback(\n (props) => ({ ...rest, ...props }),\n [rest],\n )\n\n const getLegendProps: PropGetter<LegendProps> = useCallback(\n (props) => ({\n align,\n content,\n formatter,\n itemSorter,\n layout,\n payloadUniqBy,\n portal,\n verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...props,\n }),\n [\n align,\n content,\n formatter,\n itemSorter,\n layout,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n payloadUniqBy,\n portal,\n verticalAlign,\n ],\n )\n\n const getLegendContentProps: PropGetter = useCallback(\n (props) => ({\n \"data-align\": align,\n \"data-orientation\": layout,\n \"data-vertical-align\": verticalAlign,\n ...props,\n }),\n [align, layout, verticalAlign],\n )\n\n const getLegendItemProps: RequiredPropGetter<\n \"div\",\n { dataKey?: number | string }\n > = useCallback(\n ({ dataKey, ...props }) => ({\n ...props,\n \"data-active\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey === dataKey,\n ),\n \"data-inactive\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey !== dataKey,\n ),\n onMouseEnter: handlerAll(props.onMouseEnter, () => onHighlight(dataKey)),\n onMouseLeave: handlerAll(props.onMouseLeave, () => onHighlight()),\n }),\n [highlightedDataKey, onHighlight],\n )\n\n return {\n getLegendContentProps,\n getLegendItemProps,\n getLegendProps,\n getRootProps,\n }\n}\n\nexport type UseChartLegendReturn = ReturnType<typeof useChartLegend>\n\nexport interface UseChartTooltipProps<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> extends Merge<\n HTMLProps,\n Omit<\n TooltipProps<Y, M>,\n | \"contentStyle\"\n | \"itemStyle\"\n | \"labelClassName\"\n | \"labelStyle\"\n | \"separator\"\n | \"wrapperClassName\"\n | \"wrapperStyle\"\n >\n> {}\n\nexport const useChartTooltip = <\n Y extends (number | string)[] | number | string,\n M extends number | string,\n>({\n active,\n allowEscapeViewBox,\n animationDuration = 0,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive = (animationDuration || 0) > 0,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...rest\n}: UseChartTooltipProps<Y, M> = {}) => {\n const getRootProps: PropGetter<TooltipProps<Y, M>> = useCallback(\n (props) => ({\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...props,\n }),\n [\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ],\n )\n\n const getContentProps: PropGetter = useCallback(\n (props) => ({\n ...rest,\n ...props,\n }),\n [rest],\n )\n\n return { getContentProps, getRootProps }\n}\n\nexport type UseChartTooltipReturn<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> = ReturnType<typeof useChartTooltip<Y, M>>\n\nexport interface UseChartLabelListProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelListProps,\n | \"angle\"\n | \"clockWise\"\n | \"content\"\n | \"dataKey\"\n | \"formatter\"\n | \"offset\"\n | \"position\"\n | \"textBreakAll\"\n | \"valueAccessor\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabelList = ({\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset = 12,\n position = \"top\",\n textBreakAll,\n valueAccessor,\n zIndex,\n ...rest\n}: UseChartLabelListProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => ({ ...rest, ...props }),\n [rest],\n )\n\n const getLabelListProps: PropGetter<LabelListProps> = useCallback(\n (props) => ({\n angle,\n clockWise,\n content,\n dataKey,\n fill: \"\",\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ...props,\n }),\n [\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ],\n )\n\n return { getLabelListProps, getRootProps }\n}\n\nexport type UseChartLabelListReturn = ReturnType<typeof useChartLabelList>\n\nexport interface UseChartLabelProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelProps,\n | \"angle\"\n | \"children\"\n | \"content\"\n | \"formatter\"\n | \"labelRef\"\n | \"offset\"\n | \"parentViewBox\"\n | \"position\"\n | \"value\"\n | \"viewBox\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabel = ({\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...rest\n}: UseChartLabelProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => ({ ...rest, ...props }),\n [rest],\n )\n\n const getLabelProps: PropGetter<LabelProps> = useCallback(\n (props) => ({\n angle,\n children,\n content,\n fill: \"\",\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...props,\n }),\n [\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ],\n )\n\n return { getLabelProps, getRootProps }\n}\n\nexport type UseChartLabelReturn = ReturnType<typeof useChartLabel>\n"],"mappings":";;;;;;;;AAkBA,MAAMA,gBAKF;CACF,cAAc;EAAE,OAAO;EAAS,eAAe;EAAU;CACzD,kBAAkB;EAAE,OAAO;EAAS,eAAe;EAAU;CAC7D,oBAAoB;EAAE,OAAO;EAAS,eAAe;EAAO;CAC5D,gBAAgB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC1D,oBAAoB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC9D,sBAAsB;EAAE,OAAO;EAAQ,eAAe;EAAO;CAC7D,KAAK;EAAE,OAAO;EAAU,eAAe;EAAU;CACjD,cAAc;EAAE,OAAO;EAAU,eAAe;EAAU;CAC1D,WAAW;EAAE,OAAO;EAAS,eAAe;EAAU;CACtD,aAAa;EAAE,OAAO;EAAQ,eAAe;EAAU;CACvD,OAAO;EAAE,OAAO;EAAU,eAAe;EAAO;CAChD,gBAAgB;EAAE,OAAO;EAAU,eAAe;EAAO;CACzD,aAAa;EAAE,OAAO;EAAS,eAAe;EAAO;CACrD,eAAe;EAAE,OAAO;EAAQ,eAAe;EAAO;CACvD;AAID,MAAM,CAAC,cAAc,mBAAmBC,8BAA4B,EAClE,MAAM,gBACP,CAAC;AAIF,MAAa,iBAAiB;CAC5B,MAAM,CAAC,oBAAoB,6CAEzB,OAAU;AAMZ,QAAO;EAAE;EAAoB,qCAJI,YAA8B;AAC7D,yBAAsB,QAAQ;KAC7B,EAAE,CAAC;EAEoC;;AA+B5C,MAAa,kBAAkB,EAC7B,YAAY,aACZ,QAAQ,cAAc,WAAW,OACjC,SACA,WACA,YACA,SAAS,UAAU,WAAW,SAAS,GAAG,aAAa,cACvD,eACA,QACA,gBAAgB,cAAc,WAAW,eACzC,cACA,SACA,cACA,cACA,GAAG,SACoB,EAAE,KAAK;CAC9B,MAAM,EAAE,oBAAoB,gBAAgB,iBAAiB;CAE7D,MAAMC,uCACH,WAAW;EAAE,GAAG;EAAM,GAAG;EAAO,GACjC,CAAC,KAAK,CACP;CAED,MAAMC,yCACH,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AA8BD,QAAO;EACL,+CA5BC,WAAW;GACV,cAAc;GACd,oBAAoB;GACpB,uBAAuB;GACvB,GAAG;GACJ,GACD;GAAC;GAAO;GAAQ;GAAc,CAC/B;EAsBC,4CAhBC,EAAE,SAAS,GAAG,aAAa;GAC1B,GAAG;GACH,+DACE,oDAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,iEACE,oDAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,gEAAyB,MAAM,oBAAoB,YAAY,QAAQ,CAAC;GACxE,gEAAyB,MAAM,oBAAoB,aAAa,CAAC;GAClE,GACD,CAAC,oBAAoB,YAAY,CAClC;EAKC;EACA;EACD;;AAsBH,MAAa,mBAGX,EACA,QACA,oBACA,oBAAoB,GACpB,iBACA,QACA,SACA,QACA,cACA,YACA,WACA,eACA,qBAAqB,qBAAqB,KAAK,GAC/C,YACA,gBACA,QACA,eACA,QACA,UACA,kBACA,QACA,SACA,gBACA,GAAG,SAC2B,EAAE,KAAK;CACrC,MAAMC,uCACH,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAUD,QAAO;EAAE,yCAPN,WAAW;GACV,GAAG;GACH,GAAG;GACJ,GACD,CAAC,KAAK,CACP;EAEyB;EAAc;;AAyB1C,MAAa,qBAAqB,EAChC,OACA,WACA,SACA,SACA,WACA,SAAS,IACT,WAAW,OACX,cACA,eACA,QACA,GAAG,SACuB,EAAE,KAAK;CACjC,MAAMC,uCACH,WAAW;EAAE,GAAG;EAAM,GAAG;EAAO,GACjC,CAAC,KAAK,CACP;AA+BD,QAAO;EAAE,2CA5BN,WAAW;GACV;GACA;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAE2B;EAAc;;AAuB5C,MAAa,iBAAiB,EAC5B,OACA,UACA,SACA,WACA,UACA,QACA,eACA,UACA,OACA,SACA,QACA,GAAG,SACmB,EAAE,KAAK;CAC7B,MAAMA,uCACH,WAAW;EAAE,GAAG;EAAM,GAAG;EAAO,GACjC,CAAC,KAAK,CACP;AAiCD,QAAO;EAAE,uCA9BN,WAAW;GACV;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAEuB;EAAc"}
1
+ {"version":3,"file":"use-chart.cjs","names":["PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n}","createContext","getRootProps: PropGetter","mergeProps","getLegendProps: PropGetter<LegendProps>","getRootProps: PropGetter<TooltipProps<Y, M>>","getRootProps: PropGetter<\"text\">"],"sources":["../../../../src/components/chart/use-chart.ts"],"sourcesContent":["\"use client\"\n\nimport type {\n LabelListProps,\n LabelProps,\n LegendProps,\n TooltipProps,\n} from \"recharts\"\nimport type {\n Direction,\n HTMLProps,\n PropGetter,\n RequiredPropGetter,\n} from \"../../core\"\nimport type { Merge } from \"../../utils\"\nimport { useCallback, useState } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { createContext, dataAttr, handlerAll, isUndefined } from \"../../utils\"\n\nconst PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n} = {\n \"center-end\": { align: \"right\", verticalAlign: \"middle\" },\n \"center-end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"center-end-start\": { align: \"right\", verticalAlign: \"top\" },\n \"center-start\": { align: \"left\", verticalAlign: \"middle\" },\n \"center-start-end\": { align: \"left\", verticalAlign: \"bottom\" },\n \"center-start-start\": { align: \"left\", verticalAlign: \"top\" },\n end: { align: \"center\", verticalAlign: \"bottom\" },\n \"end-center\": { align: \"center\", verticalAlign: \"bottom\" },\n \"end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"end-start\": { align: \"left\", verticalAlign: \"bottom\" },\n start: { align: \"center\", verticalAlign: \"top\" },\n \"start-center\": { align: \"center\", verticalAlign: \"top\" },\n \"start-end\": { align: \"right\", verticalAlign: \"top\" },\n \"start-start\": { align: \"left\", verticalAlign: \"top\" },\n}\n\ninterface ChartContext extends UseChartReturn {}\n\nconst [ChartContext, useChartContext] = createContext<ChartContext>({\n name: \"ChartContext\",\n})\n\nexport { ChartContext, useChartContext }\n\nexport const useChart = () => {\n const [highlightedDataKey, setHighlightedDataKey] = useState<\n number | string | undefined\n >(undefined)\n\n const onHighlight = useCallback((dataKey?: number | string) => {\n setHighlightedDataKey(dataKey)\n }, [])\n\n return { highlightedDataKey, onHighlight }\n}\n\nexport type UseChartReturn = ReturnType<typeof useChart>\n\nexport interface UseChartLegendProps extends Merge<\n HTMLProps,\n Pick<\n LegendProps,\n | \"align\"\n | \"content\"\n | \"formatter\"\n | \"itemSorter\"\n | \"layout\"\n | \"onBBoxUpdate\"\n | \"onClick\"\n | \"onMouseEnter\"\n | \"onMouseLeave\"\n | \"payloadUniqBy\"\n | \"portal\"\n | \"verticalAlign\"\n >\n> {\n /**\n * The placement of the legend.\n *\n * @default 'start-end'\n */\n placement?: Direction\n}\n\nexport const useChartLegend = ({\n placement = \"start-end\",\n align = PLACEMENT_MAP[placement].align,\n content,\n formatter,\n itemSorter,\n layout = placement.startsWith(\"center\") ? \"vertical\" : \"horizontal\",\n payloadUniqBy,\n portal,\n verticalAlign = PLACEMENT_MAP[placement].verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...rest\n}: UseChartLegendProps = {}) => {\n const { highlightedDataKey, onHighlight } = useChartContext()\n\n const getRootProps: PropGetter = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getLegendProps: PropGetter<LegendProps> = useCallback(\n (props) => ({\n align,\n content,\n formatter,\n itemSorter,\n layout,\n payloadUniqBy,\n portal,\n verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...props,\n }),\n [\n align,\n content,\n formatter,\n itemSorter,\n layout,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n payloadUniqBy,\n portal,\n verticalAlign,\n ],\n )\n\n const getLegendContentProps: PropGetter = useCallback(\n (props) => ({\n \"data-align\": align,\n \"data-orientation\": layout,\n \"data-vertical-align\": verticalAlign,\n ...props,\n }),\n [align, layout, verticalAlign],\n )\n\n const getLegendItemProps: RequiredPropGetter<\n \"div\",\n { dataKey?: number | string }\n > = useCallback(\n ({ dataKey, ...props }) => ({\n ...props,\n \"data-active\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey === dataKey,\n ),\n \"data-inactive\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey !== dataKey,\n ),\n onMouseEnter: handlerAll(props.onMouseEnter, () => onHighlight(dataKey)),\n onMouseLeave: handlerAll(props.onMouseLeave, () => onHighlight()),\n }),\n [highlightedDataKey, onHighlight],\n )\n\n return {\n getLegendContentProps,\n getLegendItemProps,\n getLegendProps,\n getRootProps,\n }\n}\n\nexport type UseChartLegendReturn = ReturnType<typeof useChartLegend>\n\nexport interface UseChartTooltipProps<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> extends Merge<\n HTMLProps,\n Omit<\n TooltipProps<Y, M>,\n | \"contentStyle\"\n | \"itemStyle\"\n | \"labelClassName\"\n | \"labelStyle\"\n | \"separator\"\n | \"wrapperClassName\"\n | \"wrapperStyle\"\n >\n> {}\n\nexport const useChartTooltip = <\n Y extends (number | string)[] | number | string,\n M extends number | string,\n>({\n active,\n allowEscapeViewBox,\n animationDuration = 0,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive = (animationDuration || 0) > 0,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...rest\n}: UseChartTooltipProps<Y, M> = {}) => {\n const getRootProps: PropGetter<TooltipProps<Y, M>> = useCallback(\n (props) => ({\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...props,\n }),\n [\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ],\n )\n\n const getContentProps: PropGetter = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n return { getContentProps, getRootProps }\n}\n\nexport type UseChartTooltipReturn<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> = ReturnType<typeof useChartTooltip<Y, M>>\n\nexport interface UseChartLabelListProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelListProps,\n | \"angle\"\n | \"clockWise\"\n | \"content\"\n | \"dataKey\"\n | \"formatter\"\n | \"offset\"\n | \"position\"\n | \"textBreakAll\"\n | \"valueAccessor\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabelList = ({\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset = 12,\n position = \"top\",\n textBreakAll,\n valueAccessor,\n zIndex,\n ...rest\n}: UseChartLabelListProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getLabelListProps: PropGetter<LabelListProps> = useCallback(\n (props) => ({\n angle,\n clockWise,\n content,\n dataKey,\n fill: \"\",\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ...props,\n }),\n [\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ],\n )\n\n return { getLabelListProps, getRootProps }\n}\n\nexport type UseChartLabelListReturn = ReturnType<typeof useChartLabelList>\n\nexport interface UseChartLabelProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelProps,\n | \"angle\"\n | \"children\"\n | \"content\"\n | \"formatter\"\n | \"labelRef\"\n | \"offset\"\n | \"parentViewBox\"\n | \"position\"\n | \"value\"\n | \"viewBox\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabel = ({\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...rest\n}: UseChartLabelProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getLabelProps: PropGetter<LabelProps> = useCallback(\n (props) => ({\n angle,\n children,\n content,\n fill: \"\",\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...props,\n }),\n [\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ],\n )\n\n return { getLabelProps, getRootProps }\n}\n\nexport type UseChartLabelReturn = ReturnType<typeof useChartLabel>\n"],"mappings":";;;;;;;;;;AAmBA,MAAMA,gBAKF;CACF,cAAc;EAAE,OAAO;EAAS,eAAe;EAAU;CACzD,kBAAkB;EAAE,OAAO;EAAS,eAAe;EAAU;CAC7D,oBAAoB;EAAE,OAAO;EAAS,eAAe;EAAO;CAC5D,gBAAgB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC1D,oBAAoB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC9D,sBAAsB;EAAE,OAAO;EAAQ,eAAe;EAAO;CAC7D,KAAK;EAAE,OAAO;EAAU,eAAe;EAAU;CACjD,cAAc;EAAE,OAAO;EAAU,eAAe;EAAU;CAC1D,WAAW;EAAE,OAAO;EAAS,eAAe;EAAU;CACtD,aAAa;EAAE,OAAO;EAAQ,eAAe;EAAU;CACvD,OAAO;EAAE,OAAO;EAAU,eAAe;EAAO;CAChD,gBAAgB;EAAE,OAAO;EAAU,eAAe;EAAO;CACzD,aAAa;EAAE,OAAO;EAAS,eAAe;EAAO;CACrD,eAAe;EAAE,OAAO;EAAQ,eAAe;EAAO;CACvD;AAID,MAAM,CAAC,cAAc,mBAAmBC,8BAA4B,EAClE,MAAM,gBACP,CAAC;AAIF,MAAa,iBAAiB;CAC5B,MAAM,CAAC,oBAAoB,6CAEzB,OAAU;AAMZ,QAAO;EAAE;EAAoB,qCAJI,YAA8B;AAC7D,yBAAsB,QAAQ;KAC7B,EAAE,CAAC;EAEoC;;AA+B5C,MAAa,kBAAkB,EAC7B,YAAY,aACZ,QAAQ,cAAc,WAAW,OACjC,SACA,WACA,YACA,SAAS,UAAU,WAAW,SAAS,GAAG,aAAa,cACvD,eACA,QACA,gBAAgB,cAAc,WAAW,eACzC,cACA,SACA,cACA,cACA,GAAG,SACoB,EAAE,KAAK;CAC9B,MAAM,EAAE,oBAAoB,gBAAgB,iBAAiB;CAE7D,MAAMC,uCACH,UAAUC,yBAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;CAED,MAAMC,yCACH,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AA8BD,QAAO;EACL,+CA5BC,WAAW;GACV,cAAc;GACd,oBAAoB;GACpB,uBAAuB;GACvB,GAAG;GACJ,GACD;GAAC;GAAO;GAAQ;GAAc,CAC/B;EAsBC,4CAhBC,EAAE,SAAS,GAAG,aAAa;GAC1B,GAAG;GACH,+DACE,oDAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,iEACE,oDAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,gEAAyB,MAAM,oBAAoB,YAAY,QAAQ,CAAC;GACxE,gEAAyB,MAAM,oBAAoB,aAAa,CAAC;GAClE,GACD,CAAC,oBAAoB,YAAY,CAClC;EAKC;EACA;EACD;;AAsBH,MAAa,mBAGX,EACA,QACA,oBACA,oBAAoB,GACpB,iBACA,QACA,SACA,QACA,cACA,YACA,WACA,eACA,qBAAqB,qBAAqB,KAAK,GAC/C,YACA,gBACA,QACA,eACA,QACA,UACA,kBACA,QACA,SACA,gBACA,GAAG,SAC2B,EAAE,KAAK;CACrC,MAAMC,uCACH,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAOD,QAAO;EAAE,yCAJN,UAAUF,yBAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;EAEyB;EAAc;;AAyB1C,MAAa,qBAAqB,EAChC,OACA,WACA,SACA,SACA,WACA,SAAS,IACT,WAAW,OACX,cACA,eACA,QACA,GAAG,SACuB,EAAE,KAAK;CACjC,MAAMG,uCACH,UAAUH,yBAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;AA+BD,QAAO;EAAE,2CA5BN,WAAW;GACV;GACA;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAE2B;EAAc;;AAuB5C,MAAa,iBAAiB,EAC5B,OACA,UACA,SACA,WACA,UACA,QACA,eACA,UACA,OACA,SACA,QACA,GAAG,SACmB,EAAE,KAAK;CAC7B,MAAMG,uCACH,UAAUH,yBAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;AAiCD,QAAO;EAAE,uCA9BN,WAAW;GACV;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAEuB;EAAc"}
@@ -3,8 +3,9 @@
3
3
  const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
4
4
  const require_context = require('../../utils/context.cjs');
5
5
  const require_dom = require('../../utils/dom.cjs');
6
- const require_ref = require('../../utils/ref.cjs');
7
6
  const require_utils_index = require('../../utils/index.cjs');
7
+ const require_props = require('../../core/components/props.cjs');
8
+ require('../../core/index.cjs');
8
9
  const require_hooks_use_controllable_state_index = require('../../hooks/use-controllable-state/index.cjs');
9
10
  const require_use_field_props = require('../field/use-field-props.cjs');
10
11
  require('../field/index.cjs');
@@ -36,15 +37,11 @@ const useCheckboxGroup = (props = {}) => {
36
37
  max,
37
38
  setValue
38
39
  ]);
39
- const getRootProps = (0, react.useCallback)(({ ref, "aria-describedby": ariaDescribedby, "aria-labelledby": ariaLabelledby, ...props$1 } = {}) => ({
40
- ...dataProps,
40
+ const getRootProps = (0, react.useCallback)(({ ref, "aria-describedby": ariaDescribedby, "aria-labelledby": ariaLabelledby, ...props$1 } = {}) => require_props.mergeProps(dataProps, {
41
41
  "aria-describedby": (0, require_utils_index.utils_exports.cx)(ariaDescribedbyProp, ariaDescribedby),
42
42
  "aria-labelledby": (0, require_utils_index.utils_exports.cx)(labelId, ariaLabelledby),
43
- role: "group",
44
- ...rest,
45
- ...props$1,
46
- ref: require_ref.mergeRefs(ref, rest.ref)
47
- }), [
43
+ role: "group"
44
+ }, rest, props$1, { ref })(), [
48
45
  ariaDescribedbyProp,
49
46
  dataProps,
50
47
  labelId,
@@ -1 +1 @@
1
- {"version":3,"file":"use-checkbox-group.cjs","names":["createContext","useFieldProps","useControllableState","getRootProps: PropGetter","props","mergeRefs","visuallyHiddenAttributes"],"sources":["../../../../src/components/checkbox/use-checkbox-group.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent } from \"react\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback } from \"react\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n createContext,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isObject,\n isString,\n isUndefined,\n mergeRefs,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\n\ninterface CheckboxGroupContext extends Omit<\n UseCheckboxGroupReturn,\n \"getRootProps\"\n> {}\n\nconst [CheckboxGroupContext, useCheckboxGroupContext] =\n createContext<CheckboxGroupContext>({\n name: \"CheckboxGroupContext\",\n strict: false,\n })\n\nexport { CheckboxGroupContext, useCheckboxGroupContext }\n\nexport interface UseCheckboxGroupProps<Y extends string = string>\n extends Omit<HTMLProps, \"defaultValue\" | \"onChange\" | \"value\">, FieldProps {\n /**\n * The initial value of the checkbox group.\n *\n * @default []\n */\n defaultValue?: Y[]\n /**\n * The maximum number of checkboxes that can be checked.\n */\n max?: number\n /**\n * The value of the checkbox group.\n */\n value?: Y[]\n /**\n * The callback fired when any children checkbox is checked or unchecked.\n */\n onChange?: (value: Y[]) => void\n}\n\nexport const useCheckboxGroup = <Y extends string = string>(\n props: UseCheckboxGroupProps<Y> = {},\n) => {\n const {\n context: { labelId } = {},\n props: {\n defaultValue = [],\n disabled,\n max,\n readOnly,\n required,\n value: valueProp,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedbyProp, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps(props)\n const interactive = !(readOnly || disabled)\n const [value, setValue] = useControllableState({\n defaultValue,\n value: valueProp,\n onChange: onChangeProp,\n })\n\n const onChange = useCallback(\n (valueOrEv: ChangeEvent<HTMLInputElement> | Y) => {\n if (!interactive) return\n\n if (isObject(valueOrEv)) valueOrEv = valueOrEv.target.value as Y\n\n setValue((prev) => {\n if (prev.includes(valueOrEv)) {\n return prev.filter((prevValue) => prevValue !== valueOrEv)\n } else if (!isNumber(max) || prev.length < max) {\n return [...prev, valueOrEv]\n } else {\n return prev\n }\n })\n },\n [interactive, max, setValue],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({\n ref,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) => ({\n ...dataProps,\n \"aria-describedby\": cx(ariaDescribedbyProp, ariaDescribedby),\n \"aria-labelledby\": cx(labelId, ariaLabelledby),\n role: \"group\",\n ...rest,\n ...props,\n ref: mergeRefs(ref, rest.ref),\n }),\n [ariaDescribedbyProp, dataProps, labelId, rest],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n (props = {}) => {\n const checked =\n !isUndefined(value) &&\n (isString(props.value) || isNumber(props.value)) &&\n value.includes(props.value as Y)\n const trulyDisabled = !checked && isNumber(max) && value.length >= max\n\n return {\n ...dataProps,\n ...ariaProps,\n type: \"checkbox\",\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": checked,\n \"aria-disabled\": ariaAttr(trulyDisabled),\n \"data-checked\": dataAttr(checked),\n \"data-disabled\": dataAttr(trulyDisabled),\n checked,\n disabled: trulyDisabled,\n readOnly,\n required,\n ...props,\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n },\n [\n ariaProps,\n dataProps,\n eventProps,\n max,\n onChange,\n readOnly,\n required,\n value,\n ],\n )\n\n const getLabelProps: PropGetter<\"label\"> = useCallback(\n (props) => ({\n ...dataProps,\n ...props,\n }),\n [dataProps],\n )\n\n return {\n max,\n value,\n getInputProps,\n getLabelProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxGroupReturn = ReturnType<typeof useCheckboxGroup>\n"],"mappings":";;;;;;;;;;;;;AA2BA,MAAM,CAAC,sBAAsB,2BAC3BA,8BAAoC;CAClC,MAAM;CACN,QAAQ;CACT,CAAC;AA0BJ,MAAa,oBACX,QAAkC,EAAE,KACjC;CACH,MAAM,EACJ,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,EACL,eAAe,EAAE,EACjB,UACA,KACA,UACA,UACA,OAAO,WACP,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,qBAAqB,GAAG,aACzD,WACA,eACEC,sCAAc,MAAM;CACxB,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,CAAC,OAAO,YAAYC,gEAAqB;EAC7C;EACA,OAAO;EACP,UAAU;EACX,CAAC;CAEF,MAAM,mCACH,cAAiD;AAChD,MAAI,CAAC,YAAa;AAElB,sDAAa,UAAU,CAAE,aAAY,UAAU,OAAO;AAEtD,YAAU,SAAS;AACjB,OAAI,KAAK,SAAS,UAAU,CAC1B,QAAO,KAAK,QAAQ,cAAc,cAAc,UAAU;YACjD,iDAAU,IAAI,IAAI,KAAK,SAAS,IACzC,QAAO,CAAC,GAAG,MAAM,UAAU;OAE3B,QAAO;IAET;IAEJ;EAAC;EAAa;EAAK;EAAS,CAC7B;CAED,MAAMC,uCACH,EACC,KACA,oBAAoB,iBACpB,mBAAmB,gBACnB,GAAGC,YACD,EAAE,MAAM;EACV,GAAG;EACH,8DAAuB,qBAAqB,gBAAgB;EAC5D,6DAAsB,SAAS,eAAe;EAC9C,MAAM;EACN,GAAG;EACH,GAAGA;EACH,KAAKC,sBAAU,KAAK,KAAK,IAAI;EAC9B,GACD;EAAC;EAAqB;EAAW;EAAS;EAAK,CAChD;AAiDD,QAAO;EACL;EACA;EACA,uCAjDC,UAAQ,EAAE,KAAK;GACd,MAAM,UACJ,oDAAa,MAAM,qDACTD,QAAM,MAAM,oDAAaA,QAAM,MAAM,KAC/C,MAAM,SAASA,QAAM,MAAW;GAClC,MAAM,gBAAgB,CAAC,2DAAoB,IAAI,IAAI,MAAM,UAAU;AAEnE,UAAO;IACL,GAAG;IACH,GAAG;IACH,MAAM;IACN,OAAOE,qCAAyB;IAChC,gBAAgB;IAChB,iEAA0B,cAAc;IACxC,gEAAyB,QAAQ;IACjC,iEAA0B,cAAc;IACxC;IACA,UAAU;IACV;IACA;IACA,GAAGF;IACH,0DAAmBA,QAAM,QAAQ,WAAW,OAAO;IACnD,4DAAqBA,QAAM,UAAU,SAAS;IAC9C,2DAAoBA,QAAM,SAAS,WAAW,QAAQ;IACvD;KAEH;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAcC,uCAXC,aAAW;GACV,GAAG;GACH,GAAGA;GACJ,GACD,CAAC,UAAU,CACZ;EAOC;EACA;EACD"}
1
+ {"version":3,"file":"use-checkbox-group.cjs","names":["createContext","useFieldProps","useControllableState","getRootProps: PropGetter","props","mergeProps","visuallyHiddenAttributes"],"sources":["../../../../src/components/checkbox/use-checkbox-group.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent } from \"react\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n createContext,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isObject,\n isString,\n isUndefined,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\n\ninterface CheckboxGroupContext extends Omit<\n UseCheckboxGroupReturn,\n \"getRootProps\"\n> {}\n\nconst [CheckboxGroupContext, useCheckboxGroupContext] =\n createContext<CheckboxGroupContext>({\n name: \"CheckboxGroupContext\",\n strict: false,\n })\n\nexport { CheckboxGroupContext, useCheckboxGroupContext }\n\nexport interface UseCheckboxGroupProps<Y extends string = string>\n extends Omit<HTMLProps, \"defaultValue\" | \"onChange\" | \"value\">, FieldProps {\n /**\n * The initial value of the checkbox group.\n *\n * @default []\n */\n defaultValue?: Y[]\n /**\n * The maximum number of checkboxes that can be checked.\n */\n max?: number\n /**\n * The value of the checkbox group.\n */\n value?: Y[]\n /**\n * The callback fired when any children checkbox is checked or unchecked.\n */\n onChange?: (value: Y[]) => void\n}\n\nexport const useCheckboxGroup = <Y extends string = string>(\n props: UseCheckboxGroupProps<Y> = {},\n) => {\n const {\n context: { labelId } = {},\n props: {\n defaultValue = [],\n disabled,\n max,\n readOnly,\n required,\n value: valueProp,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedbyProp, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps(props)\n const interactive = !(readOnly || disabled)\n const [value, setValue] = useControllableState({\n defaultValue,\n value: valueProp,\n onChange: onChangeProp,\n })\n\n const onChange = useCallback(\n (valueOrEv: ChangeEvent<HTMLInputElement> | Y) => {\n if (!interactive) return\n\n if (isObject(valueOrEv)) valueOrEv = valueOrEv.target.value as Y\n\n setValue((prev) => {\n if (prev.includes(valueOrEv)) {\n return prev.filter((prevValue) => prevValue !== valueOrEv)\n } else if (!isNumber(max) || prev.length < max) {\n return [...prev, valueOrEv]\n } else {\n return prev\n }\n })\n },\n [interactive, max, setValue],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({\n ref,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) =>\n mergeProps(\n dataProps,\n {\n \"aria-describedby\": cx(ariaDescribedbyProp, ariaDescribedby),\n \"aria-labelledby\": cx(labelId, ariaLabelledby),\n role: \"group\",\n },\n rest,\n props,\n {\n ref,\n },\n )(),\n [ariaDescribedbyProp, dataProps, labelId, rest],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n (props = {}) => {\n const checked =\n !isUndefined(value) &&\n (isString(props.value) || isNumber(props.value)) &&\n value.includes(props.value as Y)\n const trulyDisabled = !checked && isNumber(max) && value.length >= max\n\n return {\n ...dataProps,\n ...ariaProps,\n type: \"checkbox\",\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": checked,\n \"aria-disabled\": ariaAttr(trulyDisabled),\n \"data-checked\": dataAttr(checked),\n \"data-disabled\": dataAttr(trulyDisabled),\n checked,\n disabled: trulyDisabled,\n readOnly,\n required,\n ...props,\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n },\n [\n ariaProps,\n dataProps,\n eventProps,\n max,\n onChange,\n readOnly,\n required,\n value,\n ],\n )\n\n const getLabelProps: PropGetter<\"label\"> = useCallback(\n (props) => ({\n ...dataProps,\n ...props,\n }),\n [dataProps],\n )\n\n return {\n max,\n value,\n getInputProps,\n getLabelProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxGroupReturn = ReturnType<typeof useCheckboxGroup>\n"],"mappings":";;;;;;;;;;;;;;AA2BA,MAAM,CAAC,sBAAsB,2BAC3BA,8BAAoC;CAClC,MAAM;CACN,QAAQ;CACT,CAAC;AA0BJ,MAAa,oBACX,QAAkC,EAAE,KACjC;CACH,MAAM,EACJ,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,EACL,eAAe,EAAE,EACjB,UACA,KACA,UACA,UACA,OAAO,WACP,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,qBAAqB,GAAG,aACzD,WACA,eACEC,sCAAc,MAAM;CACxB,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,CAAC,OAAO,YAAYC,gEAAqB;EAC7C;EACA,OAAO;EACP,UAAU;EACX,CAAC;CAEF,MAAM,mCACH,cAAiD;AAChD,MAAI,CAAC,YAAa;AAElB,sDAAa,UAAU,CAAE,aAAY,UAAU,OAAO;AAEtD,YAAU,SAAS;AACjB,OAAI,KAAK,SAAS,UAAU,CAC1B,QAAO,KAAK,QAAQ,cAAc,cAAc,UAAU;YACjD,iDAAU,IAAI,IAAI,KAAK,SAAS,IACzC,QAAO,CAAC,GAAG,MAAM,UAAU;OAE3B,QAAO;IAET;IAEJ;EAAC;EAAa;EAAK;EAAS,CAC7B;CAED,MAAMC,uCACH,EACC,KACA,oBAAoB,iBACpB,mBAAmB,gBACnB,GAAGC,YACD,EAAE,KACJC,yBACE,WACA;EACE,8DAAuB,qBAAqB,gBAAgB;EAC5D,6DAAsB,SAAS,eAAe;EAC9C,MAAM;EACP,EACD,MACAD,SACA,EACE,KACD,CACF,EAAE,EACL;EAAC;EAAqB;EAAW;EAAS;EAAK,CAChD;AAiDD,QAAO;EACL;EACA;EACA,uCAjDC,UAAQ,EAAE,KAAK;GACd,MAAM,UACJ,oDAAa,MAAM,qDACTA,QAAM,MAAM,oDAAaA,QAAM,MAAM,KAC/C,MAAM,SAASA,QAAM,MAAW;GAClC,MAAM,gBAAgB,CAAC,2DAAoB,IAAI,IAAI,MAAM,UAAU;AAEnE,UAAO;IACL,GAAG;IACH,GAAG;IACH,MAAM;IACN,OAAOE,qCAAyB;IAChC,gBAAgB;IAChB,iEAA0B,cAAc;IACxC,gEAAyB,QAAQ;IACjC,iEAA0B,cAAc;IACxC;IACA,UAAU;IACV;IACA;IACA,GAAGF;IACH,0DAAmBA,QAAM,QAAQ,WAAW,OAAO;IACnD,4DAAqBA,QAAM,UAAU,SAAS;IAC9C,2DAAoBA,QAAM,SAAS,WAAW,QAAQ;IACvD;KAEH;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAcC,uCAXC,aAAW;GACV,GAAG;GACH,GAAGA;GACJ,GACD,CAAC,UAAU,CACZ;EAOC;EACA;EACD"}
@@ -4,6 +4,8 @@ const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
4
4
  const require_dom = require('../../utils/dom.cjs');
5
5
  const require_ref = require('../../utils/ref.cjs');
6
6
  const require_utils_index = require('../../utils/index.cjs');
7
+ const require_props = require('../../core/components/props.cjs');
8
+ require('../../core/index.cjs');
7
9
  const require_hooks_use_controllable_state_index = require('../../hooks/use-controllable-state/index.cjs');
8
10
  const require_use_field_props = require('../field/use-field-props.cjs');
9
11
  require('../field/index.cjs');
@@ -41,14 +43,11 @@ const useCheckbox = ({ "aria-describedby": ariaDescribedbyProp, ...props } = {})
41
43
  setChecked
42
44
  ]);
43
45
  const getRootProps = (0, react.useCallback)((props$1 = {}) => {
44
- const sharedProps = {
45
- ...dataProps,
46
+ const merged = require_props.mergeProps(dataProps, {
46
47
  "data-checked": (0, require_utils_index.utils_exports.dataAttr)(checked),
47
- "data-indeterminate": (0, require_utils_index.utils_exports.dataAttr)(indeterminate),
48
- ...rest,
49
- ...props$1
50
- };
51
- return getLabelProps?.(sharedProps) ?? sharedProps;
48
+ "data-indeterminate": (0, require_utils_index.utils_exports.dataAttr)(indeterminate)
49
+ }, rest, props$1)();
50
+ return getLabelProps?.(merged) ?? merged;
52
51
  }, [
53
52
  dataProps,
54
53
  checked,
@@ -1 +1 @@
1
- {"version":3,"file":"use-checkbox.cjs","names":["useCheckboxGroupContext","useFieldProps","useControllableEventState","getRootProps: PropGetter<\"label\">","props","getInputProps: PropGetter<\"input\">","ariaDescribedby","visuallyHiddenAttributes","mergeRefs"],"sources":["../../../../src/components/checkbox/use-checkbox.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent, ChangeEventHandler, FocusEventHandler } from \"react\"\nimport type { HTMLProps, HTMLRefAttributes, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback, useId } from \"react\"\nimport { useControllableEventState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isUndefined,\n mergeRefs,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\nimport { useCheckboxGroupContext } from \"./use-checkbox-group\"\n\nexport interface UseCheckboxProps<Y extends string = string>\n extends\n Omit<HTMLProps<\"label\">, \"onBlur\" | \"onChange\" | \"onFocus\" | \"ref\">,\n HTMLRefAttributes<\"input\">,\n FieldProps {\n /**\n * If `true`, the checkbox will be checked.\n */\n checked?: boolean\n /**\n * If `true`, the checkbox will be initially checked.\n *\n * @default false\n */\n defaultChecked?: boolean\n /**\n * id assigned to input.\n */\n id?: string\n /**\n * If `true`, the checkbox will be indeterminate.\n *\n * @default false\n */\n indeterminate?: boolean\n /**\n * The name of the input field in a checkbox.\n */\n name?: string\n /**\n * The value of the checkbox.\n */\n value?: Y\n /**\n * The callback invoked when the checkbox is blurred.\n */\n onBlur?: FocusEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checked state changes.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checkbox is focused.\n */\n onFocus?: FocusEventHandler<HTMLInputElement>\n}\n\nexport const useCheckbox = <Y extends string = string>({\n \"aria-describedby\": ariaDescribedbyProp,\n ...props\n}: UseCheckboxProps<Y> = {}) => {\n const group = useCheckboxGroupContext()\n const {\n max,\n value: groupValue,\n getInputProps: getGroupInputProps,\n getLabelProps,\n } = group ?? {}\n const uuid = useId()\n const {\n props: {\n id,\n ref,\n name,\n \"aria-controls\": ariaControlsProp,\n \"aria-labelledby\": ariaLabelledbyProp,\n checked: checkedProp,\n defaultChecked = false,\n disabled,\n indeterminate = false,\n readOnly,\n required,\n tabIndex,\n value,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedby, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps({\n id: group ? uuid : undefined,\n ...props,\n notSupportReadOnly: true,\n })\n const resolvedAriaDescribedby = group ? ariaDescribedbyProp : ariaDescribedby\n const resolvedChecked =\n !isUndefined(groupValue) && !isUndefined(value)\n ? groupValue.includes(value)\n : checkedProp\n const [checked, setChecked] = useControllableEventState({\n defaultValue: defaultChecked,\n value: resolvedChecked,\n onChange: onChangeProp,\n })\n const trulyDisabled =\n !checked && isNumber(max) && group && group.value.length >= max\n const interactive = !(readOnly || trulyDisabled)\n const indeterminateRef = useCallback(\n (el: HTMLInputElement | null) => {\n if (el) el.indeterminate = indeterminate\n },\n [indeterminate],\n )\n\n const onChange = useCallback(\n (ev: ChangeEvent<HTMLInputElement>) => {\n if (!interactive) return (ev.defaultPrevented = true)\n\n if (indeterminate) ev.target.checked = true\n\n setChecked(ev)\n },\n [interactive, indeterminate, setChecked],\n )\n\n const getRootProps: PropGetter<\"label\"> = useCallback(\n (props = {}) => {\n const sharedProps = {\n ...dataProps,\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n ...rest,\n ...props,\n }\n\n return getLabelProps?.(sharedProps) ?? sharedProps\n },\n [dataProps, checked, indeterminate, rest, getLabelProps],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n ({\n \"aria-controls\": ariaControls,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) => {\n const sharedProps = {\n ...dataProps,\n ...ariaProps,\n id,\n type: \"checkbox\",\n name,\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": indeterminate ? (\"mixed\" as const) : checked,\n \"aria-controls\": cx(ariaControls, ariaControlsProp),\n \"aria-describedby\": cx(resolvedAriaDescribedby, ariaDescribedby),\n \"aria-disabled\": ariaAttr(!interactive),\n \"aria-labelledby\": cx(ariaLabelledby, ariaLabelledbyProp),\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n checked,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ...props,\n ref: mergeRefs(props.ref, ref, indeterminateRef),\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n\n return getGroupInputProps?.(sharedProps) ?? sharedProps\n },\n [\n dataProps,\n ariaProps,\n id,\n name,\n indeterminate,\n checked,\n ariaControlsProp,\n resolvedAriaDescribedby,\n interactive,\n ariaLabelledbyProp,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ref,\n indeterminateRef,\n eventProps.onBlur,\n eventProps.onFocus,\n onChange,\n getGroupInputProps,\n ],\n )\n\n const getIndicatorProps: PropGetter = useCallback(\n (props = {}) => ({\n ...dataProps,\n \"aria-hidden\": \"true\",\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n ...props,\n }),\n [dataProps, checked, indeterminate],\n )\n\n return {\n checked,\n indeterminate,\n getIndicatorProps,\n getInputProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxReturn = ReturnType<typeof useCheckbox>\n"],"mappings":";;;;;;;;;;;;;AAmEA,MAAa,eAA0C,EACrD,oBAAoB,qBACpB,GAAG,UACoB,EAAE,KAAK;CAC9B,MAAM,QAAQA,oDAAyB;CACvC,MAAM,EACJ,KACA,OAAO,YACP,eAAe,oBACf,kBACE,SAAS,EAAE;CACf,MAAM,yBAAc;CACpB,MAAM,EACJ,OAAO,EACL,IACA,KACA,MACA,iBAAiB,kBACjB,mBAAmB,oBACnB,SAAS,aACT,iBAAiB,OACjB,UACA,gBAAgB,OAChB,UACA,UACA,UACA,OACA,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,iBAAiB,GAAG,aACrD,WACA,eACEC,sCAAc;EAChB,IAAI,QAAQ,OAAO;EACnB,GAAG;EACH,oBAAoB;EACrB,CAAC;CACF,MAAM,0BAA0B,QAAQ,sBAAsB;CAK9D,MAAM,CAAC,SAAS,cAAcC,qEAA0B;EACtD,cAAc;EACd,OALA,oDAAa,WAAW,IAAI,oDAAa,MAAM,GAC3C,WAAW,SAAS,MAAM,GAC1B;EAIJ,UAAU;EACX,CAAC;CACF,MAAM,gBACJ,CAAC,2DAAoB,IAAI,IAAI,SAAS,MAAM,MAAM,UAAU;CAC9D,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,2CACH,OAAgC;AAC/B,MAAI,GAAI,IAAG,gBAAgB;IAE7B,CAAC,cAAc,CAChB;CAED,MAAM,mCACH,OAAsC;AACrC,MAAI,CAAC,YAAa,QAAQ,GAAG,mBAAmB;AAEhD,MAAI,cAAe,IAAG,OAAO,UAAU;AAEvC,aAAW,GAAG;IAEhB;EAAC;EAAa;EAAe;EAAW,CACzC;CAED,MAAMC,uCACH,UAAQ,EAAE,KAAK;EACd,MAAM,cAAc;GAClB,GAAG;GACH,gEAAyB,QAAQ;GACjC,sEAA+B,cAAc;GAC7C,GAAG;GACH,GAAGC;GACJ;AAED,SAAO,gBAAgB,YAAY,IAAI;IAEzC;EAAC;EAAW;EAAS;EAAe;EAAM;EAAc,CACzD;CAED,MAAMC,wCACH,EACC,iBAAiB,cACjB,oBAAoBC,mBACpB,mBAAmB,gBACnB,GAAGF,YACD,EAAE,KAAK;EACT,MAAM,cAAc;GAClB,GAAG;GACH,GAAG;GACH;GACA,MAAM;GACN;GACA,OAAOG,qCAAyB;GAChC,gBAAgB,gBAAiB,UAAoB;GACrD,2DAAoB,cAAc,iBAAiB;GACnD,8DAAuB,yBAAyBD,kBAAgB;GAChE,iEAA0B,CAAC,YAAY;GACvC,6DAAsB,gBAAgB,mBAAmB;GACzD,gEAAyB,QAAQ;GACjC,sEAA+B,cAAc;GAC7C;GACA;GACA;GACA;GACA;GACA;GACA,GAAGF;GACH,KAAKI,sBAAUJ,QAAM,KAAK,KAAK,iBAAiB;GAChD,0DAAmBA,QAAM,QAAQ,WAAW,OAAO;GACnD,4DAAqBA,QAAM,UAAU,SAAS;GAC9C,2DAAoBA,QAAM,SAAS,WAAW,QAAQ;GACvD;AAED,SAAO,qBAAqB,YAAY,IAAI;IAE9C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;EACX,WAAW;EACX;EACA;EACD,CACF;AAaD,QAAO;EACL;EACA;EACA,2CAbC,UAAQ,EAAE,MAAM;GACf,GAAG;GACH,eAAe;GACf,gEAAyB,QAAQ;GACjC,sEAA+B,cAAc;GAC7C,GAAGA;GACJ,GACD;GAAC;GAAW;GAAS;GAAc,CACpC;EAMC;EACA;EACA;EACD"}
1
+ {"version":3,"file":"use-checkbox.cjs","names":["useCheckboxGroupContext","useFieldProps","useControllableEventState","getRootProps: PropGetter<\"label\">","mergeProps","props","getInputProps: PropGetter<\"input\">","ariaDescribedby","visuallyHiddenAttributes","mergeRefs"],"sources":["../../../../src/components/checkbox/use-checkbox.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent, ChangeEventHandler, FocusEventHandler } from \"react\"\nimport type { HTMLProps, HTMLRefAttributes, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback, useId } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { useControllableEventState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isUndefined,\n mergeRefs,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\nimport { useCheckboxGroupContext } from \"./use-checkbox-group\"\n\nexport interface UseCheckboxProps<Y extends string = string>\n extends\n Omit<HTMLProps<\"label\">, \"onBlur\" | \"onChange\" | \"onFocus\" | \"ref\">,\n HTMLRefAttributes<\"input\">,\n FieldProps {\n /**\n * If `true`, the checkbox will be checked.\n */\n checked?: boolean\n /**\n * If `true`, the checkbox will be initially checked.\n *\n * @default false\n */\n defaultChecked?: boolean\n /**\n * id assigned to input.\n */\n id?: string\n /**\n * If `true`, the checkbox will be indeterminate.\n *\n * @default false\n */\n indeterminate?: boolean\n /**\n * The name of the input field in a checkbox.\n */\n name?: string\n /**\n * The value of the checkbox.\n */\n value?: Y\n /**\n * The callback invoked when the checkbox is blurred.\n */\n onBlur?: FocusEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checked state changes.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checkbox is focused.\n */\n onFocus?: FocusEventHandler<HTMLInputElement>\n}\n\nexport const useCheckbox = <Y extends string = string>({\n \"aria-describedby\": ariaDescribedbyProp,\n ...props\n}: UseCheckboxProps<Y> = {}) => {\n const group = useCheckboxGroupContext()\n const {\n max,\n value: groupValue,\n getInputProps: getGroupInputProps,\n getLabelProps,\n } = group ?? {}\n const uuid = useId()\n const {\n props: {\n id,\n ref,\n name,\n \"aria-controls\": ariaControlsProp,\n \"aria-labelledby\": ariaLabelledbyProp,\n checked: checkedProp,\n defaultChecked = false,\n disabled,\n indeterminate = false,\n readOnly,\n required,\n tabIndex,\n value,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedby, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps({\n id: group ? uuid : undefined,\n ...props,\n notSupportReadOnly: true,\n })\n const resolvedAriaDescribedby = group ? ariaDescribedbyProp : ariaDescribedby\n const resolvedChecked =\n !isUndefined(groupValue) && !isUndefined(value)\n ? groupValue.includes(value)\n : checkedProp\n const [checked, setChecked] = useControllableEventState({\n defaultValue: defaultChecked,\n value: resolvedChecked,\n onChange: onChangeProp,\n })\n const trulyDisabled =\n !checked && isNumber(max) && group && group.value.length >= max\n const interactive = !(readOnly || trulyDisabled)\n const indeterminateRef = useCallback(\n (el: HTMLInputElement | null) => {\n if (el) el.indeterminate = indeterminate\n },\n [indeterminate],\n )\n\n const onChange = useCallback(\n (ev: ChangeEvent<HTMLInputElement>) => {\n if (!interactive) return (ev.defaultPrevented = true)\n\n if (indeterminate) ev.target.checked = true\n\n setChecked(ev)\n },\n [interactive, indeterminate, setChecked],\n )\n\n const getRootProps: PropGetter<\"label\"> = useCallback(\n (props = {}) => {\n const merged = mergeProps(\n dataProps,\n {\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n },\n rest,\n props,\n )()\n\n return getLabelProps?.(merged) ?? merged\n },\n [dataProps, checked, indeterminate, rest, getLabelProps],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n ({\n \"aria-controls\": ariaControls,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) => {\n const sharedProps = {\n ...dataProps,\n ...ariaProps,\n id,\n type: \"checkbox\",\n name,\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": indeterminate ? (\"mixed\" as const) : checked,\n \"aria-controls\": cx(ariaControls, ariaControlsProp),\n \"aria-describedby\": cx(resolvedAriaDescribedby, ariaDescribedby),\n \"aria-disabled\": ariaAttr(!interactive),\n \"aria-labelledby\": cx(ariaLabelledby, ariaLabelledbyProp),\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n checked,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ...props,\n ref: mergeRefs(props.ref, ref, indeterminateRef),\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n\n return getGroupInputProps?.(sharedProps) ?? sharedProps\n },\n [\n dataProps,\n ariaProps,\n id,\n name,\n indeterminate,\n checked,\n ariaControlsProp,\n resolvedAriaDescribedby,\n interactive,\n ariaLabelledbyProp,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ref,\n indeterminateRef,\n eventProps.onBlur,\n eventProps.onFocus,\n onChange,\n getGroupInputProps,\n ],\n )\n\n const getIndicatorProps: PropGetter = useCallback(\n (props = {}) => ({\n ...dataProps,\n \"aria-hidden\": \"true\",\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n ...props,\n }),\n [dataProps, checked, indeterminate],\n )\n\n return {\n checked,\n indeterminate,\n getIndicatorProps,\n getInputProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxReturn = ReturnType<typeof useCheckbox>\n"],"mappings":";;;;;;;;;;;;;;;AAoEA,MAAa,eAA0C,EACrD,oBAAoB,qBACpB,GAAG,UACoB,EAAE,KAAK;CAC9B,MAAM,QAAQA,oDAAyB;CACvC,MAAM,EACJ,KACA,OAAO,YACP,eAAe,oBACf,kBACE,SAAS,EAAE;CACf,MAAM,yBAAc;CACpB,MAAM,EACJ,OAAO,EACL,IACA,KACA,MACA,iBAAiB,kBACjB,mBAAmB,oBACnB,SAAS,aACT,iBAAiB,OACjB,UACA,gBAAgB,OAChB,UACA,UACA,UACA,OACA,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,iBAAiB,GAAG,aACrD,WACA,eACEC,sCAAc;EAChB,IAAI,QAAQ,OAAO;EACnB,GAAG;EACH,oBAAoB;EACrB,CAAC;CACF,MAAM,0BAA0B,QAAQ,sBAAsB;CAK9D,MAAM,CAAC,SAAS,cAAcC,qEAA0B;EACtD,cAAc;EACd,OALA,oDAAa,WAAW,IAAI,oDAAa,MAAM,GAC3C,WAAW,SAAS,MAAM,GAC1B;EAIJ,UAAU;EACX,CAAC;CACF,MAAM,gBACJ,CAAC,2DAAoB,IAAI,IAAI,SAAS,MAAM,MAAM,UAAU;CAC9D,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,2CACH,OAAgC;AAC/B,MAAI,GAAI,IAAG,gBAAgB;IAE7B,CAAC,cAAc,CAChB;CAED,MAAM,mCACH,OAAsC;AACrC,MAAI,CAAC,YAAa,QAAQ,GAAG,mBAAmB;AAEhD,MAAI,cAAe,IAAG,OAAO,UAAU;AAEvC,aAAW,GAAG;IAEhB;EAAC;EAAa;EAAe;EAAW,CACzC;CAED,MAAMC,uCACH,UAAQ,EAAE,KAAK;EACd,MAAM,SAASC,yBACb,WACA;GACE,gEAAyB,QAAQ;GACjC,sEAA+B,cAAc;GAC9C,EACD,MACAC,QACD,EAAE;AAEH,SAAO,gBAAgB,OAAO,IAAI;IAEpC;EAAC;EAAW;EAAS;EAAe;EAAM;EAAc,CACzD;CAED,MAAMC,wCACH,EACC,iBAAiB,cACjB,oBAAoBC,mBACpB,mBAAmB,gBACnB,GAAGF,YACD,EAAE,KAAK;EACT,MAAM,cAAc;GAClB,GAAG;GACH,GAAG;GACH;GACA,MAAM;GACN;GACA,OAAOG,qCAAyB;GAChC,gBAAgB,gBAAiB,UAAoB;GACrD,2DAAoB,cAAc,iBAAiB;GACnD,8DAAuB,yBAAyBD,kBAAgB;GAChE,iEAA0B,CAAC,YAAY;GACvC,6DAAsB,gBAAgB,mBAAmB;GACzD,gEAAyB,QAAQ;GACjC,sEAA+B,cAAc;GAC7C;GACA;GACA;GACA;GACA;GACA;GACA,GAAGF;GACH,KAAKI,sBAAUJ,QAAM,KAAK,KAAK,iBAAiB;GAChD,0DAAmBA,QAAM,QAAQ,WAAW,OAAO;GACnD,4DAAqBA,QAAM,UAAU,SAAS;GAC9C,2DAAoBA,QAAM,SAAS,WAAW,QAAQ;GACvD;AAED,SAAO,qBAAqB,YAAY,IAAI;IAE9C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;EACX,WAAW;EACX;EACA;EACD,CACF;AAaD,QAAO;EACL;EACA;EACA,2CAbC,UAAQ,EAAE,MAAM;GACf,GAAG;GACH,eAAe;GACf,gEAAyB,QAAQ;GACjC,sEAA+B,cAAc;GAC7C,GAAGA;GACJ,GACD;GAAC;GAAW;GAAS;GAAc,CACpC;EAMC;EACA;EACA;EACD"}
@@ -2,6 +2,8 @@
2
2
 
3
3
  import { createContext as createContext$1 } from "../../utils/context.js";
4
4
  import { utils_exports } from "../../utils/index.js";
5
+ import { mergeProps } from "../../core/components/props.js";
6
+ import "../../core/index.js";
5
7
  import { useCallback, useState } from "react";
6
8
 
7
9
  //#region src/components/chart/use-chart.ts
@@ -75,10 +77,7 @@ const useChart = () => {
75
77
  };
76
78
  const useChartLegend = ({ placement = "start-end", align = PLACEMENT_MAP[placement].align, content, formatter, itemSorter, layout = placement.startsWith("center") ? "vertical" : "horizontal", payloadUniqBy, portal, verticalAlign = PLACEMENT_MAP[placement].verticalAlign, onBBoxUpdate, onClick, onMouseEnter, onMouseLeave, ...rest } = {}) => {
77
79
  const { highlightedDataKey, onHighlight } = useChartContext();
78
- const getRootProps = useCallback((props) => ({
79
- ...rest,
80
- ...props
81
- }), [rest]);
80
+ const getRootProps = useCallback((props) => mergeProps(rest, props)(), [rest]);
82
81
  const getLegendProps = useCallback((props) => ({
83
82
  align,
84
83
  content,
@@ -179,18 +178,12 @@ const useChartTooltip = ({ active, allowEscapeViewBox, animationDuration = 0, an
179
178
  useTranslate3d
180
179
  ]);
181
180
  return {
182
- getContentProps: useCallback((props) => ({
183
- ...rest,
184
- ...props
185
- }), [rest]),
181
+ getContentProps: useCallback((props) => mergeProps(rest, props)(), [rest]),
186
182
  getRootProps
187
183
  };
188
184
  };
189
185
  const useChartLabelList = ({ angle, clockWise, content, dataKey, formatter, offset = 12, position = "top", textBreakAll, valueAccessor, zIndex, ...rest } = {}) => {
190
- const getRootProps = useCallback((props) => ({
191
- ...rest,
192
- ...props
193
- }), [rest]);
186
+ const getRootProps = useCallback((props) => mergeProps(rest, props)(), [rest]);
194
187
  return {
195
188
  getLabelListProps: useCallback((props) => ({
196
189
  angle,
@@ -221,10 +214,7 @@ const useChartLabelList = ({ angle, clockWise, content, dataKey, formatter, offs
221
214
  };
222
215
  };
223
216
  const useChartLabel = ({ angle, children, content, formatter, labelRef, offset, parentViewBox, position, value, viewBox, zIndex, ...rest } = {}) => {
224
- const getRootProps = useCallback((props) => ({
225
- ...rest,
226
- ...props
227
- }), [rest]);
217
+ const getRootProps = useCallback((props) => mergeProps(rest, props)(), [rest]);
228
218
  return {
229
219
  getLabelProps: useCallback((props) => ({
230
220
  angle,
@@ -1 +1 @@
1
- {"version":3,"file":"use-chart.js","names":["PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n}","createContext","getRootProps: PropGetter","getLegendProps: PropGetter<LegendProps>","getRootProps: PropGetter<TooltipProps<Y, M>>","getRootProps: PropGetter<\"text\">"],"sources":["../../../../src/components/chart/use-chart.ts"],"sourcesContent":["\"use client\"\n\nimport type {\n LabelListProps,\n LabelProps,\n LegendProps,\n TooltipProps,\n} from \"recharts\"\nimport type {\n Direction,\n HTMLProps,\n PropGetter,\n RequiredPropGetter,\n} from \"../../core\"\nimport type { Merge } from \"../../utils\"\nimport { useCallback, useState } from \"react\"\nimport { createContext, dataAttr, handlerAll, isUndefined } from \"../../utils\"\n\nconst PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n} = {\n \"center-end\": { align: \"right\", verticalAlign: \"middle\" },\n \"center-end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"center-end-start\": { align: \"right\", verticalAlign: \"top\" },\n \"center-start\": { align: \"left\", verticalAlign: \"middle\" },\n \"center-start-end\": { align: \"left\", verticalAlign: \"bottom\" },\n \"center-start-start\": { align: \"left\", verticalAlign: \"top\" },\n end: { align: \"center\", verticalAlign: \"bottom\" },\n \"end-center\": { align: \"center\", verticalAlign: \"bottom\" },\n \"end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"end-start\": { align: \"left\", verticalAlign: \"bottom\" },\n start: { align: \"center\", verticalAlign: \"top\" },\n \"start-center\": { align: \"center\", verticalAlign: \"top\" },\n \"start-end\": { align: \"right\", verticalAlign: \"top\" },\n \"start-start\": { align: \"left\", verticalAlign: \"top\" },\n}\n\ninterface ChartContext extends UseChartReturn {}\n\nconst [ChartContext, useChartContext] = createContext<ChartContext>({\n name: \"ChartContext\",\n})\n\nexport { ChartContext, useChartContext }\n\nexport const useChart = () => {\n const [highlightedDataKey, setHighlightedDataKey] = useState<\n number | string | undefined\n >(undefined)\n\n const onHighlight = useCallback((dataKey?: number | string) => {\n setHighlightedDataKey(dataKey)\n }, [])\n\n return { highlightedDataKey, onHighlight }\n}\n\nexport type UseChartReturn = ReturnType<typeof useChart>\n\nexport interface UseChartLegendProps extends Merge<\n HTMLProps,\n Pick<\n LegendProps,\n | \"align\"\n | \"content\"\n | \"formatter\"\n | \"itemSorter\"\n | \"layout\"\n | \"onBBoxUpdate\"\n | \"onClick\"\n | \"onMouseEnter\"\n | \"onMouseLeave\"\n | \"payloadUniqBy\"\n | \"portal\"\n | \"verticalAlign\"\n >\n> {\n /**\n * The placement of the legend.\n *\n * @default 'start-end'\n */\n placement?: Direction\n}\n\nexport const useChartLegend = ({\n placement = \"start-end\",\n align = PLACEMENT_MAP[placement].align,\n content,\n formatter,\n itemSorter,\n layout = placement.startsWith(\"center\") ? \"vertical\" : \"horizontal\",\n payloadUniqBy,\n portal,\n verticalAlign = PLACEMENT_MAP[placement].verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...rest\n}: UseChartLegendProps = {}) => {\n const { highlightedDataKey, onHighlight } = useChartContext()\n\n const getRootProps: PropGetter = useCallback(\n (props) => ({ ...rest, ...props }),\n [rest],\n )\n\n const getLegendProps: PropGetter<LegendProps> = useCallback(\n (props) => ({\n align,\n content,\n formatter,\n itemSorter,\n layout,\n payloadUniqBy,\n portal,\n verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...props,\n }),\n [\n align,\n content,\n formatter,\n itemSorter,\n layout,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n payloadUniqBy,\n portal,\n verticalAlign,\n ],\n )\n\n const getLegendContentProps: PropGetter = useCallback(\n (props) => ({\n \"data-align\": align,\n \"data-orientation\": layout,\n \"data-vertical-align\": verticalAlign,\n ...props,\n }),\n [align, layout, verticalAlign],\n )\n\n const getLegendItemProps: RequiredPropGetter<\n \"div\",\n { dataKey?: number | string }\n > = useCallback(\n ({ dataKey, ...props }) => ({\n ...props,\n \"data-active\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey === dataKey,\n ),\n \"data-inactive\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey !== dataKey,\n ),\n onMouseEnter: handlerAll(props.onMouseEnter, () => onHighlight(dataKey)),\n onMouseLeave: handlerAll(props.onMouseLeave, () => onHighlight()),\n }),\n [highlightedDataKey, onHighlight],\n )\n\n return {\n getLegendContentProps,\n getLegendItemProps,\n getLegendProps,\n getRootProps,\n }\n}\n\nexport type UseChartLegendReturn = ReturnType<typeof useChartLegend>\n\nexport interface UseChartTooltipProps<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> extends Merge<\n HTMLProps,\n Omit<\n TooltipProps<Y, M>,\n | \"contentStyle\"\n | \"itemStyle\"\n | \"labelClassName\"\n | \"labelStyle\"\n | \"separator\"\n | \"wrapperClassName\"\n | \"wrapperStyle\"\n >\n> {}\n\nexport const useChartTooltip = <\n Y extends (number | string)[] | number | string,\n M extends number | string,\n>({\n active,\n allowEscapeViewBox,\n animationDuration = 0,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive = (animationDuration || 0) > 0,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...rest\n}: UseChartTooltipProps<Y, M> = {}) => {\n const getRootProps: PropGetter<TooltipProps<Y, M>> = useCallback(\n (props) => ({\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...props,\n }),\n [\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ],\n )\n\n const getContentProps: PropGetter = useCallback(\n (props) => ({\n ...rest,\n ...props,\n }),\n [rest],\n )\n\n return { getContentProps, getRootProps }\n}\n\nexport type UseChartTooltipReturn<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> = ReturnType<typeof useChartTooltip<Y, M>>\n\nexport interface UseChartLabelListProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelListProps,\n | \"angle\"\n | \"clockWise\"\n | \"content\"\n | \"dataKey\"\n | \"formatter\"\n | \"offset\"\n | \"position\"\n | \"textBreakAll\"\n | \"valueAccessor\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabelList = ({\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset = 12,\n position = \"top\",\n textBreakAll,\n valueAccessor,\n zIndex,\n ...rest\n}: UseChartLabelListProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => ({ ...rest, ...props }),\n [rest],\n )\n\n const getLabelListProps: PropGetter<LabelListProps> = useCallback(\n (props) => ({\n angle,\n clockWise,\n content,\n dataKey,\n fill: \"\",\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ...props,\n }),\n [\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ],\n )\n\n return { getLabelListProps, getRootProps }\n}\n\nexport type UseChartLabelListReturn = ReturnType<typeof useChartLabelList>\n\nexport interface UseChartLabelProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelProps,\n | \"angle\"\n | \"children\"\n | \"content\"\n | \"formatter\"\n | \"labelRef\"\n | \"offset\"\n | \"parentViewBox\"\n | \"position\"\n | \"value\"\n | \"viewBox\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabel = ({\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...rest\n}: UseChartLabelProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => ({ ...rest, ...props }),\n [rest],\n )\n\n const getLabelProps: PropGetter<LabelProps> = useCallback(\n (props) => ({\n angle,\n children,\n content,\n fill: \"\",\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...props,\n }),\n [\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ],\n )\n\n return { getLabelProps, getRootProps }\n}\n\nexport type UseChartLabelReturn = ReturnType<typeof useChartLabel>\n"],"mappings":";;;;;;;AAkBA,MAAMA,gBAKF;CACF,cAAc;EAAE,OAAO;EAAS,eAAe;EAAU;CACzD,kBAAkB;EAAE,OAAO;EAAS,eAAe;EAAU;CAC7D,oBAAoB;EAAE,OAAO;EAAS,eAAe;EAAO;CAC5D,gBAAgB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC1D,oBAAoB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC9D,sBAAsB;EAAE,OAAO;EAAQ,eAAe;EAAO;CAC7D,KAAK;EAAE,OAAO;EAAU,eAAe;EAAU;CACjD,cAAc;EAAE,OAAO;EAAU,eAAe;EAAU;CAC1D,WAAW;EAAE,OAAO;EAAS,eAAe;EAAU;CACtD,aAAa;EAAE,OAAO;EAAQ,eAAe;EAAU;CACvD,OAAO;EAAE,OAAO;EAAU,eAAe;EAAO;CAChD,gBAAgB;EAAE,OAAO;EAAU,eAAe;EAAO;CACzD,aAAa;EAAE,OAAO;EAAS,eAAe;EAAO;CACrD,eAAe;EAAE,OAAO;EAAQ,eAAe;EAAO;CACvD;AAID,MAAM,CAAC,cAAc,mBAAmBC,gBAA4B,EAClE,MAAM,gBACP,CAAC;AAIF,MAAa,iBAAiB;CAC5B,MAAM,CAAC,oBAAoB,yBAAyB,SAElD,OAAU;AAMZ,QAAO;EAAE;EAAoB,aAJT,aAAa,YAA8B;AAC7D,yBAAsB,QAAQ;KAC7B,EAAE,CAAC;EAEoC;;AA+B5C,MAAa,kBAAkB,EAC7B,YAAY,aACZ,QAAQ,cAAc,WAAW,OACjC,SACA,WACA,YACA,SAAS,UAAU,WAAW,SAAS,GAAG,aAAa,cACvD,eACA,QACA,gBAAgB,cAAc,WAAW,eACzC,cACA,SACA,cACA,cACA,GAAG,SACoB,EAAE,KAAK;CAC9B,MAAM,EAAE,oBAAoB,gBAAgB,iBAAiB;CAE7D,MAAMC,eAA2B,aAC9B,WAAW;EAAE,GAAG;EAAM,GAAG;EAAO,GACjC,CAAC,KAAK,CACP;CAED,MAAMC,iBAA0C,aAC7C,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AA8BD,QAAO;EACL,uBA7BwC,aACvC,WAAW;GACV,cAAc;GACd,oBAAoB;GACpB,uBAAuB;GACvB,GAAG;GACJ,GACD;GAAC;GAAO;GAAQ;GAAc,CAC/B;EAsBC,oBAjBE,aACD,EAAE,SAAS,GAAG,aAAa;GAC1B,GAAG;GACH,2CACE,gCAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,6CACE,gCAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,4CAAyB,MAAM,oBAAoB,YAAY,QAAQ,CAAC;GACxE,4CAAyB,MAAM,oBAAoB,aAAa,CAAC;GAClE,GACD,CAAC,oBAAoB,YAAY,CAClC;EAKC;EACA;EACD;;AAsBH,MAAa,mBAGX,EACA,QACA,oBACA,oBAAoB,GACpB,iBACA,QACA,SACA,QACA,cACA,YACA,WACA,eACA,qBAAqB,qBAAqB,KAAK,GAC/C,YACA,gBACA,QACA,eACA,QACA,UACA,kBACA,QACA,SACA,gBACA,GAAG,SAC2B,EAAE,KAAK;CACrC,MAAMC,eAA+C,aAClD,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAUD,QAAO;EAAE,iBAR2B,aACjC,WAAW;GACV,GAAG;GACH,GAAG;GACJ,GACD,CAAC,KAAK,CACP;EAEyB;EAAc;;AAyB1C,MAAa,qBAAqB,EAChC,OACA,WACA,SACA,SACA,WACA,SAAS,IACT,WAAW,OACX,cACA,eACA,QACA,GAAG,SACuB,EAAE,KAAK;CACjC,MAAMC,eAAmC,aACtC,WAAW;EAAE,GAAG;EAAM,GAAG;EAAO,GACjC,CAAC,KAAK,CACP;AA+BD,QAAO;EAAE,mBA7B6C,aACnD,WAAW;GACV;GACA;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAE2B;EAAc;;AAuB5C,MAAa,iBAAiB,EAC5B,OACA,UACA,SACA,WACA,UACA,QACA,eACA,UACA,OACA,SACA,QACA,GAAG,SACmB,EAAE,KAAK;CAC7B,MAAMA,eAAmC,aACtC,WAAW;EAAE,GAAG;EAAM,GAAG;EAAO,GACjC,CAAC,KAAK,CACP;AAiCD,QAAO;EAAE,eA/BqC,aAC3C,WAAW;GACV;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAEuB;EAAc"}
1
+ {"version":3,"file":"use-chart.js","names":["PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n}","createContext","getRootProps: PropGetter","getLegendProps: PropGetter<LegendProps>","getRootProps: PropGetter<TooltipProps<Y, M>>","getRootProps: PropGetter<\"text\">"],"sources":["../../../../src/components/chart/use-chart.ts"],"sourcesContent":["\"use client\"\n\nimport type {\n LabelListProps,\n LabelProps,\n LegendProps,\n TooltipProps,\n} from \"recharts\"\nimport type {\n Direction,\n HTMLProps,\n PropGetter,\n RequiredPropGetter,\n} from \"../../core\"\nimport type { Merge } from \"../../utils\"\nimport { useCallback, useState } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { createContext, dataAttr, handlerAll, isUndefined } from \"../../utils\"\n\nconst PLACEMENT_MAP: {\n [key in Direction]: {\n align: LegendProps[\"align\"]\n verticalAlign: LegendProps[\"verticalAlign\"]\n }\n} = {\n \"center-end\": { align: \"right\", verticalAlign: \"middle\" },\n \"center-end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"center-end-start\": { align: \"right\", verticalAlign: \"top\" },\n \"center-start\": { align: \"left\", verticalAlign: \"middle\" },\n \"center-start-end\": { align: \"left\", verticalAlign: \"bottom\" },\n \"center-start-start\": { align: \"left\", verticalAlign: \"top\" },\n end: { align: \"center\", verticalAlign: \"bottom\" },\n \"end-center\": { align: \"center\", verticalAlign: \"bottom\" },\n \"end-end\": { align: \"right\", verticalAlign: \"bottom\" },\n \"end-start\": { align: \"left\", verticalAlign: \"bottom\" },\n start: { align: \"center\", verticalAlign: \"top\" },\n \"start-center\": { align: \"center\", verticalAlign: \"top\" },\n \"start-end\": { align: \"right\", verticalAlign: \"top\" },\n \"start-start\": { align: \"left\", verticalAlign: \"top\" },\n}\n\ninterface ChartContext extends UseChartReturn {}\n\nconst [ChartContext, useChartContext] = createContext<ChartContext>({\n name: \"ChartContext\",\n})\n\nexport { ChartContext, useChartContext }\n\nexport const useChart = () => {\n const [highlightedDataKey, setHighlightedDataKey] = useState<\n number | string | undefined\n >(undefined)\n\n const onHighlight = useCallback((dataKey?: number | string) => {\n setHighlightedDataKey(dataKey)\n }, [])\n\n return { highlightedDataKey, onHighlight }\n}\n\nexport type UseChartReturn = ReturnType<typeof useChart>\n\nexport interface UseChartLegendProps extends Merge<\n HTMLProps,\n Pick<\n LegendProps,\n | \"align\"\n | \"content\"\n | \"formatter\"\n | \"itemSorter\"\n | \"layout\"\n | \"onBBoxUpdate\"\n | \"onClick\"\n | \"onMouseEnter\"\n | \"onMouseLeave\"\n | \"payloadUniqBy\"\n | \"portal\"\n | \"verticalAlign\"\n >\n> {\n /**\n * The placement of the legend.\n *\n * @default 'start-end'\n */\n placement?: Direction\n}\n\nexport const useChartLegend = ({\n placement = \"start-end\",\n align = PLACEMENT_MAP[placement].align,\n content,\n formatter,\n itemSorter,\n layout = placement.startsWith(\"center\") ? \"vertical\" : \"horizontal\",\n payloadUniqBy,\n portal,\n verticalAlign = PLACEMENT_MAP[placement].verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...rest\n}: UseChartLegendProps = {}) => {\n const { highlightedDataKey, onHighlight } = useChartContext()\n\n const getRootProps: PropGetter = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getLegendProps: PropGetter<LegendProps> = useCallback(\n (props) => ({\n align,\n content,\n formatter,\n itemSorter,\n layout,\n payloadUniqBy,\n portal,\n verticalAlign,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n ...props,\n }),\n [\n align,\n content,\n formatter,\n itemSorter,\n layout,\n onBBoxUpdate,\n onClick,\n onMouseEnter,\n onMouseLeave,\n payloadUniqBy,\n portal,\n verticalAlign,\n ],\n )\n\n const getLegendContentProps: PropGetter = useCallback(\n (props) => ({\n \"data-align\": align,\n \"data-orientation\": layout,\n \"data-vertical-align\": verticalAlign,\n ...props,\n }),\n [align, layout, verticalAlign],\n )\n\n const getLegendItemProps: RequiredPropGetter<\n \"div\",\n { dataKey?: number | string }\n > = useCallback(\n ({ dataKey, ...props }) => ({\n ...props,\n \"data-active\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey === dataKey,\n ),\n \"data-inactive\": dataAttr(\n !isUndefined(highlightedDataKey) && highlightedDataKey !== dataKey,\n ),\n onMouseEnter: handlerAll(props.onMouseEnter, () => onHighlight(dataKey)),\n onMouseLeave: handlerAll(props.onMouseLeave, () => onHighlight()),\n }),\n [highlightedDataKey, onHighlight],\n )\n\n return {\n getLegendContentProps,\n getLegendItemProps,\n getLegendProps,\n getRootProps,\n }\n}\n\nexport type UseChartLegendReturn = ReturnType<typeof useChartLegend>\n\nexport interface UseChartTooltipProps<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> extends Merge<\n HTMLProps,\n Omit<\n TooltipProps<Y, M>,\n | \"contentStyle\"\n | \"itemStyle\"\n | \"labelClassName\"\n | \"labelStyle\"\n | \"separator\"\n | \"wrapperClassName\"\n | \"wrapperStyle\"\n >\n> {}\n\nexport const useChartTooltip = <\n Y extends (number | string)[] | number | string,\n M extends number | string,\n>({\n active,\n allowEscapeViewBox,\n animationDuration = 0,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive = (animationDuration || 0) > 0,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...rest\n}: UseChartTooltipProps<Y, M> = {}) => {\n const getRootProps: PropGetter<TooltipProps<Y, M>> = useCallback(\n (props) => ({\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ...props,\n }),\n [\n active,\n allowEscapeViewBox,\n animationDuration,\n animationEasing,\n axisId,\n content,\n cursor,\n defaultIndex,\n filterNull,\n formatter,\n includeHidden,\n isAnimationActive,\n itemSorter,\n labelFormatter,\n offset,\n payloadUniqBy,\n portal,\n position,\n reverseDirection,\n shared,\n trigger,\n useTranslate3d,\n ],\n )\n\n const getContentProps: PropGetter = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n return { getContentProps, getRootProps }\n}\n\nexport type UseChartTooltipReturn<\n Y extends (number | string)[] | number | string,\n M extends number | string,\n> = ReturnType<typeof useChartTooltip<Y, M>>\n\nexport interface UseChartLabelListProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelListProps,\n | \"angle\"\n | \"clockWise\"\n | \"content\"\n | \"dataKey\"\n | \"formatter\"\n | \"offset\"\n | \"position\"\n | \"textBreakAll\"\n | \"valueAccessor\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabelList = ({\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset = 12,\n position = \"top\",\n textBreakAll,\n valueAccessor,\n zIndex,\n ...rest\n}: UseChartLabelListProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getLabelListProps: PropGetter<LabelListProps> = useCallback(\n (props) => ({\n angle,\n clockWise,\n content,\n dataKey,\n fill: \"\",\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ...props,\n }),\n [\n angle,\n clockWise,\n content,\n dataKey,\n formatter,\n offset,\n position,\n textBreakAll,\n valueAccessor,\n zIndex,\n ],\n )\n\n return { getLabelListProps, getRootProps }\n}\n\nexport type UseChartLabelListReturn = ReturnType<typeof useChartLabelList>\n\nexport interface UseChartLabelProps extends Merge<\n HTMLProps<\"text\">,\n Pick<\n LabelProps,\n | \"angle\"\n | \"children\"\n | \"content\"\n | \"formatter\"\n | \"labelRef\"\n | \"offset\"\n | \"parentViewBox\"\n | \"position\"\n | \"value\"\n | \"viewBox\"\n | \"zIndex\"\n >\n> {}\n\nexport const useChartLabel = ({\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...rest\n}: UseChartLabelProps = {}) => {\n const getRootProps: PropGetter<\"text\"> = useCallback(\n (props) => mergeProps(rest, props)(),\n [rest],\n )\n\n const getLabelProps: PropGetter<LabelProps> = useCallback(\n (props) => ({\n angle,\n children,\n content,\n fill: \"\",\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ...props,\n }),\n [\n angle,\n children,\n content,\n formatter,\n labelRef,\n offset,\n parentViewBox,\n position,\n value,\n viewBox,\n zIndex,\n ],\n )\n\n return { getLabelProps, getRootProps }\n}\n\nexport type UseChartLabelReturn = ReturnType<typeof useChartLabel>\n"],"mappings":";;;;;;;;;AAmBA,MAAMA,gBAKF;CACF,cAAc;EAAE,OAAO;EAAS,eAAe;EAAU;CACzD,kBAAkB;EAAE,OAAO;EAAS,eAAe;EAAU;CAC7D,oBAAoB;EAAE,OAAO;EAAS,eAAe;EAAO;CAC5D,gBAAgB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC1D,oBAAoB;EAAE,OAAO;EAAQ,eAAe;EAAU;CAC9D,sBAAsB;EAAE,OAAO;EAAQ,eAAe;EAAO;CAC7D,KAAK;EAAE,OAAO;EAAU,eAAe;EAAU;CACjD,cAAc;EAAE,OAAO;EAAU,eAAe;EAAU;CAC1D,WAAW;EAAE,OAAO;EAAS,eAAe;EAAU;CACtD,aAAa;EAAE,OAAO;EAAQ,eAAe;EAAU;CACvD,OAAO;EAAE,OAAO;EAAU,eAAe;EAAO;CAChD,gBAAgB;EAAE,OAAO;EAAU,eAAe;EAAO;CACzD,aAAa;EAAE,OAAO;EAAS,eAAe;EAAO;CACrD,eAAe;EAAE,OAAO;EAAQ,eAAe;EAAO;CACvD;AAID,MAAM,CAAC,cAAc,mBAAmBC,gBAA4B,EAClE,MAAM,gBACP,CAAC;AAIF,MAAa,iBAAiB;CAC5B,MAAM,CAAC,oBAAoB,yBAAyB,SAElD,OAAU;AAMZ,QAAO;EAAE;EAAoB,aAJT,aAAa,YAA8B;AAC7D,yBAAsB,QAAQ;KAC7B,EAAE,CAAC;EAEoC;;AA+B5C,MAAa,kBAAkB,EAC7B,YAAY,aACZ,QAAQ,cAAc,WAAW,OACjC,SACA,WACA,YACA,SAAS,UAAU,WAAW,SAAS,GAAG,aAAa,cACvD,eACA,QACA,gBAAgB,cAAc,WAAW,eACzC,cACA,SACA,cACA,cACA,GAAG,SACoB,EAAE,KAAK;CAC9B,MAAM,EAAE,oBAAoB,gBAAgB,iBAAiB;CAE7D,MAAMC,eAA2B,aAC9B,UAAU,WAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;CAED,MAAMC,iBAA0C,aAC7C,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AA8BD,QAAO;EACL,uBA7BwC,aACvC,WAAW;GACV,cAAc;GACd,oBAAoB;GACpB,uBAAuB;GACvB,GAAG;GACJ,GACD;GAAC;GAAO;GAAQ;GAAc,CAC/B;EAsBC,oBAjBE,aACD,EAAE,SAAS,GAAG,aAAa;GAC1B,GAAG;GACH,2CACE,gCAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,6CACE,gCAAa,mBAAmB,IAAI,uBAAuB,QAC5D;GACD,4CAAyB,MAAM,oBAAoB,YAAY,QAAQ,CAAC;GACxE,4CAAyB,MAAM,oBAAoB,aAAa,CAAC;GAClE,GACD,CAAC,oBAAoB,YAAY,CAClC;EAKC;EACA;EACD;;AAsBH,MAAa,mBAGX,EACA,QACA,oBACA,oBAAoB,GACpB,iBACA,QACA,SACA,QACA,cACA,YACA,WACA,eACA,qBAAqB,qBAAqB,KAAK,GAC/C,YACA,gBACA,QACA,eACA,QACA,UACA,kBACA,QACA,SACA,gBACA,GAAG,SAC2B,EAAE,KAAK;CACrC,MAAMC,eAA+C,aAClD,WAAW;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,GAAG;EACJ,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAOD,QAAO;EAAE,iBAL2B,aACjC,UAAU,WAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;EAEyB;EAAc;;AAyB1C,MAAa,qBAAqB,EAChC,OACA,WACA,SACA,SACA,WACA,SAAS,IACT,WAAW,OACX,cACA,eACA,QACA,GAAG,SACuB,EAAE,KAAK;CACjC,MAAMC,eAAmC,aACtC,UAAU,WAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;AA+BD,QAAO;EAAE,mBA7B6C,aACnD,WAAW;GACV;GACA;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAE2B;EAAc;;AAuB5C,MAAa,iBAAiB,EAC5B,OACA,UACA,SACA,WACA,UACA,QACA,eACA,UACA,OACA,SACA,QACA,GAAG,SACmB,EAAE,KAAK;CAC7B,MAAMA,eAAmC,aACtC,UAAU,WAAW,MAAM,MAAM,EAAE,EACpC,CAAC,KAAK,CACP;AAiCD,QAAO;EAAE,eA/BqC,aAC3C,WAAW;GACV;GACA;GACA;GACA,MAAM;GACN;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,GAAG;GACJ,GACD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAEuB;EAAc"}
@@ -2,8 +2,9 @@
2
2
 
3
3
  import { createContext as createContext$1 } from "../../utils/context.js";
4
4
  import { visuallyHiddenAttributes } from "../../utils/dom.js";
5
- import { mergeRefs } from "../../utils/ref.js";
6
5
  import { utils_exports } from "../../utils/index.js";
6
+ import { mergeProps } from "../../core/components/props.js";
7
+ import "../../core/index.js";
7
8
  import { useControllableState } from "../../hooks/use-controllable-state/index.js";
8
9
  import { useFieldProps } from "../field/use-field-props.js";
9
10
  import "../field/index.js";
@@ -35,15 +36,11 @@ const useCheckboxGroup = (props = {}) => {
35
36
  max,
36
37
  setValue
37
38
  ]);
38
- const getRootProps = useCallback(({ ref, "aria-describedby": ariaDescribedby, "aria-labelledby": ariaLabelledby, ...props$1 } = {}) => ({
39
- ...dataProps,
39
+ const getRootProps = useCallback(({ ref, "aria-describedby": ariaDescribedby, "aria-labelledby": ariaLabelledby, ...props$1 } = {}) => mergeProps(dataProps, {
40
40
  "aria-describedby": (0, utils_exports.cx)(ariaDescribedbyProp, ariaDescribedby),
41
41
  "aria-labelledby": (0, utils_exports.cx)(labelId, ariaLabelledby),
42
- role: "group",
43
- ...rest,
44
- ...props$1,
45
- ref: mergeRefs(ref, rest.ref)
46
- }), [
42
+ role: "group"
43
+ }, rest, props$1, { ref })(), [
47
44
  ariaDescribedbyProp,
48
45
  dataProps,
49
46
  labelId,
@@ -1 +1 @@
1
- {"version":3,"file":"use-checkbox-group.js","names":["createContext","getRootProps: PropGetter","props"],"sources":["../../../../src/components/checkbox/use-checkbox-group.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent } from \"react\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback } from \"react\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n createContext,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isObject,\n isString,\n isUndefined,\n mergeRefs,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\n\ninterface CheckboxGroupContext extends Omit<\n UseCheckboxGroupReturn,\n \"getRootProps\"\n> {}\n\nconst [CheckboxGroupContext, useCheckboxGroupContext] =\n createContext<CheckboxGroupContext>({\n name: \"CheckboxGroupContext\",\n strict: false,\n })\n\nexport { CheckboxGroupContext, useCheckboxGroupContext }\n\nexport interface UseCheckboxGroupProps<Y extends string = string>\n extends Omit<HTMLProps, \"defaultValue\" | \"onChange\" | \"value\">, FieldProps {\n /**\n * The initial value of the checkbox group.\n *\n * @default []\n */\n defaultValue?: Y[]\n /**\n * The maximum number of checkboxes that can be checked.\n */\n max?: number\n /**\n * The value of the checkbox group.\n */\n value?: Y[]\n /**\n * The callback fired when any children checkbox is checked or unchecked.\n */\n onChange?: (value: Y[]) => void\n}\n\nexport const useCheckboxGroup = <Y extends string = string>(\n props: UseCheckboxGroupProps<Y> = {},\n) => {\n const {\n context: { labelId } = {},\n props: {\n defaultValue = [],\n disabled,\n max,\n readOnly,\n required,\n value: valueProp,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedbyProp, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps(props)\n const interactive = !(readOnly || disabled)\n const [value, setValue] = useControllableState({\n defaultValue,\n value: valueProp,\n onChange: onChangeProp,\n })\n\n const onChange = useCallback(\n (valueOrEv: ChangeEvent<HTMLInputElement> | Y) => {\n if (!interactive) return\n\n if (isObject(valueOrEv)) valueOrEv = valueOrEv.target.value as Y\n\n setValue((prev) => {\n if (prev.includes(valueOrEv)) {\n return prev.filter((prevValue) => prevValue !== valueOrEv)\n } else if (!isNumber(max) || prev.length < max) {\n return [...prev, valueOrEv]\n } else {\n return prev\n }\n })\n },\n [interactive, max, setValue],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({\n ref,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) => ({\n ...dataProps,\n \"aria-describedby\": cx(ariaDescribedbyProp, ariaDescribedby),\n \"aria-labelledby\": cx(labelId, ariaLabelledby),\n role: \"group\",\n ...rest,\n ...props,\n ref: mergeRefs(ref, rest.ref),\n }),\n [ariaDescribedbyProp, dataProps, labelId, rest],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n (props = {}) => {\n const checked =\n !isUndefined(value) &&\n (isString(props.value) || isNumber(props.value)) &&\n value.includes(props.value as Y)\n const trulyDisabled = !checked && isNumber(max) && value.length >= max\n\n return {\n ...dataProps,\n ...ariaProps,\n type: \"checkbox\",\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": checked,\n \"aria-disabled\": ariaAttr(trulyDisabled),\n \"data-checked\": dataAttr(checked),\n \"data-disabled\": dataAttr(trulyDisabled),\n checked,\n disabled: trulyDisabled,\n readOnly,\n required,\n ...props,\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n },\n [\n ariaProps,\n dataProps,\n eventProps,\n max,\n onChange,\n readOnly,\n required,\n value,\n ],\n )\n\n const getLabelProps: PropGetter<\"label\"> = useCallback(\n (props) => ({\n ...dataProps,\n ...props,\n }),\n [dataProps],\n )\n\n return {\n max,\n value,\n getInputProps,\n getLabelProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxGroupReturn = ReturnType<typeof useCheckboxGroup>\n"],"mappings":";;;;;;;;;;;;AA2BA,MAAM,CAAC,sBAAsB,2BAC3BA,gBAAoC;CAClC,MAAM;CACN,QAAQ;CACT,CAAC;AA0BJ,MAAa,oBACX,QAAkC,EAAE,KACjC;CACH,MAAM,EACJ,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,EACL,eAAe,EAAE,EACjB,UACA,KACA,UACA,UACA,OAAO,WACP,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,qBAAqB,GAAG,aACzD,WACA,eACE,cAAc,MAAM;CACxB,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,CAAC,OAAO,YAAY,qBAAqB;EAC7C;EACA,OAAO;EACP,UAAU;EACX,CAAC;CAEF,MAAM,WAAW,aACd,cAAiD;AAChD,MAAI,CAAC,YAAa;AAElB,kCAAa,UAAU,CAAE,aAAY,UAAU,OAAO;AAEtD,YAAU,SAAS;AACjB,OAAI,KAAK,SAAS,UAAU,CAC1B,QAAO,KAAK,QAAQ,cAAc,cAAc,UAAU;YACjD,6BAAU,IAAI,IAAI,KAAK,SAAS,IACzC,QAAO,CAAC,GAAG,MAAM,UAAU;OAE3B,QAAO;IAET;IAEJ;EAAC;EAAa;EAAK;EAAS,CAC7B;CAED,MAAMC,eAA2B,aAC9B,EACC,KACA,oBAAoB,iBACpB,mBAAmB,gBACnB,GAAGC,YACD,EAAE,MAAM;EACV,GAAG;EACH,0CAAuB,qBAAqB,gBAAgB;EAC5D,yCAAsB,SAAS,eAAe;EAC9C,MAAM;EACN,GAAG;EACH,GAAGA;EACH,KAAK,UAAU,KAAK,KAAK,IAAI;EAC9B,GACD;EAAC;EAAqB;EAAW;EAAS;EAAK,CAChD;AAiDD,QAAO;EACL;EACA;EACA,eAlDyC,aACxC,UAAQ,EAAE,KAAK;GACd,MAAM,UACJ,gCAAa,MAAM,iCACTA,QAAM,MAAM,gCAAaA,QAAM,MAAM,KAC/C,MAAM,SAASA,QAAM,MAAW;GAClC,MAAM,gBAAgB,CAAC,uCAAoB,IAAI,IAAI,MAAM,UAAU;AAEnE,UAAO;IACL,GAAG;IACH,GAAG;IACH,MAAM;IACN,OAAO,yBAAyB;IAChC,gBAAgB;IAChB,6CAA0B,cAAc;IACxC,4CAAyB,QAAQ;IACjC,6CAA0B,cAAc;IACxC;IACA,UAAU;IACV;IACA;IACA,GAAGA;IACH,sCAAmBA,QAAM,QAAQ,WAAW,OAAO;IACnD,wCAAqBA,QAAM,UAAU,SAAS;IAC9C,uCAAoBA,QAAM,SAAS,WAAW,QAAQ;IACvD;KAEH;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAcC,eAZyC,aACxC,aAAW;GACV,GAAG;GACH,GAAGA;GACJ,GACD,CAAC,UAAU,CACZ;EAOC;EACA;EACD"}
1
+ {"version":3,"file":"use-checkbox-group.js","names":["createContext","getRootProps: PropGetter","props"],"sources":["../../../../src/components/checkbox/use-checkbox-group.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent } from \"react\"\nimport type { HTMLProps, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { useControllableState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n createContext,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isObject,\n isString,\n isUndefined,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\n\ninterface CheckboxGroupContext extends Omit<\n UseCheckboxGroupReturn,\n \"getRootProps\"\n> {}\n\nconst [CheckboxGroupContext, useCheckboxGroupContext] =\n createContext<CheckboxGroupContext>({\n name: \"CheckboxGroupContext\",\n strict: false,\n })\n\nexport { CheckboxGroupContext, useCheckboxGroupContext }\n\nexport interface UseCheckboxGroupProps<Y extends string = string>\n extends Omit<HTMLProps, \"defaultValue\" | \"onChange\" | \"value\">, FieldProps {\n /**\n * The initial value of the checkbox group.\n *\n * @default []\n */\n defaultValue?: Y[]\n /**\n * The maximum number of checkboxes that can be checked.\n */\n max?: number\n /**\n * The value of the checkbox group.\n */\n value?: Y[]\n /**\n * The callback fired when any children checkbox is checked or unchecked.\n */\n onChange?: (value: Y[]) => void\n}\n\nexport const useCheckboxGroup = <Y extends string = string>(\n props: UseCheckboxGroupProps<Y> = {},\n) => {\n const {\n context: { labelId } = {},\n props: {\n defaultValue = [],\n disabled,\n max,\n readOnly,\n required,\n value: valueProp,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedbyProp, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps(props)\n const interactive = !(readOnly || disabled)\n const [value, setValue] = useControllableState({\n defaultValue,\n value: valueProp,\n onChange: onChangeProp,\n })\n\n const onChange = useCallback(\n (valueOrEv: ChangeEvent<HTMLInputElement> | Y) => {\n if (!interactive) return\n\n if (isObject(valueOrEv)) valueOrEv = valueOrEv.target.value as Y\n\n setValue((prev) => {\n if (prev.includes(valueOrEv)) {\n return prev.filter((prevValue) => prevValue !== valueOrEv)\n } else if (!isNumber(max) || prev.length < max) {\n return [...prev, valueOrEv]\n } else {\n return prev\n }\n })\n },\n [interactive, max, setValue],\n )\n\n const getRootProps: PropGetter = useCallback(\n ({\n ref,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) =>\n mergeProps(\n dataProps,\n {\n \"aria-describedby\": cx(ariaDescribedbyProp, ariaDescribedby),\n \"aria-labelledby\": cx(labelId, ariaLabelledby),\n role: \"group\",\n },\n rest,\n props,\n {\n ref,\n },\n )(),\n [ariaDescribedbyProp, dataProps, labelId, rest],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n (props = {}) => {\n const checked =\n !isUndefined(value) &&\n (isString(props.value) || isNumber(props.value)) &&\n value.includes(props.value as Y)\n const trulyDisabled = !checked && isNumber(max) && value.length >= max\n\n return {\n ...dataProps,\n ...ariaProps,\n type: \"checkbox\",\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": checked,\n \"aria-disabled\": ariaAttr(trulyDisabled),\n \"data-checked\": dataAttr(checked),\n \"data-disabled\": dataAttr(trulyDisabled),\n checked,\n disabled: trulyDisabled,\n readOnly,\n required,\n ...props,\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n },\n [\n ariaProps,\n dataProps,\n eventProps,\n max,\n onChange,\n readOnly,\n required,\n value,\n ],\n )\n\n const getLabelProps: PropGetter<\"label\"> = useCallback(\n (props) => ({\n ...dataProps,\n ...props,\n }),\n [dataProps],\n )\n\n return {\n max,\n value,\n getInputProps,\n getLabelProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxGroupReturn = ReturnType<typeof useCheckboxGroup>\n"],"mappings":";;;;;;;;;;;;;AA2BA,MAAM,CAAC,sBAAsB,2BAC3BA,gBAAoC;CAClC,MAAM;CACN,QAAQ;CACT,CAAC;AA0BJ,MAAa,oBACX,QAAkC,EAAE,KACjC;CACH,MAAM,EACJ,SAAS,EAAE,YAAY,EAAE,EACzB,OAAO,EACL,eAAe,EAAE,EACjB,UACA,KACA,UACA,UACA,OAAO,WACP,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,qBAAqB,GAAG,aACzD,WACA,eACE,cAAc,MAAM;CACxB,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,CAAC,OAAO,YAAY,qBAAqB;EAC7C;EACA,OAAO;EACP,UAAU;EACX,CAAC;CAEF,MAAM,WAAW,aACd,cAAiD;AAChD,MAAI,CAAC,YAAa;AAElB,kCAAa,UAAU,CAAE,aAAY,UAAU,OAAO;AAEtD,YAAU,SAAS;AACjB,OAAI,KAAK,SAAS,UAAU,CAC1B,QAAO,KAAK,QAAQ,cAAc,cAAc,UAAU;YACjD,6BAAU,IAAI,IAAI,KAAK,SAAS,IACzC,QAAO,CAAC,GAAG,MAAM,UAAU;OAE3B,QAAO;IAET;IAEJ;EAAC;EAAa;EAAK;EAAS,CAC7B;CAED,MAAMC,eAA2B,aAC9B,EACC,KACA,oBAAoB,iBACpB,mBAAmB,gBACnB,GAAGC,YACD,EAAE,KACJ,WACE,WACA;EACE,0CAAuB,qBAAqB,gBAAgB;EAC5D,yCAAsB,SAAS,eAAe;EAC9C,MAAM;EACP,EACD,MACAA,SACA,EACE,KACD,CACF,EAAE,EACL;EAAC;EAAqB;EAAW;EAAS;EAAK,CAChD;AAiDD,QAAO;EACL;EACA;EACA,eAlDyC,aACxC,UAAQ,EAAE,KAAK;GACd,MAAM,UACJ,gCAAa,MAAM,iCACTA,QAAM,MAAM,gCAAaA,QAAM,MAAM,KAC/C,MAAM,SAASA,QAAM,MAAW;GAClC,MAAM,gBAAgB,CAAC,uCAAoB,IAAI,IAAI,MAAM,UAAU;AAEnE,UAAO;IACL,GAAG;IACH,GAAG;IACH,MAAM;IACN,OAAO,yBAAyB;IAChC,gBAAgB;IAChB,6CAA0B,cAAc;IACxC,4CAAyB,QAAQ;IACjC,6CAA0B,cAAc;IACxC;IACA,UAAU;IACV;IACA;IACA,GAAGA;IACH,sCAAmBA,QAAM,QAAQ,WAAW,OAAO;IACnD,wCAAqBA,QAAM,UAAU,SAAS;IAC9C,uCAAoBA,QAAM,SAAS,WAAW,QAAQ;IACvD;KAEH;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAcC,eAZyC,aACxC,aAAW;GACV,GAAG;GACH,GAAGA;GACJ,GACD,CAAC,UAAU,CACZ;EAOC;EACA;EACD"}
@@ -3,6 +3,8 @@
3
3
  import { visuallyHiddenAttributes } from "../../utils/dom.js";
4
4
  import { mergeRefs } from "../../utils/ref.js";
5
5
  import { utils_exports } from "../../utils/index.js";
6
+ import { mergeProps } from "../../core/components/props.js";
7
+ import "../../core/index.js";
6
8
  import { useControllableEventState } from "../../hooks/use-controllable-state/index.js";
7
9
  import { useFieldProps } from "../field/use-field-props.js";
8
10
  import "../field/index.js";
@@ -40,14 +42,11 @@ const useCheckbox = ({ "aria-describedby": ariaDescribedbyProp, ...props } = {})
40
42
  setChecked
41
43
  ]);
42
44
  const getRootProps = useCallback((props$1 = {}) => {
43
- const sharedProps = {
44
- ...dataProps,
45
+ const merged = mergeProps(dataProps, {
45
46
  "data-checked": (0, utils_exports.dataAttr)(checked),
46
- "data-indeterminate": (0, utils_exports.dataAttr)(indeterminate),
47
- ...rest,
48
- ...props$1
49
- };
50
- return getLabelProps?.(sharedProps) ?? sharedProps;
47
+ "data-indeterminate": (0, utils_exports.dataAttr)(indeterminate)
48
+ }, rest, props$1)();
49
+ return getLabelProps?.(merged) ?? merged;
51
50
  }, [
52
51
  dataProps,
53
52
  checked,
@@ -1 +1 @@
1
- {"version":3,"file":"use-checkbox.js","names":["getRootProps: PropGetter<\"label\">","props","getInputProps: PropGetter<\"input\">","ariaDescribedby"],"sources":["../../../../src/components/checkbox/use-checkbox.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent, ChangeEventHandler, FocusEventHandler } from \"react\"\nimport type { HTMLProps, HTMLRefAttributes, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback, useId } from \"react\"\nimport { useControllableEventState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isUndefined,\n mergeRefs,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\nimport { useCheckboxGroupContext } from \"./use-checkbox-group\"\n\nexport interface UseCheckboxProps<Y extends string = string>\n extends\n Omit<HTMLProps<\"label\">, \"onBlur\" | \"onChange\" | \"onFocus\" | \"ref\">,\n HTMLRefAttributes<\"input\">,\n FieldProps {\n /**\n * If `true`, the checkbox will be checked.\n */\n checked?: boolean\n /**\n * If `true`, the checkbox will be initially checked.\n *\n * @default false\n */\n defaultChecked?: boolean\n /**\n * id assigned to input.\n */\n id?: string\n /**\n * If `true`, the checkbox will be indeterminate.\n *\n * @default false\n */\n indeterminate?: boolean\n /**\n * The name of the input field in a checkbox.\n */\n name?: string\n /**\n * The value of the checkbox.\n */\n value?: Y\n /**\n * The callback invoked when the checkbox is blurred.\n */\n onBlur?: FocusEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checked state changes.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checkbox is focused.\n */\n onFocus?: FocusEventHandler<HTMLInputElement>\n}\n\nexport const useCheckbox = <Y extends string = string>({\n \"aria-describedby\": ariaDescribedbyProp,\n ...props\n}: UseCheckboxProps<Y> = {}) => {\n const group = useCheckboxGroupContext()\n const {\n max,\n value: groupValue,\n getInputProps: getGroupInputProps,\n getLabelProps,\n } = group ?? {}\n const uuid = useId()\n const {\n props: {\n id,\n ref,\n name,\n \"aria-controls\": ariaControlsProp,\n \"aria-labelledby\": ariaLabelledbyProp,\n checked: checkedProp,\n defaultChecked = false,\n disabled,\n indeterminate = false,\n readOnly,\n required,\n tabIndex,\n value,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedby, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps({\n id: group ? uuid : undefined,\n ...props,\n notSupportReadOnly: true,\n })\n const resolvedAriaDescribedby = group ? ariaDescribedbyProp : ariaDescribedby\n const resolvedChecked =\n !isUndefined(groupValue) && !isUndefined(value)\n ? groupValue.includes(value)\n : checkedProp\n const [checked, setChecked] = useControllableEventState({\n defaultValue: defaultChecked,\n value: resolvedChecked,\n onChange: onChangeProp,\n })\n const trulyDisabled =\n !checked && isNumber(max) && group && group.value.length >= max\n const interactive = !(readOnly || trulyDisabled)\n const indeterminateRef = useCallback(\n (el: HTMLInputElement | null) => {\n if (el) el.indeterminate = indeterminate\n },\n [indeterminate],\n )\n\n const onChange = useCallback(\n (ev: ChangeEvent<HTMLInputElement>) => {\n if (!interactive) return (ev.defaultPrevented = true)\n\n if (indeterminate) ev.target.checked = true\n\n setChecked(ev)\n },\n [interactive, indeterminate, setChecked],\n )\n\n const getRootProps: PropGetter<\"label\"> = useCallback(\n (props = {}) => {\n const sharedProps = {\n ...dataProps,\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n ...rest,\n ...props,\n }\n\n return getLabelProps?.(sharedProps) ?? sharedProps\n },\n [dataProps, checked, indeterminate, rest, getLabelProps],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n ({\n \"aria-controls\": ariaControls,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) => {\n const sharedProps = {\n ...dataProps,\n ...ariaProps,\n id,\n type: \"checkbox\",\n name,\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": indeterminate ? (\"mixed\" as const) : checked,\n \"aria-controls\": cx(ariaControls, ariaControlsProp),\n \"aria-describedby\": cx(resolvedAriaDescribedby, ariaDescribedby),\n \"aria-disabled\": ariaAttr(!interactive),\n \"aria-labelledby\": cx(ariaLabelledby, ariaLabelledbyProp),\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n checked,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ...props,\n ref: mergeRefs(props.ref, ref, indeterminateRef),\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n\n return getGroupInputProps?.(sharedProps) ?? sharedProps\n },\n [\n dataProps,\n ariaProps,\n id,\n name,\n indeterminate,\n checked,\n ariaControlsProp,\n resolvedAriaDescribedby,\n interactive,\n ariaLabelledbyProp,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ref,\n indeterminateRef,\n eventProps.onBlur,\n eventProps.onFocus,\n onChange,\n getGroupInputProps,\n ],\n )\n\n const getIndicatorProps: PropGetter = useCallback(\n (props = {}) => ({\n ...dataProps,\n \"aria-hidden\": \"true\",\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n ...props,\n }),\n [dataProps, checked, indeterminate],\n )\n\n return {\n checked,\n indeterminate,\n getIndicatorProps,\n getInputProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxReturn = ReturnType<typeof useCheckbox>\n"],"mappings":";;;;;;;;;;;;AAmEA,MAAa,eAA0C,EACrD,oBAAoB,qBACpB,GAAG,UACoB,EAAE,KAAK;CAC9B,MAAM,QAAQ,yBAAyB;CACvC,MAAM,EACJ,KACA,OAAO,YACP,eAAe,oBACf,kBACE,SAAS,EAAE;CACf,MAAM,OAAO,OAAO;CACpB,MAAM,EACJ,OAAO,EACL,IACA,KACA,MACA,iBAAiB,kBACjB,mBAAmB,oBACnB,SAAS,aACT,iBAAiB,OACjB,UACA,gBAAgB,OAChB,UACA,UACA,UACA,OACA,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,iBAAiB,GAAG,aACrD,WACA,eACE,cAAc;EAChB,IAAI,QAAQ,OAAO;EACnB,GAAG;EACH,oBAAoB;EACrB,CAAC;CACF,MAAM,0BAA0B,QAAQ,sBAAsB;CAK9D,MAAM,CAAC,SAAS,cAAc,0BAA0B;EACtD,cAAc;EACd,OALA,gCAAa,WAAW,IAAI,gCAAa,MAAM,GAC3C,WAAW,SAAS,MAAM,GAC1B;EAIJ,UAAU;EACX,CAAC;CACF,MAAM,gBACJ,CAAC,uCAAoB,IAAI,IAAI,SAAS,MAAM,MAAM,UAAU;CAC9D,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,mBAAmB,aACtB,OAAgC;AAC/B,MAAI,GAAI,IAAG,gBAAgB;IAE7B,CAAC,cAAc,CAChB;CAED,MAAM,WAAW,aACd,OAAsC;AACrC,MAAI,CAAC,YAAa,QAAQ,GAAG,mBAAmB;AAEhD,MAAI,cAAe,IAAG,OAAO,UAAU;AAEvC,aAAW,GAAG;IAEhB;EAAC;EAAa;EAAe;EAAW,CACzC;CAED,MAAMA,eAAoC,aACvC,UAAQ,EAAE,KAAK;EACd,MAAM,cAAc;GAClB,GAAG;GACH,4CAAyB,QAAQ;GACjC,kDAA+B,cAAc;GAC7C,GAAG;GACH,GAAGC;GACJ;AAED,SAAO,gBAAgB,YAAY,IAAI;IAEzC;EAAC;EAAW;EAAS;EAAe;EAAM;EAAc,CACzD;CAED,MAAMC,gBAAqC,aACxC,EACC,iBAAiB,cACjB,oBAAoBC,mBACpB,mBAAmB,gBACnB,GAAGF,YACD,EAAE,KAAK;EACT,MAAM,cAAc;GAClB,GAAG;GACH,GAAG;GACH;GACA,MAAM;GACN;GACA,OAAO,yBAAyB;GAChC,gBAAgB,gBAAiB,UAAoB;GACrD,uCAAoB,cAAc,iBAAiB;GACnD,0CAAuB,yBAAyBE,kBAAgB;GAChE,6CAA0B,CAAC,YAAY;GACvC,yCAAsB,gBAAgB,mBAAmB;GACzD,4CAAyB,QAAQ;GACjC,kDAA+B,cAAc;GAC7C;GACA;GACA;GACA;GACA;GACA;GACA,GAAGF;GACH,KAAK,UAAUA,QAAM,KAAK,KAAK,iBAAiB;GAChD,sCAAmBA,QAAM,QAAQ,WAAW,OAAO;GACnD,wCAAqBA,QAAM,UAAU,SAAS;GAC9C,uCAAoBA,QAAM,SAAS,WAAW,QAAQ;GACvD;AAED,SAAO,qBAAqB,YAAY,IAAI;IAE9C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;EACX,WAAW;EACX;EACA;EACD,CACF;AAaD,QAAO;EACL;EACA;EACA,mBAdoC,aACnC,UAAQ,EAAE,MAAM;GACf,GAAG;GACH,eAAe;GACf,4CAAyB,QAAQ;GACjC,kDAA+B,cAAc;GAC7C,GAAGA;GACJ,GACD;GAAC;GAAW;GAAS;GAAc,CACpC;EAMC;EACA;EACA;EACD"}
1
+ {"version":3,"file":"use-checkbox.js","names":["getRootProps: PropGetter<\"label\">","props","getInputProps: PropGetter<\"input\">","ariaDescribedby"],"sources":["../../../../src/components/checkbox/use-checkbox.ts"],"sourcesContent":["\"use client\"\n\nimport type { ChangeEvent, ChangeEventHandler, FocusEventHandler } from \"react\"\nimport type { HTMLProps, HTMLRefAttributes, PropGetter } from \"../../core\"\nimport type { FieldProps } from \"../field\"\nimport { useCallback, useId } from \"react\"\nimport { mergeProps } from \"../../core\"\nimport { useControllableEventState } from \"../../hooks/use-controllable-state\"\nimport {\n ariaAttr,\n cx,\n dataAttr,\n handlerAll,\n isNumber,\n isUndefined,\n mergeRefs,\n visuallyHiddenAttributes,\n} from \"../../utils\"\nimport { useFieldProps } from \"../field\"\nimport { useCheckboxGroupContext } from \"./use-checkbox-group\"\n\nexport interface UseCheckboxProps<Y extends string = string>\n extends\n Omit<HTMLProps<\"label\">, \"onBlur\" | \"onChange\" | \"onFocus\" | \"ref\">,\n HTMLRefAttributes<\"input\">,\n FieldProps {\n /**\n * If `true`, the checkbox will be checked.\n */\n checked?: boolean\n /**\n * If `true`, the checkbox will be initially checked.\n *\n * @default false\n */\n defaultChecked?: boolean\n /**\n * id assigned to input.\n */\n id?: string\n /**\n * If `true`, the checkbox will be indeterminate.\n *\n * @default false\n */\n indeterminate?: boolean\n /**\n * The name of the input field in a checkbox.\n */\n name?: string\n /**\n * The value of the checkbox.\n */\n value?: Y\n /**\n * The callback invoked when the checkbox is blurred.\n */\n onBlur?: FocusEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checked state changes.\n */\n onChange?: ChangeEventHandler<HTMLInputElement>\n /**\n * The callback invoked when the checkbox is focused.\n */\n onFocus?: FocusEventHandler<HTMLInputElement>\n}\n\nexport const useCheckbox = <Y extends string = string>({\n \"aria-describedby\": ariaDescribedbyProp,\n ...props\n}: UseCheckboxProps<Y> = {}) => {\n const group = useCheckboxGroupContext()\n const {\n max,\n value: groupValue,\n getInputProps: getGroupInputProps,\n getLabelProps,\n } = group ?? {}\n const uuid = useId()\n const {\n props: {\n id,\n ref,\n name,\n \"aria-controls\": ariaControlsProp,\n \"aria-labelledby\": ariaLabelledbyProp,\n checked: checkedProp,\n defaultChecked = false,\n disabled,\n indeterminate = false,\n readOnly,\n required,\n tabIndex,\n value,\n onChange: onChangeProp,\n ...rest\n },\n ariaProps: { \"aria-describedby\": ariaDescribedby, ...ariaProps },\n dataProps,\n eventProps,\n } = useFieldProps({\n id: group ? uuid : undefined,\n ...props,\n notSupportReadOnly: true,\n })\n const resolvedAriaDescribedby = group ? ariaDescribedbyProp : ariaDescribedby\n const resolvedChecked =\n !isUndefined(groupValue) && !isUndefined(value)\n ? groupValue.includes(value)\n : checkedProp\n const [checked, setChecked] = useControllableEventState({\n defaultValue: defaultChecked,\n value: resolvedChecked,\n onChange: onChangeProp,\n })\n const trulyDisabled =\n !checked && isNumber(max) && group && group.value.length >= max\n const interactive = !(readOnly || trulyDisabled)\n const indeterminateRef = useCallback(\n (el: HTMLInputElement | null) => {\n if (el) el.indeterminate = indeterminate\n },\n [indeterminate],\n )\n\n const onChange = useCallback(\n (ev: ChangeEvent<HTMLInputElement>) => {\n if (!interactive) return (ev.defaultPrevented = true)\n\n if (indeterminate) ev.target.checked = true\n\n setChecked(ev)\n },\n [interactive, indeterminate, setChecked],\n )\n\n const getRootProps: PropGetter<\"label\"> = useCallback(\n (props = {}) => {\n const merged = mergeProps(\n dataProps,\n {\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n },\n rest,\n props,\n )()\n\n return getLabelProps?.(merged) ?? merged\n },\n [dataProps, checked, indeterminate, rest, getLabelProps],\n )\n\n const getInputProps: PropGetter<\"input\"> = useCallback(\n ({\n \"aria-controls\": ariaControls,\n \"aria-describedby\": ariaDescribedby,\n \"aria-labelledby\": ariaLabelledby,\n ...props\n } = {}) => {\n const sharedProps = {\n ...dataProps,\n ...ariaProps,\n id,\n type: \"checkbox\",\n name,\n style: visuallyHiddenAttributes.style,\n \"aria-checked\": indeterminate ? (\"mixed\" as const) : checked,\n \"aria-controls\": cx(ariaControls, ariaControlsProp),\n \"aria-describedby\": cx(resolvedAriaDescribedby, ariaDescribedby),\n \"aria-disabled\": ariaAttr(!interactive),\n \"aria-labelledby\": cx(ariaLabelledby, ariaLabelledbyProp),\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n checked,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ...props,\n ref: mergeRefs(props.ref, ref, indeterminateRef),\n onBlur: handlerAll(props.onBlur, eventProps.onBlur),\n onChange: handlerAll(props.onChange, onChange),\n onFocus: handlerAll(props.onFocus, eventProps.onFocus),\n }\n\n return getGroupInputProps?.(sharedProps) ?? sharedProps\n },\n [\n dataProps,\n ariaProps,\n id,\n name,\n indeterminate,\n checked,\n ariaControlsProp,\n resolvedAriaDescribedby,\n interactive,\n ariaLabelledbyProp,\n disabled,\n readOnly,\n required,\n tabIndex,\n value,\n ref,\n indeterminateRef,\n eventProps.onBlur,\n eventProps.onFocus,\n onChange,\n getGroupInputProps,\n ],\n )\n\n const getIndicatorProps: PropGetter = useCallback(\n (props = {}) => ({\n ...dataProps,\n \"aria-hidden\": \"true\",\n \"data-checked\": dataAttr(checked),\n \"data-indeterminate\": dataAttr(indeterminate),\n ...props,\n }),\n [dataProps, checked, indeterminate],\n )\n\n return {\n checked,\n indeterminate,\n getIndicatorProps,\n getInputProps,\n getRootProps,\n onChange,\n }\n}\n\nexport type UseCheckboxReturn = ReturnType<typeof useCheckbox>\n"],"mappings":";;;;;;;;;;;;;;AAoEA,MAAa,eAA0C,EACrD,oBAAoB,qBACpB,GAAG,UACoB,EAAE,KAAK;CAC9B,MAAM,QAAQ,yBAAyB;CACvC,MAAM,EACJ,KACA,OAAO,YACP,eAAe,oBACf,kBACE,SAAS,EAAE;CACf,MAAM,OAAO,OAAO;CACpB,MAAM,EACJ,OAAO,EACL,IACA,KACA,MACA,iBAAiB,kBACjB,mBAAmB,oBACnB,SAAS,aACT,iBAAiB,OACjB,UACA,gBAAgB,OAChB,UACA,UACA,UACA,OACA,UAAU,cACV,GAAG,QAEL,WAAW,EAAE,oBAAoB,iBAAiB,GAAG,aACrD,WACA,eACE,cAAc;EAChB,IAAI,QAAQ,OAAO;EACnB,GAAG;EACH,oBAAoB;EACrB,CAAC;CACF,MAAM,0BAA0B,QAAQ,sBAAsB;CAK9D,MAAM,CAAC,SAAS,cAAc,0BAA0B;EACtD,cAAc;EACd,OALA,gCAAa,WAAW,IAAI,gCAAa,MAAM,GAC3C,WAAW,SAAS,MAAM,GAC1B;EAIJ,UAAU;EACX,CAAC;CACF,MAAM,gBACJ,CAAC,uCAAoB,IAAI,IAAI,SAAS,MAAM,MAAM,UAAU;CAC9D,MAAM,cAAc,EAAE,YAAY;CAClC,MAAM,mBAAmB,aACtB,OAAgC;AAC/B,MAAI,GAAI,IAAG,gBAAgB;IAE7B,CAAC,cAAc,CAChB;CAED,MAAM,WAAW,aACd,OAAsC;AACrC,MAAI,CAAC,YAAa,QAAQ,GAAG,mBAAmB;AAEhD,MAAI,cAAe,IAAG,OAAO,UAAU;AAEvC,aAAW,GAAG;IAEhB;EAAC;EAAa;EAAe;EAAW,CACzC;CAED,MAAMA,eAAoC,aACvC,UAAQ,EAAE,KAAK;EACd,MAAM,SAAS,WACb,WACA;GACE,4CAAyB,QAAQ;GACjC,kDAA+B,cAAc;GAC9C,EACD,MACAC,QACD,EAAE;AAEH,SAAO,gBAAgB,OAAO,IAAI;IAEpC;EAAC;EAAW;EAAS;EAAe;EAAM;EAAc,CACzD;CAED,MAAMC,gBAAqC,aACxC,EACC,iBAAiB,cACjB,oBAAoBC,mBACpB,mBAAmB,gBACnB,GAAGF,YACD,EAAE,KAAK;EACT,MAAM,cAAc;GAClB,GAAG;GACH,GAAG;GACH;GACA,MAAM;GACN;GACA,OAAO,yBAAyB;GAChC,gBAAgB,gBAAiB,UAAoB;GACrD,uCAAoB,cAAc,iBAAiB;GACnD,0CAAuB,yBAAyBE,kBAAgB;GAChE,6CAA0B,CAAC,YAAY;GACvC,yCAAsB,gBAAgB,mBAAmB;GACzD,4CAAyB,QAAQ;GACjC,kDAA+B,cAAc;GAC7C;GACA;GACA;GACA;GACA;GACA;GACA,GAAGF;GACH,KAAK,UAAUA,QAAM,KAAK,KAAK,iBAAiB;GAChD,sCAAmBA,QAAM,QAAQ,WAAW,OAAO;GACnD,wCAAqBA,QAAM,UAAU,SAAS;GAC9C,uCAAoBA,QAAM,SAAS,WAAW,QAAQ;GACvD;AAED,SAAO,qBAAqB,YAAY,IAAI;IAE9C;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;EACX,WAAW;EACX;EACA;EACD,CACF;AAaD,QAAO;EACL;EACA;EACA,mBAdoC,aACnC,UAAQ,EAAE,MAAM;GACf,GAAG;GACH,eAAe;GACf,4CAAyB,QAAQ;GACjC,kDAA+B,cAAc;GAC7C,GAAGA;GACJ,GACD;GAAC;GAAW;GAAS;GAAc,CACpC;EAMC;EACA;EACA;EACD"}
@@ -9,7 +9,7 @@ import "../collapse/index.js";
9
9
  import "../../index.js";
10
10
  import { AccordionStyle } from "./accordion.style.js";
11
11
  import { UseAccordionItemProps, UseAccordionProps } from "./use-accordion.js";
12
- import * as react1002 from "react";
12
+ import * as react99 from "react";
13
13
 
14
14
  //#region src/components/accordion/accordion.d.ts
15
15
  interface AccordionCallBackProps {
@@ -33,7 +33,7 @@ interface AccordionRootProps extends Omit<HTMLStyledProps, "onChange">, ThemePro
33
33
  */
34
34
  items?: AccordionItem[];
35
35
  }
36
- declare const AccordionPropsContext: react1002.Context<Partial<AccordionRootProps> | undefined>, useAccordionPropsContext: () => Partial<AccordionRootProps> | undefined;
36
+ declare const AccordionPropsContext: react99.Context<Partial<AccordionRootProps> | undefined>, useAccordionPropsContext: () => Partial<AccordionRootProps> | undefined;
37
37
  /**
38
38
  * `Accordion` is a component for a list that displays information in an expandable or collapsible manner.
39
39
  *