@rotki/ui-library 2.15.0 → 2.16.1
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/accordions/accordion/RuiAccordion.js +7 -0
- package/dist/components/accordions/accordion/RuiAccordion.js.map +1 -0
- package/dist/components/accordions/accordion/RuiAccordion.vue.d.ts +9 -0
- package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js +88 -0
- package/dist/components/accordions/accordion/RuiAccordion.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/accordions/accordions/RuiAccordions.js +7 -0
- package/dist/components/accordions/accordions/RuiAccordions.js.map +1 -0
- package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/components/accordions/accordions/RuiAccordions.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/alerts/RuiAlert.js +7 -0
- package/dist/components/alerts/RuiAlert.js.map +1 -0
- package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js +330 -0
- package/dist/components/alerts/RuiAlert.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/buttons/button/RuiButton.js +7 -0
- package/dist/components/buttons/button/RuiButton.js.map +1 -0
- package/dist/components/buttons/button/RuiButton.vue.d.ts +3 -2
- package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js +104 -0
- package/dist/components/buttons/button/RuiButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/buttons/button/button-props.d.ts +16 -0
- package/dist/components/buttons/button/button-props.js +20 -0
- package/dist/components/buttons/button/button-props.js.map +1 -0
- package/dist/components/buttons/button/button-styles.d.ts +229 -0
- package/dist/components/buttons/button/button-styles.js +342 -0
- package/dist/components/buttons/button/button-styles.js.map +1 -0
- package/dist/components/buttons/button-group/RuiButtonGroup.js +7 -0
- package/dist/components/buttons/button-group/RuiButtonGroup.js.map +1 -0
- package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js +246 -0
- package/dist/components/buttons/button-group/RuiButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/calendar/RuiCalendar.js +7 -0
- package/dist/components/calendar/RuiCalendar.js.map +1 -0
- package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js +151 -0
- package/dist/components/calendar/RuiCalendar.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/calendar/RuiCalendarGrid.js +7 -0
- package/dist/components/calendar/RuiCalendarGrid.js.map +1 -0
- package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js +155 -0
- package/dist/components/calendar/RuiCalendarGrid.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/calendar/RuiCalendarHeader.js +7 -0
- package/dist/components/calendar/RuiCalendarHeader.js.map +1 -0
- package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js +113 -0
- package/dist/components/calendar/RuiCalendarHeader.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/calendar/RuiCalendarMenu.js +7 -0
- package/dist/components/calendar/RuiCalendarMenu.js.map +1 -0
- package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js +246 -0
- package/dist/components/calendar/RuiCalendarMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/calendar/state.js +20 -21
- package/dist/components/calendar/state.js.map +1 -1
- package/dist/components/cards/RuiCard.js +7 -0
- package/dist/components/cards/RuiCard.js.map +1 -0
- package/dist/components/cards/RuiCard.vue.d.ts +9 -0
- package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js +130 -0
- package/dist/components/cards/RuiCard.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/cards/RuiCardHeader.js +7 -0
- package/dist/components/cards/RuiCardHeader.js.map +1 -0
- package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/components/cards/RuiCardHeader.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/chips/RuiChip.js +7 -0
- package/dist/components/chips/RuiChip.js.map +1 -0
- package/dist/components/chips/RuiChip.vue.d.ts +10 -2
- package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js +308 -0
- package/dist/components/chips/RuiChip.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/chips/chip-props.d.ts +11 -0
- package/dist/components/chips/chip-props.js +17 -0
- package/dist/components/chips/chip-props.js.map +1 -0
- package/dist/components/color-picker/RuiColorBoard.js +7 -0
- package/dist/components/color-picker/RuiColorBoard.js.map +1 -0
- package/dist/components/color-picker/RuiColorBoard.vue.d.ts +1 -1
- package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js +100 -0
- package/dist/components/color-picker/RuiColorBoard.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/color-picker/RuiColorDisplay.js +7 -0
- package/dist/components/color-picker/RuiColorDisplay.js.map +1 -0
- package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js +37 -0
- package/dist/components/color-picker/RuiColorDisplay.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/color-picker/RuiColorHue.js +7 -0
- package/dist/components/color-picker/RuiColorHue.js.map +1 -0
- package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js +84 -0
- package/dist/components/color-picker/RuiColorHue.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/color-picker/RuiColorInput.js +7 -0
- package/dist/components/color-picker/RuiColorInput.js.map +1 -0
- package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js +132 -0
- package/dist/components/color-picker/RuiColorInput.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/color-picker/RuiColorPicker.js +7 -0
- package/dist/components/color-picker/RuiColorPicker.js.map +1 -0
- package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/components/color-picker/RuiColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/color-picker/utils.d.ts +11 -8
- package/dist/components/color-picker/utils.js +179 -194
- package/dist/components/color-picker/utils.js.map +1 -1
- package/dist/components/date-time-picker/RuiDateTimePicker.js +7 -0
- package/dist/components/date-time-picker/RuiDateTimePicker.js.map +1 -0
- package/dist/components/date-time-picker/RuiDateTimePicker.vue.d.ts +2 -1
- package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js +369 -0
- package/dist/components/date-time-picker/RuiDateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.js +7 -0
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.js.map +1 -0
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.d.ts +1 -1
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js +134 -0
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/date-time-picker/date-time-picker-styles.d.ts +326 -0
- package/dist/components/date-time-picker/date-time-picker-styles.js +19 -0
- package/dist/components/date-time-picker/date-time-picker-styles.js.map +1 -0
- package/dist/components/date-time-picker/dayjs-setup.js +4 -1
- package/dist/components/date-time-picker/dayjs-setup.js.map +1 -1
- package/dist/components/date-time-picker/segment-config.js +42 -21
- package/dist/components/date-time-picker/segment-config.js.map +1 -1
- package/dist/components/date-time-picker/segment-utils.js +24 -31
- package/dist/components/date-time-picker/segment-utils.js.map +1 -1
- package/dist/components/date-time-picker/timezones.js +601 -600
- package/dist/components/date-time-picker/timezones.js.map +1 -1
- package/dist/components/date-time-picker/types.js +14 -14
- package/dist/components/date-time-picker/types.js.map +1 -1
- package/dist/components/date-time-picker/use-date-time-selection.js +222 -282
- package/dist/components/date-time-picker/use-date-time-selection.js.map +1 -1
- package/dist/components/date-time-picker/use-input-handler.js +31 -28
- package/dist/components/date-time-picker/use-input-handler.js.map +1 -1
- package/dist/components/date-time-picker/use-keyboard-handler.js +201 -268
- package/dist/components/date-time-picker/use-keyboard-handler.js.map +1 -1
- package/dist/components/date-time-picker/utils.js +10 -11
- package/dist/components/date-time-picker/utils.js.map +1 -1
- package/dist/components/divider/RuiDivider.js +7 -0
- package/dist/components/divider/RuiDivider.js.map +1 -0
- package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js +25 -0
- package/dist/components/divider/RuiDivider.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/auto-complete/RuiAutoComplete.js +7 -0
- package/dist/components/forms/auto-complete/RuiAutoComplete.js.map +1 -0
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue.d.ts +12 -2
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js +566 -0
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/auto-complete/auto-complete-styles.d.ts +324 -0
- package/dist/components/forms/auto-complete/auto-complete-styles.js +15 -0
- package/dist/components/forms/auto-complete/auto-complete-styles.js.map +1 -0
- package/dist/components/forms/check-control-styles.d.ts +135 -0
- package/dist/components/forms/check-control-styles.js +126 -0
- package/dist/components/forms/check-control-styles.js.map +1 -0
- package/dist/components/forms/checkbox/RuiCheckbox.js +7 -0
- package/dist/components/forms/checkbox/RuiCheckbox.js.map +1 -0
- package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js +133 -0
- package/dist/components/forms/checkbox/RuiCheckbox.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/radio-button/radio/RuiRadio.js +7 -0
- package/dist/components/forms/radio-button/radio/RuiRadio.js.map +1 -0
- package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js +115 -0
- package/dist/components/forms/radio-button/radio/RuiRadio.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.js +7 -0
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.js.map +1 -0
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js +96 -0
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.js +7 -0
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.js.map +1 -0
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.d.ts +2 -15
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js +117 -0
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/select/RuiMenuSelect.js +7 -0
- package/dist/components/forms/select/RuiMenuSelect.js.map +1 -0
- package/dist/components/forms/select/RuiMenuSelect.vue.d.ts +16 -4
- package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js +313 -0
- package/dist/components/forms/select/RuiMenuSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/select/RuiSimpleSelect.js +7 -0
- package/dist/components/forms/select/RuiSimpleSelect.js.map +1 -0
- package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js +75 -0
- package/dist/components/forms/select/RuiSimpleSelect.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/select/menu-select-styles.d.ts +319 -0
- package/dist/components/forms/select/menu-select-styles.js +11 -0
- package/dist/components/forms/select/menu-select-styles.js.map +1 -0
- package/dist/components/forms/slider/RuiSlider.js +7 -0
- package/dist/components/forms/slider/RuiSlider.js.map +1 -0
- package/dist/components/forms/slider/RuiSlider.vue.d.ts +9 -0
- package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js +222 -0
- package/dist/components/forms/slider/RuiSlider.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/slider/slider-styles.d.ts +208 -0
- package/dist/components/forms/slider/slider-styles.js +235 -0
- package/dist/components/forms/slider/slider-styles.js.map +1 -0
- package/dist/components/forms/switch/RuiSwitch.js +7 -0
- package/dist/components/forms/switch/RuiSwitch.js.map +1 -0
- package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js +226 -0
- package/dist/components/forms/switch/RuiSwitch.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/text-area/RuiTextArea.js +7 -0
- package/dist/components/forms/text-area/RuiTextArea.js.map +1 -0
- package/dist/components/forms/text-area/RuiTextArea.vue.d.ts +8 -4
- package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js +248 -0
- package/dist/components/forms/text-area/RuiTextArea.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/text-area/text-area-styles.d.ts +313 -0
- package/dist/components/forms/text-area/text-area-styles.js +239 -0
- package/dist/components/forms/text-area/text-area-styles.js.map +1 -0
- package/dist/components/forms/text-field/RuiTextField.js +7 -0
- package/dist/components/forms/text-field/RuiTextField.js.map +1 -0
- package/dist/components/forms/text-field/RuiTextField.vue.d.ts +4 -3
- package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js +220 -0
- package/dist/components/forms/text-field/RuiTextField.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/forms/text-field/text-field-styles.d.ts +299 -0
- package/dist/components/forms/text-field/text-field-styles.js +251 -0
- package/dist/components/forms/text-field/text-field-styles.js.map +1 -0
- package/dist/components/forms/text-input-styles.d.ts +422 -0
- package/dist/components/forms/text-input-styles.js +250 -0
- package/dist/components/forms/text-input-styles.js.map +1 -0
- package/dist/components/helpers/RuiFormTextDetail.js +7 -0
- package/dist/components/helpers/RuiFormTextDetail.js.map +1 -0
- package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js +46 -0
- package/dist/components/helpers/RuiFormTextDetail.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/icons/RuiIcon.js +7 -0
- package/dist/components/icons/RuiIcon.js.map +1 -0
- package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js +58 -0
- package/dist/components/icons/RuiIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/index.d.ts +46 -46
- package/dist/components/index.js +45 -92
- package/dist/components/loaders/RuiSkeletonBase.js +7 -0
- package/dist/components/loaders/RuiSkeletonBase.js.map +1 -0
- package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js +31 -0
- package/dist/components/loaders/RuiSkeletonBase.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/loaders/RuiSkeletonLoader.js +7 -0
- package/dist/components/loaders/RuiSkeletonLoader.js.map +1 -0
- package/dist/components/loaders/RuiSkeletonLoader.vue.d.ts +3 -2
- package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js +62 -0
- package/dist/components/loaders/RuiSkeletonLoader.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/loaders/skeleton-type.d.ts +12 -0
- package/dist/components/loaders/skeleton-type.js +16 -0
- package/dist/components/loaders/skeleton-type.js.map +1 -0
- package/dist/components/logos/RuiLogo.js +7 -0
- package/dist/components/logos/RuiLogo.js.map +1 -0
- package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js +130 -0
- package/dist/components/logos/RuiLogo.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/logos/logo.js +6 -0
- package/dist/components/logos/logo.js.map +1 -0
- package/dist/components/logos/use-logo-sources.d.ts +1 -1
- package/dist/components/logos/use-logo-sources.js +66 -62
- package/dist/components/logos/use-logo-sources.js.map +1 -1
- package/dist/components/overlays/badge/RuiBadge.js +7 -0
- package/dist/components/overlays/badge/RuiBadge.js.map +1 -0
- package/dist/components/overlays/badge/RuiBadge.vue.d.ts +4 -3
- package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js +189 -0
- package/dist/components/overlays/badge/RuiBadge.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/overlays/badge/badge-props.d.ts +19 -0
- package/dist/components/overlays/badge/badge-props.js +21 -0
- package/dist/components/overlays/badge/badge-props.js.map +1 -0
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.js +7 -0
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.js.map +1 -0
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js +51 -0
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/overlays/dialog/RuiDialog.js +7 -0
- package/dist/components/overlays/dialog/RuiDialog.js.map +1 -0
- package/dist/components/overlays/dialog/RuiDialog.vue.d.ts +7 -0
- package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js +163 -0
- package/dist/components/overlays/dialog/RuiDialog.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/overlays/menu/RuiMenu.js +7 -0
- package/dist/components/overlays/menu/RuiMenu.js.map +1 -0
- package/dist/components/overlays/menu/RuiMenu.vue.d.ts +12 -0
- package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js +236 -0
- package/dist/components/overlays/menu/RuiMenu.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.js +7 -0
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.js.map +1 -0
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.d.ts +7 -0
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js +180 -0
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/overlays/notification/RuiNotification.js +7 -0
- package/dist/components/overlays/notification/RuiNotification.js.map +1 -0
- package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js +70 -0
- package/dist/components/overlays/notification/RuiNotification.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/overlays/tooltip/RuiTooltip.js +7 -0
- package/dist/components/overlays/tooltip/RuiTooltip.js.map +1 -0
- package/dist/components/overlays/tooltip/RuiTooltip.vue.d.ts +10 -0
- package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js +107 -0
- package/dist/components/overlays/tooltip/RuiTooltip.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/overlays/tooltip/tooltip-styles.d.ts +91 -0
- package/dist/components/overlays/tooltip/tooltip-styles.js +40 -0
- package/dist/components/overlays/tooltip/tooltip-styles.js.map +1 -0
- package/dist/components/progress/RuiProgress.js +7 -0
- package/dist/components/progress/RuiProgress.js.map +1 -0
- package/dist/components/progress/RuiProgress.vue.d.ts +2 -1
- package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js +254 -0
- package/dist/components/progress/RuiProgress.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/progress/progress-props.d.ts +6 -0
- package/dist/components/progress/progress-props.js +10 -0
- package/dist/components/progress/progress-props.js.map +1 -0
- package/dist/components/steppers/RuiFooterStepper.js +7 -0
- package/dist/components/steppers/RuiFooterStepper.js.map +1 -0
- package/dist/components/steppers/RuiFooterStepper.vue.d.ts +2 -1
- package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js +164 -0
- package/dist/components/steppers/RuiFooterStepper.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/steppers/RuiStepper.js +7 -0
- package/dist/components/steppers/RuiStepper.js.map +1 -0
- package/dist/components/steppers/RuiStepper.vue.d.ts +9 -0
- package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js +232 -0
- package/dist/components/steppers/RuiStepper.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/steppers/RuiStepperCustomIcon.js +7 -0
- package/dist/components/steppers/RuiStepperCustomIcon.js.map +1 -0
- package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js +43 -0
- package/dist/components/steppers/RuiStepperCustomIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/steppers/RuiStepperIcon.js +7 -0
- package/dist/components/steppers/RuiStepperIcon.js.map +1 -0
- package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js +72 -0
- package/dist/components/steppers/RuiStepperIcon.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/steppers/footer-stepper-variant.d.ts +7 -0
- package/dist/components/steppers/footer-stepper-variant.js +11 -0
- package/dist/components/steppers/footer-stepper-variant.js.map +1 -0
- package/dist/components/tables/RuiDataTable.js +7 -0
- package/dist/components/tables/RuiDataTable.js.map +1 -0
- package/dist/components/tables/RuiDataTable.vue.d.ts +7 -2
- package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js +516 -0
- package/dist/components/tables/RuiDataTable.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tables/RuiExpandButton.js +7 -0
- package/dist/components/tables/RuiExpandButton.js.map +1 -0
- package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js +34 -0
- package/dist/components/tables/RuiExpandButton.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tables/RuiTableEmptyState.js +7 -0
- package/dist/components/tables/RuiTableEmptyState.js.map +1 -0
- package/dist/components/tables/RuiTableEmptyState.vue.d.ts +16 -0
- package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js +46 -0
- package/dist/components/tables/RuiTableEmptyState.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tables/RuiTableHead.js +7 -0
- package/dist/components/tables/RuiTableHead.js.map +1 -0
- package/dist/components/tables/RuiTableHead.vue.d.ts +6 -5
- package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js +230 -0
- package/dist/components/tables/RuiTableHead.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tables/RuiTablePagination.js +7 -0
- package/dist/components/tables/RuiTablePagination.js.map +1 -0
- package/dist/components/tables/RuiTablePagination.vue.d.ts +9 -6
- package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js +187 -0
- package/dist/components/tables/RuiTablePagination.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tables/data-table-styles.d.ts +155 -0
- package/dist/components/tables/data-table-styles.js +36 -0
- package/dist/components/tables/data-table-styles.js.map +1 -0
- package/dist/components/tables/table-props.d.ts +20 -0
- package/dist/components/tables/table-props.js +39 -0
- package/dist/components/tables/table-props.js.map +1 -0
- package/dist/components/tables/table_no_data_placeholder.js +6 -0
- package/dist/components/tables/table_no_data_placeholder.js.map +1 -0
- package/dist/components/tables/table_no_data_placeholder_dark.js +6 -0
- package/dist/components/tables/table_no_data_placeholder_dark.js.map +1 -0
- package/dist/components/tables/use-pagination-navigation.d.ts +32 -0
- package/dist/components/tables/use-pagination-navigation.js +88 -0
- package/dist/components/tables/use-pagination-navigation.js.map +1 -0
- package/dist/components/tabs/tab/RuiTab.js +7 -0
- package/dist/components/tabs/tab/RuiTab.js.map +1 -0
- package/dist/components/tabs/tab/RuiTab.vue.d.ts +12 -3
- package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js +175 -0
- package/dist/components/tabs/tab/RuiTab.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tabs/tab/use-tab-link.d.ts +26 -0
- package/dist/components/tabs/tab/use-tab-link.js +28 -0
- package/dist/components/tabs/tab/use-tab-link.js.map +1 -0
- package/dist/components/tabs/tab-item/RuiTabItem.js +7 -0
- package/dist/components/tabs/tab-item/RuiTabItem.js.map +1 -0
- package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js +54 -0
- package/dist/components/tabs/tab-item/RuiTabItem.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tabs/tab-items/RuiTabItems.js +7 -0
- package/dist/components/tabs/tab-items/RuiTabItems.js.map +1 -0
- package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js +76 -0
- package/dist/components/tabs/tab-items/RuiTabItems.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tabs/tab-props.d.ts +20 -0
- package/dist/components/tabs/tab-props.js +18 -0
- package/dist/components/tabs/tab-props.js.map +1 -0
- package/dist/components/tabs/tabs/RuiTabs.js +7 -0
- package/dist/components/tabs/tabs/RuiTabs.js.map +1 -0
- package/dist/components/tabs/tabs/RuiTabs.vue.d.ts +3 -2
- package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js +208 -0
- package/dist/components/tabs/tabs/RuiTabs.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/tabs/tabs/use-tab-routing.d.ts +28 -0
- package/dist/components/tabs/tabs/use-tab-routing.js +43 -0
- package/dist/components/tabs/tabs/use-tab-routing.js.map +1 -0
- package/dist/components/tabs/tabs/use-tab-scroll.d.ts +23 -0
- package/dist/components/tabs/tabs/use-tab-scroll.js +68 -0
- package/dist/components/tabs/tabs/use-tab-scroll.js.map +1 -0
- package/dist/components/time-picker/RuiTimePicker.js +7 -0
- package/dist/components/time-picker/RuiTimePicker.js.map +1 -0
- package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js +382 -0
- package/dist/components/time-picker/RuiTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/time-picker/time-picker-styles.d.ts +76 -0
- package/dist/components/time-picker/time-picker-styles.js +27 -0
- package/dist/components/time-picker/time-picker-styles.js.map +1 -0
- package/dist/composables/breakpoint.js +35 -40
- package/dist/composables/breakpoint.js.map +1 -1
- package/dist/composables/colors/common.d.ts +20 -0
- package/dist/composables/colors/index.d.ts +3 -0
- package/dist/composables/colors/text-input.d.ts +27 -0
- package/dist/composables/defaults/table.js +21 -18
- package/dist/composables/defaults/table.js.map +1 -1
- package/dist/composables/dropdown-menu.d.ts +6 -6
- package/dist/composables/dropdown-menu.js +169 -237
- package/dist/composables/dropdown-menu.js.map +1 -1
- package/dist/composables/floating.d.ts +60 -0
- package/dist/composables/floating.js +167 -0
- package/dist/composables/floating.js.map +1 -0
- package/dist/composables/forms/auto-complete/focus.d.ts +4 -4
- package/dist/composables/forms/auto-complete/focus.js +59 -79
- package/dist/composables/forms/auto-complete/focus.js.map +1 -1
- package/dist/composables/forms/auto-complete/index.js +4 -0
- package/dist/composables/forms/auto-complete/keyboard-navigation.d.ts +6 -5
- package/dist/composables/forms/auto-complete/keyboard-navigation.js +116 -136
- package/dist/composables/forms/auto-complete/keyboard-navigation.js.map +1 -1
- package/dist/composables/forms/auto-complete/search.d.ts +11 -10
- package/dist/composables/forms/auto-complete/search.js +80 -91
- package/dist/composables/forms/auto-complete/search.js.map +1 -1
- package/dist/composables/forms/auto-complete/value.d.ts +9 -8
- package/dist/composables/forms/auto-complete/value.js +76 -108
- package/dist/composables/forms/auto-complete/value.js.map +1 -1
- package/dist/composables/forms/use-prepend-append-width.js +24 -20
- package/dist/composables/forms/use-prepend-append-width.js.map +1 -1
- package/dist/composables/icons.js +42 -52
- package/dist/composables/icons.js.map +1 -1
- package/dist/composables/index.js +2 -7
- package/dist/composables/popper.d.ts +5 -20
- package/dist/composables/popper.js +22 -177
- package/dist/composables/popper.js.map +1 -1
- package/dist/composables/sticky-header.js +132 -143
- package/dist/composables/sticky-header.js.map +1 -1
- package/dist/composables/tables/data-table/columns.d.ts +1 -1
- package/dist/composables/tables/data-table/columns.js +41 -49
- package/dist/composables/tables/data-table/columns.js.map +1 -1
- package/dist/composables/tables/data-table/expansion.js +29 -34
- package/dist/composables/tables/data-table/expansion.js.map +1 -1
- package/dist/composables/tables/data-table/grouping.d.ts +1 -1
- package/dist/composables/tables/data-table/grouping.js +110 -132
- package/dist/composables/tables/data-table/grouping.js.map +1 -1
- package/dist/composables/tables/data-table/pagination.d.ts +2 -2
- package/dist/composables/tables/data-table/pagination.js +98 -115
- package/dist/composables/tables/data-table/pagination.js.map +1 -1
- package/dist/composables/tables/data-table/selection.js +124 -160
- package/dist/composables/tables/data-table/selection.js.map +1 -1
- package/dist/composables/tables/data-table/sort.d.ts +2 -2
- package/dist/composables/tables/data-table/sort.js +118 -132
- package/dist/composables/tables/data-table/sort.js.map +1 -1
- package/dist/composables/tables/data-table/types.d.ts +2 -2
- package/dist/composables/tables/data-table/types.js +7 -7
- package/dist/composables/tables/data-table/types.js.map +1 -1
- package/dist/composables/theme.js +91 -66
- package/dist/composables/theme.js.map +1 -1
- package/dist/composables/timeout-manager.js +24 -19
- package/dist/composables/timeout-manager.js.map +1 -1
- package/dist/composables/use-rui-i18n.js +15 -21
- package/dist/composables/use-rui-i18n.js.map +1 -1
- package/dist/consts/colors.js +50 -47
- package/dist/consts/colors.js.map +1 -1
- package/dist/consts/time-accuracy.js +9 -8
- package/dist/consts/time-accuracy.js.map +1 -1
- package/dist/i18n/keys.js +17 -16
- package/dist/i18n/keys.js.map +1 -1
- package/dist/icons/icons_1.js +1529 -2027
- package/dist/icons/icons_1.js.map +1 -1
- package/dist/icons/icons_2.js +1529 -2027
- package/dist/icons/icons_2.js.map +1 -1
- package/dist/icons/icons_3.js +1529 -2027
- package/dist/icons/icons_3.js.map +1 -1
- package/dist/icons/icons_4.js +794 -1047
- package/dist/icons/icons_4.js.map +1 -1
- package/dist/icons/index.js +1767 -7
- package/dist/icons/index.js.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.js +87 -1907
- package/dist/index.js.map +1 -1
- package/dist/style.css +2780 -10260
- package/dist/theme/index.js +160 -198
- package/dist/theme/index.js.map +1 -1
- package/dist/types/class-value.d.ts +5 -0
- package/dist/types/stepper.js +16 -15
- package/dist/types/stepper.js.map +1 -1
- package/dist/types/theme.js +17 -22
- package/dist/types/theme.js.map +1 -1
- package/dist/utils/assert.js +12 -12
- package/dist/utils/assert.js.map +1 -1
- package/dist/utils/blockie.js +58 -65
- package/dist/utils/blockie.js.map +1 -1
- package/dist/utils/form-text-detail.d.ts +4 -2
- package/dist/utils/form-text-detail.js +29 -27
- package/dist/utils/form-text-detail.js.map +1 -1
- package/dist/utils/helpers.js +60 -35
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/is-equal.js +23 -33
- package/dist/utils/is-equal.js.map +1 -1
- package/dist/utils/tv.d.ts +16 -0
- package/dist/utils/tv.js +23 -0
- package/dist/utils/tv.js.map +1 -0
- package/dist/vite-plugin/index.js +144 -155
- package/dist/vite-plugin/index.js.map +1 -1
- package/dist/vite-plugin/scanner.js +46 -52
- package/dist/vite-plugin/scanner.js.map +1 -1
- package/dist/web-types.json +214 -39
- package/package.json +36 -27
- package/dist/_virtual/_plugin-vue_export-helper.js +0 -11
- package/dist/_virtual/_plugin-vue_export-helper.js.map +0 -1
- package/dist/components/accordions/accordion/RuiAccordion.vue.js +0 -89
- package/dist/components/accordions/accordion/RuiAccordion.vue.js.map +0 -1
- package/dist/components/accordions/accordion/RuiAccordion.vue2.js +0 -5
- package/dist/components/accordions/accordion/RuiAccordion.vue2.js.map +0 -1
- package/dist/components/accordions/accordions/RuiAccordions.vue.js +0 -79
- package/dist/components/accordions/accordions/RuiAccordions.vue.js.map +0 -1
- package/dist/components/accordions/accordions/RuiAccordions.vue2.js +0 -5
- package/dist/components/accordions/accordions/RuiAccordions.vue2.js.map +0 -1
- package/dist/components/alerts/RuiAlert.vue.js +0 -11
- package/dist/components/alerts/RuiAlert.vue.js.map +0 -1
- package/dist/components/alerts/RuiAlert.vue2.js +0 -115
- package/dist/components/alerts/RuiAlert.vue2.js.map +0 -1
- package/dist/components/alerts/RuiAlert.vue3.js +0 -50
- package/dist/components/alerts/RuiAlert.vue3.js.map +0 -1
- package/dist/components/buttons/button/RuiButton.vue.js +0 -11
- package/dist/components/buttons/button/RuiButton.vue.js.map +0 -1
- package/dist/components/buttons/button/RuiButton.vue2.js +0 -93
- package/dist/components/buttons/button/RuiButton.vue2.js.map +0 -1
- package/dist/components/buttons/button/RuiButton.vue3.js +0 -74
- package/dist/components/buttons/button/RuiButton.vue3.js.map +0 -1
- package/dist/components/buttons/button-group/RuiButtonGroup.vue.js +0 -11
- package/dist/components/buttons/button-group/RuiButtonGroup.vue.js.map +0 -1
- package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js +0 -113
- package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js.map +0 -1
- package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js +0 -58
- package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js.map +0 -1
- package/dist/components/calendar/RuiCalendar.vue.js +0 -139
- package/dist/components/calendar/RuiCalendar.vue.js.map +0 -1
- package/dist/components/calendar/RuiCalendar.vue3.js +0 -6
- package/dist/components/calendar/RuiCalendar.vue3.js.map +0 -1
- package/dist/components/calendar/RuiCalendarGrid.vue.js +0 -8
- package/dist/components/calendar/RuiCalendarGrid.vue.js.map +0 -1
- package/dist/components/calendar/RuiCalendarGrid.vue2.js +0 -151
- package/dist/components/calendar/RuiCalendarGrid.vue2.js.map +0 -1
- package/dist/components/calendar/RuiCalendarHeader.vue.js +0 -8
- package/dist/components/calendar/RuiCalendarHeader.vue.js.map +0 -1
- package/dist/components/calendar/RuiCalendarHeader.vue2.js +0 -111
- package/dist/components/calendar/RuiCalendarHeader.vue2.js.map +0 -1
- package/dist/components/calendar/RuiCalendarMenu.vue.js +0 -8
- package/dist/components/calendar/RuiCalendarMenu.vue.js.map +0 -1
- package/dist/components/calendar/RuiCalendarMenu.vue2.js +0 -269
- package/dist/components/calendar/RuiCalendarMenu.vue2.js.map +0 -1
- package/dist/components/cards/RuiCard.vue.js +0 -11
- package/dist/components/cards/RuiCard.vue.js.map +0 -1
- package/dist/components/cards/RuiCard.vue2.js +0 -88
- package/dist/components/cards/RuiCard.vue2.js.map +0 -1
- package/dist/components/cards/RuiCard.vue3.js +0 -40
- package/dist/components/cards/RuiCard.vue3.js.map +0 -1
- package/dist/components/cards/RuiCardHeader.vue.js +0 -11
- package/dist/components/cards/RuiCardHeader.vue.js.map +0 -1
- package/dist/components/cards/RuiCardHeader.vue2.js +0 -51
- package/dist/components/cards/RuiCardHeader.vue2.js.map +0 -1
- package/dist/components/cards/RuiCardHeader.vue3.js +0 -27
- package/dist/components/cards/RuiCardHeader.vue3.js.map +0 -1
- package/dist/components/chips/RuiChip.vue.js +0 -11
- package/dist/components/chips/RuiChip.vue.js.map +0 -1
- package/dist/components/chips/RuiChip.vue2.js +0 -90
- package/dist/components/chips/RuiChip.vue2.js.map +0 -1
- package/dist/components/chips/RuiChip.vue3.js +0 -88
- package/dist/components/chips/RuiChip.vue3.js.map +0 -1
- package/dist/components/color-picker/RuiColorBoard.vue.js +0 -11
- package/dist/components/color-picker/RuiColorBoard.vue.js.map +0 -1
- package/dist/components/color-picker/RuiColorBoard.vue2.js +0 -102
- package/dist/components/color-picker/RuiColorBoard.vue2.js.map +0 -1
- package/dist/components/color-picker/RuiColorBoard.vue3.js +0 -18
- package/dist/components/color-picker/RuiColorBoard.vue3.js.map +0 -1
- package/dist/components/color-picker/RuiColorDisplay.vue.js +0 -47
- package/dist/components/color-picker/RuiColorDisplay.vue.js.map +0 -1
- package/dist/components/color-picker/RuiColorDisplay.vue2.js +0 -5
- package/dist/components/color-picker/RuiColorDisplay.vue2.js.map +0 -1
- package/dist/components/color-picker/RuiColorHue.vue.js +0 -11
- package/dist/components/color-picker/RuiColorHue.vue.js.map +0 -1
- package/dist/components/color-picker/RuiColorHue.vue2.js +0 -92
- package/dist/components/color-picker/RuiColorHue.vue2.js.map +0 -1
- package/dist/components/color-picker/RuiColorHue.vue3.js +0 -12
- package/dist/components/color-picker/RuiColorHue.vue3.js.map +0 -1
- package/dist/components/color-picker/RuiColorInput.vue.js +0 -141
- package/dist/components/color-picker/RuiColorInput.vue.js.map +0 -1
- package/dist/components/color-picker/RuiColorInput.vue2.js +0 -5
- package/dist/components/color-picker/RuiColorInput.vue2.js.map +0 -1
- package/dist/components/color-picker/RuiColorPicker.vue.js +0 -81
- package/dist/components/color-picker/RuiColorPicker.vue.js.map +0 -1
- package/dist/components/color-picker/RuiColorPicker.vue2.js +0 -5
- package/dist/components/color-picker/RuiColorPicker.vue2.js.map +0 -1
- package/dist/components/date-time-picker/RuiDateTimePicker.vue.js +0 -11
- package/dist/components/date-time-picker/RuiDateTimePicker.vue.js.map +0 -1
- package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js +0 -394
- package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js.map +0 -1
- package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js +0 -66
- package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js.map +0 -1
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js +0 -120
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js.map +0 -1
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js +0 -5
- package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js.map +0 -1
- package/dist/components/divider/RuiDivider.vue.js +0 -25
- package/dist/components/divider/RuiDivider.vue.js.map +0 -1
- package/dist/components/divider/RuiDivider.vue2.js +0 -5
- package/dist/components/divider/RuiDivider.vue2.js.map +0 -1
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js +0 -11
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js.map +0 -1
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js +0 -594
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js.map +0 -1
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js +0 -60
- package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js.map +0 -1
- package/dist/components/forms/checkbox/RuiCheckbox.vue.js +0 -11
- package/dist/components/forms/checkbox/RuiCheckbox.vue.js.map +0 -1
- package/dist/components/forms/checkbox/RuiCheckbox.vue2.js +0 -148
- package/dist/components/forms/checkbox/RuiCheckbox.vue2.js.map +0 -1
- package/dist/components/forms/checkbox/RuiCheckbox.vue3.js +0 -54
- package/dist/components/forms/checkbox/RuiCheckbox.vue3.js.map +0 -1
- package/dist/components/forms/radio-button/radio/RuiRadio.vue.js +0 -11
- package/dist/components/forms/radio-button/radio/RuiRadio.vue.js.map +0 -1
- package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js +0 -122
- package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js.map +0 -1
- package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js +0 -54
- package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js.map +0 -1
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js +0 -11
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js.map +0 -1
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js +0 -84
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js.map +0 -1
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js +0 -9
- package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js.map +0 -1
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js +0 -84
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js.map +0 -1
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js +0 -5
- package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js.map +0 -1
- package/dist/components/forms/select/RuiMenuSelect.vue.js +0 -11
- package/dist/components/forms/select/RuiMenuSelect.vue.js.map +0 -1
- package/dist/components/forms/select/RuiMenuSelect.vue2.js +0 -310
- package/dist/components/forms/select/RuiMenuSelect.vue2.js.map +0 -1
- package/dist/components/forms/select/RuiMenuSelect.vue3.js +0 -60
- package/dist/components/forms/select/RuiMenuSelect.vue3.js.map +0 -1
- package/dist/components/forms/select/RuiSimpleSelect.vue.js +0 -11
- package/dist/components/forms/select/RuiSimpleSelect.vue.js.map +0 -1
- package/dist/components/forms/select/RuiSimpleSelect.vue2.js +0 -62
- package/dist/components/forms/select/RuiSimpleSelect.vue2.js.map +0 -1
- package/dist/components/forms/select/RuiSimpleSelect.vue3.js +0 -21
- package/dist/components/forms/select/RuiSimpleSelect.vue3.js.map +0 -1
- package/dist/components/forms/slider/RuiSlider.vue.js +0 -11
- package/dist/components/forms/slider/RuiSlider.vue.js.map +0 -1
- package/dist/components/forms/slider/RuiSlider.vue2.js +0 -173
- package/dist/components/forms/slider/RuiSlider.vue2.js.map +0 -1
- package/dist/components/forms/slider/RuiSlider.vue3.js +0 -80
- package/dist/components/forms/slider/RuiSlider.vue3.js.map +0 -1
- package/dist/components/forms/switch/RuiSwitch.vue.js +0 -11
- package/dist/components/forms/switch/RuiSwitch.vue.js.map +0 -1
- package/dist/components/forms/switch/RuiSwitch.vue2.js +0 -99
- package/dist/components/forms/switch/RuiSwitch.vue2.js.map +0 -1
- package/dist/components/forms/switch/RuiSwitch.vue3.js +0 -54
- package/dist/components/forms/switch/RuiSwitch.vue3.js.map +0 -1
- package/dist/components/forms/text-area/RuiTextArea.vue.js +0 -11
- package/dist/components/forms/text-area/RuiTextArea.vue.js.map +0 -1
- package/dist/components/forms/text-area/RuiTextArea.vue2.js +0 -229
- package/dist/components/forms/text-area/RuiTextArea.vue2.js.map +0 -1
- package/dist/components/forms/text-area/RuiTextArea.vue3.js +0 -92
- package/dist/components/forms/text-area/RuiTextArea.vue3.js.map +0 -1
- package/dist/components/forms/text-field/RuiTextField.vue.js +0 -11
- package/dist/components/forms/text-field/RuiTextField.vue.js.map +0 -1
- package/dist/components/forms/text-field/RuiTextField.vue2.js +0 -202
- package/dist/components/forms/text-field/RuiTextField.vue2.js.map +0 -1
- package/dist/components/forms/text-field/RuiTextField.vue3.js +0 -89
- package/dist/components/forms/text-field/RuiTextField.vue3.js.map +0 -1
- package/dist/components/helpers/RuiFormTextDetail.vue.js +0 -50
- package/dist/components/helpers/RuiFormTextDetail.vue.js.map +0 -1
- package/dist/components/helpers/RuiFormTextDetail.vue2.js +0 -5
- package/dist/components/helpers/RuiFormTextDetail.vue2.js.map +0 -1
- package/dist/components/icons/RuiIcon.vue.js +0 -11
- package/dist/components/icons/RuiIcon.vue.js.map +0 -1
- package/dist/components/icons/RuiIcon.vue2.js +0 -57
- package/dist/components/icons/RuiIcon.vue2.js.map +0 -1
- package/dist/components/icons/RuiIcon.vue3.js +0 -29
- package/dist/components/icons/RuiIcon.vue3.js.map +0 -1
- package/dist/components/index.js.map +0 -1
- package/dist/components/loaders/RuiSkeletonBase.vue.js +0 -11
- package/dist/components/loaders/RuiSkeletonBase.vue.js.map +0 -1
- package/dist/components/loaders/RuiSkeletonBase.vue2.js +0 -22
- package/dist/components/loaders/RuiSkeletonBase.vue2.js.map +0 -1
- package/dist/components/loaders/RuiSkeletonBase.vue3.js +0 -12
- package/dist/components/loaders/RuiSkeletonBase.vue3.js.map +0 -1
- package/dist/components/loaders/RuiSkeletonLoader.vue.js +0 -11
- package/dist/components/loaders/RuiSkeletonLoader.vue.js.map +0 -1
- package/dist/components/loaders/RuiSkeletonLoader.vue2.js +0 -47
- package/dist/components/loaders/RuiSkeletonLoader.vue2.js.map +0 -1
- package/dist/components/loaders/RuiSkeletonLoader.vue3.js +0 -33
- package/dist/components/loaders/RuiSkeletonLoader.vue3.js.map +0 -1
- package/dist/components/logos/RuiLogo.vue.js +0 -148
- package/dist/components/logos/RuiLogo.vue.js.map +0 -1
- package/dist/components/logos/RuiLogo.vue2.js +0 -5
- package/dist/components/logos/RuiLogo.vue2.js.map +0 -1
- package/dist/components/logos/logo.svg.js +0 -5
- package/dist/components/logos/logo.svg.js.map +0 -1
- package/dist/components/overlays/badge/RuiBadge.vue.js +0 -11
- package/dist/components/overlays/badge/RuiBadge.vue.js.map +0 -1
- package/dist/components/overlays/badge/RuiBadge.vue2.js +0 -93
- package/dist/components/overlays/badge/RuiBadge.vue2.js.map +0 -1
- package/dist/components/overlays/badge/RuiBadge.vue3.js +0 -77
- package/dist/components/overlays/badge/RuiBadge.vue3.js.map +0 -1
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js +0 -45
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js.map +0 -1
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js +0 -5
- package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js.map +0 -1
- package/dist/components/overlays/dialog/RuiDialog.vue.js +0 -11
- package/dist/components/overlays/dialog/RuiDialog.vue.js.map +0 -1
- package/dist/components/overlays/dialog/RuiDialog.vue2.js +0 -195
- package/dist/components/overlays/dialog/RuiDialog.vue2.js.map +0 -1
- package/dist/components/overlays/dialog/RuiDialog.vue3.js +0 -18
- package/dist/components/overlays/dialog/RuiDialog.vue3.js.map +0 -1
- package/dist/components/overlays/menu/RuiMenu.vue.js +0 -11
- package/dist/components/overlays/menu/RuiMenu.vue.js.map +0 -1
- package/dist/components/overlays/menu/RuiMenu.vue2.js +0 -214
- package/dist/components/overlays/menu/RuiMenu.vue2.js.map +0 -1
- package/dist/components/overlays/menu/RuiMenu.vue3.js +0 -21
- package/dist/components/overlays/menu/RuiMenu.vue3.js.map +0 -1
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js +0 -11
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js.map +0 -1
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js +0 -164
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js.map +0 -1
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js +0 -28
- package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js.map +0 -1
- package/dist/components/overlays/notification/RuiNotification.vue.js +0 -79
- package/dist/components/overlays/notification/RuiNotification.vue.js.map +0 -1
- package/dist/components/overlays/notification/RuiNotification.vue2.js +0 -5
- package/dist/components/overlays/notification/RuiNotification.vue2.js.map +0 -1
- package/dist/components/overlays/tooltip/RuiTooltip.vue.js +0 -11
- package/dist/components/overlays/tooltip/RuiTooltip.vue.js.map +0 -1
- package/dist/components/overlays/tooltip/RuiTooltip.vue2.js +0 -112
- package/dist/components/overlays/tooltip/RuiTooltip.vue2.js.map +0 -1
- package/dist/components/overlays/tooltip/RuiTooltip.vue3.js +0 -27
- package/dist/components/overlays/tooltip/RuiTooltip.vue3.js.map +0 -1
- package/dist/components/progress/RuiProgress.vue.js +0 -11
- package/dist/components/progress/RuiProgress.vue.js.map +0 -1
- package/dist/components/progress/RuiProgress.vue2.js +0 -92
- package/dist/components/progress/RuiProgress.vue2.js.map +0 -1
- package/dist/components/progress/RuiProgress.vue3.js +0 -48
- package/dist/components/progress/RuiProgress.vue3.js.map +0 -1
- package/dist/components/steppers/RuiFooterStepper.vue.js +0 -11
- package/dist/components/steppers/RuiFooterStepper.vue.js.map +0 -1
- package/dist/components/steppers/RuiFooterStepper.vue2.js +0 -150
- package/dist/components/steppers/RuiFooterStepper.vue2.js.map +0 -1
- package/dist/components/steppers/RuiFooterStepper.vue3.js +0 -31
- package/dist/components/steppers/RuiFooterStepper.vue3.js.map +0 -1
- package/dist/components/steppers/RuiStepper.vue.js +0 -11
- package/dist/components/steppers/RuiStepper.vue.js.map +0 -1
- package/dist/components/steppers/RuiStepper.vue2.js +0 -133
- package/dist/components/steppers/RuiStepper.vue2.js.map +0 -1
- package/dist/components/steppers/RuiStepper.vue3.js +0 -58
- package/dist/components/steppers/RuiStepper.vue3.js.map +0 -1
- package/dist/components/steppers/RuiStepperCustomIcon.vue.js +0 -11
- package/dist/components/steppers/RuiStepperCustomIcon.vue.js.map +0 -1
- package/dist/components/steppers/RuiStepperCustomIcon.vue2.js +0 -38
- package/dist/components/steppers/RuiStepperCustomIcon.vue2.js.map +0 -1
- package/dist/components/steppers/RuiStepperCustomIcon.vue3.js +0 -15
- package/dist/components/steppers/RuiStepperCustomIcon.vue3.js.map +0 -1
- package/dist/components/steppers/RuiStepperIcon.vue.js +0 -11
- package/dist/components/steppers/RuiStepperIcon.vue.js.map +0 -1
- package/dist/components/steppers/RuiStepperIcon.vue2.js +0 -43
- package/dist/components/steppers/RuiStepperIcon.vue2.js.map +0 -1
- package/dist/components/steppers/RuiStepperIcon.vue3.js +0 -21
- package/dist/components/steppers/RuiStepperIcon.vue3.js.map +0 -1
- package/dist/components/tables/RuiDataTable.vue.js +0 -11
- package/dist/components/tables/RuiDataTable.vue.js.map +0 -1
- package/dist/components/tables/RuiDataTable.vue2.js +0 -541
- package/dist/components/tables/RuiDataTable.vue2.js.map +0 -1
- package/dist/components/tables/RuiDataTable.vue3.js +0 -76
- package/dist/components/tables/RuiDataTable.vue3.js.map +0 -1
- package/dist/components/tables/RuiExpandButton.vue.js +0 -11
- package/dist/components/tables/RuiExpandButton.vue.js.map +0 -1
- package/dist/components/tables/RuiExpandButton.vue2.js +0 -44
- package/dist/components/tables/RuiExpandButton.vue2.js.map +0 -1
- package/dist/components/tables/RuiExpandButton.vue3.js +0 -15
- package/dist/components/tables/RuiExpandButton.vue3.js.map +0 -1
- package/dist/components/tables/RuiTableHead.vue.js +0 -11
- package/dist/components/tables/RuiTableHead.vue.js.map +0 -1
- package/dist/components/tables/RuiTableHead.vue2.js +0 -195
- package/dist/components/tables/RuiTableHead.vue2.js.map +0 -1
- package/dist/components/tables/RuiTableHead.vue3.js +0 -69
- package/dist/components/tables/RuiTableHead.vue3.js.map +0 -1
- package/dist/components/tables/RuiTablePagination.vue.js +0 -11
- package/dist/components/tables/RuiTablePagination.vue.js.map +0 -1
- package/dist/components/tables/RuiTablePagination.vue2.js +0 -204
- package/dist/components/tables/RuiTablePagination.vue2.js.map +0 -1
- package/dist/components/tables/RuiTablePagination.vue3.js +0 -28
- package/dist/components/tables/RuiTablePagination.vue3.js.map +0 -1
- package/dist/components/tables/table_no_data_placeholder.svg.js +0 -5
- package/dist/components/tables/table_no_data_placeholder.svg.js.map +0 -1
- package/dist/components/tables/table_no_data_placeholder_dark.svg.js +0 -5
- package/dist/components/tables/table_no_data_placeholder_dark.svg.js.map +0 -1
- package/dist/components/tabs/tab/RuiTab.vue.js +0 -11
- package/dist/components/tabs/tab/RuiTab.vue.js.map +0 -1
- package/dist/components/tabs/tab/RuiTab.vue2.js +0 -167
- package/dist/components/tabs/tab/RuiTab.vue2.js.map +0 -1
- package/dist/components/tabs/tab/RuiTab.vue3.js +0 -17
- package/dist/components/tabs/tab/RuiTab.vue3.js.map +0 -1
- package/dist/components/tabs/tab-item/RuiTabItem.vue.js +0 -11
- package/dist/components/tabs/tab-item/RuiTabItem.vue.js.map +0 -1
- package/dist/components/tabs/tab-item/RuiTabItem.vue2.js +0 -52
- package/dist/components/tabs/tab-item/RuiTabItem.vue2.js.map +0 -1
- package/dist/components/tabs/tab-item/RuiTabItem.vue3.js +0 -9
- package/dist/components/tabs/tab-item/RuiTabItem.vue3.js.map +0 -1
- package/dist/components/tabs/tab-items/RuiTabItems.vue.js +0 -11
- package/dist/components/tabs/tab-items/RuiTabItems.vue.js.map +0 -1
- package/dist/components/tabs/tab-items/RuiTabItems.vue2.js +0 -90
- package/dist/components/tabs/tab-items/RuiTabItems.vue2.js.map +0 -1
- package/dist/components/tabs/tab-items/RuiTabItems.vue3.js +0 -9
- package/dist/components/tabs/tab-items/RuiTabItems.vue3.js.map +0 -1
- package/dist/components/tabs/tabs/RuiTabs.vue.js +0 -11
- package/dist/components/tabs/tabs/RuiTabs.vue.js.map +0 -1
- package/dist/components/tabs/tabs/RuiTabs.vue2.js +0 -288
- package/dist/components/tabs/tabs/RuiTabs.vue2.js.map +0 -1
- package/dist/components/tabs/tabs/RuiTabs.vue3.js +0 -20
- package/dist/components/tabs/tabs/RuiTabs.vue3.js.map +0 -1
- package/dist/components/time-picker/RuiTimePicker.vue.js +0 -11
- package/dist/components/time-picker/RuiTimePicker.vue.js.map +0 -1
- package/dist/components/time-picker/RuiTimePicker.vue2.js +0 -463
- package/dist/components/time-picker/RuiTimePicker.vue2.js.map +0 -1
- package/dist/components/time-picker/RuiTimePicker.vue3.js +0 -21
- package/dist/components/time-picker/RuiTimePicker.vue3.js.map +0 -1
- package/dist/composables/forms/use-label-with-quote.js +0 -14
- package/dist/composables/forms/use-label-with-quote.js.map +0 -1
- package/dist/composables/index.js.map +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ContextColorsType } from '../../consts/colors.js';
|
|
2
|
+
/**
|
|
3
|
+
* Base color class maps used by multiple components.
|
|
4
|
+
* Each map provides static Tailwind class strings keyed by context color.
|
|
5
|
+
*/
|
|
6
|
+
/** `text-rui-{color}` — used by icon, checkbox (checked), form focus labels, etc. */
|
|
7
|
+
export declare const textColorMap: Record<ContextColorsType, string>;
|
|
8
|
+
/** `bg-rui-{color}` — used by switch, slider track, chip filled, etc. */
|
|
9
|
+
export declare const bgColorMap: Record<ContextColorsType, string>;
|
|
10
|
+
/** `before:bg-rui-{color}` — used by checkbox and radio ripple */
|
|
11
|
+
export declare const beforeBgColorMap: Record<ContextColorsType, string>;
|
|
12
|
+
/** `border-rui-{color}` — used by text fields, alerts, etc. */
|
|
13
|
+
export declare const borderColorMap: Record<ContextColorsType, string>;
|
|
14
|
+
/** `after:border-rui-{color}` — used by text field and text area labels */
|
|
15
|
+
export declare const afterBorderColorMap: Record<ContextColorsType, string>;
|
|
16
|
+
/**
|
|
17
|
+
* Colors that need `dark:text-rui-light-text` on filled/default variants.
|
|
18
|
+
* warning, success, info need special dark mode text treatment.
|
|
19
|
+
*/
|
|
20
|
+
export declare const darkLightTextColorMap: Record<ContextColorsType, string>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { afterBorderColorMap, beforeBgColorMap, bgColorMap, borderColorMap, darkLightTextColorMap, textColorMap, } from '../../composables/colors/common';
|
|
2
|
+
export { getTextInputColorClasses, getTextInputValidationClasses } from '../../composables/colors/text-input';
|
|
3
|
+
export type { TextInputColorClasses, TextInputValidationClasses } from '../../composables/colors/text-input';
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ContextColorsType } from '../../consts/colors.js';
|
|
2
|
+
interface TextInputColorClasses {
|
|
3
|
+
/** Focus label text color */
|
|
4
|
+
focusLabel: string;
|
|
5
|
+
/** Label after pseudo-element border */
|
|
6
|
+
labelAfterBorder: string;
|
|
7
|
+
/** Outlined fieldset border on focus */
|
|
8
|
+
outlinedFocusFieldset: string;
|
|
9
|
+
/** Text color for prepend, append, and input */
|
|
10
|
+
textContent: string;
|
|
11
|
+
}
|
|
12
|
+
interface TextInputValidationClasses {
|
|
13
|
+
/** Input border color with !important */
|
|
14
|
+
inputBorder: string;
|
|
15
|
+
/** Label text + after border with !important */
|
|
16
|
+
label: string;
|
|
17
|
+
/** Fieldset border with !important */
|
|
18
|
+
fieldset: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Shared by RuiTextField and RuiTextArea — identical color patterns.
|
|
22
|
+
*
|
|
23
|
+
* Maps the SCSS color loop for all 6 context colors.
|
|
24
|
+
*/
|
|
25
|
+
export declare function getTextInputColorClasses(color?: ContextColorsType): TextInputColorClasses | undefined;
|
|
26
|
+
export declare function getTextInputValidationClasses(color: 'error' | 'success'): TextInputValidationClasses;
|
|
27
|
+
export type { TextInputColorClasses, TextInputValidationClasses };
|
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
import { inject, ref } from "vue";
|
|
2
|
-
|
|
2
|
+
//#region src/composables/defaults/table.ts
|
|
3
|
+
var TableSymbol = Symbol.for("rui:table");
|
|
3
4
|
function createTableDefaults(options) {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
return {
|
|
6
|
+
globalItemsPerPage: false,
|
|
7
|
+
itemsPerPage: ref(10),
|
|
8
|
+
limits: [
|
|
9
|
+
10,
|
|
10
|
+
25,
|
|
11
|
+
50,
|
|
12
|
+
100
|
|
13
|
+
],
|
|
14
|
+
stickyOffset: ref(0),
|
|
15
|
+
...options
|
|
16
|
+
};
|
|
11
17
|
}
|
|
12
18
|
function useTable() {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
return options;
|
|
19
|
+
const options = inject(TableSymbol);
|
|
20
|
+
if (!options) throw new Error("Could not find rui table options injection");
|
|
21
|
+
return options;
|
|
17
22
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=table.js.map
|
|
23
|
+
//#endregion
|
|
24
|
+
export { TableSymbol, createTableDefaults, useTable };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sources":["../../../src/composables/defaults/table.ts"],"sourcesContent":["import type { InjectionKey, MaybeRef, Ref } from 'vue';\n\nexport interface TableOptions {\n itemsPerPage: Ref<number>;\n globalItemsPerPage: MaybeRef<boolean>;\n limits: MaybeRef<number[]>;\n stickyOffset: MaybeRef<number>;\n}\n\nexport const TableSymbol: InjectionKey<TableOptions> = Symbol.for('rui:table');\n\nexport function createTableDefaults(options?: Partial<TableOptions>): TableOptions {\n return {\n globalItemsPerPage: false,\n itemsPerPage: ref(10),\n limits: [10, 25, 50, 100],\n stickyOffset: ref(0),\n ...options,\n };\n}\n\nexport function useTable() {\n const options = inject(TableSymbol);\n\n if (!options)\n throw new Error('Could not find rui table options injection');\n\n return options;\n}\n"],"
|
|
1
|
+
{"version":3,"file":"table.js","names":[],"sources":["../../../src/composables/defaults/table.ts"],"sourcesContent":["import type { InjectionKey, MaybeRef, Ref } from 'vue';\n\nexport interface TableOptions {\n itemsPerPage: Ref<number>;\n globalItemsPerPage: MaybeRef<boolean>;\n limits: MaybeRef<number[]>;\n stickyOffset: MaybeRef<number>;\n}\n\nexport const TableSymbol: InjectionKey<TableOptions> = Symbol.for('rui:table');\n\nexport function createTableDefaults(options?: Partial<TableOptions>): TableOptions {\n return {\n globalItemsPerPage: false,\n itemsPerPage: ref(10),\n limits: [10, 25, 50, 100],\n stickyOffset: ref(0),\n ...options,\n };\n}\n\nexport function useTable() {\n const options = inject(TableSymbol);\n\n if (!options)\n throw new Error('Could not find rui table options injection');\n\n return options;\n}\n"],"mappings":";;AASA,IAAa,cAA0C,OAAO,IAAI,YAAY;AAE9E,SAAgB,oBAAoB,SAA+C;AACjF,QAAO;EACL,oBAAoB;EACpB,cAAc,IAAI,GAAG;EACrB,QAAQ;GAAC;GAAI;GAAI;GAAI;GAAI;EACzB,cAAc,IAAI,EAAE;EACpB,GAAG;EACJ;;AAGH,SAAgB,WAAW;CACzB,MAAM,UAAU,OAAO,YAAY;AAEnC,KAAI,CAAC,QACH,OAAM,IAAI,MAAM,6CAA6C;AAE/D,QAAO"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Ref, TemplateRef } from 'vue';
|
|
1
|
+
import type { MaybeRefOrGetter, Ref, TemplateRef } from 'vue';
|
|
2
2
|
export type KeyOfType<T, V> = T extends string | number | boolean | symbol | null | undefined ? never : V extends object ? keyof T : keyof {
|
|
3
3
|
[P in keyof T as T[P] extends V ? P : V extends T[P] ? P : never]: any;
|
|
4
4
|
};
|
|
@@ -7,9 +7,9 @@ export interface DropdownItemAttr<TValue, TItem> {
|
|
|
7
7
|
textAttr?: keyof TItem | ((item: TItem) => string);
|
|
8
8
|
}
|
|
9
9
|
export interface DropdownOptions<TValue, TItem> {
|
|
10
|
-
options:
|
|
11
|
-
dense?:
|
|
12
|
-
disabled?:
|
|
10
|
+
options: MaybeRefOrGetter<TItem[]>;
|
|
11
|
+
dense?: MaybeRefOrGetter<boolean>;
|
|
12
|
+
disabled?: MaybeRefOrGetter<boolean>;
|
|
13
13
|
value: Ref<TItem | TItem[] | undefined>;
|
|
14
14
|
menuRef: Ref<HTMLElement> | TemplateRef<HTMLElement>;
|
|
15
15
|
keyAttr?: KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>;
|
|
@@ -19,7 +19,6 @@ export interface DropdownOptions<TValue, TItem> {
|
|
|
19
19
|
itemHeight?: number;
|
|
20
20
|
overscan?: number;
|
|
21
21
|
autoSelectFirst?: boolean;
|
|
22
|
-
autoFocus?: boolean;
|
|
23
22
|
setValue?: (val: TItem) => void;
|
|
24
23
|
hideSelected?: boolean;
|
|
25
24
|
isOpen?: Ref<boolean>;
|
|
@@ -30,7 +29,7 @@ export declare function useDropdownOptionProperty<TValue, TItem>({ keyAttr, text
|
|
|
30
29
|
getIdentifier: (item: TItem) => TItem | TItem[KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>];
|
|
31
30
|
getText: (item: TItem) => string | undefined;
|
|
32
31
|
};
|
|
33
|
-
export declare function useDropdownMenu<TValue, TItem>({ appendWidth,
|
|
32
|
+
export declare function useDropdownMenu<TValue, TItem>({ appendWidth, autoSelectFirst, dense, disabled, getIdentifier: externalGetIdentifier, getText: externalGetText, hideSelected, isOpen: externalIsOpen, itemHeight, keyAttr, menuRef: _menuRef, options: allOptions, overscan, prependWidth, setValue, textAttr, value, }: DropdownOptions<TValue, TItem>): {
|
|
34
33
|
applyHighlighted: () => void;
|
|
35
34
|
containerProps: {
|
|
36
35
|
ref: Ref<HTMLElement | null>;
|
|
@@ -51,6 +50,7 @@ export declare function useDropdownMenu<TValue, TItem>({ appendWidth, autoFocus,
|
|
|
51
50
|
item: TItem;
|
|
52
51
|
}>;
|
|
53
52
|
toggle: (state?: boolean) => void;
|
|
53
|
+
userNavigated: Ref<boolean, boolean>;
|
|
54
54
|
valueKey: globalThis.ComputedRef<TItem | TItem[] | TItem[KeyOfType<TItem, TValue extends (infer U)[] ? U : TValue>][] | NonNullable<TItem>[KeyOfType<TItem, TValue extends (infer U)[] ? U : TValue>] | undefined>;
|
|
55
55
|
wrapperProps: globalThis.ComputedRef<{
|
|
56
56
|
style: {
|
|
@@ -1,241 +1,173 @@
|
|
|
1
|
-
import { computed,
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
return item;
|
|
20
|
-
}
|
|
21
|
-
return {
|
|
22
|
-
getIdentifier,
|
|
23
|
-
getText
|
|
24
|
-
};
|
|
1
|
+
import { computed, nextTick, ref, shallowRef, toValue, watch } from "vue";
|
|
2
|
+
import { useArrayMap, useVirtualList } from "@vueuse/core";
|
|
3
|
+
import { get as get$1, set as set$1 } from "@vueuse/shared";
|
|
4
|
+
//#region src/composables/dropdown-menu.ts
|
|
5
|
+
function useDropdownOptionProperty({ keyAttr, textAttr }) {
|
|
6
|
+
function getText(item) {
|
|
7
|
+
if (textAttr) if (typeof textAttr === "function") return textAttr(item);
|
|
8
|
+
else return item[textAttr]?.toString();
|
|
9
|
+
return item?.toString();
|
|
10
|
+
}
|
|
11
|
+
function getIdentifier(item) {
|
|
12
|
+
if (keyAttr) return item[keyAttr];
|
|
13
|
+
return item;
|
|
14
|
+
}
|
|
15
|
+
return {
|
|
16
|
+
getIdentifier,
|
|
17
|
+
getText
|
|
18
|
+
};
|
|
25
19
|
}
|
|
26
20
|
function toSelectedArray(val) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return [val];
|
|
31
|
-
return [];
|
|
21
|
+
if (Array.isArray(val)) return val;
|
|
22
|
+
if (val !== null && val !== void 0) return [val];
|
|
23
|
+
return [];
|
|
32
24
|
}
|
|
33
|
-
function useDropdownMenu({
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
watch(highlightedIndex, async (curr, prev) => {
|
|
178
|
-
if (curr !== prev)
|
|
179
|
-
await adjustScrollByHighlightedIndex(true);
|
|
180
|
-
});
|
|
181
|
-
watch(options, async () => {
|
|
182
|
-
if (get(highlightedIndex) !== -1) {
|
|
183
|
-
if (get(autoSelectFirst)) {
|
|
184
|
-
set(highlightedIndex, 0);
|
|
185
|
-
await adjustScrollByHighlightedIndex();
|
|
186
|
-
} else {
|
|
187
|
-
set(highlightedIndex, -1);
|
|
188
|
-
scrollTo(0);
|
|
189
|
-
}
|
|
190
|
-
} else {
|
|
191
|
-
scrollTo(0);
|
|
192
|
-
}
|
|
193
|
-
});
|
|
194
|
-
const moveHighlight = (up) => {
|
|
195
|
-
if (!get(isOpen)) {
|
|
196
|
-
toggle(true);
|
|
197
|
-
return;
|
|
198
|
-
}
|
|
199
|
-
let position = get(highlightedIndex);
|
|
200
|
-
const move = up ? -1 : 1;
|
|
201
|
-
position += move;
|
|
202
|
-
const total = get(options).length;
|
|
203
|
-
if (position >= total)
|
|
204
|
-
set(highlightedIndex, 0);
|
|
205
|
-
else if (position < 0)
|
|
206
|
-
set(highlightedIndex, total - 1);
|
|
207
|
-
else set(highlightedIndex, position);
|
|
208
|
-
};
|
|
209
|
-
const applyHighlighted = () => {
|
|
210
|
-
if (!setValue || !get(isOpen))
|
|
211
|
-
return;
|
|
212
|
-
const highlightedIndexVal = get(highlightedIndex);
|
|
213
|
-
if (highlightedIndexVal === -1)
|
|
214
|
-
return;
|
|
215
|
-
const entry = get(options)[highlightedIndexVal];
|
|
216
|
-
if (entry !== void 0)
|
|
217
|
-
setValue(entry);
|
|
218
|
-
};
|
|
219
|
-
return {
|
|
220
|
-
applyHighlighted,
|
|
221
|
-
containerProps,
|
|
222
|
-
getIdentifier,
|
|
223
|
-
getText,
|
|
224
|
-
highlightedIndex,
|
|
225
|
-
isActiveItem,
|
|
226
|
-
isOpen,
|
|
227
|
-
itemIndexInValue,
|
|
228
|
-
menuWidth,
|
|
229
|
-
moveHighlight,
|
|
230
|
-
optionsWithSelectedHidden: options,
|
|
231
|
-
renderedData,
|
|
232
|
-
toggle,
|
|
233
|
-
valueKey,
|
|
234
|
-
wrapperProps
|
|
235
|
-
};
|
|
25
|
+
function useDropdownMenu({ appendWidth, autoSelectFirst, dense, disabled = false, getIdentifier: externalGetIdentifier, getText: externalGetText, hideSelected, isOpen: externalIsOpen, itemHeight = 48, keyAttr, menuRef: _menuRef, options: allOptions, overscan = 5, prependWidth, setValue, textAttr, value }) {
|
|
26
|
+
const { getIdentifier: defaultGetIdentifier, getText: defaultGetText } = useDropdownOptionProperty({
|
|
27
|
+
keyAttr,
|
|
28
|
+
textAttr
|
|
29
|
+
});
|
|
30
|
+
const getIdentifier = externalGetIdentifier ?? defaultGetIdentifier;
|
|
31
|
+
const getText = externalGetText ?? defaultGetText;
|
|
32
|
+
const activeIdentifiers = computed(() => {
|
|
33
|
+
const selected = toSelectedArray(get$1(value));
|
|
34
|
+
const identifiers = /* @__PURE__ */ new Set();
|
|
35
|
+
for (const item of selected) identifiers.add(getIdentifier(item));
|
|
36
|
+
return identifiers;
|
|
37
|
+
});
|
|
38
|
+
function isActiveItem(item) {
|
|
39
|
+
return get$1(activeIdentifiers).has(getIdentifier(item));
|
|
40
|
+
}
|
|
41
|
+
const options = computed(() => {
|
|
42
|
+
const options = toValue(allOptions);
|
|
43
|
+
if (!hideSelected) return options;
|
|
44
|
+
return options.filter((item) => !isActiveItem(item));
|
|
45
|
+
});
|
|
46
|
+
const { containerProps, list, scrollTo, wrapperProps } = useVirtualList(options, {
|
|
47
|
+
itemHeight,
|
|
48
|
+
overscan
|
|
49
|
+
});
|
|
50
|
+
const renderedData = useArrayMap(list, ({ data, index: _index }) => ({
|
|
51
|
+
_index,
|
|
52
|
+
item: data
|
|
53
|
+
}));
|
|
54
|
+
const isOpen = externalIsOpen ?? shallowRef(false);
|
|
55
|
+
const valueKey = computed(() => {
|
|
56
|
+
const selected = get$1(value);
|
|
57
|
+
if (!keyAttr || !selected) return selected;
|
|
58
|
+
return Array.isArray(selected) ? selected.map((item) => item[keyAttr]) : selected[keyAttr];
|
|
59
|
+
});
|
|
60
|
+
const highlightedIndex = ref(get$1(autoSelectFirst) ? 0 : -1);
|
|
61
|
+
const userNavigated = ref(false);
|
|
62
|
+
const optionWidthBounds = computed(() => {
|
|
63
|
+
let min = 0;
|
|
64
|
+
let max = 0;
|
|
65
|
+
for (const option of get$1(options)) {
|
|
66
|
+
const length = getText(option)?.toString()?.length ?? 0;
|
|
67
|
+
if (min === 0 && max === 0) {
|
|
68
|
+
min = length;
|
|
69
|
+
max = length;
|
|
70
|
+
} else if (length < min) min = length;
|
|
71
|
+
else if (length > max) max = length;
|
|
72
|
+
}
|
|
73
|
+
return {
|
|
74
|
+
min,
|
|
75
|
+
max
|
|
76
|
+
};
|
|
77
|
+
});
|
|
78
|
+
const menuWidth = computed(() => {
|
|
79
|
+
const { min, max } = get$1(optionWidthBounds);
|
|
80
|
+
const maxWidth = 30;
|
|
81
|
+
const paddingX = 1.5;
|
|
82
|
+
const fontMultiplier = toValue(dense) ? 12 : 13;
|
|
83
|
+
const difference = max - min;
|
|
84
|
+
function computeValue(width) {
|
|
85
|
+
const additionalWidths = (prependWidth ? prependWidth + .5 : 0) + (appendWidth ? appendWidth + .5 : 0);
|
|
86
|
+
return `${Math.min(width * fontMultiplier / 16 + paddingX + additionalWidths, maxWidth)}rem`;
|
|
87
|
+
}
|
|
88
|
+
if (difference <= 5) return computeValue(max);
|
|
89
|
+
return computeValue(min + difference / 2);
|
|
90
|
+
});
|
|
91
|
+
function toggle(state = false) {
|
|
92
|
+
set$1(isOpen, state);
|
|
93
|
+
}
|
|
94
|
+
function itemIndexInValue(item) {
|
|
95
|
+
const selected = toSelectedArray(get$1(value));
|
|
96
|
+
if (selected.length === 0) return -1;
|
|
97
|
+
const itemId = getIdentifier(item);
|
|
98
|
+
return selected.findIndex((selectedItem) => getIdentifier(selectedItem) === itemId);
|
|
99
|
+
}
|
|
100
|
+
function adjustScrollByHighlightedIndex() {
|
|
101
|
+
const index = get$1(highlightedIndex);
|
|
102
|
+
if (index > -1) scrollTo(index);
|
|
103
|
+
}
|
|
104
|
+
function updateOpen(open) {
|
|
105
|
+
if (!open) return;
|
|
106
|
+
const val = get$1(value);
|
|
107
|
+
if (Array.isArray(val) && val.length > 0 || val !== null && val !== void 0) {
|
|
108
|
+
const index = get$1(options).findIndex(isActiveItem);
|
|
109
|
+
if (index > -1) set$1(highlightedIndex, index);
|
|
110
|
+
}
|
|
111
|
+
nextTick(() => adjustScrollByHighlightedIndex());
|
|
112
|
+
}
|
|
113
|
+
watch([isOpen, () => toValue(disabled)], ([open, _]) => {
|
|
114
|
+
updateOpen(open);
|
|
115
|
+
});
|
|
116
|
+
watch(highlightedIndex, () => adjustScrollByHighlightedIndex());
|
|
117
|
+
watch(options, () => {
|
|
118
|
+
set$1(userNavigated, false);
|
|
119
|
+
if (get$1(highlightedIndex) !== -1) if (get$1(autoSelectFirst)) {
|
|
120
|
+
set$1(highlightedIndex, 0);
|
|
121
|
+
adjustScrollByHighlightedIndex();
|
|
122
|
+
} else {
|
|
123
|
+
set$1(highlightedIndex, -1);
|
|
124
|
+
scrollTo(0);
|
|
125
|
+
}
|
|
126
|
+
else scrollTo(0);
|
|
127
|
+
});
|
|
128
|
+
watch(isOpen, (open) => {
|
|
129
|
+
if (!open) set$1(userNavigated, false);
|
|
130
|
+
});
|
|
131
|
+
const moveHighlight = (up) => {
|
|
132
|
+
if (!get$1(isOpen)) {
|
|
133
|
+
toggle(true);
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
set$1(userNavigated, true);
|
|
137
|
+
let position = get$1(highlightedIndex);
|
|
138
|
+
position += up ? -1 : 1;
|
|
139
|
+
const total = get$1(options).length;
|
|
140
|
+
if (position >= total) set$1(highlightedIndex, 0);
|
|
141
|
+
else if (position < 0) set$1(highlightedIndex, total - 1);
|
|
142
|
+
else set$1(highlightedIndex, position);
|
|
143
|
+
};
|
|
144
|
+
const applyHighlighted = () => {
|
|
145
|
+
if (!setValue || !get$1(isOpen)) return;
|
|
146
|
+
const highlightedIndexVal = get$1(highlightedIndex);
|
|
147
|
+
if (highlightedIndexVal === -1) return;
|
|
148
|
+
const entry = get$1(options)[highlightedIndexVal];
|
|
149
|
+
if (entry !== void 0) setValue(entry);
|
|
150
|
+
};
|
|
151
|
+
return {
|
|
152
|
+
applyHighlighted,
|
|
153
|
+
containerProps,
|
|
154
|
+
getIdentifier,
|
|
155
|
+
getText,
|
|
156
|
+
highlightedIndex,
|
|
157
|
+
isActiveItem,
|
|
158
|
+
isOpen,
|
|
159
|
+
itemIndexInValue,
|
|
160
|
+
menuWidth,
|
|
161
|
+
moveHighlight,
|
|
162
|
+
optionsWithSelectedHidden: options,
|
|
163
|
+
renderedData,
|
|
164
|
+
toggle,
|
|
165
|
+
userNavigated,
|
|
166
|
+
valueKey,
|
|
167
|
+
wrapperProps
|
|
168
|
+
};
|
|
236
169
|
}
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
//# sourceMappingURL=dropdown-menu.js.map
|
|
170
|
+
//#endregion
|
|
171
|
+
export { useDropdownMenu, useDropdownOptionProperty };
|
|
172
|
+
|
|
173
|
+
//# sourceMappingURL=dropdown-menu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-menu.js","sources":["../../src/composables/dropdown-menu.ts"],"sourcesContent":["import type { Ref, TemplateRef } from 'vue';\n\nexport type KeyOfType<T, V> = T extends string | number | boolean | symbol | null | undefined\n ? never\n : V extends object\n ? keyof T\n : keyof {\n [P in keyof T as T[P] extends V ? P : V extends T[P] ? P : never]: any;\n };\n\nexport interface DropdownItemAttr<TValue, TItem> {\n keyAttr?: KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>;\n textAttr?: keyof TItem | ((item: TItem) => string);\n}\n\nexport interface DropdownOptions<TValue, TItem> {\n options: Ref<TItem[]>;\n dense?: Ref<boolean>;\n disabled?: Ref<boolean>;\n value: Ref<TItem | TItem[] | undefined>;\n menuRef: Ref<HTMLElement> | TemplateRef<HTMLElement>;\n keyAttr?: KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>;\n textAttr?: keyof TItem | ((item: TItem) => string);\n appendWidth?: number;\n prependWidth?: number;\n itemHeight?: number;\n overscan?: number;\n autoSelectFirst?: boolean;\n autoFocus?: boolean;\n setValue?: (val: TItem) => void;\n hideSelected?: boolean;\n isOpen?: Ref<boolean>;\n getText?: (item: TItem) => string | undefined;\n getIdentifier?: (item: TItem) => any;\n}\n\nexport function useDropdownOptionProperty<TValue, TItem>({\n keyAttr,\n textAttr,\n}: DropdownItemAttr<TValue, TItem>) {\n function getText(item: TItem): string | undefined {\n if (textAttr) {\n if (typeof textAttr === 'function')\n return textAttr(item);\n else return item[textAttr]?.toString();\n }\n\n return item?.toString();\n }\n\n function getIdentifier(\n item: TItem,\n ): TItem | TItem[KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>] {\n if (keyAttr)\n return item[keyAttr];\n\n return item;\n }\n\n return {\n getIdentifier,\n getText,\n };\n}\n\nfunction toSelectedArray<TItem>(val: TItem | TItem[] | undefined): TItem[] {\n if (Array.isArray(val))\n return val;\n if (val !== null && val !== undefined)\n return [val];\n return [];\n}\n\nexport function useDropdownMenu<TValue, TItem>({\n appendWidth,\n autoFocus,\n autoSelectFirst,\n dense,\n disabled = shallowRef(false),\n getIdentifier: externalGetIdentifier,\n getText: externalGetText,\n hideSelected,\n isOpen: externalIsOpen,\n itemHeight = 48,\n keyAttr,\n menuRef,\n options: allOptions,\n overscan = 5,\n prependWidth,\n setValue,\n textAttr,\n value,\n}: DropdownOptions<TValue, TItem>) {\n const { getIdentifier: defaultGetIdentifier, getText: defaultGetText } = useDropdownOptionProperty({\n keyAttr,\n textAttr,\n });\n\n const getIdentifier = externalGetIdentifier ?? defaultGetIdentifier;\n const getText = externalGetText ?? defaultGetText;\n\n const activeIdentifiers = computed<Set<any>>(() => {\n const val = get(value);\n const selected: TItem[] = toSelectedArray(val);\n const identifiers = new Set<any>();\n for (const item of selected) {\n identifiers.add(getIdentifier(item));\n }\n return identifiers;\n });\n\n function isActiveItem(item: TItem): boolean {\n return get(activeIdentifiers).has(getIdentifier(item));\n }\n\n const options = computed<TItem[]>(() => {\n const options = get(allOptions);\n if (!hideSelected)\n return options;\n\n return options.filter(item => !isActiveItem(item));\n });\n\n const { containerProps, list, scrollTo, wrapperProps } = useVirtualList<TItem>(options, {\n itemHeight,\n overscan,\n });\n\n const renderedData = useArrayMap(list, ({ data, index: _index }) => ({ _index, item: data }));\n\n const isOpen = externalIsOpen ?? shallowRef<boolean>(false);\n\n const valueKey = computed(() => {\n const selected = get(value);\n if (!keyAttr || !selected)\n return selected;\n return Array.isArray(selected) ? selected.map(item => item[keyAttr]) : selected[keyAttr];\n });\n\n const highlightedIndex: Ref<number> = ref(get(autoSelectFirst) ? 0 : -1);\n\n const optionWidthBounds = computed<{ min: number; max: number }>(() => {\n let min = 0;\n let max = 0;\n for (const option of get(options)) {\n const length = getText(option)?.toString()?.length ?? 0;\n if (min === 0 && max === 0) {\n min = length;\n max = length;\n }\n else if (length < min) {\n min = length;\n }\n else if (length > max) {\n max = length;\n }\n }\n return { min, max };\n });\n\n const menuWidth = computed<string>(() => {\n const { min, max } = get(optionWidthBounds);\n const maxWidth = 30;\n const paddingX = 1.5;\n const fontMultiplier = get(dense) ? 12 : 13;\n const difference = max - min;\n\n function computeValue(width: number): string {\n const additionalWidths =\n (prependWidth ? prependWidth + 0.5 : 0) + (appendWidth ? appendWidth + 0.5 : 0);\n return `${Math.min((width * fontMultiplier) / 16 + paddingX + additionalWidths, maxWidth)}rem`;\n }\n\n if (difference <= 5)\n return computeValue(max);\n\n return computeValue(min + difference / 2);\n });\n\n function toggle(state: boolean = false): void {\n set(isOpen, state);\n }\n\n function itemIndexInValue(item: TItem): number {\n const val = get(value);\n const selected: TItem[] = toSelectedArray(val);\n\n if (selected.length === 0)\n return -1;\n\n const itemId = getIdentifier(item);\n return selected.findIndex(selectedItem => getIdentifier(selectedItem) === itemId);\n }\n\n async function adjustScrollByHighlightedIndex(smooth: boolean = false): Promise<void> {\n const index = get(highlightedIndex);\n if (index > -1) {\n await nextTick(() => {\n const menuEl = get(menuRef);\n const container = menuEl?.parentElement;\n if (container && menuEl) {\n const highlightedElem = menuEl.getElementsByClassName('highlighted')[0];\n\n if (highlightedElem) {\n highlightedElem.scrollIntoView?.({\n behavior: smooth ? 'smooth' : 'auto',\n block: 'nearest',\n });\n if (\n get(autoFocus) &&\n 'focus' in highlightedElem &&\n typeof highlightedElem.focus === 'function'\n ) {\n highlightedElem?.focus();\n }\n }\n else {\n scrollTo(index);\n if (get(autoFocus)) {\n const elem = menuEl.getElementsByClassName('highlighted')[0];\n if (elem && 'focus' in elem && typeof elem.focus === 'function')\n elem.focus();\n }\n }\n }\n });\n }\n }\n\n async function updateOpen(open: boolean): Promise<void> {\n await nextTick(() => {\n if (open) {\n const val = get(value);\n\n // set highlighted index to active item\n if ((Array.isArray(val) && val.length > 0) || (val !== null && val !== undefined)) {\n const index = get(options).findIndex(isActiveItem);\n if (index > -1)\n set(highlightedIndex, index);\n }\n\n watchOnce(list, async () => {\n await adjustScrollByHighlightedIndex();\n });\n }\n });\n }\n\n watch([isOpen, disabled], async ([open, _]) => {\n await updateOpen(open);\n });\n\n watch(highlightedIndex, async (curr, prev) => {\n if (curr !== prev)\n await adjustScrollByHighlightedIndex(true);\n });\n\n watch(options, async () => {\n if (get(highlightedIndex) !== -1) {\n if (get(autoSelectFirst)) {\n set(highlightedIndex, 0);\n await adjustScrollByHighlightedIndex();\n }\n else {\n set(highlightedIndex, -1);\n scrollTo(0);\n }\n }\n else {\n scrollTo(0);\n }\n });\n\n const moveHighlight = (up: boolean): void => {\n if (!get(isOpen)) {\n toggle(true);\n return;\n }\n\n let position = get(highlightedIndex);\n const move = up ? -1 : 1;\n\n position += move;\n\n const total = get(options).length;\n\n if (position >= total)\n set(highlightedIndex, 0);\n else if (position < 0)\n set(highlightedIndex, total - 1);\n else set(highlightedIndex, position);\n };\n\n const applyHighlighted = (): void => {\n if (!setValue || !get(isOpen))\n return;\n\n const highlightedIndexVal = get(highlightedIndex);\n if (highlightedIndexVal === -1)\n return;\n\n const entry = get(options)[highlightedIndexVal];\n if (entry !== undefined)\n setValue(entry);\n };\n\n return {\n applyHighlighted,\n containerProps,\n getIdentifier,\n getText,\n highlightedIndex,\n isActiveItem,\n isOpen,\n itemIndexInValue,\n menuWidth,\n moveHighlight,\n optionsWithSelectedHidden: options,\n renderedData,\n toggle,\n valueKey,\n wrapperProps,\n };\n}\n"],"names":["options"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dropdown-menu.js","names":[],"sources":["../../src/composables/dropdown-menu.ts"],"sourcesContent":["import type { MaybeRefOrGetter, Ref, TemplateRef } from 'vue';\n\nexport type KeyOfType<T, V> = T extends string | number | boolean | symbol | null | undefined\n ? never\n : V extends object\n ? keyof T\n : keyof {\n [P in keyof T as T[P] extends V ? P : V extends T[P] ? P : never]: any;\n };\n\nexport interface DropdownItemAttr<TValue, TItem> {\n keyAttr?: KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>;\n textAttr?: keyof TItem | ((item: TItem) => string);\n}\n\nexport interface DropdownOptions<TValue, TItem> {\n options: MaybeRefOrGetter<TItem[]>;\n dense?: MaybeRefOrGetter<boolean>;\n disabled?: MaybeRefOrGetter<boolean>;\n value: Ref<TItem | TItem[] | undefined>;\n menuRef: Ref<HTMLElement> | TemplateRef<HTMLElement>;\n keyAttr?: KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>;\n textAttr?: keyof TItem | ((item: TItem) => string);\n appendWidth?: number;\n prependWidth?: number;\n itemHeight?: number;\n overscan?: number;\n autoSelectFirst?: boolean;\n setValue?: (val: TItem) => void;\n hideSelected?: boolean;\n isOpen?: Ref<boolean>;\n getText?: (item: TItem) => string | undefined;\n getIdentifier?: (item: TItem) => any;\n}\n\nexport function useDropdownOptionProperty<TValue, TItem>({\n keyAttr,\n textAttr,\n}: DropdownItemAttr<TValue, TItem>) {\n function getText(item: TItem): string | undefined {\n if (textAttr) {\n if (typeof textAttr === 'function')\n return textAttr(item);\n else return item[textAttr]?.toString();\n }\n\n return item?.toString();\n }\n\n function getIdentifier(\n item: TItem,\n ): TItem | TItem[KeyOfType<TItem, TValue extends Array<infer U> ? U : TValue>] {\n if (keyAttr)\n return item[keyAttr];\n\n return item;\n }\n\n return {\n getIdentifier,\n getText,\n };\n}\n\nfunction toSelectedArray<TItem>(val: TItem | TItem[] | undefined): TItem[] {\n if (Array.isArray(val))\n return val;\n if (val !== null && val !== undefined)\n return [val];\n return [];\n}\n\nexport function useDropdownMenu<TValue, TItem>({\n appendWidth,\n autoSelectFirst,\n dense,\n disabled = false,\n getIdentifier: externalGetIdentifier,\n getText: externalGetText,\n hideSelected,\n isOpen: externalIsOpen,\n itemHeight = 48,\n keyAttr,\n menuRef: _menuRef,\n options: allOptions,\n overscan = 5,\n prependWidth,\n setValue,\n textAttr,\n value,\n}: DropdownOptions<TValue, TItem>) {\n const { getIdentifier: defaultGetIdentifier, getText: defaultGetText } = useDropdownOptionProperty({\n keyAttr,\n textAttr,\n });\n\n const getIdentifier = externalGetIdentifier ?? defaultGetIdentifier;\n const getText = externalGetText ?? defaultGetText;\n\n const activeIdentifiers = computed<Set<any>>(() => {\n const val = get(value);\n const selected: TItem[] = toSelectedArray(val);\n const identifiers = new Set<any>();\n for (const item of selected) {\n identifiers.add(getIdentifier(item));\n }\n return identifiers;\n });\n\n function isActiveItem(item: TItem): boolean {\n return get(activeIdentifiers).has(getIdentifier(item));\n }\n\n const options = computed<TItem[]>(() => {\n const options = toValue(allOptions);\n if (!hideSelected)\n return options;\n\n return options.filter(item => !isActiveItem(item));\n });\n\n const { containerProps, list, scrollTo, wrapperProps } = useVirtualList<TItem>(options, {\n itemHeight,\n overscan,\n });\n\n const renderedData = useArrayMap(list, ({ data, index: _index }) => ({ _index, item: data }));\n\n const isOpen = externalIsOpen ?? shallowRef<boolean>(false);\n\n const valueKey = computed(() => {\n const selected = get(value);\n if (!keyAttr || !selected)\n return selected;\n return Array.isArray(selected) ? selected.map(item => item[keyAttr]) : selected[keyAttr];\n });\n\n const highlightedIndex: Ref<number> = ref(get(autoSelectFirst) ? 0 : -1);\n const userNavigated = ref<boolean>(false);\n\n const optionWidthBounds = computed<{ min: number; max: number }>(() => {\n let min = 0;\n let max = 0;\n for (const option of get(options)) {\n const length = getText(option)?.toString()?.length ?? 0;\n if (min === 0 && max === 0) {\n min = length;\n max = length;\n }\n else if (length < min) {\n min = length;\n }\n else if (length > max) {\n max = length;\n }\n }\n return { min, max };\n });\n\n const menuWidth = computed<string>(() => {\n const { min, max } = get(optionWidthBounds);\n const maxWidth = 30;\n const paddingX = 1.5;\n const fontMultiplier = toValue(dense) ? 12 : 13;\n const difference = max - min;\n\n function computeValue(width: number): string {\n const additionalWidths =\n (prependWidth ? prependWidth + 0.5 : 0) + (appendWidth ? appendWidth + 0.5 : 0);\n return `${Math.min((width * fontMultiplier) / 16 + paddingX + additionalWidths, maxWidth)}rem`;\n }\n\n if (difference <= 5)\n return computeValue(max);\n\n return computeValue(min + difference / 2);\n });\n\n function toggle(state: boolean = false): void {\n set(isOpen, state);\n }\n\n function itemIndexInValue(item: TItem): number {\n const val = get(value);\n const selected: TItem[] = toSelectedArray(val);\n\n if (selected.length === 0)\n return -1;\n\n const itemId = getIdentifier(item);\n return selected.findIndex(selectedItem => getIdentifier(selectedItem) === itemId);\n }\n\n function adjustScrollByHighlightedIndex(): void {\n const index = get(highlightedIndex);\n if (index > -1)\n scrollTo(index);\n }\n\n function updateOpen(open: boolean): void {\n if (!open)\n return;\n\n const val = get(value);\n\n // Set highlighted index to active item\n if ((Array.isArray(val) && val.length > 0) || (val !== null && val !== undefined)) {\n const index = get(options).findIndex(isActiveItem);\n if (index > -1)\n set(highlightedIndex, index);\n }\n\n nextTick(() => adjustScrollByHighlightedIndex());\n }\n\n watch([isOpen, () => toValue(disabled)], ([open, _]) => {\n updateOpen(open);\n });\n\n watch(highlightedIndex, () => adjustScrollByHighlightedIndex());\n\n watch(options, () => {\n set(userNavigated, false);\n if (get(highlightedIndex) !== -1) {\n if (get(autoSelectFirst)) {\n set(highlightedIndex, 0);\n adjustScrollByHighlightedIndex();\n }\n else {\n set(highlightedIndex, -1);\n scrollTo(0);\n }\n }\n else {\n scrollTo(0);\n }\n });\n\n watch(isOpen, (open) => {\n if (!open)\n set(userNavigated, false);\n });\n\n const moveHighlight = (up: boolean): void => {\n if (!get(isOpen)) {\n toggle(true);\n return;\n }\n\n set(userNavigated, true);\n\n let position = get(highlightedIndex);\n const move = up ? -1 : 1;\n\n position += move;\n\n const total = get(options).length;\n\n if (position >= total)\n set(highlightedIndex, 0);\n else if (position < 0)\n set(highlightedIndex, total - 1);\n else set(highlightedIndex, position);\n };\n\n const applyHighlighted = (): void => {\n if (!setValue || !get(isOpen))\n return;\n\n const highlightedIndexVal = get(highlightedIndex);\n if (highlightedIndexVal === -1)\n return;\n\n const entry = get(options)[highlightedIndexVal];\n if (entry !== undefined)\n setValue(entry);\n };\n\n return {\n applyHighlighted,\n containerProps,\n getIdentifier,\n getText,\n highlightedIndex,\n isActiveItem,\n isOpen,\n itemIndexInValue,\n menuWidth,\n moveHighlight,\n optionsWithSelectedHidden: options,\n renderedData,\n toggle,\n userNavigated,\n valueKey,\n wrapperProps,\n };\n}\n"],"mappings":"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"}
|