@ifhover/leaf-ui 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/cjs/autocomplete/autocomplete.cjs +7 -3
- package/dist/cjs/autocomplete/autocomplete.cjs.map +1 -1
- package/dist/cjs/autocomplete/autocomplete.d.cts +2 -0
- package/dist/cjs/autocomplete/autocomplete.d.cts.map +1 -1
- package/dist/cjs/browser/modules/autocomplete/autocomplete.cjs +7 -3
- package/dist/cjs/browser/modules/autocomplete/autocomplete.cjs.map +1 -1
- package/dist/cjs/browser/modules/button/button.cjs.map +1 -1
- package/dist/cjs/browser/modules/cascader/cascader.cjs +9 -2
- package/dist/cjs/browser/modules/cascader/cascader.cjs.map +1 -1
- package/dist/cjs/browser/modules/colors.cjs +73 -7
- package/dist/cjs/browser/modules/colors.cjs.map +1 -1
- package/dist/cjs/browser/modules/commandpalette/commandpalette.cjs +10 -3
- package/dist/cjs/browser/modules/commandpalette/commandpalette.cjs.map +1 -1
- package/dist/cjs/browser/modules/config-provider/component-defaults.cjs.map +1 -1
- package/dist/cjs/browser/modules/config-provider/use-color-variables.cjs +18 -2
- package/dist/cjs/browser/modules/config-provider/use-color-variables.cjs.map +1 -1
- package/dist/cjs/browser/modules/drawer/drawer.cjs +7 -1
- package/dist/cjs/browser/modules/drawer/drawer.cjs.map +1 -1
- package/dist/cjs/browser/modules/dropdown/dropdown.cjs +25 -4
- package/dist/cjs/browser/modules/dropdown/dropdown.cjs.map +1 -1
- package/dist/cjs/browser/modules/form/form.cjs +38 -21
- package/dist/cjs/browser/modules/form/form.cjs.map +1 -1
- package/dist/cjs/browser/modules/image/viewer.cjs +8 -2
- package/dist/cjs/browser/modules/image/viewer.cjs.map +1 -1
- package/dist/cjs/browser/modules/index.cjs +3 -4
- package/dist/cjs/browser/modules/layout/layout.cjs +4 -1
- package/dist/cjs/browser/modules/layout/layout.cjs.map +1 -1
- package/dist/cjs/browser/modules/mentions/mentions.cjs +4 -2
- package/dist/cjs/browser/modules/mentions/mentions.cjs.map +1 -1
- package/dist/cjs/browser/modules/menu/index.cjs +5 -2
- package/dist/cjs/browser/modules/menu/menu.cjs +60 -18
- package/dist/cjs/browser/modules/menu/menu.cjs.map +1 -1
- package/dist/cjs/browser/modules/scrollbar/scrollbar.cjs +69 -19
- package/dist/cjs/browser/modules/scrollbar/scrollbar.cjs.map +1 -1
- package/dist/cjs/browser/modules/select/select.cjs +3 -3
- package/dist/cjs/browser/modules/select/select.cjs.map +1 -1
- package/dist/cjs/browser/modules/shared/floating.cjs +49 -20
- package/dist/cjs/browser/modules/shared/floating.cjs.map +1 -1
- package/dist/cjs/browser/modules/shared/scoped-portal.cjs +2 -23
- package/dist/cjs/browser/modules/shared/scoped-portal.cjs.map +1 -1
- package/dist/cjs/browser/modules/{segmented/index.cjs → shared/theme-variables.cjs} +27 -5
- package/dist/cjs/browser/modules/shared/theme-variables.cjs.map +1 -0
- package/dist/cjs/browser/modules/splitter/splitter.cjs +4 -1
- package/dist/cjs/browser/modules/splitter/splitter.cjs.map +1 -1
- package/dist/cjs/browser/modules/tabs/tabs.cjs +14 -8
- package/dist/cjs/browser/modules/tabs/tabs.cjs.map +1 -1
- package/dist/cjs/browser/modules/tailwind-tokens.cjs +1 -1
- package/dist/cjs/browser/modules/tailwind-tokens.cjs.map +1 -1
- package/dist/cjs/browser/modules/textarea/textarea.cjs +49 -21
- package/dist/cjs/browser/modules/textarea/textarea.cjs.map +1 -1
- package/dist/cjs/browser/modules/theme.cjs +53 -29
- package/dist/cjs/browser/modules/theme.cjs.map +1 -1
- package/dist/cjs/browser/modules/timeline/timeline.cjs +1 -1
- package/dist/cjs/browser/modules/timeline/timeline.cjs.map +1 -1
- package/dist/cjs/browser/modules/timepicker/time-panel.cjs +8 -2
- package/dist/cjs/browser/modules/timepicker/time-panel.cjs.map +1 -1
- package/dist/cjs/browser/modules/transfer/transfer.cjs +5 -5
- package/dist/cjs/browser/modules/transfer/transfer.cjs.map +1 -1
- package/dist/cjs/browser/modules/tree/tree.cjs +13 -6
- package/dist/cjs/browser/modules/tree/tree.cjs.map +1 -1
- package/dist/cjs/browser/modules/treeselect/treeselect.cjs +5 -4
- package/dist/cjs/browser/modules/treeselect/treeselect.cjs.map +1 -1
- package/dist/cjs/browser/modules/virtuallist/virtuallist.cjs +9 -3
- package/dist/cjs/browser/modules/virtuallist/virtuallist.cjs.map +1 -1
- package/dist/cjs/button/button.cjs.map +1 -1
- package/dist/cjs/button/button.d.cts +7 -2
- package/dist/cjs/button/button.d.cts.map +1 -1
- package/dist/cjs/cascader/cascader.cjs +9 -2
- package/dist/cjs/cascader/cascader.cjs.map +1 -1
- package/dist/cjs/cascader/cascader.d.cts +2 -0
- package/dist/cjs/cascader/cascader.d.cts.map +1 -1
- package/dist/cjs/colors.cjs +73 -7
- package/dist/cjs/colors.cjs.map +1 -1
- package/dist/cjs/colors.d.cts +3 -1
- package/dist/cjs/colors.d.cts.map +1 -1
- package/dist/cjs/commandpalette/commandpalette.cjs +10 -3
- package/dist/cjs/commandpalette/commandpalette.cjs.map +1 -1
- package/dist/cjs/commandpalette/commandpalette.d.cts.map +1 -1
- package/dist/cjs/config-provider/component-defaults.cjs.map +1 -1
- package/dist/cjs/config-provider/component-defaults.d.cts +3 -4
- package/dist/cjs/config-provider/component-defaults.d.cts.map +1 -1
- package/dist/cjs/config-provider/index.d.cts +1 -1
- package/dist/cjs/config-provider/index.d.cts.map +1 -1
- package/dist/cjs/config-provider/use-color-variables.cjs +18 -2
- package/dist/cjs/config-provider/use-color-variables.cjs.map +1 -1
- package/dist/cjs/config-provider/use-color-variables.d.cts.map +1 -1
- package/dist/cjs/drawer/drawer.cjs +7 -1
- package/dist/cjs/drawer/drawer.cjs.map +1 -1
- package/dist/cjs/drawer/drawer.d.cts.map +1 -1
- package/dist/cjs/dropdown/dropdown.cjs +25 -4
- package/dist/cjs/dropdown/dropdown.cjs.map +1 -1
- package/dist/cjs/dropdown/dropdown.d.cts +9 -1
- package/dist/cjs/dropdown/dropdown.d.cts.map +1 -1
- package/dist/cjs/form/form.cjs +38 -21
- package/dist/cjs/form/form.cjs.map +1 -1
- package/dist/cjs/form/form.d.cts +3 -1
- package/dist/cjs/form/form.d.cts.map +1 -1
- package/dist/cjs/image/viewer.cjs +8 -2
- package/dist/cjs/image/viewer.cjs.map +1 -1
- package/dist/cjs/image/viewer.d.cts.map +1 -1
- package/dist/cjs/index.cjs +3 -4
- package/dist/cjs/index.d.cts +3 -5
- package/dist/cjs/index.d.cts.map +1 -1
- package/dist/cjs/layout/layout.cjs +4 -1
- package/dist/cjs/layout/layout.cjs.map +1 -1
- package/dist/cjs/layout/layout.d.cts.map +1 -1
- package/dist/cjs/mentions/mentions.cjs +4 -2
- package/dist/cjs/mentions/mentions.cjs.map +1 -1
- package/dist/cjs/mentions/mentions.d.cts +2 -0
- package/dist/cjs/mentions/mentions.d.cts.map +1 -1
- package/dist/cjs/menu/index.cjs +5 -2
- package/dist/cjs/menu/index.d.cts +2 -2
- package/dist/cjs/menu/index.d.cts.map +1 -1
- package/dist/cjs/menu/menu.cjs +60 -18
- package/dist/cjs/menu/menu.cjs.map +1 -1
- package/dist/cjs/menu/menu.d.cts +4 -0
- package/dist/cjs/menu/menu.d.cts.map +1 -1
- package/dist/cjs/scrollbar/scrollbar.cjs +69 -19
- package/dist/cjs/scrollbar/scrollbar.cjs.map +1 -1
- package/dist/cjs/scrollbar/scrollbar.d.cts +12 -2
- package/dist/cjs/scrollbar/scrollbar.d.cts.map +1 -1
- package/dist/cjs/select/select.cjs +3 -3
- package/dist/cjs/select/select.cjs.map +1 -1
- package/dist/cjs/shared/floating.cjs +49 -20
- package/dist/cjs/shared/floating.cjs.map +1 -1
- package/dist/cjs/shared/floating.d.cts +3 -1
- package/dist/cjs/shared/floating.d.cts.map +1 -1
- package/dist/cjs/shared/scoped-portal.cjs +2 -23
- package/dist/cjs/shared/scoped-portal.cjs.map +1 -1
- package/dist/cjs/shared/scoped-portal.d.cts.map +1 -1
- package/dist/cjs/{segmented/index.cjs → shared/theme-variables.cjs} +27 -5
- package/dist/cjs/shared/theme-variables.cjs.map +1 -0
- package/dist/cjs/shared/theme-variables.d.cts +4 -0
- package/dist/cjs/shared/theme-variables.d.cts.map +1 -0
- package/dist/cjs/splitter/splitter.cjs +4 -1
- package/dist/cjs/splitter/splitter.cjs.map +1 -1
- package/dist/cjs/splitter/splitter.d.cts.map +1 -1
- package/dist/cjs/styles/alert.css +1 -1
- package/dist/cjs/styles/anchor.css +1 -1
- package/dist/cjs/styles/appbar.css +1 -1
- package/dist/cjs/styles/autocomplete.css +1 -1
- package/dist/cjs/styles/avatar.css +1 -1
- package/dist/cjs/styles/backtop.css +1 -1
- package/dist/cjs/styles/badge.css +1 -1
- package/dist/cjs/styles/breadcrumb.css +1 -1
- package/dist/cjs/styles/button.css +1 -1
- package/dist/cjs/styles/calendar.css +1 -1
- package/dist/cjs/styles/card.css +1 -1
- package/dist/cjs/styles/carousel.css +1 -1
- package/dist/cjs/styles/cascader.css +1 -1
- package/dist/cjs/styles/checkbox.css +1 -1
- package/dist/cjs/styles/collapse.css +1 -1
- package/dist/cjs/styles/colorpicker.css +1 -1
- package/dist/cjs/styles/commandpalette.css +1 -1
- package/dist/cjs/styles/components/alert.css +1 -1
- package/dist/cjs/styles/components/anchor.css +1 -1
- package/dist/cjs/styles/components/appbar.css +1 -1
- package/dist/cjs/styles/components/autocomplete.css +1 -1
- package/dist/cjs/styles/components/avatar.css +1 -1
- package/dist/cjs/styles/components/breadcrumb.css +1 -1
- package/dist/cjs/styles/components/button.css +1 -1
- package/dist/cjs/styles/components/calendar.css +1 -1
- package/dist/cjs/styles/components/card.css +1 -1
- package/dist/cjs/styles/components/carousel.css +1 -1
- package/dist/cjs/styles/components/cascader.css +1 -1
- package/dist/cjs/styles/components/checkbox.css +1 -1
- package/dist/cjs/styles/components/collapse.css +1 -1
- package/dist/cjs/styles/components/colorpicker.css +1 -1
- package/dist/cjs/styles/components/commandpalette.css +1 -1
- package/dist/cjs/styles/components/datepicker.css +1 -1
- package/dist/cjs/styles/components/descriptions.css +1 -1
- package/dist/cjs/styles/components/drawer.css +1 -1
- package/dist/cjs/styles/components/dropdown.css +1 -1
- package/dist/cjs/styles/components/errorboundary.css +1 -1
- package/dist/cjs/styles/components/filelist.css +1 -1
- package/dist/cjs/styles/components/form.css +1 -1
- package/dist/cjs/styles/components/image.css +1 -1
- package/dist/cjs/styles/components/input.css +1 -1
- package/dist/cjs/styles/components/inputnumber.css +1 -1
- package/dist/cjs/styles/components/inputotp.css +1 -1
- package/dist/cjs/styles/components/layout.css +1 -1
- package/dist/cjs/styles/components/loading.css +1 -1
- package/dist/cjs/styles/components/loadingbar.css +1 -1
- package/dist/cjs/styles/components/mentions.css +1 -1
- package/dist/cjs/styles/components/menu.css +1 -1
- package/dist/cjs/styles/components/message.css +1 -1
- package/dist/cjs/styles/components/modal.css +1 -1
- package/dist/cjs/styles/components/notification.css +1 -1
- package/dist/cjs/styles/components/pagination.css +1 -1
- package/dist/cjs/styles/components/popover.css +1 -1
- package/dist/cjs/styles/components/progress.css +1 -1
- package/dist/cjs/styles/components/radio.css +1 -1
- package/dist/cjs/styles/components/rate.css +1 -1
- package/dist/cjs/styles/components/scrollarea.css +1 -1
- package/dist/cjs/styles/components/scrollbar.css +1 -1
- package/dist/cjs/styles/components/select.css +1 -1
- package/dist/cjs/styles/components/shared-calendar.css +1 -1
- package/dist/cjs/styles/components/slider.css +1 -1
- package/dist/cjs/styles/components/splitter.css +1 -1
- package/dist/cjs/styles/components/steps.css +1 -1
- package/dist/cjs/styles/components/switch.css +1 -1
- package/dist/cjs/styles/components/table.css +1 -1
- package/dist/cjs/styles/components/tabletanstack.css +1 -1
- package/dist/cjs/styles/components/tabs.css +1 -1
- package/dist/cjs/styles/components/tag.css +1 -1
- package/dist/cjs/styles/components/textarea.css +1 -1
- package/dist/cjs/styles/components/timepicker.css +1 -1
- package/dist/cjs/styles/components/tooltip.css +1 -1
- package/dist/cjs/styles/components/tour.css +1 -1
- package/dist/cjs/styles/components/transfer.css +1 -1
- package/dist/cjs/styles/components/tree.css +1 -1
- package/dist/cjs/styles/components/treeselect.css +1 -1
- package/dist/cjs/styles/components/typography.css +1 -1
- package/dist/cjs/styles/components/upload.css +1 -1
- package/dist/cjs/styles/components/virtuallist.css +1 -1
- package/dist/cjs/styles/config-provider.css +1 -1
- package/dist/cjs/styles/confirm.css +1 -1
- package/dist/cjs/styles/datepicker.css +1 -1
- package/dist/cjs/styles/daterangepicker.css +1 -1
- package/dist/cjs/styles/datetimepicker.css +1 -1
- package/dist/cjs/styles/descriptions.css +1 -1
- package/dist/cjs/styles/divider.css +1 -1
- package/dist/cjs/styles/drawer.css +1 -1
- package/dist/cjs/styles/dropdown.css +1 -1
- package/dist/cjs/styles/empty.css +1 -1
- package/dist/cjs/styles/errorboundary.css +1 -1
- package/dist/cjs/styles/filelist.css +1 -1
- package/dist/cjs/styles/flex.css +1 -1
- package/dist/cjs/styles/floatbutton.css +1 -1
- package/dist/cjs/styles/form.css +1 -1
- package/dist/cjs/styles/foundation.css +1 -1
- package/dist/cjs/styles/grid.css +1 -1
- package/dist/cjs/styles/image.css +1 -1
- package/dist/cjs/styles/index.css +1380 -716
- package/dist/cjs/styles/index.css.map +1 -1
- package/dist/cjs/styles/infinitescroll.css +1 -1
- package/dist/cjs/styles/input.css +1 -1
- package/dist/cjs/styles/inputmask.css +1 -1
- package/dist/cjs/styles/inputnumber.css +1 -1
- package/dist/cjs/styles/inputotp.css +1 -1
- package/dist/cjs/styles/layout.css +1 -1
- package/dist/cjs/styles/loading.css +1 -1
- package/dist/cjs/styles/loadingbar.css +1 -1
- package/dist/cjs/styles/masonry.css +1 -1
- package/dist/cjs/styles/mentions.css +1 -1
- package/dist/cjs/styles/menu.css +1 -1
- package/dist/cjs/styles/message.css +1 -1
- package/dist/cjs/styles/modal.css +1 -1
- package/dist/cjs/styles/notification.css +1 -1
- package/dist/cjs/styles/pagination.css +1 -1
- package/dist/cjs/styles/popconfirm.css +1 -1
- package/dist/cjs/styles/popover.css +1 -1
- package/dist/cjs/styles/progress.css +1 -1
- package/dist/cjs/styles/qrcode.css +1 -1
- package/dist/cjs/styles/radio.css +1 -1
- package/dist/cjs/styles/rate.css +1 -1
- package/dist/cjs/styles/result.css +1 -1
- package/dist/cjs/styles/scrollarea.css +1 -1
- package/dist/cjs/styles/scrollbar.css +1 -1
- package/dist/cjs/styles/select.css +1 -1
- package/dist/cjs/styles/skeleton.css +1 -1
- package/dist/cjs/styles/slider.css +1 -1
- package/dist/cjs/styles/space.css +1 -1
- package/dist/cjs/styles/splitter.css +1 -1
- package/dist/cjs/styles/statistic.css +1 -1
- package/dist/cjs/styles/steps.css +1 -1
- package/dist/cjs/styles/switch.css +1 -1
- package/dist/cjs/styles/table.css +1 -1
- package/dist/cjs/styles/tabletanstack.css +1 -1
- package/dist/cjs/styles/tabs.css +1 -1
- package/dist/cjs/styles/tag.css +1 -1
- package/dist/cjs/styles/textarea.css +1 -1
- package/dist/cjs/styles/timeline.css +1 -1
- package/dist/cjs/styles/timepicker.css +1 -1
- package/dist/cjs/styles/timerangepicker.css +1 -1
- package/dist/cjs/styles/tooltip.css +1 -1
- package/dist/cjs/styles/tour.css +1 -1
- package/dist/cjs/styles/transfer.css +1 -1
- package/dist/cjs/styles/tree.css +1 -1
- package/dist/cjs/styles/treeselect.css +1 -1
- package/dist/cjs/styles/typography.css +1 -1
- package/dist/cjs/styles/upload.css +1 -1
- package/dist/cjs/styles/virtuallist.css +1 -1
- package/dist/cjs/tabs/tabs.cjs +14 -8
- package/dist/cjs/tabs/tabs.cjs.map +1 -1
- package/dist/cjs/tabs/tabs.d.cts +4 -2
- package/dist/cjs/tabs/tabs.d.cts.map +1 -1
- package/dist/cjs/tailwind-tokens.cjs +1 -1
- package/dist/cjs/tailwind-tokens.cjs.map +1 -1
- package/dist/cjs/tailwind-tokens.d.cts.map +1 -1
- package/dist/cjs/textarea/textarea.cjs +49 -21
- package/dist/cjs/textarea/textarea.cjs.map +1 -1
- package/dist/cjs/textarea/textarea.d.cts.map +1 -1
- package/dist/cjs/theme.cjs +53 -29
- package/dist/cjs/theme.cjs.map +1 -1
- package/dist/cjs/theme.d.cts +15 -0
- package/dist/cjs/theme.d.cts.map +1 -1
- package/dist/cjs/timeline/timeline.cjs +1 -1
- package/dist/cjs/timeline/timeline.cjs.map +1 -1
- package/dist/cjs/timeline/timeline.d.cts.map +1 -1
- package/dist/cjs/timepicker/time-panel.cjs +8 -2
- package/dist/cjs/timepicker/time-panel.cjs.map +1 -1
- package/dist/cjs/timepicker/time-panel.d.cts.map +1 -1
- package/dist/cjs/transfer/transfer.cjs +5 -5
- package/dist/cjs/transfer/transfer.cjs.map +1 -1
- package/dist/cjs/transfer/transfer.d.cts.map +1 -1
- package/dist/cjs/tree/tree.cjs +13 -6
- package/dist/cjs/tree/tree.cjs.map +1 -1
- package/dist/cjs/tree/tree.d.cts.map +1 -1
- package/dist/cjs/treeselect/treeselect.cjs +5 -4
- package/dist/cjs/treeselect/treeselect.cjs.map +1 -1
- package/dist/cjs/treeselect/treeselect.d.cts.map +1 -1
- package/dist/cjs/virtuallist/virtuallist.cjs +9 -3
- package/dist/cjs/virtuallist/virtuallist.cjs.map +1 -1
- package/dist/cjs/virtuallist/virtuallist.d.cts.map +1 -1
- package/dist/esm/autocomplete/autocomplete.d.ts +2 -0
- package/dist/esm/autocomplete/autocomplete.d.ts.map +1 -1
- package/dist/esm/autocomplete/autocomplete.js +7 -3
- package/dist/esm/autocomplete/autocomplete.js.map +1 -1
- package/dist/esm/browser/modules/autocomplete/autocomplete.js +7 -3
- package/dist/esm/browser/modules/autocomplete/autocomplete.js.map +1 -1
- package/dist/esm/browser/modules/button/button.js.map +1 -1
- package/dist/esm/browser/modules/cascader/cascader.js +9 -2
- package/dist/esm/browser/modules/cascader/cascader.js.map +1 -1
- package/dist/esm/browser/modules/colors.js +69 -6
- package/dist/esm/browser/modules/colors.js.map +1 -1
- package/dist/esm/browser/modules/commandpalette/commandpalette.js +10 -3
- package/dist/esm/browser/modules/commandpalette/commandpalette.js.map +1 -1
- package/dist/esm/browser/modules/config-provider/component-defaults.js.map +1 -1
- package/dist/esm/browser/modules/config-provider/use-color-variables.js +18 -2
- package/dist/esm/browser/modules/config-provider/use-color-variables.js.map +1 -1
- package/dist/esm/browser/modules/drawer/drawer.js +7 -1
- package/dist/esm/browser/modules/drawer/drawer.js.map +1 -1
- package/dist/esm/browser/modules/dropdown/dropdown.js +25 -4
- package/dist/esm/browser/modules/dropdown/dropdown.js.map +1 -1
- package/dist/esm/browser/modules/form/form.js +38 -21
- package/dist/esm/browser/modules/form/form.js.map +1 -1
- package/dist/esm/browser/modules/image/viewer.js +8 -2
- package/dist/esm/browser/modules/image/viewer.js.map +1 -1
- package/dist/esm/browser/modules/index.js +1 -2
- package/dist/esm/browser/modules/layout/layout.js +4 -1
- package/dist/esm/browser/modules/layout/layout.js.map +1 -1
- package/dist/esm/browser/modules/mentions/mentions.js +4 -2
- package/dist/esm/browser/modules/mentions/mentions.js.map +1 -1
- package/dist/esm/browser/modules/menu/index.js +1 -1
- package/dist/esm/browser/modules/menu/menu.js +57 -18
- package/dist/esm/browser/modules/menu/menu.js.map +1 -1
- package/dist/esm/browser/modules/scrollbar/scrollbar.js +69 -19
- package/dist/esm/browser/modules/scrollbar/scrollbar.js.map +1 -1
- package/dist/esm/browser/modules/select/select.js +3 -3
- package/dist/esm/browser/modules/select/select.js.map +1 -1
- package/dist/esm/browser/modules/shared/floating.js +49 -20
- package/dist/esm/browser/modules/shared/floating.js.map +1 -1
- package/dist/esm/browser/modules/shared/scoped-portal.js +2 -23
- package/dist/esm/browser/modules/shared/scoped-portal.js.map +1 -1
- package/dist/esm/browser/modules/shared/theme-variables.js +27 -0
- package/dist/esm/browser/modules/shared/theme-variables.js.map +1 -0
- package/dist/esm/browser/modules/splitter/splitter.js +4 -1
- package/dist/esm/browser/modules/splitter/splitter.js.map +1 -1
- package/dist/esm/browser/modules/tabs/tabs.js +14 -8
- package/dist/esm/browser/modules/tabs/tabs.js.map +1 -1
- package/dist/esm/browser/modules/tailwind-tokens.js +1 -1
- package/dist/esm/browser/modules/tailwind-tokens.js.map +1 -1
- package/dist/esm/browser/modules/textarea/textarea.js +50 -22
- package/dist/esm/browser/modules/textarea/textarea.js.map +1 -1
- package/dist/esm/browser/modules/theme.js +53 -29
- package/dist/esm/browser/modules/theme.js.map +1 -1
- package/dist/esm/browser/modules/timeline/timeline.js +1 -1
- package/dist/esm/browser/modules/timeline/timeline.js.map +1 -1
- package/dist/esm/browser/modules/timepicker/time-panel.js +8 -2
- package/dist/esm/browser/modules/timepicker/time-panel.js.map +1 -1
- package/dist/esm/browser/modules/transfer/transfer.js +5 -5
- package/dist/esm/browser/modules/transfer/transfer.js.map +1 -1
- package/dist/esm/browser/modules/tree/tree.js +13 -6
- package/dist/esm/browser/modules/tree/tree.js.map +1 -1
- package/dist/esm/browser/modules/treeselect/treeselect.js +5 -4
- package/dist/esm/browser/modules/treeselect/treeselect.js.map +1 -1
- package/dist/esm/browser/modules/virtuallist/virtuallist.js +9 -3
- package/dist/esm/browser/modules/virtuallist/virtuallist.js.map +1 -1
- package/dist/esm/button/button.d.ts +7 -2
- package/dist/esm/button/button.d.ts.map +1 -1
- package/dist/esm/button/button.js.map +1 -1
- package/dist/esm/cascader/cascader.d.ts +2 -0
- package/dist/esm/cascader/cascader.d.ts.map +1 -1
- package/dist/esm/cascader/cascader.js +9 -2
- package/dist/esm/cascader/cascader.js.map +1 -1
- package/dist/esm/colors.d.ts +3 -1
- package/dist/esm/colors.d.ts.map +1 -1
- package/dist/esm/colors.js +69 -6
- package/dist/esm/colors.js.map +1 -1
- package/dist/esm/commandpalette/commandpalette.d.ts.map +1 -1
- package/dist/esm/commandpalette/commandpalette.js +10 -3
- package/dist/esm/commandpalette/commandpalette.js.map +1 -1
- package/dist/esm/config-provider/component-defaults.d.ts +3 -4
- package/dist/esm/config-provider/component-defaults.d.ts.map +1 -1
- package/dist/esm/config-provider/component-defaults.js.map +1 -1
- package/dist/esm/config-provider/index.d.ts +1 -1
- package/dist/esm/config-provider/index.d.ts.map +1 -1
- package/dist/esm/config-provider/use-color-variables.d.ts.map +1 -1
- package/dist/esm/config-provider/use-color-variables.js +18 -2
- package/dist/esm/config-provider/use-color-variables.js.map +1 -1
- package/dist/esm/drawer/drawer.d.ts.map +1 -1
- package/dist/esm/drawer/drawer.js +7 -1
- package/dist/esm/drawer/drawer.js.map +1 -1
- package/dist/esm/dropdown/dropdown.d.ts +9 -1
- package/dist/esm/dropdown/dropdown.d.ts.map +1 -1
- package/dist/esm/dropdown/dropdown.js +25 -4
- package/dist/esm/dropdown/dropdown.js.map +1 -1
- package/dist/esm/form/form.d.ts +3 -1
- package/dist/esm/form/form.d.ts.map +1 -1
- package/dist/esm/form/form.js +38 -21
- package/dist/esm/form/form.js.map +1 -1
- package/dist/esm/image/viewer.d.ts.map +1 -1
- package/dist/esm/image/viewer.js +8 -2
- package/dist/esm/image/viewer.js.map +1 -1
- package/dist/esm/index.d.ts +3 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -2
- package/dist/esm/layout/layout.d.ts.map +1 -1
- package/dist/esm/layout/layout.js +4 -1
- package/dist/esm/layout/layout.js.map +1 -1
- package/dist/esm/mentions/mentions.d.ts +2 -0
- package/dist/esm/mentions/mentions.d.ts.map +1 -1
- package/dist/esm/mentions/mentions.js +4 -2
- package/dist/esm/mentions/mentions.js.map +1 -1
- package/dist/esm/menu/index.d.ts +2 -2
- package/dist/esm/menu/index.d.ts.map +1 -1
- package/dist/esm/menu/index.js +1 -1
- package/dist/esm/menu/menu.d.ts +4 -0
- package/dist/esm/menu/menu.d.ts.map +1 -1
- package/dist/esm/menu/menu.js +57 -18
- package/dist/esm/menu/menu.js.map +1 -1
- package/dist/esm/scrollbar/scrollbar.d.ts +12 -2
- package/dist/esm/scrollbar/scrollbar.d.ts.map +1 -1
- package/dist/esm/scrollbar/scrollbar.js +69 -19
- package/dist/esm/scrollbar/scrollbar.js.map +1 -1
- package/dist/esm/select/select.js +3 -3
- package/dist/esm/select/select.js.map +1 -1
- package/dist/esm/shared/floating.d.ts +3 -1
- package/dist/esm/shared/floating.d.ts.map +1 -1
- package/dist/esm/shared/floating.js +49 -20
- package/dist/esm/shared/floating.js.map +1 -1
- package/dist/esm/shared/scoped-portal.d.ts.map +1 -1
- package/dist/esm/shared/scoped-portal.js +2 -23
- package/dist/esm/shared/scoped-portal.js.map +1 -1
- package/dist/esm/shared/theme-variables.d.ts +4 -0
- package/dist/esm/shared/theme-variables.d.ts.map +1 -0
- package/dist/esm/shared/theme-variables.js +27 -0
- package/dist/esm/shared/theme-variables.js.map +1 -0
- package/dist/esm/splitter/splitter.d.ts.map +1 -1
- package/dist/esm/splitter/splitter.js +4 -1
- package/dist/esm/splitter/splitter.js.map +1 -1
- package/dist/esm/styles/alert.css +1 -1
- package/dist/esm/styles/anchor.css +1 -1
- package/dist/esm/styles/appbar.css +1 -1
- package/dist/esm/styles/autocomplete.css +1 -1
- package/dist/esm/styles/avatar.css +1 -1
- package/dist/esm/styles/backtop.css +1 -1
- package/dist/esm/styles/badge.css +1 -1
- package/dist/esm/styles/breadcrumb.css +1 -1
- package/dist/esm/styles/button.css +1 -1
- package/dist/esm/styles/calendar.css +1 -1
- package/dist/esm/styles/card.css +1 -1
- package/dist/esm/styles/carousel.css +1 -1
- package/dist/esm/styles/cascader.css +1 -1
- package/dist/esm/styles/checkbox.css +1 -1
- package/dist/esm/styles/collapse.css +1 -1
- package/dist/esm/styles/colorpicker.css +1 -1
- package/dist/esm/styles/commandpalette.css +1 -1
- package/dist/esm/styles/components/alert.css +1 -1
- package/dist/esm/styles/components/anchor.css +1 -1
- package/dist/esm/styles/components/appbar.css +1 -1
- package/dist/esm/styles/components/autocomplete.css +1 -1
- package/dist/esm/styles/components/avatar.css +1 -1
- package/dist/esm/styles/components/breadcrumb.css +1 -1
- package/dist/esm/styles/components/button.css +1 -1
- package/dist/esm/styles/components/calendar.css +1 -1
- package/dist/esm/styles/components/card.css +1 -1
- package/dist/esm/styles/components/carousel.css +1 -1
- package/dist/esm/styles/components/cascader.css +1 -1
- package/dist/esm/styles/components/checkbox.css +1 -1
- package/dist/esm/styles/components/collapse.css +1 -1
- package/dist/esm/styles/components/colorpicker.css +1 -1
- package/dist/esm/styles/components/commandpalette.css +1 -1
- package/dist/esm/styles/components/datepicker.css +1 -1
- package/dist/esm/styles/components/descriptions.css +1 -1
- package/dist/esm/styles/components/drawer.css +1 -1
- package/dist/esm/styles/components/dropdown.css +1 -1
- package/dist/esm/styles/components/errorboundary.css +1 -1
- package/dist/esm/styles/components/filelist.css +1 -1
- package/dist/esm/styles/components/form.css +1 -1
- package/dist/esm/styles/components/image.css +1 -1
- package/dist/esm/styles/components/input.css +1 -1
- package/dist/esm/styles/components/inputnumber.css +1 -1
- package/dist/esm/styles/components/inputotp.css +1 -1
- package/dist/esm/styles/components/layout.css +1 -1
- package/dist/esm/styles/components/loading.css +1 -1
- package/dist/esm/styles/components/loadingbar.css +1 -1
- package/dist/esm/styles/components/mentions.css +1 -1
- package/dist/esm/styles/components/menu.css +1 -1
- package/dist/esm/styles/components/message.css +1 -1
- package/dist/esm/styles/components/modal.css +1 -1
- package/dist/esm/styles/components/notification.css +1 -1
- package/dist/esm/styles/components/pagination.css +1 -1
- package/dist/esm/styles/components/popover.css +1 -1
- package/dist/esm/styles/components/progress.css +1 -1
- package/dist/esm/styles/components/radio.css +1 -1
- package/dist/esm/styles/components/rate.css +1 -1
- package/dist/esm/styles/components/scrollarea.css +1 -1
- package/dist/esm/styles/components/scrollbar.css +1 -1
- package/dist/esm/styles/components/select.css +1 -1
- package/dist/esm/styles/components/shared-calendar.css +1 -1
- package/dist/esm/styles/components/slider.css +1 -1
- package/dist/esm/styles/components/splitter.css +1 -1
- package/dist/esm/styles/components/steps.css +1 -1
- package/dist/esm/styles/components/switch.css +1 -1
- package/dist/esm/styles/components/table.css +1 -1
- package/dist/esm/styles/components/tabletanstack.css +1 -1
- package/dist/esm/styles/components/tabs.css +1 -1
- package/dist/esm/styles/components/tag.css +1 -1
- package/dist/esm/styles/components/textarea.css +1 -1
- package/dist/esm/styles/components/timepicker.css +1 -1
- package/dist/esm/styles/components/tooltip.css +1 -1
- package/dist/esm/styles/components/tour.css +1 -1
- package/dist/esm/styles/components/transfer.css +1 -1
- package/dist/esm/styles/components/tree.css +1 -1
- package/dist/esm/styles/components/treeselect.css +1 -1
- package/dist/esm/styles/components/typography.css +1 -1
- package/dist/esm/styles/components/upload.css +1 -1
- package/dist/esm/styles/components/virtuallist.css +1 -1
- package/dist/esm/styles/config-provider.css +1 -1
- package/dist/esm/styles/confirm.css +1 -1
- package/dist/esm/styles/datepicker.css +1 -1
- package/dist/esm/styles/daterangepicker.css +1 -1
- package/dist/esm/styles/datetimepicker.css +1 -1
- package/dist/esm/styles/descriptions.css +1 -1
- package/dist/esm/styles/divider.css +1 -1
- package/dist/esm/styles/drawer.css +1 -1
- package/dist/esm/styles/dropdown.css +1 -1
- package/dist/esm/styles/empty.css +1 -1
- package/dist/esm/styles/errorboundary.css +1 -1
- package/dist/esm/styles/filelist.css +1 -1
- package/dist/esm/styles/flex.css +1 -1
- package/dist/esm/styles/floatbutton.css +1 -1
- package/dist/esm/styles/form.css +1 -1
- package/dist/esm/styles/foundation.css +1 -1
- package/dist/esm/styles/grid.css +1 -1
- package/dist/esm/styles/image.css +1 -1
- package/dist/esm/styles/index.css +1380 -716
- package/dist/esm/styles/index.css.map +1 -1
- package/dist/esm/styles/infinitescroll.css +1 -1
- package/dist/esm/styles/input.css +1 -1
- package/dist/esm/styles/inputmask.css +1 -1
- package/dist/esm/styles/inputnumber.css +1 -1
- package/dist/esm/styles/inputotp.css +1 -1
- package/dist/esm/styles/layout.css +1 -1
- package/dist/esm/styles/loading.css +1 -1
- package/dist/esm/styles/loadingbar.css +1 -1
- package/dist/esm/styles/masonry.css +1 -1
- package/dist/esm/styles/mentions.css +1 -1
- package/dist/esm/styles/menu.css +1 -1
- package/dist/esm/styles/message.css +1 -1
- package/dist/esm/styles/modal.css +1 -1
- package/dist/esm/styles/notification.css +1 -1
- package/dist/esm/styles/pagination.css +1 -1
- package/dist/esm/styles/popconfirm.css +1 -1
- package/dist/esm/styles/popover.css +1 -1
- package/dist/esm/styles/progress.css +1 -1
- package/dist/esm/styles/qrcode.css +1 -1
- package/dist/esm/styles/radio.css +1 -1
- package/dist/esm/styles/rate.css +1 -1
- package/dist/esm/styles/result.css +1 -1
- package/dist/esm/styles/scrollarea.css +1 -1
- package/dist/esm/styles/scrollbar.css +1 -1
- package/dist/esm/styles/select.css +1 -1
- package/dist/esm/styles/skeleton.css +1 -1
- package/dist/esm/styles/slider.css +1 -1
- package/dist/esm/styles/space.css +1 -1
- package/dist/esm/styles/splitter.css +1 -1
- package/dist/esm/styles/statistic.css +1 -1
- package/dist/esm/styles/steps.css +1 -1
- package/dist/esm/styles/switch.css +1 -1
- package/dist/esm/styles/table.css +1 -1
- package/dist/esm/styles/tabletanstack.css +1 -1
- package/dist/esm/styles/tabs.css +1 -1
- package/dist/esm/styles/tag.css +1 -1
- package/dist/esm/styles/textarea.css +1 -1
- package/dist/esm/styles/timeline.css +1 -1
- package/dist/esm/styles/timepicker.css +1 -1
- package/dist/esm/styles/timerangepicker.css +1 -1
- package/dist/esm/styles/tooltip.css +1 -1
- package/dist/esm/styles/tour.css +1 -1
- package/dist/esm/styles/transfer.css +1 -1
- package/dist/esm/styles/tree.css +1 -1
- package/dist/esm/styles/treeselect.css +1 -1
- package/dist/esm/styles/typography.css +1 -1
- package/dist/esm/styles/upload.css +1 -1
- package/dist/esm/styles/virtuallist.css +1 -1
- package/dist/esm/tabs/tabs.d.ts +4 -2
- package/dist/esm/tabs/tabs.d.ts.map +1 -1
- package/dist/esm/tabs/tabs.js +14 -8
- package/dist/esm/tabs/tabs.js.map +1 -1
- package/dist/esm/tailwind-tokens.d.ts.map +1 -1
- package/dist/esm/tailwind-tokens.js +1 -1
- package/dist/esm/tailwind-tokens.js.map +1 -1
- package/dist/esm/textarea/textarea.d.ts.map +1 -1
- package/dist/esm/textarea/textarea.js +50 -22
- package/dist/esm/textarea/textarea.js.map +1 -1
- package/dist/esm/theme.d.ts +15 -0
- package/dist/esm/theme.d.ts.map +1 -1
- package/dist/esm/theme.js +53 -29
- package/dist/esm/theme.js.map +1 -1
- package/dist/esm/timeline/timeline.d.ts.map +1 -1
- package/dist/esm/timeline/timeline.js +1 -1
- package/dist/esm/timeline/timeline.js.map +1 -1
- package/dist/esm/timepicker/time-panel.d.ts.map +1 -1
- package/dist/esm/timepicker/time-panel.js +8 -2
- package/dist/esm/timepicker/time-panel.js.map +1 -1
- package/dist/esm/transfer/transfer.d.ts.map +1 -1
- package/dist/esm/transfer/transfer.js +5 -5
- package/dist/esm/transfer/transfer.js.map +1 -1
- package/dist/esm/tree/tree.d.ts.map +1 -1
- package/dist/esm/tree/tree.js +13 -6
- package/dist/esm/tree/tree.js.map +1 -1
- package/dist/esm/treeselect/treeselect.d.ts.map +1 -1
- package/dist/esm/treeselect/treeselect.js +5 -4
- package/dist/esm/treeselect/treeselect.js.map +1 -1
- package/dist/esm/virtuallist/virtuallist.d.ts.map +1 -1
- package/dist/esm/virtuallist/virtuallist.js +9 -3
- package/dist/esm/virtuallist/virtuallist.js.map +1 -1
- package/dist/tailwind.css +1 -1
- package/package.json +1 -22
- package/dist/cjs/browser/modules/segmented/index.cjs.map +0 -1
- package/dist/cjs/browser/modules/segmented/segmented.cjs +0 -127
- package/dist/cjs/browser/modules/segmented/segmented.cjs.map +0 -1
- package/dist/cjs/browser/segmented.cjs +0 -2
- package/dist/cjs/segmented/index.cjs.map +0 -1
- package/dist/cjs/segmented/index.d.cts +0 -3
- package/dist/cjs/segmented/index.d.cts.map +0 -1
- package/dist/cjs/segmented/segmented.cjs +0 -125
- package/dist/cjs/segmented/segmented.cjs.map +0 -1
- package/dist/cjs/segmented/segmented.d.cts +0 -21
- package/dist/cjs/segmented/segmented.d.cts.map +0 -1
- package/dist/cjs/styles/components/segmented.css +0 -1
- package/dist/cjs/styles/segmented.css +0 -1
- package/dist/esm/browser/modules/segmented/index.js +0 -2
- package/dist/esm/browser/modules/segmented/segmented.js +0 -89
- package/dist/esm/browser/modules/segmented/segmented.js.map +0 -1
- package/dist/esm/browser/segmented.js +0 -2
- package/dist/esm/segmented/index.d.ts +0 -3
- package/dist/esm/segmented/index.d.ts.map +0 -1
- package/dist/esm/segmented/index.js +0 -2
- package/dist/esm/segmented/segmented.d.ts +0 -21
- package/dist/esm/segmented/segmented.d.ts.map +0 -1
- package/dist/esm/segmented/segmented.js +0 -87
- package/dist/esm/segmented/segmented.js.map +0 -1
- package/dist/esm/styles/components/segmented.css +0 -1
- package/dist/esm/styles/segmented.css +0 -1
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
"use strict";
|
|
3
|
-
require('../../../styles/foundation.css');
|
|
4
|
-
require('../../../styles/components/segmented.css');
|
|
5
|
-
var __webpack_require__ = {};
|
|
6
|
-
(()=>{
|
|
7
|
-
__webpack_require__.d = (exports1, getters, values)=>{
|
|
8
|
-
var define = (defs, kind)=>{
|
|
9
|
-
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
10
|
-
enumerable: true,
|
|
11
|
-
[kind]: defs[key]
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
define(getters, "get");
|
|
15
|
-
define(values, "value");
|
|
16
|
-
};
|
|
17
|
-
})();
|
|
18
|
-
(()=>{
|
|
19
|
-
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
20
|
-
})();
|
|
21
|
-
(()=>{
|
|
22
|
-
__webpack_require__.r = (exports1)=>{
|
|
23
|
-
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
24
|
-
value: 'Module'
|
|
25
|
-
});
|
|
26
|
-
Object.defineProperty(exports1, '__esModule', {
|
|
27
|
-
value: true
|
|
28
|
-
});
|
|
29
|
-
};
|
|
30
|
-
})();
|
|
31
|
-
var __webpack_exports__ = {};
|
|
32
|
-
__webpack_require__.r(__webpack_exports__);
|
|
33
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
34
|
-
Segmented: ()=>segmented_Segmented
|
|
35
|
-
});
|
|
36
|
-
const jsx_runtime_namespaceObject = require("react/jsx-runtime");
|
|
37
|
-
const external_react_namespaceObject = require("react");
|
|
38
|
-
const component_defaults_cjs_namespaceObject = require("../config-provider/component-defaults.cjs");
|
|
39
|
-
const context_cjs_namespaceObject = require("../config-provider/context.cjs");
|
|
40
|
-
const form_cjs_namespaceObject = require("../form/form.cjs");
|
|
41
|
-
const classes_cjs_namespaceObject = require("../shared/classes.cjs");
|
|
42
|
-
const field_cjs_namespaceObject = require("../shared/field.cjs");
|
|
43
|
-
const use_moving_indicator_cjs_namespaceObject = require("../tabs/use-moving-indicator.cjs");
|
|
44
|
-
const segmented_Segmented = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)(function(rawProps, ref) {
|
|
45
|
-
const { options, value, defaultValue, onChange, disabled: disabledProp, size = 'md', block = false, name, form, className, ...props } = (0, component_defaults_cjs_namespaceObject.useComponentProps)('Segmented', rawProps);
|
|
46
|
-
const field = (0, form_cjs_namespaceObject.useFormField)();
|
|
47
|
-
const { direction } = (0, context_cjs_namespaceObject.useLeafConfig)();
|
|
48
|
-
const root = (0, external_react_namespaceObject.useRef)(null);
|
|
49
|
-
const marker = (0, external_react_namespaceObject.useRef)(null);
|
|
50
|
-
const merged = (0, field_cjs_namespaceObject.useMergedRef)(root, ref);
|
|
51
|
-
const disabled = disabledProp || field?.disabled;
|
|
52
|
-
const entries = options.map((option)=>'string' == typeof option ? {
|
|
53
|
-
label: option,
|
|
54
|
-
value: option
|
|
55
|
-
} : option);
|
|
56
|
-
const first = entries.find((option)=>!option.disabled)?.value ?? '';
|
|
57
|
-
const trigger = (0, external_react_namespaceObject.useRef)(null);
|
|
58
|
-
const [current, setCurrent] = (0, field_cjs_namespaceObject.useFieldValue)(value, defaultValue ?? first, trigger, form);
|
|
59
|
-
(0, use_moving_indicator_cjs_namespaceObject.useMovingIndicator)(root, marker, '[aria-checked="true"]', `${current}-${direction}`);
|
|
60
|
-
const id = (0, external_react_namespaceObject.useId)();
|
|
61
|
-
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
|
|
62
|
-
...props,
|
|
63
|
-
ref: merged,
|
|
64
|
-
role: "radiogroup",
|
|
65
|
-
"aria-disabled": disabled || void 0,
|
|
66
|
-
className: (0, classes_cjs_namespaceObject.classes)('leaf-segmented', `leaf-segmented--${size}`, block && 'leaf-segmented--block', className),
|
|
67
|
-
children: [
|
|
68
|
-
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
|
|
69
|
-
ref: marker,
|
|
70
|
-
className: "leaf-segmented__indicator",
|
|
71
|
-
"aria-hidden": "true"
|
|
72
|
-
}),
|
|
73
|
-
entries.map((option, index)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("button", {
|
|
74
|
-
type: "button",
|
|
75
|
-
ref: 0 === index ? trigger : void 0,
|
|
76
|
-
role: "radio",
|
|
77
|
-
"data-leaf-indicator-item": "",
|
|
78
|
-
"aria-checked": current === option.value,
|
|
79
|
-
disabled: disabled || option.disabled,
|
|
80
|
-
tabIndex: current !== option.value && (entries.some((entry)=>entry.value === current && !entry.disabled) || option.value !== first) ? -1 : 0,
|
|
81
|
-
id: `${id}-${index}`,
|
|
82
|
-
onClick: ()=>{
|
|
83
|
-
setCurrent(option.value);
|
|
84
|
-
onChange?.(option.value);
|
|
85
|
-
},
|
|
86
|
-
onKeyDown: (event)=>{
|
|
87
|
-
const available = entries.filter((entry)=>!entry.disabled);
|
|
88
|
-
const position = available.findIndex((entry)=>entry.value === option.value);
|
|
89
|
-
const next = 'Home' === event.key ? available[0] : 'End' === event.key ? available.at(-1) : [
|
|
90
|
-
'ArrowLeft',
|
|
91
|
-
'ArrowUp',
|
|
92
|
-
'ArrowRight',
|
|
93
|
-
'ArrowDown'
|
|
94
|
-
].includes(event.key) ? available[(position + ('ArrowUp' === event.key || event.key === ('rtl' === direction ? 'ArrowRight' : 'ArrowLeft') ? -1 : 1) + available.length) % available.length] : void 0;
|
|
95
|
-
if (!next || disabled) return;
|
|
96
|
-
event.preventDefault();
|
|
97
|
-
setCurrent(next.value);
|
|
98
|
-
onChange?.(next.value);
|
|
99
|
-
document.getElementById(`${id}-${entries.findIndex((entry)=>entry.value === next.value)}`)?.focus();
|
|
100
|
-
},
|
|
101
|
-
children: [
|
|
102
|
-
option.icon && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
|
|
103
|
-
"aria-hidden": "true",
|
|
104
|
-
children: option.icon
|
|
105
|
-
}),
|
|
106
|
-
option.label
|
|
107
|
-
]
|
|
108
|
-
}, option.value)),
|
|
109
|
-
name && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(field_cjs_namespaceObject.FormValue, {
|
|
110
|
-
value: current,
|
|
111
|
-
name: name,
|
|
112
|
-
form: form,
|
|
113
|
-
disabled: disabled,
|
|
114
|
-
triggerRef: trigger
|
|
115
|
-
})
|
|
116
|
-
]
|
|
117
|
-
});
|
|
118
|
-
});
|
|
119
|
-
exports.Segmented = __webpack_exports__.Segmented;
|
|
120
|
-
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
121
|
-
"Segmented"
|
|
122
|
-
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
123
|
-
Object.defineProperty(exports, '__esModule', {
|
|
124
|
-
value: true
|
|
125
|
-
});
|
|
126
|
-
|
|
127
|
-
//# sourceMappingURL=segmented.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segmented/segmented.cjs","sources":["webpack://webpack/runtime/define_property_getters","webpack://webpack/runtime/has_own_property","webpack://webpack/runtime/make_namespace_object","../../../../../src/segmented/segmented.tsx"],"sourcesContent":["__webpack_require__.d = (exports, getters, values) => {\n\tvar define = (defs, kind) => {\n\t\tfor(var key in defs) {\n\t\t\tif(__webpack_require__.o(defs, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, [kind]: defs[key] });\n\t\t\t}\n\t\t}\n\t};\n\tdefine(getters, \"get\");\n\tdefine(values, \"value\");\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { forwardRef, type HTMLAttributes, type ReactNode, useId, useRef } from 'react';\nimport { useComponentProps } from '../config-provider/component-defaults';\nimport { useLeafConfig } from '../config-provider/context';\nimport { useFormField } from '../form/form';\nimport { classes } from '../shared/classes';\nimport { FormValue, useFieldValue, useMergedRef } from '../shared/field';\nimport type { ControlSize } from '../shared/types';\nimport { useMovingIndicator } from '../tabs/use-moving-indicator';\nexport interface SegmentedOption {\n value: string;\n label: ReactNode;\n icon?: ReactNode;\n disabled?: boolean;\n}\nexport interface SegmentedProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {\n options: readonly (string | SegmentedOption)[];\n value?: string;\n defaultValue?: string;\n onChange?: (value: string) => void;\n disabled?: boolean;\n size?: ControlSize;\n block?: boolean;\n name?: string;\n form?: string;\n}\nexport const Segmented = forwardRef<HTMLDivElement, SegmentedProps>(function Segmented(\n rawProps: SegmentedProps,\n ref,\n) {\n const {\n options,\n value,\n defaultValue,\n onChange,\n disabled: disabledProp,\n size = 'md',\n block = false,\n name,\n form,\n className,\n ...props\n } = useComponentProps('Segmented', rawProps);\n const field = useFormField();\n const { direction } = useLeafConfig();\n const root = useRef<HTMLDivElement>(null);\n const marker = useRef<HTMLSpanElement>(null);\n const merged = useMergedRef(root, ref);\n const disabled = disabledProp || field?.disabled;\n const entries = options.map((option) =>\n typeof option === 'string' ? { label: option, value: option } : option,\n );\n const first = entries.find((option) => !option.disabled)?.value ?? '';\n const trigger = useRef<HTMLButtonElement>(null);\n const [current, setCurrent] = useFieldValue(value, defaultValue ?? first, trigger, form);\n useMovingIndicator(root, marker, '[aria-checked=\"true\"]', `${current}-${direction}`);\n const id = useId();\n return (\n <div\n {...props}\n ref={merged}\n role=\"radiogroup\"\n aria-disabled={disabled || undefined}\n className={classes(\n 'leaf-segmented',\n `leaf-segmented--${size}`,\n block && 'leaf-segmented--block',\n className,\n )}\n >\n <span ref={marker} className=\"leaf-segmented__indicator\" aria-hidden=\"true\" />\n {entries.map((option, index) => (\n // biome-ignore lint/a11y/useSemanticElements: Segmented buttons implement roving focus and radio-group selection with a shared form proxy.\n <button\n key={option.value}\n type=\"button\"\n ref={index === 0 ? trigger : undefined}\n role=\"radio\"\n data-leaf-indicator-item=\"\"\n aria-checked={current === option.value}\n disabled={disabled || option.disabled}\n tabIndex={\n current === option.value ||\n (!entries.some((entry) => entry.value === current && !entry.disabled) &&\n option.value === first)\n ? 0\n : -1\n }\n id={`${id}-${index}`}\n onClick={() => {\n setCurrent(option.value);\n onChange?.(option.value);\n }}\n onKeyDown={(event) => {\n const available = entries.filter((entry) => !entry.disabled);\n const position = available.findIndex((entry) => entry.value === option.value);\n const next =\n event.key === 'Home'\n ? available[0]\n : event.key === 'End'\n ? available.at(-1)\n : ['ArrowLeft', 'ArrowUp', 'ArrowRight', 'ArrowDown'].includes(event.key)\n ? available[\n (position +\n (event.key === 'ArrowUp' ||\n event.key === (direction === 'rtl' ? 'ArrowRight' : 'ArrowLeft')\n ? -1\n : 1) +\n available.length) %\n available.length\n ]\n : undefined;\n if (!next || disabled) return;\n event.preventDefault();\n setCurrent(next.value);\n onChange?.(next.value);\n document\n .getElementById(`${id}-${entries.findIndex((entry) => entry.value === next.value)}`)\n ?.focus();\n }}\n >\n {option.icon && <span aria-hidden=\"true\">{option.icon}</span>}\n {option.label}\n </button>\n ))}\n {name && (\n <FormValue\n value={current}\n name={name}\n form={form}\n disabled={disabled}\n triggerRef={trigger}\n />\n )}\n </div>\n );\n});\n"],"names":["__webpack_require__","getters","values","define","defs","kind","key","Object","obj","prop","Symbol","Segmented","forwardRef","rawProps","ref","options","value","defaultValue","onChange","disabledProp","size","block","name","form","className","props","useComponentProps","field","useFormField","direction","useLeafConfig","root","useRef","marker","merged","useMergedRef","disabled","entries","option","first","trigger","current","setCurrent","useFieldValue","useMovingIndicator","id","useId","undefined","classes","index","entry","event","available","position","next","document","FormValue"],"mappings":";;;;;;IAAAA,oBAAoB,CAAC,GAAG,CAAC,UAASC,SAASC;QAC1C,IAAIC,SAAS,CAACC,MAAMC;YACnB,IAAI,IAAIC,OAAOF,KACd,IAAGJ,oBAAoB,CAAC,CAACI,MAAME,QAAQ,CAACN,oBAAoB,CAAC,CAAC,UAASM,MACtEC,OAAO,cAAc,CAAC,UAASD,KAAK;gBAAE,YAAY;gBAAM,CAACD,KAAK,EAAED,IAAI,CAACE,IAAI;YAAC;QAG7E;QACAH,OAAOF,SAAS;QAChBE,OAAOD,QAAQ;IAChB;;;ICVAF,oBAAoB,CAAC,GAAG,CAACQ,KAAKC,OAAUF,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAACC,KAAKC;;;ICClFT,oBAAoB,CAAC,GAAG,CAAC;QACxB,IAAG,AAAkB,MAAlB,OAAOU,UAA0BA,OAAO,WAAW,EACrDH,OAAO,cAAc,CAAC,UAASG,OAAO,WAAW,EAAE;YAAE,OAAO;QAAS;QAEtEH,OAAO,cAAc,CAAC,UAAS,cAAc;YAAE,OAAO;QAAK;IAC5D;;;;;;;;;;;;;;;ACmBO,MAAMI,sBAAYC,AAAA,WAAHD,GAAGC,IAAAA,+BAAAA,UAAAA,AAAAA,EAA2C,SAClEC,QAAwB,EACxBC,GAAG;IAEH,MAAM,EACJC,OAAO,EACPC,KAAK,EACLC,YAAY,EACZC,QAAQ,EACR,UAAUC,YAAY,EACtBC,OAAO,IAAI,EACXC,QAAQ,KAAK,EACbC,IAAI,EACJC,IAAI,EACJC,SAAS,EACT,GAAGC,OACJ,GAAGC,AAAAA,IAAAA,uCAAAA,iBAAAA,AAAAA,EAAkB,aAAab;IACnC,MAAMc,QAAQC,AAAAA,IAAAA,yBAAAA,YAAAA,AAAAA;IACd,MAAM,EAAEC,SAAS,EAAE,GAAGC,AAAAA,IAAAA,4BAAAA,aAAAA,AAAAA;IACtB,MAAMC,OAAOC,AAAAA,IAAAA,+BAAAA,MAAAA,AAAAA,EAAuB;IACpC,MAAMC,SAASD,AAAAA,IAAAA,+BAAAA,MAAAA,AAAAA,EAAwB;IACvC,MAAME,SAASC,AAAAA,IAAAA,0BAAAA,YAAAA,AAAAA,EAAaJ,MAAMjB;IAClC,MAAMsB,WAAWjB,gBAAgBQ,OAAO;IACxC,MAAMU,UAAUtB,QAAQ,GAAG,CAAC,CAACuB,SAC3B,AAAkB,YAAlB,OAAOA,SAAsB;YAAE,OAAOA;YAAQ,OAAOA;QAAO,IAAIA;IAElE,MAAMC,QAAQF,QAAQ,IAAI,CAAC,CAACC,SAAW,CAACA,OAAO,QAAQ,GAAG,SAAS;IACnE,MAAME,UAAUR,AAAAA,IAAAA,+BAAAA,MAAAA,AAAAA,EAA0B;IAC1C,MAAM,CAACS,SAASC,WAAW,GAAGC,AAAAA,IAAAA,0BAAAA,aAAAA,AAAAA,EAAc3B,OAAOC,gBAAgBsB,OAAOC,SAASjB;IACnFqB,IAAAA,yCAAAA,kBAAAA,AAAAA,EAAmBb,MAAME,QAAQ,yBAAyB,GAAGQ,QAAQ,CAAC,EAAEZ,WAAW;IACnF,MAAMgB,KAAKC,AAAAA,IAAAA,+BAAAA,KAAAA,AAAAA;IACX,OACE,AADK,WAAP,GACE,sCAAC;QACE,GAAGrB,KAAK;QACT,KAAKS;QACL,MAAK;QACL,iBAAeE,YAAYW;QAC3B,WAAWC,AAAAA,IAAAA,4BAAAA,OAAAA,AAAAA,EACT,kBACA,CAAC,gBAAgB,EAAE5B,MAAM,EACzBC,SAAS,yBACTG;;0BAGF,qCAAC;gBAAK,KAAKS;gBAAQ,WAAU;gBAA4B,eAAY;;YACpEI,QAAQ,GAAG,CAAC,CAACC,QAAQW,QAEpB,oDAAC;oBAEC,MAAK;oBACL,KAAKA,AAAU,MAAVA,QAAcT,UAAUO;oBAC7B,MAAK;oBACL,4BAAyB;oBACzB,gBAAcN,YAAYH,OAAO,KAAK;oBACtC,UAAUF,YAAYE,OAAO,QAAQ;oBACrC,UACEG,YAAYH,OAAO,KAAK,IACvB,CAACD,QAAQ,IAAI,CAAC,CAACa,QAAUA,MAAM,KAAK,KAAKT,WAAW,CAACS,MAAM,QAAQ,KAClEZ,OAAO,KAAK,KAAKC,KAAI,IAEnB,KADA;oBAGN,IAAI,GAAGM,GAAG,CAAC,EAAEI,OAAO;oBACpB,SAAS;wBACPP,WAAWJ,OAAO,KAAK;wBACvBpB,WAAWoB,OAAO,KAAK;oBACzB;oBACA,WAAW,CAACa;wBACV,MAAMC,YAAYf,QAAQ,MAAM,CAAC,CAACa,QAAU,CAACA,MAAM,QAAQ;wBAC3D,MAAMG,WAAWD,UAAU,SAAS,CAAC,CAACF,QAAUA,MAAM,KAAK,KAAKZ,OAAO,KAAK;wBAC5E,MAAMgB,OACJH,AAAc,WAAdA,MAAM,GAAG,GACLC,SAAS,CAAC,EAAE,GACZD,AAAc,UAAdA,MAAM,GAAG,GACPC,UAAU,EAAE,CAAC,MACb;4BAAC;4BAAa;4BAAW;4BAAc;yBAAY,CAAC,QAAQ,CAACD,MAAM,GAAG,IACpEC,SAAS,CACNC,AAAAA,CAAAA,WACEF,CAAAA,AAAc,cAAdA,MAAM,GAAG,IACVA,MAAM,GAAG,KAAMtB,CAAAA,AAAc,UAAdA,YAAsB,eAAe,WAAU,IAC1D,KACA,KACJuB,UAAU,MAAK,IACfA,UAAU,MAAM,CACnB,GACDL;wBACV,IAAI,CAACO,QAAQlB,UAAU;wBACvBe,MAAM,cAAc;wBACpBT,WAAWY,KAAK,KAAK;wBACrBpC,WAAWoC,KAAK,KAAK;wBACrBC,SACG,cAAc,CAAC,GAAGV,GAAG,CAAC,EAAER,QAAQ,SAAS,CAAC,CAACa,QAAUA,MAAM,KAAK,KAAKI,KAAK,KAAK,GAAG,GACjF;oBACN;;wBAEChB,OAAO,IAAI,IAAI,WAAJ,GAAI,qCAAC;4BAAK,eAAY;sCAAQA,OAAO,IAAI;;wBACpDA,OAAO,KAAK;;mBAhDRA,OAAO,KAAK;YAmDpBhB,QACC,AADO,WAARA,GACC,qCAACkC,0BAAAA,SAASA,EAAAA;gBACR,OAAOf;gBACP,MAAMnB;gBACN,MAAMC;gBACN,UAAUa;gBACV,YAAYI;;;;AAKtB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segmented/index.cjs","sources":["webpack://webpack/runtime/define_property_getters","webpack://webpack/runtime/has_own_property","webpack://webpack/runtime/make_namespace_object"],"sourcesContent":["__webpack_require__.d = (exports, getters, values) => {\n\tvar define = (defs, kind) => {\n\t\tfor(var key in defs) {\n\t\t\tif(__webpack_require__.o(defs, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, [kind]: defs[key] });\n\t\t\t}\n\t\t}\n\t};\n\tdefine(getters, \"get\");\n\tdefine(values, \"value\");\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};"],"names":["__webpack_require__","getters","values","define","defs","kind","key","Object","obj","prop","Symbol"],"mappings":";;;;IAAAA,oBAAoB,CAAC,GAAG,CAAC,UAASC,SAASC;QAC1C,IAAIC,SAAS,CAACC,MAAMC;YACnB,IAAI,IAAIC,OAAOF,KACd,IAAGJ,oBAAoB,CAAC,CAACI,MAAME,QAAQ,CAACN,oBAAoB,CAAC,CAAC,UAASM,MACtEC,OAAO,cAAc,CAAC,UAASD,KAAK;gBAAE,YAAY;gBAAM,CAACD,KAAK,EAAED,IAAI,CAACE,IAAI;YAAC;QAG7E;QACAH,OAAOF,SAAS;QAChBE,OAAOD,QAAQ;IAChB;;;ICVAF,oBAAoB,CAAC,GAAG,CAACQ,KAAKC,OAAUF,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAACC,KAAKC;;;ICClFT,oBAAoB,CAAC,GAAG,CAAC;QACxB,IAAG,AAAkB,MAAlB,OAAOU,UAA0BA,OAAO,WAAW,EACrDH,OAAO,cAAc,CAAC,UAASG,OAAO,WAAW,EAAE;YAAE,OAAO;QAAS;QAEtEH,OAAO,cAAc,CAAC,UAAS,cAAc;YAAE,OAAO;QAAK;IAC5D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/segmented/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
"use strict";
|
|
3
|
-
var __webpack_require__ = {};
|
|
4
|
-
(()=>{
|
|
5
|
-
__webpack_require__.d = (exports1, getters, values)=>{
|
|
6
|
-
var define = (defs, kind)=>{
|
|
7
|
-
for(var key in defs)if (__webpack_require__.o(defs, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
[kind]: defs[key]
|
|
10
|
-
});
|
|
11
|
-
};
|
|
12
|
-
define(getters, "get");
|
|
13
|
-
define(values, "value");
|
|
14
|
-
};
|
|
15
|
-
})();
|
|
16
|
-
(()=>{
|
|
17
|
-
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
|
|
18
|
-
})();
|
|
19
|
-
(()=>{
|
|
20
|
-
__webpack_require__.r = (exports1)=>{
|
|
21
|
-
if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
|
|
22
|
-
value: 'Module'
|
|
23
|
-
});
|
|
24
|
-
Object.defineProperty(exports1, '__esModule', {
|
|
25
|
-
value: true
|
|
26
|
-
});
|
|
27
|
-
};
|
|
28
|
-
})();
|
|
29
|
-
var __webpack_exports__ = {};
|
|
30
|
-
__webpack_require__.r(__webpack_exports__);
|
|
31
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
32
|
-
Segmented: ()=>segmented_Segmented
|
|
33
|
-
});
|
|
34
|
-
const jsx_runtime_namespaceObject = require("react/jsx-runtime");
|
|
35
|
-
const external_react_namespaceObject = require("react");
|
|
36
|
-
const component_defaults_cjs_namespaceObject = require("../config-provider/component-defaults.cjs");
|
|
37
|
-
const context_cjs_namespaceObject = require("../config-provider/context.cjs");
|
|
38
|
-
const form_cjs_namespaceObject = require("../form/form.cjs");
|
|
39
|
-
const classes_cjs_namespaceObject = require("../shared/classes.cjs");
|
|
40
|
-
const field_cjs_namespaceObject = require("../shared/field.cjs");
|
|
41
|
-
const use_moving_indicator_cjs_namespaceObject = require("../tabs/use-moving-indicator.cjs");
|
|
42
|
-
const segmented_Segmented = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)(function(rawProps, ref) {
|
|
43
|
-
const { options, value, defaultValue, onChange, disabled: disabledProp, size = 'md', block = false, name, form, className, ...props } = (0, component_defaults_cjs_namespaceObject.useComponentProps)('Segmented', rawProps);
|
|
44
|
-
const field = (0, form_cjs_namespaceObject.useFormField)();
|
|
45
|
-
const { direction } = (0, context_cjs_namespaceObject.useLeafConfig)();
|
|
46
|
-
const root = (0, external_react_namespaceObject.useRef)(null);
|
|
47
|
-
const marker = (0, external_react_namespaceObject.useRef)(null);
|
|
48
|
-
const merged = (0, field_cjs_namespaceObject.useMergedRef)(root, ref);
|
|
49
|
-
const disabled = disabledProp || field?.disabled;
|
|
50
|
-
const entries = options.map((option)=>'string' == typeof option ? {
|
|
51
|
-
label: option,
|
|
52
|
-
value: option
|
|
53
|
-
} : option);
|
|
54
|
-
const first = entries.find((option)=>!option.disabled)?.value ?? '';
|
|
55
|
-
const trigger = (0, external_react_namespaceObject.useRef)(null);
|
|
56
|
-
const [current, setCurrent] = (0, field_cjs_namespaceObject.useFieldValue)(value, defaultValue ?? first, trigger, form);
|
|
57
|
-
(0, use_moving_indicator_cjs_namespaceObject.useMovingIndicator)(root, marker, '[aria-checked="true"]', `${current}-${direction}`);
|
|
58
|
-
const id = (0, external_react_namespaceObject.useId)();
|
|
59
|
-
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
|
|
60
|
-
...props,
|
|
61
|
-
ref: merged,
|
|
62
|
-
role: "radiogroup",
|
|
63
|
-
"aria-disabled": disabled || void 0,
|
|
64
|
-
className: (0, classes_cjs_namespaceObject.classes)('leaf-segmented', `leaf-segmented--${size}`, block && 'leaf-segmented--block', className),
|
|
65
|
-
children: [
|
|
66
|
-
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
|
|
67
|
-
ref: marker,
|
|
68
|
-
className: "leaf-segmented__indicator",
|
|
69
|
-
"aria-hidden": "true"
|
|
70
|
-
}),
|
|
71
|
-
entries.map((option, index)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("button", {
|
|
72
|
-
type: "button",
|
|
73
|
-
ref: 0 === index ? trigger : void 0,
|
|
74
|
-
role: "radio",
|
|
75
|
-
"data-leaf-indicator-item": "",
|
|
76
|
-
"aria-checked": current === option.value,
|
|
77
|
-
disabled: disabled || option.disabled,
|
|
78
|
-
tabIndex: current !== option.value && (entries.some((entry)=>entry.value === current && !entry.disabled) || option.value !== first) ? -1 : 0,
|
|
79
|
-
id: `${id}-${index}`,
|
|
80
|
-
onClick: ()=>{
|
|
81
|
-
setCurrent(option.value);
|
|
82
|
-
onChange?.(option.value);
|
|
83
|
-
},
|
|
84
|
-
onKeyDown: (event)=>{
|
|
85
|
-
const available = entries.filter((entry)=>!entry.disabled);
|
|
86
|
-
const position = available.findIndex((entry)=>entry.value === option.value);
|
|
87
|
-
const next = 'Home' === event.key ? available[0] : 'End' === event.key ? available.at(-1) : [
|
|
88
|
-
'ArrowLeft',
|
|
89
|
-
'ArrowUp',
|
|
90
|
-
'ArrowRight',
|
|
91
|
-
'ArrowDown'
|
|
92
|
-
].includes(event.key) ? available[(position + ('ArrowUp' === event.key || event.key === ('rtl' === direction ? 'ArrowRight' : 'ArrowLeft') ? -1 : 1) + available.length) % available.length] : void 0;
|
|
93
|
-
if (!next || disabled) return;
|
|
94
|
-
event.preventDefault();
|
|
95
|
-
setCurrent(next.value);
|
|
96
|
-
onChange?.(next.value);
|
|
97
|
-
document.getElementById(`${id}-${entries.findIndex((entry)=>entry.value === next.value)}`)?.focus();
|
|
98
|
-
},
|
|
99
|
-
children: [
|
|
100
|
-
option.icon && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
|
|
101
|
-
"aria-hidden": "true",
|
|
102
|
-
children: option.icon
|
|
103
|
-
}),
|
|
104
|
-
option.label
|
|
105
|
-
]
|
|
106
|
-
}, option.value)),
|
|
107
|
-
name && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(field_cjs_namespaceObject.FormValue, {
|
|
108
|
-
value: current,
|
|
109
|
-
name: name,
|
|
110
|
-
form: form,
|
|
111
|
-
disabled: disabled,
|
|
112
|
-
triggerRef: trigger
|
|
113
|
-
})
|
|
114
|
-
]
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
exports.Segmented = __webpack_exports__.Segmented;
|
|
118
|
-
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
119
|
-
"Segmented"
|
|
120
|
-
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
121
|
-
Object.defineProperty(exports, '__esModule', {
|
|
122
|
-
value: true
|
|
123
|
-
});
|
|
124
|
-
|
|
125
|
-
//# sourceMappingURL=segmented.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segmented/segmented.cjs","sources":["webpack://webpack/runtime/define_property_getters","webpack://webpack/runtime/has_own_property","webpack://webpack/runtime/make_namespace_object","../../../src/segmented/segmented.tsx"],"sourcesContent":["__webpack_require__.d = (exports, getters, values) => {\n\tvar define = (defs, kind) => {\n\t\tfor(var key in defs) {\n\t\t\tif(__webpack_require__.o(defs, key) && !__webpack_require__.o(exports, key)) {\n\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, [kind]: defs[key] });\n\t\t\t}\n\t\t}\n\t};\n\tdefine(getters, \"get\");\n\tdefine(values, \"value\");\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { forwardRef, type HTMLAttributes, type ReactNode, useId, useRef } from 'react';\nimport { useComponentProps } from '../config-provider/component-defaults';\nimport { useLeafConfig } from '../config-provider/context';\nimport { useFormField } from '../form/form';\nimport { classes } from '../shared/classes';\nimport { FormValue, useFieldValue, useMergedRef } from '../shared/field';\nimport type { ControlSize } from '../shared/types';\nimport { useMovingIndicator } from '../tabs/use-moving-indicator';\nexport interface SegmentedOption {\n value: string;\n label: ReactNode;\n icon?: ReactNode;\n disabled?: boolean;\n}\nexport interface SegmentedProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {\n options: readonly (string | SegmentedOption)[];\n value?: string;\n defaultValue?: string;\n onChange?: (value: string) => void;\n disabled?: boolean;\n size?: ControlSize;\n block?: boolean;\n name?: string;\n form?: string;\n}\nexport const Segmented = forwardRef<HTMLDivElement, SegmentedProps>(function Segmented(\n rawProps: SegmentedProps,\n ref,\n) {\n const {\n options,\n value,\n defaultValue,\n onChange,\n disabled: disabledProp,\n size = 'md',\n block = false,\n name,\n form,\n className,\n ...props\n } = useComponentProps('Segmented', rawProps);\n const field = useFormField();\n const { direction } = useLeafConfig();\n const root = useRef<HTMLDivElement>(null);\n const marker = useRef<HTMLSpanElement>(null);\n const merged = useMergedRef(root, ref);\n const disabled = disabledProp || field?.disabled;\n const entries = options.map((option) =>\n typeof option === 'string' ? { label: option, value: option } : option,\n );\n const first = entries.find((option) => !option.disabled)?.value ?? '';\n const trigger = useRef<HTMLButtonElement>(null);\n const [current, setCurrent] = useFieldValue(value, defaultValue ?? first, trigger, form);\n useMovingIndicator(root, marker, '[aria-checked=\"true\"]', `${current}-${direction}`);\n const id = useId();\n return (\n <div\n {...props}\n ref={merged}\n role=\"radiogroup\"\n aria-disabled={disabled || undefined}\n className={classes(\n 'leaf-segmented',\n `leaf-segmented--${size}`,\n block && 'leaf-segmented--block',\n className,\n )}\n >\n <span ref={marker} className=\"leaf-segmented__indicator\" aria-hidden=\"true\" />\n {entries.map((option, index) => (\n // biome-ignore lint/a11y/useSemanticElements: Segmented buttons implement roving focus and radio-group selection with a shared form proxy.\n <button\n key={option.value}\n type=\"button\"\n ref={index === 0 ? trigger : undefined}\n role=\"radio\"\n data-leaf-indicator-item=\"\"\n aria-checked={current === option.value}\n disabled={disabled || option.disabled}\n tabIndex={\n current === option.value ||\n (!entries.some((entry) => entry.value === current && !entry.disabled) &&\n option.value === first)\n ? 0\n : -1\n }\n id={`${id}-${index}`}\n onClick={() => {\n setCurrent(option.value);\n onChange?.(option.value);\n }}\n onKeyDown={(event) => {\n const available = entries.filter((entry) => !entry.disabled);\n const position = available.findIndex((entry) => entry.value === option.value);\n const next =\n event.key === 'Home'\n ? available[0]\n : event.key === 'End'\n ? available.at(-1)\n : ['ArrowLeft', 'ArrowUp', 'ArrowRight', 'ArrowDown'].includes(event.key)\n ? available[\n (position +\n (event.key === 'ArrowUp' ||\n event.key === (direction === 'rtl' ? 'ArrowRight' : 'ArrowLeft')\n ? -1\n : 1) +\n available.length) %\n available.length\n ]\n : undefined;\n if (!next || disabled) return;\n event.preventDefault();\n setCurrent(next.value);\n onChange?.(next.value);\n document\n .getElementById(`${id}-${entries.findIndex((entry) => entry.value === next.value)}`)\n ?.focus();\n }}\n >\n {option.icon && <span aria-hidden=\"true\">{option.icon}</span>}\n {option.label}\n </button>\n ))}\n {name && (\n <FormValue\n value={current}\n name={name}\n form={form}\n disabled={disabled}\n triggerRef={trigger}\n />\n )}\n </div>\n );\n});\n"],"names":["__webpack_require__","getters","values","define","defs","kind","key","Object","obj","prop","Symbol","Segmented","forwardRef","rawProps","ref","options","value","defaultValue","onChange","disabledProp","size","block","name","form","className","props","useComponentProps","field","useFormField","direction","useLeafConfig","root","useRef","marker","merged","useMergedRef","disabled","entries","option","first","trigger","current","setCurrent","useFieldValue","useMovingIndicator","id","useId","undefined","classes","index","entry","event","available","position","next","document","FormValue"],"mappings":"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"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
-
import type { ControlSize } from '../shared/types.cjs';
|
|
3
|
-
export interface SegmentedOption {
|
|
4
|
-
value: string;
|
|
5
|
-
label: ReactNode;
|
|
6
|
-
icon?: ReactNode;
|
|
7
|
-
disabled?: boolean;
|
|
8
|
-
}
|
|
9
|
-
export interface SegmentedProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
|
|
10
|
-
options: readonly (string | SegmentedOption)[];
|
|
11
|
-
value?: string;
|
|
12
|
-
defaultValue?: string;
|
|
13
|
-
onChange?: (value: string) => void;
|
|
14
|
-
disabled?: boolean;
|
|
15
|
-
size?: ControlSize;
|
|
16
|
-
block?: boolean;
|
|
17
|
-
name?: string;
|
|
18
|
-
form?: string;
|
|
19
|
-
}
|
|
20
|
-
export declare const Segmented: import("react").ForwardRefExoticComponent<SegmentedProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
21
|
-
//# sourceMappingURL=segmented.d.cts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segmented.d.cts","sourceRoot":"","sources":["../../../src/segmented/segmented.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAiB,MAAM,OAAO,CAAC;AAMvF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IACtF,OAAO,EAAE,SAAS,CAAC,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,eAAO,MAAM,SAAS,2GA8GpB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.leaf-segmented{--leaf-surface-inner-top: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-top) - var(--leaf-surface-border));--leaf-surface-inner-right: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-right) - var(--leaf-surface-border));--leaf-surface-inner-bottom: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-bottom) - var(--leaf-surface-border));--leaf-surface-inner-left: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-left) - var(--leaf-surface-border));--leaf-surface-inner-radius: var(--leaf-surface-inner-left) var(--leaf-surface-inner-right) var(--leaf-surface-inner-right) var(--leaf-surface-inner-left) / var(--leaf-surface-inner-top) var(--leaf-surface-inner-top) var(--leaf-surface-inner-bottom) var(--leaf-surface-inner-bottom);padding:var(--leaf-surface-padding-top) var(--leaf-surface-padding-right) var(--leaf-surface-padding-bottom) var(--leaf-surface-padding-left);border-radius:var(--leaf-surface-radius)}.leaf-segmented{--leaf-current-font-size: var(--leaf-font-size);--leaf-current-control-height: var(--leaf-control-height, 36px)}.leaf-segmented--sm{--leaf-current-control-height: var(--leaf-control-height-sm, 30px);--leaf-current-font-size: var(--leaf-font-size-sm, 12px)}.leaf-segmented--lg{--leaf-current-control-height: var(--leaf-control-height-lg, 42px);--leaf-current-font-size: var(--leaf-font-size-lg, 16px)}.leaf-segmented{--leaf-surface-radius: var(--leaf-component-segmented-radius, var(--leaf-radius));--leaf-surface-padding: var(--leaf-component-segmented-padding, 3px);--leaf-surface-border: 1px;--leaf-surface-padding-top: var( --leaf-component-segmented-padding-top, var(--leaf-surface-padding) );--leaf-surface-padding-right: var( --leaf-component-segmented-padding-right, var(--leaf-surface-padding) );--leaf-surface-padding-bottom: var( --leaf-component-segmented-padding-bottom, var(--leaf-surface-padding) );--leaf-surface-padding-left: var( --leaf-component-segmented-padding-left, var(--leaf-surface-padding) );position:relative;isolation:isolate;display:inline-flex;width:max-content;max-width:100%;align-self:flex-start;gap:var(--leaf-component-segmented-gap, 3px);background:var(--leaf-component-segmented-background, var(--leaf-color-surface-muted));box-sizing:border-box;border:1px solid var(--leaf-color-border-alpha-65)}.leaf-segmented__indicator{position:absolute;top:0;left:0;z-index:-1;pointer-events:none;width:var(--leaf-indicator-width, 0px);height:var(--leaf-indicator-height, 0px);transform:translate(var(--leaf-indicator-x, 0px), var(--leaf-indicator-y, 0px));border-radius:var(--leaf-surface-inner-radius);background:var(--leaf-color-surface-raised);box-shadow:var(--leaf-shadow-xs);opacity:0}.leaf-segmented__indicator[data-visible=true]{opacity:1}.leaf-segmented__indicator[data-animate=true]{transition:transform var(--leaf-motion-slow) var(--leaf-motion-spring),width var(--leaf-motion-slow) var(--leaf-motion-spring),height var(--leaf-motion-slow) var(--leaf-motion-spring)}.leaf-segmented--block{display:flex;width:100%;align-self:stretch}.leaf-segmented--block>button{flex:1}.leaf-segmented>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:calc(var(--leaf-current-control-height) - var(--leaf-surface-padding-top) - var(--leaf-surface-padding-bottom) - 2px);padding:0 12px;border:0;border-radius:var(--leaf-surface-inner-radius);background:rgba(0,0,0,0);color:var(--leaf-color-text-muted);font:var(--leaf-current-font-size)/1.5 var(--leaf-font-family);white-space:nowrap;cursor:pointer;transition:color var(--leaf-motion-fast) var(--leaf-motion-easing),transform var(--leaf-motion-fast) var(--leaf-motion-easing)}.leaf-segmented>button[aria-checked=true]{color:var(--leaf-color-text);font-weight:var(--leaf-font-weight)}.leaf-segmented>button:hover:not(:disabled){color:var(--leaf-color-text)}.leaf-segmented>button:active:not(:disabled){transform:scale(0.97)}.leaf-segmented>button:focus-visible{outline:3px solid var(--leaf-color-focus, var(--leaf-focus-color, var(--leaf-color-primary-alpha-42)));outline-offset:2px}.leaf-segmented>button:disabled{opacity:.45;cursor:not-allowed}.leaf-segmented>button svg{display:block;width:16px;height:16px}@media(prefers-reduced-motion: reduce){.leaf-segmented>button,.leaf-segmented__indicator[data-animate=true]{transition:none}}.leaf-segmented{--leaf-current-control-height: var(--leaf-component-segmented-height, var(--leaf-control-height));--leaf-current-font-size: var(--leaf-component-segmented-font-size, var(--leaf-font-size))}.leaf-segmented--sm{--leaf-current-control-height: var( --leaf-component-segmented-height-sm, var(--leaf-control-height-sm) );--leaf-current-font-size: var(--leaf-font-size-sm)}.leaf-segmented--lg{--leaf-current-control-height: var( --leaf-component-segmented-height-lg, var(--leaf-control-height-lg) );--leaf-current-font-size: var(--leaf-font-size-lg)}@media(forced-colors: active){.leaf-segmented__indicator{background:Highlight;forced-color-adjust:none}.leaf-segmented>button[aria-checked=true]{color:HighlightText}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
:root,:host{--leaf-color-option-hover: #ebebeb;--leaf-color-border-alpha-55: rgba(229, 229, 232, 0.55);--leaf-color-border-alpha-65: rgba(229, 229, 232, 0.65);--leaf-color-border-surface-70: #ededef;--leaf-color-border-text-muted-65: #b9b9be;--leaf-color-danger-alpha-18: rgba(200, 60, 60, 0.18);--leaf-color-danger-alpha-25: rgba(200, 60, 60, 0.25);--leaf-color-danger-alpha-42: rgba(200, 60, 60, 0.42);--leaf-color-primary-alpha-15: rgba(32, 131, 74, 0.15);--leaf-color-primary-alpha-18: rgba(32, 131, 74, 0.18);--leaf-color-primary-alpha-25: rgba(32, 131, 74, 0.25);--leaf-color-primary-alpha-42: rgba(32, 131, 74, 0.42);--leaf-color-primary-surface-9: #ebf4ef;--leaf-color-surface-text-98: #fbfbfb;--leaf-color-text-muted-surface-92: #74747b;--leaf-color-text-subtle: #74747b;--leaf-color-surface-raised: #fbfbfb;--leaf-color-border-hover: #b9b9be;--leaf-color-on-warning: #202024;--leaf-color-primary-hover: #26864f;--leaf-color-primary-active: #1b6f3f;--leaf-color-danger-hover: #cb4848;--leaf-color-danger-active: #aa3333;--leaf-color-primary: #20834a;--leaf-color-on-primary: #ffffff;--leaf-color-danger: #c83c3c;--leaf-color-on-danger: #ffffff;--leaf-color-warning: #faad14;--leaf-color-info: #1677ff;--leaf-color-success: #20834a;--leaf-control-height: 36px;--leaf-density-form-gap: 24px;--leaf-density-label-gap: 6px;--leaf-density-row-padding: 12px;--leaf-density-option-height: max(24px, calc(var(--leaf-control-height) - 4px));--leaf-density-option-padding: 6px;--leaf-density-field-padding: 10px;--leaf-density-dialog-block: 20px;--leaf-density-dialog-inline: 24px;--leaf-density-dialog-gap: 16px;--leaf-z-index-popup: 1000;--leaf-z-index-modal: 1100;--leaf-z-index-message: 1200;--leaf-color-text: #202024;--leaf-color-text-muted: #68686f;--leaf-color-surface: #ffffff;--leaf-color-surface-muted: #f6f6f7;--leaf-color-border: #e5e5e8;--leaf-radius: 10px;--leaf-radius-sm: calc(var(--leaf-radius) * 0.6);--leaf-radius-md: calc(var(--leaf-radius) * 1.2);--leaf-radius-lg: calc(var(--leaf-radius) * 1.6);--leaf-choice-radius: calc(var(--leaf-radius) * 0.5);--leaf-font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;--leaf-font-size: 14px;--leaf-font-size-sm: max(1px, calc(var(--leaf-font-size) - 1px));--leaf-font-size-lg: calc(var(--leaf-font-size) + 2px);--leaf-font-weight: 500;--leaf-motion-duration: 200ms;--leaf-motion-easing: cubic-bezier(0.22, 1, 0.36, 1);--leaf-motion-spring: cubic-bezier(0.22, 1.28, 0.36, 1);--leaf-motion-play-state: running}[data-leaf-theme=light]{--leaf-color-option-hover: #ebebeb;--leaf-color-border-alpha-55: rgba(229, 229, 232, 0.55);--leaf-color-border-alpha-65: rgba(229, 229, 232, 0.65);--leaf-color-border-surface-70: #ededef;--leaf-color-border-text-muted-65: #b9b9be;--leaf-color-danger-alpha-18: rgba(200, 60, 60, 0.18);--leaf-color-danger-alpha-25: rgba(200, 60, 60, 0.25);--leaf-color-danger-alpha-42: rgba(200, 60, 60, 0.42);--leaf-color-primary-alpha-15: rgba(32, 131, 74, 0.15);--leaf-color-primary-alpha-18: rgba(32, 131, 74, 0.18);--leaf-color-primary-alpha-25: rgba(32, 131, 74, 0.25);--leaf-color-primary-alpha-42: rgba(32, 131, 74, 0.42);--leaf-color-primary-surface-9: #ebf4ef;--leaf-color-surface-text-98: #fbfbfb;--leaf-color-text-muted-surface-92: #74747b;--leaf-color-text-subtle: #74747b;--leaf-color-surface-raised: #fbfbfb;--leaf-color-border-hover: #b9b9be;--leaf-color-on-warning: #202024;--leaf-color-primary-hover: #26864f;--leaf-color-primary-active: #1b6f3f;--leaf-color-danger-hover: #cb4848;--leaf-color-danger-active: #aa3333;--leaf-color-primary: #20834a;--leaf-color-on-primary: #ffffff;--leaf-color-danger: #c83c3c;--leaf-color-on-danger: #ffffff;--leaf-color-success: #20834a;--leaf-color-warning: #faad14;--leaf-color-info: #1677ff;color-scheme:light;--leaf-color-text: #202024;--leaf-color-text-muted: #68686f;--leaf-color-surface: #ffffff;--leaf-color-surface-muted: #f6f6f7;--leaf-color-border: #e5e5e8}[data-leaf-theme=dark]{--leaf-color-option-hover: #2f2f33;--leaf-color-border-alpha-55: rgba(56, 56, 63, 0.55);--leaf-color-border-alpha-65: rgba(56, 56, 63, 0.65);--leaf-color-border-surface-70: #303036;--leaf-color-border-text-muted-65: #5e5e66;--leaf-color-danger-alpha-18: rgba(239, 133, 133, 0.18);--leaf-color-danger-alpha-25: rgba(239, 133, 133, 0.25);--leaf-color-danger-alpha-42: rgba(239, 133, 133, 0.42);--leaf-color-primary-alpha-15: rgba(131, 207, 158, 0.15);--leaf-color-primary-alpha-18: rgba(131, 207, 158, 0.18);--leaf-color-primary-alpha-25: rgba(131, 207, 158, 0.25);--leaf-color-primary-alpha-42: rgba(131, 207, 158, 0.42);--leaf-color-primary-surface-9: #252c2b;--leaf-color-surface-text-98: #202024;--leaf-color-text-muted-surface-92: #9a9aa3;--leaf-color-text-subtle: #9a9aa3;--leaf-color-surface-raised: #202024;--leaf-color-border-hover: #5e5e66;--leaf-color-on-warning: #202024;--leaf-color-primary-hover: #8fd4a8;--leaf-color-primary-active: #6fb086;--leaf-color-danger-hover: #f19191;--leaf-color-danger-active: #cb7171;--leaf-color-primary: #83cf9e;--leaf-color-on-primary: #11271a;--leaf-color-info: #69b1ff;--leaf-color-success: #83cf9e;--leaf-color-danger: #ef8585;--leaf-color-on-danger: #381818;--leaf-color-warning: #ffc53d;color-scheme:dark;--leaf-color-text: #ededf0;--leaf-color-text-muted: #a5a5ae;--leaf-color-surface: #1c1c20;--leaf-color-surface-muted: #25252b;--leaf-color-border: #38383f}:root,:host{--leaf-spacing: 8px;--leaf-line-height: 1.6;--leaf-heading-weight: 600;--leaf-shadow-xs: 0 1px 2px rgb(0 0 0 / 0.06), 0 0 0 1px rgb(0 0 0 / 0.02);--leaf-shadow-sm: 0 2px 6px rgb(0 0 0 / 0.05), 0 1px 2px rgb(0 0 0 / 0.04);--leaf-shadow-md: 0 8px 24px rgb(0 0 0 / 0.08), 0 2px 6px rgb(0 0 0 / 0.04);--leaf-shadow-lg: 0 20px 60px rgb(0 0 0 / 0.14), 0 4px 12px rgb(0 0 0 / 0.06)}:root,:host,[data-leaf-scope]{--leaf-spacing-xs: calc(var(--leaf-spacing) * 0.5);--leaf-spacing-sm: var(--leaf-spacing);--leaf-spacing-md: calc(var(--leaf-spacing) * 2);--leaf-spacing-lg: calc(var(--leaf-spacing) * 3);--leaf-spacing-xl: calc(var(--leaf-spacing) * 4);--leaf-control-height-sm: max(1px, calc(var(--leaf-control-height) - 6px));--leaf-control-height-lg: calc(var(--leaf-control-height) + 6px);--leaf-motion-fast: calc(var(--leaf-motion-duration) * 0.6);--leaf-motion-slow: calc(var(--leaf-motion-duration) * 1.6);--leaf-color-text-subtle: var(--leaf-color-text-muted-surface-92);--leaf-color-surface-raised: var(--leaf-color-surface-text-98);--leaf-color-border-hover: var(--leaf-color-border-text-muted-65);--leaf-color-divider: var(--leaf-color-border-surface-70)}@keyframes leaf-content-in{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}@keyframes leaf-state-in{from{opacity:0;scale:.92}to{opacity:1;scale:1}}@media(prefers-reduced-motion: reduce){:where([class^=leaf-],[class*=" leaf-"]){animation:none !important;animation-delay:0s !important;transition-duration:0s !important;transition-delay:0s !important;scroll-behavior:auto !important}}.leaf-segmented,.leaf-floating{--leaf-surface-inner-top: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-top) - var(--leaf-surface-border));--leaf-surface-inner-right: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-right) - var(--leaf-surface-border));--leaf-surface-inner-bottom: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-bottom) - var(--leaf-surface-border));--leaf-surface-inner-left: max(0px, var(--leaf-surface-radius) - var(--leaf-surface-padding-left) - var(--leaf-surface-border));--leaf-surface-inner-radius: var(--leaf-surface-inner-left) var(--leaf-surface-inner-right) var(--leaf-surface-inner-right) var(--leaf-surface-inner-left) / var(--leaf-surface-inner-top) var(--leaf-surface-inner-top) var(--leaf-surface-inner-bottom) var(--leaf-surface-inner-bottom);padding:var(--leaf-surface-padding-top) var(--leaf-surface-padding-right) var(--leaf-surface-padding-bottom) var(--leaf-surface-padding-left);border-radius:var(--leaf-surface-radius)}.leaf-floating{--leaf-surface-radius: var(--leaf-component-floating-radius, var(--leaf-radius-lg));--leaf-surface-padding: var(--leaf-component-floating-padding, 6px);--leaf-surface-border: 1px;--leaf-surface-padding-top: var( --leaf-component-floating-padding-top, var(--leaf-surface-padding) );--leaf-surface-padding-right: var( --leaf-component-floating-padding-right, var(--leaf-surface-padding) );--leaf-surface-padding-bottom: var( --leaf-component-floating-padding-bottom, var(--leaf-surface-padding) );--leaf-surface-padding-left: var( --leaf-component-floating-padding-left, var(--leaf-surface-padding) );--leaf-floating-option-radius: var(--leaf-surface-inner-radius);--leaf-popup-x: 0px;--leaf-popup-y: -4px;--leaf-popup-origin-x: center;--leaf-popup-origin-y: top;box-sizing:border-box;position:fixed;z-index:var(--leaf-z-index-popup, 1000);max-width:min(420px,100vw - 24px);max-height:min(360px,100vh - 32px);overflow:auto;border:var(--leaf-surface-border) solid var(--leaf-color-border);color:var(--leaf-color-text);font-family:var(--leaf-font-family);font-size:var(--leaf-font-size);line-height:1.5;background:var(--leaf-color-surface-raised, var(--leaf-color-surface));box-shadow:var(--leaf-shadow-md);overscroll-behavior:contain;opacity:1;translate:0 0;scale:1;transform-origin:var(--leaf-popup-origin-x) var(--leaf-popup-origin-y);transition:opacity var(--leaf-motion-duration) var(--leaf-motion-easing),translate var(--leaf-motion-slow) var(--leaf-motion-easing),scale var(--leaf-motion-slow) var(--leaf-motion-easing)}.leaf-floating[data-side=top]{--leaf-popup-y: 4px;--leaf-popup-origin-y: bottom}.leaf-floating[data-side=left]{--leaf-popup-x: 6px;--leaf-popup-y: 0px;--leaf-popup-origin-x: right;--leaf-popup-origin-y: center}.leaf-floating[data-side=right]{--leaf-popup-x: -6px;--leaf-popup-y: 0px;--leaf-popup-origin-x: left;--leaf-popup-origin-y: center}@starting-style{.leaf-floating{opacity:0;translate:var(--leaf-popup-x) var(--leaf-popup-y);scale:.985}}.leaf-floating[data-positioned=false]{opacity:0;translate:var(--leaf-popup-x) var(--leaf-popup-y);scale:.985}.leaf-floating[data-state=closing]{pointer-events:none;opacity:0;translate:var(--leaf-popup-x) var(--leaf-popup-y);scale:.98;transition-duration:var(--leaf-motion-duration);transition-timing-function:var(--leaf-motion-easing)}.leaf-floating:focus{outline:none}@media(prefers-reduced-motion: reduce){.leaf-floating,.leaf-floating[data-state=closing]{transition:none}}.leaf-form-value{position:absolute;width:1px;height:1px;padding:0;border:0;clip-path:inset(50%);opacity:0;pointer-events:none}.leaf-floating__option{box-sizing:border-box;display:flex;width:100%;min-height:var(--leaf-density-option-height);align-items:center;gap:8px;padding:var(--leaf-density-option-padding) var(--leaf-density-field-padding);padding-block:min(var(--leaf-density-option-padding),max(0px,(var(--leaf-density-option-height) - 1.4em)/2));border:0;border-radius:var(--leaf-floating-option-radius, var(--leaf-radius-sm));color:inherit;background:rgba(0,0,0,0);font:inherit;line-height:1.4;text-align:start;cursor:pointer;transition:color var(--leaf-motion-fast) var(--leaf-motion-easing),background-color var(--leaf-motion-fast) var(--leaf-motion-easing),box-shadow var(--leaf-motion-fast) var(--leaf-motion-easing)}.leaf-floating__option+.leaf-floating__option{margin-top:2px}.leaf-floating__option:hover:not(:disabled):not([aria-disabled=true]):not([aria-selected=true]):not([aria-checked=true]),.leaf-floating__option:focus-visible:not(:disabled):not([aria-disabled=true]):not([aria-selected=true]):not([aria-checked=true]),.leaf-floating__option[data-highlighted=true]:not([aria-disabled=true]):not([aria-selected=true]):not([aria-checked=true]){background:var(--leaf-color-option-hover)}.leaf-floating__option:active:not(:disabled):not([aria-disabled=true]):not([aria-selected=true]):not([aria-checked=true]){background:var(--leaf-color-option-hover)}.leaf-floating__option[aria-selected=true]{color:var(--leaf-color-primary);font-weight:var(--leaf-font-weight);background:var(--leaf-color-primary-surface-9)}.leaf-floating__option:disabled,.leaf-floating__option[aria-disabled=true]{color:var(--leaf-color-text-muted);cursor:not-allowed;opacity:.55}.leaf-floating__option:focus-visible{outline:2px solid var(--leaf-color-primary);outline-offset:-2px}.leaf-floating__option-label{min-width:0;overflow-wrap:anywhere}.leaf-floating__options{display:flex;flex-direction:column;gap:2px}@media(prefers-reduced-motion: reduce){.leaf-floating__option{transition:none}}.leaf-floating__highlight{position:absolute;top:0;left:0;box-sizing:border-box;width:var(--leaf-option-highlight-width, 0px);height:var(--leaf-option-highlight-height, var(--leaf-density-option-height));translate:var(--leaf-option-highlight-x, 0px) var(--leaf-option-highlight-y, 0px);border:1px solid var(--leaf-color-border-alpha-55);border-radius:var(--leaf-floating-option-radius);background:var(--leaf-color-option-hover);pointer-events:none;transition:translate var(--leaf-motion-duration) var(--leaf-motion-spring),height var(--leaf-motion-fast) var(--leaf-motion-easing),width var(--leaf-motion-fast) var(--leaf-motion-easing),background-color var(--leaf-motion-fast) var(--leaf-motion-easing),border-color var(--leaf-motion-fast) var(--leaf-motion-easing)}.leaf-floating__highlight[data-ready=false],.leaf-floating__highlight[data-hidden]{visibility:hidden}.leaf-floating__highlight[data-selected]{background:var(--leaf-color-primary-surface-9);border-color:var(--leaf-color-primary-alpha-15)}.leaf-floating[data-hover-motion] .leaf-floating__option{position:relative;z-index:1}.leaf-floating[data-hover-motion] .leaf-floating__option:hover:not(:disabled):not([aria-disabled=true]):not([aria-selected=true]),.leaf-floating[data-hover-motion] .leaf-floating__option:focus-visible:not(:disabled):not([aria-disabled=true]):not([aria-selected=true]),.leaf-floating[data-hover-motion] .leaf-floating__option[data-highlighted]:not([aria-disabled=true]):not([aria-selected=true]),.leaf-floating[data-hover-motion] .leaf-floating__option:active:not(:disabled):not([aria-disabled=true]):not([aria-selected=true]){background:rgba(0,0,0,0)}.leaf-floating[data-selection=candidate] .leaf-floating__option[aria-selected=true]{color:inherit;font-weight:inherit;background:rgba(0,0,0,0)}.leaf-floating[data-selection=candidate] .leaf-floating__option[aria-selected=true]:not(:disabled):not([aria-disabled=true]){background:var(--leaf-color-option-hover)}.leaf-floating[data-selection=candidate][data-hover-motion] .leaf-floating__option[aria-selected=true]:not(:disabled):not([aria-disabled=true]){background:rgba(0,0,0,0)}@media(prefers-reduced-motion: reduce){.leaf-floating__highlight{transition:none}}.leaf-floating__empty{padding:12px 10px;color:var(--leaf-color-text-muted);font-size:var(--leaf-font-size-sm);text-align:center}.leaf-floating__empty--feedback{box-sizing:border-box;display:flex;min-height:112px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 16px}.leaf-floating__empty--feedback>svg{flex:none}.leaf-floating__empty--feedback>div{min-width:0;max-width:100%;overflow-wrap:anywhere}.leaf-floating__loading-icon{color:var(--leaf-color-primary);animation:var(--leaf-motion-animation, leaf-floating-spin calc(var(--leaf-motion-duration) * 4) linear infinite);animation-play-state:var(--leaf-motion-play-state, running)}@keyframes leaf-floating-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion: reduce){.leaf-floating__loading-icon{animation:none}}.leaf-button{--leaf-button-color: var(--leaf-color-primary);--leaf-button-color-alpha-18: var(--leaf-color-primary-alpha-18);--leaf-button-color-alpha-25: var(--leaf-color-primary-alpha-25);--leaf-button-color-alpha-42: var(--leaf-color-primary-alpha-42);--leaf-button-on-color: var(--leaf-color-on-primary);--leaf-focus-color: var(--leaf-button-color-alpha-42);--leaf-button-hover: var(--leaf-color-primary-hover, var(--leaf-button-color));--leaf-button-active: var(--leaf-color-primary-active, var(--leaf-button-color));--leaf-button-soft-hover: var(--leaf-color-primary-soft-hover, var(--leaf-button-color-alpha-18));--leaf-button-soft-active: var( --leaf-color-primary-soft-active, var(--leaf-button-color-alpha-25) );--leaf-button-border: var(--leaf-color-primary-border, var(--leaf-button-color-alpha-42));box-sizing:border-box;display:inline-flex;position:relative;align-items:center;justify-content:center;gap:var(--leaf-component-button-gap, 6px);min-height:var(--leaf-button-height, var(--leaf-current-control-height));padding:var(--leaf-component-button-padding, 0 calc(var(--leaf-button-height, var(--leaf-current-control-height)) * 0.42));border:1px solid rgba(0,0,0,0);border-radius:var(--leaf-component-button-radius, var(--leaf-button-radius, var(--leaf-radius)));font-family:var(--leaf-font-family);font-size:var(--leaf-component-button-font-size, var(--leaf-current-font-size));font-weight:var(--leaf-font-weight);line-height:1.5;text-decoration:none;white-space:nowrap;vertical-align:middle;cursor:pointer;user-select:none;appearance:none;transition:background-color var(--leaf-motion-duration) var(--leaf-motion-easing),border-color var(--leaf-motion-duration) var(--leaf-motion-easing),color var(--leaf-motion-duration) var(--leaf-motion-easing),box-shadow var(--leaf-motion-duration) var(--leaf-motion-easing),opacity var(--leaf-motion-duration) var(--leaf-motion-easing);--leaf-current-font-size: var(--leaf-font-size);--leaf-current-control-height: var(--leaf-control-height, 36px)}.leaf-button--sm{--leaf-current-control-height: var(--leaf-control-height-sm, 30px);--leaf-current-font-size: var(--leaf-font-size-sm, 12px)}.leaf-button--lg{--leaf-current-control-height: var(--leaf-control-height-lg, 42px);--leaf-current-font-size: var(--leaf-font-size-lg, 16px)}.leaf-button:focus-visible{outline:3px solid var(--leaf-color-focus, var(--leaf-focus-color, var(--leaf-color-primary-alpha-42)));outline-offset:2px}.leaf-button:disabled{cursor:not-allowed;opacity:.45}.leaf-button[data-loading]{cursor:default;opacity:1}.leaf-button__wave{position:absolute;z-index:1;inset:-1px;box-sizing:border-box;border-radius:inherit;color:var(--leaf-button-color);box-shadow:0 0 0 0 currentColor;opacity:0;pointer-events:none}.leaf-button__content{display:inline-flex;align-items:center;justify-content:center;gap:inherit;min-width:0;transition:opacity var(--leaf-motion-fast) var(--leaf-motion-easing),transform var(--leaf-motion-duration) var(--leaf-motion-spring)}.leaf-button__loading{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:scale(0.7);pointer-events:none;transition:opacity var(--leaf-motion-duration) var(--leaf-motion-easing),transform var(--leaf-motion-duration) var(--leaf-motion-spring)}.leaf-button[data-loading] .leaf-button__content{opacity:0;transform:translateY(3px)}.leaf-button[data-loading] .leaf-button__loading{opacity:1;transform:scale(1)}.leaf-button[data-loading] .leaf-button__spinner{animation:var(--leaf-motion-animation, leaf-spin calc(var(--leaf-motion-duration) * 4.5) linear infinite);animation-play-state:var(--leaf-motion-play-state, running)}.leaf-button--danger{--leaf-button-color: var(--leaf-color-danger);--leaf-button-color-alpha-18: var(--leaf-color-danger-alpha-18);--leaf-button-color-alpha-25: var(--leaf-color-danger-alpha-25);--leaf-button-color-alpha-42: var(--leaf-color-danger-alpha-42);--leaf-button-on-color: var(--leaf-color-on-danger);--leaf-button-hover: var(--leaf-color-danger-hover, var(--leaf-button-color));--leaf-button-active: var(--leaf-color-danger-active, var(--leaf-button-color));--leaf-button-soft-hover: var(--leaf-button-color-alpha-18);--leaf-button-soft-active: var(--leaf-button-color-alpha-25);--leaf-button-border: var(--leaf-button-color-alpha-42)}.leaf-button--solid{color:var(--leaf-button-on-color);background:var(--leaf-button-color);border-color:rgba(0,0,0,0);box-shadow:none}.leaf-button--solid:hover:not(:disabled){background:var(--leaf-button-hover)}.leaf-button--solid:active:not(:disabled){background:var(--leaf-button-active);box-shadow:none}.leaf-button--ghost{color:var(--leaf-color-text);background:rgba(0,0,0,0)}.leaf-button--ghost:hover:not(:disabled){background:var(--leaf-color-surface-muted)}.leaf-button--ghost:active:not(:disabled){background:var(--leaf-color-border)}.leaf-button--danger.leaf-button--ghost{color:var(--leaf-button-color)}.leaf-button--danger.leaf-button--ghost:hover:not(:disabled){color:var(--leaf-button-hover);background:var(--leaf-button-soft-hover)}.leaf-button--danger.leaf-button--ghost:active:not(:disabled){color:var(--leaf-button-active);background:var(--leaf-button-soft-active)}.leaf-button--outline{color:var(--leaf-color-text);background:var(--leaf-color-surface);border-color:var(--leaf-component-button-border-color, var(--leaf-color-border));box-shadow:var(--leaf-component-button-shadow, 0 1px 2px rgba(0, 0, 0, 0.04))}.leaf-button--outline:hover:not(:disabled){color:var(--leaf-button-hover);border-color:var(--leaf-button-hover)}.leaf-button--outline:active:not(:disabled){color:var(--leaf-button-active);border-color:var(--leaf-button-active)}.leaf-button--danger.leaf-button--outline{color:var(--leaf-color-danger);border-color:var(--leaf-component-button-border-color, var(--leaf-button-border))}.leaf-button--icon-only{width:var(--leaf-button-height, var(--leaf-current-control-height));padding:0}.leaf-button--full-width{width:100%}.leaf-button--link{align-self:center;min-height:0;padding:0;border:0;border-radius:0;color:var(--leaf-button-color);background:rgba(0,0,0,0);box-shadow:none}.leaf-button--link:hover:not(:disabled){color:var(--leaf-button-hover)}.leaf-button--link:active:not(:disabled){color:var(--leaf-button-active)}.leaf-button--link.leaf-button--icon-only{width:auto}.leaf-button__icon,.leaf-button__spinner{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:16px;height:16px}.leaf-button__icon svg,.leaf-button__spinner svg{width:100%;height:100%}@keyframes leaf-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion: reduce){.leaf-button,.leaf-button__content,.leaf-button__loading{transition:none}.leaf-button[data-loading] .leaf-button__spinner{animation:none}.leaf-button__wave{display:none}}@media(forced-colors: active){.leaf-button__wave{display:none}.leaf-button{border-color:ButtonText}.leaf-button:disabled{color:GrayText;border-color:GrayText}.leaf-button:focus-visible{outline-color:Highlight}}.leaf-button-group{display:inline-flex;align-items:stretch;gap:8px}.leaf-button-group--attached{gap:0}.leaf-button-group--attached>.leaf-button{position:relative}.leaf-button-group--attached>.leaf-button:not(:first-child){border-start-start-radius:0;border-end-start-radius:0;margin-inline-start:-1px}.leaf-button-group--attached>.leaf-button:not(:last-child){border-start-end-radius:0;border-end-end-radius:0}.leaf-button-group--attached>.leaf-button:hover:not(:disabled),.leaf-button-group--attached>.leaf-button:active:not(:disabled),.leaf-button-group--attached>.leaf-button:focus-visible{z-index:1}.leaf-button-group{border:0;padding:0;margin:0;min-width:0}.leaf-split-button{isolation:isolate}.leaf-split-button.leaf-button-group--attached>.leaf-button{z-index:1}.leaf-split-button>.leaf-button--outline{--leaf-split-button-divider-color: var( --leaf-component-button-border-color, var(--leaf-color-border) )}.leaf-split-button>.leaf-button--outline.leaf-button--danger{--leaf-split-button-divider-color: var( --leaf-component-button-border-color, var(--leaf-button-border) )}.leaf-split-button>.leaf-button--outline:first-child{border-inline-end-color:var(--leaf-split-button-divider-color)}.leaf-split-button>.leaf-button--outline:not(:first-child){border-inline-start-color:var(--leaf-split-button-divider-color)}.leaf-split-button>.leaf-button+.leaf-button:not(.leaf-button--outline){margin-inline-start:0}.leaf-split-button>.leaf-button+.leaf-button::before{content:"";position:absolute;z-index:2;inset-block:22%;inset-inline-start:0;width:1px;background:var(--leaf-component-button-border-color, var(--leaf-color-border));pointer-events:none}.leaf-split-button>.leaf-button+.leaf-button.leaf-button--solid::before{background:color-mix(in srgb, var(--leaf-button-on-color) 32%, transparent)}.leaf-split-button>.leaf-button+.leaf-button.leaf-button--outline::before{display:none}.leaf-split-button>.leaf-button+.leaf-button.leaf-button--link{margin-inline-start:8px}.leaf-split-button>.leaf-button+.leaf-button.leaf-button--link::before{inset-inline-start:-4px}@media(forced-colors: active){.leaf-split-button>.leaf-button+.leaf-button::before,.leaf-split-button>.leaf-button+.leaf-button.leaf-button--solid::before{background:ButtonText}}.leaf-button{--leaf-current-control-height: var(--leaf-component-button-height, var(--leaf-control-height));--leaf-current-font-size: var(--leaf-component-button-font-size, var(--leaf-font-size))}.leaf-button--sm{--leaf-current-control-height: var( --leaf-component-button-height-sm, var(--leaf-control-height-sm) );--leaf-current-font-size: var(--leaf-font-size-sm)}.leaf-button--lg{--leaf-current-control-height: var( --leaf-component-button-height-lg, var(--leaf-control-height-lg) );--leaf-current-font-size: var(--leaf-font-size-lg)}.leaf-segmented{--leaf-current-font-size: var(--leaf-font-size);--leaf-current-control-height: var(--leaf-control-height, 36px)}.leaf-segmented--sm{--leaf-current-control-height: var(--leaf-control-height-sm, 30px);--leaf-current-font-size: var(--leaf-font-size-sm, 12px)}.leaf-segmented--lg{--leaf-current-control-height: var(--leaf-control-height-lg, 42px);--leaf-current-font-size: var(--leaf-font-size-lg, 16px)}.leaf-segmented{--leaf-surface-radius: var(--leaf-component-segmented-radius, var(--leaf-radius));--leaf-surface-padding: var(--leaf-component-segmented-padding, 3px);--leaf-surface-border: 1px;--leaf-surface-padding-top: var( --leaf-component-segmented-padding-top, var(--leaf-surface-padding) );--leaf-surface-padding-right: var( --leaf-component-segmented-padding-right, var(--leaf-surface-padding) );--leaf-surface-padding-bottom: var( --leaf-component-segmented-padding-bottom, var(--leaf-surface-padding) );--leaf-surface-padding-left: var( --leaf-component-segmented-padding-left, var(--leaf-surface-padding) );position:relative;isolation:isolate;display:inline-flex;width:max-content;max-width:100%;align-self:flex-start;gap:var(--leaf-component-segmented-gap, 3px);background:var(--leaf-component-segmented-background, var(--leaf-color-surface-muted));box-sizing:border-box;border:1px solid var(--leaf-color-border-alpha-65)}.leaf-segmented__indicator{position:absolute;top:0;left:0;z-index:-1;pointer-events:none;width:var(--leaf-indicator-width, 0px);height:var(--leaf-indicator-height, 0px);transform:translate(var(--leaf-indicator-x, 0px), var(--leaf-indicator-y, 0px));border-radius:var(--leaf-surface-inner-radius);background:var(--leaf-color-surface-raised);box-shadow:var(--leaf-shadow-xs);opacity:0}.leaf-segmented__indicator[data-visible=true]{opacity:1}.leaf-segmented__indicator[data-animate=true]{transition:transform var(--leaf-motion-slow) var(--leaf-motion-spring),width var(--leaf-motion-slow) var(--leaf-motion-spring),height var(--leaf-motion-slow) var(--leaf-motion-spring)}.leaf-segmented--block{display:flex;width:100%;align-self:stretch}.leaf-segmented--block>button{flex:1}.leaf-segmented>button{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:calc(var(--leaf-current-control-height) - var(--leaf-surface-padding-top) - var(--leaf-surface-padding-bottom) - 2px);padding:0 12px;border:0;border-radius:var(--leaf-surface-inner-radius);background:rgba(0,0,0,0);color:var(--leaf-color-text-muted);font:var(--leaf-current-font-size)/1.5 var(--leaf-font-family);white-space:nowrap;cursor:pointer;transition:color var(--leaf-motion-fast) var(--leaf-motion-easing),transform var(--leaf-motion-fast) var(--leaf-motion-easing)}.leaf-segmented>button[aria-checked=true]{color:var(--leaf-color-text);font-weight:var(--leaf-font-weight)}.leaf-segmented>button:hover:not(:disabled){color:var(--leaf-color-text)}.leaf-segmented>button:active:not(:disabled){transform:scale(0.97)}.leaf-segmented>button:focus-visible{outline:3px solid var(--leaf-color-focus, var(--leaf-focus-color, var(--leaf-color-primary-alpha-42)));outline-offset:2px}.leaf-segmented>button:disabled{opacity:.45;cursor:not-allowed}.leaf-segmented>button svg{display:block;width:16px;height:16px}@media(prefers-reduced-motion: reduce){.leaf-segmented>button,.leaf-segmented__indicator[data-animate=true]{transition:none}}.leaf-segmented{--leaf-current-control-height: var(--leaf-component-segmented-height, var(--leaf-control-height));--leaf-current-font-size: var(--leaf-component-segmented-font-size, var(--leaf-font-size))}.leaf-segmented--sm{--leaf-current-control-height: var( --leaf-component-segmented-height-sm, var(--leaf-control-height-sm) );--leaf-current-font-size: var(--leaf-font-size-sm)}.leaf-segmented--lg{--leaf-current-control-height: var( --leaf-component-segmented-height-lg, var(--leaf-control-height-lg) );--leaf-current-font-size: var(--leaf-font-size-lg)}@media(forced-colors: active){.leaf-segmented__indicator{background:Highlight;forced-color-adjust:none}.leaf-segmented>button[aria-checked=true]{color:HighlightText}}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import '../../../styles/foundation.css';
|
|
3
|
-
import '../../../styles/components/segmented.css';
|
|
4
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
import { forwardRef, useId, useRef } from "react";
|
|
6
|
-
import { useComponentProps } from "../config-provider/component-defaults.js";
|
|
7
|
-
import { useLeafConfig } from "../config-provider/context.js";
|
|
8
|
-
import { useFormField } from "../form/form.js";
|
|
9
|
-
import { classes } from "../shared/classes.js";
|
|
10
|
-
import { FormValue, useFieldValue, useMergedRef } from "../shared/field.js";
|
|
11
|
-
import { useMovingIndicator } from "../tabs/use-moving-indicator.js";
|
|
12
|
-
const segmented_Segmented = /*#__PURE__*/ forwardRef(function(rawProps, ref) {
|
|
13
|
-
const { options, value, defaultValue, onChange, disabled: disabledProp, size = 'md', block = false, name, form, className, ...props } = useComponentProps('Segmented', rawProps);
|
|
14
|
-
const field = useFormField();
|
|
15
|
-
const { direction } = useLeafConfig();
|
|
16
|
-
const root = useRef(null);
|
|
17
|
-
const marker = useRef(null);
|
|
18
|
-
const merged = useMergedRef(root, ref);
|
|
19
|
-
const disabled = disabledProp || field?.disabled;
|
|
20
|
-
const entries = options.map((option)=>'string' == typeof option ? {
|
|
21
|
-
label: option,
|
|
22
|
-
value: option
|
|
23
|
-
} : option);
|
|
24
|
-
const first = entries.find((option)=>!option.disabled)?.value ?? '';
|
|
25
|
-
const trigger = useRef(null);
|
|
26
|
-
const [current, setCurrent] = useFieldValue(value, defaultValue ?? first, trigger, form);
|
|
27
|
-
useMovingIndicator(root, marker, '[aria-checked="true"]', `${current}-${direction}`);
|
|
28
|
-
const id = useId();
|
|
29
|
-
return /*#__PURE__*/ jsxs("div", {
|
|
30
|
-
...props,
|
|
31
|
-
ref: merged,
|
|
32
|
-
role: "radiogroup",
|
|
33
|
-
"aria-disabled": disabled || void 0,
|
|
34
|
-
className: classes('leaf-segmented', `leaf-segmented--${size}`, block && 'leaf-segmented--block', className),
|
|
35
|
-
children: [
|
|
36
|
-
/*#__PURE__*/ jsx("span", {
|
|
37
|
-
ref: marker,
|
|
38
|
-
className: "leaf-segmented__indicator",
|
|
39
|
-
"aria-hidden": "true"
|
|
40
|
-
}),
|
|
41
|
-
entries.map((option, index)=>/*#__PURE__*/ jsxs("button", {
|
|
42
|
-
type: "button",
|
|
43
|
-
ref: 0 === index ? trigger : void 0,
|
|
44
|
-
role: "radio",
|
|
45
|
-
"data-leaf-indicator-item": "",
|
|
46
|
-
"aria-checked": current === option.value,
|
|
47
|
-
disabled: disabled || option.disabled,
|
|
48
|
-
tabIndex: current !== option.value && (entries.some((entry)=>entry.value === current && !entry.disabled) || option.value !== first) ? -1 : 0,
|
|
49
|
-
id: `${id}-${index}`,
|
|
50
|
-
onClick: ()=>{
|
|
51
|
-
setCurrent(option.value);
|
|
52
|
-
onChange?.(option.value);
|
|
53
|
-
},
|
|
54
|
-
onKeyDown: (event)=>{
|
|
55
|
-
const available = entries.filter((entry)=>!entry.disabled);
|
|
56
|
-
const position = available.findIndex((entry)=>entry.value === option.value);
|
|
57
|
-
const next = 'Home' === event.key ? available[0] : 'End' === event.key ? available.at(-1) : [
|
|
58
|
-
'ArrowLeft',
|
|
59
|
-
'ArrowUp',
|
|
60
|
-
'ArrowRight',
|
|
61
|
-
'ArrowDown'
|
|
62
|
-
].includes(event.key) ? available[(position + ('ArrowUp' === event.key || event.key === ('rtl' === direction ? 'ArrowRight' : 'ArrowLeft') ? -1 : 1) + available.length) % available.length] : void 0;
|
|
63
|
-
if (!next || disabled) return;
|
|
64
|
-
event.preventDefault();
|
|
65
|
-
setCurrent(next.value);
|
|
66
|
-
onChange?.(next.value);
|
|
67
|
-
document.getElementById(`${id}-${entries.findIndex((entry)=>entry.value === next.value)}`)?.focus();
|
|
68
|
-
},
|
|
69
|
-
children: [
|
|
70
|
-
option.icon && /*#__PURE__*/ jsx("span", {
|
|
71
|
-
"aria-hidden": "true",
|
|
72
|
-
children: option.icon
|
|
73
|
-
}),
|
|
74
|
-
option.label
|
|
75
|
-
]
|
|
76
|
-
}, option.value)),
|
|
77
|
-
name && /*#__PURE__*/ jsx(FormValue, {
|
|
78
|
-
value: current,
|
|
79
|
-
name: name,
|
|
80
|
-
form: form,
|
|
81
|
-
disabled: disabled,
|
|
82
|
-
triggerRef: trigger
|
|
83
|
-
})
|
|
84
|
-
]
|
|
85
|
-
});
|
|
86
|
-
});
|
|
87
|
-
export { segmented_Segmented as Segmented };
|
|
88
|
-
|
|
89
|
-
//# sourceMappingURL=segmented.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segmented/segmented.js","sources":["../../../../../src/segmented/segmented.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes, type ReactNode, useId, useRef } from 'react';\nimport { useComponentProps } from '../config-provider/component-defaults';\nimport { useLeafConfig } from '../config-provider/context';\nimport { useFormField } from '../form/form';\nimport { classes } from '../shared/classes';\nimport { FormValue, useFieldValue, useMergedRef } from '../shared/field';\nimport type { ControlSize } from '../shared/types';\nimport { useMovingIndicator } from '../tabs/use-moving-indicator';\nexport interface SegmentedOption {\n value: string;\n label: ReactNode;\n icon?: ReactNode;\n disabled?: boolean;\n}\nexport interface SegmentedProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {\n options: readonly (string | SegmentedOption)[];\n value?: string;\n defaultValue?: string;\n onChange?: (value: string) => void;\n disabled?: boolean;\n size?: ControlSize;\n block?: boolean;\n name?: string;\n form?: string;\n}\nexport const Segmented = forwardRef<HTMLDivElement, SegmentedProps>(function Segmented(\n rawProps: SegmentedProps,\n ref,\n) {\n const {\n options,\n value,\n defaultValue,\n onChange,\n disabled: disabledProp,\n size = 'md',\n block = false,\n name,\n form,\n className,\n ...props\n } = useComponentProps('Segmented', rawProps);\n const field = useFormField();\n const { direction } = useLeafConfig();\n const root = useRef<HTMLDivElement>(null);\n const marker = useRef<HTMLSpanElement>(null);\n const merged = useMergedRef(root, ref);\n const disabled = disabledProp || field?.disabled;\n const entries = options.map((option) =>\n typeof option === 'string' ? { label: option, value: option } : option,\n );\n const first = entries.find((option) => !option.disabled)?.value ?? '';\n const trigger = useRef<HTMLButtonElement>(null);\n const [current, setCurrent] = useFieldValue(value, defaultValue ?? first, trigger, form);\n useMovingIndicator(root, marker, '[aria-checked=\"true\"]', `${current}-${direction}`);\n const id = useId();\n return (\n <div\n {...props}\n ref={merged}\n role=\"radiogroup\"\n aria-disabled={disabled || undefined}\n className={classes(\n 'leaf-segmented',\n `leaf-segmented--${size}`,\n block && 'leaf-segmented--block',\n className,\n )}\n >\n <span ref={marker} className=\"leaf-segmented__indicator\" aria-hidden=\"true\" />\n {entries.map((option, index) => (\n // biome-ignore lint/a11y/useSemanticElements: Segmented buttons implement roving focus and radio-group selection with a shared form proxy.\n <button\n key={option.value}\n type=\"button\"\n ref={index === 0 ? trigger : undefined}\n role=\"radio\"\n data-leaf-indicator-item=\"\"\n aria-checked={current === option.value}\n disabled={disabled || option.disabled}\n tabIndex={\n current === option.value ||\n (!entries.some((entry) => entry.value === current && !entry.disabled) &&\n option.value === first)\n ? 0\n : -1\n }\n id={`${id}-${index}`}\n onClick={() => {\n setCurrent(option.value);\n onChange?.(option.value);\n }}\n onKeyDown={(event) => {\n const available = entries.filter((entry) => !entry.disabled);\n const position = available.findIndex((entry) => entry.value === option.value);\n const next =\n event.key === 'Home'\n ? available[0]\n : event.key === 'End'\n ? available.at(-1)\n : ['ArrowLeft', 'ArrowUp', 'ArrowRight', 'ArrowDown'].includes(event.key)\n ? available[\n (position +\n (event.key === 'ArrowUp' ||\n event.key === (direction === 'rtl' ? 'ArrowRight' : 'ArrowLeft')\n ? -1\n : 1) +\n available.length) %\n available.length\n ]\n : undefined;\n if (!next || disabled) return;\n event.preventDefault();\n setCurrent(next.value);\n onChange?.(next.value);\n document\n .getElementById(`${id}-${entries.findIndex((entry) => entry.value === next.value)}`)\n ?.focus();\n }}\n >\n {option.icon && <span aria-hidden=\"true\">{option.icon}</span>}\n {option.label}\n </button>\n ))}\n {name && (\n <FormValue\n value={current}\n name={name}\n form={form}\n disabled={disabled}\n triggerRef={trigger}\n />\n )}\n </div>\n );\n});\n"],"names":["Segmented","forwardRef","rawProps","ref","options","value","defaultValue","onChange","disabledProp","size","block","name","form","className","props","useComponentProps","field","useFormField","direction","useLeafConfig","root","useRef","marker","merged","useMergedRef","disabled","entries","option","first","trigger","current","setCurrent","useFieldValue","useMovingIndicator","id","useId","undefined","classes","index","entry","event","available","position","next","document","FormValue"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/segmented/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { type HTMLAttributes, type ReactNode } from 'react';
|
|
2
|
-
import type { ControlSize } from '../shared/types.js';
|
|
3
|
-
export interface SegmentedOption {
|
|
4
|
-
value: string;
|
|
5
|
-
label: ReactNode;
|
|
6
|
-
icon?: ReactNode;
|
|
7
|
-
disabled?: boolean;
|
|
8
|
-
}
|
|
9
|
-
export interface SegmentedProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
|
|
10
|
-
options: readonly (string | SegmentedOption)[];
|
|
11
|
-
value?: string;
|
|
12
|
-
defaultValue?: string;
|
|
13
|
-
onChange?: (value: string) => void;
|
|
14
|
-
disabled?: boolean;
|
|
15
|
-
size?: ControlSize;
|
|
16
|
-
block?: boolean;
|
|
17
|
-
name?: string;
|
|
18
|
-
form?: string;
|
|
19
|
-
}
|
|
20
|
-
export declare const Segmented: import("react").ForwardRefExoticComponent<SegmentedProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
21
|
-
//# sourceMappingURL=segmented.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"segmented.d.ts","sourceRoot":"","sources":["../../../src/segmented/segmented.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,KAAK,SAAS,EAAiB,MAAM,OAAO,CAAC;AAMvF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AACD,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IACtF,OAAO,EAAE,SAAS,CAAC,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,eAAO,MAAM,SAAS,2GA8GpB,CAAC"}
|