@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
|
@@ -58,7 +58,7 @@ function resolvePath(options, values) {
|
|
|
58
58
|
return path;
|
|
59
59
|
}
|
|
60
60
|
const cascader_Cascader = /*#__PURE__*/ (0, external_react_namespaceObject.forwardRef)(function(rawProps, forwardedRef) {
|
|
61
|
-
const { options: suppliedOptions, value, defaultValue = emptyPath, size = 'md', status: statusProp, placeholder, name, form, required: requiredProp, allowClear = true, disabled: disabledProp, className, style, onChange, onOpenChange, open: controlledOpen, defaultOpen, multiple = false, readOnly, showSearch, changeOnSelect, displayRender, optionRender, loadData, onLoadError, cacheKey, tagWrap = true, maxTagCount, popupPlacement, popupClassName, popupStyle, popupRender, getPopupContainer, onClick, onKeyDown, 'aria-label': ariaLabel, id: idProp, 'aria-describedby': ariaDescribedByProp, 'aria-invalid': ariaInvalid, ...props } = (0, component_defaults_cjs_namespaceObject.useComponentProps)('Cascader', rawProps);
|
|
61
|
+
const { options: suppliedOptions, value, defaultValue = emptyPath, size = 'md', status: statusProp, placeholder, name, form, required: requiredProp, allowClear = true, disabled: disabledProp, className, style, onChange, onOpenChange, open: controlledOpen, defaultOpen, multiple = false, readOnly, showSearch, changeOnSelect, displayRender, optionRender, loadData, onLoadError, cacheKey, tagWrap = true, maxTagCount, popupWidth = 'trigger', popupMaxWidth, popupPlacement, popupClassName, popupStyle, popupRender, getPopupContainer, onClick, onKeyDown, 'aria-label': ariaLabel, id: idProp, 'aria-describedby': ariaDescribedByProp, 'aria-invalid': ariaInvalid, ...props } = (0, component_defaults_cjs_namespaceObject.useComponentProps)('Cascader', rawProps);
|
|
62
62
|
const { messages, direction } = (0, context_cjs_namespaceObject.useLeafConfig)();
|
|
63
63
|
const format = (0, use_formatted_text_cjs_namespaceObject.useFormattedText)();
|
|
64
64
|
const [loaded, setLoaded] = (0, external_react_namespaceObject.useState)(new Map());
|
|
@@ -101,6 +101,7 @@ const cascader_Cascader = /*#__PURE__*/ (0, external_react_namespaceObject.forwa
|
|
|
101
101
|
field?.descriptionId
|
|
102
102
|
].filter(Boolean).join(' ') || void 0;
|
|
103
103
|
const triggerRef = (0, external_react_namespaceObject.useRef)(null);
|
|
104
|
+
const rootRef = (0, external_react_namespaceObject.useRef)(null);
|
|
104
105
|
const panelRef = (0, external_react_namespaceObject.useRef)(null);
|
|
105
106
|
const ref = (0, field_cjs_namespaceObject.useMergedRef)(triggerRef, forwardedRef);
|
|
106
107
|
const panelId = `${(0, external_react_namespaceObject.useId)()}-cascader`;
|
|
@@ -206,8 +207,10 @@ const cascader_Cascader = /*#__PURE__*/ (0, external_react_namespaceObject.forwa
|
|
|
206
207
|
}
|
|
207
208
|
};
|
|
208
209
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
|
|
210
|
+
ref: rootRef,
|
|
209
211
|
className: (0, classes_cjs_namespaceObject.classes)('leaf-cascader', `leaf-cascader--${size}`, multiple && 'leaf-cascader--multiple', className),
|
|
210
212
|
style: style,
|
|
213
|
+
dir: props.dir ?? direction,
|
|
211
214
|
"data-status": status,
|
|
212
215
|
"data-disabled": disabled ? '' : void 0,
|
|
213
216
|
"data-open": open ? '' : void 0,
|
|
@@ -215,6 +218,7 @@ const cascader_Cascader = /*#__PURE__*/ (0, external_react_namespaceObject.forwa
|
|
|
215
218
|
children: [
|
|
216
219
|
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("button", {
|
|
217
220
|
...props,
|
|
221
|
+
dir: props.dir ?? direction,
|
|
218
222
|
ref: ref,
|
|
219
223
|
type: "button",
|
|
220
224
|
form: form,
|
|
@@ -298,8 +302,11 @@ const cascader_Cascader = /*#__PURE__*/ (0, external_react_namespaceObject.forwa
|
|
|
298
302
|
render: popupRender,
|
|
299
303
|
style: popupStyle,
|
|
300
304
|
open: open,
|
|
301
|
-
triggerRef:
|
|
305
|
+
triggerRef: rootRef,
|
|
302
306
|
panelRef: panelRef,
|
|
307
|
+
matchWidth: 'trigger' === popupWidth,
|
|
308
|
+
width: 'trigger' === popupWidth ? void 0 : 'auto' === popupWidth ? 'max-content' : popupWidth,
|
|
309
|
+
maxWidth: popupMaxWidth,
|
|
303
310
|
id: panelId,
|
|
304
311
|
className: (0, classes_cjs_namespaceObject.classes)('leaf-floating leaf-cascader__panel', popupClassName),
|
|
305
312
|
role: "dialog",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cascader/cascader.cjs","sources":["webpack://webpack/runtime/define_property_getters","webpack://webpack/runtime/has_own_property","webpack://webpack/runtime/make_namespace_object","../../../src/cascader/cascader.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 { Check, ChevronDown, ChevronRight, LoaderCircle } from 'lucide-react';\nimport {\n type ButtonHTMLAttributes,\n forwardRef,\n type ReactNode,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useComponentProps } from '../config-provider/component-defaults';\nimport { useLeafConfig } from '../config-provider/context';\nimport { FieldScope, useFormField } from '../form/form';\nimport { InputControl } from '../input/input';\nimport { ScrollbarControl as Scrollbar } from '../scrollbar/scrollbar';\nimport { classes } from '../shared/classes';\nimport { ClearButton } from '../shared/clear-button';\nimport { FormValue, useFieldValue, useMergedRef } from '../shared/field';\nimport {\n FloatingPanel,\n type PopupOptions,\n useFloatingDismiss,\n usePopupState,\n} from '../shared/floating';\nimport { SelectionContent } from '../shared/selection-content';\nimport type { ControlSize, ControlStatus } from '../shared/types';\nimport { useFormattedText } from '../shared/use-formatted-text';\n\nexport interface CascaderOption {\n value: string;\n label: ReactNode;\n searchLabel?: string;\n isLeaf?: boolean;\n disabled?: boolean;\n children?: readonly CascaderOption[];\n}\n\ninterface CascaderBaseProps\n extends Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n 'type' | 'value' | 'defaultValue' | 'onChange' | 'children'\n >,\n PopupOptions {\n options: readonly CascaderOption[];\n size?: ControlSize;\n status?: ControlStatus;\n placeholder?: string;\n name?: string;\n required?: boolean;\n allowClear?: boolean;\n onOpenChange?: (open: boolean) => void;\n open?: boolean;\n defaultOpen?: boolean;\n readOnly?: boolean;\n showSearch?: boolean;\n changeOnSelect?: boolean;\n displayRender?: (labels: ReactNode[], selectedOptions: CascaderOption[]) => ReactNode;\n optionRender?: (option: CascaderOption) => ReactNode;\n loadData?: (option: CascaderOption, signal: AbortSignal) => Promise<readonly CascaderOption[]>;\n onLoadError?: (error: unknown, option: CascaderOption) => void;\n cacheKey?: string | number;\n tagWrap?: boolean;\n maxTagCount?: number | 'responsive';\n}\nexport type CascaderProps = CascaderBaseProps &\n (\n | {\n multiple?: false;\n value?: readonly string[];\n defaultValue?: readonly string[];\n onChange?: (value: string[], selectedOptions: CascaderOption[]) => void;\n }\n | {\n multiple: true;\n value?: readonly (readonly string[])[];\n defaultValue?: readonly (readonly string[])[];\n onChange?: (value: string[][], selectedOptions: CascaderOption[][]) => void;\n }\n );\n\nconst emptyPath: readonly string[] = [];\nfunction resolvePath(options: readonly CascaderOption[], values: readonly string[]) {\n const path: CascaderOption[] = [];\n let level = options;\n for (const value of values) {\n const option = level.find((item) => item.value === value);\n if (!option) break;\n path.push(option);\n level = option.children ?? [];\n }\n return path;\n}\n\nexport const Cascader = forwardRef<HTMLButtonElement, CascaderProps>(function Cascader(\n rawProps: CascaderProps,\n forwardedRef,\n) {\n const {\n options: suppliedOptions,\n value,\n defaultValue = emptyPath,\n size = 'md',\n status: statusProp,\n placeholder,\n name,\n form,\n required: requiredProp,\n allowClear = true,\n disabled: disabledProp,\n className,\n style,\n onChange,\n onOpenChange,\n open: controlledOpen,\n defaultOpen,\n multiple = false,\n readOnly,\n showSearch,\n changeOnSelect,\n displayRender,\n optionRender,\n loadData,\n onLoadError,\n cacheKey,\n tagWrap = true,\n maxTagCount,\n popupPlacement,\n popupClassName,\n popupStyle,\n popupRender,\n getPopupContainer,\n onClick,\n onKeyDown,\n 'aria-label': ariaLabel,\n id: idProp,\n 'aria-describedby': ariaDescribedByProp,\n 'aria-invalid': ariaInvalid,\n ...props\n } = useComponentProps('Cascader', rawProps);\n const { messages, direction } = useLeafConfig();\n const format = useFormattedText();\n const [loaded, setLoaded] = useState(new Map<string, readonly CascaderOption[]>());\n const [loading, setLoading] = useState(new Set<string>());\n const requests = useRef(new Map<string, AbortController>());\n // biome-ignore lint/correctness/useExhaustiveDependencies: Invalidate lazy children and abort requests when the source or explicit cache version changes.\n useEffect(() => {\n for (const request of requests.current.values()) request.abort();\n requests.current.clear();\n setLoaded(new Map());\n setLoading(new Set());\n return () => {\n for (const request of requests.current.values()) request.abort();\n };\n }, [suppliedOptions, loadData, cacheKey]);\n const options = useMemo(() => {\n const merge = (entries: readonly CascaderOption[]): CascaderOption[] =>\n entries.map((option) => {\n const children = option.children ?? loaded.get(option.value);\n return children\n ? { ...option, children: merge(children), isLeaf: !children.length }\n : option;\n });\n return merge(suppliedOptions);\n }, [suppliedOptions, loaded]);\n const field = useFormField();\n const disabled = disabledProp || field?.disabled;\n const required = requiredProp ?? field?.required;\n const status = statusProp ?? (field?.error ? 'error' : undefined);\n const id = idProp ?? field?.id;\n const ariaDescribedBy =\n [ariaDescribedByProp, field?.descriptionId].filter(Boolean).join(' ') || undefined;\n const triggerRef = useRef<HTMLButtonElement>(null);\n const panelRef = useRef<HTMLDivElement>(null);\n const ref = useMergedRef(triggerRef, forwardedRef);\n const panelId = `${useId()}-cascader`;\n const [selectedValue, setSelectedValue] = useFieldValue<\n readonly string[] | readonly (readonly string[])[]\n >(value, defaultValue, triggerRef, form);\n const paths = multiple\n ? (selectedValue as readonly (readonly string[])[])\n : selectedValue.length\n ? [selectedValue as readonly string[]]\n : [];\n const [draft, setDraft] = useState<readonly string[]>(paths[0] ?? []);\n const [query, setQuery] = useState('');\n const [open, setOpen] = usePopupState(\n disabled || readOnly,\n onOpenChange,\n controlledOpen,\n defaultOpen,\n );\n const [focusLevel, setFocusLevel] = useState<number | null>(null);\n const selectedPaths = paths.map((path) => resolvePath(options, path));\n const caption = (path: CascaderOption[]) =>\n displayRender?.(\n path.map((option) => option.label),\n path,\n ) ??\n path\n .map(\n (option) =>\n option.searchLabel ?? (typeof option.label === 'string' ? option.label : option.value),\n )\n .join(' / ');\n const searchResults: CascaderOption[][] = [];\n const visit = (entries: readonly CascaderOption[], path: CascaderOption[]) => {\n for (const entry of entries) {\n const next = [...path, entry];\n if (entry.disabled) continue;\n if (changeOnSelect || (!entry.children?.length && (!loadData || entry.isLeaf !== false))) {\n if (\n next\n .map(\n (option) =>\n option.searchLabel ??\n (typeof option.label === 'string' ? option.label : option.value),\n )\n .join(' / ')\n .toLocaleLowerCase()\n .includes(query.toLocaleLowerCase())\n )\n searchResults.push(next);\n }\n if (entry.children) visit(entry.children, next);\n }\n };\n if (query) visit(options, []);\n const draftOptions = resolvePath(options, draft);\n const levels: (readonly CascaderOption[])[] = [options];\n for (const option of draftOptions) if (option.children?.length) levels.push(option.children);\n const close = () => {\n setOpen(false);\n };\n useFloatingDismiss(open, close, triggerRef, panelRef);\n useEffect(() => {\n if (open && focusLevel !== null) {\n const column = panelRef.current?.querySelector<HTMLElement>(`[data-level='${focusLevel}']`);\n const option =\n column?.querySelector<HTMLButtonElement>('button[aria-selected=\"true\"]:not(:disabled)') ??\n column?.querySelector<HTMLButtonElement>('button:not(:disabled)');\n option?.focus();\n option?.scrollIntoView?.({ block: 'nearest' });\n setFocusLevel(null);\n }\n }, [open, focusLevel]);\n\n const openPanel = () => {\n if (disabled) return;\n setDraft(paths[0] ?? []);\n setFocusLevel(0);\n setOpen(true);\n };\n const choose = (option: CascaderOption, level: number) => {\n if (option.disabled || disabled || readOnly) return;\n const next = [...draft.slice(0, level), option.value];\n setDraft(next);\n if (\n loadData &&\n option.isLeaf === false &&\n option.children === undefined &&\n !requests.current.has(option.value)\n ) {\n const request = new AbortController();\n requests.current.set(option.value, request);\n setLoading((previous) => new Set(previous).add(option.value));\n void loadData(option, request.signal)\n .then((children) => {\n if (!request.signal.aborted)\n setLoaded((previous) => new Map(previous).set(option.value, children));\n })\n .catch((error) => {\n if (!request.signal.aborted) onLoadError?.(error, option);\n })\n .finally(() => {\n if (requests.current.get(option.value) === request) {\n requests.current.delete(option.value);\n setLoading((previous) => {\n const next = new Set(previous);\n next.delete(option.value);\n return next;\n });\n }\n });\n return;\n }\n if (changeOnSelect || (!option.children?.length && option.isLeaf !== false))\n commit(next, !option.children?.length);\n };\n const commit = (path: string[], leaf = true) => {\n if (disabled || readOnly) return;\n const next = multiple\n ? paths.some((current) => JSON.stringify(current) === JSON.stringify(path))\n ? paths\n .filter((current) => JSON.stringify(current) !== JSON.stringify(path))\n .map((current) => [...current])\n : [...paths.map((current) => [...current]), path]\n : path;\n setSelectedValue(next);\n (\n onChange as\n | ((value: string[] | string[][], options: CascaderOption[] | CascaderOption[][]) => void)\n | undefined\n )?.(\n next,\n multiple\n ? (next as string[][]).map((path) => resolvePath(options, path))\n : resolvePath(options, path),\n );\n if (!multiple && leaf) {\n close();\n triggerRef.current?.focus();\n }\n };\n\n return (\n <div\n className={classes(\n 'leaf-cascader',\n `leaf-cascader--${size}`,\n multiple && 'leaf-cascader--multiple',\n className,\n )}\n style={style}\n data-status={status}\n data-disabled={disabled ? '' : undefined}\n data-open={open ? '' : undefined}\n data-clearable={allowClear && selectedValue.length && !disabled && !readOnly ? '' : undefined}\n >\n <button\n {...props}\n ref={ref}\n type=\"button\"\n form={form}\n className=\"leaf-cascader__trigger\"\n disabled={disabled}\n role=\"combobox\"\n aria-expanded={open}\n aria-haspopup=\"dialog\"\n aria-controls={panelId}\n aria-label={ariaLabel}\n id={id}\n aria-describedby={ariaDescribedBy}\n aria-invalid={status === 'error' ? true : ariaInvalid}\n aria-required={required || undefined}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n if (open) close();\n else openPanel();\n }\n }}\n onKeyDown={(event) => {\n onKeyDown?.(event);\n if (event.defaultPrevented) return;\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n if (!open) openPanel();\n }\n if (event.key === 'Escape') {\n event.preventDefault();\n event.stopPropagation();\n close();\n }\n }}\n >\n {multiple && selectedPaths.length ? (\n <SelectionContent\n className=\"leaf-cascader__value\"\n tagClassName=\"leaf-cascader__tag\"\n tagWrap={tagWrap}\n maxTagCount={maxTagCount}\n items={selectedPaths.map((path, index) => ({\n key: JSON.stringify(paths[index]),\n label: caption(path),\n text: path\n .map(\n (option) =>\n option.searchLabel ??\n (typeof option.label === 'string' ? option.label : option.value),\n )\n .join(' / '),\n }))}\n />\n ) : (\n <span\n className={classes(\n 'leaf-cascader__value',\n !selectedPaths.length && 'leaf-cascader__placeholder',\n )}\n >\n {selectedPaths.length\n ? selectedPaths.map((path, index) => (\n <span key={paths[index]?.join('/')}>\n {index > 0 ? '、' : ''}\n {caption(path)}\n </span>\n ))\n : placeholder || messages.cascader.placeholder}\n </span>\n )}\n <ChevronDown size={16} aria-hidden=\"true\" />\n </button>\n {allowClear && selectedValue.length > 0 && !disabled && !readOnly && (\n <ClearButton\n label={messages.cascader.clear}\n beforeArrow\n onClear={() => {\n setSelectedValue([]);\n setDraft([]);\n (onChange as ((value: [], options: []) => void) | undefined)?.([], []);\n close();\n triggerRef.current?.focus();\n }}\n />\n )}\n <FormValue\n name={name}\n form={form}\n required={required}\n disabled={disabled}\n value={selectedValue.length ? JSON.stringify(selectedValue) : ''}\n triggerRef={triggerRef}\n />\n <FloatingPanel\n placement={popupPlacement}\n container={getPopupContainer}\n render={popupRender}\n style={popupStyle}\n open={open}\n triggerRef={triggerRef}\n panelRef={panelRef}\n id={panelId}\n className={classes('leaf-floating leaf-cascader__panel', popupClassName)}\n role=\"dialog\"\n aria-label={ariaLabel || messages.cascader.placeholder}\n >\n {showSearch && (\n <FieldScope>\n <div className=\"leaf-cascader__search\">\n <InputControl\n allowClear\n aria-label={messages.common.search}\n value={query}\n onChange={(event) => setQuery(event.target.value)}\n />\n </div>\n </FieldScope>\n )}\n {query ? (\n <Scrollbar\n role=\"listbox\"\n aria-label={messages.common.search}\n className=\"leaf-cascader__column\"\n orientation=\"vertical\"\n maxHeight={256}\n >\n {searchResults.length ? (\n searchResults.map((path) => (\n <button\n type=\"button\"\n role=\"option\"\n aria-selected={paths.some(\n (current) =>\n JSON.stringify(current) ===\n JSON.stringify(path.map((option) => option.value)),\n )}\n className=\"leaf-floating__option\"\n key={path.map((option) => option.value).join('/')}\n onClick={() => commit(path.map((option) => option.value))}\n >\n {caption(path)}\n </button>\n ))\n ) : (\n <div className=\"leaf-floating__empty\">{messages.cascader.empty}</div>\n )}\n </Scrollbar>\n ) : (\n <div className=\"leaf-cascader__columns\">\n {levels.map((level, depth) => (\n <Scrollbar\n key={depth === 0 ? 'root' : draft[depth - 1]}\n className=\"leaf-cascader__column\"\n orientation=\"vertical\"\n maxHeight={256}\n data-level={depth}\n role=\"listbox\"\n aria-label={format('cascader.level', { level: depth + 1 })}\n >\n {level.length ? (\n level.map((option) => (\n <button\n key={option.value}\n type=\"button\"\n role=\"option\"\n className=\"leaf-floating__option\"\n aria-selected={draft[depth] === option.value}\n disabled={option.disabled}\n tabIndex={\n option.value ===\n (draft[depth] ?? level.find((item) => !item.disabled)?.value)\n ? 0\n : -1\n }\n onClick={() => {\n choose(option, depth);\n if (option.children?.length) setFocusLevel(depth + 1);\n }}\n onKeyDown={(event) => {\n if (\n event.key === (direction === 'rtl' ? 'ArrowLeft' : 'ArrowRight') &&\n (option.children?.length || option.isLeaf === false)\n ) {\n event.preventDefault();\n choose(option, depth);\n setFocusLevel(depth + 1);\n } else if (\n event.key === (direction === 'rtl' ? 'ArrowRight' : 'ArrowLeft') &&\n depth > 0\n ) {\n event.preventDefault();\n setFocusLevel(depth - 1);\n } else if (['ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n event.preventDefault();\n const items = Array.from(\n event.currentTarget.parentElement?.querySelectorAll<HTMLButtonElement>(\n 'button:not(:disabled)',\n ) ?? [],\n );\n const index = items.indexOf(event.currentTarget);\n const next =\n event.key === 'Home'\n ? 0\n : event.key === 'End'\n ? items.length - 1\n : (index + (event.key === 'ArrowDown' ? 1 : -1) + items.length) %\n items.length;\n items[next]?.focus();\n items[next]?.scrollIntoView?.({ block: 'nearest' });\n }\n }}\n >\n <span>{optionRender?.(option) ?? option.label}</span>\n {loading.has(option.value) ? (\n <LoaderCircle size={14} className=\"leaf-select__spinner\" />\n ) : option.children?.length || option.isLeaf === false ? (\n <ChevronRight size={14} aria-hidden=\"true\" />\n ) : (\n (multiple\n ? paths.some(\n (path) =>\n JSON.stringify(path) ===\n JSON.stringify([...draft.slice(0, depth), option.value]),\n )\n : draft[depth] === option.value) && (\n <Check size={14} className=\"leaf-cascader__check\" aria-hidden=\"true\" />\n )\n )}\n </button>\n ))\n ) : (\n <div className=\"leaf-floating__empty\">{messages.cascader.empty}</div>\n )}\n </Scrollbar>\n ))}\n </div>\n )}\n </FloatingPanel>\n </div>\n );\n});\nCascader.displayName = 'Cascader';\n"],"names":["__webpack_require__","getters","values","define","defs","kind","key","Object","obj","prop","Symbol","emptyPath","resolvePath","options","path","level","value","option","item","Cascader","forwardRef","rawProps","forwardedRef","suppliedOptions","defaultValue","size","statusProp","placeholder","name","form","requiredProp","allowClear","disabledProp","className","style","onChange","onOpenChange","controlledOpen","defaultOpen","multiple","readOnly","showSearch","changeOnSelect","displayRender","optionRender","loadData","onLoadError","cacheKey","tagWrap","maxTagCount","popupPlacement","popupClassName","popupStyle","popupRender","getPopupContainer","onClick","onKeyDown","ariaLabel","idProp","ariaDescribedByProp","ariaInvalid","props","useComponentProps","messages","direction","useLeafConfig","format","useFormattedText","loaded","setLoaded","useState","Map","loading","setLoading","Set","requests","useRef","useEffect","request","useMemo","merge","entries","children","field","useFormField","disabled","required","status","undefined","id","ariaDescribedBy","Boolean","triggerRef","panelRef","ref","useMergedRef","panelId","useId","selectedValue","setSelectedValue","useFieldValue","paths","draft","setDraft","query","setQuery","open","setOpen","usePopupState","focusLevel","setFocusLevel","selectedPaths","caption","searchResults","visit","entry","next","draftOptions","levels","close","useFloatingDismiss","column","openPanel","choose","AbortController","previous","error","commit","leaf","current","JSON","classes","event","SelectionContent","index","ChevronDown","ClearButton","FormValue","FloatingPanel","FieldScope","InputControl","Scrollbar","depth","items","Array","LoaderCircle","ChevronRight","Check"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cascader/cascader.cjs","sources":["webpack://webpack/runtime/define_property_getters","webpack://webpack/runtime/has_own_property","webpack://webpack/runtime/make_namespace_object","../../../src/cascader/cascader.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 { Check, ChevronDown, ChevronRight, LoaderCircle } from 'lucide-react';\nimport {\n type ButtonHTMLAttributes,\n forwardRef,\n type ReactNode,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { useComponentProps } from '../config-provider/component-defaults';\nimport { useLeafConfig } from '../config-provider/context';\nimport { FieldScope, useFormField } from '../form/form';\nimport { InputControl } from '../input/input';\nimport { ScrollbarControl as Scrollbar } from '../scrollbar/scrollbar';\nimport { classes } from '../shared/classes';\nimport { ClearButton } from '../shared/clear-button';\nimport { FormValue, useFieldValue, useMergedRef } from '../shared/field';\nimport {\n FloatingPanel,\n type PopupOptions,\n useFloatingDismiss,\n usePopupState,\n} from '../shared/floating';\nimport { SelectionContent } from '../shared/selection-content';\nimport type { ControlSize, ControlStatus } from '../shared/types';\nimport { useFormattedText } from '../shared/use-formatted-text';\n\nexport interface CascaderOption {\n value: string;\n label: ReactNode;\n searchLabel?: string;\n isLeaf?: boolean;\n disabled?: boolean;\n children?: readonly CascaderOption[];\n}\n\ninterface CascaderBaseProps\n extends Omit<\n ButtonHTMLAttributes<HTMLButtonElement>,\n 'type' | 'value' | 'defaultValue' | 'onChange' | 'children'\n >,\n PopupOptions {\n options: readonly CascaderOption[];\n size?: ControlSize;\n status?: ControlStatus;\n placeholder?: string;\n name?: string;\n required?: boolean;\n allowClear?: boolean;\n onOpenChange?: (open: boolean) => void;\n open?: boolean;\n defaultOpen?: boolean;\n readOnly?: boolean;\n showSearch?: boolean;\n changeOnSelect?: boolean;\n displayRender?: (labels: ReactNode[], selectedOptions: CascaderOption[]) => ReactNode;\n optionRender?: (option: CascaderOption) => ReactNode;\n loadData?: (option: CascaderOption, signal: AbortSignal) => Promise<readonly CascaderOption[]>;\n onLoadError?: (error: unknown, option: CascaderOption) => void;\n cacheKey?: string | number;\n tagWrap?: boolean;\n maxTagCount?: number | 'responsive';\n popupWidth?: number | string;\n popupMaxWidth?: number | string;\n}\nexport type CascaderProps = CascaderBaseProps &\n (\n | {\n multiple?: false;\n value?: readonly string[];\n defaultValue?: readonly string[];\n onChange?: (value: string[], selectedOptions: CascaderOption[]) => void;\n }\n | {\n multiple: true;\n value?: readonly (readonly string[])[];\n defaultValue?: readonly (readonly string[])[];\n onChange?: (value: string[][], selectedOptions: CascaderOption[][]) => void;\n }\n );\n\nconst emptyPath: readonly string[] = [];\nfunction resolvePath(options: readonly CascaderOption[], values: readonly string[]) {\n const path: CascaderOption[] = [];\n let level = options;\n for (const value of values) {\n const option = level.find((item) => item.value === value);\n if (!option) break;\n path.push(option);\n level = option.children ?? [];\n }\n return path;\n}\n\nexport const Cascader = forwardRef<HTMLButtonElement, CascaderProps>(function Cascader(\n rawProps: CascaderProps,\n forwardedRef,\n) {\n const {\n options: suppliedOptions,\n value,\n defaultValue = emptyPath,\n size = 'md',\n status: statusProp,\n placeholder,\n name,\n form,\n required: requiredProp,\n allowClear = true,\n disabled: disabledProp,\n className,\n style,\n onChange,\n onOpenChange,\n open: controlledOpen,\n defaultOpen,\n multiple = false,\n readOnly,\n showSearch,\n changeOnSelect,\n displayRender,\n optionRender,\n loadData,\n onLoadError,\n cacheKey,\n tagWrap = true,\n maxTagCount,\n popupWidth = 'trigger',\n popupMaxWidth,\n popupPlacement,\n popupClassName,\n popupStyle,\n popupRender,\n getPopupContainer,\n onClick,\n onKeyDown,\n 'aria-label': ariaLabel,\n id: idProp,\n 'aria-describedby': ariaDescribedByProp,\n 'aria-invalid': ariaInvalid,\n ...props\n } = useComponentProps('Cascader', rawProps);\n const { messages, direction } = useLeafConfig();\n const format = useFormattedText();\n const [loaded, setLoaded] = useState(new Map<string, readonly CascaderOption[]>());\n const [loading, setLoading] = useState(new Set<string>());\n const requests = useRef(new Map<string, AbortController>());\n // biome-ignore lint/correctness/useExhaustiveDependencies: Invalidate lazy children and abort requests when the source or explicit cache version changes.\n useEffect(() => {\n for (const request of requests.current.values()) request.abort();\n requests.current.clear();\n setLoaded(new Map());\n setLoading(new Set());\n return () => {\n for (const request of requests.current.values()) request.abort();\n };\n }, [suppliedOptions, loadData, cacheKey]);\n const options = useMemo(() => {\n const merge = (entries: readonly CascaderOption[]): CascaderOption[] =>\n entries.map((option) => {\n const children = option.children ?? loaded.get(option.value);\n return children\n ? { ...option, children: merge(children), isLeaf: !children.length }\n : option;\n });\n return merge(suppliedOptions);\n }, [suppliedOptions, loaded]);\n const field = useFormField();\n const disabled = disabledProp || field?.disabled;\n const required = requiredProp ?? field?.required;\n const status = statusProp ?? (field?.error ? 'error' : undefined);\n const id = idProp ?? field?.id;\n const ariaDescribedBy =\n [ariaDescribedByProp, field?.descriptionId].filter(Boolean).join(' ') || undefined;\n const triggerRef = useRef<HTMLButtonElement>(null);\n const rootRef = useRef<HTMLDivElement>(null);\n const panelRef = useRef<HTMLDivElement>(null);\n const ref = useMergedRef(triggerRef, forwardedRef);\n const panelId = `${useId()}-cascader`;\n const [selectedValue, setSelectedValue] = useFieldValue<\n readonly string[] | readonly (readonly string[])[]\n >(value, defaultValue, triggerRef, form);\n const paths = multiple\n ? (selectedValue as readonly (readonly string[])[])\n : selectedValue.length\n ? [selectedValue as readonly string[]]\n : [];\n const [draft, setDraft] = useState<readonly string[]>(paths[0] ?? []);\n const [query, setQuery] = useState('');\n const [open, setOpen] = usePopupState(\n disabled || readOnly,\n onOpenChange,\n controlledOpen,\n defaultOpen,\n );\n const [focusLevel, setFocusLevel] = useState<number | null>(null);\n const selectedPaths = paths.map((path) => resolvePath(options, path));\n const caption = (path: CascaderOption[]) =>\n displayRender?.(\n path.map((option) => option.label),\n path,\n ) ??\n path\n .map(\n (option) =>\n option.searchLabel ?? (typeof option.label === 'string' ? option.label : option.value),\n )\n .join(' / ');\n const searchResults: CascaderOption[][] = [];\n const visit = (entries: readonly CascaderOption[], path: CascaderOption[]) => {\n for (const entry of entries) {\n const next = [...path, entry];\n if (entry.disabled) continue;\n if (changeOnSelect || (!entry.children?.length && (!loadData || entry.isLeaf !== false))) {\n if (\n next\n .map(\n (option) =>\n option.searchLabel ??\n (typeof option.label === 'string' ? option.label : option.value),\n )\n .join(' / ')\n .toLocaleLowerCase()\n .includes(query.toLocaleLowerCase())\n )\n searchResults.push(next);\n }\n if (entry.children) visit(entry.children, next);\n }\n };\n if (query) visit(options, []);\n const draftOptions = resolvePath(options, draft);\n const levels: (readonly CascaderOption[])[] = [options];\n for (const option of draftOptions) if (option.children?.length) levels.push(option.children);\n const close = () => {\n setOpen(false);\n };\n useFloatingDismiss(open, close, triggerRef, panelRef);\n useEffect(() => {\n if (open && focusLevel !== null) {\n const column = panelRef.current?.querySelector<HTMLElement>(`[data-level='${focusLevel}']`);\n const option =\n column?.querySelector<HTMLButtonElement>('button[aria-selected=\"true\"]:not(:disabled)') ??\n column?.querySelector<HTMLButtonElement>('button:not(:disabled)');\n option?.focus();\n option?.scrollIntoView?.({ block: 'nearest' });\n setFocusLevel(null);\n }\n }, [open, focusLevel]);\n\n const openPanel = () => {\n if (disabled) return;\n setDraft(paths[0] ?? []);\n setFocusLevel(0);\n setOpen(true);\n };\n const choose = (option: CascaderOption, level: number) => {\n if (option.disabled || disabled || readOnly) return;\n const next = [...draft.slice(0, level), option.value];\n setDraft(next);\n if (\n loadData &&\n option.isLeaf === false &&\n option.children === undefined &&\n !requests.current.has(option.value)\n ) {\n const request = new AbortController();\n requests.current.set(option.value, request);\n setLoading((previous) => new Set(previous).add(option.value));\n void loadData(option, request.signal)\n .then((children) => {\n if (!request.signal.aborted)\n setLoaded((previous) => new Map(previous).set(option.value, children));\n })\n .catch((error) => {\n if (!request.signal.aborted) onLoadError?.(error, option);\n })\n .finally(() => {\n if (requests.current.get(option.value) === request) {\n requests.current.delete(option.value);\n setLoading((previous) => {\n const next = new Set(previous);\n next.delete(option.value);\n return next;\n });\n }\n });\n return;\n }\n if (changeOnSelect || (!option.children?.length && option.isLeaf !== false))\n commit(next, !option.children?.length);\n };\n const commit = (path: string[], leaf = true) => {\n if (disabled || readOnly) return;\n const next = multiple\n ? paths.some((current) => JSON.stringify(current) === JSON.stringify(path))\n ? paths\n .filter((current) => JSON.stringify(current) !== JSON.stringify(path))\n .map((current) => [...current])\n : [...paths.map((current) => [...current]), path]\n : path;\n setSelectedValue(next);\n (\n onChange as\n | ((value: string[] | string[][], options: CascaderOption[] | CascaderOption[][]) => void)\n | undefined\n )?.(\n next,\n multiple\n ? (next as string[][]).map((path) => resolvePath(options, path))\n : resolvePath(options, path),\n );\n if (!multiple && leaf) {\n close();\n triggerRef.current?.focus();\n }\n };\n\n return (\n <div\n ref={rootRef}\n className={classes(\n 'leaf-cascader',\n `leaf-cascader--${size}`,\n multiple && 'leaf-cascader--multiple',\n className,\n )}\n style={style}\n dir={props.dir ?? direction}\n data-status={status}\n data-disabled={disabled ? '' : undefined}\n data-open={open ? '' : undefined}\n data-clearable={allowClear && selectedValue.length && !disabled && !readOnly ? '' : undefined}\n >\n <button\n {...props}\n dir={props.dir ?? direction}\n ref={ref}\n type=\"button\"\n form={form}\n className=\"leaf-cascader__trigger\"\n disabled={disabled}\n role=\"combobox\"\n aria-expanded={open}\n aria-haspopup=\"dialog\"\n aria-controls={panelId}\n aria-label={ariaLabel}\n id={id}\n aria-describedby={ariaDescribedBy}\n aria-invalid={status === 'error' ? true : ariaInvalid}\n aria-required={required || undefined}\n onClick={(event) => {\n onClick?.(event);\n if (!event.defaultPrevented) {\n if (open) close();\n else openPanel();\n }\n }}\n onKeyDown={(event) => {\n onKeyDown?.(event);\n if (event.defaultPrevented) return;\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n if (!open) openPanel();\n }\n if (event.key === 'Escape') {\n event.preventDefault();\n event.stopPropagation();\n close();\n }\n }}\n >\n {multiple && selectedPaths.length ? (\n <SelectionContent\n className=\"leaf-cascader__value\"\n tagClassName=\"leaf-cascader__tag\"\n tagWrap={tagWrap}\n maxTagCount={maxTagCount}\n items={selectedPaths.map((path, index) => ({\n key: JSON.stringify(paths[index]),\n label: caption(path),\n text: path\n .map(\n (option) =>\n option.searchLabel ??\n (typeof option.label === 'string' ? option.label : option.value),\n )\n .join(' / '),\n }))}\n />\n ) : (\n <span\n className={classes(\n 'leaf-cascader__value',\n !selectedPaths.length && 'leaf-cascader__placeholder',\n )}\n >\n {selectedPaths.length\n ? selectedPaths.map((path, index) => (\n <span key={paths[index]?.join('/')}>\n {index > 0 ? '、' : ''}\n {caption(path)}\n </span>\n ))\n : placeholder || messages.cascader.placeholder}\n </span>\n )}\n <ChevronDown size={16} aria-hidden=\"true\" />\n </button>\n {allowClear && selectedValue.length > 0 && !disabled && !readOnly && (\n <ClearButton\n label={messages.cascader.clear}\n beforeArrow\n onClear={() => {\n setSelectedValue([]);\n setDraft([]);\n (onChange as ((value: [], options: []) => void) | undefined)?.([], []);\n close();\n triggerRef.current?.focus();\n }}\n />\n )}\n <FormValue\n name={name}\n form={form}\n required={required}\n disabled={disabled}\n value={selectedValue.length ? JSON.stringify(selectedValue) : ''}\n triggerRef={triggerRef}\n />\n <FloatingPanel\n placement={popupPlacement}\n container={getPopupContainer}\n render={popupRender}\n style={popupStyle}\n open={open}\n triggerRef={rootRef}\n panelRef={panelRef}\n matchWidth={popupWidth === 'trigger'}\n width={\n popupWidth === 'trigger' ? undefined : popupWidth === 'auto' ? 'max-content' : popupWidth\n }\n maxWidth={popupMaxWidth}\n id={panelId}\n className={classes('leaf-floating leaf-cascader__panel', popupClassName)}\n role=\"dialog\"\n aria-label={ariaLabel || messages.cascader.placeholder}\n >\n {showSearch && (\n <FieldScope>\n <div className=\"leaf-cascader__search\">\n <InputControl\n allowClear\n aria-label={messages.common.search}\n value={query}\n onChange={(event) => setQuery(event.target.value)}\n />\n </div>\n </FieldScope>\n )}\n {query ? (\n <Scrollbar\n role=\"listbox\"\n aria-label={messages.common.search}\n className=\"leaf-cascader__column\"\n orientation=\"vertical\"\n maxHeight={256}\n >\n {searchResults.length ? (\n searchResults.map((path) => (\n <button\n type=\"button\"\n role=\"option\"\n aria-selected={paths.some(\n (current) =>\n JSON.stringify(current) ===\n JSON.stringify(path.map((option) => option.value)),\n )}\n className=\"leaf-floating__option\"\n key={path.map((option) => option.value).join('/')}\n onClick={() => commit(path.map((option) => option.value))}\n >\n {caption(path)}\n </button>\n ))\n ) : (\n <div className=\"leaf-floating__empty\">{messages.cascader.empty}</div>\n )}\n </Scrollbar>\n ) : (\n <div className=\"leaf-cascader__columns\">\n {levels.map((level, depth) => (\n <Scrollbar\n key={depth === 0 ? 'root' : draft[depth - 1]}\n className=\"leaf-cascader__column\"\n orientation=\"vertical\"\n maxHeight={256}\n data-level={depth}\n role=\"listbox\"\n aria-label={format('cascader.level', { level: depth + 1 })}\n >\n {level.length ? (\n level.map((option) => (\n <button\n key={option.value}\n type=\"button\"\n role=\"option\"\n className=\"leaf-floating__option\"\n aria-selected={draft[depth] === option.value}\n disabled={option.disabled}\n tabIndex={\n option.value ===\n (draft[depth] ?? level.find((item) => !item.disabled)?.value)\n ? 0\n : -1\n }\n onClick={() => {\n choose(option, depth);\n if (option.children?.length) setFocusLevel(depth + 1);\n }}\n onKeyDown={(event) => {\n if (\n event.key === (direction === 'rtl' ? 'ArrowLeft' : 'ArrowRight') &&\n (option.children?.length || option.isLeaf === false)\n ) {\n event.preventDefault();\n choose(option, depth);\n setFocusLevel(depth + 1);\n } else if (\n event.key === (direction === 'rtl' ? 'ArrowRight' : 'ArrowLeft') &&\n depth > 0\n ) {\n event.preventDefault();\n setFocusLevel(depth - 1);\n } else if (['ArrowUp', 'ArrowDown', 'Home', 'End'].includes(event.key)) {\n event.preventDefault();\n const items = Array.from(\n event.currentTarget.parentElement?.querySelectorAll<HTMLButtonElement>(\n 'button:not(:disabled)',\n ) ?? [],\n );\n const index = items.indexOf(event.currentTarget);\n const next =\n event.key === 'Home'\n ? 0\n : event.key === 'End'\n ? items.length - 1\n : (index + (event.key === 'ArrowDown' ? 1 : -1) + items.length) %\n items.length;\n items[next]?.focus();\n items[next]?.scrollIntoView?.({ block: 'nearest' });\n }\n }}\n >\n <span>{optionRender?.(option) ?? option.label}</span>\n {loading.has(option.value) ? (\n <LoaderCircle size={14} className=\"leaf-select__spinner\" />\n ) : option.children?.length || option.isLeaf === false ? (\n <ChevronRight size={14} aria-hidden=\"true\" />\n ) : (\n (multiple\n ? paths.some(\n (path) =>\n JSON.stringify(path) ===\n JSON.stringify([...draft.slice(0, depth), option.value]),\n )\n : draft[depth] === option.value) && (\n <Check size={14} className=\"leaf-cascader__check\" aria-hidden=\"true\" />\n )\n )}\n </button>\n ))\n ) : (\n <div className=\"leaf-floating__empty\">{messages.cascader.empty}</div>\n )}\n </Scrollbar>\n ))}\n </div>\n )}\n </FloatingPanel>\n </div>\n );\n});\nCascader.displayName = 'Cascader';\n"],"names":["__webpack_require__","getters","values","define","defs","kind","key","Object","obj","prop","Symbol","emptyPath","resolvePath","options","path","level","value","option","item","Cascader","forwardRef","rawProps","forwardedRef","suppliedOptions","defaultValue","size","statusProp","placeholder","name","form","requiredProp","allowClear","disabledProp","className","style","onChange","onOpenChange","controlledOpen","defaultOpen","multiple","readOnly","showSearch","changeOnSelect","displayRender","optionRender","loadData","onLoadError","cacheKey","tagWrap","maxTagCount","popupWidth","popupMaxWidth","popupPlacement","popupClassName","popupStyle","popupRender","getPopupContainer","onClick","onKeyDown","ariaLabel","idProp","ariaDescribedByProp","ariaInvalid","props","useComponentProps","messages","direction","useLeafConfig","format","useFormattedText","loaded","setLoaded","useState","Map","loading","setLoading","Set","requests","useRef","useEffect","request","useMemo","merge","entries","children","field","useFormField","disabled","required","status","undefined","id","ariaDescribedBy","Boolean","triggerRef","rootRef","panelRef","ref","useMergedRef","panelId","useId","selectedValue","setSelectedValue","useFieldValue","paths","draft","setDraft","query","setQuery","open","setOpen","usePopupState","focusLevel","setFocusLevel","selectedPaths","caption","searchResults","visit","entry","next","draftOptions","levels","close","useFloatingDismiss","column","openPanel","choose","AbortController","previous","error","commit","leaf","current","JSON","classes","event","SelectionContent","index","ChevronDown","ClearButton","FormValue","FloatingPanel","FieldScope","InputControl","Scrollbar","depth","items","Array","LoaderCircle","ChevronRight","Check"],"mappings":"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"}
|
|
@@ -30,6 +30,8 @@ interface CascaderBaseProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>
|
|
|
30
30
|
cacheKey?: string | number;
|
|
31
31
|
tagWrap?: boolean;
|
|
32
32
|
maxTagCount?: number | 'responsive';
|
|
33
|
+
popupWidth?: number | string;
|
|
34
|
+
popupMaxWidth?: number | string;
|
|
33
35
|
}
|
|
34
36
|
export type CascaderProps = CascaderBaseProps & ({
|
|
35
37
|
multiple?: false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cascader.d.cts","sourceRoot":"","sources":["../../../src/cascader/cascader.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,oBAAoB,EAEzB,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AASf,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGlE,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;CACtC;AAED,UAAU,iBACR,SAAQ,IAAI,CACR,oBAAoB,CAAC,iBAAiB,CAAC,EACvC,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,UAAU,GAAG,UAAU,CAC5D,EACD,YAAY;IACd,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;IACnC,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,SAAS,CAAC;IACtF,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,SAAS,CAAC;IACrD,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC,CAAC;IAC/F,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"cascader.d.cts","sourceRoot":"","sources":["../../../src/cascader/cascader.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,oBAAoB,EAEzB,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AASf,OAAO,EAEL,KAAK,YAAY,EAGlB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGlE,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;CACtC;AAED,UAAU,iBACR,SAAQ,IAAI,CACR,oBAAoB,CAAC,iBAAiB,CAAC,EACvC,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,UAAU,GAAG,UAAU,CAC5D,EACD,YAAY;IACd,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;IACnC,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,SAAS,CAAC;IACtF,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,SAAS,CAAC;IACrD,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC,CAAC;IAC/F,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IAC/D,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACjC;AACD,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAC3C,CACI;IACE,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CACzE,GACD;IACE,QAAQ,EAAE,IAAI,CAAC;IACf,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IACvC,YAAY,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,KAAK,IAAI,CAAC;CAC7E,CACJ,CAAC;AAeJ,eAAO,MAAM,QAAQ,6GAwenB,CAAC"}
|
package/dist/cjs/colors.cjs
CHANGED
|
@@ -31,7 +31,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
31
31
|
__webpack_require__.d(__webpack_exports__, {
|
|
32
32
|
defaultColors: ()=>defaultColors,
|
|
33
33
|
deriveColors: ()=>deriveColors,
|
|
34
|
-
mixColors: ()=>mixColors
|
|
34
|
+
mixColors: ()=>mixColors,
|
|
35
|
+
primaryForeground: ()=>primaryForeground
|
|
35
36
|
});
|
|
36
37
|
const tinycolor_namespaceObject = require("@ctrl/tinycolor");
|
|
37
38
|
const external_color_recipes_cjs_namespaceObject = require("./color-recipes.cjs");
|
|
@@ -65,11 +66,50 @@ const defaultColors = {
|
|
|
65
66
|
border: '#38383f'
|
|
66
67
|
}
|
|
67
68
|
};
|
|
69
|
+
function primaryForeground(color) {
|
|
70
|
+
if (cssColorExpression(color) || !new tinycolor_namespaceObject.TinyColor(color).isValid) return;
|
|
71
|
+
return (0, tinycolor_namespaceObject.readability)(color, '#ffffff') >= 2.8 ? '#ffffff' : '#000000';
|
|
72
|
+
}
|
|
73
|
+
const cssColorExpression = (color)=>/^(?:var|color-mix|light-dark|oklch|oklab|lab|lch|color)\(/i.test(color);
|
|
74
|
+
function visibleDarkColor(color, backgrounds, minimum) {
|
|
75
|
+
if ([
|
|
76
|
+
color,
|
|
77
|
+
...backgrounds
|
|
78
|
+
].some((value)=>cssColorExpression(value))) return color;
|
|
79
|
+
const primary = new tinycolor_namespaceObject.TinyColor(color);
|
|
80
|
+
const surfaces = backgrounds.map((value)=>new tinycolor_namespaceObject.TinyColor(value));
|
|
81
|
+
if ([
|
|
82
|
+
primary,
|
|
83
|
+
...surfaces
|
|
84
|
+
].some((value)=>!value.isValid || 1 !== value.getAlpha())) return color;
|
|
85
|
+
const contrasts = (candidate)=>backgrounds.every((background)=>(0, tinycolor_namespaceObject.readability)(candidate, background) >= minimum);
|
|
86
|
+
if (contrasts(color) || !contrasts('#ffffff')) return color;
|
|
87
|
+
const { h, s, l } = primary.toHsl();
|
|
88
|
+
let low = l;
|
|
89
|
+
let high = 1;
|
|
90
|
+
let result = '#ffffff';
|
|
91
|
+
for(let step = 0; step < 16; step++){
|
|
92
|
+
const lightness = (low + high) / 2;
|
|
93
|
+
const candidate = new tinycolor_namespaceObject.TinyColor({
|
|
94
|
+
h,
|
|
95
|
+
s,
|
|
96
|
+
l: lightness
|
|
97
|
+
}).toHexString();
|
|
98
|
+
if (contrasts(candidate)) {
|
|
99
|
+
result = candidate;
|
|
100
|
+
high = lightness;
|
|
101
|
+
} else low = lightness;
|
|
102
|
+
}
|
|
103
|
+
return result;
|
|
104
|
+
}
|
|
68
105
|
function mixColors(first, second, weight) {
|
|
69
106
|
if (!first || !second) return;
|
|
70
107
|
const a = new tinycolor_namespaceObject.TinyColor(first);
|
|
71
108
|
const b = new tinycolor_namespaceObject.TinyColor(second);
|
|
72
|
-
if (!a.isValid || !b.isValid)
|
|
109
|
+
if (cssColorExpression(first) || cssColorExpression(second) || !a.isValid || !b.isValid) {
|
|
110
|
+
const cssColor = (value)=>cssColorExpression(value) || new tinycolor_namespaceObject.TinyColor(value).isValid;
|
|
111
|
+
return cssColor(first) && cssColor(second) ? `color-mix(in srgb, ${first} ${Math.min(100, Math.max(0, weight))}%, ${second})` : void 0;
|
|
112
|
+
}
|
|
73
113
|
const x = a.toRgb();
|
|
74
114
|
const y = b.toRgb();
|
|
75
115
|
const ratio = Math.min(1, Math.max(0, weight / 100));
|
|
@@ -78,7 +118,7 @@ function mixColors(first, second, weight) {
|
|
|
78
118
|
return `rgba(${channel('r')}, ${channel('g')}, ${channel('b')}, ${Number(alpha.toFixed(4))})`;
|
|
79
119
|
}
|
|
80
120
|
function interactionColor(color, foreground, toward, amounts) {
|
|
81
|
-
if (!new tinycolor_namespaceObject.TinyColor(color).isValid || !new tinycolor_namespaceObject.TinyColor(foreground).isValid) return;
|
|
121
|
+
if (cssColorExpression(color) || cssColorExpression(foreground) || !new tinycolor_namespaceObject.TinyColor(color).isValid || !new tinycolor_namespaceObject.TinyColor(foreground).isValid) return;
|
|
82
122
|
const minimumContrast = Math.min(4.5, (0, tinycolor_namespaceObject.readability)(color, foreground));
|
|
83
123
|
for (const amount of amounts){
|
|
84
124
|
const candidate = mixColors(color, toward, 100 - amount);
|
|
@@ -91,14 +131,34 @@ function deriveColors(appearance, overrides = {}) {
|
|
|
91
131
|
...defaultColors[appearance],
|
|
92
132
|
...overrides
|
|
93
133
|
};
|
|
134
|
+
const backgrounds = [
|
|
135
|
+
colors.surface ?? '',
|
|
136
|
+
colors['surface-muted'] ?? ''
|
|
137
|
+
];
|
|
138
|
+
const visible = (color, minimum)=>'dark' === appearance ? visibleDarkColor(color, backgrounds, minimum) : color;
|
|
139
|
+
const primary = colors.primary ?? '';
|
|
140
|
+
const ink = visible(primary, 4.5);
|
|
141
|
+
const indicator = visible(primary, 3);
|
|
142
|
+
const dim = indicator !== primary;
|
|
143
|
+
const hasPrimary = Boolean(overrides.primary);
|
|
144
|
+
if (hasPrimary && !overrides['on-primary']) colors['on-primary'] = primaryForeground(colors.primary ?? '') ?? defaultColors[appearance]['on-primary'];
|
|
94
145
|
colors['text-subtle'] ??= mixColors(colors['text-muted'], colors.surface, 92) ?? '#68686f';
|
|
95
146
|
colors['surface-raised'] ??= mixColors(colors.surface, colors.text, 98) ?? '#ffffff';
|
|
96
147
|
colors['border-hover'] ??= mixColors(colors.border, colors['text-muted'], 65) ?? '#e5e5e8';
|
|
97
148
|
const result = {};
|
|
149
|
+
result['--leaf-color-primary-ink'] = ink;
|
|
150
|
+
result['--leaf-color-primary-indicator'] = indicator;
|
|
151
|
+
result['--leaf-color-primary-fill-border'] = dim ? mixColors(primary, colors.text, 80) ?? 'transparent' : 'transparent';
|
|
152
|
+
result['--leaf-color-primary-focus'] = dim ? indicator : mixColors(primary, 'transparent', 42) ?? 'transparent';
|
|
153
|
+
if (hasPrimary) {
|
|
154
|
+
result['--leaf-color-primary'] = colors.primary ?? '';
|
|
155
|
+
result['--leaf-color-on-primary'] = colors['on-primary'] ?? defaultColors[appearance]['on-primary'];
|
|
156
|
+
}
|
|
98
157
|
for (const [key, [first, second, ratio]] of Object.entries(external_color_recipes_cjs_namespaceObject.colorRecipes)){
|
|
99
158
|
const other = 'alpha' === second ? 'transparent' : 'white' === second ? '#fff' : 'black' === second ? '#000' : colors[second];
|
|
100
|
-
const
|
|
101
|
-
|
|
159
|
+
const source = dim && 'primary' === first && 'surface' === second ? indicator : colors[first];
|
|
160
|
+
const value = mixColors(source, other, ratio);
|
|
161
|
+
if (value) result[key] = key.startsWith('--leaf-color-primary-text-') ? visible(value, 4.5) : value;
|
|
102
162
|
}
|
|
103
163
|
for (const key of [
|
|
104
164
|
'text-subtle',
|
|
@@ -107,7 +167,7 @@ function deriveColors(appearance, overrides = {}) {
|
|
|
107
167
|
])result[`--leaf-color-${key}`] = colors[key] ?? '';
|
|
108
168
|
const warning = colors.warning;
|
|
109
169
|
const text = colors.text;
|
|
110
|
-
if (warning && text && new tinycolor_namespaceObject.TinyColor(warning).isValid && new tinycolor_namespaceObject.TinyColor(text).isValid) {
|
|
170
|
+
if (warning && text && !cssColorExpression(warning) && !cssColorExpression(text) && new tinycolor_namespaceObject.TinyColor(warning).isValid && new tinycolor_namespaceObject.TinyColor(text).isValid) {
|
|
111
171
|
const backgrounds = [
|
|
112
172
|
colors.surface,
|
|
113
173
|
colors['surface-muted'],
|
|
@@ -149,16 +209,22 @@ function deriveColors(appearance, overrides = {}) {
|
|
|
149
209
|
]);
|
|
150
210
|
if (hover) result[`--leaf-color-${key}-hover`] = hover;
|
|
151
211
|
if (active) result[`--leaf-color-${key}-active`] = active;
|
|
212
|
+
if ('primary' === key) {
|
|
213
|
+
if (hover) result['--leaf-color-primary-ink-hover'] = colors['primary-hover'] ?? visible(hover, 4.5);
|
|
214
|
+
if (active) result['--leaf-color-primary-ink-active'] = colors['primary-active'] ?? visible(active, 4.5);
|
|
215
|
+
}
|
|
152
216
|
}
|
|
153
217
|
return result;
|
|
154
218
|
}
|
|
155
219
|
exports.defaultColors = __webpack_exports__.defaultColors;
|
|
156
220
|
exports.deriveColors = __webpack_exports__.deriveColors;
|
|
157
221
|
exports.mixColors = __webpack_exports__.mixColors;
|
|
222
|
+
exports.primaryForeground = __webpack_exports__.primaryForeground;
|
|
158
223
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
159
224
|
"defaultColors",
|
|
160
225
|
"deriveColors",
|
|
161
|
-
"mixColors"
|
|
226
|
+
"mixColors",
|
|
227
|
+
"primaryForeground"
|
|
162
228
|
].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
|
|
163
229
|
Object.defineProperty(exports, '__esModule', {
|
|
164
230
|
value: true
|
package/dist/cjs/colors.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colors.cjs","sources":["webpack://webpack/runtime/define_property_getters","webpack://webpack/runtime/has_own_property","webpack://webpack/runtime/make_namespace_object","../../src/colors.ts"],"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 { readability, TinyColor } from '@ctrl/tinycolor';\nimport { colorRecipes } from './color-recipes';\n\nexport const defaultColors = {\n light: {\n primary: '#20834a',\n 'on-primary': '#ffffff',\n danger: '#c83c3c',\n 'on-danger': '#ffffff',\n warning: '#faad14',\n info: '#1677ff',\n success: '#20834a',\n text: '#202024',\n 'text-muted': '#68686f',\n surface: '#ffffff',\n 'surface-muted': '#f6f6f7',\n border: '#e5e5e8',\n },\n dark: {\n primary: '#83cf9e',\n 'on-primary': '#11271a',\n danger: '#ef8585',\n 'on-danger': '#381818',\n warning: '#ffc53d',\n info: '#69b1ff',\n success: '#83cf9e',\n text: '#ededf0',\n 'text-muted': '#a5a5ae',\n surface: '#1c1c20',\n 'surface-muted': '#25252b',\n border: '#38383f',\n },\n};\n\n/** sRGB mixing with premultiplied alpha, matching CSS transparent-color semantics. */\nexport function mixColors(\n first: string | undefined,\n second: string | undefined,\n weight: number,\n): string | undefined {\n if (!first || !second) return undefined;\n const a = new TinyColor(first);\n const b = new TinyColor(second);\n if (!a.isValid || !b.isValid) return undefined;\n const x = a.toRgb();\n const y = b.toRgb();\n const ratio = Math.min(1, Math.max(0, weight / 100));\n const alpha = x.a * ratio + y.a * (1 - ratio);\n const channel = (key: 'r' | 'g' | 'b') =>\n alpha ? Math.round((x[key] * x.a * ratio + y[key] * y.a * (1 - ratio)) / alpha) : 0;\n return `rgba(${channel('r')}, ${channel('g')}, ${channel('b')}, ${Number(alpha.toFixed(4))})`;\n}\n\n/** Derive once per theme; keep readable solid-button labels when changing shade. */\nfunction interactionColor(color: string, foreground: string, toward: string, amounts: number[]) {\n if (!new TinyColor(color).isValid || !new TinyColor(foreground).isValid) return undefined;\n const minimumContrast = Math.min(4.5, readability(color, foreground));\n for (const amount of amounts) {\n const candidate = mixColors(color, toward, 100 - amount);\n if (candidate && readability(candidate, foreground) >= minimumContrast) return candidate;\n }\n return color;\n}\n\n/** Concrete values only; CSS variable inputs can be resolved by the provider in the browser. */\nexport function deriveColors(appearance: 'light' | 'dark', overrides: Record<string, string> = {}) {\n const colors: Record<string, string> = { ...defaultColors[appearance], ...overrides };\n colors['text-subtle'] ??= mixColors(colors['text-muted'], colors.surface, 92) ?? '#68686f';\n colors['surface-raised'] ??= mixColors(colors.surface, colors.text, 98) ?? '#ffffff';\n colors['border-hover'] ??= mixColors(colors.border, colors['text-muted'], 65) ?? '#e5e5e8';\n const result: Record<`--leaf-${string}`, string> = {};\n for (const [key, [first, second, ratio]] of Object.entries(colorRecipes)) {\n const other =\n second === 'alpha'\n ? 'transparent'\n : second === 'white'\n ? '#fff'\n : second === 'black'\n ? '#000'\n : colors[second];\n const value = mixColors(colors[first], other, ratio);\n if (value) result[key as `--leaf-${string}`] = value;\n }\n for (const key of ['text-subtle', 'surface-raised', 'border-hover'])\n result[`--leaf-color-${key}`] = colors[key] ?? '';\n // Bright warning glyphs and fills need a separate, readable text color.\n const warning = colors.warning;\n const text = colors.text;\n if (warning && text && new TinyColor(warning).isValid && new TinyColor(text).isValid) {\n const backgrounds = [\n colors.surface,\n colors['surface-muted'],\n result['--leaf-color-warning-surface-8'],\n ].filter((color): color is string => Boolean(color));\n for (let weight = 80; weight >= 0; weight -= 10) {\n const ink = mixColors(warning, text, weight);\n if (ink && backgrounds.every((background) => readability(ink, background) >= 4.5)) {\n result['--leaf-color-warning-text-80'] = ink;\n break;\n }\n }\n result['--leaf-color-on-warning'] =\n readability(warning, '#202024') >= readability(warning, '#ffffff') ? '#202024' : '#ffffff';\n }\n for (const key of ['primary', 'danger']) {\n const color = colors[key];\n const foreground = colors[`on-${key}`];\n if (!color || !foreground) continue;\n const hover =\n colors[`${key}-hover`] ?? interactionColor(color, foreground, '#fff', [10, 8, 6, 4, 2.5, 1]);\n const active =\n colors[`${key}-active`] ??\n interactionColor(color, foreground, '#000', [15, 12, 10, 8, 6, 4, 2.5, 1]);\n if (hover) result[`--leaf-color-${key}-hover`] = hover;\n if (active) result[`--leaf-color-${key}-active`] = active;\n }\n return result;\n}\n"],"names":["__webpack_require__","getters","values","define","defs","kind","key","Object","obj","prop","Symbol","defaultColors","mixColors","first","second","weight","a","TinyColor","b","x","y","ratio","Math","alpha","channel","Number","interactionColor","color","foreground","toward","amounts","minimumContrast","readability","amount","candidate","deriveColors","appearance","overrides","colors","result","colorRecipes","other","value","warning","text","backgrounds","Boolean","ink","background","hover","active"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"colors.cjs","sources":["webpack://webpack/runtime/define_property_getters","webpack://webpack/runtime/has_own_property","webpack://webpack/runtime/make_namespace_object","../../src/colors.ts"],"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 { readability, TinyColor } from '@ctrl/tinycolor';\nimport { colorRecipes } from './color-recipes';\n\nexport const defaultColors = {\n light: {\n primary: '#20834a',\n 'on-primary': '#ffffff',\n danger: '#c83c3c',\n 'on-danger': '#ffffff',\n warning: '#faad14',\n info: '#1677ff',\n success: '#20834a',\n text: '#202024',\n 'text-muted': '#68686f',\n surface: '#ffffff',\n 'surface-muted': '#f6f6f7',\n border: '#e5e5e8',\n },\n dark: {\n primary: '#83cf9e',\n 'on-primary': '#11271a',\n danger: '#ef8585',\n 'on-danger': '#381818',\n warning: '#ffc53d',\n info: '#69b1ff',\n success: '#83cf9e',\n text: '#ededf0',\n 'text-muted': '#a5a5ae',\n surface: '#1c1c20',\n 'surface-muted': '#25252b',\n border: '#38383f',\n },\n};\n\n/** Prefer white labels at 2.8:1 contrast; brighter fills use black unless explicitly overridden. */\nexport function primaryForeground(color: string) {\n if (cssColorExpression(color) || !new TinyColor(color).isValid) return undefined;\n return readability(color, '#ffffff') >= 2.8 ? '#ffffff' : '#000000';\n}\n\nconst cssColorExpression = (color: string) =>\n /^(?:var|color-mix|light-dark|oklch|oklab|lab|lch|color)\\(/i.test(color);\n\n/** Derive visible ink/indicators without altering the brand fill or supplied theme. */\nfunction visibleDarkColor(color: string, backgrounds: string[], minimum: number) {\n if ([color, ...backgrounds].some((value) => cssColorExpression(value))) return color;\n const primary = new TinyColor(color);\n const surfaces = backgrounds.map((value) => new TinyColor(value));\n if ([primary, ...surfaces].some((value) => !value.isValid || value.getAlpha() !== 1))\n return color;\n const contrasts = (candidate: string) =>\n backgrounds.every((background) => readability(candidate, background) >= minimum);\n if (contrasts(color) || !contrasts('#ffffff')) return color;\n const { h, s, l } = primary.toHsl();\n let low = l;\n let high = 1;\n let result = '#ffffff';\n for (let step = 0; step < 16; step++) {\n const lightness = (low + high) / 2;\n const candidate = new TinyColor({ h, s, l: lightness }).toHexString();\n if (contrasts(candidate)) {\n result = candidate;\n high = lightness;\n } else low = lightness;\n }\n return result;\n}\n\n/** sRGB mixing with premultiplied alpha, matching CSS transparent-color semantics. */\nexport function mixColors(\n first: string | undefined,\n second: string | undefined,\n weight: number,\n): string | undefined {\n if (!first || !second) return undefined;\n const a = new TinyColor(first);\n const b = new TinyColor(second);\n if (cssColorExpression(first) || cssColorExpression(second) || !a.isValid || !b.isValid) {\n const cssColor = (value: string) => cssColorExpression(value) || new TinyColor(value).isValid;\n return cssColor(first) && cssColor(second)\n ? `color-mix(in srgb, ${first} ${Math.min(100, Math.max(0, weight))}%, ${second})`\n : undefined;\n }\n const x = a.toRgb();\n const y = b.toRgb();\n const ratio = Math.min(1, Math.max(0, weight / 100));\n const alpha = x.a * ratio + y.a * (1 - ratio);\n const channel = (key: 'r' | 'g' | 'b') =>\n alpha ? Math.round((x[key] * x.a * ratio + y[key] * y.a * (1 - ratio)) / alpha) : 0;\n return `rgba(${channel('r')}, ${channel('g')}, ${channel('b')}, ${Number(alpha.toFixed(4))})`;\n}\n\n/** Derive once per theme; keep readable solid-button labels when changing shade. */\nfunction interactionColor(color: string, foreground: string, toward: string, amounts: number[]) {\n if (\n cssColorExpression(color) ||\n cssColorExpression(foreground) ||\n !new TinyColor(color).isValid ||\n !new TinyColor(foreground).isValid\n )\n return undefined;\n const minimumContrast = Math.min(4.5, readability(color, foreground));\n for (const amount of amounts) {\n const candidate = mixColors(color, toward, 100 - amount);\n if (candidate && readability(candidate, foreground) >= minimumContrast) return candidate;\n }\n return color;\n}\n\n/** Keep CSS expressions reactive in SSR; resolve contrast-sensitive values after hydration. */\nexport function deriveColors(appearance: 'light' | 'dark', overrides: Record<string, string> = {}) {\n const colors: Record<string, string> = { ...defaultColors[appearance], ...overrides };\n const backgrounds = [colors.surface ?? '', colors['surface-muted'] ?? ''];\n const visible = (color: string, minimum: number) =>\n appearance === 'dark' ? visibleDarkColor(color, backgrounds, minimum) : color;\n const primary = colors.primary ?? '';\n const ink = visible(primary, 4.5);\n const indicator = visible(primary, 3);\n const dim = indicator !== primary;\n const hasPrimary = Boolean(overrides.primary);\n if (hasPrimary && !overrides['on-primary'])\n colors['on-primary'] =\n primaryForeground(colors.primary ?? '') ?? defaultColors[appearance]['on-primary'];\n colors['text-subtle'] ??= mixColors(colors['text-muted'], colors.surface, 92) ?? '#68686f';\n colors['surface-raised'] ??= mixColors(colors.surface, colors.text, 98) ?? '#ffffff';\n colors['border-hover'] ??= mixColors(colors.border, colors['text-muted'], 65) ?? '#e5e5e8';\n const result: Record<`--leaf-${string}`, string> = {};\n result['--leaf-color-primary-ink'] = ink;\n result['--leaf-color-primary-indicator'] = indicator;\n result['--leaf-color-primary-fill-border'] = dim\n ? (mixColors(primary, colors.text, 80) ?? 'transparent')\n : 'transparent';\n result['--leaf-color-primary-focus'] = dim\n ? indicator\n : (mixColors(primary, 'transparent', 42) ?? 'transparent');\n if (hasPrimary) {\n result['--leaf-color-primary'] = colors.primary ?? '';\n result['--leaf-color-on-primary'] =\n colors['on-primary'] ?? defaultColors[appearance]['on-primary'];\n }\n for (const [key, [first, second, ratio]] of Object.entries(colorRecipes)) {\n const other =\n second === 'alpha'\n ? 'transparent'\n : second === 'white'\n ? '#fff'\n : second === 'black'\n ? '#000'\n : colors[second];\n const source = dim && first === 'primary' && second === 'surface' ? indicator : colors[first];\n const value = mixColors(source, other, ratio);\n if (value)\n result[key as `--leaf-${string}`] = key.startsWith('--leaf-color-primary-text-')\n ? visible(value, 4.5)\n : value;\n }\n for (const key of ['text-subtle', 'surface-raised', 'border-hover'])\n result[`--leaf-color-${key}`] = colors[key] ?? '';\n // Bright warning glyphs and fills need a separate, readable text color.\n const warning = colors.warning;\n const text = colors.text;\n if (\n warning &&\n text &&\n !cssColorExpression(warning) &&\n !cssColorExpression(text) &&\n new TinyColor(warning).isValid &&\n new TinyColor(text).isValid\n ) {\n const backgrounds = [\n colors.surface,\n colors['surface-muted'],\n result['--leaf-color-warning-surface-8'],\n ].filter((color): color is string => Boolean(color));\n for (let weight = 80; weight >= 0; weight -= 10) {\n const ink = mixColors(warning, text, weight);\n if (ink && backgrounds.every((background) => readability(ink, background) >= 4.5)) {\n result['--leaf-color-warning-text-80'] = ink;\n break;\n }\n }\n result['--leaf-color-on-warning'] =\n readability(warning, '#202024') >= readability(warning, '#ffffff') ? '#202024' : '#ffffff';\n }\n for (const key of ['primary', 'danger']) {\n const color = colors[key];\n const foreground = colors[`on-${key}`];\n if (!color || !foreground) continue;\n const hover =\n colors[`${key}-hover`] ?? interactionColor(color, foreground, '#fff', [10, 8, 6, 4, 2.5, 1]);\n const active =\n colors[`${key}-active`] ??\n interactionColor(color, foreground, '#000', [15, 12, 10, 8, 6, 4, 2.5, 1]);\n if (hover) result[`--leaf-color-${key}-hover`] = hover;\n if (active) result[`--leaf-color-${key}-active`] = active;\n if (key === 'primary') {\n if (hover)\n result['--leaf-color-primary-ink-hover'] = colors['primary-hover'] ?? visible(hover, 4.5);\n if (active)\n result['--leaf-color-primary-ink-active'] =\n colors['primary-active'] ?? visible(active, 4.5);\n }\n }\n return result;\n}\n"],"names":["__webpack_require__","getters","values","define","defs","kind","key","Object","obj","prop","Symbol","defaultColors","primaryForeground","color","cssColorExpression","TinyColor","readability","visibleDarkColor","backgrounds","minimum","value","primary","surfaces","contrasts","candidate","background","h","s","l","low","high","result","step","lightness","mixColors","first","second","weight","a","b","cssColor","Math","undefined","x","y","ratio","alpha","channel","Number","interactionColor","foreground","toward","amounts","minimumContrast","amount","deriveColors","appearance","overrides","colors","visible","ink","indicator","dim","hasPrimary","Boolean","colorRecipes","other","source","warning","text","hover","active"],"mappings":"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"}
|
package/dist/cjs/colors.d.cts
CHANGED
|
@@ -28,8 +28,10 @@ export declare const defaultColors: {
|
|
|
28
28
|
border: string;
|
|
29
29
|
};
|
|
30
30
|
};
|
|
31
|
+
/** Prefer white labels at 2.8:1 contrast; brighter fills use black unless explicitly overridden. */
|
|
32
|
+
export declare function primaryForeground(color: string): "#000000" | "#ffffff" | undefined;
|
|
31
33
|
/** sRGB mixing with premultiplied alpha, matching CSS transparent-color semantics. */
|
|
32
34
|
export declare function mixColors(first: string | undefined, second: string | undefined, weight: number): string | undefined;
|
|
33
|
-
/**
|
|
35
|
+
/** Keep CSS expressions reactive in SSR; resolve contrast-sensitive values after hydration. */
|
|
34
36
|
export declare function deriveColors(appearance: 'light' | 'dark', overrides?: Record<string, string>): Record<`--leaf-${string}`, string>;
|
|
35
37
|
//# sourceMappingURL=colors.d.cts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colors.d.cts","sourceRoot":"","sources":["../../src/colors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;IACxB,KAAK;QACH,OAAO;QACP,YAAY;QACZ,MAAM;QACN,WAAW;QACX,OAAO;QACP,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,YAAY;QACZ,OAAO;QACP,eAAe;QACf,MAAM;;IAER,IAAI;QACF,OAAO;QACP,YAAY;QACZ,MAAM;QACN,WAAW;QACX,OAAO;QACP,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,YAAY;QACZ,OAAO;QACP,eAAe;QACf,MAAM;;CAET,CAAC;AAEF,sFAAsF;AACtF,wBAAgB,SAAS,CACvB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"colors.d.cts","sourceRoot":"","sources":["../../src/colors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,aAAa;IACxB,KAAK;QACH,OAAO;QACP,YAAY;QACZ,MAAM;QACN,WAAW;QACX,OAAO;QACP,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,YAAY;QACZ,OAAO;QACP,eAAe;QACf,MAAM;;IAER,IAAI;QACF,OAAO;QACP,YAAY;QACZ,MAAM;QACN,WAAW;QACX,OAAO;QACP,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,YAAY;QACZ,OAAO;QACP,eAAe;QACf,MAAM;;CAET,CAAC;AAEF,oGAAoG;AACpG,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,qCAG9C;AA8BD,sFAAsF;AACtF,wBAAgB,SAAS,CACvB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAiBpB;AAmBD,+FAA+F;AAC/F,wBAAgB,YAAY,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,EAAE,SAAS,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,sCA8FhG"}
|
|
@@ -38,6 +38,7 @@ const component_defaults_cjs_namespaceObject = require("../config-provider/compo
|
|
|
38
38
|
const context_cjs_namespaceObject = require("../config-provider/context.cjs");
|
|
39
39
|
const input_cjs_namespaceObject = require("../input/input.cjs");
|
|
40
40
|
const modal_cjs_namespaceObject = require("../modal/modal.cjs");
|
|
41
|
+
const scrollbar_cjs_namespaceObject = require("../scrollbar/scrollbar.cjs");
|
|
41
42
|
const use_controllable_cjs_namespaceObject = require("../shared/use-controllable.cjs");
|
|
42
43
|
const use_text_cjs_namespaceObject = require("../shared/use-text.cjs");
|
|
43
44
|
const useBrowserLayoutEffect = "u" < typeof window ? external_react_namespaceObject.useEffect : external_react_namespaceObject.useLayoutEffect;
|
|
@@ -189,13 +190,19 @@ function CommandPalette(rawProps) {
|
|
|
189
190
|
className: "leaf-command-palette__error",
|
|
190
191
|
children: error
|
|
191
192
|
}),
|
|
192
|
-
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(
|
|
193
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(scrollbar_cjs_namespaceObject.ScrollbarControl, {
|
|
193
194
|
ref: listRef,
|
|
194
195
|
id: id,
|
|
195
196
|
role: "listbox",
|
|
196
197
|
"aria-label": t('commandPalette.commands'),
|
|
197
|
-
|
|
198
|
-
|
|
198
|
+
viewportProps: {
|
|
199
|
+
'aria-busy': loading || !!busy
|
|
200
|
+
},
|
|
201
|
+
className: "leaf-command-palette__results",
|
|
202
|
+
viewportClassName: "leaf-command-palette__list",
|
|
203
|
+
tabIndex: -1,
|
|
204
|
+
scrollbarTabIndex: -1,
|
|
205
|
+
maxHeight: 340,
|
|
199
206
|
children: [
|
|
200
207
|
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
|
|
201
208
|
className: "leaf-command-palette__selection",
|