@choice-ui/react 1.4.3 → 1.4.6
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/dist/components/alert-dialog/dist/index.d.ts +20 -41
- package/dist/components/alert-dialog/dist/index.js +497 -0
- package/dist/components/alert-dialog/src/alert-dialog.js +1 -1
- package/dist/components/alert-dialog/src/hooks/use-alert-dialog.d.ts +1 -1
- package/dist/components/alert-dialog/src/index.d.ts +4 -5
- package/dist/components/alert-dialog/src/types.d.ts +11 -11
- package/dist/components/avatar/dist/index.js +4 -4
- package/dist/components/avatar/src/avatar.js +4 -4
- package/dist/components/badge/src/badge.js +2 -2
- package/dist/components/badge/src/index.d.ts +2 -1
- package/dist/components/button/dist/index.js +4 -4
- package/dist/components/button/src/button.js +4 -4
- package/dist/components/calendar/dist/index.d.ts +296 -296
- package/dist/components/calendar/dist/index.js +57 -56
- package/dist/components/calendar/src/date-range-input/date-range-input.d.ts +5 -5
- package/dist/components/calendar/src/time-calendar/time-calendar.d.ts +3 -3
- package/dist/components/calendar/src/time-calendar/time-calendar.js +2 -2
- package/dist/components/calendar/src/time-input/time-input.d.ts +9 -9
- package/dist/components/calendar/src/time-input/time-input.js +4 -4
- package/dist/components/calendar/src/types.d.ts +165 -165
- package/dist/components/calendar/src/utils/constants.js +32 -31
- package/dist/components/calendar/src/utils/date-comparisons.d.ts +34 -34
- package/dist/components/calendar/src/utils/locale.d.ts +12 -12
- package/dist/components/calendar/src/utils/month.d.ts +3 -3
- package/dist/components/calendar/src/utils/month.js +1 -1
- package/dist/components/calendar/src/utils/parsers/month-names.js +3 -3
- package/dist/components/calendar/src/utils/parsers/numeric-utils.d.ts +20 -20
- package/dist/components/calendar/src/utils/parsers/numeric-utils.js +8 -8
- package/dist/components/calendar/src/utils/parsers/parsers.d.ts +17 -17
- package/dist/components/calendar/src/utils/parsers/parsers.js +2 -2
- package/dist/components/calendar/src/utils/parsers/prediction.d.ts +7 -7
- package/dist/components/calendar/src/utils/parsers/relative-dates.js +6 -6
- package/dist/components/calendar/src/utils/quarter.d.ts +13 -13
- package/dist/components/calendar/src/utils/quarter.js +6 -6
- package/dist/components/calendar/src/utils/time.d.ts +8 -8
- package/dist/components/calendar/src/utils/year.d.ts +3 -3
- package/dist/components/calendar/src/utils/year.js +3 -3
- package/dist/components/checkbox/dist/index.d.ts +1 -12
- package/dist/components/checkbox/dist/index.js +9 -9
- package/dist/components/checkbox/src/checkbox-label.js +2 -2
- package/dist/components/checkbox/src/checkbox.js +6 -5
- package/dist/components/checkbox/src/context.js +1 -1
- package/dist/components/checkbox/src/index.d.ts +0 -3
- package/dist/components/chip/dist/index.js +6 -6
- package/dist/components/chip/src/chip.js +6 -6
- package/dist/components/chip/src/index.d.ts +2 -1
- package/dist/components/chips-input/dist/index.js +270 -0
- package/dist/components/chips-input/src/index.d.ts +2 -1
- package/dist/components/code-block/dist/index.d.ts +14 -32
- package/dist/components/code-block/dist/index.js +211 -147
- package/dist/components/code-block/src/code-block.d.ts +8 -1
- package/dist/components/code-block/src/code-block.js +14 -3
- package/dist/components/code-block/src/components/code-block-code.js +31 -5
- package/dist/components/code-block/src/components/code-block-header.js +45 -10
- package/dist/components/code-block/src/index.d.ts +3 -9
- package/dist/components/combobox/dist/index.d.ts +21 -2
- package/dist/components/combobox/dist/index.js +16 -13
- package/dist/components/combobox/src/combobox-trigger.d.ts +1 -1
- package/dist/components/combobox/src/combobox-trigger.js +7 -4
- package/dist/components/combobox/src/combobox.d.ts +20 -1
- package/dist/components/combobox/src/combobox.js +10 -10
- package/dist/components/command/dist/index.d.ts +65 -4
- package/dist/components/command/src/command.js +6 -5
- package/dist/components/command/src/components/command-divider.d.ts +4 -1
- package/dist/components/command/src/components/command-group.d.ts +16 -1
- package/dist/components/command/src/components/command-group.js +56 -54
- package/dist/components/command/src/components/command-input.js +3 -3
- package/dist/components/command/src/components/command-item.d.ts +1 -1
- package/dist/components/command/src/components/command-item.js +117 -115
- package/dist/components/command/src/components/command-loading.d.ts +8 -0
- package/dist/components/command/src/components/command-loading.js +1 -1
- package/dist/components/command/src/context/create-command-context.js +1 -1
- package/dist/components/command/src/hooks/use-schedule-layout-effect.d.ts +1 -1
- package/dist/components/command/src/hooks/use-value.js +2 -2
- package/dist/components/command/src/index.d.ts +16 -8
- package/dist/components/command/src/tv.d.ts +30 -0
- package/dist/components/command/src/tv.js +10 -0
- package/dist/components/command/src/types.d.ts +8 -0
- package/dist/components/command/src/utils/constants.d.ts +1 -1
- package/dist/components/command/src/utils/constants.js +1 -1
- package/dist/components/command/src/utils/helpers.d.ts +0 -1
- package/dist/components/command/src/utils/helpers.js +1 -3
- package/dist/components/command/src/utils/index.d.ts +1 -0
- package/dist/components/comments/src/comment-input/components/comment-input-mention-popover.js +4 -2
- package/dist/components/comments/src/comments.js +1 -1
- package/dist/components/context-input/dist/index.d.ts +47 -251
- package/dist/components/context-input/src/components/mention-menu.d.ts +5 -4
- package/dist/components/context-input/src/components/mention-menu.js +19 -4
- package/dist/components/context-input/src/components/mention.d.ts +2 -2
- package/dist/components/context-input/src/components/slate-editor.js +4 -2
- package/dist/components/context-input/src/context-input.js +31 -16
- package/dist/components/context-input/src/extensions/with-mentions.d.ts +1 -1
- package/dist/components/context-input/src/extensions/with-mentions.js +10 -9
- package/dist/components/context-input/src/hooks/use-context-input.js +87 -46
- package/dist/components/context-input/src/hooks/use-mentions.d.ts +11 -10
- package/dist/components/context-input/src/hooks/use-mentions.js +147 -128
- package/dist/components/context-input/src/index.d.ts +4 -5
- package/dist/components/context-input/src/types.d.ts +12 -12
- package/dist/components/context-input/src/utils/mention-spacing.d.ts +16 -16
- package/dist/components/context-input/src/utils/slate-converters.d.ts +6 -6
- package/dist/components/context-input/src/utils/slate-converters.js +2 -2
- package/dist/components/context-input/src/utils/text-extraction.js +7 -1
- package/dist/components/context-menu/src/context-menu.js +10 -4
- package/dist/components/dialog/dist/index.js +1 -2
- package/dist/components/dialog/src/dialog.js +0 -1
- package/dist/components/dialog/src/hooks/use-floating-dialog.js +1 -1
- package/dist/components/dialog/src/index.d.ts +3 -2
- package/dist/components/dropdown/dist/index.d.ts +1 -2
- package/dist/components/dropdown/dist/index.js +23 -8
- package/dist/components/dropdown/src/dropdown.d.ts +1 -2
- package/dist/components/dropdown/src/dropdown.js +23 -8
- package/dist/components/emoji-picker/dist/index.d.ts +33 -1
- package/dist/components/emoji-picker/dist/index.js +3 -1
- package/dist/components/emoji-picker/src/emoji-picker.d.ts +1 -1
- package/dist/components/emoji-picker/src/emoji-picker.js +3 -1
- package/dist/components/emoji-picker/src/index.d.ts +3 -1
- package/dist/components/form/dist/index.d.ts +93 -98
- package/dist/components/form/src/adapters/base-adapter.d.ts +3 -3
- package/dist/components/form/src/adapters/checkbox-adapter.d.ts +1 -1
- package/dist/components/form/src/adapters/chips-input-adapter.d.ts +9 -0
- package/dist/components/form/src/adapters/chips-input-adapter.js +38 -0
- package/dist/components/form/src/adapters/index.d.ts +8 -7
- package/dist/components/form/src/adapters/input-adapter.d.ts +1 -1
- package/dist/components/form/src/adapters/multi-select-adapter.d.ts +1 -1
- package/dist/components/form/src/adapters/numeric-input-adapter.d.ts +1 -1
- package/dist/components/form/src/adapters/raido-group-adapter.d.ts +1 -7
- package/dist/components/form/src/adapters/range-adapter.d.ts +1 -7
- package/dist/components/form/src/adapters/segmented-adapter.d.ts +1 -7
- package/dist/components/form/src/adapters/select-adapter.d.ts +1 -1
- package/dist/components/form/src/adapters/switch-adapter.d.ts +1 -1
- package/dist/components/form/src/adapters/textarea-adapter.d.ts +1 -1
- package/dist/components/form/src/index.d.ts +18 -16
- package/dist/components/form/src/index.js +16 -13
- package/dist/components/form/src/types.d.ts +58 -51
- package/dist/components/hint/dist/index.d.ts +10 -54
- package/dist/components/hint/src/components/info-content.d.ts +3 -5
- package/dist/components/hint/src/components/info-content.js +14 -6
- package/dist/components/hint/src/components/info-trigger.d.ts +2 -3
- package/dist/components/hint/src/components/info-trigger.js +4 -2
- package/dist/components/hint/src/context/hint-context.d.ts +2 -0
- package/dist/components/hint/src/context/hint-context.js +1 -1
- package/dist/components/hint/src/hint.d.ts +7 -7
- package/dist/components/hint/src/hint.js +24 -29
- package/dist/components/hint/src/hooks/use-hint.d.ts +4 -2
- package/dist/components/hint/src/hooks/use-hint.js +12 -4
- package/dist/components/hint/src/index.d.ts +3 -3
- package/dist/components/hint/src/tv.d.ts +33 -0
- package/dist/components/hint/src/tv.js +11 -0
- package/dist/components/icon-button/dist/index.js +2 -2
- package/dist/components/icon-button/src/icon-button.js +2 -2
- package/dist/components/index.d.ts +3 -0
- package/dist/components/input/dist/index.js +4 -4
- package/dist/components/input/src/input.js +3 -3
- package/dist/components/input/src/tv.js +1 -1
- package/dist/components/kbd/dist/index.js +4 -4
- package/dist/components/kbd/src/kbd.js +4 -4
- package/dist/components/label/dist/index.js +3 -3
- package/dist/components/label/src/tv.js +3 -3
- package/dist/components/link-button/dist/index.js +3 -3
- package/dist/components/link-button/src/link-button.js +3 -3
- package/dist/components/list/src/components/list-content.js +2 -2
- package/dist/components/list/src/components/list-divider.js +3 -3
- package/dist/components/list/src/components/list-item.js +5 -5
- package/dist/components/list/src/components/list-label.js +2 -2
- package/dist/components/list/src/components/list-sub-trigger.js +4 -4
- package/dist/components/list/src/list.js +2 -2
- package/dist/components/md-input/dist/index.d.ts +8 -104
- package/dist/components/md-input/src/components/extensions/md-input-mention.d.ts +6 -4
- package/dist/components/md-input/src/components/extensions/md-input-mention.js +23 -6
- package/dist/components/md-input/src/components/md-input-container.js +1 -0
- package/dist/components/md-input/src/components/md-input-editor.js +4 -1
- package/dist/components/md-input/src/components/md-input-footer.js +5 -1
- package/dist/components/md-input/src/components/toolbar/default-actions.d.ts +2 -2
- package/dist/components/md-input/src/components/toolbar/toolbar-button.d.ts +1 -0
- package/dist/components/md-input/src/components/toolbar/toolbar-button.js +1 -7
- package/dist/components/md-input/src/components/toolbar/toolbar.d.ts +2 -2
- package/dist/components/md-input/src/hooks/use-markdown-mentions.d.ts +5 -4
- package/dist/components/md-input/src/hooks/use-markdown-mentions.js +31 -4
- package/dist/components/md-input/src/index.d.ts +1 -4
- package/dist/components/md-input/src/md-input.js +18 -14
- package/dist/components/md-input/src/tv.d.ts +3 -0
- package/dist/components/md-input/src/tv.js +2 -1
- package/dist/components/md-input/src/types.d.ts +18 -16
- package/dist/components/md-render/dist/index.d.ts +1 -4
- package/dist/components/md-render/dist/index.js +8 -9
- package/dist/components/md-render/src/components/markdown-components.js +3 -3
- package/dist/components/md-render/src/index.d.ts +0 -1
- package/dist/components/md-render/src/md-render.js +5 -4
- package/dist/components/md-render/src/tv.js +1 -1
- package/dist/components/menubar/dist/index.d.ts +50 -0
- package/dist/components/menubar/src/components/index.d.ts +3 -0
- package/dist/components/menubar/src/components/menubar-divider.d.ts +8 -0
- package/dist/components/menubar/src/components/menubar-divider.js +24 -0
- package/dist/components/menubar/src/components/menubar-item.d.ts +8 -0
- package/dist/components/menubar/src/components/menubar-item.js +195 -0
- package/dist/components/menubar/src/components/menubar-trigger.d.ts +8 -0
- package/dist/components/menubar/src/components/menubar-trigger.js +45 -0
- package/dist/components/menubar/src/context/index.d.ts +1 -0
- package/dist/components/menubar/src/context/menubar-context.d.ts +34 -0
- package/dist/components/menubar/src/context/menubar-context.js +13 -0
- package/dist/components/menubar/src/index.d.ts +3 -0
- package/dist/components/menubar/src/menubar.d.ts +22 -0
- package/dist/components/menubar/src/menubar.js +177 -0
- package/dist/components/menubar/src/tv.d.ts +108 -0
- package/dist/components/menubar/src/tv.js +72 -0
- package/dist/components/menubar/tsup.config.d.ts +2 -0
- package/dist/components/menus/dist/index.d.ts +144 -143
- package/dist/components/menus/dist/index.js +50 -49
- package/dist/components/menus/src/components/menu-button.js +2 -2
- package/dist/components/menus/src/components/menu-checkbox.d.ts +1 -2
- package/dist/components/menus/src/components/menu-checkbox.js +2 -2
- package/dist/components/menus/src/components/menu-divider.js +3 -3
- package/dist/components/menus/src/components/menu-item.js +5 -5
- package/dist/components/menus/src/components/menu-label.js +2 -2
- package/dist/components/menus/src/components/menu-scroll-arrow.d.ts +2 -2
- package/dist/components/menus/src/components/menu-scroll-arrow.js +13 -3
- package/dist/components/menus/src/components/menu-search.js +3 -3
- package/dist/components/menus/src/components/menu-trigger.js +4 -4
- package/dist/components/menus/src/context/menu-context-item.d.ts +6 -6
- package/dist/components/menus/src/context/menu-context-item.js +2 -2
- package/dist/components/menus/src/context/menu-context-sub-trigger.js +4 -19
- package/dist/components/menus/src/context/menu-context.d.ts +2 -2
- package/dist/components/menus/src/hooks/use-menu-base-refs.d.ts +12 -12
- package/dist/components/menus/src/hooks/use-menu-children.d.ts +16 -16
- package/dist/components/menus/src/hooks/use-menu-floating.d.ts +22 -22
- package/dist/components/menus/src/hooks/use-menu-refs.d.ts +8 -8
- package/dist/components/menus/src/hooks/use-menu-refs.js +2 -2
- package/dist/components/menus/src/hooks/use-menu-scroll-height.d.ts +11 -11
- package/dist/components/menus/src/hooks/use-menu-scroll.d.ts +18 -18
- package/dist/components/menus/src/hooks/use-menu-selection.d.ts +21 -21
- package/dist/components/menus/src/hooks/use-menu-state.d.ts +11 -11
- package/dist/components/menus/src/hooks/use-menu-state.js +4 -4
- package/dist/components/menus/src/hooks/use-menu-touch.d.ts +11 -11
- package/dist/components/menus/src/hooks/use-menu-tree.d.ts +15 -15
- package/dist/components/menus/src/index.d.ts +5 -0
- package/dist/components/menus/src/menus.js +2 -2
- package/dist/components/menus/src/tv.d.ts +15 -0
- package/dist/components/menus/src/tv.js +8 -2
- package/dist/components/modal/dist/index.d.ts +3 -1
- package/dist/components/modal/dist/index.js +18 -11
- package/dist/components/modal/src/components/modal-content.js +2 -2
- package/dist/components/modal/src/components/modal-footer.js +2 -2
- package/dist/components/modal/src/components/modal-header.d.ts +3 -1
- package/dist/components/modal/src/components/modal-header.js +12 -5
- package/dist/components/modal/src/modal.js +2 -2
- package/dist/components/multi-select/dist/index.js +13 -11
- package/dist/components/multi-select/src/components/multi-select-trigger.js +8 -8
- package/dist/components/multi-select/src/multi-select.js +5 -3
- package/dist/components/numeric-input/dist/index.d.ts +10 -117
- package/dist/components/numeric-input/dist/index.js +18 -24
- package/dist/components/numeric-input/src/components/numeric-input-element.js +2 -2
- package/dist/components/numeric-input/src/components/numeric-input-menu-trigger.d.ts +1 -1
- package/dist/components/numeric-input/src/components/numeric-input-menu-trigger.js +2 -2
- package/dist/components/numeric-input/src/components/numeric-input-variable.d.ts +1 -2
- package/dist/components/numeric-input/src/components/numeric-input-variable.js +3 -3
- package/dist/components/numeric-input/src/hooks/use-input-interactions.d.ts +3 -3
- package/dist/components/numeric-input/src/hooks/use-numeric-input.d.ts +3 -3
- package/dist/components/numeric-input/src/hooks/use-numeric-value-processing.d.ts +3 -3
- package/dist/components/numeric-input/src/hooks/use-step-calculation.d.ts +6 -6
- package/dist/components/numeric-input/src/index.d.ts +5 -4
- package/dist/components/numeric-input/src/numeric-input.js +9 -9
- package/dist/components/numeric-input/src/utils/error-handler.d.ts +8 -8
- package/dist/components/numeric-input/src/utils/expression-evaluator.d.ts +11 -11
- package/dist/components/numeric-input/src/utils/input-parser.d.ts +8 -8
- package/dist/components/numeric-input/src/utils/numeric-value-processor.d.ts +6 -6
- package/dist/components/numeric-input/src/utils/pattern-parser.d.ts +7 -7
- package/dist/components/numeric-input/src/utils/value-comparator.d.ts +16 -16
- package/dist/components/numeric-input/src/utils/value-processor.d.ts +14 -14
- package/dist/components/pagination/src/components/pagination-items-per-page.js +1 -1
- package/dist/components/pagination/src/components/pagination-navigation.js +5 -5
- package/dist/components/pagination/src/components/pagination-root.js +3 -3
- package/dist/components/pagination/src/components/pagination-spinner.js +20 -19
- package/dist/components/pagination/src/context/index.d.ts +1 -0
- package/dist/components/popover/dist/index.d.ts +2 -4
- package/dist/components/popover/dist/index.js +25 -33
- package/dist/components/popover/src/components/popover-header.js +1 -1
- package/dist/components/popover/src/hooks/use-drag.d.ts +3 -3
- package/dist/components/popover/src/hooks/use-floating-popover.d.ts +0 -2
- package/dist/components/popover/src/hooks/use-floating-popover.js +16 -13
- package/dist/components/popover/src/index.d.ts +2 -1
- package/dist/components/popover/src/popover.d.ts +1 -2
- package/dist/components/popover/src/popover.js +11 -21
- package/dist/components/progress/src/index.d.ts +4 -2
- package/dist/components/radio/dist/index.d.ts +1 -17
- package/dist/components/radio/dist/index.js +7 -10
- package/dist/components/radio/src/context.js +1 -1
- package/dist/components/radio/src/index.d.ts +0 -4
- package/dist/components/radio/src/radio-label.js +2 -2
- package/dist/components/radio/src/radio.js +4 -4
- package/dist/components/range/dist/index.js +16 -16
- package/dist/components/range/src/index.d.ts +4 -2
- package/dist/components/range/src/range-tuple.js +10 -10
- package/dist/components/range/src/range.js +6 -6
- package/dist/components/rich-input/dist/index.d.ts +12 -366
- package/dist/components/rich-input/src/components/rich-input-editable-component.d.ts +2 -2
- package/dist/components/rich-input/src/components/rich-input-viewport.d.ts +2 -2
- package/dist/components/rich-input/src/hooks/use-editor-config.d.ts +1 -1
- package/dist/components/rich-input/src/hooks/use-editor-effects.js +3 -0
- package/dist/components/rich-input/src/hooks/use-floating-ui.js +1 -1
- package/dist/components/rich-input/src/hooks/use-keyboard-shortcuts.d.ts +9 -9
- package/dist/components/rich-input/src/hooks/use-rich-input.d.ts +2 -2
- package/dist/components/rich-input/src/hooks/use-rich-input.js +40 -17
- package/dist/components/rich-input/src/hooks/use-selection-events.js +1 -2
- package/dist/components/rich-input/src/index.d.ts +3 -5
- package/dist/components/rich-input/src/rich-input-base.js +1 -1
- package/dist/components/rich-input/src/utils/custom-options.js +1 -1
- package/dist/components/rich-input/src/utils/editor-utils.js +1 -1
- package/dist/components/rich-input/src/utils/markdown-to-slate.d.ts +2 -2
- package/dist/components/rich-input/src/utils/slate-to-markdown.d.ts +1 -1
- package/dist/components/rich-input/src/utils/slate-to-markdown.js +9 -0
- package/dist/components/scroll-area/dist/index.d.ts +19 -19
- package/dist/components/scroll-area/dist/index.js +24 -24
- package/dist/components/scroll-area/src/components/scroll-area-corner.js +2 -2
- package/dist/components/scroll-area/src/components/scroll-area-root.js +3 -3
- package/dist/components/scroll-area/src/components/scroll-area-scrollbar.js +2 -2
- package/dist/components/scroll-area/src/components/scroll-area-thumb.js +2 -2
- package/dist/components/scroll-area/src/hooks/use-scroll-performance-monitor.d.ts +6 -6
- package/dist/components/scroll-area/src/hooks/use-scroll-performance-monitor.js +3 -3
- package/dist/components/scroll-area/src/hooks/use-scroll-state-and-visibility.d.ts +1 -1
- package/dist/components/scroll-area/src/hooks/use-scroll-state-and-visibility.js +3 -3
- package/dist/components/scroll-area/src/hooks/use-scrollbar.d.ts +2 -2
- package/dist/components/scroll-area/src/hooks/use-thumb.d.ts +2 -2
- package/dist/components/scroll-area/src/tv.d.ts +18 -18
- package/dist/components/scroll-area/src/tv.js +12 -12
- package/dist/components/scroll-area/src/types.d.ts +8 -8
- package/dist/components/scroll-area/src/utils/index.d.ts +3 -3
- package/dist/components/search-input/dist/index.js +3 -3
- package/dist/components/search-input/src/index.d.ts +2 -1
- package/dist/components/search-input/src/search-input.js +3 -3
- package/dist/components/segmented/dist/index.js +5 -5
- package/dist/components/segmented/src/segmented-item.js +3 -3
- package/dist/components/segmented/src/segmented.js +2 -2
- package/dist/components/select/dist/index.js +4 -4
- package/dist/components/select/src/select.js +4 -4
- package/dist/components/separator/dist/index.d.ts +26 -0
- package/dist/components/separator/src/index.d.ts +2 -0
- package/dist/components/separator/src/separator.d.ts +22 -0
- package/dist/components/separator/src/separator.js +33 -0
- package/dist/components/separator/src/tv.d.ts +76 -0
- package/dist/components/separator/src/tv.js +25 -0
- package/dist/components/separator/tsup.config.d.ts +2 -0
- package/dist/components/skeleton/dist/index.d.ts +1 -28
- package/dist/components/skeleton/src/context/skeleton-context.js +1 -1
- package/dist/components/skeleton/src/hooks/use-skeleton.d.ts +1 -2
- package/dist/components/skeleton/src/hooks/use-skeleton.js +1 -1
- package/dist/components/skeleton/src/index.d.ts +1 -3
- package/dist/components/skeleton/src/skeleton.d.ts +0 -13
- package/dist/components/skeleton/src/skeleton.js +4 -6
- package/dist/components/skeleton/src/tv.d.ts +18 -12
- package/dist/components/skeleton/src/tv.js +10 -6
- package/dist/components/slot/dist/index.d.ts +10 -10
- package/dist/components/slot/dist/index.js +4 -2
- package/dist/components/slot/src/slot.d.ts +12 -12
- package/dist/components/slot/src/slot.js +6 -3
- package/dist/components/stackflow/src/context.js +1 -1
- package/dist/components/stackflow/src/index.d.ts +2 -1
- package/dist/components/switch/dist/index.d.ts +2 -2
- package/dist/components/switch/dist/index.js +6 -7
- package/dist/components/switch/src/index.d.ts +2 -1
- package/dist/components/switch/src/switch.js +6 -6
- package/dist/components/table/dist/index.d.ts +679 -0
- package/dist/components/table/index.d.ts +1 -0
- package/dist/components/table/src/components/column-resizer.d.ts +8 -0
- package/dist/components/table/src/components/column-resizer.js +58 -0
- package/dist/components/table/src/components/drag-guide.d.ts +6 -0
- package/dist/components/table/src/components/drag-guide.js +64 -0
- package/dist/components/table/src/components/index.d.ts +12 -0
- package/dist/components/table/src/components/resize-guide.d.ts +5 -0
- package/dist/components/table/src/components/resize-guide.js +25 -0
- package/dist/components/table/src/components/table-body.d.ts +6 -0
- package/dist/components/table/src/components/table-body.js +335 -0
- package/dist/components/table/src/components/table-cell.d.ts +6 -0
- package/dist/components/table/src/components/table-cell.js +89 -0
- package/dist/components/table/src/components/table-column.d.ts +5 -0
- package/dist/components/table/src/components/table-column.js +269 -0
- package/dist/components/table/src/components/table-empty.d.ts +8 -0
- package/dist/components/table/src/components/table-empty.js +10 -0
- package/dist/components/table/src/components/table-footer.d.ts +7 -0
- package/dist/components/table/src/components/table-footer.js +15 -0
- package/dist/components/table/src/components/table-header.d.ts +3 -0
- package/dist/components/table/src/components/table-header.js +88 -0
- package/dist/components/table/src/components/table-root.d.ts +3 -0
- package/dist/components/table/src/components/table-root.js +317 -0
- package/dist/components/table/src/components/table-row.d.ts +23 -0
- package/dist/components/table/src/components/table-row.js +166 -0
- package/dist/components/table/src/components/table-value.d.ts +6 -0
- package/dist/components/table/src/components/table-value.js +8 -0
- package/dist/components/table/src/context.d.ts +121 -0
- package/dist/components/table/src/context.js +63 -0
- package/dist/components/table/src/hooks/index.d.ts +4 -0
- package/dist/components/table/src/hooks/use-column-order.d.ts +26 -0
- package/dist/components/table/src/hooks/use-column-order.js +95 -0
- package/dist/components/table/src/hooks/use-column-resize.d.ts +17 -0
- package/dist/components/table/src/hooks/use-column-resize.js +75 -0
- package/dist/components/table/src/hooks/use-consecutive-selection-style.d.ts +12 -0
- package/dist/components/table/src/hooks/use-consecutive-selection-style.js +28 -0
- package/dist/components/table/src/hooks/use-table.d.ts +35 -0
- package/dist/components/table/src/hooks/use-table.js +245 -0
- package/dist/components/table/src/index.d.ts +4 -0
- package/dist/components/table/src/table.d.ts +88 -0
- package/dist/components/table/src/table.js +24 -0
- package/dist/components/table/src/tv.d.ts +176 -0
- package/dist/components/table/src/tv.js +97 -0
- package/dist/components/table/src/types.d.ts +292 -0
- package/dist/components/table/tsup.config.d.ts +2 -0
- package/dist/components/tabs/dist/index.js +4 -3
- package/dist/components/tabs/src/tabs.d.ts +2 -2
- package/dist/components/tabs/src/tabs.js +5 -4
- package/dist/components/text-field/dist/index.d.ts +1 -1
- package/dist/components/text-field/dist/index.js +10 -10
- package/dist/components/text-field/src/components/field-addon.d.ts +1 -2
- package/dist/components/text-field/src/index.d.ts +3 -1
- package/dist/components/text-field/src/text-field.js +10 -10
- package/dist/components/textarea/dist/index.d.ts +33 -5
- package/dist/components/textarea/dist/index.js +32 -7
- package/dist/components/textarea/src/components/autosize/index.d.ts +6 -1
- package/dist/components/textarea/src/components/autosize/index.js +31 -6
- package/dist/components/textarea/src/textarea.js +1 -1
- package/dist/components/textarea/src/types.d.ts +33 -5
- package/dist/components/toggle-button/dist/index.d.ts +26 -2
- package/dist/components/toggle-button/src/context.d.ts +11 -0
- package/dist/components/toggle-button/src/context.js +13 -0
- package/dist/components/toggle-button/src/index.d.ts +2 -0
- package/dist/components/toggle-button/src/toggle-button.js +4 -4
- package/dist/components/toggle-button/src/toggle-group.d.ts +26 -0
- package/dist/components/toggle-button/src/toggle-group.js +156 -0
- package/dist/components/toggle-button/src/tv.d.ts +67 -3
- package/dist/components/toggle-button/src/tv.js +45 -14
- package/dist/components/tooltip/dist/index.d.ts +10 -43
- package/dist/components/tooltip/dist/index.js +35 -33
- package/dist/components/tooltip/src/components/tooltip-arrow.js +1 -1
- package/dist/components/tooltip/src/components/tooltip-content.js +5 -4
- package/dist/components/tooltip/src/context/index.d.ts +1 -0
- package/dist/components/tooltip/src/hooks/use-tooltip.js +3 -3
- package/dist/components/tooltip/src/index.d.ts +2 -4
- package/dist/components/tooltip/src/tooltip.d.ts +7 -1
- package/dist/components/tooltip/src/tooltip.js +6 -1
- package/dist/components/tooltip/src/tv.js +1 -1
- package/dist/components/virtualized-grid/dist/index.d.ts +2 -2
- package/dist/components/virtualized-grid/src/use-item-pool.js +14 -26
- package/dist/components/virtualized-grid/src/use-virtualized-grid.d.ts +1 -1
- package/dist/components/virtualized-grid/src/use-virtualized-grid.js +14 -8
- package/dist/components/virtualized-grid/src/utility.d.ts +1 -1
- package/dist/components/virtualized-grid/src/utility.js +37 -31
- package/dist/components/virtualized-grid/src/virtualized-grid.js +27 -17
- package/dist/context/choice-ui-provider.d.ts +35 -0
- package/dist/context/choice-ui-provider.js +14 -0
- package/dist/context/index.d.ts +2 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +53 -177
- package/package.json +1 -1
- package/dist/components/code-block/src/index.js +0 -15
- package/dist/components/rich-input/src/hooks/use-mouse-events.js +0 -113
- package/dist/components/rich-input/src/hooks/use-validation.js +0 -80
- package/dist/components/rich-input/src/utils/markdown-to-slate.js +0 -219
- /package/dist/components/command/src/{command-score.d.ts → utils/command-score.d.ts} +0 -0
- /package/dist/components/command/src/{command-score.js → utils/command-score.js} +0 -0
- /package/dist/components/pagination/src/{components → context}/pagination-context.d.ts +0 -0
- /package/dist/components/pagination/src/{components → context}/pagination-context.js +0 -0
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
import { Editor } from 'slate';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
* @param editor - SlateJS
|
|
5
|
-
* @returns
|
|
3
|
+
* Check if a space should be inserted before the current position
|
|
4
|
+
* @param editor - SlateJS editor instance
|
|
5
|
+
* @returns Whether a leading space should be added
|
|
6
6
|
*/
|
|
7
7
|
export declare function shouldInsertSpaceBefore(editor: Editor): boolean;
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
10
|
-
* @param editor - SlateJS
|
|
11
|
-
* @returns
|
|
9
|
+
* Check if a space should be inserted after the current position
|
|
10
|
+
* @param editor - SlateJS editor instance
|
|
11
|
+
* @returns Whether a trailing space should be added
|
|
12
12
|
*/
|
|
13
13
|
export declare function shouldInsertSpaceAfter(editor: Editor): boolean;
|
|
14
14
|
/**
|
|
15
|
-
*
|
|
16
|
-
* @param editor - SlateJS
|
|
17
|
-
* @returns
|
|
15
|
+
* Smartly insert space at current position (leading space)
|
|
16
|
+
* @param editor - SlateJS editor instance
|
|
17
|
+
* @returns Whether a space was inserted
|
|
18
18
|
*/
|
|
19
19
|
export declare function insertSpaceBeforeIfNeeded(editor: Editor): boolean;
|
|
20
20
|
/**
|
|
21
|
-
*
|
|
22
|
-
* @param editor - SlateJS
|
|
23
|
-
* @returns
|
|
21
|
+
* Smartly insert space at current position (trailing space)
|
|
22
|
+
* @param editor - SlateJS editor instance
|
|
23
|
+
* @returns Whether a space was inserted
|
|
24
24
|
*/
|
|
25
25
|
export declare function insertSpaceAfterIfNeeded(editor: Editor): boolean;
|
|
26
26
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* @param editor - SlateJS
|
|
30
|
-
* @param beforeInsertion -
|
|
27
|
+
* Insert smart spacing for mention
|
|
28
|
+
* This function intelligently adds spaces before/after mention insertion based on context
|
|
29
|
+
* @param editor - SlateJS editor instance
|
|
30
|
+
* @param beforeInsertion - Callback to execute before content insertion
|
|
31
31
|
*/
|
|
32
32
|
export declare function insertWithSmartSpacing(editor: Editor, beforeInsertion: () => void): void;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { Descendant } from 'slate';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* Convert SlateJS node array to string
|
|
4
|
+
* Mention nodes are converted to {{#context#}}{{#id.text#}} format
|
|
5
5
|
*/
|
|
6
6
|
export declare function convertSlateToText(nodes: Descendant[]): string;
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* Convert string to SlateJS node array
|
|
9
|
+
* Supports parsing {{#context#}}{{#id.text#}} format to mention nodes
|
|
10
10
|
*/
|
|
11
11
|
export declare function convertTextToSlate(text: string): Descendant[];
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* Interface for mention resolver function
|
|
14
14
|
*/
|
|
15
15
|
export interface MentionResolver {
|
|
16
16
|
(mentionId: string): Promise<{
|
|
@@ -20,6 +20,6 @@ export interface MentionResolver {
|
|
|
20
20
|
}>;
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
23
|
+
* Advanced version: supports async mention info resolution
|
|
24
24
|
*/
|
|
25
25
|
export declare function convertTextToSlateWithResolver(text: string, mentionResolver?: MentionResolver): Promise<Descendant[]>;
|
|
@@ -65,10 +65,10 @@ function parseLineToNodes(line) {
|
|
|
65
65
|
const mentionNode = {
|
|
66
66
|
type: "mention",
|
|
67
67
|
mentionType: "user",
|
|
68
|
-
//
|
|
68
|
+
// Default type, may need adjustment based on actual use
|
|
69
69
|
mentionId,
|
|
70
70
|
mentionLabel: `User ${mentionId}`,
|
|
71
|
-
//
|
|
71
|
+
// Default label, actual use may need to look up real label
|
|
72
72
|
mentionData: {},
|
|
73
73
|
children: [{ text: "" }]
|
|
74
74
|
};
|
|
@@ -32,9 +32,15 @@ const extractTextWithMentions = (nodes) => {
|
|
|
32
32
|
}
|
|
33
33
|
return { text, mentionsData };
|
|
34
34
|
};
|
|
35
|
+
const EMPTY_PARAGRAPH = [
|
|
36
|
+
{ type: "paragraph", children: [{ text: "" }] }
|
|
37
|
+
];
|
|
35
38
|
const parseTextWithMentions = (text, mentions) => {
|
|
39
|
+
if (!text && text !== "") {
|
|
40
|
+
return EMPTY_PARAGRAPH;
|
|
41
|
+
}
|
|
36
42
|
if (!mentions || mentions.length === 0) {
|
|
37
|
-
return [{ type: "paragraph", children: [{ text }] }];
|
|
43
|
+
return [{ type: "paragraph", children: [{ text: text || "" }] }];
|
|
38
44
|
}
|
|
39
45
|
const sortedMentions = [...mentions].sort((a, b) => a.startIndex - b.startIndex);
|
|
40
46
|
const children = [];
|
|
@@ -6,7 +6,10 @@ import { useEventCallback } from "usehooks-ts";
|
|
|
6
6
|
const PORTAL_ROOT_ID = "floating-menu-root";
|
|
7
7
|
const DEFAULT_OFFSET = 4;
|
|
8
8
|
const ContextMenuContext = React.createContext(null);
|
|
9
|
-
const ContextMenuTrigger = (
|
|
9
|
+
const ContextMenuTrigger = memo(function ContextMenuTrigger2({
|
|
10
|
+
children,
|
|
11
|
+
...props
|
|
12
|
+
}) {
|
|
10
13
|
const contextMenu = useContext(ContextMenuContext);
|
|
11
14
|
const handleContextMenu = useCallback(
|
|
12
15
|
(e) => {
|
|
@@ -27,7 +30,8 @@ const ContextMenuTrigger = ({ children, ...props }) => {
|
|
|
27
30
|
children
|
|
28
31
|
}
|
|
29
32
|
);
|
|
30
|
-
};
|
|
33
|
+
});
|
|
34
|
+
ContextMenuTrigger.displayName = "ContextMenuTrigger";
|
|
31
35
|
const ContextMenuComponent = memo(function ContextMenuComponent2(props) {
|
|
32
36
|
const {
|
|
33
37
|
children,
|
|
@@ -84,8 +88,10 @@ const ContextMenuComponent = memo(function ContextMenuComponent2(props) {
|
|
|
84
88
|
apply(args) {
|
|
85
89
|
var _a;
|
|
86
90
|
const { elements, availableHeight } = args;
|
|
87
|
-
const
|
|
88
|
-
const
|
|
91
|
+
const floatingScrollHeight = elements.floating.scrollHeight;
|
|
92
|
+
const scrollRefHeight = ((_a = scrollRef.current) == null ? void 0 : _a.scrollHeight) || 0;
|
|
93
|
+
const contentHeight = Math.max(floatingScrollHeight, scrollRefHeight);
|
|
94
|
+
const maxHeight = contentHeight > 0 ? Math.min(contentHeight, availableHeight) : availableHeight;
|
|
89
95
|
Object.assign(elements.floating.style, {
|
|
90
96
|
maxHeight: `${maxHeight}px`,
|
|
91
97
|
display: "flex",
|
|
@@ -336,7 +336,7 @@ function useFloatingDialog({
|
|
|
336
336
|
top: `${dragPosition.y}px`,
|
|
337
337
|
left: `${dragPosition.x}px`,
|
|
338
338
|
transform: "none",
|
|
339
|
-
//
|
|
339
|
+
// Remove transition animation when dragging
|
|
340
340
|
transition: "none"
|
|
341
341
|
};
|
|
342
342
|
if (resizeSize) {
|
|
@@ -769,7 +769,6 @@ var DialogComponent = memo(function DialogComponent2({
|
|
|
769
769
|
isOpen: floating.innerOpen,
|
|
770
770
|
onClose: floating.handleClose,
|
|
771
771
|
...backdropChild.props
|
|
772
|
-
// 保留原有的 props
|
|
773
772
|
});
|
|
774
773
|
}, [children, floating.innerOpen, floating.handleClose]);
|
|
775
774
|
const footerContent = useMemo(() => {
|
|
@@ -138,7 +138,6 @@ const DialogComponent = memo(function DialogComponent2({
|
|
|
138
138
|
isOpen: floating.innerOpen,
|
|
139
139
|
onClose: floating.handleClose,
|
|
140
140
|
...backdropChild.props
|
|
141
|
-
// 保留原有的 props
|
|
142
141
|
});
|
|
143
142
|
}, [children, floating.innerOpen, floating.handleClose]);
|
|
144
143
|
const footerContent = useMemo(() => {
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
1
|
+
export { Dialog } from './dialog';
|
|
2
|
+
export type { DialogProps } from './dialog';
|
|
3
|
+
export type { DialogPosition } from './types';
|
|
@@ -3,8 +3,7 @@ import { FloatingFocusManagerProps, Placement } from '@floating-ui/react';
|
|
|
3
3
|
import { default as React } from 'react';
|
|
4
4
|
interface DropdownProps {
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
* 坐标模式下,是否自动选中第一个选项
|
|
6
|
+
* Whether to automatically select the first item in coordinate mode.
|
|
8
7
|
* @default true
|
|
9
8
|
*/
|
|
10
9
|
autoSelectFirstItem?: boolean;
|
|
@@ -29,7 +29,7 @@ var DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
29
29
|
returnFocus: false,
|
|
30
30
|
modal: position ? false : true,
|
|
31
31
|
...position && { disabled: true }
|
|
32
|
-
//
|
|
32
|
+
// Disable focus management in coordinate mode
|
|
33
33
|
},
|
|
34
34
|
root,
|
|
35
35
|
variant = "default"
|
|
@@ -86,8 +86,10 @@ var DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
86
86
|
padding: 4,
|
|
87
87
|
apply({ elements, availableHeight, rects }) {
|
|
88
88
|
var _a;
|
|
89
|
-
const
|
|
90
|
-
const
|
|
89
|
+
const floatingScrollHeight = elements.floating.scrollHeight;
|
|
90
|
+
const scrollRefHeight = ((_a = scrollRef.current) == null ? void 0 : _a.scrollHeight) || 0;
|
|
91
|
+
const contentHeight = Math.max(floatingScrollHeight, scrollRefHeight);
|
|
92
|
+
const maxHeight = contentHeight > 0 ? Math.min(contentHeight, availableHeight) : availableHeight;
|
|
91
93
|
Object.assign(elements.floating.style, {
|
|
92
94
|
maxHeight: `${maxHeight}px`,
|
|
93
95
|
display: "flex",
|
|
@@ -156,7 +158,7 @@ var DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
156
158
|
ignoreMouse: isNested,
|
|
157
159
|
stickIfOpen: false,
|
|
158
160
|
enabled: !isCoordinateMode
|
|
159
|
-
//
|
|
161
|
+
// Disable click interaction in coordinate mode
|
|
160
162
|
});
|
|
161
163
|
const role = useRole(context, { role: "menu" });
|
|
162
164
|
const dismiss = useDismiss(context, {
|
|
@@ -195,11 +197,11 @@ var DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
195
197
|
setScrollTop,
|
|
196
198
|
touch,
|
|
197
199
|
isSelect: false,
|
|
198
|
-
// Dropdown
|
|
200
|
+
// Dropdown is not a Select
|
|
199
201
|
fallback: false,
|
|
200
|
-
// Dropdown
|
|
202
|
+
// Dropdown does not have fallback mechanism
|
|
201
203
|
setInnerOffset: void 0
|
|
202
|
-
// Dropdown
|
|
204
|
+
// Dropdown does not use innerOffset
|
|
203
205
|
});
|
|
204
206
|
const handleTouchStart = useEventCallback(() => {
|
|
205
207
|
setTouch(true);
|
|
@@ -219,6 +221,18 @@ var DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
219
221
|
setIsMouseOverMenu(false);
|
|
220
222
|
}
|
|
221
223
|
});
|
|
224
|
+
const handleFloatingKeyDown = useEventCallback((e) => {
|
|
225
|
+
if (activeIndex !== null && (e.key === "Enter" || e.key === "ArrowRight")) {
|
|
226
|
+
const activeElement = elementsRef.current[activeIndex];
|
|
227
|
+
if (activeElement) {
|
|
228
|
+
if (activeElement.getAttribute("aria-haspopup") === "menu") {
|
|
229
|
+
e.preventDefault();
|
|
230
|
+
e.stopPropagation();
|
|
231
|
+
activeElement.click();
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
});
|
|
222
236
|
const handleFocus = useEventCallback(() => {
|
|
223
237
|
if (isCoordinateMode) {
|
|
224
238
|
return;
|
|
@@ -323,7 +337,8 @@ var DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
323
337
|
...getFloatingProps({
|
|
324
338
|
onContextMenu(e) {
|
|
325
339
|
e.preventDefault();
|
|
326
|
-
}
|
|
340
|
+
},
|
|
341
|
+
onKeyDown: handleFloatingKeyDown
|
|
327
342
|
}),
|
|
328
343
|
children: [
|
|
329
344
|
/* @__PURE__ */ jsx(MenuContext.Provider, { value: contextValue, children: contentElement && cloneElement(contentElement, {
|
|
@@ -3,8 +3,7 @@ import { FloatingFocusManagerProps, Placement } from '@floating-ui/react';
|
|
|
3
3
|
import { default as React } from 'react';
|
|
4
4
|
export interface DropdownProps {
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
7
|
-
* 坐标模式下,是否自动选中第一个选项
|
|
6
|
+
* Whether to automatically select the first item in coordinate mode.
|
|
8
7
|
* @default true
|
|
9
8
|
*/
|
|
10
9
|
autoSelectFirstItem?: boolean;
|
|
@@ -29,7 +29,7 @@ const DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
29
29
|
returnFocus: false,
|
|
30
30
|
modal: position ? false : true,
|
|
31
31
|
...position && { disabled: true }
|
|
32
|
-
//
|
|
32
|
+
// Disable focus management in coordinate mode
|
|
33
33
|
},
|
|
34
34
|
root,
|
|
35
35
|
variant = "default"
|
|
@@ -86,8 +86,10 @@ const DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
86
86
|
padding: 4,
|
|
87
87
|
apply({ elements, availableHeight, rects }) {
|
|
88
88
|
var _a;
|
|
89
|
-
const
|
|
90
|
-
const
|
|
89
|
+
const floatingScrollHeight = elements.floating.scrollHeight;
|
|
90
|
+
const scrollRefHeight = ((_a = scrollRef.current) == null ? void 0 : _a.scrollHeight) || 0;
|
|
91
|
+
const contentHeight = Math.max(floatingScrollHeight, scrollRefHeight);
|
|
92
|
+
const maxHeight = contentHeight > 0 ? Math.min(contentHeight, availableHeight) : availableHeight;
|
|
91
93
|
Object.assign(elements.floating.style, {
|
|
92
94
|
maxHeight: `${maxHeight}px`,
|
|
93
95
|
display: "flex",
|
|
@@ -156,7 +158,7 @@ const DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
156
158
|
ignoreMouse: isNested,
|
|
157
159
|
stickIfOpen: false,
|
|
158
160
|
enabled: !isCoordinateMode
|
|
159
|
-
//
|
|
161
|
+
// Disable click interaction in coordinate mode
|
|
160
162
|
});
|
|
161
163
|
const role = useRole(context, { role: "menu" });
|
|
162
164
|
const dismiss = useDismiss(context, {
|
|
@@ -195,11 +197,11 @@ const DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
195
197
|
setScrollTop,
|
|
196
198
|
touch,
|
|
197
199
|
isSelect: false,
|
|
198
|
-
// Dropdown
|
|
200
|
+
// Dropdown is not a Select
|
|
199
201
|
fallback: false,
|
|
200
|
-
// Dropdown
|
|
202
|
+
// Dropdown does not have fallback mechanism
|
|
201
203
|
setInnerOffset: void 0
|
|
202
|
-
// Dropdown
|
|
204
|
+
// Dropdown does not use innerOffset
|
|
203
205
|
});
|
|
204
206
|
const handleTouchStart = useEventCallback(() => {
|
|
205
207
|
setTouch(true);
|
|
@@ -219,6 +221,18 @@ const DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
219
221
|
setIsMouseOverMenu(false);
|
|
220
222
|
}
|
|
221
223
|
});
|
|
224
|
+
const handleFloatingKeyDown = useEventCallback((e) => {
|
|
225
|
+
if (activeIndex !== null && (e.key === "Enter" || e.key === "ArrowRight")) {
|
|
226
|
+
const activeElement = elementsRef.current[activeIndex];
|
|
227
|
+
if (activeElement) {
|
|
228
|
+
if (activeElement.getAttribute("aria-haspopup") === "menu") {
|
|
229
|
+
e.preventDefault();
|
|
230
|
+
e.stopPropagation();
|
|
231
|
+
activeElement.click();
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
});
|
|
222
236
|
const handleFocus = useEventCallback(() => {
|
|
223
237
|
if (isCoordinateMode) {
|
|
224
238
|
return;
|
|
@@ -323,7 +337,8 @@ const DropdownComponent = memo(function DropdownComponent2(props) {
|
|
|
323
337
|
...getFloatingProps({
|
|
324
338
|
onContextMenu(e) {
|
|
325
339
|
e.preventDefault();
|
|
326
|
-
}
|
|
340
|
+
},
|
|
341
|
+
onKeyDown: handleFloatingKeyDown
|
|
327
342
|
}),
|
|
328
343
|
children: [
|
|
329
344
|
/* @__PURE__ */ jsx(MenuContext.Provider, { value: contextValue, children: contentElement && cloneElement(contentElement, {
|
|
@@ -6,6 +6,38 @@ interface EmojiData {
|
|
|
6
6
|
name: string;
|
|
7
7
|
nameUrl: string;
|
|
8
8
|
}
|
|
9
|
+
type EmojiCategory = "frequently_used" | "smileys_people" | "animals_nature" | "food_drink" | "activities" | "travel_places" | "objects" | "symbols" | "flags";
|
|
10
|
+
type VirtualItem = {
|
|
11
|
+
category: EmojiCategory;
|
|
12
|
+
title: string;
|
|
13
|
+
type: "header";
|
|
14
|
+
} | {
|
|
15
|
+
emojis: EmojiData[];
|
|
16
|
+
type: "emojis";
|
|
17
|
+
};
|
|
18
|
+
interface UseEmojiDataProps {
|
|
19
|
+
columns: number;
|
|
20
|
+
searchQuery: string;
|
|
21
|
+
showFrequentlyUsed: boolean;
|
|
22
|
+
}
|
|
23
|
+
declare function useEmojiData({ searchQuery, columns, showFrequentlyUsed }: UseEmojiDataProps): {
|
|
24
|
+
categorizedData: VirtualItem[];
|
|
25
|
+
categoryIndexMap: Map<EmojiCategory, number>;
|
|
26
|
+
searchResults: {
|
|
27
|
+
id: number;
|
|
28
|
+
code: string;
|
|
29
|
+
emoji: string;
|
|
30
|
+
name: string;
|
|
31
|
+
nameUrl: string;
|
|
32
|
+
}[];
|
|
33
|
+
frequentlyUsed: EmojiData[];
|
|
34
|
+
addToFrequentlyUsed: (emojiId: number) => void;
|
|
35
|
+
findEmojiPosition: (emoji: EmojiData) => {
|
|
36
|
+
emojiIndex: number;
|
|
37
|
+
itemIndex: number;
|
|
38
|
+
} | null;
|
|
39
|
+
findEmojiByChar: (emojiChar: string) => EmojiData | null;
|
|
40
|
+
};
|
|
9
41
|
|
|
10
42
|
interface EmojiPickerProps {
|
|
11
43
|
children?: React.ReactNode;
|
|
@@ -30,4 +62,4 @@ declare const emojis: {
|
|
|
30
62
|
nameUrl: string;
|
|
31
63
|
}[];
|
|
32
64
|
|
|
33
|
-
export { type EmojiData, EmojiPicker, emojis };
|
|
65
|
+
export { type EmojiData, EmojiPicker, type EmojiPickerProps, emojis, useEmojiData };
|
|
@@ -12116,6 +12116,7 @@ var EmojiPicker = memo(function EmojiPicker2({
|
|
|
12116
12116
|
{
|
|
12117
12117
|
variant,
|
|
12118
12118
|
className: tv.scroll(),
|
|
12119
|
+
hoverBoundary: "none",
|
|
12119
12120
|
children: /* @__PURE__ */ jsx(
|
|
12120
12121
|
ScrollArea.Viewport,
|
|
12121
12122
|
{
|
|
@@ -12195,5 +12196,6 @@ var EmojiPicker = memo(function EmojiPicker2({
|
|
|
12195
12196
|
});
|
|
12196
12197
|
export {
|
|
12197
12198
|
EmojiPicker,
|
|
12198
|
-
emojis
|
|
12199
|
+
emojis,
|
|
12200
|
+
useEmojiData
|
|
12199
12201
|
};
|
|
@@ -43,7 +43,8 @@ const EmojiPicker = memo(function EmojiPicker2({
|
|
|
43
43
|
categorizedData,
|
|
44
44
|
categoryIndexMap,
|
|
45
45
|
addToFrequentlyUsed,
|
|
46
|
-
findEmojiPosition
|
|
46
|
+
findEmojiPosition,
|
|
47
|
+
findEmojiByChar
|
|
47
48
|
} = useEmojiData({
|
|
48
49
|
searchQuery,
|
|
49
50
|
columns,
|
|
@@ -132,6 +133,7 @@ const EmojiPicker = memo(function EmojiPicker2({
|
|
|
132
133
|
{
|
|
133
134
|
variant,
|
|
134
135
|
className: tv.scroll(),
|
|
136
|
+
hoverBoundary: "none",
|
|
135
137
|
children: /* @__PURE__ */ jsx(
|
|
136
138
|
ScrollArea.Viewport,
|
|
137
139
|
{
|