@volverjs/ui-vue 0.0.10-beta.4 → 0.0.10-beta.40
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/LICENSE +1 -1
- package/README.md +146 -49
- package/auto-imports.d.ts +7 -2
- package/bin/icons.cjs +1 -1
- package/bin/icons.js +27 -20
- package/dist/Volver.d.ts +11 -11
- package/dist/components/VvAccordion/VvAccordion.es.js +190 -101
- package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +30 -8
- package/dist/components/VvAccordion/index.d.ts +8 -9
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +450 -170
- package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +58 -13
- package/dist/components/VvAccordionGroup/index.d.ts +14 -6
- package/dist/components/VvAction/VvAction.es.js +84 -33
- package/dist/components/VvAction/VvAction.umd.js +1 -1
- package/dist/components/VvAction/VvAction.vue.d.ts +57 -22
- package/dist/components/VvAction/index.d.ts +25 -9
- package/dist/components/VvAlert/VvAlert.es.js +228 -193
- package/dist/components/VvAlert/VvAlert.umd.js +1 -1
- package/dist/components/VvAlert/VvAlert.vue.d.ts +24 -14
- package/dist/components/VvAlert/index.d.ts +17 -9
- package/dist/components/VvAlertGroup/VvAlertGroup.es.js +549 -485
- package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
- package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +16 -9
- package/dist/components/VvAlertGroup/index.d.ts +7 -15
- package/dist/components/VvAvatar/VvAvatar.es.js +65 -22
- package/dist/components/VvAvatar/VvAvatar.umd.js +1 -1
- package/dist/components/VvAvatar/VvAvatar.vue.d.ts +12 -4
- package/dist/components/VvAvatar/index.d.ts +4 -1
- package/dist/components/VvAvatarGroup/VvAvatarGroup.es.js +128 -49
- package/dist/components/VvAvatarGroup/VvAvatarGroup.umd.js +1 -1
- package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +10 -3
- package/dist/components/VvAvatarGroup/index.d.ts +4 -1
- package/dist/components/VvBadge/VvBadge.es.js +77 -28
- package/dist/components/VvBadge/VvBadge.umd.js +1 -1
- package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -4
- package/dist/components/VvBadge/index.d.ts +4 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +276 -60
- package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +27 -7
- package/dist/components/VvBreadcrumb/index.d.ts +6 -10
- package/dist/components/VvButton/VvButton.es.js +307 -262
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +94 -40
- package/dist/components/VvButton/index.d.ts +51 -29
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +95 -40
- package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +31 -11
- package/dist/components/VvButtonGroup/index.d.ts +11 -2
- package/dist/components/VvCard/VvCard.es.js +86 -36
- package/dist/components/VvCard/VvCard.umd.js +1 -1
- package/dist/components/VvCard/VvCard.vue.d.ts +12 -4
- package/dist/components/VvCard/index.d.ts +4 -1
- package/dist/components/VvCheckbox/VvCheckbox.es.js +315 -251
- package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +106 -34
- package/dist/components/VvCheckbox/index.d.ts +47 -14
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +226 -126
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +101 -30
- package/dist/components/VvCheckboxGroup/index.d.ts +45 -12
- package/dist/components/VvCombobox/VvCombobox.es.js +1215 -955
- package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.vue.d.ts +600 -680
- package/dist/components/VvCombobox/index.d.ts +454 -24
- package/dist/components/VvDialog/VvDialog.es.js +180 -176
- package/dist/components/VvDialog/VvDialog.umd.js +1 -1
- package/dist/components/VvDialog/VvDialog.vue.d.ts +13 -4
- package/dist/components/VvDialog/index.d.ts +5 -0
- package/dist/components/VvDropdown/VvDropdown.es.js +165 -94
- package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
- package/dist/components/VvDropdown/VvDropdown.vue.d.ts +111 -81
- package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +66 -25
- package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +13 -1
- package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +12 -4
- package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +35 -7
- package/dist/components/VvDropdown/index.d.ts +52 -10
- package/dist/components/VvDropdownAction/VvDropdownAction.es.js +163 -53
- package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
- package/dist/components/VvDropdownItem/VvDropdownItem.es.js +335 -8
- package/dist/components/VvDropdownItem/VvDropdownItem.umd.js +1 -1
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.es.js +63 -20
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.umd.js +1 -1
- package/dist/components/VvDropdownOption/VvDropdownOption.es.js +188 -80
- package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.es.js +24 -97
- package/dist/components/VvIcon/VvIcon.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.vue.d.ts +23 -66
- package/dist/components/VvIcon/index.d.ts +33 -48
- package/dist/components/VvInputFile/VvInputFile.es.js +1789 -0
- package/dist/components/VvInputFile/VvInputFile.umd.js +1 -0
- package/dist/components/VvInputFile/VvInputFile.vue.d.ts +391 -0
- package/dist/components/VvInputFile/index.d.ts +210 -0
- package/dist/components/VvInputText/VvInputClearAction.d.ts +7 -5
- package/dist/components/VvInputText/VvInputPasswordAction.d.ts +10 -8
- package/dist/components/VvInputText/VvInputStepAction.d.ts +2 -2
- package/dist/components/VvInputText/VvInputText.es.js +1489 -563
- package/dist/components/VvInputText/VvInputText.umd.js +1 -1
- package/dist/components/VvInputText/VvInputText.vue.d.ts +207 -57
- package/dist/components/VvInputText/index.d.ts +105 -30
- package/dist/components/VvNav/VvNav.es.js +160 -75
- package/dist/components/VvNav/VvNav.umd.js +1 -1
- package/dist/components/VvNav/VvNav.vue.d.ts +32 -9
- package/dist/components/VvNav/VvNavItem.vue.d.ts +1 -1
- package/dist/components/VvNav/VvNavSeparator.vue.d.ts +1 -1
- package/dist/components/VvNav/index.d.ts +5 -2
- package/dist/components/VvNavItem/VvNavItem.es.js +100 -39
- package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.es.js +73 -27
- package/dist/components/VvProgress/VvProgress.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.vue.d.ts +10 -3
- package/dist/components/VvProgress/index.d.ts +4 -1
- package/dist/components/VvRadio/VvRadio.es.js +313 -250
- package/dist/components/VvRadio/VvRadio.umd.js +1 -1
- package/dist/components/VvRadio/VvRadio.vue.d.ts +103 -31
- package/dist/components/VvRadio/index.d.ts +50 -17
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +224 -125
- package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +101 -30
- package/dist/components/VvRadioGroup/index.d.ts +45 -12
- package/dist/components/VvSelect/VvSelect.es.js +301 -267
- package/dist/components/VvSelect/VvSelect.umd.js +1 -1
- package/dist/components/VvSelect/VvSelect.vue.d.ts +229 -203
- package/dist/components/VvSelect/index.d.ts +181 -15
- package/dist/components/VvTab/VvTab.es.js +222 -97
- package/dist/components/VvTab/VvTab.umd.js +1 -1
- package/dist/components/VvTab/VvTab.vue.d.ts +31 -7
- package/dist/components/VvTab/index.d.ts +4 -1
- package/dist/components/VvTextarea/VvTextarea.es.js +258 -248
- package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +156 -49
- package/dist/components/VvTextarea/index.d.ts +68 -19
- package/dist/components/VvTooltip/VvTooltip.es.js +83 -30
- package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
- package/dist/components/VvTooltip/VvTooltip.vue.d.ts +13 -6
- package/dist/components/VvTooltip/index.d.ts +5 -2
- package/dist/components/common/HintSlot.d.ts +4 -5
- package/dist/components/index.d.ts +10 -0
- package/dist/components/index.es.js +4241 -2261
- package/dist/components/index.umd.js +1 -1
- package/dist/composables/alert/useAlert.d.ts +101 -6
- package/dist/composables/alert/useInjectAlert.d.ts +1 -6
- package/dist/composables/dropdown/useInjectDropdown.d.ts +3 -23
- package/dist/composables/dropdown/useProvideDropdown.d.ts +3 -4
- package/dist/composables/group/useInjectedGroupState.d.ts +4 -5
- package/dist/composables/group/useProvideGroupState.d.ts +3 -3
- package/dist/composables/index.d.ts +1 -0
- package/dist/composables/index.es.js +94 -5
- package/dist/composables/index.umd.js +1 -1
- package/dist/composables/useBlurhash.d.ts +7 -0
- package/dist/composables/useComponentFocus.d.ts +1 -1
- package/dist/composables/useComponentIcon.d.ts +9 -8
- package/dist/composables/useOptions.d.ts +4 -4
- package/dist/composables/usePersistence.d.ts +3 -0
- package/dist/composables/useUniqueId.d.ts +1 -1
- package/dist/composables/useVolver.d.ts +1 -1
- package/dist/constants.d.ts +34 -32
- package/dist/directives/index.d.ts +3 -5
- package/dist/directives/index.es.js +104 -45
- package/dist/directives/index.umd.js +1 -1
- package/dist/directives/v-contextmenu.es.js +1 -1
- package/dist/directives/v-contextmenu.umd.js +1 -1
- package/dist/directives/v-tooltip.es.js +101 -39
- package/dist/directives/v-tooltip.umd.js +1 -1
- package/dist/icons.es.js +267 -267
- package/dist/icons.umd.js +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.es.js +92 -18
- package/dist/index.umd.js +1 -1
- package/dist/props/index.d.ts +272 -81
- package/dist/resolvers/unplugin.d.ts +6 -1
- package/dist/resolvers/unplugin.es.js +87 -10
- package/dist/resolvers/unplugin.umd.js +1 -1
- package/dist/stories/Accordion/Accordion.settings.d.ts +2 -57
- package/dist/stories/AccordionGroup/AccordionGroup.settings.d.ts +2 -66
- package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +2 -127
- package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +1437 -495
- package/dist/stories/Alert/Alert.settings.d.ts +2 -109
- package/dist/stories/Alert/AlertModifiers.stories.d.ts +1 -1
- package/dist/stories/Alert/AlertSlots.stories.d.ts +1 -1
- package/dist/stories/AlertGroup/AlertGroup.settings.d.ts +2 -85
- package/dist/stories/AlertGroup/AlertGroupPosition.stories.d.ts +1 -1
- package/dist/stories/AlertGroup/AlertGroupSlots.stories.d.ts +1 -1
- package/dist/stories/AlertGroup/AlertGroupWithComposable.stories.d.ts +2 -2
- package/dist/stories/AvatarGroup/AvatarGroup.settings.d.ts +2 -38
- package/dist/stories/Badge/Badge.settings.d.ts +2 -26
- package/dist/stories/Badge/Badge.test.d.ts +1 -1
- package/dist/stories/Blurhash/BlurhashComposable.stories.d.ts +4 -0
- package/dist/stories/Breadcrumb/Breadcrumb.settings.d.ts +2 -18
- package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +1 -1
- package/dist/stories/Button/Button.settings.d.ts +2 -194
- package/dist/stories/ButtonGroup/ButtonGroup.settings.d.ts +2 -40
- package/dist/stories/Card/Card.settings.d.ts +2 -63
- package/dist/stories/Checkbox/Checkbox.settings.d.ts +2 -132
- package/dist/stories/CheckboxGroup/CheckboxGroup.settings.d.ts +1 -141
- package/dist/stories/Combobox/Combobox.settings.d.ts +2 -609
- package/dist/stories/Dialog/Dialog.settings.d.ts +2 -47
- package/dist/stories/Dialog/DialogModifiers.stories.d.ts +8 -0
- package/dist/stories/Dropdown/Dropdown.settings.d.ts +2 -205
- package/dist/stories/Icon/Icon.settings.d.ts +3 -68
- package/dist/stories/InputFile/InputFile.settings.d.ts +6 -0
- package/dist/stories/InputFile/InputFile.stories.d.ts +12 -0
- package/dist/stories/InputFile/InputFileDropArea.stories.d.ts +9 -0
- package/dist/stories/InputFile/InputFileIconPosition.stories.d.ts +8 -0
- package/dist/stories/InputFile/InputFileSlots.stories.d.ts +7 -0
- package/dist/stories/InputText/InputText.settings.d.ts +2 -438
- package/dist/stories/Nav/Nav.settings.d.ts +2 -10
- package/dist/stories/Progress/Progress.settings.d.ts +2 -27
- package/dist/stories/Radio/Radio.settings.d.ts +1 -110
- package/dist/stories/RadioGroup/RadioGroup.settings.d.ts +1 -141
- package/dist/stories/Select/Select.settings.d.ts +2 -246
- package/dist/stories/Tab/Tab.settings.d.ts +2 -15
- package/dist/stories/Textarea/Textarea.settings.d.ts +2 -287
- package/dist/stories/argTypes.d.ts +27 -866
- package/dist/test/expect.d.ts +1 -1
- package/dist/test/options.d.ts +1 -1
- package/dist/test/sleep.d.ts +1 -1
- package/dist/types/alert.d.ts +9 -7
- package/dist/types/blurhash.d.ts +12 -0
- package/dist/types/generic.d.ts +1 -2
- package/dist/types/group.d.ts +37 -15
- package/dist/types/index.d.ts +7 -0
- package/dist/types/input-file.d.ts +16 -0
- package/dist/types/nav.d.ts +2 -2
- package/dist/utils/ObjectUtilities.d.ts +7 -8
- package/dist/workers/blurhash.d.ts +1 -0
- package/package.json +239 -246
- package/src/Volver.ts +245 -234
- package/src/assets/icons/detailed.json +1 -1
- package/src/assets/icons/normal.json +1 -1
- package/src/assets/icons/simple.json +1 -1
- package/src/components/VvAccordion/VvAccordion.vue +163 -100
- package/src/components/VvAccordion/index.ts +64 -79
- package/src/components/VvAccordionGroup/VvAccordionGroup.vue +223 -105
- package/src/components/VvAccordionGroup/index.ts +42 -42
- package/src/components/VvAction/VvAction.vue +144 -130
- package/src/components/VvAlert/VvAlert.vue +72 -70
- package/src/components/VvAlert/index.ts +149 -147
- package/src/components/VvAlertGroup/VvAlertGroup.vue +57 -56
- package/src/components/VvAlertGroup/index.ts +101 -117
- package/src/components/VvAvatar/VvAvatar.vue +20 -14
- package/src/components/VvAvatar/index.ts +5 -5
- package/src/components/VvAvatarGroup/VvAvatarGroup.vue +58 -53
- package/src/components/VvAvatarGroup/index.ts +21 -21
- package/src/components/VvBadge/VvBadge.vue +15 -14
- package/src/components/VvBadge/index.ts +2 -2
- package/src/components/VvBreadcrumb/VvBreadcrumb.vue +50 -48
- package/src/components/VvBreadcrumb/index.ts +3 -9
- package/src/components/VvButton/VvButton.vue +163 -152
- package/src/components/VvButton/index.ts +103 -110
- package/src/components/VvButtonGroup/VvButtonGroup.vue +72 -64
- package/src/components/VvButtonGroup/index.ts +22 -21
- package/src/components/VvCard/VvCard.vue +30 -30
- package/src/components/VvCard/index.ts +2 -2
- package/src/components/VvCheckbox/VvCheckbox.vue +185 -183
- package/src/components/VvCheckbox/index.ts +44 -44
- package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +88 -87
- package/src/components/VvCombobox/VvCombobox.vue +631 -619
- package/src/components/VvCombobox/index.ts +189 -164
- package/src/components/VvDialog/VvDialog.vue +141 -129
- package/src/components/VvDialog/index.ts +38 -36
- package/src/components/VvDropdown/VvDropdown.vue +466 -445
- package/src/components/VvDropdown/VvDropdownAction.vue +37 -39
- package/src/components/VvDropdown/VvDropdownItem.vue +30 -26
- package/src/components/VvDropdown/VvDropdownOptgroup.vue +13 -12
- package/src/components/VvDropdown/VvDropdownOption.vue +47 -64
- package/src/components/VvDropdown/index.ts +61 -27
- package/src/components/VvIcon/README.md +1 -1
- package/src/components/VvIcon/VvIcon.vue +133 -133
- package/src/components/VvIcon/index.ts +84 -97
- package/src/components/VvInputFile/VvInputFile.vue +402 -0
- package/src/components/VvInputFile/index.ts +141 -0
- package/src/components/VvInputText/VvInputClearAction.ts +51 -47
- package/src/components/VvInputText/VvInputPasswordAction.ts +66 -62
- package/src/components/VvInputText/VvInputStepAction.ts +43 -43
- package/src/components/VvInputText/VvInputText.vue +638 -516
- package/src/components/VvInputText/VvInputTextActions.ts +86 -86
- package/src/components/VvInputText/index.ts +200 -185
- package/src/components/VvNav/VvNav.vue +40 -36
- package/src/components/VvNav/VvNavItem.vue +12 -12
- package/src/components/VvNav/VvNavSeparator.vue +6 -6
- package/src/components/VvNav/index.ts +2 -2
- package/src/components/VvProgress/VvProgress.vue +27 -27
- package/src/components/VvProgress/index.ts +28 -28
- package/src/components/VvRadio/VvRadio.vue +115 -112
- package/src/components/VvRadio/index.ts +28 -28
- package/src/components/VvRadioGroup/VvRadioGroup.vue +91 -90
- package/src/components/VvSelect/VvSelect.vue +242 -241
- package/src/components/VvSelect/index.ts +81 -63
- package/src/components/VvTab/VvTab.vue +79 -69
- package/src/components/VvTab/index.ts +12 -12
- package/src/components/VvTextarea/VvTextarea.vue +218 -219
- package/src/components/VvTextarea/index.ts +35 -35
- package/src/components/VvTooltip/VvTooltip.vue +22 -16
- package/src/components/VvTooltip/index.ts +12 -12
- package/src/components/common/HintSlot.ts +149 -150
- package/src/components/index.ts +10 -0
- package/src/composables/alert/useAlert.ts +76 -73
- package/src/composables/alert/useInjectAlert.ts +1 -1
- package/src/composables/alert/useProvideAlert.ts +10 -10
- package/src/composables/dropdown/useInjectDropdown.ts +6 -6
- package/src/composables/dropdown/useProvideDropdown.ts +63 -63
- package/src/composables/group/useInjectedGroupState.ts +46 -42
- package/src/composables/group/useProvideGroupState.ts +9 -15
- package/src/composables/index.ts +1 -0
- package/src/composables/useBlurhash.ts +68 -0
- package/src/composables/useComponentFocus.ts +9 -9
- package/src/composables/useComponentIcon.ts +36 -35
- package/src/composables/useDebouncedInput.ts +25 -25
- package/src/composables/useDefaults.ts +77 -76
- package/src/composables/useModifiers.ts +29 -29
- package/src/composables/useOptions.ts +51 -43
- package/src/composables/usePersistence.ts +74 -0
- package/src/composables/useTextCount.ts +44 -44
- package/src/composables/useUniqueId.ts +3 -2
- package/src/composables/useVolver.ts +1 -1
- package/src/constants.ts +97 -82
- package/src/directives/index.ts +3 -6
- package/src/directives/v-contextmenu.ts +34 -34
- package/src/directives/v-tooltip.ts +18 -9
- package/src/index.ts +6 -4
- package/src/props/index.ts +457 -380
- package/src/resolvers/unplugin.ts +146 -136
- package/src/shims.d.ts +4 -5
- package/src/stories/Accordion/Accordion.settings.ts +51 -50
- package/src/stories/Accordion/Accordion.stories.ts +21 -21
- package/src/stories/Accordion/Accordion.test.ts +56 -54
- package/src/stories/Accordion/AccordionSlots.stories.ts +13 -13
- package/src/stories/AccordionGroup/AccordionGroup.settings.ts +70 -67
- package/src/stories/AccordionGroup/AccordionGroup.stories.ts +41 -39
- package/src/stories/AccordionGroup/AccordionGroup.test.ts +49 -45
- package/src/stories/AccordionGroup/AccordionGroupSlots.stories.ts +35 -35
- package/src/stories/Alert/Alert.settings.ts +117 -116
- package/src/stories/Alert/Alert.stories.ts +30 -30
- package/src/stories/Alert/Alert.test.ts +78 -80
- package/src/stories/Alert/AlertModifiers.stories.ts +45 -45
- package/src/stories/Alert/AlertSlots.stories.ts +35 -35
- package/src/stories/AlertGroup/AlertGroup.settings.ts +107 -105
- package/src/stories/AlertGroup/AlertGroup.stories.ts +25 -25
- package/src/stories/AlertGroup/AlertGroup.test.ts +67 -69
- package/src/stories/AlertGroup/AlertGroupPosition.stories.ts +68 -68
- package/src/stories/AlertGroup/AlertGroupSlots.stories.ts +23 -23
- package/src/stories/AlertGroup/AlertGroupWithComposable.stories.ts +58 -58
- package/src/stories/Avatar/Avatar.settings.ts +29 -29
- package/src/stories/Avatar/Avatar.stories.ts +23 -23
- package/src/stories/Avatar/Avatar.test.ts +22 -24
- package/src/stories/Avatar/AvatarBadge.stories.ts +15 -15
- package/src/stories/Avatar/AvatarModifiers.stories.ts +61 -61
- package/src/stories/Avatar/AvatarSlots.stories.ts +18 -18
- package/src/stories/AvatarGroup/AvatarGroup.settings.ts +54 -53
- package/src/stories/AvatarGroup/AvatarGroup.stories.ts +17 -17
- package/src/stories/AvatarGroup/AvatarGroup.test.ts +24 -26
- package/src/stories/AvatarGroup/AvatarGroupModifiers.stories.ts +15 -15
- package/src/stories/AvatarGroup/AvatarGroupSlotDefault.stories.ts +17 -17
- package/src/stories/Badge/Badge.settings.ts +21 -20
- package/src/stories/Badge/Badge.stories.ts +24 -24
- package/src/stories/Badge/Badge.test.ts +8 -8
- package/src/stories/Badge/BadgeSlots.stories.ts +10 -10
- package/src/stories/Blurhash/BlurhashComposable.stories.ts +196 -0
- package/src/stories/Breadcrumb/Breadcrumb.settings.ts +35 -34
- package/src/stories/Breadcrumb/Breadcrumb.stories.ts +23 -23
- package/src/stories/Breadcrumb/Breadcrumb.test.ts +44 -43
- package/src/stories/Breadcrumb/BreadcrumbSlots.stories.ts +17 -17
- package/src/stories/Button/Button.settings.ts +146 -150
- package/src/stories/Button/Button.stories.ts +19 -19
- package/src/stories/Button/Button.test.ts +41 -42
- package/src/stories/Button/ButtonIcon.stories.ts +42 -42
- package/src/stories/Button/ButtonLink.stories.ts +24 -24
- package/src/stories/Button/ButtonLoading.stories.ts +22 -22
- package/src/stories/Button/ButtonModifiers.stories.ts +91 -91
- package/src/stories/Button/ButtonSlots.stories.ts +47 -47
- package/src/stories/Button/ButtonState.stories.ts +23 -23
- package/src/stories/Button/ButtonToggle.stories.ts +30 -30
- package/src/stories/ButtonGroup/ButtonGroup.settings.ts +33 -24
- package/src/stories/ButtonGroup/ButtonGroup.stories.ts +20 -20
- package/src/stories/ButtonGroup/ButtonGroup.test.ts +23 -26
- package/src/stories/ButtonGroup/ButtonGroupModifiers.stories.ts +20 -20
- package/src/stories/ButtonGroup/ButtonGroupSlots.stories.ts +18 -18
- package/src/stories/ButtonGroup/ButtonGroupToggle.stories.ts +22 -22
- package/src/stories/Card/Card.settings.ts +49 -48
- package/src/stories/Card/Card.stories.ts +22 -22
- package/src/stories/Card/Card.test.ts +14 -16
- package/src/stories/Card/CardSlots.stories.ts +42 -42
- package/src/stories/Checkbox/Checkbox.settings.ts +36 -35
- package/src/stories/Checkbox/Checkbox.stories.ts +57 -57
- package/src/stories/Checkbox/Checkbox.test.ts +63 -66
- package/src/stories/Checkbox/CheckboxBinary.stories.ts +18 -18
- package/src/stories/Checkbox/CheckboxSlots.stories.ts +15 -15
- package/src/stories/CheckboxGroup/CheckboxGroup.settings.ts +9 -9
- package/src/stories/CheckboxGroup/CheckboxGroup.stories.ts +50 -50
- package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +63 -67
- package/src/stories/CheckboxGroup/CheckboxGroupOptions.stories.ts +34 -34
- package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.ts +23 -23
- package/src/stories/Combobox/Combobox.settings.ts +391 -383
- package/src/stories/Combobox/Combobox.stories.ts +108 -107
- package/src/stories/Combobox/Combobox.test.ts +89 -91
- package/src/stories/Combobox/ComboboxIconPosition.stories.ts +25 -24
- package/src/stories/Combobox/ComboboxMultiple.stories.ts +23 -22
- package/src/stories/Combobox/ComboboxOptions.stories.ts +85 -84
- package/src/stories/Combobox/ComboboxSlots.stories.ts +56 -55
- package/src/stories/Dialog/Dialog.settings.ts +49 -40
- package/src/stories/Dialog/Dialog.stories.ts +28 -28
- package/src/stories/Dialog/Dialog.test.ts +49 -54
- package/src/stories/Dialog/DialogModifiers.stories.ts +42 -0
- package/src/stories/Dialog/DialogSlots.stories.ts +20 -20
- package/src/stories/Dropdown/Dropdown.settings.ts +63 -62
- package/src/stories/Dropdown/Dropdown.stories.ts +59 -59
- package/src/stories/Dropdown/Dropdown.test.ts +9 -13
- package/src/stories/Dropdown/DropdownContextmenuDirective.stories.ts +16 -16
- package/src/stories/Dropdown/DropdownMultilevel.stories.ts +18 -18
- package/src/stories/Dropdown/DropdownSlots.stories.ts +50 -50
- package/src/stories/Icon/Icon.settings.ts +66 -65
- package/src/stories/Icon/Icon.stories.ts +28 -29
- package/src/stories/Icon/IconsCollection.stories.ts +22 -22
- package/src/stories/InputFile/InputFile.settings.ts +37 -0
- package/src/stories/InputFile/InputFile.stories.ts +89 -0
- package/src/stories/InputFile/InputFileDropArea.stories.ts +56 -0
- package/src/stories/InputFile/InputFileIconPosition.stories.ts +43 -0
- package/src/stories/InputFile/InputFileSlots.stories.ts +33 -0
- package/src/stories/InputText/InputText.settings.ts +246 -244
- package/src/stories/InputText/InputText.stories.ts +67 -67
- package/src/stories/InputText/InputText.test.ts +118 -121
- package/src/stories/InputText/InputTextIconPosition.stories.ts +24 -24
- package/src/stories/InputText/InputTextLength.stories.ts +33 -33
- package/src/stories/InputText/InputTextMask.stories.ts +91 -91
- package/src/stories/InputText/InputTextMinMax.stories.ts +30 -30
- package/src/stories/InputText/InputTextSlots.stories.ts +20 -20
- package/src/stories/InputText/InputTextType.stories.ts +70 -70
- package/src/stories/Nav/Nav.settings.ts +27 -27
- package/src/stories/Nav/Nav.stories.ts +18 -18
- package/src/stories/Nav/Nav.test.ts +10 -12
- package/src/stories/Nav/NavModifiers.stories.ts +25 -25
- package/src/stories/Progress/Progress.settings.ts +24 -23
- package/src/stories/Progress/Progress.stories.ts +23 -23
- package/src/stories/Progress/Progress.test.ts +4 -4
- package/src/stories/Radio/Radio.settings.ts +9 -9
- package/src/stories/Radio/Radio.stories.ts +47 -47
- package/src/stories/Radio/Radio.test.ts +54 -57
- package/src/stories/Radio/RadioSlots.stories.ts +15 -15
- package/src/stories/RadioGroup/RadioGroup.settings.ts +9 -9
- package/src/stories/RadioGroup/RadioGroup.stories.ts +51 -52
- package/src/stories/RadioGroup/RadioGroup.test.ts +63 -67
- package/src/stories/RadioGroup/RadioGroupOptions.stories.ts +35 -35
- package/src/stories/RadioGroup/RadioGroupSlots.stories.ts +23 -23
- package/src/stories/Select/Select.settings.ts +71 -70
- package/src/stories/Select/Select.stories.ts +67 -66
- package/src/stories/Select/Select.test.ts +65 -70
- package/src/stories/Select/SelectIconPosition.stories.ts +27 -26
- package/src/stories/Select/SelectOptions.stories.ts +55 -55
- package/src/stories/Select/SelectSlots.stories.ts +21 -20
- package/src/stories/Tab/Tab.settings.ts +34 -34
- package/src/stories/Tab/Tab.stories.ts +17 -17
- package/src/stories/Tab/Tab.test.ts +17 -19
- package/src/stories/Textarea/Textarea.settings.ts +79 -77
- package/src/stories/Textarea/Textarea.stories.ts +63 -63
- package/src/stories/Textarea/Textarea.test.ts +70 -73
- package/src/stories/Textarea/TextareaLength.stories.ts +33 -33
- package/src/stories/Textarea/TextareaSlots.stories.ts +20 -20
- package/src/stories/Textarea/TextareatIconPosition.stories.ts +24 -24
- package/src/stories/Tooltip/Tooltip.settings.ts +16 -17
- package/src/stories/Tooltip/Tooltip.stories.ts +18 -18
- package/src/stories/Tooltip/Tooltip.test.ts +53 -54
- package/src/stories/Tooltip/TooltipDirective.stories.ts +37 -37
- package/src/stories/argTypes.ts +506 -505
- package/src/test/expect.ts +72 -77
- package/src/test/options.ts +17 -16
- package/src/test/sleep.ts +3 -2
- package/src/test/types.d.ts +11 -11
- package/src/types/alert.ts +21 -17
- package/src/types/blurhash.ts +21 -0
- package/src/types/generic.ts +2 -3
- package/src/types/group.ts +34 -26
- package/src/types/index.ts +7 -0
- package/src/types/input-file.ts +18 -0
- package/src/types/nav.ts +13 -14
- package/src/utils/ObjectUtilities.ts +192 -188
- package/src/workers/blurhash.ts +9 -0
|
@@ -1,102 +1,17 @@
|
|
|
1
|
-
import { inject, computed, unref, defineComponent, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, isRef, h, watch, useSlots, createElementBlock, normalizeClass, toDisplayString, createElementVNode, renderSlot, normalizeProps, guardReactiveProps, withDirectives, Fragment, renderList, vModelSelect, createVNode, createSlots, withCtx } from "vue";
|
|
1
|
+
import { inject, computed, unref, defineComponent, mergeDefaults, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, isRef, h, watch, useSlots, createElementBlock, normalizeClass, toDisplayString, createElementVNode, renderSlot, normalizeProps, guardReactiveProps, withDirectives, Fragment, renderList, vModelSelect, createVNode, createSlots, withCtx } from "vue";
|
|
2
2
|
import { iconExists, Icon, addIcon } from "@iconify/vue";
|
|
3
3
|
import { uid } from "uid";
|
|
4
4
|
import { useFocus, useElementVisibility } from "@vueuse/core";
|
|
5
5
|
import { get } from "ts-dot-prop";
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
*/
|
|
10
|
-
color: String,
|
|
11
|
-
/**
|
|
12
|
-
* Width
|
|
13
|
-
*/
|
|
14
|
-
width: {
|
|
15
|
-
type: [String, Number]
|
|
16
|
-
},
|
|
17
|
-
/**
|
|
18
|
-
* Height
|
|
19
|
-
*/
|
|
20
|
-
height: {
|
|
21
|
-
type: [String, Number]
|
|
22
|
-
},
|
|
23
|
-
/**
|
|
24
|
-
* Icon name
|
|
25
|
-
* Can be the full composition of iconify name "@{provider}:{prefix}:{name}" or "{prefix}:{name}" or "{name}"
|
|
26
|
-
* https://docs.iconify.design/api/providers.html#provider-in-icon-name
|
|
27
|
-
*/
|
|
28
|
-
name: {
|
|
29
|
-
type: String,
|
|
30
|
-
required: true
|
|
31
|
-
},
|
|
32
|
-
/**
|
|
33
|
-
* By default 'vv'
|
|
34
|
-
* If custom collection is not added with "addCollection" DS class method, this prop could not be used
|
|
35
|
-
* Icon provider: https://docs.iconify.design/api/providers.html#provider-in-icon-name
|
|
36
|
-
*/
|
|
37
|
-
provider: {
|
|
38
|
-
type: String
|
|
39
|
-
},
|
|
40
|
-
/**
|
|
41
|
-
* The name of icon set.
|
|
42
|
-
* Icon default options prefix: simple | normal | detailed
|
|
43
|
-
*/
|
|
44
|
-
prefix: {
|
|
45
|
-
type: String,
|
|
46
|
-
default: "normal"
|
|
47
|
-
},
|
|
48
|
-
/**
|
|
49
|
-
* Url remote SVG icon
|
|
50
|
-
*/
|
|
51
|
-
src: String,
|
|
52
|
-
/**
|
|
53
|
-
* Horizontal flip
|
|
54
|
-
*/
|
|
55
|
-
horizontalFlip: Boolean,
|
|
56
|
-
/**
|
|
57
|
-
* Vertical flip
|
|
58
|
-
*/
|
|
59
|
-
verticalFlip: Boolean,
|
|
60
|
-
/**
|
|
61
|
-
* String alternative to "horizontalFlip" and "verticalFlip".
|
|
62
|
-
* Example: https://docs.iconify.design/icon-components/vue/transform.html
|
|
63
|
-
*/
|
|
64
|
-
flip: String,
|
|
65
|
-
/**
|
|
66
|
-
* Icon render mode
|
|
67
|
-
* 'style' = 'bg' or 'mask', depending on icon content
|
|
68
|
-
* 'bg' = span with style using `background`
|
|
69
|
-
* 'mask' = span with style using `mask`
|
|
70
|
-
* 'svg' = svg
|
|
71
|
-
* Iconify doc: https://docs.iconify.design/iconify-icon/modes.html
|
|
72
|
-
*/
|
|
73
|
-
mode: String,
|
|
74
|
-
/**
|
|
75
|
-
* Toggles inline or block mode
|
|
76
|
-
* Example https://docs.iconify.design/icon-components/vue/inline.html
|
|
77
|
-
*/
|
|
78
|
-
inline: Boolean,
|
|
79
|
-
/**
|
|
80
|
-
* rotates icon
|
|
81
|
-
* Example https://docs.iconify.design/icon-components/vue/transform.html
|
|
82
|
-
*/
|
|
83
|
-
rotate: [Number, String],
|
|
84
|
-
/**
|
|
85
|
-
* A callback that is called when icon data has been loaded
|
|
86
|
-
*/
|
|
87
|
-
onLoad: Function,
|
|
88
|
-
/**
|
|
89
|
-
* SVG icon string
|
|
90
|
-
*/
|
|
91
|
-
svg: String,
|
|
92
|
-
/**
|
|
93
|
-
* Icon modifiers: vv-icon css helper classes, value/s are concatened with prefix 'vv-icon--'
|
|
94
|
-
* @values string | string[]
|
|
95
|
-
*/
|
|
96
|
-
modifiers: {
|
|
97
|
-
type: [String, Array]
|
|
98
|
-
}
|
|
6
|
+
const VvIconPropsDefaults = {
|
|
7
|
+
prefix: "normal"
|
|
8
|
+
/* normal */
|
|
99
9
|
};
|
|
10
|
+
var StorageType = /* @__PURE__ */ ((StorageType2) => {
|
|
11
|
+
StorageType2["local"] = "local";
|
|
12
|
+
StorageType2["session"] = "session";
|
|
13
|
+
return StorageType2;
|
|
14
|
+
})(StorageType || {});
|
|
100
15
|
var Strategy = /* @__PURE__ */ ((Strategy2) => {
|
|
101
16
|
Strategy2["absolute"] = "absolute";
|
|
102
17
|
Strategy2["fixed"] = "fixed";
|
|
@@ -131,13 +46,13 @@ var ButtonType = /* @__PURE__ */ ((ButtonType2) => {
|
|
|
131
46
|
ButtonType2["reset"] = "reset";
|
|
132
47
|
return ButtonType2;
|
|
133
48
|
})(ButtonType || {});
|
|
134
|
-
var
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
return
|
|
140
|
-
})(
|
|
49
|
+
var ActionTag = /* @__PURE__ */ ((ActionTag2) => {
|
|
50
|
+
ActionTag2["nuxtLink"] = "nuxt-link";
|
|
51
|
+
ActionTag2["routerLink"] = "router-link";
|
|
52
|
+
ActionTag2["a"] = "a";
|
|
53
|
+
ActionTag2["button"] = "button";
|
|
54
|
+
return ActionTag2;
|
|
55
|
+
})(ActionTag || {});
|
|
141
56
|
const INJECTION_KEY_VOLVER = Symbol.for("volver");
|
|
142
57
|
function useVolver() {
|
|
143
58
|
return inject(INJECTION_KEY_VOLVER);
|
|
@@ -170,12 +85,29 @@ const __default__$1 = {
|
|
|
170
85
|
};
|
|
171
86
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
172
87
|
...__default__$1,
|
|
173
|
-
props:
|
|
88
|
+
props: /* @__PURE__ */ mergeDefaults({
|
|
89
|
+
name: {},
|
|
90
|
+
color: {},
|
|
91
|
+
width: {},
|
|
92
|
+
height: {},
|
|
93
|
+
provider: {},
|
|
94
|
+
prefix: {},
|
|
95
|
+
src: {},
|
|
96
|
+
horizontalFlip: { type: Boolean },
|
|
97
|
+
verticalFlip: { type: Boolean },
|
|
98
|
+
flip: {},
|
|
99
|
+
mode: {},
|
|
100
|
+
inline: { type: Boolean },
|
|
101
|
+
rotate: {},
|
|
102
|
+
onLoad: { type: Function },
|
|
103
|
+
svg: {},
|
|
104
|
+
modifiers: {}
|
|
105
|
+
}, VvIconPropsDefaults),
|
|
174
106
|
setup(__props) {
|
|
175
107
|
const props = __props;
|
|
176
108
|
const hasRotate = computed(() => {
|
|
177
109
|
if (typeof props.rotate === "string") {
|
|
178
|
-
return parseFloat(props.rotate);
|
|
110
|
+
return Number.parseFloat(props.rotate);
|
|
179
111
|
}
|
|
180
112
|
return props.rotate;
|
|
181
113
|
});
|
|
@@ -257,7 +189,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
257
189
|
color: _ctx.color,
|
|
258
190
|
onLoad: _ctx.onLoad,
|
|
259
191
|
icon: unref(icon)
|
|
260
|
-
}), null, 16, ["class"])) : createCommentVNode("", true);
|
|
192
|
+
}), null, 16, ["class"])) : createCommentVNode("v-if", true);
|
|
261
193
|
};
|
|
262
194
|
}
|
|
263
195
|
});
|
|
@@ -400,10 +332,7 @@ const LinkProps = {
|
|
|
400
332
|
/**
|
|
401
333
|
* Anchor target
|
|
402
334
|
*/
|
|
403
|
-
target:
|
|
404
|
-
type: String,
|
|
405
|
-
validator: (value) => Object.values(AnchorTarget).includes(value)
|
|
406
|
-
},
|
|
335
|
+
target: String,
|
|
407
336
|
/**
|
|
408
337
|
* Anchor rel
|
|
409
338
|
*/
|
|
@@ -416,27 +345,33 @@ const ValidProps = {
|
|
|
416
345
|
/**
|
|
417
346
|
* Valid status
|
|
418
347
|
*/
|
|
419
|
-
valid: Boolean,
|
|
348
|
+
valid: { type: Boolean, default: false },
|
|
420
349
|
/**
|
|
421
350
|
* Valid label
|
|
422
351
|
*/
|
|
423
|
-
validLabel: [String, Array]
|
|
352
|
+
validLabel: { type: [String, Array], default: void 0 }
|
|
424
353
|
};
|
|
425
354
|
const InvalidProps = {
|
|
426
355
|
/**
|
|
427
356
|
* Invalid status
|
|
428
357
|
*/
|
|
429
|
-
invalid:
|
|
358
|
+
invalid: {
|
|
359
|
+
type: Boolean,
|
|
360
|
+
default: false
|
|
361
|
+
},
|
|
430
362
|
/**
|
|
431
363
|
* Invalid label
|
|
432
364
|
*/
|
|
433
|
-
invalidLabel: [String, Array]
|
|
365
|
+
invalidLabel: { type: [String, Array], default: void 0 }
|
|
434
366
|
};
|
|
435
367
|
const LoadingProps = {
|
|
436
368
|
/**
|
|
437
369
|
* Loading status
|
|
438
370
|
*/
|
|
439
|
-
loading:
|
|
371
|
+
loading: {
|
|
372
|
+
type: Boolean,
|
|
373
|
+
default: false
|
|
374
|
+
},
|
|
440
375
|
/**
|
|
441
376
|
* Loading label
|
|
442
377
|
*/
|
|
@@ -449,43 +384,64 @@ const DisabledProps = {
|
|
|
449
384
|
/**
|
|
450
385
|
* Whether the form control is disabled
|
|
451
386
|
*/
|
|
452
|
-
disabled:
|
|
387
|
+
disabled: {
|
|
388
|
+
type: Boolean,
|
|
389
|
+
default: false
|
|
390
|
+
}
|
|
453
391
|
};
|
|
454
392
|
const ActiveProps = {
|
|
455
393
|
/**
|
|
456
394
|
* Whether the item is active
|
|
457
395
|
*/
|
|
458
|
-
active:
|
|
396
|
+
active: {
|
|
397
|
+
type: Boolean,
|
|
398
|
+
default: false
|
|
399
|
+
}
|
|
459
400
|
};
|
|
460
401
|
const CurrentProps = {
|
|
461
402
|
/**
|
|
462
403
|
* Whether the item is current
|
|
463
404
|
*/
|
|
464
|
-
current:
|
|
405
|
+
current: {
|
|
406
|
+
type: Boolean,
|
|
407
|
+
default: false
|
|
408
|
+
}
|
|
465
409
|
};
|
|
466
410
|
const PressedProps = {
|
|
467
411
|
/**
|
|
468
412
|
* Whether the item is pressed
|
|
469
413
|
*/
|
|
470
|
-
pressed:
|
|
414
|
+
pressed: {
|
|
415
|
+
type: Boolean,
|
|
416
|
+
default: false
|
|
417
|
+
}
|
|
471
418
|
};
|
|
472
419
|
const LabelProps = {
|
|
473
420
|
/**
|
|
474
421
|
* The item label
|
|
475
422
|
*/
|
|
476
|
-
label:
|
|
423
|
+
label: {
|
|
424
|
+
type: [String, Number],
|
|
425
|
+
default: void 0
|
|
426
|
+
}
|
|
477
427
|
};
|
|
478
428
|
const ReadonlyProps = {
|
|
479
429
|
/**
|
|
480
430
|
* The value is not editable
|
|
481
431
|
*/
|
|
482
|
-
readonly:
|
|
432
|
+
readonly: {
|
|
433
|
+
type: Boolean,
|
|
434
|
+
default: false
|
|
435
|
+
}
|
|
483
436
|
};
|
|
484
437
|
const ModifiersProps = {
|
|
485
438
|
/**
|
|
486
439
|
* Component BEM modifiers
|
|
487
440
|
*/
|
|
488
|
-
modifiers:
|
|
441
|
+
modifiers: {
|
|
442
|
+
type: [String, Array],
|
|
443
|
+
default: void 0
|
|
444
|
+
}
|
|
489
445
|
};
|
|
490
446
|
const HintProps = {
|
|
491
447
|
hintLabel: { type: String, default: "" }
|
|
@@ -516,7 +472,10 @@ const IconProps = {
|
|
|
516
472
|
* VvIcon name or props
|
|
517
473
|
* @see VVIcon
|
|
518
474
|
*/
|
|
519
|
-
icon: {
|
|
475
|
+
icon: {
|
|
476
|
+
type: [String, Object],
|
|
477
|
+
default: void 0
|
|
478
|
+
},
|
|
520
479
|
/**
|
|
521
480
|
* VvIcon position
|
|
522
481
|
*/
|
|
@@ -537,7 +496,10 @@ const FloatingLabelProps = {
|
|
|
537
496
|
/**
|
|
538
497
|
* If true the label will be floating
|
|
539
498
|
*/
|
|
540
|
-
floating:
|
|
499
|
+
floating: {
|
|
500
|
+
type: Boolean,
|
|
501
|
+
default: false
|
|
502
|
+
}
|
|
541
503
|
};
|
|
542
504
|
const UnselectableProps = {
|
|
543
505
|
/**
|
|
@@ -573,7 +535,8 @@ const IdProps = {
|
|
|
573
535
|
* Dropdown show / hide transition name
|
|
574
536
|
*/
|
|
575
537
|
transitionName: {
|
|
576
|
-
type: String
|
|
538
|
+
type: String,
|
|
539
|
+
default: void 0
|
|
577
540
|
},
|
|
578
541
|
/**
|
|
579
542
|
* Offset of the dropdown from the trigger
|
|
@@ -641,7 +604,8 @@ const IdProps = {
|
|
|
641
604
|
* Set dropdown width to the same as the trigger
|
|
642
605
|
*/
|
|
643
606
|
triggerWidth: {
|
|
644
|
-
type: Boolean
|
|
607
|
+
type: Boolean,
|
|
608
|
+
default: false
|
|
645
609
|
}
|
|
646
610
|
});
|
|
647
611
|
const IdNameProps = {
|
|
@@ -658,7 +622,10 @@ const AutofocusProps = {
|
|
|
658
622
|
* Global attribute autofocus
|
|
659
623
|
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autofocus
|
|
660
624
|
*/
|
|
661
|
-
autofocus:
|
|
625
|
+
autofocus: {
|
|
626
|
+
type: Boolean,
|
|
627
|
+
default: false
|
|
628
|
+
}
|
|
662
629
|
};
|
|
663
630
|
const AutocompleteProps = {
|
|
664
631
|
/**
|
|
@@ -688,8 +655,23 @@ const AutocompleteProps = {
|
|
|
688
655
|
ariaLabel: {
|
|
689
656
|
type: String,
|
|
690
657
|
default: void 0
|
|
658
|
+
},
|
|
659
|
+
/**
|
|
660
|
+
* Default tag for the action
|
|
661
|
+
*/
|
|
662
|
+
defaultTag: {
|
|
663
|
+
type: String,
|
|
664
|
+
default: ActionTag.button
|
|
691
665
|
}
|
|
692
666
|
});
|
|
667
|
+
({
|
|
668
|
+
storageType: {
|
|
669
|
+
type: String,
|
|
670
|
+
default: StorageType.local,
|
|
671
|
+
validator: (value) => Object.values(StorageType).includes(value)
|
|
672
|
+
},
|
|
673
|
+
storageKey: String
|
|
674
|
+
});
|
|
693
675
|
const VvSelectProps = {
|
|
694
676
|
...IdNameProps,
|
|
695
677
|
...AutofocusProps,
|
|
@@ -738,7 +720,16 @@ const VvSelectProps = {
|
|
|
738
720
|
*/
|
|
739
721
|
placeholder: String
|
|
740
722
|
};
|
|
741
|
-
|
|
723
|
+
function useVvSelectProps() {
|
|
724
|
+
return {
|
|
725
|
+
...VvSelectProps,
|
|
726
|
+
options: {
|
|
727
|
+
...VvSelectProps.options,
|
|
728
|
+
type: Array,
|
|
729
|
+
default: () => []
|
|
730
|
+
}
|
|
731
|
+
};
|
|
732
|
+
}
|
|
742
733
|
function useDefaults(componentName, propsDefinition, props) {
|
|
743
734
|
const volver = useVolver();
|
|
744
735
|
const volverComponentDefaults = computed(() => {
|
|
@@ -792,7 +783,9 @@ function useDefaults(componentName, propsDefinition, props) {
|
|
|
792
783
|
}, {});
|
|
793
784
|
});
|
|
794
785
|
}
|
|
795
|
-
|
|
786
|
+
function useUniqueId(id) {
|
|
787
|
+
return computed(() => String((id == null ? void 0 : id.value) || uid()));
|
|
788
|
+
}
|
|
796
789
|
function useComponentFocus(inputTemplateRef, emit) {
|
|
797
790
|
const { focused } = useFocus(inputTemplateRef);
|
|
798
791
|
watch(focused, (newValue) => {
|
|
@@ -803,30 +796,30 @@ function useComponentFocus(inputTemplateRef, emit) {
|
|
|
803
796
|
};
|
|
804
797
|
}
|
|
805
798
|
function useComponentIcon(icon, iconPosition) {
|
|
799
|
+
const hasIcon = computed(() => {
|
|
800
|
+
if (typeof (icon == null ? void 0 : icon.value) === "string") {
|
|
801
|
+
return { name: icon == null ? void 0 : icon.value };
|
|
802
|
+
}
|
|
803
|
+
return icon == null ? void 0 : icon.value;
|
|
804
|
+
});
|
|
806
805
|
const hasIconBefore = computed(
|
|
807
|
-
() =>
|
|
806
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Position.before ? hasIcon.value : void 0
|
|
808
807
|
);
|
|
809
808
|
const hasIconAfter = computed(
|
|
810
|
-
() =>
|
|
809
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Position.after ? hasIcon.value : void 0
|
|
811
810
|
);
|
|
812
811
|
const hasIconLeft = computed(
|
|
813
|
-
() =>
|
|
812
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.left ? hasIcon.value : void 0
|
|
814
813
|
);
|
|
815
814
|
const hasIconRight = computed(
|
|
816
|
-
() =>
|
|
815
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.right ? hasIcon.value : void 0
|
|
817
816
|
);
|
|
818
817
|
const hasIconTop = computed(
|
|
819
|
-
() =>
|
|
818
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.top ? hasIcon.value : void 0
|
|
820
819
|
);
|
|
821
820
|
const hasIconBottom = computed(
|
|
822
|
-
() =>
|
|
821
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.bottom ? hasIcon.value : void 0
|
|
823
822
|
);
|
|
824
|
-
const hasIcon = computed(() => {
|
|
825
|
-
if (typeof (icon == null ? void 0 : icon.value) === "string") {
|
|
826
|
-
return { name: icon == null ? void 0 : icon.value };
|
|
827
|
-
}
|
|
828
|
-
return icon == null ? void 0 : icon.value;
|
|
829
|
-
});
|
|
830
823
|
return {
|
|
831
824
|
hasIcon,
|
|
832
825
|
hasIconLeft,
|
|
@@ -840,26 +833,33 @@ function useComponentIcon(icon, iconPosition) {
|
|
|
840
833
|
function useOptions(props) {
|
|
841
834
|
const { options, labelKey, valueKey, disabledKey } = toRefs(props);
|
|
842
835
|
const getOptionLabel = (option) => {
|
|
843
|
-
if (typeof option
|
|
836
|
+
if (typeof option === "string") {
|
|
844
837
|
return option;
|
|
838
|
+
}
|
|
845
839
|
return String(
|
|
846
840
|
typeof labelKey.value === "function" ? labelKey.value(option) : get(option, labelKey.value)
|
|
847
841
|
);
|
|
848
842
|
};
|
|
849
843
|
const getOptionValue = (option) => {
|
|
850
|
-
if (typeof option
|
|
844
|
+
if (typeof option === "string") {
|
|
851
845
|
return option;
|
|
846
|
+
}
|
|
852
847
|
return typeof valueKey.value === "function" ? valueKey.value(option) : get(option, valueKey.value);
|
|
853
848
|
};
|
|
854
849
|
const isOptionDisabled = (option) => {
|
|
855
|
-
if (typeof option
|
|
850
|
+
if (typeof option === "string") {
|
|
856
851
|
return false;
|
|
852
|
+
}
|
|
857
853
|
return typeof disabledKey.value === "function" ? disabledKey.value(option) : get(option, disabledKey.value);
|
|
858
854
|
};
|
|
859
855
|
const getOptionGrouped = (option) => {
|
|
860
|
-
if (typeof option
|
|
856
|
+
if (typeof option == "string") {
|
|
861
857
|
return [];
|
|
862
|
-
|
|
858
|
+
}
|
|
859
|
+
if (typeof option === "object" && option && "options" in option) {
|
|
860
|
+
return option.options;
|
|
861
|
+
}
|
|
862
|
+
return [];
|
|
863
863
|
};
|
|
864
864
|
return {
|
|
865
865
|
options,
|
|
@@ -890,14 +890,16 @@ const __default__ = {
|
|
|
890
890
|
};
|
|
891
891
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
892
892
|
...__default__,
|
|
893
|
-
props:
|
|
894
|
-
emits:
|
|
895
|
-
setup(__props, { emit }) {
|
|
893
|
+
props: useVvSelectProps(),
|
|
894
|
+
emits: ["update:modelValue", "focus", "blur"],
|
|
895
|
+
setup(__props, { emit: __emit }) {
|
|
896
896
|
const props = __props;
|
|
897
|
+
const emit = __emit;
|
|
897
898
|
const slots = useSlots();
|
|
899
|
+
const VvSelectProps2 = useVvSelectProps();
|
|
898
900
|
const propsDefaults = useDefaults(
|
|
899
901
|
"VvSelect",
|
|
900
|
-
|
|
902
|
+
VvSelectProps2,
|
|
901
903
|
props
|
|
902
904
|
);
|
|
903
905
|
const select = ref();
|
|
@@ -929,10 +931,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
929
931
|
focused.value = true;
|
|
930
932
|
}
|
|
931
933
|
});
|
|
932
|
-
const {
|
|
933
|
-
icon,
|
|
934
|
-
iconPosition
|
|
935
|
-
);
|
|
934
|
+
const { hasIconBefore, hasIconAfter } = useComponentIcon(icon, iconPosition);
|
|
936
935
|
const isDirty = computed(() => !isEmpty(props.modelValue));
|
|
937
936
|
const isDisabled = computed(() => props.disabled || props.readonly);
|
|
938
937
|
const hasTabindex = computed(() => {
|
|
@@ -951,28 +950,28 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
951
950
|
"vv-select",
|
|
952
951
|
modifiers,
|
|
953
952
|
computed(() => ({
|
|
954
|
-
valid: valid.value,
|
|
955
|
-
invalid: invalid.value,
|
|
956
|
-
loading: loading.value,
|
|
957
|
-
disabled: disabled.value,
|
|
958
|
-
readonly: readonly.value,
|
|
959
|
-
"icon-before": hasIconBefore.value,
|
|
960
|
-
"icon-after": hasIconAfter.value,
|
|
961
|
-
dirty: isDirty.value,
|
|
962
|
-
focus: focused.value,
|
|
963
|
-
floating: floating.value,
|
|
964
|
-
multiple: multiple.value
|
|
953
|
+
"valid": valid.value,
|
|
954
|
+
"invalid": invalid.value,
|
|
955
|
+
"loading": loading.value,
|
|
956
|
+
"disabled": disabled.value,
|
|
957
|
+
"readonly": readonly.value,
|
|
958
|
+
"icon-before": hasIconBefore.value !== void 0,
|
|
959
|
+
"icon-after": hasIconAfter.value !== void 0,
|
|
960
|
+
"dirty": isDirty.value,
|
|
961
|
+
"focus": focused.value,
|
|
962
|
+
"floating": floating.value,
|
|
963
|
+
"multiple": multiple.value
|
|
965
964
|
}))
|
|
966
965
|
);
|
|
967
966
|
const hasAttrs = computed(() => {
|
|
968
967
|
return {
|
|
969
|
-
name: props.name,
|
|
970
|
-
tabindex: hasTabindex.value,
|
|
971
|
-
disabled: isDisabled.value,
|
|
972
|
-
required: props.required,
|
|
973
|
-
size: props.size,
|
|
974
|
-
autocomplete: props.autocomplete,
|
|
975
|
-
multiple: props.multiple,
|
|
968
|
+
"name": props.name,
|
|
969
|
+
"tabindex": hasTabindex.value,
|
|
970
|
+
"disabled": isDisabled.value,
|
|
971
|
+
"required": props.required,
|
|
972
|
+
"size": props.size,
|
|
973
|
+
"autocomplete": props.autocomplete,
|
|
974
|
+
"multiple": props.multiple,
|
|
976
975
|
"aria-invalid": isInvalid.value,
|
|
977
976
|
"aria-describedby": hasHintLabelOrSlot.value ? hasHintId.value : void 0,
|
|
978
977
|
"aria-errormessage": hasInvalidLabelOrSlot.value ? hasHintId.value : void 0
|
|
@@ -1000,107 +999,142 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1000
999
|
emit("update:modelValue", newValue);
|
|
1001
1000
|
}
|
|
1002
1001
|
});
|
|
1003
|
-
|
|
1004
|
-
|
|
1002
|
+
function isGroup(option) {
|
|
1003
|
+
var _a;
|
|
1004
|
+
if (typeof option === "string") {
|
|
1005
1005
|
return false;
|
|
1006
|
-
|
|
1007
|
-
|
|
1006
|
+
}
|
|
1007
|
+
return (_a = option.options) == null ? void 0 : _a.length;
|
|
1008
|
+
}
|
|
1008
1009
|
return (_ctx, _cache) => {
|
|
1009
|
-
return openBlock(), createElementBlock(
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
},
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1010
|
+
return openBlock(), createElementBlock(
|
|
1011
|
+
"div",
|
|
1012
|
+
{
|
|
1013
|
+
class: normalizeClass(unref(bemCssClasses))
|
|
1014
|
+
},
|
|
1015
|
+
[
|
|
1016
|
+
_ctx.label ? (openBlock(), createElementBlock("label", {
|
|
1017
|
+
key: 0,
|
|
1018
|
+
for: unref(hasId)
|
|
1019
|
+
}, toDisplayString(_ctx.label), 9, _hoisted_1)) : createCommentVNode("v-if", true),
|
|
1020
|
+
createElementVNode("div", _hoisted_2, [
|
|
1021
|
+
_ctx.$slots.before ? (openBlock(), createElementBlock("div", _hoisted_3, [
|
|
1022
|
+
renderSlot(_ctx.$slots, "before", normalizeProps(guardReactiveProps(unref(slotProps))))
|
|
1023
|
+
])) : createCommentVNode("v-if", true),
|
|
1024
|
+
createElementVNode("div", _hoisted_4, [
|
|
1025
|
+
unref(hasIconBefore) ? (openBlock(), createBlock(
|
|
1026
|
+
_sfc_main$1,
|
|
1027
|
+
mergeProps({ key: 0 }, unref(hasIconBefore), { class: "vv-select__icon" }),
|
|
1028
|
+
null,
|
|
1029
|
+
16
|
|
1030
|
+
/* FULL_PROPS */
|
|
1031
|
+
)) : createCommentVNode("v-if", true),
|
|
1032
|
+
withDirectives(createElementVNode("select", mergeProps({
|
|
1033
|
+
id: unref(hasId),
|
|
1034
|
+
ref_key: "select",
|
|
1035
|
+
ref: select,
|
|
1036
|
+
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(localModelValue) ? localModelValue.value = $event : null)
|
|
1037
|
+
}, unref(hasAttrs)), [
|
|
1038
|
+
_ctx.placeholder ? (openBlock(), createElementBlock("option", {
|
|
1039
|
+
key: 0,
|
|
1040
|
+
value: void 0,
|
|
1041
|
+
disabled: !_ctx.unselectable,
|
|
1042
|
+
hidden: !_ctx.unselectable
|
|
1043
|
+
}, toDisplayString(_ctx.placeholder), 9, _hoisted_6)) : createCommentVNode("v-if", true),
|
|
1044
|
+
(openBlock(true), createElementBlock(
|
|
1045
|
+
Fragment,
|
|
1046
|
+
null,
|
|
1047
|
+
renderList(_ctx.options, (option, index) => {
|
|
1048
|
+
return openBlock(), createElementBlock(
|
|
1049
|
+
Fragment,
|
|
1050
|
+
null,
|
|
1051
|
+
[
|
|
1052
|
+
!isGroup(option) ? (openBlock(), createElementBlock("option", {
|
|
1053
|
+
key: index,
|
|
1054
|
+
disabled: unref(isOptionDisabled)(option),
|
|
1055
|
+
value: unref(getOptionValue)(option)
|
|
1056
|
+
}, toDisplayString(unref(getOptionLabel)(option)), 9, _hoisted_7)) : (openBlock(), createElementBlock("optgroup", {
|
|
1057
|
+
key: `group-${index}`,
|
|
1058
|
+
disabled: unref(isOptionDisabled)(option),
|
|
1059
|
+
label: unref(getOptionLabel)(option)
|
|
1060
|
+
}, [
|
|
1061
|
+
(openBlock(true), createElementBlock(
|
|
1062
|
+
Fragment,
|
|
1063
|
+
null,
|
|
1064
|
+
renderList(unref(getOptionGrouped)(option), (item, i) => {
|
|
1065
|
+
return openBlock(), createElementBlock("option", {
|
|
1066
|
+
key: `group-${index}-item-${i}`,
|
|
1067
|
+
disabled: unref(isOptionDisabled)(item),
|
|
1068
|
+
value: unref(getOptionValue)(item)
|
|
1069
|
+
}, toDisplayString(unref(getOptionLabel)(item)), 9, _hoisted_9);
|
|
1070
|
+
}),
|
|
1071
|
+
128
|
|
1072
|
+
/* KEYED_FRAGMENT */
|
|
1073
|
+
))
|
|
1074
|
+
], 8, _hoisted_8))
|
|
1075
|
+
],
|
|
1076
|
+
64
|
|
1077
|
+
/* STABLE_FRAGMENT */
|
|
1078
|
+
);
|
|
1079
|
+
}),
|
|
1080
|
+
256
|
|
1081
|
+
/* UNKEYED_FRAGMENT */
|
|
1082
|
+
))
|
|
1083
|
+
], 16, _hoisted_5), [
|
|
1084
|
+
[vModelSelect, unref(localModelValue)]
|
|
1085
|
+
]),
|
|
1086
|
+
unref(hasIconAfter) ? (openBlock(), createBlock(
|
|
1087
|
+
_sfc_main$1,
|
|
1088
|
+
mergeProps({ key: 1 }, unref(hasIconAfter), { class: "vv-select__icon vv-select__icon-after" }),
|
|
1089
|
+
null,
|
|
1090
|
+
16
|
|
1091
|
+
/* FULL_PROPS */
|
|
1092
|
+
)) : createCommentVNode("v-if", true)
|
|
1060
1093
|
]),
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
}, unref(hasIcon)), null, 16)) : createCommentVNode("", true)
|
|
1094
|
+
_ctx.$slots.after ? (openBlock(), createElementBlock("div", _hoisted_10, [
|
|
1095
|
+
renderSlot(_ctx.$slots, "after", normalizeProps(guardReactiveProps(unref(slotProps))))
|
|
1096
|
+
])) : createCommentVNode("v-if", true)
|
|
1065
1097
|
]),
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
]
|
|
1103
|
-
|
|
1098
|
+
createVNode(unref(HintSlot), {
|
|
1099
|
+
id: unref(hasHintId),
|
|
1100
|
+
class: "vv-select__hint"
|
|
1101
|
+
}, createSlots({
|
|
1102
|
+
_: 2
|
|
1103
|
+
/* DYNAMIC */
|
|
1104
|
+
}, [
|
|
1105
|
+
_ctx.$slots.hint ? {
|
|
1106
|
+
name: "hint",
|
|
1107
|
+
fn: withCtx(() => [
|
|
1108
|
+
renderSlot(_ctx.$slots, "hint", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
|
|
1109
|
+
]),
|
|
1110
|
+
key: "0"
|
|
1111
|
+
} : void 0,
|
|
1112
|
+
_ctx.$slots.loading ? {
|
|
1113
|
+
name: "loading",
|
|
1114
|
+
fn: withCtx(() => [
|
|
1115
|
+
renderSlot(_ctx.$slots, "loading", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
|
|
1116
|
+
]),
|
|
1117
|
+
key: "1"
|
|
1118
|
+
} : void 0,
|
|
1119
|
+
_ctx.$slots.valid ? {
|
|
1120
|
+
name: "valid",
|
|
1121
|
+
fn: withCtx(() => [
|
|
1122
|
+
renderSlot(_ctx.$slots, "valid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
|
|
1123
|
+
]),
|
|
1124
|
+
key: "2"
|
|
1125
|
+
} : void 0,
|
|
1126
|
+
_ctx.$slots.invalid ? {
|
|
1127
|
+
name: "invalid",
|
|
1128
|
+
fn: withCtx(() => [
|
|
1129
|
+
renderSlot(_ctx.$slots, "invalid", normalizeProps(guardReactiveProps(unref(hintSlotScope))))
|
|
1130
|
+
]),
|
|
1131
|
+
key: "3"
|
|
1132
|
+
} : void 0
|
|
1133
|
+
]), 1032, ["id"])
|
|
1134
|
+
],
|
|
1135
|
+
2
|
|
1136
|
+
/* CLASS */
|
|
1137
|
+
);
|
|
1104
1138
|
};
|
|
1105
1139
|
}
|
|
1106
1140
|
});
|