@volverjs/ui-vue 0.0.1-beta.12 → 0.0.1-beta.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/bin/icons.cjs +73 -0
- package/bin/icons.js +75 -0
- package/dist/Volver.d.ts +15 -2
- package/dist/components/VvAccordion/VvAccordion.es.js +133 -236
- package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +32 -97
- package/dist/components/VvAccordion/index.d.ts +46 -0
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +199 -277
- package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +44 -151
- package/dist/components/VvAccordionGroup/{VvAccordionGroup.d.ts → index.d.ts} +9 -13
- package/dist/components/VvBadge/VvBadge.es.js +42 -151
- package/dist/components/VvBadge/VvBadge.umd.js +1 -1
- package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -53
- package/dist/components/VvBadge/{VvBadge.d.ts → index.d.ts} +0 -0
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +55 -168
- package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +24 -104
- package/dist/components/VvBreadcrumb/{VvBreadcrumb.d.ts → index.d.ts} +1 -1
- package/dist/components/VvButton/VvButton.es.js +298 -312
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +91 -163
- package/dist/components/VvButton/{VvButton.d.ts → index.d.ts} +46 -9
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +59 -172
- package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +30 -125
- package/dist/components/VvButtonGroup/{VvButtonGroup.d.ts → index.d.ts} +0 -0
- package/dist/components/VvCard/VvCard.es.js +55 -166
- package/dist/components/VvCard/VvCard.umd.js +1 -1
- package/dist/components/VvCard/VvCard.vue.d.ts +16 -61
- package/dist/components/VvCard/{VvCard.d.ts → index.d.ts} +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.es.js +344 -0
- package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -0
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +87 -0
- package/dist/components/VvCheckbox/index.d.ts +86 -0
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +415 -0
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -0
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +113 -0
- package/dist/components/{VvCheckGroup/VvCheckGroup.d.ts → VvCheckboxGroup/index.d.ts} +10 -10
- package/dist/components/VvDialog/VvDialog.es.js +108 -230
- package/dist/components/VvDialog/VvDialog.umd.js +1 -1
- package/dist/components/VvDialog/VvDialog.vue.d.ts +28 -132
- package/dist/components/VvDialog/{VvDialog.d.ts → index.d.ts} +2 -6
- package/dist/components/VvDropdown/VvDropdown.es.js +167 -186
- package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
- package/dist/components/VvDropdown/VvDropdown.vue.d.ts +34 -136
- package/dist/components/VvDropdown/{VvDropdown.d.ts → index.d.ts} +7 -3
- package/dist/components/VvIcon/VvIcon.es.js +62 -174
- package/dist/components/VvIcon/VvIcon.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.vue.d.ts +36 -150
- package/dist/components/VvIcon/{VvIcon.d.ts → index.d.ts} +9 -0
- package/dist/components/VvInputText/VvInputClearAction.d.ts +36 -0
- package/dist/components/VvInputText/VvInputPasswordAction.d.ts +56 -0
- package/dist/components/VvInputText/VvInputStepAction.d.ts +37 -0
- package/dist/components/VvInputText/VvInputText.es.js +586 -577
- package/dist/components/VvInputText/VvInputText.umd.js +1 -2
- package/dist/components/VvInputText/VvInputText.vue.d.ts +187 -275
- package/dist/components/VvInputText/VvInputTextActions.d.ts +1 -1
- package/dist/components/VvInputText/index.d.ts +175 -0
- package/dist/components/VvNativeSelect/VvNativeSelect.es.js +299 -347
- package/dist/components/VvNativeSelect/VvNativeSelect.umd.js +1 -2
- package/dist/components/VvNativeSelect/VvNativeSelect.vue.d.ts +78 -190
- package/dist/components/VvNativeSelect/{VvNativeSelect.d.ts → index.d.ts} +35 -8
- package/dist/components/VvProgress/VvProgress.es.js +45 -162
- package/dist/components/VvProgress/VvProgress.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.vue.d.ts +17 -103
- package/dist/components/VvProgress/{VvProgress.d.ts → index.d.ts} +1 -7
- package/dist/components/VvRadio/VvRadio.es.js +292 -267
- package/dist/components/VvRadio/VvRadio.umd.js +1 -1
- package/dist/components/VvRadio/VvRadio.vue.d.ts +52 -122
- package/dist/components/VvRadio/index.d.ts +64 -0
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +342 -380
- package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -2
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +58 -213
- package/dist/components/VvRadioGroup/{VvRadioGroup.d.ts → index.d.ts} +2 -2
- package/dist/components/VvSelect/VvSelect.es.js +556 -510
- package/dist/components/VvSelect/VvSelect.umd.js +1 -2
- package/dist/components/VvSelect/VvSelect.vue.d.ts +75 -240
- package/dist/components/VvSelect/{VvSelect.d.ts → index.d.ts} +12 -5
- package/dist/components/VvTextarea/VvTextarea.es.js +372 -481
- package/dist/components/VvTextarea/VvTextarea.umd.js +1 -2
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +103 -299
- package/dist/components/VvTextarea/{VvTextarea.d.ts → index.d.ts} +36 -13
- package/dist/components/common/HintSlot.d.ts +10 -4
- package/dist/components/index.d.ts +13 -6
- package/dist/components/index.es.js +2070 -895
- package/dist/components/index.umd.js +1 -2
- package/dist/composables/debouncedInput/useDebouncedInput.d.ts +2 -2
- package/dist/composables/focus/useComponentFocus.d.ts +3 -3
- package/dist/composables/group/types/IAccordionGroupState.d.ts +1 -3
- package/dist/composables/group/types/IGroupState.d.ts +2 -2
- package/dist/composables/group/useInjectedGroupState.d.ts +4 -4
- package/dist/composables/group/useProvideGroupState.d.ts +1 -1
- package/dist/composables/icons/useComponentIcons.d.ts +2 -2
- package/dist/composables/textLimit/useTextLimit.d.ts +0 -3
- package/dist/constants.d.ts +4 -4
- package/dist/icons.d.ts +1881 -0
- package/dist/icons.es.js +4 -6
- package/dist/icons.umd.js +1 -1
- package/dist/index.es.js +2113 -932
- package/dist/index.umd.js +1 -2
- package/dist/props/index.d.ts +9 -3
- package/dist/resolvers/unplugin.d.ts +27 -0
- package/dist/resolvers/unplugin.es.js +40 -0
- package/dist/resolvers/unplugin.umd.js +1 -0
- package/dist/stories/Accordion/Accordion.test.d.ts +4 -0
- package/dist/stories/Badge/Badge.test.d.ts +2 -0
- package/dist/stories/Breadcrumb/Breadcrumb.test.d.ts +2 -0
- package/dist/stories/Button/Button.test.d.ts +3 -8
- package/dist/stories/Card/Card.test.d.ts +3 -0
- package/dist/stories/Dialog/Dialog.test.d.ts +2 -0
- package/dist/stories/Dropdown/Dropdown.test.d.ts +2 -0
- package/dist/stories/Icon/IconList.vue.d.ts +1 -43
- package/dist/stories/InputText/InputText.test.d.ts +6 -0
- package/dist/stories/Radio/Radio.test.d.ts +3 -0
- package/dist/stories/RadioGroup/RadioGroup.test.d.ts +8 -0
- package/dist/stories/Select/Select.test.d.ts +3 -0
- package/dist/stories/Textarea/Textarea.test.d.ts +8 -0
- package/dist/stories/utils.d.ts +1 -3
- package/dist/test/sleep.d.ts +1 -0
- package/dist/utils/ObjectUtilities.d.ts +82 -95
- package/env.d.ts +1 -0
- package/package.json +103 -68
- package/src/Volver.ts +32 -3
- 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 +80 -76
- package/src/components/VvAccordion/index.ts +69 -0
- package/src/components/VvAccordionGroup/VvAccordionGroup.vue +77 -41
- package/src/components/VvAccordionGroup/{VvAccordionGroup.ts → index.ts} +8 -12
- package/src/components/VvBadge/VvBadge.vue +14 -10
- package/src/components/VvBadge/{VvBadge.ts → index.ts} +0 -0
- package/src/components/VvBreadcrumb/VvBreadcrumb.vue +18 -19
- package/src/components/VvBreadcrumb/{VvBreadcrumb.ts → index.ts} +1 -1
- package/src/components/VvButton/VvButton.vue +123 -113
- package/src/components/VvButton/index.ts +147 -0
- package/src/components/VvButtonGroup/VvButtonGroup.vue +21 -17
- package/src/components/VvButtonGroup/{VvButtonGroup.ts → index.ts} +0 -0
- package/src/components/VvCard/VvCard.vue +20 -22
- package/src/components/VvCard/{VvCard.ts → index.ts} +0 -0
- package/src/components/VvCheckbox/VvCheckbox.vue +124 -0
- package/src/components/VvCheckbox/index.ts +94 -0
- package/src/components/{VvCheckGroup/VvCheckGroup.vue → VvCheckboxGroup/VvCheckboxGroup.vue} +49 -54
- package/src/components/{VvCheckGroup/VvCheckGroup.ts → VvCheckboxGroup/index.ts} +9 -9
- package/src/components/VvDialog/VvDialog.vue +47 -50
- package/src/components/VvDialog/index.ts +10 -0
- package/src/components/VvDropdown/VvDropdown.vue +61 -40
- package/src/components/VvDropdown/{VvDropdown.ts → index.ts} +8 -4
- package/src/components/VvIcon/VvIcon.vue +31 -25
- package/src/components/VvIcon/{VvIcon.ts → index.ts} +9 -0
- package/src/components/VvInputText/VvInputClearAction.ts +53 -0
- package/src/components/VvInputText/VvInputPasswordAction.ts +70 -0
- package/src/components/VvInputText/VvInputStepAction.ts +49 -0
- package/src/components/VvInputText/VvInputText.vue +168 -170
- package/src/components/VvInputText/VvInputTextActions.ts +54 -108
- package/src/components/VvInputText/index.ts +135 -0
- package/src/components/VvNativeSelect/VvNativeSelect.vue +130 -68
- package/src/components/VvNativeSelect/{VvNativeSelect.ts → index.ts} +26 -7
- package/src/components/VvProgress/VvProgress.vue +25 -26
- package/src/components/VvProgress/{VvProgress.ts → index.ts} +4 -7
- package/src/components/VvRadio/VvRadio.vue +81 -108
- package/src/components/VvRadio/index.ts +78 -0
- package/src/components/VvRadioGroup/VvRadioGroup.vue +45 -45
- package/src/components/VvRadioGroup/{VvRadioGroup.ts → index.ts} +1 -1
- package/src/components/VvSelect/VvSelect.vue +90 -69
- package/src/components/VvSelect/{VvSelect.ts → index.ts} +12 -5
- package/src/components/VvTextarea/VvTextarea.vue +121 -128
- package/src/components/VvTextarea/{VvTextarea.ts → index.ts} +31 -11
- package/src/components/common/HintSlot.ts +157 -136
- package/src/components/index.ts +13 -6
- package/src/composables/debouncedInput/useDebouncedInput.ts +21 -15
- package/src/composables/focus/useComponentFocus.ts +6 -8
- package/src/composables/group/types/IAccordionGroupState.ts +1 -3
- package/src/composables/group/types/IGroupState.ts +2 -2
- package/src/composables/group/useInjectedGroupState.ts +20 -30
- package/src/composables/group/useProvideGroupState.ts +1 -2
- package/src/composables/icons/useComponentIcons.ts +2 -3
- package/src/composables/options/useOptions.ts +3 -0
- package/src/composables/textLimit/useTextLimit.ts +1 -4
- package/src/composables/useModifiers.ts +13 -15
- package/src/constants.ts +5 -7
- package/src/directives/{.README → .gitkeep} +0 -0
- package/src/icons.ts +7 -0
- package/src/index.ts +0 -1
- package/src/props/index.ts +7 -1
- package/src/resolvers/unplugin.ts +103 -0
- package/src/shims.d.ts +11 -0
- package/src/stories/Accordion/Accordion.stories.mdx +10 -9
- package/src/stories/Accordion/Accordion.test.ts +37 -0
- package/src/stories/Accordion/AccordionSlots.stories.mdx +40 -25
- package/src/stories/AccordionGroup/AccordionGroup.stories.mdx +10 -16
- package/src/stories/AccordionGroup/{accordionGroupTest.js → AccordionGroup.test.js} +15 -17
- package/src/stories/AccordionGroup/AccordionGroupCollapse.stories.mdx +38 -0
- package/src/stories/AccordionGroup/{AccordionItems.stories.mdx → AccordionGroupItems.stories.mdx} +7 -13
- package/src/stories/Badge/Badge.stories.mdx +8 -8
- package/src/stories/Badge/Badge.test.ts +16 -0
- package/src/stories/Badge/BadgeColor.stories.mdx +6 -7
- package/src/stories/Badge/BadgeDot.stories.mdx +4 -3
- package/src/stories/Badge/BadgeModifiers.stories.mdx +7 -6
- package/src/stories/Breadcrumb/Breadcrumb.stories.mdx +15 -7
- package/src/stories/Breadcrumb/Breadcrumb.test.ts +49 -0
- package/src/stories/Breadcrumb/BreadcrumbMultiline.stories.mdx +15 -7
- package/src/stories/Button/Button.stories.mdx +16 -17
- package/src/stories/Button/Button.test.ts +8 -12
- package/src/stories/Button/ButtonActive.stories.mdx +2 -1
- package/src/stories/Button/ButtonBadge.stories.mdx +2 -2
- package/src/stories/Button/ButtonDisabled.stories.mdx +1 -1
- package/src/stories/Button/ButtonIcon.stories.mdx +6 -3
- package/src/stories/Button/ButtonIconPosition.stories.mdx +1 -1
- package/src/stories/Button/ButtonLink.stories.mdx +1 -19
- package/src/stories/Button/ButtonLoading.stories.mdx +4 -4
- package/src/stories/Button/ButtonModifiers.stories.mdx +1 -1
- package/src/stories/Button/ButtonPressed.stories.mdx +31 -0
- package/src/stories/Button/ButtonSlots.stories.mdx +1 -1
- package/src/stories/ButtonGroup/ButtonGroup.stories.mdx +5 -6
- package/src/stories/ButtonGroup/{ButtonGroupTest.js → ButtonGroup.test.js} +6 -28
- package/src/stories/ButtonGroup/ButtonGroupAction.stories.mdx +5 -6
- package/src/stories/ButtonGroup/ButtonGroupActionQuiet.stories.mdx +3 -4
- package/src/stories/ButtonGroup/ButtonGroupBlock.stories.mdx +3 -4
- package/src/stories/ButtonGroup/ButtonGroupCompact.stories.mdx +3 -4
- package/src/stories/ButtonGroup/ButtonGroupRounded.stories.mdx +3 -4
- package/src/stories/ButtonGroup/ButtonGroupToggle.stories.mdx +11 -12
- package/src/stories/ButtonGroup/ButtonGroupVertical.stories.mdx +3 -4
- package/src/stories/Card/Card.stories.mdx +7 -5
- package/src/stories/Card/Card.test.ts +26 -0
- package/src/stories/Card/CardSlots.stories.mdx +5 -5
- package/src/stories/Card/CardVariant.stories.mdx +5 -4
- package/src/stories/Checkbox/Checkbox.stories.mdx +51 -0
- package/src/stories/Checkbox/Checkbox.test.js +115 -0
- package/src/stories/Checkbox/CheckboxBinary.stories.mdx +76 -0
- package/src/stories/{Check/CheckDisabled.stories.mdx → Checkbox/CheckboxDisabled.stories.mdx} +7 -7
- package/src/stories/Checkbox/CheckboxError.stories.mdx +43 -0
- package/src/stories/Checkbox/CheckboxHintLabel.stories.mdx +35 -0
- package/src/stories/{Check/CheckReadonly.stories.mdx → Checkbox/CheckboxReadonly.stories.mdx} +6 -8
- package/src/stories/Checkbox/CheckboxSlots.stories.mdx +69 -0
- package/src/stories/{Check/CheckSwitch.stories.mdx → Checkbox/CheckboxSwitch.stories.mdx} +8 -8
- package/src/stories/CheckboxGroup/CheckboxGroup.stories.mdx +69 -0
- package/src/stories/CheckboxGroup/CheckboxGroupDisabled.stories.mdx +26 -0
- package/src/stories/CheckboxGroup/CheckboxGroupError.stories.mdx +28 -0
- package/src/stories/CheckboxGroup/CheckboxGroupHintLabel.stories.mdx +27 -0
- package/src/stories/CheckboxGroup/CheckboxGroupLabel.stories.mdx +26 -0
- package/src/stories/{CheckGroup/CheckGroupOptionLabel.stories.mdx → CheckboxGroup/CheckboxGroupOptionLabel.stories.mdx} +14 -11
- package/src/stories/{CheckGroup/CheckGroupOptionValue.stories.mdx → CheckboxGroup/CheckboxGroupOptionValue.stories.mdx} +13 -10
- package/src/stories/{CheckGroup/CheckGroupOptions.stories.mdx → CheckboxGroup/CheckboxGroupOptions.stories.mdx} +8 -8
- package/src/stories/CheckboxGroup/CheckboxGroupReadonly.stories.mdx +26 -0
- package/src/stories/CheckboxGroup/CheckboxGroupSlots.stories.mdx +152 -0
- package/src/stories/CheckboxGroup/CheckboxGroupValid.stories.mdx +28 -0
- package/src/stories/CheckboxGroup/CheckboxGroupVertical.stories.mdx +26 -0
- package/src/stories/Dialog/Dialog.stories.mdx +5 -5
- package/src/stories/Dialog/Dialog.test.ts +26 -0
- package/src/stories/Dialog/DialogAutoClose.stories.mdx +1 -1
- package/src/stories/Dialog/DialogSize.stories.mdx +1 -1
- package/src/stories/Dropdown/Dropdown.stories.mdx +11 -7
- package/src/stories/Dropdown/Dropdown.test.ts +80 -0
- package/src/stories/Dropdown/DropdownDisabled.stories.mdx +9 -2
- package/src/stories/Dropdown/DropdownLabelNoResults.stories.mdx +2 -2
- package/src/stories/Dropdown/DropdownMaxValues.stories.mdx +4 -2
- package/src/stories/Dropdown/DropdownMultiple.stories.mdx +4 -2
- package/src/stories/Dropdown/DropdownOptions.stories.mdx +4 -4
- package/src/stories/Dropdown/DropdownUseObject.stories.mdx +4 -2
- package/src/stories/Icon/Icon.stories.mdx +8 -8
- package/src/stories/Icon/{IconTest.js → Icon.test.js} +2 -5
- package/src/stories/Icon/IconList.vue +5 -6
- package/src/stories/Icon/IconPrefix.stories.mdx +2 -2
- package/src/stories/Icon/IconRemote.stories.mdx +2 -2
- package/src/stories/Icon/IconsList.stories.mdx +2 -18
- package/src/stories/InputText/InputText.stories.mdx +25 -19
- package/src/stories/InputText/InputText.test.ts +156 -0
- package/src/stories/InputText/InputTextAutocomplete.stories.mdx +9 -2
- package/src/stories/InputText/InputTextAutofocus.stories.mdx +6 -3
- package/src/stories/InputText/InputTextDisabled.stories.mdx +10 -2
- package/src/stories/InputText/InputTextError.stories.mdx +10 -2
- package/src/stories/InputText/InputTextFloating.stories.mdx +10 -3
- package/src/stories/InputText/InputTextHintLabel.stories.mdx +10 -2
- package/src/stories/InputText/InputTextIcon.stories.mdx +6 -2
- package/src/stories/InputText/InputTextIconPosition.stories.mdx +10 -3
- package/src/stories/InputText/InputTextLabel.stories.mdx +8 -2
- package/src/stories/InputText/InputTextLoading.stories.mdx +10 -2
- package/src/stories/InputText/InputTextMax.stories.mdx +10 -3
- package/src/stories/InputText/InputTextMaxLength.stories.mdx +22 -5
- package/src/stories/InputText/InputTextMin.stories.mdx +10 -3
- package/src/stories/InputText/InputTextMinLength.stories.mdx +9 -2
- package/src/stories/InputText/InputTextPlaceholder.stories.mdx +8 -2
- package/src/stories/InputText/InputTextReadonly.stories.mdx +6 -2
- package/src/stories/InputText/InputTextSlots.stories.mdx +4 -5
- package/src/stories/InputText/InputTextStep.stories.mdx +9 -3
- package/src/stories/InputText/InputTextType.stories.mdx +110 -13
- package/src/stories/InputText/InputTextValid.stories.mdx +10 -2
- package/src/stories/NativeSelect/NativeSelect.stories.mdx +15 -11
- package/src/stories/NativeSelect/NativeSelect.test.js +151 -0
- package/src/stories/NativeSelect/NativeSelectDisabled.stories.mdx +6 -7
- package/src/stories/NativeSelect/NativeSelectError.stories.mdx +7 -3
- package/src/stories/NativeSelect/NativeSelectHintLabel.stories.mdx +7 -3
- package/src/stories/NativeSelect/NativeSelectIconLeftRight.stories.mdx +14 -12
- package/src/stories/NativeSelect/NativeSelectLoading.stories.mdx +7 -3
- package/src/stories/NativeSelect/NativeSelectOptions.stories.mdx +44 -38
- package/src/stories/NativeSelect/NativeSelectReadonly.stories.mdx +19 -11
- package/src/stories/NativeSelect/NativeSelectUseObject.stories.mdx +26 -30
- package/src/stories/NativeSelect/NativeSelectValid.stories.mdx +7 -3
- package/src/stories/NativeSelect/NativeSelectValueKey.stories.mdx +30 -30
- package/src/stories/Progress/Progress.stories.mdx +8 -11
- package/src/stories/Progress/{ProgressTest.js → Progress.test.js} +4 -10
- package/src/stories/Progress/ProgressDeterminate.stories.mdx +3 -6
- package/src/stories/Radio/Radio.stories.mdx +11 -17
- package/src/stories/Radio/Radio.test.ts +52 -0
- package/src/stories/Radio/RadioDisabled.stories.mdx +4 -7
- package/src/stories/Radio/RadioError.stories.mdx +8 -28
- package/src/stories/Radio/RadioHintLabel.stories.mdx +6 -7
- package/src/stories/Radio/RadioSlots.stories.mdx +21 -7
- package/src/stories/RadioGroup/RadioGroup.stories.mdx +20 -27
- package/src/stories/RadioGroup/RadioGroup.test.ts +139 -0
- package/src/stories/RadioGroup/RadioGroupDisabled.stories.mdx +6 -8
- package/src/stories/RadioGroup/RadioGroupError.stories.mdx +9 -11
- package/src/stories/RadioGroup/RadioGroupHintLabel.stories.mdx +8 -10
- package/src/stories/RadioGroup/RadioGroupLabel.stories.mdx +6 -8
- package/src/stories/RadioGroup/RadioGroupOptionLabel.stories.mdx +11 -13
- package/src/stories/RadioGroup/RadioGroupOptionValue.stories.mdx +9 -11
- package/src/stories/RadioGroup/RadioGroupOptions.stories.mdx +7 -9
- package/src/stories/RadioGroup/RadioGroupReadonly.stories.mdx +6 -8
- package/src/stories/RadioGroup/RadioGroupSlots.stories.mdx +39 -62
- package/src/stories/RadioGroup/RadioGroupValid.stories.mdx +9 -11
- package/src/stories/RadioGroup/RadioGroupVertical.stories.mdx +6 -8
- package/src/stories/Select/Select.stories.mdx +32 -29
- package/src/stories/Select/Select.test.ts +104 -0
- package/src/stories/Select/SelectDisabled.stories.mdx +3 -3
- package/src/stories/Select/SelectMaxValues.stories.mdx +3 -3
- package/src/stories/Select/SelectMultiple.stories.mdx +5 -6
- package/src/stories/Select/SelectNative.stories.mdx +6 -8
- package/src/stories/Select/SelectOptions.stories.mdx +4 -4
- package/src/stories/Select/SelectSearchable.stories.mdx +13 -12
- package/src/stories/Select/SelectSeparator.stories.mdx +3 -3
- package/src/stories/Select/SelectUseObject.stories.mdx +3 -3
- package/src/stories/Textarea/Textarea.stories.mdx +6 -10
- package/src/stories/Textarea/Textarea.test.ts +204 -0
- package/src/stories/Textarea/TextareaAutoclear.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaAutocomplete.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaAutofocus.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaDebounce.stories.mdx +7 -6
- package/src/stories/Textarea/TextareaDisabled.stories.mdx +9 -3
- package/src/stories/Textarea/TextareaError.stories.mdx +7 -2
- package/src/stories/Textarea/TextareaErrorLabel.stories.mdx +12 -2
- package/src/stories/Textarea/TextareaFloating.stories.mdx +7 -2
- package/src/stories/Textarea/TextareaHintLabel.stories.mdx +7 -2
- package/src/stories/Textarea/TextareaIcon.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaIconPosition.stories.mdx +4 -2
- package/src/stories/Textarea/TextareaId.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaLabel.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaLimit.stories.mdx +5 -2
- package/src/stories/Textarea/TextareaLoading.stories.mdx +7 -2
- package/src/stories/Textarea/TextareaLoadingLabel.stories.mdx +9 -3
- package/src/stories/Textarea/TextareaMaxLength.stories.mdx +5 -4
- package/src/stories/Textarea/TextareaMinLength.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaModifiers.stories.mdx +10 -2
- package/src/stories/Textarea/TextareaName.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaPlaceholder.stories.mdx +4 -3
- package/src/stories/Textarea/TextareaReadonly.stories.mdx +8 -3
- package/src/stories/Textarea/TextareaRequired.stories.mdx +3 -2
- package/src/stories/Textarea/TextareaResizable.stories.mdx +7 -2
- package/src/stories/Textarea/TextareaRowsCols.stories.mdx +4 -2
- package/src/stories/Textarea/TextareaSlots.stories.mdx +7 -8
- package/src/stories/Textarea/TextareaValid.stories.mdx +7 -1
- package/src/stories/Textarea/TextareaValidLabel.stories.mdx +14 -4
- package/src/stories/utils.ts +1 -1
- package/src/stories/volver-ui-vue.stories.mdx +1 -1
- package/src/test/expect.ts +3 -1
- package/src/test/sleep.ts +2 -0
- package/src/test/types.d.ts +14 -1
- package/src/types/{.README → .gitkeep} +0 -0
- package/src/utils/ObjectUtilities.ts +247 -241
- package/dist/components/VvAccordion/VvAccordion.d.ts +0 -32
- package/dist/components/VvAccordion/useAccordionProps.d.ts +0 -16
- package/dist/components/VvButton/useButtonGroupProps.d.ts +0 -18
- package/dist/components/VvCheck/VvCheck.d.ts +0 -47
- package/dist/components/VvCheck/VvCheck.es.js +0 -318
- package/dist/components/VvCheck/VvCheck.umd.js +0 -1
- package/dist/components/VvCheck/VvCheck.vue.d.ts +0 -165
- package/dist/components/VvCheck/useCheckProps.d.ts +0 -16
- package/dist/components/VvCheckGroup/VvCheckGroup.es.js +0 -451
- package/dist/components/VvCheckGroup/VvCheckGroup.umd.js +0 -2
- package/dist/components/VvCheckGroup/VvCheckGroup.vue.d.ts +0 -272
- package/dist/components/VvDialog/constants.d.ts +0 -5
- package/dist/components/VvInputText/VvInputText.d.ts +0 -73
- package/dist/components/VvInputText/constants.d.ts +0 -55
- package/dist/components/VvRadio/VvRadio.d.ts +0 -22
- package/dist/components/VvRadio/useRadioProps.d.ts +0 -15
- package/dist/components/VvTextarea/constants.d.ts +0 -19
- package/dist/stories/RadioGroup/RadioOption.test.d.ts +0 -4
- package/dist/stories/RadioGroup/RadioProperty.test.d.ts +0 -12
- package/dist/stories/RadioGroup/RadioSlots.test.d.ts +0 -6
- package/src/assets/icons/index.js +0 -7
- package/src/components/VvAccordion/VvAccordion.ts +0 -34
- package/src/components/VvAccordion/useAccordionProps.ts +0 -45
- package/src/components/VvButton/VvButton.ts +0 -87
- package/src/components/VvButton/useButtonGroupProps.ts +0 -43
- package/src/components/VvCheck/VvCheck.ts +0 -48
- package/src/components/VvCheck/VvCheck.vue +0 -147
- package/src/components/VvCheck/useCheckProps.ts +0 -41
- package/src/components/VvDialog/VvDialog.ts +0 -17
- package/src/components/VvDialog/constants.ts +0 -5
- package/src/components/VvInputText/VvInputText.ts +0 -66
- package/src/components/VvInputText/constants.ts +0 -34
- package/src/components/VvRadio/VvRadio.ts +0 -25
- package/src/components/VvRadio/useRadioProps.ts +0 -40
- package/src/components/VvTextarea/constants.ts +0 -14
- package/src/stories/Accordion/AccordionBordered.stories.mdx +0 -26
- package/src/stories/Accordion/AccordionIconRight.stories.mdx +0 -32
- package/src/stories/Accordion/accordionTest.js +0 -36
- package/src/stories/AccordionGroup/Accordion.stories.mdx +0 -42
- package/src/stories/Badge/BadgeTest.js +0 -21
- package/src/stories/Button/ButtonSelected.stories.mdx +0 -30
- package/src/stories/Check/Check.stories.mdx +0 -62
- package/src/stories/Check/CheckBinary.stories.mdx +0 -75
- package/src/stories/Check/CheckError.stories.mdx +0 -64
- package/src/stories/Check/CheckErrorTests.js +0 -74
- package/src/stories/Check/CheckHintLabel.stories.mdx +0 -30
- package/src/stories/Check/CheckPropertyTest.js +0 -102
- package/src/stories/Check/CheckSlots.stories.mdx +0 -51
- package/src/stories/CheckGroup/CheckGroup.stories.mdx +0 -69
- package/src/stories/CheckGroup/CheckGroupDisabled.stories.mdx +0 -26
- package/src/stories/CheckGroup/CheckGroupError.stories.mdx +0 -28
- package/src/stories/CheckGroup/CheckGroupHintLabel.stories.mdx +0 -27
- package/src/stories/CheckGroup/CheckGroupLabel.stories.mdx +0 -26
- package/src/stories/CheckGroup/CheckGroupReadonly.stories.mdx +0 -26
- package/src/stories/CheckGroup/CheckGroupSlots.stories.mdx +0 -152
- package/src/stories/CheckGroup/CheckGroupValid.stories.mdx +0 -28
- package/src/stories/CheckGroup/CheckGroupVertical.stories.mdx +0 -26
- package/src/stories/RadioGroup/RadioOption.test.ts +0 -45
- package/src/stories/RadioGroup/RadioProperty.test.ts +0 -87
- package/src/stories/RadioGroup/RadioSlots.test.ts +0 -29
- package/src/stories/stories.scss +0 -13
|
@@ -1,2 +1 @@
|
|
|
1
|
-
(function(k,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("uuid"),require("@iconify/vue"),require("@vueuse/core")):typeof define=="function"&&define.amd?define(["exports","vue","uuid","@iconify/vue","@vueuse/core"],e):(k=typeof globalThis<"u"?globalThis:k||self,e(k.components={},k.vue,k.uuid,k.vue$1,k.core))})(this,function(k,e,j,P,$){"use strict";const z={valid:Boolean,validLabel:[String,Array]},T={error:Boolean,errorLabel:[String,Array]},v={disabled:Boolean},R={modifiers:[String,Array]},J={hintLabel:{type:String,default:""}},X={options:{type:Array,default:()=>[]},optionLabel:{type:[String,Function],default:()=>"label"},optionValue:{type:[String,Function],default:()=>"value"}};var O=(t=>(t.left="left",t.right="right",t.top="top",t.bottom="bottom",t))(O||{}),N=(t=>(t.nuxtLink="nuxt-link",t.routerLink="router-link",t.a="a",t.button="button",t))(N||{}),M=(t=>(t._blank="_blank",t._self="_self",t._parent="_parent",t._top="_top",t))(M||{});const Q={...R,...v,icon:String,iconPosition:{type:String,default:"left",validator:t=>t in O},label:String,loading:Boolean,loadingIcon:{type:String,default:"eos-icons:bubble-loading"},loadingLabel:{type:String,default:"Loading..."},to:{type:[String,Object]},href:String,target:{type:String,validator:t=>t in M},active:Boolean,selected:Boolean},h={equals(t,n,o){return o?this.resolveFieldData(t,o)===this.resolveFieldData(n,o):this.deepEquals(t,n)},deepEquals(t,n){if(t===n)return!0;if(t&&n&&typeof t=="object"&&typeof n=="object"){const o=Array.isArray(t),l=Array.isArray(n);let r,i,a;if(o&&l){if(i=t.length,i!=n.length)return!1;for(r=i;r--!==0;)if(!this.deepEquals(t[r],n[r]))return!1;return!0}if(o!=l)return!1;const d=t instanceof Date,c=n instanceof Date;if(d!=c)return!1;if(d&&c)return t.getTime()==n.getTime();const p=t instanceof RegExp,u=n instanceof RegExp;if(p!=u)return!1;if(p&&u)return t.toString()==n.toString();const s=Object.keys(t);if(i=s.length,i!==Object.keys(n).length)return!1;for(r=i;r--!==0;)if(!Object.prototype.hasOwnProperty.call(n,s[r]))return!1;for(r=i;r--!==0;)if(a=s[r],!this.deepEquals(t[a],n[a]))return!1;return!0}return t!==t&&n!==n},resolveFieldData(t,n){if(t&&Object.keys(t).length&&n){if(n.indexOf(".")===-1)return t[n];{const o=n.split(".");let l=t;for(let r=0,i=o.length;r<i;++r){if(t==null)return null;l=l[o[r]]}return l}}else return null},isFunction(t){return!!(t&&t.constructor&&t.call&&t.apply)},findIndexInList(t,n){let o=-1;if(n){for(let l=0;l<n.length;l++)if(this.equals(n[l],t)){o=l;break}}return o},contains(t,n){if(t!=null&&n&&n.length){for(const o of n)if(this.equals(t,o))return!0}return!1},isEmpty(t){return t==null||t===""||Array.isArray(t)&&t.length===0||!(t instanceof Date)&&typeof t=="object"&&Object.keys(t).length===0},isNotEmpty(t){return!this.isEmpty(t)},pickBy(t,n){return Object.fromEntries(Object.entries(t).filter(([o])=>n(o)))},removeFromList(t,n){const o=this.findIndexInList(t,n);return o>-1?n.filter((l,r)=>r!==o):n},isString(t){return typeof t=="string"||t instanceof String},propsToObject(t){return Object.keys(t).reduce((n,o)=>{var l,r,i,a,d;return this.isFunction(t[o])?n[o]=t[o]():Array.isArray(t[o])?n[o]=t[o][0]():(l=t[o])!=null&&l.type&&(Array.isArray(t[o].type)?n[o]=((r=t[o])==null?void 0:r.default)||((i=t[o])==null?void 0:i.type[0]()):n[o]=((a=t[o])==null?void 0:a.default)||((d=t[o])==null?void 0:d.type())),n},{})},filterArray(t,n,o){return t.filter(l=>n.some(r=>typeof r=="string"?l[o]==r:this.equals(l[o],r[o])))},kebabCase(t){var n,o;if(t)return(o=(n=t.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:n.join("-"))==null?void 0:o.toLowerCase()}},Y="ds",x={color:String,width:{type:[String,Number]},height:{type:[String,Number]},name:{type:String,required:!0},provider:{type:String},prefix:{type:String,default:"normal"},src:String,horizontalFlip:Boolean,verticalFlip:Boolean,flip:String,mode:String,inline:Boolean,rotate:[Number,String],onLoad:Function,svg:String,modifiers:{type:[String,Array]}};function _(t,n){const o={[`${t}`]:!0};return{bemCssClasses:e.computed(()=>Object.keys(n).reduce((r,i)=>{const a=e.unref(n[i])||!1;if(!a)return r;if(i==="modifiers"){const d=Array.isArray(a)?a:[a];return{...r,...d.reduce((c,p)=>({...c,[`${t}--${h.kebabCase(p)}`]:!0}),{})}}else return{...r,[`${t}--${h.kebabCase(i)}`]:a}},o)||{})}}const D=e.defineComponent({__name:"VvIcon",props:x,setup(t){const n=t,o=e.ref(!0),{modifiers:l}=e.toRefs(n),r=e.inject(Y),{bemCssClasses:i}=_("vv-icon",{modifiers:l}),a=e.computed(()=>n.provider||(r==null?void 0:r.provider)),d=e.computed(()=>{const u=n.name||"",s=`@${a.value}:${n.prefix}:${n.name}`;return P.iconExists(u)?u:P.iconExists(s)?s:(r==null?void 0:r.iconsCollections.find(m=>{const f=`@${a.value}:${m.prefix}:${u}`;if(P.iconExists(f))return f}))||u});function c(u){let s=null;if(typeof window>"u"){const{JSDOM:g}=require("jsdom");s=new g().window}return(s?new s.DOMParser:new window.DOMParser).parseFromString(u,"text/html").querySelector("svg")}function p(u){const s=c(u),m=(s==null?void 0:s.innerHTML.trim())||"";s&&m&&P.addIcon(`@${a.value}:${n.prefix}:${n.name}`,{body:m,height:s.viewBox.baseVal.height,width:s.viewBox.baseVal.width})}return r&&(n.src?(o.value=!1,r.fetchIcon(n.src).then(u=>{u&&(p(u),o.value=!0)}).catch(u=>{throw new Error(`During fetch icon: ${u==null?void 0:u.message}`)})):n.svg&&p(n.svg)),(u,s)=>o.value?(e.openBlock(),e.createBlock(e.unref(P.Icon),e.mergeProps({key:0,class:e.unref(i)},{...u.$props,provider:e.unref(a),icon:e.unref(d)}),null,16,["class"])):e.createCommentVNode("",!0)}});function F(t){const n=e.inject(t,void 0),o=e.computed(()=>h.isNotEmpty(n));function l(r,i,a){if(n!=null&&n.value){const d=e.unref(n.value)[r];return e.computed({get(){return d==null?void 0:d.value},set(c){d.value=c}})}else{const d=e.toRef(i,r);return e.computed({get(){return d.value},set(c){a&&a(`update:${r}`,c)}})}}return{group:n,isInGroup:o,getGroupOrLocalRef:l}}const H=Symbol("VV_BUTTON_GROUP"),U=Symbol("VV_CHECK_GROUP"),K=Symbol("VV_ACCORDION_GROUP");function ee(t){const{group:n,isInGroup:o,getGroupOrLocalRef:l}=F(H),{iconPosition:r,icon:i,label:a,selected:d}=e.toRefs(t),c=l("modelValue",t),p=l("disabled",t),u=l("toggle",t),s=l("modifiers",t);return{modelValue:c,disabled:p,toggle:u,isInGroup:o,group:n,modifiers:s,selected:d,iconPosition:r,icon:i,label:a}}const te={key:1,class:"vv-button__label"},oe={key:1,class:"vv-button__label"},ne=e.defineComponent({__name:"VvButton",props:Q,setup(t){const n=t,o=e.useAttrs(),l=e.useSlots(),r=(o==null?void 0:o.name)||j.v4(),{modifiers:i,iconPosition:a,icon:d,label:c,modelValue:p,disabled:u,toggle:s,isInGroup:m}=ee(n),f=e.computed(()=>{switch(!0){case u.value:return N.button;case n.to!==void 0:return N.routerLink;case n.href!==void 0:return N.a;default:return N.button}}),y=e.computed(()=>s.value?Array.isArray(p.value)?h.contains(r,p.value):h.equals(r,p.value):n.active),g=e.computed(()=>s.value?Array.isArray(p.value)?h.contains(r,p.value):h.equals(r,p.value):n.selected),{bemCssClasses:b}=_("vv-button",{modifiers:i,active:y,selected:g,disabled:u,reverse:e.computed(()=>[O.right,O.bottom].includes(a.value)),column:e.computed(()=>[O.top,O.bottom].includes(a.value)),iconOnly:e.computed(()=>(d==null?void 0:d.value)&&!(c!=null&&c.value)&&!l.default)}),C=e.computed(()=>({...S.value,"aria-label":n.label||o["aria-label"],"aria-disabled":u.value,role:"button",class:b.value,to:n.to})),S=e.computed(()=>{const V=f.value===N.a;let w={};return V&&(w=u.value?{href:"javascript:;"}:{target:n.target,href:n.href}),w});function A(){m.value&&(p.value=r)}return(V,w)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(f)),e.mergeProps(e.unref(C),{onClickPassive:A}),{default:e.withCtx(()=>[e.renderSlot(V.$slots,"default",{},()=>[V.loading?e.renderSlot(V.$slots,"loading",{key:0},()=>[V.loadingIcon?(e.openBlock(),e.createBlock(D,{key:0,class:"vv-button__loading-icon",name:V.loadingIcon},null,8,["name"])):e.createCommentVNode("",!0),V.loadingLabel?(e.openBlock(),e.createElementBlock("span",te,e.toDisplayString(V.loadingLabel),1)):e.createCommentVNode("",!0)]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(V.$slots,"before"),e.unref(d)?(e.openBlock(),e.createBlock(D,{key:0,class:"vv-button__icon",name:e.unref(d)},null,8,["name"])):e.createCommentVNode("",!0),e.unref(c)?(e.openBlock(),e.createElementBlock("span",oe,[e.renderSlot(V.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(c)),1)])])):e.createCommentVNode("",!0),e.renderSlot(V.$slots,"after")],64))])]),_:3},16))}}),re={...R,value:[String,Number]},se=e.defineComponent({__name:"VvBadge",props:re,setup(t){const n=t,{modifiers:o}=e.toRefs(n),{bemCssClasses:l}=_("vv-badge",{modifiers:o});return(r,i)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(l)),role:"status"},e.toDisplayString(r.value),3))}}),le={...R,...v,vertical:{type:Boolean,default:!1},compact:{type:Boolean,default:!1},toggle:{type:Boolean,default:!1},modelValue:{type:String,default:void 0}},ae=["update:modelValue"];function q(t){if(Object.keys(t).some(n=>n!=="key"&&!e.isRef(t[n])))throw Error("One or more groupState props aren't ref.");e.provide(t.key,e.computed(()=>t))}const ce=e.defineComponent({__name:"VvButtonGroup",props:le,emits:ae,setup(t,{emit:n}){const o=t,l=$.useVModel(o,"modelValue",n),{disabled:r,vertical:i,compact:a,toggle:d,modifiers:c}=e.toRefs(o),{bemCssClasses:p}=_("vv-button-group",{modifiers:c,vertical:i,compact:a}),u={key:H,modelValue:l,disabled:r,toggle:d,modifiers:c!=null&&c.value?c:e.ref([])};return q(u),(s,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(p)),role:"group"},[e.renderSlot(s.$slots,"default")],2))}}),ie={title:String,content:String,open:Boolean,iconRight:Boolean,bordered:Boolean,modifiers:[String,Array],disabled:Boolean},de=["update:open"];function ue(t,n){const{group:o,isInGroup:l,getGroupOrLocalRef:r}=F(K),{modifiers:i}=e.toRefs(t),a=r("modelValue",t,n),d=r("bordered",t),c=r("disabled",t),p=r("iconRight",t),u=r("accordion",t);return{modelValue:a,disabled:c,bordered:d,iconRight:p,isInGroup:l,group:o,accordion:u,modifiers:i}}const pe=["open"],fe=["aria-controls","aria-expanded"],me=["aria-hidden"],Z=e.defineComponent({__name:"VvAccordion",props:ie,emits:de,setup(t,{emit:n}){const o=t,l=e.useAttrs(),r=(l==null?void 0:l.name)||j.v4(),{modelValue:i,modifiers:a,bordered:d,disabled:c=e.ref(!1),iconRight:p,isInGroup:u,accordion:s}=ue(o,n),m=e.computed(()=>u.value?s.value?h.equals(r,i.value):h.contains(r,i.value):o.open),{bemCssClasses:f}=_("vv-accordion",{modifiers:a,disabled:c,markerRight:e.computed(()=>p.value),bordered:d}),y=b=>{const C=b.target;n("update:open",C.open)},g=b=>{u.value&&(s.value?i.value=m.value?null:r:i.value=m.value?h.removeFromList(r,i.value):[...i.value,r],b.preventDefault())};return(b,C)=>(e.openBlock(),e.createElementBlock("details",{class:e.normalizeClass(e.unref(f)),open:e.unref(m),onToggle:y,onClick:g},[e.createElementVNode("summary",{"aria-controls":`#${e.unref(r)}`,"aria-expanded":e.unref(m),class:"vv-collapse__summary"},[e.renderSlot(b.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(b.title),1)])],8,fe),e.createElementVNode("div",{"aria-hidden":!e.unref(m),class:"vv-collapse__content"},[e.renderSlot(b.$slots,"details",{},()=>[e.createTextVNode(e.toDisplayString(b.content),1)])],8,me)],42,pe))}}),ge={modelValue:[String,Array],iconRight:Boolean,bordered:Boolean,items:{type:Array,default:()=>[]},accordion:Boolean,modifiers:[String,Array],disabled:Boolean},ye=["update:open"],he=e.defineComponent({__name:"VvAccordionGroup",props:ge,emits:ye,setup(t,{emit:n}){const o=t,l=$.useVModel(o,"modelValue",n),{disabled:r,bordered:i,iconRight:a,accordion:d,modifiers:c,items:p}=e.toRefs(o);q({key:K,modelValue:l,disabled:r,bordered:i,iconRight:a,accordion:d});const{bemCssClasses:s}=_("vv-accordion-group",{modifiers:c,disabled:r});return(m,f)=>{var y;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(s))},[((y=o.items)==null?void 0:y.length)>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(p),g=>(e.openBlock(),e.createBlock(Z,e.mergeProps({key:g.title},{name:g.name,title:g.title,content:g.content,...o}),null,16))),128)):e.renderSlot(m.$slots,"default",{key:1})],2)}}}),be={...R,routes:Array,multiline:Boolean},ke={class:"vv-breadcrumb__list"},Ve=["content"],_e=e.defineComponent({__name:"VvBreadcrumb",props:be,setup(t){const n=t,{modifiers:o,multiline:l}=e.toRefs(n),{bemCssClasses:r}=_("vv-breadcrumb",{modifiers:o,multiline:l});return(i,a)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(r)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.routes,(d,c)=>{var p,u,s,m;return e.openBlock(),e.createElementBlock("li",{key:`${d.label}-${c}`,class:e.normalizeClass({"vv-breadcrumb__item":c<Number((p=i.routes)==null?void 0:p.length)-1,"vv-breadcrumb__item-active":c===Number((u=i.routes)==null?void 0:u.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d.to?"router-link":d.href?"a":"span"),e.mergeProps(d,{class:{"vv-breadcrumb__link":c<Number((s=i.routes)==null?void 0:s.length)-1},"aria-current":c===Number((m=i.routes)==null?void 0:m.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.label)+" ",1)]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${c+1}`},null,8,Ve)],2)}),128))])],2))}}),Ce={title:String,modifiers:[String,Array]},Be={key:0,class:"vv-card__header"},Se={key:1,class:"vv-card__content"},Ae={key:2,class:"vv-card__footer"},$e=e.defineComponent({__name:"VvCard",props:Ce,setup(t){const n=t,o=e.useAttrs(),{modifiers:l}=e.toRefs(n),{bemCssClasses:r}=_("vv-card",{modifiers:l}),i=e.computed(()=>o);return(a,d)=>(e.openBlock(),e.createElementBlock("article",e.mergeProps({class:e.unref(r)},e.unref(i)),[a.$slots.header||a.title?(e.openBlock(),e.createElementBlock("header",Be,[e.renderSlot(a.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(a.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(a.$slots,"default"),a.$slots.content?(e.openBlock(),e.createElementBlock("div",Se,[e.renderSlot(a.$slots,"content")])):e.createCommentVNode("",!0),a.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Ae,[e.renderSlot(a.$slots,"footer")])):e.createCommentVNode("",!0)],16))}}),Ee={...z,...T,value:null,modelValue:null,binary:Boolean,trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},switch:Boolean,label:String,disabled:Boolean,readonly:Boolean},Oe=["click","update:modelValue","change","focus","blur"];function Ne(t,n){const{group:o,isInGroup:l,getGroupOrLocalRef:r}=F(U),{valid:i,error:a,switch:d}=e.toRefs(t),c=r("modelValue",t,n),p=r("readonly",t),u=r("disabled",t);return{group:o,isInGroup:l,valid:i,error:a,propsSwitch:d,modelValue:c,readonly:p,disabled:u}}function Pe(t,n){const{focused:o}=$.useFocus(t);return e.watch(o,l=>{n(l?"focus":"blur",t.value)}),{focused:o}}const Re={inheritAttrs:!1},W=e.defineComponent({...Re,__name:"VvCheck",props:Ee,emits:Oe,setup(t,{emit:n}){const o=t,l=e.useAttrs(),{disabled:r,readonly:i,valid:a,error:d,propsSwitch:c,modelValue:p}=Ne(o,n),u=e.ref(),{focused:s}=Pe(u,n),m=e.computed(()=>o.binary?h.equals(p.value,o.trueValue):Array.isArray(p.value)?h.contains(o.value,p.value):h.equals(o.value,p.value)),{bemCssClasses:f}=_("vv-input-checkbox",{switch:c,valid:a,invalid:d}),{bemCssClasses:y}=_("vv-input-check__input",{checked:m,disabled:r,readonly:i}),g=e.computed(()=>({[l.class]:!0,...f.value})),b=e.computed(()=>({...y.value,"focus-visible":s.value})),C=e.computed(()=>{const{id:B,name:E,style:L}=l,Qe=h.pickBy(l,Ye=>Ye.startsWith("data-"));return{for:B||E,style:L,...Qe}}),S=e.computed(()=>{const{id:B="",name:E=""}=l;return{type:"checkbox",id:B||E,name:E,value:o.value,disabled:r.value,readonly:i.value,checked:m.value,...A.value}}),A=e.computed(()=>{const{name:B}=l,E=h.pickBy(l,L=>L.startsWith("aria-"));return{"aria-label":B,"aria-checked":m.value,...E}});function V(){if(o.binary){p.value=m.value?o.falseValue:o.trueValue;return}if(p.value===null){p.value=[o.value];return}if(Array.isArray(p.value)){p.value=m.value?h.removeFromList(o.value,p.value):[...p.value,o.value];return}}function w(B){r.value||(n("click",B),n("change",m.value?o.value:null),s.value=!0)}return(B,E)=>(e.openBlock(),e.createElementBlock("label",e.mergeProps({class:e.unref(g)},e.unref(C),{onClick:w}),[e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:u,class:e.unref(b)},e.unref(S),{onInput:V}),null,16),e.renderSlot(B.$slots,"default",{value:e.unref(p)},()=>[e.createTextVNode(e.toDisplayString(B.label),1)])],16))}}),we={...z,...T,...J,...X,modelValue:{type:Array},label:{type:String,default:""},name:{type:String,default:"",required:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1}},De=["update:modelValue","change"];function Ge(t){const{options:n,optionLabel:o,optionValue:l}=e.toRefs(t);return{options:n,getOptionLabel:a=>typeof a!="object"&&a!==null?a:typeof o.value=="function"?o.value(a):a[o.value],getOptionValue:a=>typeof a!="object"&&a!==null?a:typeof l.value=="function"?l.value(a):a[l.value]}}function G(t){return Array.isArray(t)?t.filter(n=>h.isString(n)).reduce((n,o)=>n.length>0?n+`
|
|
2
|
-
`+o:o,""):t}function Ie(t,n){return{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(o){const l=e.toRefs(t),{error:r,valid:i,hint:a,loading:d}=n,{hintLabel:c,modelValue:p,valid:u,validLabel:s,error:m,errorLabel:f}=l,y=h.resolveFieldData(l,"loading"),g=h.resolveFieldData(l,"loadingLabel"),b=e.computed(()=>m.value?!!(m.value&&r||(f==null?void 0:f.value)&&Array.isArray(f.value)&&f.value.length>0||(f==null?void 0:f.value)&&h.isNotEmpty(f.value)):!1),C=e.computed(()=>!!(c&&c.value||a||i||s&&s.value||b.value||(y==null?void 0:y.value)&&d||(y==null?void 0:y.value)&&(g==null?void 0:g.value))),S=e.computed(()=>{const A=$.toReactive({hintLabel:c,modelValue:p,valid:u,validLabel:s,error:m,errorLabel:f,loading:y,loadingLabel:g,...o.params});return m!=null&&m.value?(r==null?void 0:r(A))||G(f==null?void 0:f.value)||(c==null?void 0:c.value):u!=null&&u.value?(i==null?void 0:i(A))||G(s==null?void 0:s.value)||(c==null?void 0:c.value):y!=null&&y.value?(d==null?void 0:d(A))||G(g==null?void 0:g.value)||(c==null?void 0:c.value):(a==null?void 0:a(A))||G(c==null?void 0:c.value)||(c==null?void 0:c.value)});return{hasHint:C,hintContent:S}},render(){if(this.hasHint)return e.h("pre",{style:{"white-space":"pre"}},this.hintContent)}}}const je=["textContent"],ve={class:"vv-input-checkbox-group__wrapper"},Fe=e.defineComponent({__name:"VvCheckGroup",props:we,emits:De,setup(t,{emit:n}){const o=t,l=e.useSlots(),r=$.useVModel(o,"modelValue",n),{disabled:i,readonly:a,error:d,valid:c}=e.toRefs(o);q({key:U,modelValue:r,disabled:i,readonly:a});const{getOptionLabel:u,getOptionValue:s}=Ge(o),{bemCssClasses:m}=_("vv-input-checkbox-group",{horizontal:e.computed(()=>!o.vertical),valid:c,invalid:d}),f=(g,b)=>({id:`${o.name}_opt${b}`,name:o.name,label:u(g),value:s(g)}),y=Ie(o,l);return(g,b)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(m))},[g.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(g.label)},null,8,je)):e.createCommentVNode("",!0),e.createElementVNode("div",ve,[g.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(g.options,(C,S)=>(e.openBlock(),e.createBlock(W,e.mergeProps({key:S},f(C,S)),null,16))),128)):e.renderSlot(g.$slots,"default",{key:1})]),e.createVNode(e.unref(y),{class:"vv-input-checkbox-group__hint"})],2))}}),I={normal:"",small:"small",fullscreen:"fullscreen"},qe=["open","close","update:open"],Le={id:{type:String,required:!0},title:String,open:Boolean,transition:{type:String,default:"fade-block"},size:{type:String,default:I.normal,validator:t=>Object.values(I).includes(t)},autoClose:{type:Boolean,default:!0}},ze={key:0,class:"vv-dialog__header"},Te=["onClick"],Me={class:"vv-dialog__content"},He={key:1,class:"vv-dialog__footer"},Ue=e.defineComponent({__name:"VvDialog",props:Le,emits:qe,setup(t,{emit:n}){const o=t,l=$.useVModel(o,"open",n),r=e.ref(!0),i=e.ref(null),a=e.computed(()=>{const{id:s}=o;return{id:s,open:r.value}}),d=e.computed(()=>({"vv-dialog":!0,"vv-dialog--small":o.size===I.small,"vv-dialog--fullscreen":o.size===I.fullscreen})),c=e.computed(()=>`vv-dialog--${o.transition}`),p={"after-enter":()=>{r.value=!0,n("open")},"after-leave":()=>{r.value=!1,n("close")}};$.onClickOutside(i,()=>{o.autoClose&&(l.value=!1)});function u(){l.value=!1}return(s,m)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(c)},e.toHandlers(p)),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("dialog",e.mergeProps(e.unref(a),{class:e.unref(d)}),[e.createElementVNode("article",{ref_key:"modalWrapper",ref:i,class:"vv-dialog__wrapper"},[s.$slots.header||s.title?(e.openBlock(),e.createElementBlock("header",ze,[e.renderSlot(s.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(s.title)+" ",1),e.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClick:e.withModifiers(u,["prevent"])},[e.createVNode(D,{name:"close"})],8,Te)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Me,[e.renderSlot(s.$slots,"default")]),s.$slots.footer?(e.openBlock(),e.createElementBlock("footer",He,[e.renderSlot(s.$slots,"footer")])):e.createCommentVNode("",!0)],512)],16),[[e.vShow,e.unref(l)]])]),_:3},16,["name"]))}}),Ke={...v,...R,modelValue:[String,Array,Object],labelNoResult:{type:String,default:"No results"},options:{type:Array,required:!0},useObject:Boolean,multiple:Boolean,maxValues:[Number,String],labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"}},Ze={key:0},We=["for"],Je=["id","type","value","checked","disabled"],Xe=e.defineComponent({__name:"VvDropdown",props:Ke,emits:["update:modelValue"],setup(t,{emit:n}){const o=t,l=j.v4(),{modifiers:r,disabled:i}=e.toRefs(o),{bemCssClasses:a}=_("vv-dropdown",{modifiers:r,disabled:i});function d(s){return Array.isArray(o.modelValue)?h.contains(s,o.modelValue)||h.contains(c(s),o.modelValue):h.equals(s,o.modelValue)||h.equals(c(s),o.modelValue)}function c(s){return typeof s=="string"?s:String(s[o.valueKey])}function p(s){return typeof s=="string"?s:s[o.labelKey]}function u(s){var g,b;const m=s.target;let f=m.value;if(f=(o.useObject?(g=o.options)==null?void 0:g.find(C=>C[o.valueKey]==f):null)||f,o.multiple){if(typeof o.maxValues<"u"&&o.maxValues>=0&&((b=o.modelValue)==null?void 0:b.length)>=o.maxValues&&(Array.isArray(o.modelValue)&&!h.contains(f,o.modelValue)||o.maxValues==0)){m.checked=!1;return}Array.isArray(o.modelValue)?f=h.contains(f,o.modelValue)?h.removeFromList(f,o.modelValue):[...o.modelValue,f]:f=[f]}n("update:modelValue",f)}return(s,m)=>{var f;return e.openBlock(),e.createElementBlock("ul",{class:e.normalizeClass(e.unref(a)),role:"listbox"},[(f=s.options)!=null&&f.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Ze,[e.createElementVNode("label",null,e.toDisplayString(s.labelNoResult),1)])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.options,(y,g)=>{var b;return e.openBlock(),e.createElementBlock("li",{key:g},[e.createElementVNode("label",{for:`dropdown-${g}-${e.unref(l)}`},[e.createElementVNode("input",{id:`dropdown-${g}-${e.unref(l)}`,type:s.multiple?"checkbox":"radio",value:c(y),checked:d(y),disabled:typeof y=="object"&&(b=y.disabled)!=null?b:e.unref(i),onInput:u},null,40,Je),e.createTextVNode(" "+e.toDisplayString(p(y)),1)],8,We)])}),128))],2)}}});k.VvAccordion=Z,k.VvAccordionGroup=he,k.VvBadge=se,k.VvBreadcrumb=_e,k.VvButton=ne,k.VvButtonGroup=ce,k.VvCard=$e,k.VvCheck=W,k.VvCheckGroup=Fe,k.VvDialog=Ue,k.VvDropdown=Xe,k.VvIcon=D,Object.defineProperties(k,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(C,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@vueuse/core"),require("nanoid"),require("@iconify/vue")):typeof define=="function"&&define.amd?define(["exports","vue","@vueuse/core","nanoid","@iconify/vue"],e):(C=typeof globalThis<"u"?globalThis:C||self,e(C.components={},C.vue,C.core,C.nanoid,C.vue$1))})(this,function(C,e,D,v,W){"use strict";function M(n,o,t){return t?ee(n,t)===ee(o,t):ae(n,o)}function ae(n,o){if(n===o)return!0;if(n&&o&&typeof n=="object"&&typeof o=="object"){const t=Array.isArray(n),r=Array.isArray(o);let l,s,a;if(t&&r){if(s=n.length,s!=o.length)return!1;for(l=s;l--!==0;)if(!ae(n[l],o[l]))return!1;return!0}if(t!=r)return!1;const f=n instanceof Date,u=o instanceof Date;if(f!=u)return!1;if(f&&u)return n.getTime()==o.getTime();const p=n instanceof RegExp,i=o instanceof RegExp;if(p!=i)return!1;if(p&&i)return n.toString()==o.toString();const c=Object.keys(n);if(s=c.length,s!==Object.keys(o).length)return!1;for(l=s;l--!==0;)if(!Object.prototype.hasOwnProperty.call(o,c[l]))return!1;for(l=s;l--!==0;)if(a=c[l],!ae(n[a],o[a]))return!1;return!0}return n!==n&&o!==o}function ee(n,o){if(n&&Object.keys(n).length&&o){if(o.indexOf(".")===-1)return n[o];{const t=o.split(".");let r=n;for(let l=0,s=t.length;l<s;++l){if(n==null)return null;r=r[t[l]]}return r}}else return null}function Me(n,o){let t=-1;if(o){for(let r=0;r<o.length;r++)if(M(o[r],n)){t=r;break}}return t}function Y(n,o){if(n!=null&&o&&o.length){for(const t of o)if(M(n,t))return!0}return!1}function I(n){return(o=>o==null||o===""||Array.isArray(o)&&o.length===0||!(o instanceof Date)&&typeof o=="object"&&Object.keys(o).length===0)(e.unref(n))}function se(n,o){const t=Me(n,o);return t>-1?o.filter((r,l)=>l!==t):o}function ze(n){return typeof n=="string"||n instanceof String}function Ue(n,o,t){return n.filter(r=>o.some(l=>typeof l=="string"?r[t]==l:M(r[t],l[t])))}function me(n){var o,t;if(n)return(t=(o=n.match(/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g))==null?void 0:o.join("-"))==null?void 0:t.toLowerCase()}function A(n,o){const t={[`${n}`]:!0};return{bemCssClasses:e.computed(()=>Object.keys(o).reduce((l,s)=>{const a=e.unref(o[s])||!1;if(!a)return l;if(s==="modifiers"){const f=Array.isArray(a)?a:a.split(" ");return{...l,...f.reduce((u,p)=>({...u,[`${n}--${me(p)}`]:!0}),{})}}else return{...l,[`${n}--${me(s)}`]:a}},t)||{})}}function te(n){const o=e.inject(n,void 0),t=e.computed(()=>!I(o));function r(l,s,a){if(o!=null&&o.value){const u=e.unref(o.value)[l];return e.computed({get(){return u==null?void 0:u.value},set(p){u.value=p}})}const f=e.toRef(s,l);return e.computed({get(){return f.value},set(u){a&&a(`update:${l}`,u)}})}return{group:o,isInGroup:t,getGroupOrLocalRef:r}}const ge="VV_BUTTON_GROUP",be="VV_RADIO_GROUP",ye="VV_CHECK_GROUP",he="VV_ACCORDION_GROUP",qe={name:String,title:String,content:String,modelValue:{type:Boolean,default:void 0},modifiers:[String,Array],disabled:Boolean},Fe=["update:modelValue"];function Ke(n,o){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=te(he),{modifiers:s,title:a,content:f}=e.toRefs(n),u=l("modelValue",n,o),p=l("disabled",n),i=l("collapse",n);return{modelValue:u,disabled:p,isInGroup:r,group:t,collapse:i,modifiers:s,title:a,content:f}}const ve=["id","open"],Ye=["aria-controls","aria-expanded"],We=["aria-hidden"],Xe={name:"VvAccordion"},Se=e.defineComponent({...Xe,props:qe,emits:Fe,setup(n,{emit:o}){const t=n,r=e.useAttrs(),l=t.name||(r==null?void 0:r.id)||v.nanoid(),{modifiers:s,title:a,content:f,disabled:u,collapse:p,modelValue:i,isInGroup:c}=Ke(t,o),d=e.ref(!1),m=e.computed({get:()=>c.value?p.value&&Array.isArray(i.value)?i.value.includes(l):i.value===l:i.value===void 0?d.value:i.value,set:y=>{if(c.value){if(p.value&&Array.isArray(i.value)){if(y){i.value.push(l);return}i.value=i.value.filter(_=>_!==l);return}i.value=y?l:null;return}if(i.value===void 0&&typeof y=="boolean"){d.value=y;return}i.value=y}}),{bemCssClasses:g}=A("vv-accordion",{modifiers:s,disabled:u}),b=D.useToggle(m);return(y,_)=>(e.openBlock(),e.createElementBlock("details",{id:e.unref(l),class:e.normalizeClass(e.unref(g)),open:e.unref(m),onClick:_[0]||(_[0]=e.withModifiers(B=>e.unref(b)(),["prevent"]))},[e.createElementVNode("summary",{"aria-controls":e.unref(l),"aria-expanded":e.unref(m),class:"vv-collapse__summary"},[e.renderSlot(y.$slots,"header",e.normalizeProps(e.guardReactiveProps({open:e.unref(m)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(a)),1)])],8,Ye),e.createElementVNode("div",{"aria-hidden":!e.unref(m),class:"vv-collapse__content"},[e.renderSlot(y.$slots,"details",e.normalizeProps(e.guardReactiveProps({open:e.unref(m)})),()=>[e.createTextVNode(e.toDisplayString(e.unref(f)),1)])],8,We)],10,ve))}});function oe(n){if(Object.keys(n).some(o=>o!=="key"&&!e.isRef(n[o])))throw Error("One or more groupState props aren't ref.");e.provide(n.key,e.computed(()=>n))}const Ze={modelValue:[String,Array],items:{type:Array,default:()=>[]},collapse:Boolean,modifiers:[String,Array],disabled:Boolean},Je=["update:modelValue"],Qe={name:"VvAccordionGroup"},et=e.defineComponent({...Qe,props:Ze,emits:Je,setup(n,{emit:o}){const t=n,{disabled:r,collapse:l,modifiers:s,items:a}=e.toRefs(t),f=e.computed(()=>l.value&&(t.modelValue===void 0||Array.isArray(t.modelValue)));e.watchEffect(()=>{typeof t.modelValue=="string"&&l.value&&console.warn("[VvAccordionGroup]: modelValue is a string but collapse is true.")});const u=e.ref([]),p=e.computed({get:()=>{var d;return t.modelValue!==void 0?f.value?t.modelValue:Array.isArray(t.modelValue)?t.modelValue[0]:t.modelValue:f.value?u.value:(d=u.value)==null?void 0:d[0]},set:d=>{if(t.modelValue!==void 0)return o("update:modelValue",d);u.value=Array.isArray(d)?d:[d]}});oe({key:he,modelValue:p,disabled:r,collapse:f});const{bemCssClasses:c}=A("vv-accordion-group",{modifiers:s,disabled:r});return(d,m)=>{var g;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(c))},[((g=t.items)==null?void 0:g.length)>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(e.unref(a),b=>(e.openBlock(),e.createBlock(Se,e.mergeProps({key:b.title},{name:b.name,title:b.title,content:b.content,disabled:b.disabled,modifiers:e.unref(s)}),{header:e.withCtx(y=>[e.renderSlot(d.$slots,`header::${b.name}`,e.normalizeProps(e.guardReactiveProps(y)))]),details:e.withCtx(y=>[e.renderSlot(d.$slots,`details::${b.name}`,e.normalizeProps(e.guardReactiveProps(y)))]),_:2},1040))),128)):e.renderSlot(d.$slots,"default",{key:1})],2)}}}),z={valid:Boolean,validLabel:[String,Array]},U={error:Boolean,errorLabel:[String,Array]},ne={loading:Boolean,loadingLabel:String},Q={disabled:Boolean},Ve={readonly:Boolean},L={modifiers:[String,Array]},q={hintLabel:{type:String,default:""}},_e={options:{type:Array,default:()=>[]},optionLabel:{type:[String,Function],default:()=>"label"},optionValue:{type:[String,Function],default:()=>"value"}},ke={limit:{type:[Boolean,String],default:!1,validator:n=>[!0,!1,"countdown"].includes(n)}},Ce={id:[String,Number],name:{type:String,required:!0},autocomplete:{type:String,default:"off"},autofocus:Boolean,minlength:Number,maxlength:Number,label:String,placeholder:String,required:Boolean,disabled:Boolean,readonly:Boolean},tt={debounce:Number},ot={...L,value:[String,Number]},nt={name:"VvBadge"},rt=e.defineComponent({...nt,props:ot,setup(n){const o=n,{bemCssClasses:t}=A("vv-badge",{modifiers:o.modifiers});return(r,l)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(e.unref(t)),role:"status"},[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(r.value),1)])],2))}}),lt={...L,routes:Array,multiline:Boolean},at={class:"vv-breadcrumb__list"},st=["content"],it={name:"VvBreadcrumb"},ct=e.defineComponent({...it,props:lt,setup(n){const o=n,{bemCssClasses:t}=A("vv-breadcrumb",{modifiers:o.modifiers,multiline:o.multiline});return(r,l)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(e.unref(t)),"aria-label":"breadcrumbs"},[e.createElementVNode("ol",at,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.routes,(s,a)=>{var f,u,p,i;return e.openBlock(),e.createElementBlock("li",{key:`${s.label}-${a}`,class:e.normalizeClass({"vv-breadcrumb__item":a<Number((f=r.routes)==null?void 0:f.length)-1,"vv-breadcrumb__item-active":a===Number((u=r.routes)==null?void 0:u.length)-1}),itemprop:"itemListElement",itemtype:"https://schema.org/ListItem",itemscope:""},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.to?"router-link":s.href?"a":"span"),e.mergeProps(s,{class:{"vv-breadcrumb__link":a<Number((p=r.routes)==null?void 0:p.length)-1},"aria-current":a===Number((i=r.routes)==null?void 0:i.length)-1?"page":void 0,itemprop:"item"}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.label),1)]),_:2},1040,["class","aria-current"])),e.createElementVNode("meta",{itemprop:"position",content:`${a+1}`},null,8,st)],2)}),128))])],2))}}),Be="ds",dt={color:String,width:{type:[String,Number]},height:{type:[String,Number]},name:{type:String,required:!0},provider:{type:String},prefix:{type:String,default:"normal"},src:String,horizontalFlip:Boolean,verticalFlip:Boolean,flip:String,mode:String,inline:Boolean,rotate:[Number,String],onLoad:Function,svg:String,modifiers:{type:[String,Array]}},ut={name:"VvIcon"},w=e.defineComponent({...ut,props:dt,setup(n){const o=n,t=e.ref(!0),{modifiers:r}=e.toRefs(o),l=e.inject(Be),{bemCssClasses:s}=A("vv-icon",{modifiers:r}),a=e.computed(()=>o.provider||(l==null?void 0:l.provider)),f=e.computed(()=>{const i=o.name||"",c=`@${a.value}:${o.prefix}:${o.name}`;return W.iconExists(i)?i:W.iconExists(c)?c:(l==null?void 0:l.iconsCollections.find(d=>{const m=`@${a.value}:${d.prefix}:${i}`;if(W.iconExists(m))return m}))||i});function u(i){let c=null;if(typeof window>"u"){const{JSDOM:b}=require("jsdom");c=new b().window}return(c?new c.DOMParser:new window.DOMParser).parseFromString(i,"text/html").querySelector("svg")}function p(i){const c=u(i),d=(c==null?void 0:c.innerHTML.trim())||"";c&&d&&W.addIcon(`@${a.value}:${o.prefix}:${o.name}`,{body:d,height:c.viewBox.baseVal.height,width:c.viewBox.baseVal.width})}return l&&(o.src&&!W.iconExists(`@${a.value}:${o.prefix}:${o.name}`)?(t.value=!1,l.fetchIcon(o.src).then(i=>{i&&(p(i),t.value=!0)}).catch(i=>{throw new Error(`During fetch icon: ${i==null?void 0:i.message}`)})):o.svg&&p(o.svg)),(i,c)=>t.value?(e.openBlock(),e.createBlock(e.unref(W.Icon),e.mergeProps({key:0,class:e.unref(s)},{...i.$props,provider:e.unref(a),icon:e.unref(f)}),null,16,["class"])):e.createCommentVNode("",!0)}});var X=(n=>(n.left="left",n.right="right",n.top="top",n.bottom="bottom",n))(X||{}),Ee=(n=>(n.button="button",n.submit="submit",n.reset="reset",n))(Ee||{}),G=(n=>(n.nuxtLink="nuxt-link",n.routerLink="router-link",n.a="a",n.button="button",n))(G||{}),$e=(n=>(n._blank="_blank",n._self="_self",n._parent="_parent",n._top="_top",n))($e||{});const pt={...L,...Q,icon:{type:[String,Object],default:""},iconPosition:{type:String,default:"left",validator:n=>n in X},label:[String,Number],loading:Boolean,loadingIcon:{type:String,default:"eos-icons:bubble-loading"},loadingLabel:{type:String,default:"Loading..."},to:{type:[String,Object]},href:String,target:{type:String,validator:n=>n in $e},active:Boolean,pressed:Boolean,rel:{type:String,default:"noopener noreferrer"},type:{type:String,default:"button",validator:n=>n in Ee}};function ft(n){const{group:o,isInGroup:t,getGroupOrLocalRef:r}=te(ge),{iconPosition:l,icon:s,label:a,pressed:f}=e.toRefs(n),u=r("modelValue",n),p=r("disabled",n),i=r("toggle",n),c=r("modifiers",n);return{modelValue:u,disabled:p,toggle:i,isInGroup:t,group:o,modifiers:c,pressed:f,iconPosition:l,icon:s,label:a}}const mt={key:1,class:"vv-button__label"},gt={key:1,class:"vv-button__label"},bt={name:"VvButton"},yt=e.defineComponent({...bt,props:pt,setup(n){const o=n,t=e.useAttrs(),r=e.useSlots(),l=(t==null?void 0:t.name)||v.nanoid(),{modifiers:s,iconPosition:a,icon:f,label:u,modelValue:p,disabled:i,toggle:c,isInGroup:d}=ft(o),m=e.inject(Be),g=e.computed(()=>{switch(!0){case i.value:return G.button;case o.to!==void 0:return m!=null&&m.nuxt?G.nuxtLink:G.routerLink;case o.href!==void 0:return G.a;default:return G.button}}),b=e.computed(()=>c.value?Array.isArray(p.value)?Y(l,p.value):M(l,p.value):o.pressed),{bemCssClasses:y}=A("vv-button",{modifiers:s,active:o.active,pressed:b,disabled:i,reverse:e.computed(()=>[X.right,X.bottom].includes(a.value)),column:e.computed(()=>[X.top,X.bottom].includes(a.value)),iconOnly:e.computed(()=>(f==null?void 0:f.value)&&!(u!=null&&u.value)&&!r.default)}),_=e.computed(()=>typeof(f==null?void 0:f.value)=="string"?{name:f==null?void 0:f.value}:f==null?void 0:f.value),B=e.computed(()=>{const k={class:y.value,"aria-label":t["aria-label"],"aria-pressed":b.value?!0:void 0};switch(g.value){case G.a:return{...k,role:"button",href:o.href,target:o.target,rel:o.rel};case G.routerLink:case G.nuxtLink:return{...k,role:"button",to:o.to,target:o.target};default:return{...k,type:o.type,disabled:i.value}}});function E(){d.value&&(p.value=l)}return(k,N)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),e.mergeProps(e.unref(B),{onClickPassive:E}),{default:e.withCtx(()=>[e.renderSlot(k.$slots,"default",{},()=>[k.loading?e.renderSlot(k.$slots,"loading",{key:0},()=>[k.loadingIcon?(e.openBlock(),e.createBlock(w,{key:0,class:"vv-button__loading-icon",name:k.loadingIcon},null,8,["name"])):e.createCommentVNode("",!0),k.loadingLabel?(e.openBlock(),e.createElementBlock("span",mt,e.toDisplayString(k.loadingLabel),1)):e.createCommentVNode("",!0)]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(k.$slots,"before"),e.unref(f)?(e.openBlock(),e.createBlock(w,e.mergeProps({key:0,class:"vv-button__icon"},e.unref(_)),null,16)):e.createCommentVNode("",!0),e.unref(u)?(e.openBlock(),e.createElementBlock("span",gt,[e.renderSlot(k.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(u)),1)])])):e.createCommentVNode("",!0),e.renderSlot(k.$slots,"after")],64))])]),_:3},16))}}),ht={...L,...Q,vertical:{type:Boolean,default:!1},compact:{type:Boolean,default:!1},toggle:{type:Boolean,default:!1},modelValue:{type:String,default:void 0}},St=["update:modelValue"],Vt={name:"VvButtonGroup"},_t=e.defineComponent({...Vt,props:ht,emits:St,setup(n,{emit:o}){const t=n,r=D.useVModel(t,"modelValue",o),{disabled:l,vertical:s,compact:a,toggle:f,modifiers:u}=e.toRefs(t),{bemCssClasses:p}=A("vv-button-group",{modifiers:u,vertical:s,compact:a}),i={key:ge,modelValue:r,disabled:l,toggle:f,modifiers:u!=null&&u.value?u:e.ref([])};return oe(i),(c,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(p)),role:"group"},[e.renderSlot(c.$slots,"default")],2))}}),kt={title:String,modifiers:[String,Array]},Ct={key:0,class:"vv-card__header"},Bt={key:1,class:"vv-card__content"},Et={key:2,class:"vv-card__footer"},$t={name:"VvCard"},Nt=e.defineComponent({...$t,props:kt,setup(n){const o=n,{bemCssClasses:t}=A("vv-card",{modifiers:o.modifiers});return(r,l)=>(e.openBlock(),e.createElementBlock("article",{class:e.normalizeClass(e.unref(t))},[r.$slots.header||r.title?(e.openBlock(),e.createElementBlock("header",Ct,[e.renderSlot(r.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(r.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(r.$slots,"default"),r.$slots.content?(e.openBlock(),e.createElementBlock("div",Bt,[e.renderSlot(r.$slots,"content")])):e.createCommentVNode("",!0),r.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Et,[e.renderSlot(r.$slots,"footer")])):e.createCommentVNode("",!0)],2))}}),Pt={...z,...U,...q,id:[String,Number],name:{type:String,required:!0},value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String],label:String,disabled:Boolean,readonly:Boolean,trueValue:{type:[String,Number,Boolean],default:void 0},falseValue:{type:[String,Number,Boolean],default:void 0},switch:Boolean,tabindex:{type:[String,Number],default:0}},At=["click","update:modelValue","change","blur"];function wt(n,o){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=te(ye),{valid:s,error:a,switch:f}=e.toRefs(n),u=l("modelValue",n,o),p=l("readonly",n),i=l("disabled",n);return{valid:s,error:a,propsSwitch:f,group:t,isInGroup:r,modelValue:u,readonly:p,disabled:i}}function re(n){return Array.isArray(n)?n.filter(o=>ze(o)).join(" "):n}function F(n,o){const{error:t,valid:r,hint:l,loading:s}=o,{hintLabel:a,modelValue:f,valid:u,validLabel:p,error:i,errorLabel:c,...d}=e.toRefs(n),m=ee(d,"loading"),g=ee(d,"loadingLabel"),b=e.computed(()=>i.value?!!(i.value&&t||c!=null&&c.value&&Array.isArray(c.value)&&c.value.length>0||c!=null&&c.value&&!I(c)):!1),y=e.computed(()=>!!(a&&a.value||l)),_=e.computed(()=>!!(p&&p.value||r)),B=e.computed(()=>!!(m!=null&&m.value&&s||m!=null&&m.value&&(g!=null&&g.value))),E=e.computed(()=>y.value||_||b.value||B.value);return{hasErrors:b,hasHint:y,hasValid:_,hasLoading:B,HintSlot:{name:"HintSlot",props:{params:{type:Object,default:()=>({})}},setup(k){const N=e.computed(()=>{const O=D.toReactive({hintLabel:a,modelValue:f,valid:u,validLabel:p,error:i,errorLabel:c,loading:m,loadingLabel:g,...k.params});return i!=null&&i.value?(t==null?void 0:t(O))||re(c==null?void 0:c.value)||(a==null?void 0:a.value):u!=null&&u.value?(r==null?void 0:r(O))||re(p==null?void 0:p.value)||(a==null?void 0:a.value):m!=null&&m.value?(s==null?void 0:s(O))||re(g==null?void 0:g.value)||(a==null?void 0:a.value):(l==null?void 0:l(O))||re(a==null?void 0:a.value)||(a==null?void 0:a.value)});return{isVisible:E,hasErrors:b,hasValid:_,hintContent:N}},render(){if(this.isVisible)return e.h("small",{role:this.hasErrors||this.hasValid?"alert":void 0},this.hintContent)}}}}const Ot=["for"],Dt=["id","name","disabled","value","tabindex","aria-invalid"],Rt={name:"VvCheckbox"},Ne=e.defineComponent({...Rt,props:Pt,emits:At,setup(n,{emit:o}){const t=n,r=e.useSlots(),{disabled:l,readonly:s,valid:a,error:f,propsSwitch:u,modelValue:p}=wt(t,o),i=e.ref(),c=e.computed(()=>t.id!==void 0?String(t.id):void 0),d=e.computed(()=>t.trueValue!==void 0&&t.falseValue!==void 0),m=e.computed(()=>l.value||s.value),g=e.computed(()=>m.value?-1:t.tabindex),b=e.computed(()=>{if(t.error===!0)return!0;if(t.valid===!0)return!1}),y=e.computed(()=>d.value?p.value===t.trueValue:Array.isArray(p.value)?Y(t.value,p.value):M(t.value,p.value)),_=e.computed(()=>{if(!d.value)return["string","number","boolean"].includes(typeof t.value)?t.value:!0}),B=e.computed({get(){return y.value},set(N){if(d.value){p.value=N?t.trueValue:t.falseValue;return}if(Array.isArray(p.value)){p.value=N?[...p.value,t.value]:se(t.value,p.value);return}p.value=N?t.value:null,o("change",N)}}),{bemCssClasses:E}=A("vv-checkbox",{switch:u,valid:a,invalid:f,disabled:l,readonly:s});e.watchEffect(()=>{d.value&&Array.isArray(p.value)&&console.warn("[VvCheckbox] The model value is an array but the component is in binary mode.")});const{HintSlot:k}=F(t,r);return(N,O)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(E)),for:e.unref(c)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(c),ref_key:"input",ref:i,"onUpdate:modelValue":O[0]||(O[0]=x=>e.isRef(B)?B.value=x:null),type:"checkbox",class:"vv-checkbox__input",name:N.name,disabled:e.unref(m),value:e.unref(_),tabindex:e.unref(g),"aria-invalid":e.unref(b)},null,8,Dt),[[e.vModelCheckbox,e.unref(B)]]),e.renderSlot(N.$slots,"default",{value:e.unref(p)},()=>[e.createTextVNode(e.toDisplayString(N.label),1)]),e.createVNode(e.unref(k),{class:"vv-checkbox__hint",params:{value:e.unref(p)}},null,8,["params"])],10,Ot))}});function Pe(n){const{options:o,optionLabel:t,optionValue:r}=e.toRefs(n);return{options:o,getOptionLabel:a=>typeof a!="object"&&a!==null?a:typeof t.value=="function"?t.value(a):a[t.value],getOptionValue:a=>typeof a!="object"&&a!==null?a:typeof r.value=="function"?r.value(a):a[r.value]}}const Tt={...z,...U,...q,..._e,modelValue:{type:Array},label:{type:String,default:""},name:{type:String,default:"",required:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1}},It=["update:modelValue","change"],Lt=["textContent"],xt={class:"vv-checkbox-group__wrapper"},Ht={name:"VvCheckboxGroup"},Gt=e.defineComponent({...Ht,props:Tt,emits:It,setup(n,{emit:o}){const t=n,r=e.useSlots(),l=D.useVModel(t,"modelValue",o),{disabled:s,readonly:a,error:f,valid:u}=e.toRefs(t);oe({key:ye,modelValue:l,disabled:s,readonly:a});const{getOptionLabel:i,getOptionValue:c}=Pe(t),{bemCssClasses:d}=A("vv-checkbox-group",{horizontal:e.computed(()=>!t.vertical),valid:u,invalid:f}),m=(b,y)=>({id:`${t.name}_opt${y}`,name:t.name,label:i(b),value:c(b)}),{HintSlot:g}=F(t,r);return(b,y)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(d))},[b.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(b.label)},null,8,Lt)):e.createCommentVNode("",!0),e.createElementVNode("div",xt,[b.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(b.options,(_,B)=>(e.openBlock(),e.createBlock(Ne,e.mergeProps({key:B},m(_,B)),null,16))),128)):e.renderSlot(b.$slots,"default",{key:1})]),e.createVNode(e.unref(g),{class:"vv-checkbox-group__hint"})],2))}}),jt=["open","close","update:modelValue"],Mt={id:{type:String,required:!0},title:String,modelValue:Boolean,transition:{type:String,default:"fade-block"},size:String,autoClose:{type:Boolean,default:!0}},zt={key:0,class:"vv-dialog__header"},Ut=["onClick"],qt={class:"vv-dialog__content"},Ft={key:1,class:"vv-dialog__footer"},Kt={name:"VvDialog"},vt=e.defineComponent({...Kt,props:Mt,emits:jt,setup(n,{emit:o}){const t=n,r=D.useVModel(t,"modelValue",o),l=e.ref(!0),s=e.ref(null),a=e.computed(()=>{const{id:c}=t;return{id:c,open:l.value}}),f=e.computed(()=>t.size?["vv-dialog",`vv-dialog--${t.size}`]:"vv-dialog"),u=e.computed(()=>`vv-dialog--${t.transition}`),p={"before-enter":()=>{l.value=!0,o("open")},"after-leave":()=>{l.value=!1,o("close")}};D.onClickOutside(s,()=>{t.autoClose&&(r.value=!1)});function i(){r.value=!1}return(c,d)=>(e.openBlock(),e.createBlock(e.Transition,e.mergeProps({name:e.unref(u)},e.toHandlers(p)),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("dialog",e.mergeProps(e.unref(a),{class:e.unref(f)}),[e.createElementVNode("article",{ref_key:"modalWrapper",ref:s,class:"vv-dialog__wrapper"},[c.$slots.header||c.title?(e.openBlock(),e.createElementBlock("header",zt,[e.renderSlot(c.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(c.title)+" ",1),e.createElementVNode("button",{type:"button","aria-label":"Close",class:"vv-dialog__close",onClick:e.withModifiers(i,["prevent"])},[e.createVNode(w,{name:"close"})],8,Ut)])])):e.createCommentVNode("",!0),e.createElementVNode("div",qt,[e.renderSlot(c.$slots,"default")]),c.$slots.footer?(e.openBlock(),e.createElementBlock("footer",Ft,[e.renderSlot(c.$slots,"footer")])):e.createCommentVNode("",!0)],512)],16),[[e.vShow,e.unref(r)]])]),_:3},16,["name"]))}}),Yt={...Q,...L,modelValue:{type:[String,Number,Boolean,Object,Array],required:!0},labelNoResult:{type:String,default:"No results"},options:{type:Array,required:!0},useObject:Boolean,multiple:Boolean,maxValues:[Number,String],labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"}},Wt={key:0,role:"option"},Xt=["aria-selected"],Zt=["for"],Jt=["id","type","value","checked","disabled"],Qt={name:"VvDropdown"},Ae=e.defineComponent({...Qt,props:Yt,emits:["update:modelValue"],setup(n,{emit:o}){const t=n,r=v.nanoid(),{modifiers:l,disabled:s}=e.toRefs(t),{bemCssClasses:a}=A("vv-dropdown",{modifiers:l,disabled:s});function f(d){return Array.isArray(t.modelValue)?Y(d,t.modelValue)||Y(u(d),t.modelValue):M(d,t.modelValue)||M(u(d),t.modelValue)}function u(d){return typeof d=="string"?d:String(d[t.valueKey])}function p(d){return typeof d=="string"?d:d[t.labelKey]}function i(d){return typeof d=="string"||d.disabled===void 0?s.value:d.disabled}function c(d){var y,_;const m=d.target;let g=m.value;if(g=(t.useObject?(y=t.options)==null?void 0:y.find(B=>B[t.valueKey]==g):null)||g,t.multiple){if(typeof t.maxValues<"u"&&t.maxValues>=0&&Array.isArray(t.modelValue)&&((_=t.modelValue)==null?void 0:_.length)>=t.maxValues&&(Array.isArray(t.modelValue)&&!Y(g,t.modelValue)||t.maxValues==0)){m.checked=!1;return}Array.isArray(t.modelValue)?g=Y(g,t.modelValue)?se(g,t.modelValue):[...t.modelValue,g]:g=[g]}o("update:modelValue",g)}return(d,m)=>{var g;return e.openBlock(),e.createElementBlock("ul",{class:e.normalizeClass(e.unref(a)),role:"listbox"},[(g=d.options)!=null&&g.length?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("li",Wt,[e.createElementVNode("label",null,e.toDisplayString(d.labelNoResult),1)])),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.options,(b,y)=>(e.openBlock(),e.createElementBlock("li",{key:y,role:"option","aria-selected":f(b)},[e.createElementVNode("label",{for:`dropdown-${y}-${e.unref(r)}`},[e.createElementVNode("input",{id:`dropdown-${y}-${e.unref(r)}`,type:d.multiple?"checkbox":"radio",value:u(b),checked:f(b),disabled:i(b),tabindex:"-1","aria-hidden":"true",onInput:c},null,40,Jt),e.createTextVNode(" "+e.toDisplayString(p(b)),1)],8,Zt)],8,Xt))),128))],2)}}});function we(n,o,t){const r=e.computed(()=>!!(n.value&&o.value==="left"||t.iconLeft)),l=e.computed(()=>!!(n.value&&o.value==="right"||t.iconRight)),s=e.computed(()=>!!(n.value&&o.value==="top"||t.iconTop)),a=e.computed(()=>!!(n.value&&o.value==="bottom"||t.iconBottom));return{hasIconLeft:r,hasIconRight:l,hasIconTop:s,hasIconBottom:a}}function Oe(n,o){const{focused:t}=D.useFocus(n);return e.watch(t,r=>{o(r?"focus":"blur",e.unref(n))}),{focused:t}}function De(n,o,t=0){let r;return typeof t=="string"&&(t=parseInt(t)),e.computed({get:()=>n==null?void 0:n.value,set:l=>{r&&clearTimeout(r),r=setTimeout(()=>{o("update:modelValue",l)},t)}})}function Re(n,o){const t=e.computed(()=>{const s=e.unref(n);return D.isString(s)?s.length:0}),r=e.computed(()=>{const s=e.unref(n)||"";return!D.isString(s)||o.mode===!1?0:o.mode===!0?s.length:e.unref(o.upperLimit)-s.length}),l=e.computed(()=>o.mode===!1?"":o.mode===!0&&o.upperLimit&&o.upperLimit>0?`${r.value}/${e.unref(o.upperLimit)}`:r.value);return{textLength:t,textLimitLength:r,formattedTextLimitLength:l}}const Z={TEXT:"text",PASSWORD:"password",DATE:"date",DATETIME_LOCAL:"datetime-local",NUMBER:"number",TIME:"time",EMAIL:"email",TEL:"tel",URL:"url",COLOR:"color",SEARCH:"search",FILE:"file"},ie={LEFT:"left",RIGHT:"right"},J={PASSWORD_SHOW:"eye-on",PASSWORD_HIDE:"eye-off",DATE:"calendar",TIME:"time",COLOR:"color",SEARCH:"close"},P={TYPES:Z,ICON_POSITIONS:ie,TYPES_ICON:J},eo=["update:modelValue","focus","blur","keyup"],to={...z,...U,...q,...ne,...L,...ke,...Ce,modelValue:{type:[String,Number],default:void 0},type:{type:String,default:Z.TEXT,validator:n=>Object.values(Z).includes(n)},min:[Number,Date],max:[Number,Date],step:{type:Number,default:1},labelStepUp:{type:String,default:"Increase value"},labelStepDown:{type:String,default:"Decrease value"},labelShowPassword:{type:String,default:"Show password"},labelHidePassword:{type:String,default:"Hide password"},labelClear:{type:String,default:"Clear"},iconShowPassword:{type:String,default:J.PASSWORD_SHOW},iconHidePassword:{type:String,default:J.PASSWORD_HIDE},iconClear:{type:String,default:J.SEARCH},icon:{type:[String,Object],default:""},iconPosition:{type:String,validation:n=>Object.values(ie).includes(n),default:ie.RIGHT},floating:Boolean,debounce:[String,Number],tabindex:{type:[String,Number],default:0}},Te=e.defineComponent({components:{VvIcon:w},props:{disabled:{type:Boolean,default:!1},labelShow:{type:String,default:"Show password"},labelHide:{type:String,default:"Hide password"},iconShow:{type:String,default:J.PASSWORD_SHOW},iconHide:{type:String,default:J.PASSWORD_HIDE}},emits:["toggle-password"],setup(n,{emit:o}){const t=e.ref(!1),r=e.computed(()=>t.value?n.iconHide:n.iconShow);function l(s){s==null||s.stopPropagation(),n.disabled||(t.value=!t.value,o("toggle-password",t.value))}return{active:t,activeIcon:r,onClick:l}},render(){const n=e.h(w,{name:this.activeIcon,class:"vv-input-text__action-icon"});return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.active?this.labelHide:this.labelShow,type:"button",onClick:this.onClick},n)}}),ce=e.defineComponent({components:{VvIcon:w},props:{disabled:{type:Boolean,default:!1},label:{type:String},mode:{type:String,validator:n=>["up","down"].includes(n),default:"up"}},emits:["step-up","step-down"],setup(n,{emit:o}){const t=e.computed(()=>n.mode==="up");return{isUp:t,onClick:l=>{l==null||l.stopPropagation(),n.disabled||o(t.value?"step-up":"step-down")}}},render(){return e.h("button",{class:["vv-input-text__action-chevron",this.isUp&&"vv-input-text__action-chevron-up"],disabled:this.disabled,ariaLabel:this.label,onClick:this.onClick})}}),Ie=e.defineComponent({components:{VvIcon:w},props:{disabled:{type:Boolean,default:!1},label:{type:String,default:"Clear"},icon:{type:String,default:"close"}},emits:["clear"],setup(n,{emit:o}){function t(r){r==null||r.stopPropagation(),n.disabled||o("clear")}return{onClick:t}},render(){const n=e.h(w,{name:this.icon,class:"vv-input-text__action-icon"});return e.h("button",{disabled:this.disabled,class:"vv-input-text__action",ariaLabel:this.label,type:"button",onClick:this.onClick},n)}});function de(n,o){return{name:"VvInputTextActions",components:{VvIcon:w,VvInputPasswordAction:Te,VvInputStepAction:ce,VvInputClearAction:Ie},setup(){return{isDisabled:e.computed(()=>o.disabled||o.readonly),labelStepUp:o.labelStepUp,labelStepDown:o.labelStepDown,labelShowPassword:o.labelShowPassword,labelHidePassword:o.labelHidePassword,labelClear:o.labelClear,iconShowPassword:o.iconShowPassword,iconHidePassword:o.iconHidePassword}},render(){let t=null;switch(n){case Z.SEARCH:{const{onClear:r}=this.$attrs;t=[e.h(Ie,{disabled:this.isDisabled,label:this.labelShowPassword,onClear:r})];break}case Z.PASSWORD:{const{onTogglePassword:r}=this.$attrs;t=[e.h(Te,{disabled:this.isDisabled,onTogglePassword:r,labelShow:this.labelShowPassword,labelHide:this.labelHidePassword,iconShow:this.iconShowPassword,iconHide:this.iconHidePassword})];break}case Z.NUMBER:{const{onStepUp:r,onStepDown:l}=this.$attrs;t=[e.h(ce,{mode:"up",disabled:this.isDisabled||o.max!==void 0&&o.modelValue===o.max,label:this.labelStepUp,onStepUp:r,onStepDown:l}),e.h(ce,{mode:"down",disabled:this.isDisabled||o.min!==void 0&&o.modelValue===o.min,label:this.labelStepDown,onStepUp:r,onStepDown:l})];break}}return Array.isArray(t)?e.h("div",{class:"vv-input-text__actions-group"},t):t}}}const oo=["for"],no={class:"vv-input-text__wrapper"},ro=["id","disabled","readonly","required"],lo={key:1,class:"vv-input-text__limit"},ao={name:"VvInputText"},so=e.defineComponent({...ao,props:to,emits:eo,setup(n,{emit:o}){const t=n,r=e.useSlots(),l=e.ref(),{icon:s,iconPosition:a,label:f,modelValue:u,limit:p}=e.toRefs(t),i=e.computed(()=>String(t.id||v.nanoid())),c=e.computed(()=>`${i.value}-hint`),d=e.computed(()=>t.floating&&I(t.placeholder)?" ":t.placeholder),m=De(u,o,t.debounce),g=e.ref(!1),b=e.computed(()=>t.type===P.TYPES.PASSWORD),y=()=>{g.value=!g.value},_=e.computed(()=>[P.TYPES.TIME,P.TYPES.DATETIME_LOCAL,P.TYPES.DATE].includes(t.type)),B=e.computed(()=>t.type===P.TYPES.NUMBER),E=()=>{h.value||(l.value.stepUp(),m.value=e.unref(l).value)},k=()=>{h.value||(l.value.stepDown(),m.value=e.unref(l).value)},N=e.computed(()=>t.type===P.TYPES.SEARCH),O=()=>{m.value=null},{hasIconLeft:x,hasIconRight:H}=we(s,a,{iconLeft:r["icon-left"],iconRight:r["icon-right"]}),K=e.computed(()=>typeof s.value=="string"?{name:s.value}:s.value),R=e.computed(()=>{switch(t.type){case P.TYPES.COLOR:return{name:P.TYPES_ICON.COLOR};case P.TYPES.DATE:case P.TYPES.DATETIME_LOCAL:return{name:P.TYPES_ICON.DATE};case P.TYPES.TIME:return{name:P.TYPES_ICON.TIME};default:return""}}),{formattedTextLimitLength:V}=Re(m,{mode:t.limit,upperLimit:t.maxlength||0}),{focused:S}=Oe(l,o),h=e.computed(()=>t.disabled||t.readonly),$=e.computed(()=>h.value?-1:t.tabindex),T=e.computed(()=>!I(u)),ue=e.computed(()=>{if(t.error===!0)return!0;if(t.valid===!0)return!1}),{bemCssClasses:pe}=A("vv-input-text",{modifiers:t.modifiers,valid:t.valid,invalid:t.error,loading:t.loading,iconLeft:x,iconRight:H.value||!I(R),floating:t.floating&&!I(t.label),dirty:T,focus:S}),Yo=e.computed(()=>{const j=(()=>b.value&&g.value||_.value&&!T.value&&!S.value?P.TYPES.TEXT:t.type)();return{type:j,placeholder:d.value,name:t.name,autocomplete:t.autocomplete,minlength:t.minlength,maxlength:t.maxlength,min:t.min,max:t.max,step:j===P.TYPES.NUMBER?t.step:void 0,tabindex:$.value,"aria-invalid":ue.value,"aria-describedby":!je.value&&Xo.value?c.value:void 0,"aria-errormessage":je.value?c.value:void 0}}),Ge=e.computed(()=>({valid:t.valid,error:t.error,modelValue:t.modelValue})),{HintSlot:Wo,hasHint:Xo,hasErrors:je}=F(t,r),Zo=de(P.TYPES.PASSWORD,t),Jo=de(P.TYPES.NUMBER,t),Qo=de(P.TYPES.SEARCH,t);return e.onMounted(()=>{t.autofocus&&(S.value=!0)}),(j,le)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(pe))},[e.unref(f)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(i),class:"vv-input-text__label"},e.toDisplayString(e.unref(f)),9,oo)):e.createCommentVNode("",!0),e.createElementVNode("div",no,[e.unref(x)?e.renderSlot(j.$slots,"icon-left",e.normalizeProps(e.mergeProps({key:0},e.unref(Ge))),()=>[e.createVNode(w,e.mergeProps({class:"vv-input-text__icon-left"},e.unref(K)),null,16)]):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",e.mergeProps({id:e.unref(i),ref_key:"input",ref:l,"onUpdate:modelValue":le[0]||(le[0]=fe=>e.isRef(m)?m.value=fe:null)},e.unref(Yo),{disabled:j.disabled,readonly:j.readonly,required:j.required,onKeyup:le[1]||(le[1]=fe=>o("keyup",fe))}),null,16,ro),[[e.vModelDynamic,e.unref(m)]]),e.renderSlot(j.$slots,"icon-right",e.normalizeProps(e.guardReactiveProps(e.unref(Ge))),()=>[e.unref(H)||e.unref(R)?(e.openBlock(),e.createBlock(w,e.normalizeProps(e.mergeProps({key:0},e.unref(H)?e.unref(K):e.unref(R))),null,16)):e.unref(b)?(e.openBlock(),e.createBlock(e.unref(Zo),{key:1,onTogglePassword:y})):e.unref(B)?(e.openBlock(),e.createBlock(e.unref(Jo),{key:2,onStepUp:E,onStepDown:k})):e.unref(N)?(e.openBlock(),e.createBlock(e.unref(Qo),{key:3,onClear:O})):e.createCommentVNode("",!0)]),e.unref(p)?(e.openBlock(),e.createElementBlock("span",lo,[e.renderSlot(j.$slots,"limit",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(V)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(Wo),{id:e.unref(c),class:"vv-input-text__hint"},null,8,["id"])],2))}}),io={...z,...U,...q,...ne,...Q,...Ve,...L,id:[String,Number],name:{type:String,required:!0},modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,required:Boolean,placeholder:String,options:{type:Array,required:!0},useObject:Boolean,labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},iconLeft:String,iconRight:String,modifiers:[String,Array],tabindex:{type:[String,Number],default:0}},co=["update:modelValue"],uo=["for"],po={class:"vv-select__wrapper"},fo=["id","disabled","required"],mo={key:0,value:void 0,disabled:""},go=["disabled","value"],bo={name:"VvNativeSelect"},Le=e.defineComponent({...bo,props:io,emits:co,setup(n,{emit:o}){const t=n,r=e.useSlots(),{HintSlot:l,hasHint:s,hasErrors:a}=F(t,r),{modifiers:f,disabled:u,readonly:p,loading:i,iconLeft:c,iconRight:d,error:m,valid:g}=e.toRefs(t),b=e.computed(()=>String(t.id||v.nanoid())),y=e.computed(()=>`${b.value}-hint`),_=e.computed(()=>!I(t.modelValue)),B=e.computed(()=>t.disabled||t.readonly),E=e.computed(()=>B.value?-1:t.tabindex),k=e.computed(()=>{if(t.error===!0)return!0;if(t.valid===!0)return!1}),{bemCssClasses:N}=A("vv-select",{modifiers:f,loading:i,readonly:p,iconLeft:c,iconRight:d,valid:g,invalid:m,dirty:_}),O=e.computed(()=>({name:t.name,tabindex:E.value,"aria-invalid":k.value,"aria-describedby":!a.value&&s.value?y.value:void 0,"aria-errormessage":a.value?y.value:void 0}));function x(V){return typeof V=="string"?V:V[t.valueKey]}function H(V){return typeof V=="string"?V:V[t.labelKey]}function K(V){return typeof V=="string"||V.disabled===void 0?u.value:V.disabled}const R=e.computed({get:()=>{var V;return typeof t.modelValue=="object"?(V=t.modelValue)==null?void 0:V[t.valueKey]:t.modelValue},set:V=>{var h;const S=t.useObject?(h=t.options)==null?void 0:h.find($=>$[t.valueKey]===V):void 0;o("update:modelValue",S??V)}});return(V,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(N))},[V.label?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(b)},e.toDisplayString(V.label),9,uo)):e.createCommentVNode("",!0),e.createElementVNode("div",po,[e.renderSlot(V.$slots,"icon-left",{},()=>[e.unref(c)?(e.openBlock(),e.createBlock(w,{key:0,name:e.unref(c)},null,8,["name"])):e.createCommentVNode("",!0)]),e.withDirectives(e.createElementVNode("select",e.mergeProps({id:e.unref(b),"onUpdate:modelValue":S[0]||(S[0]=h=>e.isRef(R)?R.value=h:null)},e.unref(O),{disabled:e.unref(B),required:V.required}),[V.placeholder?(e.openBlock(),e.createElementBlock("option",mo,e.toDisplayString(V.placeholder),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.options,(h,$)=>(e.openBlock(),e.createElementBlock("option",{key:$,disabled:K(h),value:x(h)},e.toDisplayString(H(h)),9,go))),128))],16,fo),[[e.vModelSelect,e.unref(R)]]),e.renderSlot(V.$slots,"icon-right",{},()=>[e.unref(d)?(e.openBlock(),e.createBlock(w,{key:0,name:e.unref(d)},null,8,["name"])):e.createCommentVNode("",!0)])]),e.createVNode(e.unref(l),{id:e.unref(y),class:"vv-select__hint"},null,8,["id"])],2))}}),yo={...L,value:{type:[Number,String],default:void 0},max:{type:[Number,String]},ariaLabel:{type:String,default:"progress-bar"}},ho={name:"VvProgress"},So=e.defineComponent({...ho,props:yo,setup(n){const o=n,{value:t,max:r,ariaLabel:l}=e.toRefs(o),s=e.computed(()=>o.value===void 0),{bemCssClasses:a}=A("vv-progress",{modifiers:o.modifiers,indeterminate:s});return(f,u)=>(e.openBlock(),e.createElementBlock("progress",e.mergeProps({role:"progressbar"},{class:e.unref(a),ariaLabel:e.unref(l),max:e.unref(r),value:e.unref(t)}),null,16))}}),Vo={...z,...U,...q,id:[String,Number],name:{type:String,required:!0},value:[String,Number,Boolean],modelValue:[Object,Number,Boolean,String],label:String,disabled:Boolean,readonly:Boolean,tabindex:{type:[String,Number],default:0}},_o=["click","update:modelValue","change","blur"];function ko(n,o){const{group:t,isInGroup:r,getGroupOrLocalRef:l}=te(be),{valid:s,error:a}=e.toRefs(n),f=l("modelValue",n,o),u=l("readonly",n),p=l("disabled",n);return{valid:s,error:a,group:t,isInGroup:r,modelValue:f,readonly:u,disabled:p}}const Co=["for"],Bo=["id","name","disabled","value","tabindex","aria-invalid"],Eo={name:"VvRadio"},xe=e.defineComponent({...Eo,props:Vo,emits:_o,setup(n,{emit:o}){const t=n,r=e.useSlots(),{disabled:l,readonly:s,modelValue:a,valid:f,error:u}=ko(t,o),p=e.ref(),i=e.computed(()=>t.id!==void 0?String(t.id):void 0),c=e.computed(()=>l.value||s.value),d=e.computed(()=>c.value?-1:t.tabindex),m=e.computed(()=>{if(t.error===!0)return!0;if(t.valid===!0)return!1}),g=e.computed(()=>Array.isArray(a.value)?Y(t.value,a.value):M(t.value,a.value)),b=e.computed(()=>["string","number","boolean"].includes(typeof t.value)?t.value:!0),y=e.computed({get(){return g.value?b.value:null},set(E){if(Array.isArray(a.value)){a.value=E?[...a.value,t.value]:se(t.value,a.value);return}a.value=t.value,o("change",E)}}),{bemCssClasses:_}=A("vv-radio",{valid:f,invalid:u,disabled:l,readonly:s}),{HintSlot:B}=F(t,r);return(E,k)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(e.unref(_)),for:e.unref(i)},[e.withDirectives(e.createElementVNode("input",{id:e.unref(i),ref_key:"input",ref:p,"onUpdate:modelValue":k[0]||(k[0]=N=>e.isRef(y)?y.value=N:null),type:"radio",class:"vv-radio__input",name:E.name,disabled:e.unref(c),value:e.unref(b),tabindex:e.unref(d),"aria-invalid":e.unref(m)},null,8,Bo),[[e.vModelRadio,e.unref(y)]]),e.renderSlot(E.$slots,"default",{value:e.unref(a)},()=>[e.createTextVNode(e.toDisplayString(E.label),1)]),e.createVNode(e.unref(B),{class:"vv-radio__hint",params:{value:e.unref(a)}},null,8,["params"])],10,Co))}}),$o=["update:modelValue"],No={...z,...U,..._e,...q,modelValue:null,label:{type:String,default:""},name:{type:String,default:"",required:!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},vertical:{type:Boolean,default:!1}},Po=["textContent"],Ao={class:"vv-radio-group__wrapper"},wo={name:"VvRadioGroup"},Oo=e.defineComponent({...wo,props:No,emits:$o,setup(n,{emit:o}){const t=n,r=e.useSlots(),{HintSlot:l}=F(t,r),s=D.useVModel(t,"modelValue",o),{disabled:a,readonly:f,vertical:u,valid:p,error:i}=e.toRefs(t);oe({key:be,modelValue:s,disabled:a,readonly:f});const{getOptionLabel:d,getOptionValue:m}=Pe(t),{bemCssClasses:g}=A("vv-radio-group",{horizontal:e.computed(()=>!u.value),valid:p,invalid:i}),b=(y,_)=>({id:`${t.name}_opt${_}`,name:t.name,label:d(y),value:m(y)});return(y,_)=>(e.openBlock(),e.createElementBlock("fieldset",{class:e.normalizeClass(e.unref(g))},[y.label?(e.openBlock(),e.createElementBlock("legend",{key:0,textContent:e.toDisplayString(y.label)},null,8,Po)):e.createCommentVNode("",!0),e.createElementVNode("div",Ao,[y.options.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(y.options,(B,E)=>(e.openBlock(),e.createBlock(xe,e.mergeProps({key:E},b(B,E)),null,16))),128)):e.renderSlot(y.$slots,"default",{key:1})]),e.createVNode(e.unref(l),{class:"vv-radio-group__hint"})],2))}}),Do={...z,...U,...q,...ne,...Q,...Ve,...L,modelValue:{type:[String,Number,Boolean,Object,Array],default:void 0},label:String,labelNoResult:{type:String,default:"No results"},placeholder:String,searchable:Boolean,searchPlaceholder:String,debounceSearch:{type:[Number,String],default:0},options:{type:Array,required:!0},useObject:Boolean,multiple:Boolean,maxValues:[Number,String],separator:{type:String,default:", "},labelKey:{type:String,default:"label"},valueKey:{type:String,default:"value"},iconLeft:String,iconRight:String,native:Boolean,tabindex:{type:[Number,String],default:0}},Ro=["id"],To=["id","for"],Io=["tabindex"],Lo=["id","placeholder"],xo={name:"VvSelect"},Ho=e.defineComponent({...xo,props:Do,emits:["update:modelValue","change:search"],setup(n,{emit:o}){const t=n,r=e.useSlots(),{HintSlot:l}=F(t,r),s=e.ref(),a=e.ref();D.useFocus(a,{initialValue:!0});const f=v.nanoid(),u=e.ref(""),p=D.refDebounced(u,Number(t.debounceSearch)),i=e.ref(!1),{modifiers:c,disabled:d,readonly:m,loading:g,iconLeft:b,iconRight:y,valid:_,error:B}=e.toRefs(t);e.watch(p,()=>o("change:search",p.value));const E=e.computed(()=>!I(t.modelValue)),k=e.computed(()=>d.value||m.value?-1:t.tabindex),{bemCssClasses:N}=A("vv-select",{modifiers:c,disabled:d,loading:g,readonly:m,iconLeft:b,iconRight:y,valid:_,invalid:B,dirty:E}),O=e.computed(()=>{var S;return(S=t.options)==null?void 0:S.every(h=>typeof h=="object")}),x=e.computed(()=>t.searchable?H.value:t.options),H=e.computed(()=>{var S;return(S=t.options)==null?void 0:S.filter(h=>typeof h=="string"?h.toLowerCase().includes(p.value.toLowerCase().trim()):typeof h[t.labelKey]=="string"?h[t.labelKey].toLowerCase().includes(p.value.toLowerCase().trim()):!1)}),K=e.computed(()=>{var h,$;if(t.multiple&&Array.isArray(t.modelValue)&&((h=t.modelValue)!=null&&h.length))return O.value?Ue(t.options,t.modelValue,t.valueKey).map(T=>T[t.labelKey]).join(t.separator):t.modelValue.join(t.separator);const S=t.useObject?t.modelValue:($=t.options)==null?void 0:$.find(T=>typeof T=="object"?T[t.valueKey]==t.modelValue:T==t.modelValue);return typeof S=="object"?S==null?void 0:S[t.labelKey]:S});D.onClickOutside(s,()=>{s.value.open=!1});function R(S){const h=S.target;i.value=h.open}function V(S){s.value&&!t.multiple&&(s.value.open=!1),o("update:modelValue",S)}return(S,h)=>S.native?(e.openBlock(),e.createBlock(Le,e.mergeProps({key:1},t,{"onUpdate:modelValue":h[4]||(h[4]=$=>o("update:modelValue",$))}),null,16)):(e.openBlock(),e.createElementBlock("div",{key:0,id:e.unref(f),class:e.normalizeClass(e.unref(N))},[S.label?(e.openBlock(),e.createElementBlock("label",{key:0,id:`${e.unref(f)}-label`,for:S.searchable&&i.value?`${e.unref(f)}-input`:void 0},e.toDisplayString(S.label),9,To)):e.createCommentVNode("",!0),e.createElementVNode("details",{ref_key:"dropdown",ref:s,class:"vv-select__wrapper",onClick:h[2]||(h[2]=$=>e.unref(d)||e.unref(m)?$.preventDefault():null),onKeyup:h[3]||(h[3]=e.withKeys($=>s.value.open=!1,["esc"])),onToggle:R},[e.createElementVNode("summary",{class:"vv-select__input",tabindex:e.unref(k),onKeyup:h[1]||(h[1]=e.withKeys($=>S.searchable?$.preventDefault():null,["space"]))},[S.searchable&&i.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,id:`${e.unref(f)}-input`,ref_key:"inputSearch",ref:a,"onUpdate:modelValue":h[0]||(h[0]=$=>u.value=$),role:"combobox",placeholder:S.searchPlaceholder},null,8,Lo)),[[e.vModelText,u.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(e.unref(K)||S.placeholder),1)],64))],40,Io),e.createVNode(Ae,e.mergeProps({id:`${e.unref(f)}-dropdown`},{...t,options:e.unref(x)},{"onUpdate:modelValue":V}),null,16,["id"])],544),e.createVNode(e.unref(l),{class:"vv-select__hint"})],10,Ro))}}),He={LEFT:"left",RIGHT:"right"},Go={hard:"hard",soft:"soft"},jo=["update:modelValue","focus","blur"],Mo={...z,...U,...q,...ne,...L,...ke,...Ce,...tt,id:[String,Number],modelValue:{type:[String],default:void 0},cols:{type:Number,default:50},rows:{type:Number,default:5},icon:{type:String,default:""},iconPosition:{type:String,validation:n=>Object.values(He).includes(n),default:He.RIGHT},floating:Boolean,wrap:{type:String,default:Go.soft},autoclear:Boolean,resizable:Boolean},zo=["for"],Uo={class:"vv-textarea__wrapper"},qo=["id","disabled","readonly","required"],Fo={key:2,class:"vv-textarea__limit"},Ko={name:"VvInputText"},vo=e.defineComponent({...Ko,props:Mo,emits:jo,setup(n,{emit:o}){const t=n,r=e.useSlots(),l=e.ref(),{icon:s,iconPosition:a,label:f,modelValue:u,autoclear:p,limit:i}=e.toRefs(t),c=e.computed(()=>String(t.id||v.nanoid())),d=e.computed(()=>`${c.value}-hint`),m=e.computed(()=>t.floating&&I(t.placeholder)?" ":t.placeholder),g=De(u,o,t.debounce),{hasIconLeft:b,hasIconRight:y}=we(s,a,{iconLeft:r["icon-left"],iconRight:r["icon-right"]}),{focused:_}=Oe(l,o),{textLength:B,formattedTextLimitLength:E}=Re(g,{mode:t.limit,upperLimit:t.maxlength||0}),k=e.computed(()=>!I(u)),N=e.computed(()=>{if(t.error===!0)return!0;if(t.valid===!0)return!1}),{HintSlot:O,hasHint:x,hasErrors:H}=F(t,r),{bemCssClasses:K}=A("vv-textarea",{modifiers:t.modifiers,readonly:t.readonly,valid:t.valid,invalid:t.error,loading:t.loading,iconLeft:b,iconRight:y,floating:t.floating&&!I(t.label),dirty:k,resizable:t.resizable}),R=e.computed(()=>({placeholder:m.value,name:t.name,autocomplete:t.autocomplete,minlength:t.minlength,maxlength:t.maxlength,cols:t.cols,rows:t.rows,"aria-invalid":N.value,"aria-describedby":!H.value&&x.value?d.value:void 0,"aria-errormessage":H.value?d.value:void 0})),V=e.computed(()=>{const{modelValue:h,valid:$,error:T,maxlength:ue,hintLabel:pe}=t;return{valid:$,error:T,modelValue:h,hintLabel:pe,maxlength:ue,textLength:B}});function S(){g.value=""}return e.onMounted(()=>{t.autofocus&&(_.value=!0)}),(h,$)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps(e.unref(R),{class:e.unref(K)}),[e.unref(f)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(c),class:"vv-textarea__label"},e.toDisplayString(e.unref(f)),9,zo)):e.createCommentVNode("",!0),e.createElementVNode("div",Uo,[e.unref(b)?e.renderSlot(h.$slots,"icon-left",e.normalizeProps(e.mergeProps({key:0},e.unref(V))),()=>[e.createVNode(w,{class:"vv-textarea__icon-left",name:e.unref(s)},null,8,["name"])]):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(c),ref_key:"input",ref:l,"onUpdate:modelValue":$[0]||($[0]=T=>e.isRef(g)?g.value=T:null)},e.unref(R),{disabled:h.disabled,readonly:h.readonly,required:h.required}),null,16,qo),[[e.vModelText,e.unref(g)]]),e.withDirectives(e.createElementVNode("button",{class:"vv-button vv-button--ghost",onClick:S},[e.createVNode(w,{name:"clear-field"})],512),[[e.vShow,e.unref(p)&&e.unref(B)>0]]),e.unref(y)?e.renderSlot(h.$slots,"icon-right",e.normalizeProps(e.mergeProps({key:1},e.unref(V))),()=>[e.createVNode(w,{name:e.unref(s)},null,8,["name"])]):e.createCommentVNode("",!0),e.unref(i)?(e.openBlock(),e.createElementBlock("span",Fo,[e.renderSlot(h.$slots,"limit",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(E)),1)])])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(O),{id:e.unref(d),class:"vv-textarea__hint"},null,8,["id"])],16))}});C.VvAccordion=Se,C.VvAccordionGroup=et,C.VvBadge=rt,C.VvBreadcrumb=ct,C.VvButton=yt,C.VvButtonGroup=_t,C.VvCard=Nt,C.VvCheckbox=Ne,C.VvCheckboxGroup=Gt,C.VvDialog=vt,C.VvDropdown=Ae,C.VvIcon=w,C.VvInputText=so,C.VvNativeSelect=Le,C.VvProgress=So,C.VvRadio=xe,C.VvRadioGroup=Oo,C.VvSelect=Ho,C.VvTextarea=vo,Object.defineProperty(C,Symbol.toStringTag,{value:"Module"})});
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type
|
|
2
|
-
export declare function useDebouncedInput(
|
|
1
|
+
import { type Ref } from 'vue';
|
|
2
|
+
export declare function useDebouncedInput(modelValue: Ref | undefined, emit: (event: string, value: unknown) => void, ms?: string | number): Ref;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type MaybeElement, type MaybeElementRef } from '@vueuse/core';
|
|
2
2
|
/**
|
|
3
3
|
*
|
|
4
4
|
*/
|
|
5
|
-
export declare function useComponentFocus(inputTemplateRef:
|
|
6
|
-
focused: Ref<boolean>;
|
|
5
|
+
export declare function useComponentFocus(inputTemplateRef: MaybeElementRef<MaybeElement>, emit: (event: 'focus' | 'blur', value: unknown) => void): {
|
|
6
|
+
focused: import("vue").Ref<boolean>;
|
|
7
7
|
};
|
|
@@ -4,7 +4,5 @@ import type IGroupState from './IGroupState';
|
|
|
4
4
|
* Stato condiviso per un gruppo di pulsanti
|
|
5
5
|
*/
|
|
6
6
|
export default interface IAccordionGroupState extends IGroupState {
|
|
7
|
-
|
|
8
|
-
bordered: Ref<boolean>;
|
|
9
|
-
accordion: Ref<boolean>;
|
|
7
|
+
collapse: Ref<boolean>;
|
|
10
8
|
}
|
|
@@ -3,9 +3,9 @@ import type { Ref } from 'vue';
|
|
|
3
3
|
* Stato condiviso per un gruppo di elementi
|
|
4
4
|
*/
|
|
5
5
|
export default interface IGroupState {
|
|
6
|
-
[key: string]: Ref<
|
|
6
|
+
[key: string]: Ref<unknown> | string;
|
|
7
7
|
/**
|
|
8
8
|
* Chiave usata per il provide del gruppo
|
|
9
9
|
*/
|
|
10
|
-
key:
|
|
10
|
+
key: string;
|
|
11
11
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type IGroupState from './types/IGroupState';
|
|
2
1
|
import { type Ref } from 'vue';
|
|
2
|
+
import type IGroupState from '@/composables/group/types/IGroupState';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Injects a group state
|
|
5
5
|
*/
|
|
6
|
-
export declare function useInjectedGroupState<TGroup extends IGroupState>(groupKey:
|
|
6
|
+
export declare function useInjectedGroupState<TGroup extends IGroupState>(groupKey: string): {
|
|
7
7
|
group: Ref<TGroup> | undefined;
|
|
8
8
|
isInGroup: import("vue").ComputedRef<boolean>;
|
|
9
|
-
getGroupOrLocalRef: <T extends object>(propName: keyof TGroup, props: T, emit?: ((event:
|
|
9
|
+
getGroupOrLocalRef: <T extends object>(propName: keyof TGroup, props: T, emit?: ((event: string, ...args: unknown[]) => void) | undefined) => import("vue").WritableComputedRef<unknown>;
|
|
10
10
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type IGroupState from '
|
|
1
|
+
import type IGroupState from '@/composables/group/types/IGroupState';
|
|
2
2
|
/**
|
|
3
3
|
* Condividi parte dello stato del componente con tutti i suoi figli.
|
|
4
4
|
* @param {IGroupState} groupState the group state with all group options
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type Slot, type Ref } from 'vue';
|
|
2
2
|
interface ComponentIconProps {
|
|
3
3
|
icon: Ref<string>;
|
|
4
4
|
iconPosition: Ref<string>;
|
|
@@ -17,7 +17,7 @@ export declare function useComponentIcons(props: ComponentIconProps, slots: Comp
|
|
|
17
17
|
hasIconTop: import("vue").ComputedRef<boolean>;
|
|
18
18
|
hasIconBottom: import("vue").ComputedRef<boolean>;
|
|
19
19
|
};
|
|
20
|
-
export declare function useComponentIcon(icon: Ref<string>, iconPosition: Ref<string>, slots: ComponentIconSlots): {
|
|
20
|
+
export declare function useComponentIcon(icon: Ref<string | object>, iconPosition: Ref<string>, slots: ComponentIconSlots): {
|
|
21
21
|
hasIconLeft: import("vue").ComputedRef<boolean>;
|
|
22
22
|
hasIconRight: import("vue").ComputedRef<boolean>;
|
|
23
23
|
hasIconTop: import("vue").ComputedRef<boolean>;
|
|
@@ -3,9 +3,6 @@ interface useTextOptions {
|
|
|
3
3
|
mode: string | boolean;
|
|
4
4
|
upperLimit: number;
|
|
5
5
|
}
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
*/
|
|
9
6
|
export declare function useTextLimit(inputText: Ref<string>, options: useTextOptions): {
|
|
10
7
|
textLength: import("vue").ComputedRef<number>;
|
|
11
8
|
textLimitLength: import("vue").ComputedRef<number>;
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const VV_BUTTON_GROUP
|
|
2
|
-
export declare const VV_RADIO_GROUP
|
|
3
|
-
export declare const VV_CHECK_GROUP
|
|
4
|
-
export declare const VV_ACCORDION_GROUP
|
|
1
|
+
export declare const VV_BUTTON_GROUP = "VV_BUTTON_GROUP";
|
|
2
|
+
export declare const VV_RADIO_GROUP = "VV_RADIO_GROUP";
|
|
3
|
+
export declare const VV_CHECK_GROUP = "VV_CHECK_GROUP";
|
|
4
|
+
export declare const VV_ACCORDION_GROUP = "VV_ACCORDION_GROUP";
|