@wisdomgarden/torque 0.1.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 +75 -0
- package/dist/common/components.types.d.ts +60 -0
- package/dist/common/components.types.js +1 -0
- package/dist/common/dayjs.d.ts +7 -0
- package/dist/common/dayjs.js +10 -0
- package/dist/common/use-css-variable-value.d.ts +6 -0
- package/dist/common/use-css-variable-value.js +23 -0
- package/dist/common/use-css-variable-values.d.ts +10 -0
- package/dist/common/use-css-variable-values.js +25 -0
- package/dist/common/use-form-wrapper-props.d.ts +48 -0
- package/dist/common/use-form-wrapper-props.js +59 -0
- package/dist/common/use-ime-safe-input.d.ts +10 -0
- package/dist/common/use-ime-safe-input.js +23 -0
- package/dist/common/use-notification-a11y.d.ts +4 -0
- package/dist/common/use-notification-a11y.js +18 -0
- package/dist/common/use-sticky-box.d.ts +9 -0
- package/dist/common/use-sticky-box.js +217 -0
- package/dist/common/util.d.ts +5 -0
- package/dist/common/util.js +14 -0
- package/dist/components/_inner/base-select/common/searchable.d.ts +5 -0
- package/dist/components/_inner/base-select/common/searchable.js +6 -0
- package/dist/components/_inner/base-select/common/select.types.d.ts +169 -0
- package/dist/components/_inner/base-select/common/select.types.js +1 -0
- package/dist/components/_inner/base-select/search-select/index.d.ts +6 -0
- package/dist/components/_inner/base-select/search-select/index.js +106 -0
- package/dist/components/_inner/base-select/search-select/search-select.module.css.js +10 -0
- package/dist/components/_inner/base-select/single-select/index.d.ts +1 -0
- package/dist/components/_inner/base-select/single-select/index.js +5 -0
- package/dist/components/_inner/base-select/single-select/single-select.d.ts +5 -0
- package/dist/components/_inner/base-select/single-select/single-select.js +58 -0
- package/dist/components/_inner/base-select/target/single-select-target.d.ts +15 -0
- package/dist/components/_inner/base-select/target/single-select-target.js +56 -0
- package/dist/components/_inner/bottom-action/bottom-action-item.d.ts +11 -0
- package/dist/components/_inner/bottom-action/bottom-action-item.js +140 -0
- package/dist/components/_inner/bottom-action/bottom-action.d.ts +6 -0
- package/dist/components/_inner/bottom-action/bottom-action.js +161 -0
- package/dist/components/_inner/bottom-action/bottom-action.module.css.js +46 -0
- package/dist/components/_inner/bottom-action/bottom-action.types.d.ts +117 -0
- package/dist/components/_inner/bottom-action/index.d.ts +2 -0
- package/dist/components/_inner/bottom-action/index.js +5 -0
- package/dist/components/_inner/drawer/base-bottom-drawer.d.ts +32 -0
- package/dist/components/_inner/drawer/base-bottom-drawer.js +91 -0
- package/dist/components/_inner/drawer/base-bottom-drawer.module.css.js +18 -0
- package/dist/components/_inner/dropdown/empty-state.d.ts +6 -0
- package/dist/components/_inner/dropdown/empty-state.js +16 -0
- package/dist/components/_inner/dropdown/empty-state.module.css.js +12 -0
- package/dist/components/_inner/dropdown/options-drop-down.d.ts +22 -0
- package/dist/components/_inner/dropdown/options-drop-down.js +95 -0
- package/dist/components/_inner/dropdown/options-drop-down.module.css.js +18 -0
- package/dist/components/_inner/menu/_mobile/menu.mobile.d.ts +11 -0
- package/dist/components/_inner/menu/_mobile/menu.mobile.js +15 -0
- package/dist/components/_inner/menu/_web/menu-web.module.css.js +18 -0
- package/dist/components/_inner/menu/_web/menu.web.d.ts +6 -0
- package/dist/components/_inner/menu/_web/menu.web.js +198 -0
- package/dist/components/_inner/number/number-input-left.d.ts +5 -0
- package/dist/components/_inner/number/number-input-left.js +29 -0
- package/dist/components/_inner/number/number-input-right.d.ts +6 -0
- package/dist/components/_inner/number/number-input-right.js +62 -0
- package/dist/components/_inner/number/number.module.css.js +12 -0
- package/dist/components/_inner/table/head/table-head-filter-multi-select.d.ts +25 -0
- package/dist/components/_inner/table/head/table-head-filter-multi-select.js +139 -0
- package/dist/components/_inner/table/head/table-head-filter-search.d.ts +18 -0
- package/dist/components/_inner/table/head/table-head-filter-search.js +102 -0
- package/dist/components/_inner/table/head/table-head-filter-single-select.d.ts +21 -0
- package/dist/components/_inner/table/head/table-head-filter-single-select.js +76 -0
- package/dist/components/_inner/table/head/table-head-sort.d.ts +16 -0
- package/dist/components/_inner/table/head/table-head-sort.js +51 -0
- package/dist/components/_inner/table/head/table-head.module.css.js +40 -0
- package/dist/components/_inner/table/index.d.ts +5 -0
- package/dist/components/_inner/table/index.js +13 -0
- package/dist/components/_inner/table/table-header-title.d.ts +7 -0
- package/dist/components/_inner/table/table-header-title.js +24 -0
- package/dist/components/_inner/table/table-header-title.module.css.js +12 -0
- package/dist/components/_inner/tags-input/hooks/use-height-transition.d.ts +15 -0
- package/dist/components/_inner/tags-input/hooks/use-height-transition.js +31 -0
- package/dist/components/_inner/tags-input/hooks/use-is-wrapped.d.ts +12 -0
- package/dist/components/_inner/tags-input/hooks/use-is-wrapped.js +24 -0
- package/dist/components/_inner/tags-input/index.d.ts +2 -0
- package/dist/components/_inner/tags-input/index.js +5 -0
- package/dist/components/_inner/tags-input/styles/tags-input.module.css.js +48 -0
- package/dist/components/_inner/tags-input/tags-input-tag.d.ts +13 -0
- package/dist/components/_inner/tags-input/tags-input-tag.js +53 -0
- package/dist/components/_inner/tags-input/tags-input.d.ts +9 -0
- package/dist/components/_inner/tags-input/tags-input.js +143 -0
- package/dist/components/_inner/tags-input/tags-input.types.d.ts +57 -0
- package/dist/components/alert/alert.d.ts +6 -0
- package/dist/components/alert/alert.js +102 -0
- package/dist/components/alert/alert.module.css.js +20 -0
- package/dist/components/alert/alert.types.d.ts +18 -0
- package/dist/components/alert/index.d.ts +2 -0
- package/dist/components/alert/index.js +6 -0
- package/dist/components/base-input/base-input.d.ts +5 -0
- package/dist/components/base-input/base-input.js +143 -0
- package/dist/components/base-input/base-input.types.d.ts +89 -0
- package/dist/components/base-input/index.d.ts +5 -0
- package/dist/components/base-input/index.js +11 -0
- package/dist/components/base-input/styles/base-input-variables.module.css.js +8 -0
- package/dist/components/base-input/styles/base-input.module.css.js +24 -0
- package/dist/components/base-input/subs/base-input-left-section.d.ts +10 -0
- package/dist/components/base-input/subs/base-input-left-section.js +29 -0
- package/dist/components/base-input/subs/base-input-right-section.d.ts +23 -0
- package/dist/components/base-input/subs/base-input-right-section.js +87 -0
- package/dist/components/base-input/subs/base-input-target.d.ts +11 -0
- package/dist/components/base-input/subs/base-input-target.js +35 -0
- package/dist/components/base-input/subs/base-input-wrapper.d.ts +18 -0
- package/dist/components/base-input/subs/base-input-wrapper.js +51 -0
- package/dist/components/base-input/util.d.ts +8 -0
- package/dist/components/base-input/util.js +16 -0
- package/dist/components/bottom-drawer/bottom-drawer.d.ts +6 -0
- package/dist/components/bottom-drawer/bottom-drawer.js +16 -0
- package/dist/components/bottom-drawer/index.d.ts +2 -0
- package/dist/components/bottom-drawer/index.js +5 -0
- package/dist/components/box/box.d.ts +2 -0
- package/dist/components/box/box.js +27 -0
- package/dist/components/box/box.module.css.js +8 -0
- package/dist/components/box/box.types.d.ts +36 -0
- package/dist/components/box/index.d.ts +2 -0
- package/dist/components/box/index.js +5 -0
- package/dist/components/button/button.d.ts +17 -0
- package/dist/components/button/button.js +91 -0
- package/dist/components/button/button.types.d.ts +88 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/button/index.js +5 -0
- package/dist/components/button/styles/button-variables.module.css.js +8 -0
- package/dist/components/button/styles/button.module.css.js +18 -0
- package/dist/components/checkbox/checkbox-group.d.ts +7 -0
- package/dist/components/checkbox/checkbox-group.js +51 -0
- package/dist/components/checkbox/checkbox-variables.module.css.js +8 -0
- package/dist/components/checkbox/checkbox.d.ts +9 -0
- package/dist/components/checkbox/checkbox.js +93 -0
- package/dist/components/checkbox/checkbox.module.css.js +12 -0
- package/dist/components/checkbox/checkbox.types.d.ts +41 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/index.js +8 -0
- package/dist/components/combobox/combobox-context.d.ts +9 -0
- package/dist/components/combobox/combobox-context.js +15 -0
- package/dist/components/combobox/combobox-dropdown.d.ts +13 -0
- package/dist/components/combobox/combobox-dropdown.js +35 -0
- package/dist/components/combobox/combobox-infinite-dropdown.d.ts +51 -0
- package/dist/components/combobox/combobox-infinite-dropdown.js +56 -0
- package/dist/components/combobox/combobox-option.d.ts +3 -0
- package/dist/components/combobox/combobox-option.js +50 -0
- package/dist/components/combobox/combobox-options.d.ts +8 -0
- package/dist/components/combobox/combobox-options.js +38 -0
- package/dist/components/combobox/combobox-search.d.ts +27 -0
- package/dist/components/combobox/combobox-search.js +29 -0
- package/dist/components/combobox/combobox-target.d.ts +15 -0
- package/dist/components/combobox/combobox-target.js +49 -0
- package/dist/components/combobox/combobox.d.ts +61 -0
- package/dist/components/combobox/combobox.js +53 -0
- package/dist/components/combobox/combobox.types.d.ts +58 -0
- package/dist/components/combobox/hooks/use-combobox-search-input.d.ts +11 -0
- package/dist/components/combobox/hooks/use-combobox-search-input.js +22 -0
- package/dist/components/combobox/hooks/use-combobox-target-key-down.d.ts +12 -0
- package/dist/components/combobox/hooks/use-combobox-target-key-down.js +35 -0
- package/dist/components/combobox/hooks/use-combobox.d.ts +58 -0
- package/dist/components/combobox/hooks/use-combobox.js +90 -0
- package/dist/components/combobox/index.d.ts +5 -0
- package/dist/components/combobox/index.js +9 -0
- package/dist/components/combobox/styles/combobox.module.css.js +14 -0
- package/dist/components/combobox/subs/combobox-bottom-drawer-dropdown.d.ts +10 -0
- package/dist/components/combobox/subs/combobox-bottom-drawer-dropdown.js +14 -0
- package/dist/components/combobox/subs/combobox-bottom-drawer-target.d.ts +3 -0
- package/dist/components/combobox/subs/combobox-bottom-drawer-target.js +20 -0
- package/dist/components/data-filter/data-filter-content.d.ts +13 -0
- package/dist/components/data-filter/data-filter-content.js +46 -0
- package/dist/components/data-filter/data-filter-drawer.d.ts +19 -0
- package/dist/components/data-filter/data-filter-drawer.js +73 -0
- package/dist/components/data-filter/data-filter-inline.d.ts +6 -0
- package/dist/components/data-filter/data-filter-inline.js +12 -0
- package/dist/components/data-filter/data-filter-panel.d.ts +13 -0
- package/dist/components/data-filter/data-filter-panel.js +40 -0
- package/dist/components/data-filter/data-filter.d.ts +2 -0
- package/dist/components/data-filter/data-filter.js +94 -0
- package/dist/components/data-filter/data-filter.module.css.js +56 -0
- package/dist/components/data-filter/data-filter.types.d.ts +29 -0
- package/dist/components/data-filter/filter-condition-tags/filter-condition-tags.d.ts +16 -0
- package/dist/components/data-filter/filter-condition-tags/filter-condition-tags.js +114 -0
- package/dist/components/data-filter/filter-condition-tags/index.d.ts +1 -0
- package/dist/components/data-filter/filter-condition-tags/index.js +5 -0
- package/dist/components/data-filter/hooks/use-data-filter-open-state.d.ts +10 -0
- package/dist/components/data-filter/hooks/use-data-filter-open-state.js +21 -0
- package/dist/components/data-filter/hooks/use-data-filter-state.d.ts +11 -0
- package/dist/components/data-filter/hooks/use-data-filter-state.js +48 -0
- package/dist/components/data-filter/index.d.ts +3 -0
- package/dist/components/data-filter/index.js +7 -0
- package/dist/components/date-picker/components/common/calendar-header.d.ts +10 -0
- package/dist/components/date-picker/components/common/calendar-header.js +70 -0
- package/dist/components/date-picker/components/common/calendar-panel.d.ts +6 -0
- package/dist/components/date-picker/components/common/calendar-panel.js +133 -0
- package/dist/components/date-picker/components/common/date-cell.d.ts +8 -0
- package/dist/components/date-picker/components/common/date-cell.js +46 -0
- package/dist/components/date-picker/components/common/decade-view.d.ts +8 -0
- package/dist/components/date-picker/components/common/decade-view.js +36 -0
- package/dist/components/date-picker/components/common/month-view.d.ts +5 -0
- package/dist/components/date-picker/components/common/month-view.js +65 -0
- package/dist/components/date-picker/components/common/picker-footer.d.ts +28 -0
- package/dist/components/date-picker/components/common/picker-footer.js +29 -0
- package/dist/components/date-picker/components/common/picker-sections.d.ts +14 -0
- package/dist/components/date-picker/components/common/picker-sections.js +31 -0
- package/dist/components/date-picker/components/common/picker-target-input.d.ts +7 -0
- package/dist/components/date-picker/components/common/picker-target-input.js +11 -0
- package/dist/components/date-picker/components/common/time-column.d.ts +6 -0
- package/dist/components/date-picker/components/common/time-column.js +121 -0
- package/dist/components/date-picker/components/common/time-input-row.d.ts +20 -0
- package/dist/components/date-picker/components/common/time-input-row.js +65 -0
- package/dist/components/date-picker/components/common/time-panel.d.ts +6 -0
- package/dist/components/date-picker/components/common/time-panel.js +86 -0
- package/dist/components/date-picker/components/common/year-view.d.ts +8 -0
- package/dist/components/date-picker/components/common/year-view.js +36 -0
- package/dist/components/date-picker/components/picker-focus-context.d.ts +21 -0
- package/dist/components/date-picker/components/picker-focus-context.js +16 -0
- package/dist/components/date-picker/components/range/range-panel.d.ts +33 -0
- package/dist/components/date-picker/components/range/range-panel.js +101 -0
- package/dist/components/date-picker/components/range/range-shell.d.ts +6 -0
- package/dist/components/date-picker/components/range/range-shell.js +110 -0
- package/dist/components/date-picker/components/single/picker-shell.d.ts +6 -0
- package/dist/components/date-picker/components/single/picker-shell.js +109 -0
- package/dist/components/date-picker/date-picker.d.ts +6 -0
- package/dist/components/date-picker/date-picker.js +76 -0
- package/dist/components/date-picker/date-picker.types.d.ts +543 -0
- package/dist/components/date-picker/date-picker.types.js +5 -0
- package/dist/components/date-picker/date-range-picker.d.ts +5 -0
- package/dist/components/date-picker/date-range-picker.js +103 -0
- package/dist/components/date-picker/date-time-picker.d.ts +6 -0
- package/dist/components/date-picker/date-time-picker.js +181 -0
- package/dist/components/date-picker/date-time-range-picker.d.ts +6 -0
- package/dist/components/date-picker/date-time-range-picker.js +157 -0
- package/dist/components/date-picker/hooks/date-disabled.d.ts +27 -0
- package/dist/components/date-picker/hooks/date-disabled.js +60 -0
- package/dist/components/date-picker/hooks/time-utils.d.ts +17 -0
- package/dist/components/date-picker/hooks/time-utils.js +14 -0
- package/dist/components/date-picker/hooks/use-calendar.d.ts +12 -0
- package/dist/components/date-picker/hooks/use-calendar.js +28 -0
- package/dist/components/date-picker/hooks/use-date-parser.d.ts +17 -0
- package/dist/components/date-picker/hooks/use-date-parser.js +16 -0
- package/dist/components/date-picker/hooks/use-grid-keyboard.d.ts +22 -0
- package/dist/components/date-picker/hooks/use-grid-keyboard.js +74 -0
- package/dist/components/date-picker/hooks/use-range-draft.d.ts +61 -0
- package/dist/components/date-picker/hooks/use-range-draft.js +84 -0
- package/dist/components/date-picker/hooks/use-range-session.d.ts +14 -0
- package/dist/components/date-picker/hooks/use-range-session.js +11 -0
- package/dist/components/date-picker/hooks/use-resolved-format.d.ts +15 -0
- package/dist/components/date-picker/hooks/use-resolved-format.js +25 -0
- package/dist/components/date-picker/index.d.ts +21 -0
- package/dist/components/date-picker/index.js +15 -0
- package/dist/components/date-picker/styles/calendar-header.module.css.js +14 -0
- package/dist/components/date-picker/styles/calendar-panel.module.css.js +12 -0
- package/dist/components/date-picker/styles/date-cell.module.css.js +8 -0
- package/dist/components/date-picker/styles/month-view.module.css.js +12 -0
- package/dist/components/date-picker/styles/panel-layout.module.css.js +12 -0
- package/dist/components/date-picker/styles/picker-footer.module.css.js +10 -0
- package/dist/components/date-picker/styles/picker-shell.module.css.js +12 -0
- package/dist/components/date-picker/styles/range-panel.module.css.js +12 -0
- package/dist/components/date-picker/styles/time-column.module.css.js +10 -0
- package/dist/components/date-picker/styles/time-input-row.module.css.js +16 -0
- package/dist/components/date-picker/styles/time-panel.module.css.js +8 -0
- package/dist/components/date-picker/styles/year-view.module.css.js +10 -0
- package/dist/components/date-picker/time-picker.d.ts +6 -0
- package/dist/components/date-picker/time-picker.js +81 -0
- package/dist/components/date-picker/time-range-picker.d.ts +6 -0
- package/dist/components/date-picker/time-range-picker.js +135 -0
- package/dist/components/drawer/drawer-events.d.ts +28 -0
- package/dist/components/drawer/drawer-events.js +14 -0
- package/dist/components/drawer/drawer.d.ts +33 -0
- package/dist/components/drawer/drawer.js +86 -0
- package/dist/components/drawer/drawer.module.css.js +34 -0
- package/dist/components/drawer/drawes.d.ts +4 -0
- package/dist/components/drawer/drawes.js +82 -0
- package/dist/components/drawer/index.d.ts +4 -0
- package/dist/components/drawer/index.js +9 -0
- package/dist/components/filter/filter-popover.d.ts +11 -0
- package/dist/components/filter/filter-popover.js +53 -0
- package/dist/components/filter/filter.d.ts +5 -0
- package/dist/components/filter/filter.js +29 -0
- package/dist/components/filter/filter.module.css.js +12 -0
- package/dist/components/filter/filter.types.d.ts +27 -0
- package/dist/components/filter/filter.types.js +1 -0
- package/dist/components/filter/icon-filter.d.ts +6 -0
- package/dist/components/filter/icon-filter.js +25 -0
- package/dist/components/filter/index.d.ts +4 -0
- package/dist/components/filter/index.js +9 -0
- package/dist/components/filter/multi-filter.d.ts +5 -0
- package/dist/components/filter/multi-filter.js +52 -0
- package/dist/components/flex/flex.d.ts +9 -0
- package/dist/components/flex/flex.js +28 -0
- package/dist/components/flex/flex.module.css.js +8 -0
- package/dist/components/flex/index.d.ts +2 -0
- package/dist/components/flex/index.js +5 -0
- package/dist/components/flex/layout.types.d.ts +69 -0
- package/dist/components/form-wrapper/form-item-wrapper-defaults-context.d.ts +10 -0
- package/dist/components/form-wrapper/form-item-wrapper-defaults-context.js +19 -0
- package/dist/components/form-wrapper/form-item-wrapper.d.ts +5 -0
- package/dist/components/form-wrapper/form-item-wrapper.js +111 -0
- package/dist/components/form-wrapper/form-item-wrapper.module.css.js +28 -0
- package/dist/components/form-wrapper/form-wrapper.types.d.ts +15 -0
- package/dist/components/form-wrapper/index.d.ts +3 -0
- package/dist/components/form-wrapper/index.js +8 -0
- package/dist/components/group/group.d.ts +8 -0
- package/dist/components/group/group.js +36 -0
- package/dist/components/group/group.module.css.js +8 -0
- package/dist/components/group/index.d.ts +1 -0
- package/dist/components/group/index.js +5 -0
- package/dist/components/icon-button/icon-button.d.ts +20 -0
- package/dist/components/icon-button/icon-button.js +20 -0
- package/dist/components/icon-button/icon-button.module.css.js +8 -0
- package/dist/components/icon-button/icon-button.types.d.ts +7 -0
- package/dist/components/icon-button/index.d.ts +2 -0
- package/dist/components/icon-button/index.js +5 -0
- package/dist/components/link-button/index.d.ts +1 -0
- package/dist/components/link-button/index.js +5 -0
- package/dist/components/link-button/link-button.d.ts +31 -0
- package/dist/components/link-button/link-button.js +31 -0
- package/dist/components/link-icon-button/index.d.ts +1 -0
- package/dist/components/link-icon-button/index.js +5 -0
- package/dist/components/link-icon-button/link-icon-button.d.ts +37 -0
- package/dist/components/link-icon-button/link-icon-button.js +30 -0
- package/dist/components/menu/index.d.ts +2 -0
- package/dist/components/menu/index.js +5 -0
- package/dist/components/menu/menu.d.ts +33 -0
- package/dist/components/menu/menu.js +17 -0
- package/dist/components/menu/menu.types.d.ts +46 -0
- package/dist/components/message/index.d.ts +2 -0
- package/dist/components/message/index.js +5 -0
- package/dist/components/message/message.d.ts +2 -0
- package/dist/components/message/message.js +42 -0
- package/dist/components/message/message.module.css.js +14 -0
- package/dist/components/message/message.types.d.ts +7 -0
- package/dist/components/message/messages.d.ts +10 -0
- package/dist/components/message/messages.js +37 -0
- package/dist/components/modal/index.d.ts +2 -0
- package/dist/components/modal/index.js +5 -0
- package/dist/components/modal/modal.d.ts +6 -0
- package/dist/components/modal/modal.js +51 -0
- package/dist/components/modal/modal.module.css.js +10 -0
- package/dist/components/multi-select/base-multi-select.d.ts +3 -0
- package/dist/components/multi-select/base-multi-select.js +100 -0
- package/dist/components/multi-select/index.d.ts +1 -0
- package/dist/components/multi-select/index.js +5 -0
- package/dist/components/multi-select/multi-select-input.d.ts +29 -0
- package/dist/components/multi-select/multi-select-input.js +74 -0
- package/dist/components/multi-select/multi-select.d.ts +28 -0
- package/dist/components/multi-select/multi-select.js +34 -0
- package/dist/components/multi-select/multi-select.mobile.d.ts +4 -0
- package/dist/components/multi-select/multi-select.mobile.js +59 -0
- package/dist/components/multi-select/multi-select.types.d.ts +56 -0
- package/dist/components/multi-select/multi-select.types.js +1 -0
- package/dist/components/multi-select/styles/base-multi-select.module.css.js +16 -0
- package/dist/components/notifications/index.d.ts +3 -0
- package/dist/components/notifications/index.js +7 -0
- package/dist/components/notifications/notification.d.ts +11 -0
- package/dist/components/notifications/notification.js +79 -0
- package/dist/components/notifications/notification.module.css.js +14 -0
- package/dist/components/notifications/notification.types.d.ts +25 -0
- package/dist/components/notifications/notifications.d.ts +42 -0
- package/dist/components/notifications/notifications.js +42 -0
- package/dist/components/number-input/index.d.ts +2 -0
- package/dist/components/number-input/index.js +5 -0
- package/dist/components/number-input/number-input.d.ts +8 -0
- package/dist/components/number-input/number-input.js +161 -0
- package/dist/components/number-input/number-input.module.css.js +8 -0
- package/dist/components/number-input/number-input.types.d.ts +65 -0
- package/dist/components/paper/index.d.ts +1 -0
- package/dist/components/paper/index.js +5 -0
- package/dist/components/paper/paper.d.ts +7 -0
- package/dist/components/paper/paper.js +15 -0
- package/dist/components/paper/paper.module.css.js +8 -0
- package/dist/components/password-input/index.d.ts +2 -0
- package/dist/components/password-input/index.js +5 -0
- package/dist/components/password-input/password-input.d.ts +15 -0
- package/dist/components/password-input/password-input.js +32 -0
- package/dist/components/popover/hooks.d.ts +17 -0
- package/dist/components/popover/hooks.js +131 -0
- package/dist/components/popover/index.d.ts +8 -0
- package/dist/components/popover/index.js +13 -0
- package/dist/components/popover/popover-context.d.ts +4 -0
- package/dist/components/popover/popover-context.js +16 -0
- package/dist/components/popover/popover-dropdown.d.ts +3 -0
- package/dist/components/popover/popover-dropdown.js +149 -0
- package/dist/components/popover/popover-stack.d.ts +10 -0
- package/dist/components/popover/popover-stack.js +24 -0
- package/dist/components/popover/popover-target.d.ts +3 -0
- package/dist/components/popover/popover-target.js +55 -0
- package/dist/components/popover/popover.d.ts +3 -0
- package/dist/components/popover/popover.js +175 -0
- package/dist/components/popover/popover.types.d.ts +211 -0
- package/dist/components/popover/styles/popover.module.css.js +12 -0
- package/dist/components/radio/index.d.ts +8 -0
- package/dist/components/radio/index.js +12 -0
- package/dist/components/radio/radio-group.d.ts +18 -0
- package/dist/components/radio/radio-group.js +54 -0
- package/dist/components/radio/radio-variables.module.css.js +8 -0
- package/dist/components/radio/radio.d.ts +17 -0
- package/dist/components/radio/radio.js +56 -0
- package/dist/components/radio/radio.module.css.js +14 -0
- package/dist/components/radio/radio.types.d.ts +59 -0
- package/dist/components/select/index.d.ts +3 -0
- package/dist/components/select/index.js +5 -0
- package/dist/components/select/select.d.ts +15 -0
- package/dist/components/select/select.js +48 -0
- package/dist/components/select/select.mobile.d.ts +12 -0
- package/dist/components/select/select.mobile.js +53 -0
- package/dist/components/stack/index.d.ts +1 -0
- package/dist/components/stack/index.js +5 -0
- package/dist/components/stack/stack.d.ts +6 -0
- package/dist/components/stack/stack.js +10 -0
- package/dist/components/sticky-box.d.ts +2 -0
- package/dist/components/sticky-box.js +10 -0
- package/dist/components/switch/index.d.ts +4 -0
- package/dist/components/switch/index.js +7 -0
- package/dist/components/switch/switch-group.d.ts +26 -0
- package/dist/components/switch/switch-group.js +12 -0
- package/dist/components/switch/switch.d.ts +27 -0
- package/dist/components/switch/switch.js +23 -0
- package/dist/components/switch/switch.module.css.js +7 -0
- package/dist/components/tab/index.d.ts +7 -0
- package/dist/components/tab/index.js +13 -0
- package/dist/components/tab/styles/tabs-variables.module.css.js +8 -0
- package/dist/components/tab/styles/tabs.module.css.js +22 -0
- package/dist/components/tab/subs/tabs-link-tab.d.ts +10 -0
- package/dist/components/tab/subs/tabs-link-tab.js +28 -0
- package/dist/components/tab/subs/tabs-list.d.ts +6 -0
- package/dist/components/tab/subs/tabs-list.js +59 -0
- package/dist/components/tab/subs/tabs-panel.d.ts +6 -0
- package/dist/components/tab/subs/tabs-panel.js +40 -0
- package/dist/components/tab/subs/tabs-tab.d.ts +6 -0
- package/dist/components/tab/subs/tabs-tab.js +52 -0
- package/dist/components/tab/tabs-context.d.ts +3 -0
- package/dist/components/tab/tabs-context.js +13 -0
- package/dist/components/tab/tabs.d.ts +20 -0
- package/dist/components/tab/tabs.js +83 -0
- package/dist/components/tab/tabs.types.d.ts +107 -0
- package/dist/components/tab/use-tabs-data-props.d.ts +9 -0
- package/dist/components/tab/use-tabs-data-props.js +12 -0
- package/dist/components/tab/use-tabs-keyboard-navigation.d.ts +13 -0
- package/dist/components/tab/use-tabs-keyboard-navigation.js +44 -0
- package/dist/components/table/index.d.ts +3 -0
- package/dist/components/table/index.js +16 -0
- package/dist/components/table/table.d.ts +23 -0
- package/dist/components/table/table.js +159 -0
- package/dist/components/table/table.module.css.js +56 -0
- package/dist/components/table/table.types.d.ts +55 -0
- package/dist/components/table-pagination/index.d.ts +3 -0
- package/dist/components/table-pagination/index.js +8 -0
- package/dist/components/table-pagination/pagination.d.ts +10 -0
- package/dist/components/table-pagination/pagination.js +115 -0
- package/dist/components/table-pagination/pagination.module.css.js +14 -0
- package/dist/components/table-pagination/table-pagination.d.ts +15 -0
- package/dist/components/table-pagination/table-pagination.js +123 -0
- package/dist/components/table-pagination/table-pagination.module.css.js +18 -0
- package/dist/components/tag/closable-tag.d.ts +2 -0
- package/dist/components/tag/closable-tag.js +35 -0
- package/dist/components/tag/icon-tag.d.ts +2 -0
- package/dist/components/tag/icon-tag.js +36 -0
- package/dist/components/tag/index.d.ts +5 -0
- package/dist/components/tag/index.js +11 -0
- package/dist/components/tag/link-tag.d.ts +11 -0
- package/dist/components/tag/link-tag.js +31 -0
- package/dist/components/tag/styles/tag-variables.module.css.js +8 -0
- package/dist/components/tag/styles/tag.module.css.js +18 -0
- package/dist/components/tag/tag.d.ts +28 -0
- package/dist/components/tag/tag.js +40 -0
- package/dist/components/tag/tag.types.d.ts +72 -0
- package/dist/components/text/index.d.ts +2 -0
- package/dist/components/text/index.js +5 -0
- package/dist/components/text/text.d.ts +3 -0
- package/dist/components/text/text.js +36 -0
- package/dist/components/text/text.module.css.js +8 -0
- package/dist/components/text/text.types.d.ts +11 -0
- package/dist/components/text-area/index.d.ts +2 -0
- package/dist/components/text-area/index.js +5 -0
- package/dist/components/text-area/text-area.d.ts +9 -0
- package/dist/components/text-area/text-area.js +125 -0
- package/dist/components/text-area/text-area.module.css.js +22 -0
- package/dist/components/text-area/text-area.types.d.ts +46 -0
- package/dist/components/text-input/index.d.ts +2 -0
- package/dist/components/text-input/index.js +5 -0
- package/dist/components/text-input/text-input.d.ts +14 -0
- package/dist/components/text-input/text-input.js +24 -0
- package/dist/components/tooltip/floating-arrow.d.ts +13 -0
- package/dist/components/tooltip/floating-arrow.js +40 -0
- package/dist/components/tooltip/get-arrow-position-styles.d.ts +11 -0
- package/dist/components/tooltip/get-arrow-position-styles.js +63 -0
- package/dist/components/tooltip/index.d.ts +54 -0
- package/dist/components/tooltip/index.js +150 -0
- package/dist/components/tooltip/styles.module.css.js +10 -0
- package/dist/components/tooltip/types.d.ts +13 -0
- package/dist/components/tooltip/use-merged-events.d.ts +18 -0
- package/dist/components/tooltip/use-merged-events.js +22 -0
- package/dist/components/tooltip/use-tooltip-trigger.d.ts +13 -0
- package/dist/components/tooltip/use-tooltip-trigger.js +59 -0
- package/dist/components/tooltip/utils.d.ts +4 -0
- package/dist/components/tooltip/utils.js +35 -0
- package/dist/components/tree/hooks/use-custom-click-behavior-feature.d.ts +16 -0
- package/dist/components/tree/hooks/use-custom-click-behavior-feature.js +125 -0
- package/dist/components/tree/hooks/use-tree-animation.d.ts +12 -0
- package/dist/components/tree/hooks/use-tree-animation.js +111 -0
- package/dist/components/tree/hooks/use-tree-config.d.ts +22 -0
- package/dist/components/tree/hooks/use-tree-config.js +96 -0
- package/dist/components/tree/hooks/use-tree-search.d.ts +19 -0
- package/dist/components/tree/hooks/use-tree-search.js +57 -0
- package/dist/components/tree/hooks/use-tree-value.d.ts +16 -0
- package/dist/components/tree/hooks/use-tree-value.js +37 -0
- package/dist/components/tree/hooks/use-tree.d.ts +13 -0
- package/dist/components/tree/hooks/use-tree.js +111 -0
- package/dist/components/tree/index.d.ts +7 -0
- package/dist/components/tree/index.js +16 -0
- package/dist/components/tree/styles/tree.module.css.js +44 -0
- package/dist/components/tree/tree-content.d.ts +15 -0
- package/dist/components/tree/tree-content.js +77 -0
- package/dist/components/tree/tree-context.d.ts +19 -0
- package/dist/components/tree/tree-context.js +13 -0
- package/dist/components/tree/tree-node-list.d.ts +9 -0
- package/dist/components/tree/tree-node-list.js +21 -0
- package/dist/components/tree/tree-node.d.ts +11 -0
- package/dist/components/tree/tree-node.js +137 -0
- package/dist/components/tree/tree.d.ts +20 -0
- package/dist/components/tree/tree.js +22 -0
- package/dist/components/tree/tree.types.d.ts +126 -0
- package/dist/components/tree-select/index.d.ts +2 -0
- package/dist/components/tree-select/index.js +5 -0
- package/dist/components/tree-select/styles/tree-select.module.css.js +20 -0
- package/dist/components/tree-select/tree-select-dropdown.d.ts +9 -0
- package/dist/components/tree-select/tree-select-dropdown.js +36 -0
- package/dist/components/tree-select/tree-select-target.d.ts +18 -0
- package/dist/components/tree-select/tree-select-target.js +116 -0
- package/dist/components/tree-select/tree-select.d.ts +21 -0
- package/dist/components/tree-select/tree-select.js +201 -0
- package/dist/components/tree-select/tree-select.types.d.ts +39 -0
- package/dist/components/unstyled-button/index.d.ts +1 -0
- package/dist/components/unstyled-button/index.js +5 -0
- package/dist/components/unstyled-button/unstyled-button.d.ts +3 -0
- package/dist/components/unstyled-button/unstyled-button.js +19 -0
- package/dist/components/unstyled-button/unstyled-button.module.css.js +8 -0
- package/dist/components/virtualized-tree-select/index.d.ts +2 -0
- package/dist/components/virtualized-tree-select/index.js +5 -0
- package/dist/components/virtualized-tree-select/virtualized-tree-select.d.ts +25 -0
- package/dist/components/virtualized-tree-select/virtualized-tree-select.js +253 -0
- package/dist/components/virtualized-tree-select/virtualized-tree-select.module.css.js +20 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +53 -0
- package/dist/index.js +214 -0
- package/dist/locale/ar.d.ts +2 -0
- package/dist/locale/ar.js +58 -0
- package/dist/locale/en.d.ts +2 -0
- package/dist/locale/en.js +58 -0
- package/dist/locale/index.d.ts +6 -0
- package/dist/locale/index.js +15 -0
- package/dist/locale/ko.d.ts +2 -0
- package/dist/locale/ko.js +58 -0
- package/dist/locale/types.d.ts +55 -0
- package/dist/locale/types.js +8 -0
- package/dist/locale/zh-Hans.d.ts +2 -0
- package/dist/locale/zh-Hans.js +58 -0
- package/dist/locale/zh-Hant.d.ts +2 -0
- package/dist/locale/zh-Hant.js +58 -0
- package/dist/node_modules/.pnpm/react-number-format@5.4.5_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/react-number-format/dist/react-number-format.es.js +572 -0
- package/dist/provider/hooks.d.ts +24 -0
- package/dist/provider/hooks.js +26 -0
- package/dist/provider/index.d.ts +7 -0
- package/dist/provider/index.js +16 -0
- package/dist/provider/ui-context.d.ts +16 -0
- package/dist/provider/ui-context.js +14 -0
- package/dist/provider/ui-link.d.ts +22 -0
- package/dist/provider/ui-link.js +10 -0
- package/dist/provider/ui-provider.d.ts +19 -0
- package/dist/provider/ui-provider.js +21 -0
- package/package.json +198 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export type PopoverSide = 'top' | 'right' | 'bottom' | 'left';
|
|
3
|
+
export type PopoverPlacement = 'start' | 'end';
|
|
4
|
+
export type PopoverPosition = PopoverSide | `${PopoverSide}-${PopoverPlacement}`;
|
|
5
|
+
/** `'none'`:不注入任何事件处理,由外层组件完全控制开关(Combobox 等受控场景) */
|
|
6
|
+
export type PopoverTrigger = 'click' | 'hover' | 'none';
|
|
7
|
+
export type PopoverStrategy = 'absolute' | 'fixed';
|
|
8
|
+
export type PopoverRadius = 'xs' | 'sm' | 'md' | 'lg';
|
|
9
|
+
export interface PopoverProps {
|
|
10
|
+
/**
|
|
11
|
+
* 需要包裹的子节点,即 `<Popover.Target>` 和 `<Popover.Dropdown>`
|
|
12
|
+
*/
|
|
13
|
+
children: React.ReactNode;
|
|
14
|
+
/**
|
|
15
|
+
* 弹出方向
|
|
16
|
+
* @default 'bottom'
|
|
17
|
+
*/
|
|
18
|
+
position?: PopoverPosition;
|
|
19
|
+
/**
|
|
20
|
+
* 弹出框与触发元素的间距(px)
|
|
21
|
+
* @default 8
|
|
22
|
+
*/
|
|
23
|
+
offset?: number;
|
|
24
|
+
/**
|
|
25
|
+
* 受控模式:是否展开
|
|
26
|
+
*/
|
|
27
|
+
opened?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* 非受控模式:初始是否展开
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
defaultOpened?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* 展开状态变更回调
|
|
35
|
+
*/
|
|
36
|
+
onOpenChange?: (opened: boolean) => void;
|
|
37
|
+
/**
|
|
38
|
+
* 是否禁用
|
|
39
|
+
* @default false
|
|
40
|
+
*/
|
|
41
|
+
disabled?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* 是否显示箭头
|
|
44
|
+
* @default false
|
|
45
|
+
*/
|
|
46
|
+
withArrow?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* 箭头尺寸(px)
|
|
49
|
+
* @default 8
|
|
50
|
+
*/
|
|
51
|
+
arrowSize?: number;
|
|
52
|
+
/**
|
|
53
|
+
* 触发方式
|
|
54
|
+
* hover方式无法支持无障碍,请慎用
|
|
55
|
+
* @default 'click'
|
|
56
|
+
*/
|
|
57
|
+
trigger?: PopoverTrigger;
|
|
58
|
+
/**
|
|
59
|
+
* 点击外部区域时关闭
|
|
60
|
+
* @default true
|
|
61
|
+
*/
|
|
62
|
+
closeOnClickOutside?: boolean;
|
|
63
|
+
/**
|
|
64
|
+
* 按下 Escape 键时关闭当前栈顶浮层;嵌套时保留外层浮层。
|
|
65
|
+
* @default true
|
|
66
|
+
*/
|
|
67
|
+
closeOnEscape?: boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Escape 关闭后恢复焦点的方法;默认直接聚焦 Popover Target。
|
|
70
|
+
* 当 Target 的可聚焦节点会随关闭状态变化时,可传入延迟恢复方法。
|
|
71
|
+
*/
|
|
72
|
+
restoreFocus?: () => void;
|
|
73
|
+
/**
|
|
74
|
+
* CSS 定位策略
|
|
75
|
+
* @default 'absolute'
|
|
76
|
+
*/
|
|
77
|
+
strategy?: PopoverStrategy;
|
|
78
|
+
/**
|
|
79
|
+
* 打开时将焦点送到指定元素(click 触发模式下生效)。
|
|
80
|
+
* 不传时默认落到浮层内 DOM 顺序第一个可聚焦元素;若 ref.current 为 null
|
|
81
|
+
* 也会回退到该默认行为。典型用法:日历默认聚焦到当前日期格而非"上一月"按钮。
|
|
82
|
+
*/
|
|
83
|
+
initialFocusRef?: React.RefObject<HTMLElement | null>;
|
|
84
|
+
/**
|
|
85
|
+
* 是否在浮层内做 Tab 焦点陷阱:
|
|
86
|
+
* Tab 到最后一个可聚焦元素后继续按 Tab 会循环回第一个,Shift+Tab 反之。
|
|
87
|
+
* 用于复合内容浮层(日期 / 时间选择器等),避免键盘用户 Tab 出浮层后迷路。
|
|
88
|
+
* @default false
|
|
89
|
+
*/
|
|
90
|
+
trapFocus?: boolean;
|
|
91
|
+
/**
|
|
92
|
+
* 阻止浮层打开时自动将焦点转移到浮层内部。
|
|
93
|
+
* 使用 `aria-activedescendant` 模式的组件(如 Combobox)需要焦点始终留在触发区,
|
|
94
|
+
* 必须将此项设为 `true`。
|
|
95
|
+
* @default false
|
|
96
|
+
*/
|
|
97
|
+
preventAutoFocus?: boolean;
|
|
98
|
+
/**
|
|
99
|
+
* 浮层 `role="dialog"` 的可访问名字:指向含标题的元素 id。
|
|
100
|
+
* 不传时读屏只会报"dialog"而没有上下文;建议为复合浮层提供。
|
|
101
|
+
*/
|
|
102
|
+
'aria-labelledby'?: string;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* 所有 HTML 属性均可传入。`onClick` 会与内部开关逻辑合并执行(内部先,用户后);
|
|
106
|
+
* 其余属性直接覆盖内部默认值(如 `aria-haspopup`、`aria-label` 等)。
|
|
107
|
+
*/
|
|
108
|
+
export interface PopoverTargetProps extends Omit<React.HTMLAttributes<HTMLElement>, 'children'> {
|
|
109
|
+
/**
|
|
110
|
+
* 触发弹出框的元素(应该是一个有效的 DOM 元素)
|
|
111
|
+
*/
|
|
112
|
+
children: React.ReactNode;
|
|
113
|
+
ref?: React.Ref<any>;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* 除以下自定义 props 外,所有标准 HTML 属性均可传入并覆盖浮层容器的内部默认值。
|
|
117
|
+
* 例如:传入 `role={undefined}` 可移除默认的 `role="dialog"`(适用于 Combobox 等场景)。
|
|
118
|
+
*/
|
|
119
|
+
export interface PopoverDropdownProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {
|
|
120
|
+
/**
|
|
121
|
+
* 弹出框内容
|
|
122
|
+
*/
|
|
123
|
+
children: React.ReactNode;
|
|
124
|
+
/**
|
|
125
|
+
* 箭头自定义 className
|
|
126
|
+
*/
|
|
127
|
+
arrowClassName?: string;
|
|
128
|
+
/**
|
|
129
|
+
* 浮层 z-index
|
|
130
|
+
* 默认使用项目 Popover 层级 300;嵌套浮层在父层实际层级上递增。
|
|
131
|
+
* @default 300
|
|
132
|
+
*/
|
|
133
|
+
zIndex?: number;
|
|
134
|
+
/**
|
|
135
|
+
* 弹出框宽度
|
|
136
|
+
*/
|
|
137
|
+
width?: number | string;
|
|
138
|
+
/**
|
|
139
|
+
* 弹出框最大高度。number 按 px 处理。
|
|
140
|
+
* 仅设置 max-height、不附带 overflow——内容滚动请由内部滚动容器处理,
|
|
141
|
+
* 或自行通过 className 配置 overflow(与 withArrow 同用时箭头会被裁切)。
|
|
142
|
+
*/
|
|
143
|
+
maxHeight?: number | string;
|
|
144
|
+
/**
|
|
145
|
+
* 是否自动设置弹出框宽度等于触发元素的宽度
|
|
146
|
+
* @default false
|
|
147
|
+
*/
|
|
148
|
+
matchTargetWidth?: boolean;
|
|
149
|
+
/**
|
|
150
|
+
* 弹出框圆角
|
|
151
|
+
* @default 'sm'
|
|
152
|
+
*/
|
|
153
|
+
radius?: PopoverRadius;
|
|
154
|
+
/**
|
|
155
|
+
* 是否将浮层渲染到 `Portal` 中(挂到 body)。
|
|
156
|
+
* 嵌套 Popover 会自动登记 Portal 浮层关系,父层能够识别子浮层交互。
|
|
157
|
+
* @default true
|
|
158
|
+
*/
|
|
159
|
+
withinPortal?: boolean;
|
|
160
|
+
/**
|
|
161
|
+
* 关闭时是否保留浮层内容挂载。
|
|
162
|
+
* 适用于内容需要在首次打开前完成数据加载或副作用注册的场景。
|
|
163
|
+
* @default false
|
|
164
|
+
*/
|
|
165
|
+
keepMounted?: boolean;
|
|
166
|
+
ref?: React.Ref<HTMLDivElement>;
|
|
167
|
+
}
|
|
168
|
+
export interface PopoverContextValue {
|
|
169
|
+
opened: boolean;
|
|
170
|
+
setOpen: (next: boolean) => void;
|
|
171
|
+
toggle: () => void;
|
|
172
|
+
trigger: PopoverTrigger;
|
|
173
|
+
disabled: boolean;
|
|
174
|
+
id: string;
|
|
175
|
+
withArrow: boolean;
|
|
176
|
+
arrowSize: number;
|
|
177
|
+
x: number | null;
|
|
178
|
+
y: number | null;
|
|
179
|
+
strategy: PopoverStrategy;
|
|
180
|
+
resolvedSide: PopoverSide;
|
|
181
|
+
middlewareData: {
|
|
182
|
+
arrow?: {
|
|
183
|
+
x?: number;
|
|
184
|
+
y?: number;
|
|
185
|
+
};
|
|
186
|
+
hide?: {
|
|
187
|
+
referenceHidden?: boolean;
|
|
188
|
+
escaped?: boolean;
|
|
189
|
+
};
|
|
190
|
+
};
|
|
191
|
+
hoverTimerRef: React.MutableRefObject<number | undefined>;
|
|
192
|
+
referenceRef: React.RefObject<HTMLElement | null>;
|
|
193
|
+
floatingRef: React.RefObject<HTMLDivElement | null>;
|
|
194
|
+
arrowRef: React.RefObject<HTMLDivElement | null>;
|
|
195
|
+
setReference: (node: HTMLElement | null) => void;
|
|
196
|
+
setFloating: (node: HTMLDivElement | null) => void;
|
|
197
|
+
/** 当前 Popover 的逻辑嵌套深度,用于浮层层级和 Escape 栈排序 */
|
|
198
|
+
depth: number;
|
|
199
|
+
/** 将后代 Portal 浮层登记到当前 Popover 的交互与焦点范围中 */
|
|
200
|
+
registerNestedFloatingElement: (element: HTMLElement) => () => void;
|
|
201
|
+
/** 返回当前浮层及所有已登记后代浮层,用于外部点击与焦点判断 */
|
|
202
|
+
getFloatingScopeElements: () => HTMLElement[];
|
|
203
|
+
/** 外部传入的初始焦点目标;`usePopoverFocus` 有值时优先聚焦该元素 */
|
|
204
|
+
initialFocusRef?: React.RefObject<HTMLElement | null>;
|
|
205
|
+
/** 是否启用 Tab 焦点陷阱(由 `PopoverDropdown` 渲染哨兵节点实现) */
|
|
206
|
+
trapFocus: boolean;
|
|
207
|
+
/** 阻止浮层打开时自动将焦点转移到浮层内部(Combobox 等 aria-activedescendant 场景使用) */
|
|
208
|
+
preventAutoFocus: boolean;
|
|
209
|
+
/** dialog 的 `aria-labelledby` id;由 `PopoverDropdown` 写到 role="dialog" 元素上 */
|
|
210
|
+
ariaLabelledby?: string;
|
|
211
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const Radio: {
|
|
2
|
+
({ ref, ...props }: import("./radio.types").RadioProps): import("react").JSX.Element;
|
|
3
|
+
displayName: string;
|
|
4
|
+
} & {
|
|
5
|
+
Group: ({ ref, ...props }: import("./radio.types").RadioGroupProps) => import("react").JSX.Element;
|
|
6
|
+
};
|
|
7
|
+
export * from './radio.types';
|
|
8
|
+
export * from './radio-group';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { Radio as o } from "./radio.js";
|
|
3
|
+
import { RadioGroup as i } from "./radio-group.js";
|
|
4
|
+
import { useRadioContext as s } from "./radio-group.js";
|
|
5
|
+
const a = Object.assign(o, {
|
|
6
|
+
Group: i
|
|
7
|
+
});
|
|
8
|
+
export {
|
|
9
|
+
a as Radio,
|
|
10
|
+
i as RadioGroup,
|
|
11
|
+
s as useRadioContext
|
|
12
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { RadioContextValue, RadioGroupProps } from './radio.types';
|
|
3
|
+
export declare const useRadioContext: () => RadioContextValue | null;
|
|
4
|
+
/**
|
|
5
|
+
* RadioGroup 组件
|
|
6
|
+
*
|
|
7
|
+
* 用于管理一组 `Radio` 组件的状态,支持受控和非受控模式。
|
|
8
|
+
* 配合 `FormItemWrapper` 提供表单项的标签、必填、错误提示等功能。
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```tsx
|
|
12
|
+
* <RadioGroup label="选择项" value={value} onChange={setValue}>
|
|
13
|
+
* <Radio value="1" label="选项1" />
|
|
14
|
+
* <Radio value="2" label="选项2" />
|
|
15
|
+
* </RadioGroup>
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare const RadioGroup: ({ ref, ...props }: RadioGroupProps) => React.JSX.Element;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
3
|
+
import { useId as i, useUncontrolled as R } from "@mantine/hooks";
|
|
4
|
+
import { clsx as y } from "clsx";
|
|
5
|
+
import { useCallback as P, useMemo as V, useContext as F, createContext as G } from "react";
|
|
6
|
+
import { useFormWrapperProps as N } from "../../common/use-form-wrapper-props.js";
|
|
7
|
+
import { FormItemWrapper as W } from "../form-wrapper/form-item-wrapper.js";
|
|
8
|
+
import _ from "./radio.module.css.js";
|
|
9
|
+
const s = G(null), q = () => F(s), z = ({ ref: d, ...e }) => {
|
|
10
|
+
const o = i(e.id), { wrapProps: u, rest: c, outerDescribedBy: m, labelId: p } = N(
|
|
11
|
+
e,
|
|
12
|
+
o
|
|
13
|
+
), {
|
|
14
|
+
children: C,
|
|
15
|
+
value: b,
|
|
16
|
+
defaultValue: f,
|
|
17
|
+
onChange: h,
|
|
18
|
+
name: g,
|
|
19
|
+
id: j,
|
|
20
|
+
groupClassName: x
|
|
21
|
+
} = {
|
|
22
|
+
...c
|
|
23
|
+
}, a = i(g), [t, l] = R({
|
|
24
|
+
value: b,
|
|
25
|
+
defaultValue: f,
|
|
26
|
+
finalValue: "",
|
|
27
|
+
onChange: h
|
|
28
|
+
}), n = P(
|
|
29
|
+
(I) => {
|
|
30
|
+
l(I.currentTarget.value);
|
|
31
|
+
},
|
|
32
|
+
[l]
|
|
33
|
+
), v = V(
|
|
34
|
+
() => ({ name: a, value: t, onChange: n }),
|
|
35
|
+
[a, t, n]
|
|
36
|
+
);
|
|
37
|
+
return /* @__PURE__ */ r(W, { ...u, id: o, children: /* @__PURE__ */ r(s.Provider, { value: v, children: /* @__PURE__ */ r(
|
|
38
|
+
"div",
|
|
39
|
+
{
|
|
40
|
+
ref: d,
|
|
41
|
+
role: "radiogroup",
|
|
42
|
+
id: o,
|
|
43
|
+
"aria-label": e["aria-label"],
|
|
44
|
+
"aria-labelledby": p,
|
|
45
|
+
"aria-describedby": m,
|
|
46
|
+
className: y(_.radioGroup, x),
|
|
47
|
+
children: C
|
|
48
|
+
}
|
|
49
|
+
) }) });
|
|
50
|
+
};
|
|
51
|
+
export {
|
|
52
|
+
z as RadioGroup,
|
|
53
|
+
q as useRadioContext
|
|
54
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { RadioProps } from './radio.types';
|
|
3
|
+
/**
|
|
4
|
+
* 基础 Radio 组件
|
|
5
|
+
*
|
|
6
|
+
* 单选框组件,通常与 `RadioGroup` 配合使用。
|
|
7
|
+
* 支持单独使用,支持受控和非受控模式。
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* <Radio value="1" label="选项1" />
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export declare const Radio: {
|
|
15
|
+
({ ref, ...props }: RadioProps): React.JSX.Element;
|
|
16
|
+
displayName: string;
|
|
17
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsxs as R, jsx as n } from "react/jsx-runtime";
|
|
3
|
+
import { useId as j } from "@mantine/hooks";
|
|
4
|
+
import { clsx as e } from "clsx";
|
|
5
|
+
import { useRadioContext as v } from "./radio-group.js";
|
|
6
|
+
import w from "./radio-variables.module.css.js";
|
|
7
|
+
import s from "./radio.module.css.js";
|
|
8
|
+
const y = ({ ref: t, ...o }) => {
|
|
9
|
+
const {
|
|
10
|
+
id: m,
|
|
11
|
+
className: h,
|
|
12
|
+
wrapperClassName: p,
|
|
13
|
+
label: r,
|
|
14
|
+
checked: u,
|
|
15
|
+
onChange: C,
|
|
16
|
+
name: N,
|
|
17
|
+
value: l,
|
|
18
|
+
color: b = "brand",
|
|
19
|
+
labelClassName: f,
|
|
20
|
+
...x
|
|
21
|
+
} = o, a = v(), c = j(m), d = a ? a.value === l : u, g = (i) => {
|
|
22
|
+
a?.onChange(i), C?.(i);
|
|
23
|
+
}, k = a?.name ?? N;
|
|
24
|
+
return /* @__PURE__ */ R("div", { className: e(s.wrapper, p), children: [
|
|
25
|
+
/* @__PURE__ */ n(
|
|
26
|
+
"input",
|
|
27
|
+
{
|
|
28
|
+
...x,
|
|
29
|
+
"data-color": b,
|
|
30
|
+
ref: t,
|
|
31
|
+
type: "radio",
|
|
32
|
+
id: c,
|
|
33
|
+
name: k,
|
|
34
|
+
value: l,
|
|
35
|
+
checked: d,
|
|
36
|
+
onChange: g,
|
|
37
|
+
className: e(h, s.radio, w.radioVars),
|
|
38
|
+
"aria-checked": d
|
|
39
|
+
}
|
|
40
|
+
),
|
|
41
|
+
r && // eslint-disable-next-line jsx-a11y/label-has-for
|
|
42
|
+
/* @__PURE__ */ n(
|
|
43
|
+
"label",
|
|
44
|
+
{
|
|
45
|
+
htmlFor: c,
|
|
46
|
+
"data-disabled": o.disabled,
|
|
47
|
+
className: e(s.label, f),
|
|
48
|
+
children: r
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
] });
|
|
52
|
+
};
|
|
53
|
+
y.displayName = "Radio";
|
|
54
|
+
export {
|
|
55
|
+
y as Radio
|
|
56
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
const r = "_wrapper_4ugrz_2", a = "_radioGroup_4ugrz_7", o = "_radio_4ugrz_7", _ = "_label_4ugrz_78", e = {
|
|
3
|
+
wrapper: r,
|
|
4
|
+
radioGroup: a,
|
|
5
|
+
radio: o,
|
|
6
|
+
label: _
|
|
7
|
+
};
|
|
8
|
+
export {
|
|
9
|
+
e as default,
|
|
10
|
+
_ as label,
|
|
11
|
+
o as radio,
|
|
12
|
+
a as radioGroup,
|
|
13
|
+
r as wrapper
|
|
14
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { CommonColor, FormProps, InputWrapProps, RefProps } from '../../common/components.types';
|
|
3
|
+
export type RadioColor = Omit<CommonColor, 'gray'>;
|
|
4
|
+
export interface RadioGroupProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'defaultValue'>, InputWrapProps, FormProps, RefProps<HTMLDivElement> {
|
|
5
|
+
/**
|
|
6
|
+
* 当前选中的值(受控模式)
|
|
7
|
+
*/
|
|
8
|
+
value?: string;
|
|
9
|
+
/**
|
|
10
|
+
* 非受控状态下的默认值
|
|
11
|
+
*/
|
|
12
|
+
defaultValue?: string;
|
|
13
|
+
/**
|
|
14
|
+
* 原生 input 标签的 name 属性,如果不传内部会自动生成唯一的 id 作为 name,确保一组单选框互斥
|
|
15
|
+
*/
|
|
16
|
+
name?: string;
|
|
17
|
+
/**
|
|
18
|
+
* 选中值改变时的回调事件
|
|
19
|
+
*/
|
|
20
|
+
onChange?: (value: string) => void;
|
|
21
|
+
/**
|
|
22
|
+
* 内部一般是 Radio 组件
|
|
23
|
+
*/
|
|
24
|
+
children?: React.ReactNode;
|
|
25
|
+
/**
|
|
26
|
+
* 用于修改内部 Radio 列表的布局样式(如设置为 flex 布局)
|
|
27
|
+
*/
|
|
28
|
+
groupClassName?: string;
|
|
29
|
+
}
|
|
30
|
+
export interface RadioProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'color'>, RefProps<HTMLInputElement> {
|
|
31
|
+
/**
|
|
32
|
+
* 选择框右侧的文字描述
|
|
33
|
+
*/
|
|
34
|
+
label?: React.ReactNode;
|
|
35
|
+
/**
|
|
36
|
+
* 外层容器的自定义类名
|
|
37
|
+
*/
|
|
38
|
+
wrapperClassName?: string;
|
|
39
|
+
/**
|
|
40
|
+
* label 的自定义类名
|
|
41
|
+
*/
|
|
42
|
+
labelClassName?: string;
|
|
43
|
+
/** 颜色 */
|
|
44
|
+
color?: RadioColor;
|
|
45
|
+
}
|
|
46
|
+
export interface RadioContextValue {
|
|
47
|
+
/**
|
|
48
|
+
* 原生 input 标签的 name 属性。
|
|
49
|
+
*/
|
|
50
|
+
name: string;
|
|
51
|
+
/**
|
|
52
|
+
* 当前选中的值
|
|
53
|
+
*/
|
|
54
|
+
value: string | undefined;
|
|
55
|
+
/**
|
|
56
|
+
* input 改变的回传事件。
|
|
57
|
+
*/
|
|
58
|
+
onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
59
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SelectProps } from '../_inner/base-select/common/select.types';
|
|
2
|
+
/**
|
|
3
|
+
* 基础 Select 单选组件
|
|
4
|
+
*
|
|
5
|
+
* 提供了单选和搜索单选的功能。
|
|
6
|
+
* 会根据设备类型自动适配 Web 端的下拉框(Dropdown)或 Mobile 端的底部抽屉(BottomAction)。
|
|
7
|
+
* 支持 `FormItemWrapper` 提供的表单包裹功能(label, error, required 等)。
|
|
8
|
+
*
|
|
9
|
+
* 不传 `searchable` 时,选项数达到 `SEARCHABLE_OPTION_THRESHOLD` 会自动开启搜索;
|
|
10
|
+
* 显式传入的 `true` / `false` 优先级更高。
|
|
11
|
+
*/
|
|
12
|
+
export declare const Select: {
|
|
13
|
+
(props: SelectProps): import("react").JSX.Element;
|
|
14
|
+
displayName: string;
|
|
15
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
3
|
+
import { useId as f } from "@mantine/hooks";
|
|
4
|
+
import "../../provider/ui-context.js";
|
|
5
|
+
import "react";
|
|
6
|
+
import { useDeviceType as d } from "../../provider/hooks.js";
|
|
7
|
+
import { resolveSearchable as S } from "../_inner/base-select/common/searchable.js";
|
|
8
|
+
import { SearchSelect as u } from "../_inner/base-select/search-select/index.js";
|
|
9
|
+
import { SingleSelect as b } from "../_inner/base-select/single-select/single-select.js";
|
|
10
|
+
import { SingleSelectTarget as c } from "../_inner/base-select/target/single-select-target.js";
|
|
11
|
+
import { getFormProps as l } from "../base-input/util.js";
|
|
12
|
+
import { SelectMobile as g } from "./select.mobile.js";
|
|
13
|
+
const T = (e) => {
|
|
14
|
+
const { borderRadius: t = "full" } = e, { deviceType: n } = d(), a = n == "mobile", o = f(e.id), m = S(e.searchable, e.options);
|
|
15
|
+
return a ? /* @__PURE__ */ r(
|
|
16
|
+
g,
|
|
17
|
+
{
|
|
18
|
+
...e,
|
|
19
|
+
id: o,
|
|
20
|
+
popoverTitle: e.placeholder,
|
|
21
|
+
borderRadius: t,
|
|
22
|
+
...l(e, e.onClear),
|
|
23
|
+
searchable: m,
|
|
24
|
+
renderTarget: (i) => /* @__PURE__ */ r(c, { ...i })
|
|
25
|
+
}
|
|
26
|
+
) : m ? /* @__PURE__ */ r(
|
|
27
|
+
u,
|
|
28
|
+
{
|
|
29
|
+
...e,
|
|
30
|
+
id: o,
|
|
31
|
+
borderRadius: t,
|
|
32
|
+
...l(e, e.onClear)
|
|
33
|
+
}
|
|
34
|
+
) : /* @__PURE__ */ r(
|
|
35
|
+
b,
|
|
36
|
+
{
|
|
37
|
+
...e,
|
|
38
|
+
id: o,
|
|
39
|
+
...l(e, e.onClear),
|
|
40
|
+
borderRadius: t,
|
|
41
|
+
renderTarget: (i) => /* @__PURE__ */ r(c, { ...i })
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
T.displayName = "Select";
|
|
46
|
+
export {
|
|
47
|
+
T as Select
|
|
48
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SelectProps } from '../_inner/base-select/common/select.types';
|
|
2
|
+
export type SelectMobileProps = SelectProps & {
|
|
3
|
+
readonly renderTarget?: (props: SelectMobileProps) => React.ReactNode;
|
|
4
|
+
readonly popoverTitle?: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* 移动端 Select 内部实现
|
|
8
|
+
*
|
|
9
|
+
* 将选项列表渲染为底部动作面板(BottomAction)。
|
|
10
|
+
* 仅供内部或明确需要在移动端强制渲染时使用。
|
|
11
|
+
*/
|
|
12
|
+
export declare const SelectMobile: (props: SelectMobileProps) => import("react").JSX.Element;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
3
|
+
import { useUncontrolled as h } from "@mantine/hooks";
|
|
4
|
+
import { useFormWrapperProps as g } from "../../common/use-form-wrapper-props.js";
|
|
5
|
+
import "../../provider/ui-context.js";
|
|
6
|
+
import "react";
|
|
7
|
+
import { useLocale as v } from "../../provider/hooks.js";
|
|
8
|
+
import { BottomAction as y } from "../_inner/bottom-action/bottom-action.js";
|
|
9
|
+
import { FormItemWrapper as S } from "../form-wrapper/form-item-wrapper.js";
|
|
10
|
+
const L = (e) => {
|
|
11
|
+
const a = v(), { wrapProps: n, rest: c, outerDescribedBy: d } = g(
|
|
12
|
+
e,
|
|
13
|
+
e.id
|
|
14
|
+
), {
|
|
15
|
+
popoverTitle: o,
|
|
16
|
+
renderOption: m,
|
|
17
|
+
emptyState: C,
|
|
18
|
+
searchable: s,
|
|
19
|
+
...u
|
|
20
|
+
} = c, [l, f] = h({
|
|
21
|
+
value: e.value,
|
|
22
|
+
defaultValue: e.defaultValue,
|
|
23
|
+
finalValue: "",
|
|
24
|
+
onChange: e.onChange
|
|
25
|
+
}), b = e.options.find((t) => t.value === l)?.label ?? "", p = (t) => {
|
|
26
|
+
f(t);
|
|
27
|
+
};
|
|
28
|
+
return /* @__PURE__ */ i(
|
|
29
|
+
y,
|
|
30
|
+
{
|
|
31
|
+
renderOption: m,
|
|
32
|
+
selectType: "single",
|
|
33
|
+
value: l,
|
|
34
|
+
searchable: s,
|
|
35
|
+
title: o ?? a.pleaseSelect,
|
|
36
|
+
triggerAriaLabel: e["aria-label"] ?? o ?? a.pleaseSelect,
|
|
37
|
+
disabled: e.disabled,
|
|
38
|
+
actionItems: e.options.map((t) => ({ ...t })),
|
|
39
|
+
onClick: (t, r) => {
|
|
40
|
+
r.value != null && p(r.value);
|
|
41
|
+
},
|
|
42
|
+
children: /* @__PURE__ */ i(S, { ...n, id: e.id, children: e.renderTarget?.({
|
|
43
|
+
...u,
|
|
44
|
+
value: l,
|
|
45
|
+
displayValue: b,
|
|
46
|
+
"aria-describedby": d
|
|
47
|
+
}) })
|
|
48
|
+
}
|
|
49
|
+
);
|
|
50
|
+
};
|
|
51
|
+
export {
|
|
52
|
+
L as SelectMobile
|
|
53
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Stack } from './stack';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as e } from "react/jsx-runtime";
|
|
3
|
+
import { Flex as n } from "../flex/flex.js";
|
|
4
|
+
function m(t) {
|
|
5
|
+
const { gap: r = "md", ...o } = t;
|
|
6
|
+
return /* @__PURE__ */ e(n, { direction: "column", align: "stretch", gap: r, ...o });
|
|
7
|
+
}
|
|
8
|
+
export {
|
|
9
|
+
m as Stack
|
|
10
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as m } from "react/jsx-runtime";
|
|
3
|
+
import { useStickyBox as n } from "../common/use-sticky-box.js";
|
|
4
|
+
const x = (o) => {
|
|
5
|
+
const { offsetTop: t, offsetBottom: e, bottom: s, children: r, className: c, style: f } = o, i = n({ offsetTop: t, offsetBottom: e, bottom: s });
|
|
6
|
+
return /* @__PURE__ */ m("div", { className: c, style: f, ref: i, children: r });
|
|
7
|
+
};
|
|
8
|
+
export {
|
|
9
|
+
x as StickyBox
|
|
10
|
+
};
|