@volverjs/ui-vue 0.0.10-beta.2 → 0.0.10-beta.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +98 -3
- package/auto-imports.d.ts +6 -2
- package/bin/icons.cjs +1 -1
- package/bin/icons.js +23 -16
- package/dist/Volver.d.ts +1 -1
- package/dist/components/VvAccordion/VvAccordion.es.js +70 -14
- package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +13 -6
- package/dist/components/VvAccordion/index.d.ts +4 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +117 -38
- package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +15 -8
- package/dist/components/VvAccordionGroup/index.d.ts +4 -1
- package/dist/components/VvAction/VvAction.es.js +58 -13
- package/dist/components/VvAction/VvAction.umd.js +1 -1
- package/dist/components/VvAction/VvAction.vue.d.ts +59 -12
- package/dist/components/VvAction/index.d.ts +25 -4
- package/dist/components/VvAlert/VvAlert.es.js +195 -152
- package/dist/components/VvAlert/VvAlert.umd.js +1 -1
- package/dist/components/VvAlert/VvAlert.vue.d.ts +18 -8
- package/dist/components/VvAlert/index.d.ts +9 -5
- package/dist/components/VvAlertGroup/VvAlertGroup.es.js +240 -174
- package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
- package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +13 -6
- package/dist/components/VvAlertGroup/index.d.ts +6 -2
- package/dist/components/VvAvatar/VvAvatar.es.js +54 -9
- package/dist/components/VvAvatar/VvAvatar.umd.js +1 -1
- package/dist/components/VvAvatar/VvAvatar.vue.d.ts +12 -4
- package/dist/components/VvAvatar/index.d.ts +4 -1
- package/dist/components/VvAvatarGroup/VvAvatarGroup.es.js +111 -36
- package/dist/components/VvAvatarGroup/VvAvatarGroup.umd.js +1 -1
- package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +10 -3
- package/dist/components/VvAvatarGroup/index.d.ts +4 -1
- package/dist/components/VvBadge/VvBadge.es.js +73 -17
- package/dist/components/VvBadge/VvBadge.umd.js +1 -1
- package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -4
- package/dist/components/VvBadge/index.d.ts +4 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +259 -49
- package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +27 -7
- package/dist/components/VvBreadcrumb/index.d.ts +6 -10
- package/dist/components/VvButton/VvButton.es.js +187 -141
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +101 -27
- package/dist/components/VvButton/index.d.ts +41 -14
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +69 -16
- package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +23 -10
- package/dist/components/VvButtonGroup/index.d.ts +8 -2
- package/dist/components/VvCard/VvCard.es.js +84 -25
- package/dist/components/VvCard/VvCard.umd.js +1 -1
- package/dist/components/VvCard/VvCard.vue.d.ts +12 -4
- package/dist/components/VvCard/index.d.ts +4 -1
- package/dist/components/VvCheckbox/VvCheckbox.es.js +91 -22
- package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +104 -32
- package/dist/components/VvCheckbox/index.d.ts +45 -12
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +180 -67
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +100 -29
- package/dist/components/VvCheckboxGroup/index.d.ts +45 -12
- package/dist/components/VvCombobox/VvCombobox.es.js +758 -531
- package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.vue.d.ts +181 -108
- package/dist/components/VvCombobox/index.d.ts +53 -22
- package/dist/components/VvDialog/VvDialog.es.js +136 -141
- package/dist/components/VvDialog/VvDialog.umd.js +1 -1
- package/dist/components/VvDialog/VvDialog.vue.d.ts +4 -4
- package/dist/components/VvDropdown/VvDropdown.es.js +121 -55
- package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
- package/dist/components/VvDropdown/VvDropdown.vue.d.ts +101 -75
- package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +72 -11
- package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +1 -1
- package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +12 -4
- package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +26 -7
- package/dist/components/VvDropdown/index.d.ts +16 -11
- package/dist/components/VvDropdownAction/VvDropdownAction.es.js +82 -22
- package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
- package/dist/components/VvDropdownItem/VvDropdownItem.es.js +13 -7
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.es.js +56 -8
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.umd.js +1 -1
- package/dist/components/VvDropdownOption/VvDropdownOption.es.js +76 -17
- package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.es.js +23 -96
- package/dist/components/VvIcon/VvIcon.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.vue.d.ts +23 -66
- package/dist/components/VvIcon/index.d.ts +33 -48
- package/dist/components/VvInputFile/VvInputFile.es.js +1734 -0
- package/dist/components/VvInputFile/VvInputFile.umd.js +1 -0
- package/dist/components/VvInputFile/VvInputFile.vue.d.ts +313 -0
- package/dist/components/VvInputFile/index.d.ts +179 -0
- package/dist/components/VvInputText/VvInputClearAction.d.ts +7 -5
- package/dist/components/VvInputText/VvInputPasswordAction.d.ts +10 -8
- package/dist/components/VvInputText/VvInputStepAction.d.ts +1 -1
- package/dist/components/VvInputText/VvInputText.es.js +331 -293
- package/dist/components/VvInputText/VvInputText.umd.js +1 -1
- package/dist/components/VvInputText/VvInputText.vue.d.ts +162 -55
- package/dist/components/VvInputText/index.d.ts +71 -29
- package/dist/components/VvNav/VvNav.es.js +151 -73
- package/dist/components/VvNav/VvNav.umd.js +1 -1
- package/dist/components/VvNav/VvNav.vue.d.ts +41 -14
- package/dist/components/VvNav/VvNavItem.vue.d.ts +9 -0
- package/dist/components/VvNav/VvNavSeparator.vue.d.ts +2 -0
- package/dist/components/VvNav/index.d.ts +5 -13
- package/dist/components/VvNavItem/VvNavItem.es.js +436 -0
- package/dist/components/VvNavItem/VvNavItem.umd.js +1 -0
- package/dist/components/VvNavSeparator/VvNavSeparator.es.js +24 -0
- package/dist/components/VvNavSeparator/VvNavSeparator.umd.js +1 -0
- package/dist/components/VvProgress/VvProgress.es.js +65 -14
- package/dist/components/VvProgress/VvProgress.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.vue.d.ts +10 -3
- package/dist/components/VvProgress/index.d.ts +4 -1
- package/dist/components/VvRadio/VvRadio.es.js +89 -21
- package/dist/components/VvRadio/VvRadio.umd.js +1 -1
- package/dist/components/VvRadio/VvRadio.vue.d.ts +102 -30
- package/dist/components/VvRadio/index.d.ts +44 -11
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +180 -66
- package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +100 -29
- package/dist/components/VvRadioGroup/index.d.ts +45 -12
- package/dist/components/VvSelect/VvSelect.es.js +248 -226
- package/dist/components/VvSelect/VvSelect.umd.js +1 -1
- package/dist/components/VvSelect/VvSelect.vue.d.ts +112 -39
- package/dist/components/VvSelect/index.d.ts +48 -14
- package/dist/components/VvTab/VvTab.es.js +256 -110
- package/dist/components/VvTab/VvTab.umd.js +1 -1
- package/dist/components/VvTab/VvTab.vue.d.ts +50 -13
- package/dist/components/VvTab/index.d.ts +13 -4
- package/dist/components/VvTextarea/VvTextarea.es.js +229 -212
- package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +155 -48
- package/dist/components/VvTextarea/index.d.ts +68 -19
- package/dist/components/VvTooltip/VvTooltip.es.js +72 -17
- package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
- package/dist/components/VvTooltip/VvTooltip.vue.d.ts +10 -3
- package/dist/components/VvTooltip/index.d.ts +4 -1
- package/dist/components/common/HintSlot.d.ts +1 -1
- package/dist/components/index.d.ts +10 -0
- package/dist/components/index.es.js +2902 -1329
- package/dist/components/index.umd.js +1 -1
- package/dist/composables/alert/useAlert.d.ts +37 -4
- package/dist/composables/dropdown/useProvideDropdown.d.ts +1 -1
- package/dist/composables/index.d.ts +1 -0
- package/dist/composables/index.es.js +88 -1
- package/dist/composables/index.umd.js +1 -1
- package/dist/composables/useBlurhash.d.ts +7 -0
- package/dist/composables/useComponentIcon.d.ts +9 -8
- package/dist/composables/useVolver.d.ts +1 -1
- package/dist/directives/index.d.ts +3 -5
- package/dist/directives/index.es.js +92 -31
- package/dist/directives/index.umd.js +1 -1
- package/dist/directives/v-tooltip.es.js +90 -26
- package/dist/directives/v-tooltip.umd.js +1 -1
- package/dist/icons.es.js +210 -210
- package/dist/icons.umd.js +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.es.js +81 -16
- package/dist/index.umd.js +1 -1
- package/dist/props/index.d.ts +287 -73
- package/dist/resolvers/unplugin.d.ts +6 -1
- package/dist/resolvers/unplugin.es.js +78 -10
- package/dist/resolvers/unplugin.umd.js +1 -1
- package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +72 -84
- package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +623 -461
- package/dist/stories/AlertGroup/AlertGroupWithComposable.stories.d.ts +1 -1
- package/dist/stories/Blurhash/BlurhashComposable.stories.d.ts +4 -0
- package/dist/stories/Combobox/Combobox.settings.d.ts +8 -0
- package/dist/stories/Icon/Icon.settings.d.ts +1 -0
- package/dist/stories/InputFile/InputFile.settings.d.ts +56 -0
- package/dist/stories/InputFile/InputFile.stories.d.ts +12 -0
- package/dist/stories/InputFile/InputFileDropArea.stories.d.ts +9 -0
- package/dist/stories/InputFile/InputFileIconPosition.stories.d.ts +8 -0
- package/dist/stories/InputFile/InputFileSlots.stories.d.ts +7 -0
- package/dist/stories/Tab/Tab.settings.d.ts +4 -37
- package/dist/types/alert.d.ts +13 -0
- package/dist/types/blurhash.d.ts +12 -0
- package/dist/types/floating-ui.d.ts +6 -0
- package/dist/types/generic.d.ts +4 -0
- package/dist/types/group.d.ts +37 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/input-file.d.ts +16 -0
- package/dist/types/nav.d.ts +18 -0
- package/dist/utils/ObjectUtilities.d.ts +0 -1
- package/dist/workers/blurhash.d.ts +1 -0
- package/package.json +97 -80
- package/src/Volver.ts +31 -20
- 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 +2 -2
- package/src/components/VvAction/VvAction.vue +5 -2
- package/src/components/VvAlert/index.ts +1 -3
- package/src/components/VvAlertGroup/index.ts +2 -1
- package/src/components/VvBreadcrumb/VvBreadcrumb.vue +20 -19
- package/src/components/VvBreadcrumb/index.ts +2 -8
- package/src/components/VvButton/VvButton.vue +6 -6
- package/src/components/VvButton/index.ts +2 -4
- package/src/components/VvCombobox/VvCombobox.vue +24 -16
- package/src/components/VvCombobox/index.ts +4 -0
- package/src/components/VvIcon/VvIcon.vue +2 -2
- package/src/components/VvIcon/index.ts +35 -48
- package/src/components/VvInputFile/VvInputFile.vue +365 -0
- package/src/components/VvInputFile/index.ts +116 -0
- package/src/components/VvInputText/VvInputClearAction.ts +10 -6
- package/src/components/VvInputText/VvInputPasswordAction.ts +13 -9
- package/src/components/VvInputText/VvInputText.vue +17 -18
- package/src/components/VvInputText/index.ts +7 -15
- package/src/components/VvNav/VvNav.vue +30 -50
- package/src/components/VvNav/VvNavItem.vue +18 -0
- package/src/components/VvNav/VvNavSeparator.vue +11 -0
- package/src/components/VvNav/index.ts +2 -15
- package/src/components/VvSelect/VvSelect.vue +5 -8
- package/src/components/VvTab/VvTab.vue +63 -35
- package/src/components/VvTab/index.ts +10 -4
- package/src/components/VvTextarea/VvTextarea.vue +6 -9
- package/src/components/index.ts +10 -0
- package/src/composables/index.ts +1 -0
- package/src/composables/useBlurhash.ts +76 -0
- package/src/composables/useComponentIcon.ts +15 -14
- package/src/composables/useUniqueId.ts +2 -2
- package/src/directives/index.ts +3 -6
- package/src/directives/v-tooltip.ts +19 -10
- package/src/index.ts +3 -1
- package/src/props/index.ts +115 -27
- package/src/resolvers/unplugin.ts +24 -14
- package/src/stories/AlertGroup/AlertGroupWithComposable.stories.ts +2 -2
- package/src/stories/Blurhash/BlurhashComposable.stories.ts +195 -0
- package/src/stories/Combobox/Combobox.settings.ts +8 -0
- package/src/stories/Icon/Icon.settings.ts +3 -3
- package/src/stories/InputFile/InputFile.settings.ts +36 -0
- package/src/stories/InputFile/InputFile.stories.ts +89 -0
- package/src/stories/InputFile/InputFileDropArea.stories.ts +56 -0
- package/src/stories/InputFile/InputFileIconPosition.stories.ts +43 -0
- package/src/stories/InputFile/InputFileSlots.stories.ts +33 -0
- package/src/stories/Nav/Nav.settings.ts +3 -4
- package/src/stories/Nav/Nav.test.ts +4 -15
- package/src/stories/Tab/Tab.settings.ts +9 -9
- package/src/stories/Tab/Tab.stories.ts +2 -2
- package/src/stories/Tab/Tab.test.ts +6 -14
- package/src/stories/argTypes.ts +1 -1
- package/src/types/blurhash.ts +21 -0
- package/src/types/generic.ts +6 -0
- package/src/types/index.ts +7 -0
- package/src/types/input-file.ts +18 -0
- package/src/types/nav.ts +20 -0
- package/src/utils/ObjectUtilities.ts +0 -11
- package/src/workers/blurhash.ts +9 -0
- package/dist/components/VvNav/VvNavItemTitle.vue.d.ts +0 -6
- package/dist/components/VvNav/VvNavSeparator.d.ts +0 -2
- package/dist/components/VvNavItemTitle/VvNavItemTitle.es.js +0 -19
- package/dist/components/VvNavItemTitle/VvNavItemTitle.umd.js +0 -1
- package/src/components/VvNav/VvNavItemTitle.vue +0 -11
- package/src/components/VvNav/VvNavSeparator.ts +0 -8
- package/src/types/generic.d.ts +0 -6
- /package/src/types/{alert.d.ts → alert.ts} +0 -0
- /package/src/types/{floating-ui.d.ts → floating-ui.ts} +0 -0
- /package/src/types/{group.d.ts → group.ts} +0 -0
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ActionTag } from '../../constants';
|
|
1
2
|
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
2
3
|
type: {
|
|
3
4
|
type: globalThis.PropType<"button" | "submit" | "reset">;
|
|
@@ -8,25 +9,48 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
8
9
|
type: StringConstructor;
|
|
9
10
|
default: undefined;
|
|
10
11
|
};
|
|
12
|
+
defaultTag: {
|
|
13
|
+
type: StringConstructor;
|
|
14
|
+
default: ActionTag;
|
|
15
|
+
};
|
|
11
16
|
to: {
|
|
12
17
|
type: (ObjectConstructor | StringConstructor)[];
|
|
13
18
|
};
|
|
14
19
|
href: StringConstructor;
|
|
15
20
|
target: {
|
|
16
21
|
type: globalThis.PropType<"_blank" | "_self" | "_parent" | "_top">;
|
|
22
|
+
default: undefined;
|
|
17
23
|
validator: (value: import("../../constants").AnchorTarget) => boolean;
|
|
18
24
|
};
|
|
19
25
|
rel: {
|
|
20
26
|
type: StringConstructor;
|
|
21
27
|
default: string;
|
|
22
28
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
29
|
+
current: {
|
|
30
|
+
type: BooleanConstructor;
|
|
31
|
+
default: boolean;
|
|
32
|
+
};
|
|
33
|
+
active: {
|
|
34
|
+
type: BooleanConstructor;
|
|
35
|
+
default: boolean;
|
|
36
|
+
};
|
|
37
|
+
pressed: {
|
|
38
|
+
type: BooleanConstructor;
|
|
39
|
+
default: boolean;
|
|
40
|
+
};
|
|
41
|
+
label: {
|
|
42
|
+
type: (StringConstructor | NumberConstructor)[];
|
|
43
|
+
default: undefined;
|
|
44
|
+
};
|
|
45
|
+
disabled: {
|
|
46
|
+
type: BooleanConstructor;
|
|
47
|
+
default: boolean;
|
|
48
|
+
};
|
|
27
49
|
}, {
|
|
28
50
|
$el: globalThis.Ref<HTMLElement | null>;
|
|
29
|
-
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin,
|
|
51
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
52
|
+
[x: string]: (...args: any[]) => void;
|
|
53
|
+
}, string, import("vue").PublicProps, Readonly<globalThis.ExtractPropTypes<{
|
|
30
54
|
type: {
|
|
31
55
|
type: globalThis.PropType<"button" | "submit" | "reset">;
|
|
32
56
|
default: import("../../constants").ButtonType;
|
|
@@ -36,29 +60,52 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
|
|
|
36
60
|
type: StringConstructor;
|
|
37
61
|
default: undefined;
|
|
38
62
|
};
|
|
63
|
+
defaultTag: {
|
|
64
|
+
type: StringConstructor;
|
|
65
|
+
default: ActionTag;
|
|
66
|
+
};
|
|
39
67
|
to: {
|
|
40
68
|
type: (ObjectConstructor | StringConstructor)[];
|
|
41
69
|
};
|
|
42
70
|
href: StringConstructor;
|
|
43
71
|
target: {
|
|
44
72
|
type: globalThis.PropType<"_blank" | "_self" | "_parent" | "_top">;
|
|
73
|
+
default: undefined;
|
|
45
74
|
validator: (value: import("../../constants").AnchorTarget) => boolean;
|
|
46
75
|
};
|
|
47
76
|
rel: {
|
|
48
77
|
type: StringConstructor;
|
|
49
78
|
default: string;
|
|
50
79
|
};
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
80
|
+
current: {
|
|
81
|
+
type: BooleanConstructor;
|
|
82
|
+
default: boolean;
|
|
83
|
+
};
|
|
84
|
+
active: {
|
|
85
|
+
type: BooleanConstructor;
|
|
86
|
+
default: boolean;
|
|
87
|
+
};
|
|
88
|
+
pressed: {
|
|
89
|
+
type: BooleanConstructor;
|
|
90
|
+
default: boolean;
|
|
91
|
+
};
|
|
92
|
+
label: {
|
|
93
|
+
type: (StringConstructor | NumberConstructor)[];
|
|
94
|
+
default: undefined;
|
|
95
|
+
};
|
|
96
|
+
disabled: {
|
|
97
|
+
type: BooleanConstructor;
|
|
98
|
+
default: boolean;
|
|
99
|
+
};
|
|
100
|
+
}>>, {
|
|
58
101
|
disabled: boolean;
|
|
102
|
+
label: string | number;
|
|
59
103
|
type: "button" | "submit" | "reset";
|
|
104
|
+
target: "_blank" | "_self" | "_parent" | "_top";
|
|
60
105
|
ariaLabel: string;
|
|
106
|
+
defaultTag: string;
|
|
61
107
|
rel: string;
|
|
108
|
+
current: boolean;
|
|
62
109
|
active: boolean;
|
|
63
110
|
pressed: boolean;
|
|
64
111
|
}, {}>, {
|
|
@@ -9,20 +9,41 @@ export declare const VvActionProps: {
|
|
|
9
9
|
type: StringConstructor;
|
|
10
10
|
default: undefined;
|
|
11
11
|
};
|
|
12
|
+
defaultTag: {
|
|
13
|
+
type: StringConstructor;
|
|
14
|
+
default: import("../../constants").ActionTag;
|
|
15
|
+
};
|
|
12
16
|
to: {
|
|
13
17
|
type: (ObjectConstructor | StringConstructor)[];
|
|
14
18
|
};
|
|
15
19
|
href: StringConstructor;
|
|
16
20
|
target: {
|
|
17
21
|
type: globalThis.PropType<"_blank" | "_self" | "_parent" | "_top">;
|
|
22
|
+
default: undefined;
|
|
18
23
|
validator: (value: import("../../constants").AnchorTarget) => boolean;
|
|
19
24
|
};
|
|
20
25
|
rel: {
|
|
21
26
|
type: StringConstructor;
|
|
22
27
|
default: string;
|
|
23
28
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
29
|
+
current: {
|
|
30
|
+
type: BooleanConstructor;
|
|
31
|
+
default: boolean;
|
|
32
|
+
};
|
|
33
|
+
active: {
|
|
34
|
+
type: BooleanConstructor;
|
|
35
|
+
default: boolean;
|
|
36
|
+
};
|
|
37
|
+
pressed: {
|
|
38
|
+
type: BooleanConstructor;
|
|
39
|
+
default: boolean;
|
|
40
|
+
};
|
|
41
|
+
label: {
|
|
42
|
+
type: (StringConstructor | NumberConstructor)[];
|
|
43
|
+
default: undefined;
|
|
44
|
+
};
|
|
45
|
+
disabled: {
|
|
46
|
+
type: BooleanConstructor;
|
|
47
|
+
default: boolean;
|
|
48
|
+
};
|
|
28
49
|
};
|
|
@@ -1,99 +1,9 @@
|
|
|
1
|
-
import { inject, computed, unref, defineComponent, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, watch, withModifiers, createElementBlock, normalizeProps, guardReactiveProps, renderSlot, createTextVNode, toDisplayString, createElementVNode } from "vue";
|
|
1
|
+
import { inject, computed, unref, defineComponent, mergeDefaults, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, watch, withModifiers, createElementBlock, normalizeProps, guardReactiveProps, renderSlot, createTextVNode, toDisplayString, createElementVNode } from "vue";
|
|
2
2
|
import { iconExists, Icon, addIcon } from "@iconify/vue";
|
|
3
|
-
import {
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*/
|
|
8
|
-
color: String,
|
|
9
|
-
/**
|
|
10
|
-
* Width
|
|
11
|
-
*/
|
|
12
|
-
width: {
|
|
13
|
-
type: [String, Number]
|
|
14
|
-
},
|
|
15
|
-
/**
|
|
16
|
-
* Height
|
|
17
|
-
*/
|
|
18
|
-
height: {
|
|
19
|
-
type: [String, Number]
|
|
20
|
-
},
|
|
21
|
-
/**
|
|
22
|
-
* Icon name
|
|
23
|
-
* Can be the full composition of iconify name "@{provider}:{prefix}:{name}" or "{prefix}:{name}" or "{name}"
|
|
24
|
-
* https://docs.iconify.design/api/providers.html#provider-in-icon-name
|
|
25
|
-
*/
|
|
26
|
-
name: {
|
|
27
|
-
type: String,
|
|
28
|
-
required: true
|
|
29
|
-
},
|
|
30
|
-
/**
|
|
31
|
-
* By default 'vv'
|
|
32
|
-
* If custom collection is not added with "addCollection" DS class method, this prop could not be used
|
|
33
|
-
* Icon provider: https://docs.iconify.design/api/providers.html#provider-in-icon-name
|
|
34
|
-
*/
|
|
35
|
-
provider: {
|
|
36
|
-
type: String
|
|
37
|
-
},
|
|
38
|
-
/**
|
|
39
|
-
* The name of icon set.
|
|
40
|
-
* Icon default options prefix: simple | normal | detailed
|
|
41
|
-
*/
|
|
42
|
-
prefix: {
|
|
43
|
-
type: String,
|
|
44
|
-
default: "normal"
|
|
45
|
-
},
|
|
46
|
-
/**
|
|
47
|
-
* Url remote SVG icon
|
|
48
|
-
*/
|
|
49
|
-
src: String,
|
|
50
|
-
/**
|
|
51
|
-
* Horizontal flip
|
|
52
|
-
*/
|
|
53
|
-
horizontalFlip: Boolean,
|
|
54
|
-
/**
|
|
55
|
-
* Vertical flip
|
|
56
|
-
*/
|
|
57
|
-
verticalFlip: Boolean,
|
|
58
|
-
/**
|
|
59
|
-
* String alternative to "horizontalFlip" and "verticalFlip".
|
|
60
|
-
* Example: https://docs.iconify.design/icon-components/vue/transform.html
|
|
61
|
-
*/
|
|
62
|
-
flip: String,
|
|
63
|
-
/**
|
|
64
|
-
* Icon render mode
|
|
65
|
-
* 'style' = 'bg' or 'mask', depending on icon content
|
|
66
|
-
* 'bg' = span with style using `background`
|
|
67
|
-
* 'mask' = span with style using `mask`
|
|
68
|
-
* 'svg' = svg
|
|
69
|
-
* Iconify doc: https://docs.iconify.design/iconify-icon/modes.html
|
|
70
|
-
*/
|
|
71
|
-
mode: String,
|
|
72
|
-
/**
|
|
73
|
-
* Toggles inline or block mode
|
|
74
|
-
* Example https://docs.iconify.design/icon-components/vue/inline.html
|
|
75
|
-
*/
|
|
76
|
-
inline: Boolean,
|
|
77
|
-
/**
|
|
78
|
-
* rotates icon
|
|
79
|
-
* Example https://docs.iconify.design/icon-components/vue/transform.html
|
|
80
|
-
*/
|
|
81
|
-
rotate: [Number, String],
|
|
82
|
-
/**
|
|
83
|
-
* A callback that is called when icon data has been loaded
|
|
84
|
-
*/
|
|
85
|
-
onLoad: Function,
|
|
86
|
-
/**
|
|
87
|
-
* SVG icon string
|
|
88
|
-
*/
|
|
89
|
-
svg: String,
|
|
90
|
-
/**
|
|
91
|
-
* Icon modifiers: vv-icon css helper classes, value/s are concatened with prefix 'vv-icon--'
|
|
92
|
-
* @values string | string[]
|
|
93
|
-
*/
|
|
94
|
-
modifiers: {
|
|
95
|
-
type: [String, Array]
|
|
96
|
-
}
|
|
3
|
+
import { uid } from "uid";
|
|
4
|
+
const VvIconPropsDefaults = {
|
|
5
|
+
prefix: "normal"
|
|
6
|
+
/* normal */
|
|
97
7
|
};
|
|
98
8
|
var Strategy = /* @__PURE__ */ ((Strategy2) => {
|
|
99
9
|
Strategy2["absolute"] = "absolute";
|
|
@@ -129,6 +39,13 @@ var ButtonType = /* @__PURE__ */ ((ButtonType2) => {
|
|
|
129
39
|
ButtonType2["reset"] = "reset";
|
|
130
40
|
return ButtonType2;
|
|
131
41
|
})(ButtonType || {});
|
|
42
|
+
var ActionTag = /* @__PURE__ */ ((ActionTag2) => {
|
|
43
|
+
ActionTag2["nuxtLink"] = "nuxt-link";
|
|
44
|
+
ActionTag2["routerLink"] = "router-link";
|
|
45
|
+
ActionTag2["a"] = "a";
|
|
46
|
+
ActionTag2["button"] = "button";
|
|
47
|
+
return ActionTag2;
|
|
48
|
+
})(ActionTag || {});
|
|
132
49
|
var AnchorTarget = /* @__PURE__ */ ((AnchorTarget2) => {
|
|
133
50
|
AnchorTarget2["_blank"] = "_blank";
|
|
134
51
|
AnchorTarget2["_self"] = "_self";
|
|
@@ -171,7 +88,24 @@ const __default__$1 = {
|
|
|
171
88
|
};
|
|
172
89
|
const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
173
90
|
...__default__$1,
|
|
174
|
-
props:
|
|
91
|
+
props: /* @__PURE__ */ mergeDefaults({
|
|
92
|
+
name: {},
|
|
93
|
+
color: {},
|
|
94
|
+
width: {},
|
|
95
|
+
height: {},
|
|
96
|
+
provider: {},
|
|
97
|
+
prefix: {},
|
|
98
|
+
src: {},
|
|
99
|
+
horizontalFlip: { type: Boolean },
|
|
100
|
+
verticalFlip: { type: Boolean },
|
|
101
|
+
flip: {},
|
|
102
|
+
mode: {},
|
|
103
|
+
inline: { type: Boolean },
|
|
104
|
+
rotate: {},
|
|
105
|
+
onLoad: { type: Function },
|
|
106
|
+
svg: {},
|
|
107
|
+
modifiers: {}
|
|
108
|
+
}, VvIconPropsDefaults),
|
|
175
109
|
setup(__props) {
|
|
176
110
|
const props = __props;
|
|
177
111
|
const hasRotate = computed(() => {
|
|
@@ -258,7 +192,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
258
192
|
color: _ctx.color,
|
|
259
193
|
onLoad: _ctx.onLoad,
|
|
260
194
|
icon: unref(icon)
|
|
261
|
-
}), null, 16, ["class"])) : createCommentVNode("", true);
|
|
195
|
+
}), null, 16, ["class"])) : createCommentVNode("v-if", true);
|
|
262
196
|
};
|
|
263
197
|
}
|
|
264
198
|
});
|
|
@@ -279,6 +213,7 @@ const LinkProps = {
|
|
|
279
213
|
*/
|
|
280
214
|
target: {
|
|
281
215
|
type: String,
|
|
216
|
+
default: void 0,
|
|
282
217
|
validator: (value) => Object.values(AnchorTarget).includes(value)
|
|
283
218
|
},
|
|
284
219
|
/**
|
|
@@ -293,38 +228,65 @@ const DisabledProps = {
|
|
|
293
228
|
/**
|
|
294
229
|
* Whether the form control is disabled
|
|
295
230
|
*/
|
|
296
|
-
disabled:
|
|
231
|
+
disabled: {
|
|
232
|
+
type: Boolean,
|
|
233
|
+
default: false
|
|
234
|
+
}
|
|
297
235
|
};
|
|
298
236
|
const ActiveProps = {
|
|
299
237
|
/**
|
|
300
238
|
* Whether the item is active
|
|
301
239
|
*/
|
|
302
|
-
active:
|
|
240
|
+
active: {
|
|
241
|
+
type: Boolean,
|
|
242
|
+
default: false
|
|
243
|
+
}
|
|
244
|
+
};
|
|
245
|
+
const CurrentProps = {
|
|
246
|
+
/**
|
|
247
|
+
* Whether the item is current
|
|
248
|
+
*/
|
|
249
|
+
current: {
|
|
250
|
+
type: Boolean,
|
|
251
|
+
default: false
|
|
252
|
+
}
|
|
303
253
|
};
|
|
304
254
|
const PressedProps = {
|
|
305
255
|
/**
|
|
306
256
|
* Whether the item is pressed
|
|
307
257
|
*/
|
|
308
|
-
pressed:
|
|
258
|
+
pressed: {
|
|
259
|
+
type: Boolean,
|
|
260
|
+
default: false
|
|
261
|
+
}
|
|
309
262
|
};
|
|
310
263
|
const LabelProps = {
|
|
311
264
|
/**
|
|
312
265
|
* The item label
|
|
313
266
|
*/
|
|
314
|
-
label:
|
|
267
|
+
label: {
|
|
268
|
+
type: [String, Number],
|
|
269
|
+
default: void 0
|
|
270
|
+
}
|
|
315
271
|
};
|
|
316
272
|
const ModifiersProps = {
|
|
317
273
|
/**
|
|
318
274
|
* Component BEM modifiers
|
|
319
275
|
*/
|
|
320
|
-
modifiers:
|
|
276
|
+
modifiers: {
|
|
277
|
+
type: [String, Array],
|
|
278
|
+
default: void 0
|
|
279
|
+
}
|
|
321
280
|
};
|
|
322
281
|
const IconProps = {
|
|
323
282
|
/**
|
|
324
283
|
* VvIcon name or props
|
|
325
284
|
* @see VVIcon
|
|
326
285
|
*/
|
|
327
|
-
icon: {
|
|
286
|
+
icon: {
|
|
287
|
+
type: [String, Object],
|
|
288
|
+
default: void 0
|
|
289
|
+
},
|
|
328
290
|
/**
|
|
329
291
|
* VvIcon position
|
|
330
292
|
*/
|
|
@@ -362,7 +324,8 @@ const IdProps = {
|
|
|
362
324
|
* Dropdown show / hide transition name
|
|
363
325
|
*/
|
|
364
326
|
transitionName: {
|
|
365
|
-
type: String
|
|
327
|
+
type: String,
|
|
328
|
+
default: void 0
|
|
366
329
|
},
|
|
367
330
|
/**
|
|
368
331
|
* Offset of the dropdown from the trigger
|
|
@@ -430,7 +393,8 @@ const IdProps = {
|
|
|
430
393
|
* Set dropdown width to the same as the trigger
|
|
431
394
|
*/
|
|
432
395
|
triggerWidth: {
|
|
433
|
-
type: Boolean
|
|
396
|
+
type: Boolean,
|
|
397
|
+
default: false
|
|
434
398
|
}
|
|
435
399
|
});
|
|
436
400
|
({
|
|
@@ -438,6 +402,7 @@ const IdProps = {
|
|
|
438
402
|
...LabelProps,
|
|
439
403
|
...PressedProps,
|
|
440
404
|
...ActiveProps,
|
|
405
|
+
...CurrentProps,
|
|
441
406
|
...LinkProps,
|
|
442
407
|
/**
|
|
443
408
|
* Button type
|
|
@@ -453,12 +418,54 @@ const IdProps = {
|
|
|
453
418
|
ariaLabel: {
|
|
454
419
|
type: String,
|
|
455
420
|
default: void 0
|
|
421
|
+
},
|
|
422
|
+
/**
|
|
423
|
+
* Default tag for the action
|
|
424
|
+
*/
|
|
425
|
+
defaultTag: {
|
|
426
|
+
type: String,
|
|
427
|
+
default: ActionTag.button
|
|
456
428
|
}
|
|
457
429
|
});
|
|
458
430
|
function useInjectedAlertGroup() {
|
|
459
431
|
return inject(INJECTION_KEY_ALERT_GROUP, {});
|
|
460
432
|
}
|
|
461
|
-
const useUniqueId = (id) => computed(() => String((id == null ? void 0 : id.value) ||
|
|
433
|
+
const useUniqueId = (id) => computed(() => String((id == null ? void 0 : id.value) || uid()));
|
|
434
|
+
function useComponentIcon(icon, iconPosition) {
|
|
435
|
+
const hasIcon = computed(() => {
|
|
436
|
+
if (typeof (icon == null ? void 0 : icon.value) === "string") {
|
|
437
|
+
return { name: icon == null ? void 0 : icon.value };
|
|
438
|
+
}
|
|
439
|
+
return icon == null ? void 0 : icon.value;
|
|
440
|
+
});
|
|
441
|
+
const hasIconBefore = computed(
|
|
442
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Position.before ? hasIcon.value : void 0
|
|
443
|
+
);
|
|
444
|
+
const hasIconAfter = computed(
|
|
445
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Position.after ? hasIcon.value : void 0
|
|
446
|
+
);
|
|
447
|
+
const hasIconLeft = computed(
|
|
448
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.left ? hasIcon.value : void 0
|
|
449
|
+
);
|
|
450
|
+
const hasIconRight = computed(
|
|
451
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.right ? hasIcon.value : void 0
|
|
452
|
+
);
|
|
453
|
+
const hasIconTop = computed(
|
|
454
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.top ? hasIcon.value : void 0
|
|
455
|
+
);
|
|
456
|
+
const hasIconBottom = computed(
|
|
457
|
+
() => (iconPosition == null ? void 0 : iconPosition.value) === Side.bottom ? hasIcon.value : void 0
|
|
458
|
+
);
|
|
459
|
+
return {
|
|
460
|
+
hasIcon,
|
|
461
|
+
hasIconLeft,
|
|
462
|
+
hasIconRight,
|
|
463
|
+
hasIconTop,
|
|
464
|
+
hasIconBottom,
|
|
465
|
+
hasIconBefore,
|
|
466
|
+
hasIconAfter
|
|
467
|
+
};
|
|
468
|
+
}
|
|
462
469
|
const VvAlertProps = {
|
|
463
470
|
...IdProps,
|
|
464
471
|
...ModifiersProps,
|
|
@@ -535,9 +542,7 @@ const useVvAlert = (props, emit) => {
|
|
|
535
542
|
const { bus } = useInjectedAlertGroup();
|
|
536
543
|
const hasId = useUniqueId(computed(() => props.id));
|
|
537
544
|
const hasTitleId = computed(() => `${hasId.value}-title`);
|
|
538
|
-
const hasIcon = computed(
|
|
539
|
-
() => typeof props.icon === "string" ? { name: props.icon } : props.icon
|
|
540
|
-
);
|
|
545
|
+
const { hasIcon } = useComponentIcon(computed(() => props.icon));
|
|
541
546
|
const hasClass = useModifiers(
|
|
542
547
|
"vv-alert",
|
|
543
548
|
computed(() => props.modifiers),
|
|
@@ -606,7 +611,13 @@ const _hoisted_1 = {
|
|
|
606
611
|
};
|
|
607
612
|
const _hoisted_2 = ["id"];
|
|
608
613
|
const _hoisted_3 = ["aria-label"];
|
|
609
|
-
const _hoisted_4 = /* @__PURE__ */ createElementVNode(
|
|
614
|
+
const _hoisted_4 = /* @__PURE__ */ createElementVNode(
|
|
615
|
+
"div",
|
|
616
|
+
{ class: "vv-alert__close-mask" },
|
|
617
|
+
null,
|
|
618
|
+
-1
|
|
619
|
+
/* HOISTED */
|
|
620
|
+
);
|
|
610
621
|
const _hoisted_5 = [
|
|
611
622
|
_hoisted_4
|
|
612
623
|
];
|
|
@@ -625,52 +636,84 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
625
636
|
...__default__,
|
|
626
637
|
props: VvAlertProps,
|
|
627
638
|
emits: VvAlertEvents,
|
|
628
|
-
setup(__props, { expose: __expose, emit }) {
|
|
639
|
+
setup(__props, { expose: __expose, emit: __emit }) {
|
|
629
640
|
const props = __props;
|
|
641
|
+
const emit = __emit;
|
|
630
642
|
const { hasProps, hasTitleId, hasIcon, close } = useVvAlert(props, emit);
|
|
631
643
|
__expose({ close });
|
|
632
644
|
return (_ctx, _cache) => {
|
|
633
|
-
return openBlock(), createElementBlock(
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
645
|
+
return openBlock(), createElementBlock(
|
|
646
|
+
"div",
|
|
647
|
+
normalizeProps(guardReactiveProps(unref(hasProps))),
|
|
648
|
+
[
|
|
649
|
+
_ctx.$slots.header || _ctx.$slots.title || _ctx.$slots.close || _ctx.$slots["title::before"] || _ctx.$slots["title::after"] || _ctx.title || _ctx.dismissable || _ctx.autoClose ? (openBlock(), createElementBlock("div", _hoisted_1, [
|
|
650
|
+
unref(hasIcon) ? (openBlock(), createBlock(
|
|
651
|
+
_sfc_main$1,
|
|
652
|
+
mergeProps({ key: 0 }, unref(hasIcon), { class: "vv-alert__icon" }),
|
|
653
|
+
null,
|
|
654
|
+
16
|
|
655
|
+
/* FULL_PROPS */
|
|
656
|
+
)) : createCommentVNode("v-if", true),
|
|
657
|
+
createCommentVNode(" @slot Header slot "),
|
|
658
|
+
renderSlot(_ctx.$slots, "header", {}, () => [
|
|
659
|
+
createCommentVNode(" @slot Before title slot "),
|
|
660
|
+
renderSlot(_ctx.$slots, "title::before"),
|
|
661
|
+
_ctx.$slots.title || _ctx.title ? (openBlock(), createElementBlock("strong", {
|
|
662
|
+
key: 0,
|
|
663
|
+
id: unref(hasTitleId),
|
|
664
|
+
class: "vv-alert__title"
|
|
665
|
+
}, [
|
|
666
|
+
createCommentVNode(" @slot Title slot "),
|
|
667
|
+
renderSlot(_ctx.$slots, "title", {}, () => [
|
|
668
|
+
createTextVNode(
|
|
669
|
+
toDisplayString(_ctx.title),
|
|
670
|
+
1
|
|
671
|
+
/* TEXT */
|
|
672
|
+
)
|
|
673
|
+
])
|
|
674
|
+
], 8, _hoisted_2)) : createCommentVNode("v-if", true),
|
|
675
|
+
createCommentVNode(" @slot After title slot "),
|
|
676
|
+
renderSlot(_ctx.$slots, "title::after")
|
|
677
|
+
]),
|
|
678
|
+
createCommentVNode(" @slot Close button slot "),
|
|
679
|
+
renderSlot(_ctx.$slots, "close", normalizeProps(guardReactiveProps({ close: unref(close) })), () => [
|
|
680
|
+
_ctx.dismissable || _ctx.autoClose ? (openBlock(), createElementBlock("button", {
|
|
681
|
+
key: 0,
|
|
682
|
+
class: "vv-alert__close",
|
|
683
|
+
type: "button",
|
|
684
|
+
"aria-label": _ctx.closeLabel,
|
|
685
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(
|
|
686
|
+
//@ts-ignore
|
|
687
|
+
(...args) => unref(close) && unref(close)(...args),
|
|
688
|
+
["stop"]
|
|
689
|
+
))
|
|
690
|
+
}, _hoisted_5, 8, _hoisted_3)) : createCommentVNode("v-if", true)
|
|
691
|
+
])
|
|
692
|
+
])) : createCommentVNode("v-if", true),
|
|
693
|
+
_ctx.$slots.default || _ctx.content ? (openBlock(), createElementBlock("div", _hoisted_6, [
|
|
694
|
+
createCommentVNode(" @slot Content slot "),
|
|
695
|
+
renderSlot(_ctx.$slots, "default", {}, () => [
|
|
696
|
+
createTextVNode(
|
|
697
|
+
toDisplayString(_ctx.content),
|
|
698
|
+
1
|
|
699
|
+
/* TEXT */
|
|
700
|
+
)
|
|
701
|
+
])
|
|
702
|
+
])) : createCommentVNode("v-if", true),
|
|
703
|
+
_ctx.$slots.footer || _ctx.footer ? (openBlock(), createElementBlock("div", _hoisted_7, [
|
|
704
|
+
createCommentVNode(" @slot Footer slot "),
|
|
705
|
+
renderSlot(_ctx.$slots, "footer", {}, () => [
|
|
706
|
+
createTextVNode(
|
|
707
|
+
toDisplayString(_ctx.footer),
|
|
708
|
+
1
|
|
709
|
+
/* TEXT */
|
|
710
|
+
)
|
|
711
|
+
])
|
|
712
|
+
])) : createCommentVNode("v-if", true)
|
|
713
|
+
],
|
|
714
|
+
16
|
|
715
|
+
/* FULL_PROPS */
|
|
716
|
+
);
|
|
674
717
|
};
|
|
675
718
|
}
|
|
676
719
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("vue"),require("@iconify/vue"),require("
|
|
1
|
+
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?module.exports=o(require("vue"),require("@iconify/vue"),require("uid")):"function"==typeof define&&define.amd?define(["vue","@iconify/vue","uid"],o):(e="undefined"!=typeof globalThis?globalThis:e||self).VvAlert=o(e.vue,e.vue$1,e.uid)}(this,(function(e,o,t){"use strict";const l={prefix:"normal"};var n=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(n||{}),r=(e=>(e.before="before",e.after="after",e))(r||{}),i=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(i||{}),a=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(a||{});const s=Symbol.for("volver"),u=Symbol.for("alertGroup");function c(o,t,l){return e.computed((()=>{const n={[o]:!0},r="string"==typeof(null==t?void 0:t.value)?t.value.split(" "):null==t?void 0:t.value;return r&&Array.isArray(r)&&r.forEach((e=>{e&&(n[`${o}--${e}`]=!0)})),l&&Object.keys(l.value).forEach((t=>{n[`${o}--${t}`]=e.unref(l.value[t])})),n}))}const d=e.defineComponent({name:"VvIcon",props:e.mergeDefaults({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},l),setup(t){const l=t,n=e.computed((()=>"string"==typeof l.rotate?parseFloat(l.rotate):l.rotate)),r=e.ref(!0),i=e.inject(s),{modifiers:a}=e.toRefs(l),u=c("vv-icon",a),d=e.computed((()=>l.provider||(null==i?void 0:i.iconsProvider))),v=e.computed((()=>{const e=l.name??"",t=`@${d.value}:${l.prefix}:${e}`;if(o.iconExists(t))return t;const n=null==i?void 0:i.iconsCollections.find((t=>{const l=`@${d.value}:${t.prefix}:${e}`;return o.iconExists(l)}));return n?`@${d.value}:${n.prefix}:${e}`:e}));function f(e){const t=function(e){let o;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");o=(new e).window}return(o?new o.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),n=(null==t?void 0:t.innerHTML.trim())||"";t&&n&&o.addIcon(`@${d.value}:${l.prefix}:${l.name}`,{body:n,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return i&&l.src&&!o.iconExists(`@${d.value}:${l.prefix}:${l.name}`)&&(r.value=!1,i.fetchIcon(l.src).then((e=>{e&&(f(e),r.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),l.svg&&f(l.svg),(t,l)=>e.unref(r)?(e.openBlock(),e.createBlock(e.unref(o.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:t.inline,width:t.width,height:t.height,horizontalFlip:t.horizontalFlip,verticalFlip:t.verticalFlip,flip:t.flip,rotate:e.unref(n),color:t.color,onLoad:t.onLoad,icon:e.unref(v)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}}),v=(Boolean,Boolean,Boolean,Boolean,{modifiers:{type:[String,Array],default:void 0}}),f={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:r.before,validation:e=>Object.values(r).includes(e)}},m={id:[String,Number]};n.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,i.button,a.button;const p={...m,...v,...f,dismissable:{type:Boolean,default:!1},autoClose:{type:Number,default:0},closeLabel:{type:String,default:"Close"},title:{type:String,default:void 0},content:{type:String,default:void 0},footer:{type:String,default:void 0},role:{type:String,default:"alert"}},h=(o,l)=>{const{bus:i}=e.inject(u,{}),a=(s=e.computed((()=>o.id)),e.computed((()=>String((null==s?void 0:s.value)||t.uid()))));var s;const d=e.computed((()=>`${a.value}-title`)),{hasIcon:v}=function(o,t){const l=e.computed((()=>"string"==typeof(null==o?void 0:o.value)?{name:null==o?void 0:o.value}:null==o?void 0:o.value)),i=e.computed((()=>(null==t?void 0:t.value)===r.before?l.value:void 0)),a=e.computed((()=>(null==t?void 0:t.value)===r.after?l.value:void 0)),s=e.computed((()=>(null==t?void 0:t.value)===n.left?l.value:void 0)),u=e.computed((()=>(null==t?void 0:t.value)===n.right?l.value:void 0)),c=e.computed((()=>(null==t?void 0:t.value)===n.top?l.value:void 0)),d=e.computed((()=>(null==t?void 0:t.value)===n.bottom?l.value:void 0));return{hasIcon:l,hasIconLeft:s,hasIconRight:u,hasIconTop:c,hasIconBottom:d,hasIconBefore:i,hasIconAfter:a}}(e.computed((()=>o.icon))),f=c("vv-alert",e.computed((()=>o.modifiers)),e.computed((()=>({dismissable:o.autoClose>0||o.dismissable,"auto-close":o.autoClose>0,hover:b.value})))),m=e.computed((()=>({"--alert-duration":`${o.autoClose}ms`}))),p=()=>{h&&clearTimeout(h),l("close",a.value),null==i||i.emit("close",a.value)};let h;e.watch((()=>o.autoClose),(e=>{e>0?h=setTimeout(p,e):h&&clearTimeout(h)}),{immediate:!0});const b=e.ref(!1),y=e.withModifiers((()=>{b.value=!0,h&&clearTimeout(h)}),["passive"]),g=e.withModifiers((()=>{b.value=!1,o.autoClose>0&&(h=setTimeout(p,o.autoClose))}),["passive"]);return{close:p,hasIcon:v,hasTitleId:d,hasProps:e.computed((()=>({onMouseover:y,onMouseleave:g,class:f.value,style:m.value,role:o.role,"aria-labelledby":d.value})))}},b={key:0,class:"vv-alert__header"},y=["id"],g=["aria-label"],$=[e.createElementVNode("div",{class:"vv-alert__close-mask"},null,-1)],B={key:1,class:"vv-alert__content"},k={key:2,class:"vv-alert__footer"};return e.defineComponent({name:"VvAlert",props:p,emits:["close"],setup(o,{expose:t,emit:l}){const n=o,r=l,{hasProps:i,hasTitleId:a,hasIcon:s,close:u}=h(n,r);return t({close:u}),(o,t)=>(e.openBlock(),e.createElementBlock("div",e.normalizeProps(e.guardReactiveProps(e.unref(i))),[o.$slots.header||o.$slots.title||o.$slots.close||o.$slots["title::before"]||o.$slots["title::after"]||o.title||o.dismissable||o.autoClose?(e.openBlock(),e.createElementBlock("div",b,[e.unref(s)?(e.openBlock(),e.createBlock(d,e.mergeProps({key:0},e.unref(s),{class:"vv-alert__icon"}),null,16)):e.createCommentVNode("v-if",!0),e.createCommentVNode(" @slot Header slot "),e.renderSlot(o.$slots,"header",{},(()=>[e.createCommentVNode(" @slot Before title slot "),e.renderSlot(o.$slots,"title::before"),o.$slots.title||o.title?(e.openBlock(),e.createElementBlock("strong",{key:0,id:e.unref(a),class:"vv-alert__title"},[e.createCommentVNode(" @slot Title slot "),e.renderSlot(o.$slots,"title",{},(()=>[e.createTextVNode(e.toDisplayString(o.title),1)]))],8,y)):e.createCommentVNode("v-if",!0),e.createCommentVNode(" @slot After title slot "),e.renderSlot(o.$slots,"title::after")])),e.createCommentVNode(" @slot Close button slot "),e.renderSlot(o.$slots,"close",e.normalizeProps(e.guardReactiveProps({close:e.unref(u)})),(()=>[o.dismissable||o.autoClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"vv-alert__close",type:"button","aria-label":o.closeLabel,onClick:t[0]||(t[0]=e.withModifiers(((...o)=>e.unref(u)&&e.unref(u)(...o)),["stop"]))},$,8,g)):e.createCommentVNode("v-if",!0)]))])):e.createCommentVNode("v-if",!0),o.$slots.default||o.content?(e.openBlock(),e.createElementBlock("div",B,[e.createCommentVNode(" @slot Content slot "),e.renderSlot(o.$slots,"default",{},(()=>[e.createTextVNode(e.toDisplayString(o.content),1)]))])):e.createCommentVNode("v-if",!0),o.$slots.footer||o.footer?(e.openBlock(),e.createElementBlock("div",k,[e.createCommentVNode(" @slot Footer slot "),e.renderSlot(o.$slots,"footer",{},(()=>[e.createTextVNode(e.toDisplayString(o.footer),1)]))])):e.createCommentVNode("v-if",!0)],16))}})}));
|