@volverjs/ui-vue 0.0.10-beta.3 → 0.0.10-beta.31
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 +106 -10
- package/auto-imports.d.ts +7 -2
- package/bin/icons.cjs +1 -1
- package/bin/icons.js +22 -15
- package/dist/Volver.d.ts +1 -1
- package/dist/components/VvAccordion/VvAccordion.es.js +192 -103
- package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +160 -8
- package/dist/components/VvAccordion/index.d.ts +8 -9
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +451 -172
- package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +58 -13
- package/dist/components/VvAccordionGroup/index.d.ts +14 -6
- package/dist/components/VvAction/VvAction.es.js +78 -27
- package/dist/components/VvAction/VvAction.umd.js +1 -1
- package/dist/components/VvAction/VvAction.vue.d.ts +57 -22
- package/dist/components/VvAction/index.d.ts +25 -9
- package/dist/components/VvAlert/VvAlert.es.js +204 -171
- package/dist/components/VvAlert/VvAlert.umd.js +1 -1
- package/dist/components/VvAlert/VvAlert.vue.d.ts +24 -14
- package/dist/components/VvAlert/index.d.ts +17 -9
- package/dist/components/VvAlertGroup/VvAlertGroup.es.js +250 -188
- package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
- package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +16 -9
- package/dist/components/VvAlertGroup/index.d.ts +6 -14
- package/dist/components/VvAvatar/VvAvatar.es.js +61 -21
- 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 +118 -48
- 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 +78 -28
- package/dist/components/VvBadge/VvBadge.umd.js +1 -1
- package/dist/components/VvBadge/VvBadge.vue.d.ts +12 -4
- package/dist/components/VvBadge/index.d.ts +4 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +276 -60
- package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +27 -7
- package/dist/components/VvBreadcrumb/index.d.ts +6 -10
- package/dist/components/VvButton/VvButton.es.js +291 -252
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +94 -40
- package/dist/components/VvButton/index.d.ts +51 -29
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +81 -40
- package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +24 -11
- package/dist/components/VvButtonGroup/index.d.ts +8 -2
- package/dist/components/VvCard/VvCard.es.js +86 -36
- package/dist/components/VvCard/VvCard.umd.js +1 -1
- package/dist/components/VvCard/VvCard.vue.d.ts +12 -4
- package/dist/components/VvCard/index.d.ts +4 -1
- package/dist/components/VvCheckbox/VvCheckbox.es.js +177 -120
- package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +105 -33
- package/dist/components/VvCheckbox/index.d.ts +47 -14
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +190 -107
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +101 -30
- package/dist/components/VvCheckboxGroup/index.d.ts +45 -12
- package/dist/components/VvCombobox/VvCombobox.es.js +806 -581
- package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.vue.d.ts +171 -104
- package/dist/components/VvCombobox/index.d.ts +62 -26
- package/dist/components/VvDialog/VvDialog.es.js +140 -153
- 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 +138 -71
- 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 +66 -25
- package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +13 -1
- package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +12 -4
- package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +35 -7
- package/dist/components/VvDropdown/index.d.ts +52 -10
- package/dist/components/VvDropdownAction/VvDropdownAction.es.js +152 -39
- package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
- package/dist/components/VvDropdownItem/VvDropdownItem.es.js +335 -8
- package/dist/components/VvDropdownItem/VvDropdownItem.umd.js +1 -1
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.es.js +63 -20
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.umd.js +1 -1
- package/dist/components/VvDropdownOption/VvDropdownOption.es.js +188 -80
- package/dist/components/VvDropdownOption/VvDropdownOption.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.es.js +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 +1777 -0
- package/dist/components/VvInputFile/VvInputFile.umd.js +1 -0
- package/dist/components/VvInputFile/VvInputFile.vue.d.ts +359 -0
- package/dist/components/VvInputFile/index.d.ts +200 -0
- package/dist/components/VvInputText/VvInputClearAction.d.ts +7 -5
- package/dist/components/VvInputText/VvInputPasswordAction.d.ts +10 -8
- package/dist/components/VvInputText/VvInputStepAction.d.ts +2 -2
- package/dist/components/VvInputText/VvInputText.es.js +1237 -324
- package/dist/components/VvInputText/VvInputText.umd.js +1 -1
- package/dist/components/VvInputText/VvInputText.vue.d.ts +207 -57
- package/dist/components/VvInputText/index.d.ts +99 -29
- package/dist/components/VvNav/VvNav.es.js +135 -56
- package/dist/components/VvNav/VvNav.umd.js +1 -1
- package/dist/components/VvNav/VvNav.vue.d.ts +32 -9
- package/dist/components/VvNav/VvNavItem.vue.d.ts +1 -1
- package/dist/components/VvNav/VvNavSeparator.vue.d.ts +1 -1
- package/dist/components/VvNav/index.d.ts +5 -2
- package/dist/components/VvNavItem/VvNavItem.es.js +91 -33
- package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.es.js +72 -26
- 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 +160 -103
- package/dist/components/VvRadio/VvRadio.umd.js +1 -1
- package/dist/components/VvRadio/VvRadio.vue.d.ts +103 -31
- package/dist/components/VvRadio/index.d.ts +50 -17
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +190 -107
- package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +101 -30
- package/dist/components/VvRadioGroup/index.d.ts +45 -12
- package/dist/components/VvSelect/VvSelect.es.js +251 -238
- package/dist/components/VvSelect/VvSelect.umd.js +1 -1
- package/dist/components/VvSelect/VvSelect.vue.d.ts +117 -44
- package/dist/components/VvSelect/index.d.ts +48 -14
- package/dist/components/VvTab/VvTab.es.js +191 -75
- package/dist/components/VvTab/VvTab.umd.js +1 -1
- package/dist/components/VvTab/VvTab.vue.d.ts +31 -7
- package/dist/components/VvTab/index.d.ts +4 -1
- package/dist/components/VvTextarea/VvTextarea.es.js +232 -224
- package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +156 -49
- package/dist/components/VvTextarea/index.d.ts +68 -19
- package/dist/components/VvTooltip/VvTooltip.es.js +79 -29
- package/dist/components/VvTooltip/VvTooltip.umd.js +1 -1
- package/dist/components/VvTooltip/VvTooltip.vue.d.ts +13 -6
- package/dist/components/VvTooltip/index.d.ts +5 -2
- package/dist/components/common/HintSlot.d.ts +1 -1
- package/dist/components/index.d.ts +10 -0
- package/dist/components/index.es.js +3534 -1650
- package/dist/components/index.umd.js +1 -1
- package/dist/composables/alert/useAlert.d.ts +99 -4
- package/dist/composables/alert/useInjectAlert.d.ts +1 -6
- package/dist/composables/dropdown/useInjectDropdown.d.ts +3 -23
- package/dist/composables/dropdown/useProvideDropdown.d.ts +3 -4
- package/dist/composables/group/useInjectedGroupState.d.ts +4 -5
- package/dist/composables/group/useProvideGroupState.d.ts +3 -3
- package/dist/composables/index.d.ts +1 -0
- package/dist/composables/index.es.js +92 -3
- 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/usePersistence.d.ts +2 -0
- package/dist/composables/useVolver.d.ts +1 -1
- package/dist/constants.d.ts +34 -32
- package/dist/directives/index.d.ts +3 -5
- package/dist/directives/index.es.js +99 -43
- package/dist/directives/index.umd.js +1 -1
- package/dist/directives/v-tooltip.es.js +97 -38
- package/dist/directives/v-tooltip.umd.js +1 -1
- package/dist/icons.es.js +267 -267
- package/dist/icons.umd.js +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.es.js +90 -16
- package/dist/index.umd.js +1 -1
- package/dist/props/index.d.ts +272 -81
- package/dist/resolvers/unplugin.d.ts +6 -1
- package/dist/resolvers/unplugin.es.js +87 -10
- package/dist/resolvers/unplugin.umd.js +1 -1
- package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +143 -89
- package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +1075 -492
- package/dist/stories/AlertGroup/AlertGroupWithComposable.stories.d.ts +1 -1
- package/dist/stories/Blurhash/BlurhashComposable.stories.d.ts +4 -0
- package/dist/stories/Button/Button.settings.d.ts +0 -1
- 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 +2 -15
- package/dist/test/expect.d.ts +1 -1
- package/dist/types/alert.d.ts +9 -7
- package/dist/types/blurhash.d.ts +12 -0
- package/dist/types/generic.d.ts +1 -2
- package/dist/types/group.d.ts +37 -15
- package/dist/types/index.d.ts +7 -0
- package/dist/types/input-file.d.ts +16 -0
- package/dist/types/nav.d.ts +2 -2
- package/dist/utils/ObjectUtilities.d.ts +0 -1
- package/dist/workers/blurhash.d.ts +1 -0
- package/package.json +78 -78
- 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 +121 -58
- package/src/components/VvAccordion/index.ts +8 -23
- package/src/components/VvAccordionGroup/VvAccordionGroup.vue +164 -47
- package/src/components/VvAccordionGroup/index.ts +6 -6
- package/src/components/VvAction/VvAction.vue +17 -5
- package/src/components/VvAlert/index.ts +14 -9
- package/src/components/VvAlertGroup/index.ts +3 -15
- package/src/components/VvBreadcrumb/VvBreadcrumb.vue +20 -19
- package/src/components/VvBreadcrumb/index.ts +2 -8
- package/src/components/VvButton/VvButton.vue +17 -7
- package/src/components/VvButton/index.ts +9 -16
- package/src/components/VvButtonGroup/VvButtonGroup.vue +1 -2
- package/src/components/VvCheckbox/index.ts +2 -2
- package/src/components/VvCheckboxGroup/VvCheckboxGroup.vue +1 -2
- package/src/components/VvCombobox/VvCombobox.vue +15 -12
- package/src/components/VvCombobox/index.ts +4 -0
- package/src/components/VvDropdown/VvDropdown.vue +11 -2
- package/src/components/VvDropdown/VvDropdownItem.vue +4 -1
- package/src/components/VvDropdown/VvDropdownOption.vue +4 -21
- package/src/components/VvDropdown/index.ts +35 -1
- package/src/components/VvIcon/VvIcon.vue +2 -2
- package/src/components/VvIcon/index.ts +35 -48
- package/src/components/VvInputFile/VvInputFile.vue +395 -0
- package/src/components/VvInputFile/index.ts +135 -0
- package/src/components/VvInputText/VvInputClearAction.ts +10 -6
- package/src/components/VvInputText/VvInputPasswordAction.ts +13 -9
- package/src/components/VvInputText/VvInputText.vue +141 -33
- package/src/components/VvInputText/index.ts +31 -16
- package/src/components/VvNav/VvNav.vue +4 -2
- package/src/components/VvRadio/index.ts +5 -5
- package/src/components/VvRadioGroup/VvRadioGroup.vue +1 -2
- package/src/components/VvSelect/VvSelect.vue +5 -8
- package/src/components/VvTab/VvTab.vue +5 -1
- package/src/components/VvTextarea/VvTextarea.vue +6 -9
- package/src/components/index.ts +10 -0
- package/src/composables/alert/useAlert.ts +12 -9
- package/src/composables/dropdown/useProvideDropdown.ts +4 -4
- package/src/composables/group/useInjectedGroupState.ts +20 -16
- package/src/composables/group/useProvideGroupState.ts +10 -15
- package/src/composables/index.ts +1 -0
- package/src/composables/useBlurhash.ts +76 -0
- package/src/composables/useComponentIcon.ts +15 -14
- package/src/composables/usePersistence.ts +76 -0
- package/src/composables/useUniqueId.ts +2 -2
- package/src/constants.ts +47 -32
- 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 +108 -31
- package/src/resolvers/unplugin.ts +24 -14
- package/src/stories/Accordion/Accordion.test.ts +1 -1
- package/src/stories/AccordionGroup/AccordionGroup.settings.ts +2 -2
- package/src/stories/AccordionGroup/AccordionGroup.test.ts +17 -11
- package/src/stories/AccordionGroup/AccordionGroupSlots.stories.ts +1 -1
- package/src/stories/Alert/Alert.test.ts +1 -1
- package/src/stories/AlertGroup/AlertGroup.test.ts +1 -1
- package/src/stories/AlertGroup/AlertGroupWithComposable.stories.ts +2 -2
- package/src/stories/Avatar/Avatar.test.ts +1 -1
- package/src/stories/AvatarGroup/AvatarGroup.test.ts +1 -1
- package/src/stories/Badge/Badge.test.ts +1 -1
- package/src/stories/Blurhash/BlurhashComposable.stories.ts +195 -0
- package/src/stories/Button/Button.settings.ts +1 -4
- package/src/stories/Button/Button.test.ts +1 -1
- package/src/stories/ButtonGroup/ButtonGroup.test.ts +1 -1
- package/src/stories/Card/Card.test.ts +1 -1
- package/src/stories/Checkbox/Checkbox.test.ts +1 -1
- package/src/stories/CheckboxGroup/CheckboxGroup.test.ts +1 -1
- package/src/stories/Combobox/Combobox.settings.ts +8 -0
- package/src/stories/Combobox/Combobox.test.ts +1 -1
- package/src/stories/Dialog/Dialog.test.ts +2 -2
- package/src/stories/Dropdown/Dropdown.test.ts +1 -1
- 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/InputText/InputText.test.ts +1 -1
- package/src/stories/Nav/Nav.test.ts +1 -1
- package/src/stories/Progress/Progress.test.ts +1 -1
- package/src/stories/Radio/Radio.test.ts +1 -1
- package/src/stories/RadioGroup/RadioGroup.test.ts +1 -1
- package/src/stories/Select/Select.test.ts +1 -1
- package/src/stories/Tab/Tab.settings.ts +2 -2
- package/src/stories/Tab/Tab.test.ts +1 -1
- package/src/stories/Textarea/Textarea.test.ts +1 -1
- package/src/stories/Tooltip/Tooltip.test.ts +1 -1
- package/src/stories/argTypes.ts +1 -1
- package/src/test/expect.ts +2 -4
- package/src/types/alert.ts +11 -7
- package/src/types/blurhash.ts +21 -0
- package/src/types/generic.ts +3 -3
- package/src/types/group.ts +22 -14
- package/src/types/index.ts +7 -0
- package/src/types/input-file.ts +18 -0
- package/src/types/nav.ts +2 -3
- package/src/utils/ObjectUtilities.ts +0 -11
- package/src/workers/blurhash.ts +9 -0
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import type { Alert } from '@/types/alert';
|
|
2
|
+
type AlertInGroup = Alert & {
|
|
3
|
+
timestamp: number;
|
|
4
|
+
group: string;
|
|
5
|
+
};
|
|
2
6
|
/**
|
|
3
7
|
* @description Composable to access alert groups, alerts and functions to add, remove and get alerts by group.
|
|
4
8
|
* @example
|
|
@@ -19,9 +23,100 @@ import type { Alert } from '@/types/alert';
|
|
|
19
23
|
* }
|
|
20
24
|
*/
|
|
21
25
|
export declare const useAlert: () => {
|
|
22
|
-
groups: Map<string, Map<string,
|
|
23
|
-
|
|
24
|
-
|
|
26
|
+
groups: Map<string, Map<string, {
|
|
27
|
+
id: string | number;
|
|
28
|
+
title?: string | undefined;
|
|
29
|
+
icon?: string | {
|
|
30
|
+
name: string;
|
|
31
|
+
color?: string | undefined;
|
|
32
|
+
width?: string | number | undefined;
|
|
33
|
+
height?: string | number | undefined;
|
|
34
|
+
provider?: string | undefined;
|
|
35
|
+
prefix?: string | undefined;
|
|
36
|
+
src?: string | undefined;
|
|
37
|
+
horizontalFlip?: boolean | undefined;
|
|
38
|
+
verticalFlip?: boolean | undefined;
|
|
39
|
+
flip?: string | undefined;
|
|
40
|
+
mode?: import("@iconify/vue").IconifyRenderMode | undefined;
|
|
41
|
+
inline?: boolean | undefined;
|
|
42
|
+
rotate?: string | number | undefined;
|
|
43
|
+
onLoad?: import("@iconify/vue").IconifyIconOnLoad | undefined;
|
|
44
|
+
svg?: string | undefined;
|
|
45
|
+
modifiers?: string | string[] | undefined;
|
|
46
|
+
} | undefined;
|
|
47
|
+
content?: string | undefined;
|
|
48
|
+
footer?: string | undefined;
|
|
49
|
+
modifiers?: string | string[] | undefined;
|
|
50
|
+
dismissable?: boolean | undefined;
|
|
51
|
+
autoClose?: number | undefined;
|
|
52
|
+
closeLabel?: string | undefined;
|
|
53
|
+
role?: import("@/constants").AlertRole | undefined;
|
|
54
|
+
timestamp: number;
|
|
55
|
+
group: string;
|
|
56
|
+
}> & Omit<Map<string, AlertInGroup>, keyof Map<any, any>>> & Omit<Map<string, Map<string, AlertInGroup>>, keyof Map<any, any>>;
|
|
57
|
+
alerts: globalThis.ComputedRef<{
|
|
58
|
+
id: string | number;
|
|
59
|
+
title?: string | undefined;
|
|
60
|
+
icon?: string | {
|
|
61
|
+
name: string;
|
|
62
|
+
color?: string | undefined;
|
|
63
|
+
width?: string | number | undefined;
|
|
64
|
+
height?: string | number | undefined;
|
|
65
|
+
provider?: string | undefined;
|
|
66
|
+
prefix?: string | undefined;
|
|
67
|
+
src?: string | undefined;
|
|
68
|
+
horizontalFlip?: boolean | undefined;
|
|
69
|
+
verticalFlip?: boolean | undefined;
|
|
70
|
+
flip?: string | undefined;
|
|
71
|
+
mode?: import("@iconify/vue").IconifyRenderMode | undefined;
|
|
72
|
+
inline?: boolean | undefined;
|
|
73
|
+
rotate?: string | number | undefined;
|
|
74
|
+
onLoad?: import("@iconify/vue").IconifyIconOnLoad | undefined;
|
|
75
|
+
svg?: string | undefined;
|
|
76
|
+
modifiers?: string | string[] | undefined;
|
|
77
|
+
} | undefined;
|
|
78
|
+
content?: string | undefined;
|
|
79
|
+
footer?: string | undefined;
|
|
80
|
+
modifiers?: string | string[] | undefined;
|
|
81
|
+
dismissable?: boolean | undefined;
|
|
82
|
+
autoClose?: number | undefined;
|
|
83
|
+
closeLabel?: string | undefined;
|
|
84
|
+
role?: import("@/constants").AlertRole | undefined;
|
|
85
|
+
timestamp: number;
|
|
86
|
+
group: string;
|
|
87
|
+
}[]>;
|
|
88
|
+
addAlert: ({ id, group, title, icon, content, footer, modifiers, dismissable, autoClose, timestamp, }?: Partial<AlertInGroup>) => void;
|
|
25
89
|
removeAlert: (id: string | number, group?: string) => void;
|
|
26
|
-
getAlerts: (group?: string) => globalThis.ComputedRef<
|
|
90
|
+
getAlerts: (group?: string) => globalThis.ComputedRef<{
|
|
91
|
+
id: string | number;
|
|
92
|
+
title?: string | undefined;
|
|
93
|
+
icon?: string | {
|
|
94
|
+
name: string;
|
|
95
|
+
color?: string | undefined;
|
|
96
|
+
width?: string | number | undefined;
|
|
97
|
+
height?: string | number | undefined;
|
|
98
|
+
provider?: string | undefined;
|
|
99
|
+
prefix?: string | undefined;
|
|
100
|
+
src?: string | undefined;
|
|
101
|
+
horizontalFlip?: boolean | undefined;
|
|
102
|
+
verticalFlip?: boolean | undefined;
|
|
103
|
+
flip?: string | undefined;
|
|
104
|
+
mode?: import("@iconify/vue").IconifyRenderMode | undefined;
|
|
105
|
+
inline?: boolean | undefined;
|
|
106
|
+
rotate?: string | number | undefined;
|
|
107
|
+
onLoad?: import("@iconify/vue").IconifyIconOnLoad | undefined;
|
|
108
|
+
svg?: string | undefined;
|
|
109
|
+
modifiers?: string | string[] | undefined;
|
|
110
|
+
} | undefined;
|
|
111
|
+
content?: string | undefined;
|
|
112
|
+
footer?: string | undefined;
|
|
113
|
+
modifiers?: string | string[] | undefined;
|
|
114
|
+
dismissable?: boolean | undefined;
|
|
115
|
+
autoClose?: number | undefined;
|
|
116
|
+
closeLabel?: string | undefined;
|
|
117
|
+
role?: import("@/constants").AlertRole | undefined;
|
|
118
|
+
timestamp: number;
|
|
119
|
+
group: string;
|
|
120
|
+
}[]>;
|
|
27
121
|
};
|
|
122
|
+
export {};
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Injects alert group name
|
|
3
3
|
*/
|
|
4
|
-
export declare function useInjectedAlertGroup():
|
|
5
|
-
name?: globalThis.Ref<string | undefined> | undefined;
|
|
6
|
-
bus?: import("mitt").Emitter<{
|
|
7
|
-
close: string;
|
|
8
|
-
}> | undefined;
|
|
9
|
-
};
|
|
4
|
+
export declare function useInjectedAlertGroup(): import("../..").AlertGroupState;
|
|
@@ -1,32 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Injects dropdown reference and the event bus
|
|
3
3
|
*/
|
|
4
|
-
export declare function useInjectedDropdownTrigger():
|
|
5
|
-
id?: globalThis.Ref<string | number> | undefined;
|
|
6
|
-
reference?: globalThis.Ref<HTMLElement | null> | undefined;
|
|
7
|
-
bus?: import("mitt").Emitter<{
|
|
8
|
-
click: Event;
|
|
9
|
-
mouseover: Event;
|
|
10
|
-
mouseleave: Event;
|
|
11
|
-
}> | undefined;
|
|
12
|
-
expanded?: globalThis.Ref<boolean> | undefined;
|
|
13
|
-
aria?: globalThis.Ref<{
|
|
14
|
-
'aria-controls': string;
|
|
15
|
-
'aria-haspopup': boolean;
|
|
16
|
-
'aria-expanded': boolean;
|
|
17
|
-
}> | undefined;
|
|
18
|
-
};
|
|
4
|
+
export declare function useInjectedDropdownTrigger(): import("../../constants").DropdownTriggerState;
|
|
19
5
|
/**
|
|
20
6
|
* Injects dropdown item role
|
|
21
7
|
*/
|
|
22
|
-
export declare function useInjectedDropdownItem():
|
|
23
|
-
role?: globalThis.Ref<"option" | "presentation"> | undefined;
|
|
24
|
-
expanded?: globalThis.Ref<boolean> | undefined;
|
|
25
|
-
};
|
|
8
|
+
export declare function useInjectedDropdownItem(): import("../../constants").DropdownItemState;
|
|
26
9
|
/**
|
|
27
10
|
* Injects dropdown action role
|
|
28
11
|
*/
|
|
29
|
-
export declare function useInjectedDropdownAction():
|
|
30
|
-
role?: globalThis.Ref<"button" | "link" | "menuitem"> | undefined;
|
|
31
|
-
expanded?: globalThis.Ref<boolean> | undefined;
|
|
32
|
-
};
|
|
12
|
+
export declare function useInjectedDropdownAction(): import("../../constants").DropdownActionState;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Ref } from 'vue';
|
|
2
|
-
import { DropdownRole, DropdownItemRole } from '../../constants';
|
|
2
|
+
import { type DropdownItemState, DropdownRole, DropdownItemRole } from '../../constants';
|
|
3
3
|
/**
|
|
4
4
|
* Share the dropdown reference and the event bus with all its children.
|
|
5
5
|
* @param {Ref<HTMLElement | null>} reference the dropdown reference
|
|
@@ -19,15 +19,14 @@ export declare function useProvideDropdownTrigger({ reference, id, expanded, ari
|
|
|
19
19
|
mouseover: Event;
|
|
20
20
|
mouseleave: Event;
|
|
21
21
|
}>;
|
|
22
|
-
component: import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").
|
|
22
|
+
component: import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<globalThis.ExtractPropTypes<{}>>, {}, {}>;
|
|
23
23
|
};
|
|
24
24
|
/**
|
|
25
25
|
* Share the dropdown item role with all its children.
|
|
26
26
|
* @param {Ref<string>} role the dropdown item role
|
|
27
27
|
*/
|
|
28
|
-
export declare function useProvideDropdownItem({ role,
|
|
28
|
+
export declare function useProvideDropdownItem({ role, ...others }: Omit<DropdownItemState, 'role'> & {
|
|
29
29
|
role: Ref<`${DropdownRole}`>;
|
|
30
|
-
expanded: Ref<boolean>;
|
|
31
30
|
}): {
|
|
32
31
|
itemRole: globalThis.ComputedRef<DropdownItemRole>;
|
|
33
32
|
};
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type GroupState from '../../types/group';
|
|
1
|
+
import type { InjectionKey } from 'vue';
|
|
3
2
|
/**
|
|
4
3
|
* Injects a group state
|
|
5
4
|
*/
|
|
6
|
-
export declare function useInjectedGroupState<GroupStateType
|
|
7
|
-
group:
|
|
5
|
+
export declare function useInjectedGroupState<GroupStateType>(groupKey: InjectionKey<GroupStateType>): {
|
|
6
|
+
group: GroupStateType | undefined;
|
|
8
7
|
isInGroup: globalThis.ComputedRef<boolean>;
|
|
9
|
-
getGroupOrLocalRef: <
|
|
8
|
+
getGroupOrLocalRef: <TProps extends object, TName extends keyof GroupStateType>(propName: TName, props: TProps, emit?: (event: string, ...args: unknown[]) => void) => GroupStateType[TName];
|
|
10
9
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import type { Ref, InjectionKey } from 'vue';
|
|
2
|
+
import type { Emitter } from 'mitt';
|
|
2
3
|
/**
|
|
3
4
|
* Share part of the state of the component with all its children.
|
|
4
|
-
* @param {IGroupState} groupState the group state with all group options
|
|
5
5
|
*/
|
|
6
|
-
export declare function useProvideGroupState<
|
|
6
|
+
export declare function useProvideGroupState<TGroupState extends Record<string, Ref<unknown> | Emitter<any>>>(key: InjectionKey<TGroupState>, groupState: TGroupState): void;
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { reactive, computed } from "vue";
|
|
2
|
+
import { wrap } from "comlink";
|
|
3
|
+
import pica from "pica";
|
|
2
4
|
const DEFAULT_ALERT_AUTO_CLOSE = 1e4;
|
|
3
5
|
const DEFAULT_ALERT_MODIFIERS = "info";
|
|
4
6
|
const DEFAULT_ALERT_DISMISSABLE = true;
|
|
@@ -28,7 +30,8 @@ const useAlert = () => {
|
|
|
28
30
|
footer,
|
|
29
31
|
modifiers = DEFAULT_ALERT_MODIFIERS,
|
|
30
32
|
dismissable = DEFAULT_ALERT_DISMISSABLE,
|
|
31
|
-
autoClose = DEFAULT_ALERT_AUTO_CLOSE
|
|
33
|
+
autoClose = DEFAULT_ALERT_AUTO_CLOSE,
|
|
34
|
+
timestamp = Date.now()
|
|
32
35
|
} = {}) => {
|
|
33
36
|
if (!groups.has(group)) {
|
|
34
37
|
groups.set(group, /* @__PURE__ */ new Map());
|
|
@@ -53,7 +56,7 @@ const useAlert = () => {
|
|
|
53
56
|
modifiers,
|
|
54
57
|
dismissable,
|
|
55
58
|
autoClose,
|
|
56
|
-
timestamp
|
|
59
|
+
timestamp
|
|
57
60
|
});
|
|
58
61
|
};
|
|
59
62
|
const removeAlert = (id, group = DEFAULT_ALERT_GROUP) => {
|
|
@@ -76,6 +79,92 @@ const useAlert = () => {
|
|
|
76
79
|
getAlerts
|
|
77
80
|
};
|
|
78
81
|
};
|
|
82
|
+
const encodedJs = "IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiOwovKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCAyMDE5IEdvb2dsZSBMTEMKICAgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAogICAqL2NvbnN0IHQ9U3ltYm9sKCJDb21saW5rLnByb3h5IiksZT1TeW1ib2woIkNvbWxpbmsuZW5kcG9pbnQiKSxyPVN5bWJvbCgiQ29tbGluay5yZWxlYXNlUHJveHkiKSxuPVN5bWJvbCgiQ29tbGluay5maW5hbGl6ZXIiKSxhPVN5bWJvbCgiQ29tbGluay50aHJvd24iKSxvPXQ9PiJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXR8fCJmdW5jdGlvbiI9PXR5cGVvZiB0LHM9bmV3IE1hcChbWyJwcm94eSIse2NhbkhhbmRsZTplPT5vKGUpJiZlW3RdLHNlcmlhbGl6ZSh0KXtjb25zdHtwb3J0MTplLHBvcnQyOnJ9PW5ldyBNZXNzYWdlQ2hhbm5lbDtyZXR1cm4gaSh0LGUpLFtyLFtyXV19LGRlc2VyaWFsaXplKHQpe3JldHVybiB0LnN0YXJ0KCksbSh0LFtdLGUpO3ZhciBlfX1dLFsidGhyb3ciLHtjYW5IYW5kbGU6dD0+byh0KSYmYSBpbiB0LHNlcmlhbGl6ZSh7dmFsdWU6dH0pe2xldCBlO3JldHVybiBlPXQgaW5zdGFuY2VvZiBFcnJvcj97aXNFcnJvcjohMCx2YWx1ZTp7bWVzc2FnZTp0Lm1lc3NhZ2UsbmFtZTp0Lm5hbWUsc3RhY2s6dC5zdGFja319Ontpc0Vycm9yOiExLHZhbHVlOnR9LFtlLFtdXX0sZGVzZXJpYWxpemUodCl7aWYodC5pc0Vycm9yKXRocm93IE9iamVjdC5hc3NpZ24obmV3IEVycm9yKHQudmFsdWUubWVzc2FnZSksdC52YWx1ZSk7dGhyb3cgdC52YWx1ZX19XV0pO2Z1bmN0aW9uIGkoZSxyPWdsb2JhbFRoaXMsbz1bIioiXSl7ci5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwoZnVuY3Rpb24gcyhoKXtpZighaHx8IWguZGF0YSlyZXR1cm47aWYoIWZ1bmN0aW9uKHQsZSl7Zm9yKGNvbnN0IHIgb2YgdCl7aWYoZT09PXJ8fCIqIj09PXIpcmV0dXJuITA7aWYociBpbnN0YW5jZW9mIFJlZ0V4cCYmci50ZXN0KGUpKXJldHVybiEwfXJldHVybiExfShvLGgub3JpZ2luKSlyZXR1cm4gdm9pZCBjb25zb2xlLndhcm4oYEludmFsaWQgb3JpZ2luICcke2gub3JpZ2lufScgZm9yIGNvbWxpbmsgcHJveHlgKTtjb25zdHtpZDpjLHR5cGU6dSxwYXRoOmZ9PU9iamVjdC5hc3NpZ24oe3BhdGg6W119LGguZGF0YSksbT0oaC5kYXRhLmFyZ3VtZW50TGlzdHx8W10pLm1hcChkKTtsZXQgcDt0cnl7Y29uc3Qgcj1mLnNsaWNlKDAsLTEpLnJlZHVjZSgoKHQsZSk9PnRbZV0pLGUpLG49Zi5yZWR1Y2UoKCh0LGUpPT50W2VdKSxlKTtzd2l0Y2godSl7Y2FzZSJHRVQiOnA9bjticmVhaztjYXNlIlNFVCI6cltmLnNsaWNlKC0xKVswXV09ZChoLmRhdGEudmFsdWUpLHA9ITA7YnJlYWs7Y2FzZSJBUFBMWSI6cD1uLmFwcGx5KHIsbSk7YnJlYWs7Y2FzZSJDT05TVFJVQ1QiOnA9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5hc3NpZ24oZSx7W3RdOiEwfSl9KG5ldyBuKC4uLm0pKTticmVhaztjYXNlIkVORFBPSU5UIjp7Y29uc3R7cG9ydDE6dCxwb3J0MjpyfT1uZXcgTWVzc2FnZUNoYW5uZWw7aShlLHIpLHA9ZnVuY3Rpb24odCxlKXtyZXR1cm4gZy5zZXQodCxlKSx0fSh0LFt0XSl9YnJlYWs7Y2FzZSJSRUxFQVNFIjpwPXZvaWQgMDticmVhaztkZWZhdWx0OnJldHVybn19Y2F0Y2goeSl7cD17dmFsdWU6eSxbYV06MH19UHJvbWlzZS5yZXNvbHZlKHApLmNhdGNoKCh0PT4oe3ZhbHVlOnQsW2FdOjB9KSkpLnRoZW4oKHQ9Pntjb25zdFthLG9dPU0odCk7ci5wb3N0TWVzc2FnZShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sYSkse2lkOmN9KSxvKSwiUkVMRUFTRSI9PT11JiYoci5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixzKSxsKHIpLG4gaW4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIGVbbl0mJmVbbl0oKSl9KSkuY2F0Y2goKHQ9Pntjb25zdFtlLG5dPU0oe3ZhbHVlOm5ldyBUeXBlRXJyb3IoIlVuc2VyaWFsaXphYmxlIHJldHVybiB2YWx1ZSIpLFthXTowfSk7ci5wb3N0TWVzc2FnZShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sZSkse2lkOmN9KSxuKX0pKX0pKSxyLnN0YXJ0JiZyLnN0YXJ0KCl9ZnVuY3Rpb24gbCh0KXsoZnVuY3Rpb24odCl7cmV0dXJuIk1lc3NhZ2VQb3J0Ij09PXQuY29uc3RydWN0b3IubmFtZX0pKHQpJiZ0LmNsb3NlKCl9ZnVuY3Rpb24gaCh0KXtpZih0KXRocm93IG5ldyBFcnJvcigiUHJveHkgaGFzIGJlZW4gcmVsZWFzZWQgYW5kIGlzIG5vdCB1c2VhYmxlIil9ZnVuY3Rpb24gYyh0KXtyZXR1cm4geSh0LHt0eXBlOiJSRUxFQVNFIn0pLnRoZW4oKCgpPT57bCh0KX0pKX1jb25zdCB1PW5ldyBXZWFrTWFwLGY9IkZpbmFsaXphdGlvblJlZ2lzdHJ5ImluIGdsb2JhbFRoaXMmJm5ldyBGaW5hbGl6YXRpb25SZWdpc3RyeSgodD0+e2NvbnN0IGU9KHUuZ2V0KHQpfHwwKS0xO3Uuc2V0KHQsZSksMD09PWUmJmModCl9KSk7ZnVuY3Rpb24gbSh0LG49W10sYT1mdW5jdGlvbigpe30pe2xldCBvPSExO2NvbnN0IHM9bmV3IFByb3h5KGEse2dldChlLGEpe2lmKGgobyksYT09PXIpcmV0dXJuKCk9PnshZnVuY3Rpb24odCl7ZiYmZi51bnJlZ2lzdGVyKHQpfShzKSxjKHQpLG89ITB9O2lmKCJ0aGVuIj09PWEpe2lmKDA9PT1uLmxlbmd0aClyZXR1cm57dGhlbjooKT0+c307Y29uc3QgZT15KHQse3R5cGU6IkdFVCIscGF0aDpuLm1hcCgodD0+dC50b1N0cmluZygpKSl9KS50aGVuKGQpO3JldHVybiBlLnRoZW4uYmluZChlKX1yZXR1cm4gbSh0LFsuLi5uLGFdKX0sc2V0KGUscixhKXtoKG8pO2NvbnN0W3MsaV09TShhKTtyZXR1cm4geSh0LHt0eXBlOiJTRVQiLHBhdGg6Wy4uLm4scl0ubWFwKCh0PT50LnRvU3RyaW5nKCkpKSx2YWx1ZTpzfSxpKS50aGVuKGQpfSxhcHBseShyLGEscyl7aChvKTtjb25zdCBpPW5bbi5sZW5ndGgtMV07aWYoaT09PWUpcmV0dXJuIHkodCx7dHlwZToiRU5EUE9JTlQifSkudGhlbihkKTtpZigiYmluZCI9PT1pKXJldHVybiBtKHQsbi5zbGljZSgwLC0xKSk7Y29uc3RbbCxjXT1wKHMpO3JldHVybiB5KHQse3R5cGU6IkFQUExZIixwYXRoOm4ubWFwKCh0PT50LnRvU3RyaW5nKCkpKSxhcmd1bWVudExpc3Q6bH0sYykudGhlbihkKX0sY29uc3RydWN0KGUscil7aChvKTtjb25zdFthLHNdPXAocik7cmV0dXJuIHkodCx7dHlwZToiQ09OU1RSVUNUIixwYXRoOm4ubWFwKCh0PT50LnRvU3RyaW5nKCkpKSxhcmd1bWVudExpc3Q6YX0scykudGhlbihkKX19KTtyZXR1cm4gZnVuY3Rpb24odCxlKXtjb25zdCByPSh1LmdldChlKXx8MCkrMTt1LnNldChlLHIpLGYmJmYucmVnaXN0ZXIodCxlLHQpfShzLHQpLHN9ZnVuY3Rpb24gcCh0KXtjb25zdCBlPXQubWFwKE0pO3JldHVybltlLm1hcCgodD0+dFswXSkpLChyPWUubWFwKCh0PT50WzFdKSksQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxyKSldO3ZhciByfWNvbnN0IGc9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gTSh0KXtmb3IoY29uc3RbZSxyXW9mIHMpaWYoci5jYW5IYW5kbGUodCkpe2NvbnN0W24sYV09ci5zZXJpYWxpemUodCk7cmV0dXJuW3t0eXBlOiJIQU5ETEVSIixuYW1lOmUsdmFsdWU6bn0sYV19cmV0dXJuW3t0eXBlOiJSQVciLHZhbHVlOnR9LGcuZ2V0KHQpfHxbXV19ZnVuY3Rpb24gZCh0KXtzd2l0Y2godC50eXBlKXtjYXNlIkhBTkRMRVIiOnJldHVybiBzLmdldCh0Lm5hbWUpLmRlc2VyaWFsaXplKHQudmFsdWUpO2Nhc2UiUkFXIjpyZXR1cm4gdC52YWx1ZX19ZnVuY3Rpb24geSh0LGUscil7cmV0dXJuIG5ldyBQcm9taXNlKChuPT57Y29uc3QgYT1uZXcgQXJyYXkoNCkuZmlsbCgwKS5tYXAoKCgpPT5NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpLnRvU3RyaW5nKDE2KSkpLmpvaW4oIi0iKTt0LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLChmdW5jdGlvbiBlKHIpe3IuZGF0YSYmci5kYXRhLmlkJiZyLmRhdGEuaWQ9PT1hJiYodC5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixlKSxuKHIuZGF0YSkpfSkpLHQuc3RhcnQmJnQuc3RhcnQoKSx0LnBvc3RNZXNzYWdlKE9iamVjdC5hc3NpZ24oe2lkOmF9LGUpLHIpfSkpfXZhciBiPVsiMCIsIjEiLCIyIiwiMyIsIjQiLCI1IiwiNiIsIjciLCI4IiwiOSIsIkEiLCJCIiwiQyIsIkQiLCJFIiwiRiIsIkciLCJIIiwiSSIsIkoiLCJLIiwiTCIsIk0iLCJOIiwiTyIsIlAiLCJRIiwiUiIsIlMiLCJUIiwiVSIsIlYiLCJXIiwiWCIsIlkiLCJaIiwiYSIsImIiLCJjIiwiZCIsImUiLCJmIiwiZyIsImgiLCJpIiwiaiIsImsiLCJsIiwibSIsIm4iLCJvIiwicCIsInEiLCJyIiwicyIsInQiLCJ1IiwidiIsInciLCJ4IiwieSIsInoiLCIjIiwiJCIsIiUiLCIqIiwiKyIsIiwiLCItIiwiLiIsIjoiLCI7IiwiPSIsIj8iLCJAIiwiWyIsIl0iLCJeIiwiXyIsInsiLCJ8IiwifSIsIn4iXSx3PXQ9PntsZXQgZT0wO2ZvcihsZXQgcj0wO3I8dC5sZW5ndGg7cisrKXtsZXQgbj10W3JdO2U9ODMqZStiLmluZGV4T2Yobil9cmV0dXJuIGV9LEU9KHQsZSk9Pnt2YXIgcj0iIjtmb3IobGV0IG49MTtuPD1lO24rKyl7bGV0IGE9TWF0aC5mbG9vcih0KS9NYXRoLnBvdyg4MyxlLW4pJTgzO3IrPWJbTWF0aC5mbG9vcihhKV19cmV0dXJuIHJ9LHY9dD0+e2xldCBlPXQvMjU1O3JldHVybiBlPD0uMDQwNDU/ZS8xMi45MjpNYXRoLnBvdygoZSsuMDU1KS8xLjA1NSwyLjQpfSxTPXQ9PntsZXQgZT1NYXRoLm1heCgwLE1hdGgubWluKDEsdCkpO3JldHVybiBlPD0uMDAzMTMwOD9NYXRoLnRydW5jKDEyLjkyKmUqMjU1Ky41KTpNYXRoLnRydW5jKDI1NSooMS4wNTUqTWF0aC5wb3coZSwuNDE2NjY2NjY2NjY2NjY2NyktLjA1NSkrLjUpfSx4PSh0LGUpPT4odD0+dDwwPy0xOjEpKHQpKk1hdGgucG93KE1hdGguYWJzKHQpLGUpLGs9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3Rvcih0KXtzdXBlcih0KSx0aGlzLm5hbWU9IlZhbGlkYXRpb25FcnJvciIsdGhpcy5tZXNzYWdlPXR9fSxQPXQ9PntpZighdHx8dC5sZW5ndGg8Nil0aHJvdyBuZXcgaygiVGhlIGJsdXJoYXNoIHN0cmluZyBtdXN0IGJlIGF0IGxlYXN0IDYgY2hhcmFjdGVycyIpO2xldCBlPXcodFswXSkscj1NYXRoLmZsb29yKGUvOSkrMSxuPWUlOSsxO2lmKHQubGVuZ3RoIT09NCsyKm4qcil0aHJvdyBuZXcgayhgYmx1cmhhc2ggbGVuZ3RoIG1pc21hdGNoOiBsZW5ndGggaXMgJHt0Lmxlbmd0aH0gYnV0IGl0IHNob3VsZCBiZSAkezQrMipuKnJ9YCl9LEE9dD0+e2xldCBlPXQ+PjgmMjU1LHI9MjU1JnQ7cmV0dXJuW3YodD4+MTYpLHYoZSksdihyKV19LFQ9KHQsZSk9PntsZXQgcj1NYXRoLmZsb29yKHQvMzYxKSxuPU1hdGguZmxvb3IodC8xOSklMTksYT10JTE5O3JldHVyblt4KChyLTkpLzksMikqZSx4KChuLTkpLzksMikqZSx4KChhLTkpLzksMikqZV19LEw9KHQsZSxyLG4pPT57bGV0IGE9MCxvPTAscz0wLGk9NCplO2ZvcihsZXQgaD0wO2g8ZTtoKyspe2xldCBlPTQqaDtmb3IobGV0IGw9MDtsPHI7bCsrKXtsZXQgcj1lK2wqaSxjPW4oaCxsKTthKz1jKnYodFtyXSksbys9Yyp2KHRbcisxXSkscys9Yyp2KHRbcisyXSl9fWxldCBsPTEvKGUqcik7cmV0dXJuW2EqbCxvKmwscypsXX0sUj0odCxlLHIsbixhKT0+e2lmKG48MXx8bj45fHxhPDF8fGE+OSl0aHJvdyBuZXcgaygiQmx1ckhhc2ggbXVzdCBoYXZlIGJldHdlZW4gMSBhbmQgOSBjb21wb25lbnRzIik7aWYoZSpyKjQhPT10Lmxlbmd0aCl0aHJvdyBuZXcgaygiV2lkdGggYW5kIGhlaWdodCBtdXN0IG1hdGNoIHRoZSBwaXhlbHMgYXJyYXkiKTtsZXQgbz1bXTtmb3IobGV0IGM9MDtjPGE7YysrKWZvcihsZXQgYT0wO2E8bjthKyspe2xldCBuPTA9PWEmJjA9PWM/MToyLHM9TCh0LGUsciwoKHQsbyk9Pm4qTWF0aC5jb3MoTWF0aC5QSSphKnQvZSkqTWF0aC5jb3MoTWF0aC5QSSpjKm8vcikpKTtvLnB1c2gocyl9bGV0IHMsaT1vWzBdLGw9by5zbGljZSgxKSxoPSIiO2lmKGgrPUUobi0xKzkqKGEtMSksMSksbC5sZW5ndGg+MCl7bGV0IHQ9TWF0aC5tYXgoLi4ubC5tYXAoKHQ9Pk1hdGgubWF4KC4uLnQpKSkpLGU9TWF0aC5mbG9vcihNYXRoLm1heCgwLE1hdGgubWluKDgyLE1hdGguZmxvb3IoMTY2KnQtLjUpKSkpO3M9KGUrMSkvMTY2LGgrPUUoZSwxKX1lbHNlIHM9MSxoKz1FKDAsMSk7cmV0dXJuIGgrPUUoKHQ9PihTKHRbMF0pPDwxNikrKFModFsxXSk8PDgpK1ModFsyXSkpKGkpLDQpLGwuZm9yRWFjaCgodD0+e2grPUUoKCh0LGUpPT4xOSpNYXRoLmZsb29yKE1hdGgubWF4KDAsTWF0aC5taW4oMTgsTWF0aC5mbG9vcig5KngodFswXS9lLC41KSs5LjUpKSkpKjE5KzE5Kk1hdGguZmxvb3IoTWF0aC5tYXgoMCxNYXRoLm1pbigxOCxNYXRoLmZsb29yKDkqeCh0WzFdL2UsLjUpKzkuNSkpKSkrTWF0aC5mbG9vcihNYXRoLm1heCgwLE1hdGgubWluKDE4LE1hdGguZmxvb3IoOSp4KHRbMl0vZSwuNSkrOS41KSkpKSkodCxzKSwyKX0pKSxofTtpKHtWYWxpZGF0aW9uRXJyb3I6ayxlbmNvZGU6UixkZWNvZGU6KHQsZSxyLG4pPT57UCh0KSxufD0xO2xldCBhPXcodFswXSksbz1NYXRoLmZsb29yKGEvOSkrMSxzPWElOSsxLGk9KHcodFsxXSkrMSkvMTY2LGw9bmV3IEFycmF5KHMqbyk7Zm9yKGxldCB1PTA7dTxsLmxlbmd0aDt1KyspaWYoMD09PXUpe2xldCBlPXcodC5zdWJzdHJpbmcoMiw2KSk7bFt1XT1BKGUpfWVsc2V7bGV0IGU9dyh0LnN1YnN0cmluZyg0KzIqdSw2KzIqdSkpO2xbdV09VChlLGkqbil9bGV0IGg9NCplLGM9bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KGgqcik7Zm9yKGxldCB1PTA7dTxyO3UrKylmb3IobGV0IHQ9MDt0PGU7dCsrKXtsZXQgbj0wLGE9MCxpPTA7Zm9yKGxldCBoPTA7aDxvO2grKylmb3IobGV0IG89MDtvPHM7bysrKXtsZXQgYz1NYXRoLmNvcyhNYXRoLlBJKnQqby9lKSpNYXRoLmNvcyhNYXRoLlBJKnUqaC9yKSxmPWxbbytoKnNdO24rPWZbMF0qYyxhKz1mWzFdKmMsaSs9ZlsyXSpjfWxldCBmPVMobiksbT1TKGEpLHA9UyhpKTtjWzQqdCswK3UqaF09ZixjWzQqdCsxK3UqaF09bSxjWzQqdCsyK3UqaF09cCxjWzQqdCszK3UqaF09MjU1fXJldHVybiBjfSxpc0JsdXJoYXNoVmFsaWQ6dD0+e3RyeXtQKHQpfWNhdGNoKGUpe3JldHVybntyZXN1bHQ6ITEsZXJyb3JSZWFzb246ZS5tZXNzYWdlfX1yZXR1cm57cmVzdWx0OiEwfX19KX0oKTsK";
|
|
83
|
+
const decodeBase64 = (base64) => Uint8Array.from(atob(base64), (c) => c.charCodeAt(0));
|
|
84
|
+
const blob = typeof window !== "undefined" && window.Blob && new Blob([decodeBase64(encodedJs)], { type: "text/javascript;charset=utf-8" });
|
|
85
|
+
function WorkerWrapper(options) {
|
|
86
|
+
let objURL;
|
|
87
|
+
try {
|
|
88
|
+
objURL = blob && (window.URL || window.webkitURL).createObjectURL(blob);
|
|
89
|
+
if (!objURL)
|
|
90
|
+
throw "";
|
|
91
|
+
const worker = new Worker(objURL, {
|
|
92
|
+
name: options == null ? void 0 : options.name
|
|
93
|
+
});
|
|
94
|
+
worker.addEventListener("error", () => {
|
|
95
|
+
(window.URL || window.webkitURL).revokeObjectURL(objURL);
|
|
96
|
+
});
|
|
97
|
+
return worker;
|
|
98
|
+
} catch (e) {
|
|
99
|
+
return new Worker(
|
|
100
|
+
"data:text/javascript;base64," + encodedJs,
|
|
101
|
+
{
|
|
102
|
+
name: options == null ? void 0 : options.name
|
|
103
|
+
}
|
|
104
|
+
);
|
|
105
|
+
} finally {
|
|
106
|
+
objURL && (window.URL || window.webkitURL).revokeObjectURL(objURL);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
const remoteFunction = wrap(new WorkerWrapper());
|
|
110
|
+
function loadImage(src) {
|
|
111
|
+
return new Promise((resolve, reject) => {
|
|
112
|
+
const img = new Image();
|
|
113
|
+
img.onload = () => resolve(img);
|
|
114
|
+
img.onerror = (...args) => reject(args);
|
|
115
|
+
img.src = src;
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
const getWidthHeightFromMaxSize = (width, height, maxSize) => {
|
|
119
|
+
if (width > height) {
|
|
120
|
+
return {
|
|
121
|
+
width: maxSize,
|
|
122
|
+
height: Math.round(maxSize * (height / width))
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
return {
|
|
126
|
+
width: Math.round(maxSize * (width / height)),
|
|
127
|
+
height: maxSize
|
|
128
|
+
};
|
|
129
|
+
};
|
|
130
|
+
const resizeImage = async (image, width, height) => {
|
|
131
|
+
var _a;
|
|
132
|
+
const resizer = new pica();
|
|
133
|
+
const canvas = document.createElement("canvas");
|
|
134
|
+
canvas.width = width;
|
|
135
|
+
canvas.height = height;
|
|
136
|
+
const result = await resizer.resize(image, canvas);
|
|
137
|
+
return (_a = result.getContext("2d")) == null ? void 0 : _a.getImageData(0, 0, width, height).data;
|
|
138
|
+
};
|
|
139
|
+
const useBlurhash = () => {
|
|
140
|
+
async function encode(file) {
|
|
141
|
+
const imageUrl = URL.createObjectURL(file);
|
|
142
|
+
const image = await loadImage(imageUrl);
|
|
143
|
+
if ("width" in image && "height" in image) {
|
|
144
|
+
const { width: newWidth, height: newHeight } = getWidthHeightFromMaxSize(
|
|
145
|
+
image.width,
|
|
146
|
+
image.height,
|
|
147
|
+
32
|
|
148
|
+
);
|
|
149
|
+
const imageData = await resizeImage(
|
|
150
|
+
image,
|
|
151
|
+
newWidth,
|
|
152
|
+
newHeight
|
|
153
|
+
);
|
|
154
|
+
if (imageData) {
|
|
155
|
+
return remoteFunction.encode(
|
|
156
|
+
imageData,
|
|
157
|
+
newWidth,
|
|
158
|
+
newHeight,
|
|
159
|
+
4,
|
|
160
|
+
4
|
|
161
|
+
);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
return { encode, decode: remoteFunction.decode, loadImage };
|
|
166
|
+
};
|
|
79
167
|
export {
|
|
80
|
-
useAlert
|
|
168
|
+
useAlert,
|
|
169
|
+
useBlurhash
|
|
81
170
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).composables={},e.vue)}(this,(function(e,t){"use strict";const o="default",n="information",i=new Map([["success","check-circle"],["info",n],["warning","warning"],["danger","error"]]),s=t.reactive(new Map([[o,new Map]]));e.useAlert=()=>{const e=(e=o)=>t.computed((()=>{const t=s.get(e);return t&&t instanceof Map?Array.from(null==t?void 0:t.values()).sort(((e,t)=>e.timestamp-t.timestamp)):[]}));return{groups:s,alerts:e(),addAlert:({id:e=crypto.randomUUID(),group:t=o,title:r,icon:a=n,content:l,footer:u,modifiers:c="info",dismissable:f=true,autoClose:d=1e4}={})=>{s.has(t)||s.set(t,new Map);const p=s.get(t),m="string"==typeof c?c.split(" "):c;if(!a){const e=m.find((e=>i.has(e)));e&&(a=i.get(e))}null==p||p.set(e.toString(),{id:e,group:t,title:r,icon:a,content:l,footer:u,modifiers:c,dismissable:f,autoClose:d,timestamp:Date.now()})},removeAlert:(e,t=o)=>{const n=s.get(t);null==n||n.delete(e.toString())},getAlerts:e}},Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}));
|
|
1
|
+
!function(i,d){"object"==typeof exports&&"undefined"!=typeof module?d(exports,require("vue"),require("comlink"),require("pica")):"function"==typeof define&&define.amd?define(["exports","vue","comlink","pica"],d):d((i="undefined"!=typeof globalThis?globalThis:i||self).composables={},i.vue,i.comlink,i.pica)}(this,(function(i,d,l,b){"use strict";const c="default",o="information",s=new Map([["success","check-circle"],["info",o],["warning","warning"],["danger","error"]]),m=d.reactive(new Map([[c,new Map]])),K="IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiOwovKioKICAgKiBAbGljZW5zZQogICAqIENvcHlyaWdodCAyMDE5IEdvb2dsZSBMTEMKICAgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMAogICAqL2NvbnN0IHQ9U3ltYm9sKCJDb21saW5rLnByb3h5IiksZT1TeW1ib2woIkNvbWxpbmsuZW5kcG9pbnQiKSxyPVN5bWJvbCgiQ29tbGluay5yZWxlYXNlUHJveHkiKSxuPVN5bWJvbCgiQ29tbGluay5maW5hbGl6ZXIiKSxhPVN5bWJvbCgiQ29tbGluay50aHJvd24iKSxvPXQ9PiJvYmplY3QiPT10eXBlb2YgdCYmbnVsbCE9PXR8fCJmdW5jdGlvbiI9PXR5cGVvZiB0LHM9bmV3IE1hcChbWyJwcm94eSIse2NhbkhhbmRsZTplPT5vKGUpJiZlW3RdLHNlcmlhbGl6ZSh0KXtjb25zdHtwb3J0MTplLHBvcnQyOnJ9PW5ldyBNZXNzYWdlQ2hhbm5lbDtyZXR1cm4gaSh0LGUpLFtyLFtyXV19LGRlc2VyaWFsaXplKHQpe3JldHVybiB0LnN0YXJ0KCksbSh0LFtdLGUpO3ZhciBlfX1dLFsidGhyb3ciLHtjYW5IYW5kbGU6dD0+byh0KSYmYSBpbiB0LHNlcmlhbGl6ZSh7dmFsdWU6dH0pe2xldCBlO3JldHVybiBlPXQgaW5zdGFuY2VvZiBFcnJvcj97aXNFcnJvcjohMCx2YWx1ZTp7bWVzc2FnZTp0Lm1lc3NhZ2UsbmFtZTp0Lm5hbWUsc3RhY2s6dC5zdGFja319Ontpc0Vycm9yOiExLHZhbHVlOnR9LFtlLFtdXX0sZGVzZXJpYWxpemUodCl7aWYodC5pc0Vycm9yKXRocm93IE9iamVjdC5hc3NpZ24obmV3IEVycm9yKHQudmFsdWUubWVzc2FnZSksdC52YWx1ZSk7dGhyb3cgdC52YWx1ZX19XV0pO2Z1bmN0aW9uIGkoZSxyPWdsb2JhbFRoaXMsbz1bIioiXSl7ci5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIiwoZnVuY3Rpb24gcyhoKXtpZighaHx8IWguZGF0YSlyZXR1cm47aWYoIWZ1bmN0aW9uKHQsZSl7Zm9yKGNvbnN0IHIgb2YgdCl7aWYoZT09PXJ8fCIqIj09PXIpcmV0dXJuITA7aWYociBpbnN0YW5jZW9mIFJlZ0V4cCYmci50ZXN0KGUpKXJldHVybiEwfXJldHVybiExfShvLGgub3JpZ2luKSlyZXR1cm4gdm9pZCBjb25zb2xlLndhcm4oYEludmFsaWQgb3JpZ2luICcke2gub3JpZ2lufScgZm9yIGNvbWxpbmsgcHJveHlgKTtjb25zdHtpZDpjLHR5cGU6dSxwYXRoOmZ9PU9iamVjdC5hc3NpZ24oe3BhdGg6W119LGguZGF0YSksbT0oaC5kYXRhLmFyZ3VtZW50TGlzdHx8W10pLm1hcChkKTtsZXQgcDt0cnl7Y29uc3Qgcj1mLnNsaWNlKDAsLTEpLnJlZHVjZSgoKHQsZSk9PnRbZV0pLGUpLG49Zi5yZWR1Y2UoKCh0LGUpPT50W2VdKSxlKTtzd2l0Y2godSl7Y2FzZSJHRVQiOnA9bjticmVhaztjYXNlIlNFVCI6cltmLnNsaWNlKC0xKVswXV09ZChoLmRhdGEudmFsdWUpLHA9ITA7YnJlYWs7Y2FzZSJBUFBMWSI6cD1uLmFwcGx5KHIsbSk7YnJlYWs7Y2FzZSJDT05TVFJVQ1QiOnA9ZnVuY3Rpb24oZSl7cmV0dXJuIE9iamVjdC5hc3NpZ24oZSx7W3RdOiEwfSl9KG5ldyBuKC4uLm0pKTticmVhaztjYXNlIkVORFBPSU5UIjp7Y29uc3R7cG9ydDE6dCxwb3J0MjpyfT1uZXcgTWVzc2FnZUNoYW5uZWw7aShlLHIpLHA9ZnVuY3Rpb24odCxlKXtyZXR1cm4gZy5zZXQodCxlKSx0fSh0LFt0XSl9YnJlYWs7Y2FzZSJSRUxFQVNFIjpwPXZvaWQgMDticmVhaztkZWZhdWx0OnJldHVybn19Y2F0Y2goeSl7cD17dmFsdWU6eSxbYV06MH19UHJvbWlzZS5yZXNvbHZlKHApLmNhdGNoKCh0PT4oe3ZhbHVlOnQsW2FdOjB9KSkpLnRoZW4oKHQ9Pntjb25zdFthLG9dPU0odCk7ci5wb3N0TWVzc2FnZShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sYSkse2lkOmN9KSxvKSwiUkVMRUFTRSI9PT11JiYoci5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixzKSxsKHIpLG4gaW4gZSYmImZ1bmN0aW9uIj09dHlwZW9mIGVbbl0mJmVbbl0oKSl9KSkuY2F0Y2goKHQ9Pntjb25zdFtlLG5dPU0oe3ZhbHVlOm5ldyBUeXBlRXJyb3IoIlVuc2VyaWFsaXphYmxlIHJldHVybiB2YWx1ZSIpLFthXTowfSk7ci5wb3N0TWVzc2FnZShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sZSkse2lkOmN9KSxuKX0pKX0pKSxyLnN0YXJ0JiZyLnN0YXJ0KCl9ZnVuY3Rpb24gbCh0KXsoZnVuY3Rpb24odCl7cmV0dXJuIk1lc3NhZ2VQb3J0Ij09PXQuY29uc3RydWN0b3IubmFtZX0pKHQpJiZ0LmNsb3NlKCl9ZnVuY3Rpb24gaCh0KXtpZih0KXRocm93IG5ldyBFcnJvcigiUHJveHkgaGFzIGJlZW4gcmVsZWFzZWQgYW5kIGlzIG5vdCB1c2VhYmxlIil9ZnVuY3Rpb24gYyh0KXtyZXR1cm4geSh0LHt0eXBlOiJSRUxFQVNFIn0pLnRoZW4oKCgpPT57bCh0KX0pKX1jb25zdCB1PW5ldyBXZWFrTWFwLGY9IkZpbmFsaXphdGlvblJlZ2lzdHJ5ImluIGdsb2JhbFRoaXMmJm5ldyBGaW5hbGl6YXRpb25SZWdpc3RyeSgodD0+e2NvbnN0IGU9KHUuZ2V0KHQpfHwwKS0xO3Uuc2V0KHQsZSksMD09PWUmJmModCl9KSk7ZnVuY3Rpb24gbSh0LG49W10sYT1mdW5jdGlvbigpe30pe2xldCBvPSExO2NvbnN0IHM9bmV3IFByb3h5KGEse2dldChlLGEpe2lmKGgobyksYT09PXIpcmV0dXJuKCk9PnshZnVuY3Rpb24odCl7ZiYmZi51bnJlZ2lzdGVyKHQpfShzKSxjKHQpLG89ITB9O2lmKCJ0aGVuIj09PWEpe2lmKDA9PT1uLmxlbmd0aClyZXR1cm57dGhlbjooKT0+c307Y29uc3QgZT15KHQse3R5cGU6IkdFVCIscGF0aDpuLm1hcCgodD0+dC50b1N0cmluZygpKSl9KS50aGVuKGQpO3JldHVybiBlLnRoZW4uYmluZChlKX1yZXR1cm4gbSh0LFsuLi5uLGFdKX0sc2V0KGUscixhKXtoKG8pO2NvbnN0W3MsaV09TShhKTtyZXR1cm4geSh0LHt0eXBlOiJTRVQiLHBhdGg6Wy4uLm4scl0ubWFwKCh0PT50LnRvU3RyaW5nKCkpKSx2YWx1ZTpzfSxpKS50aGVuKGQpfSxhcHBseShyLGEscyl7aChvKTtjb25zdCBpPW5bbi5sZW5ndGgtMV07aWYoaT09PWUpcmV0dXJuIHkodCx7dHlwZToiRU5EUE9JTlQifSkudGhlbihkKTtpZigiYmluZCI9PT1pKXJldHVybiBtKHQsbi5zbGljZSgwLC0xKSk7Y29uc3RbbCxjXT1wKHMpO3JldHVybiB5KHQse3R5cGU6IkFQUExZIixwYXRoOm4ubWFwKCh0PT50LnRvU3RyaW5nKCkpKSxhcmd1bWVudExpc3Q6bH0sYykudGhlbihkKX0sY29uc3RydWN0KGUscil7aChvKTtjb25zdFthLHNdPXAocik7cmV0dXJuIHkodCx7dHlwZToiQ09OU1RSVUNUIixwYXRoOm4ubWFwKCh0PT50LnRvU3RyaW5nKCkpKSxhcmd1bWVudExpc3Q6YX0scykudGhlbihkKX19KTtyZXR1cm4gZnVuY3Rpb24odCxlKXtjb25zdCByPSh1LmdldChlKXx8MCkrMTt1LnNldChlLHIpLGYmJmYucmVnaXN0ZXIodCxlLHQpfShzLHQpLHN9ZnVuY3Rpb24gcCh0KXtjb25zdCBlPXQubWFwKE0pO3JldHVybltlLm1hcCgodD0+dFswXSkpLChyPWUubWFwKCh0PT50WzFdKSksQXJyYXkucHJvdG90eXBlLmNvbmNhdC5hcHBseShbXSxyKSldO3ZhciByfWNvbnN0IGc9bmV3IFdlYWtNYXA7ZnVuY3Rpb24gTSh0KXtmb3IoY29uc3RbZSxyXW9mIHMpaWYoci5jYW5IYW5kbGUodCkpe2NvbnN0W24sYV09ci5zZXJpYWxpemUodCk7cmV0dXJuW3t0eXBlOiJIQU5ETEVSIixuYW1lOmUsdmFsdWU6bn0sYV19cmV0dXJuW3t0eXBlOiJSQVciLHZhbHVlOnR9LGcuZ2V0KHQpfHxbXV19ZnVuY3Rpb24gZCh0KXtzd2l0Y2godC50eXBlKXtjYXNlIkhBTkRMRVIiOnJldHVybiBzLmdldCh0Lm5hbWUpLmRlc2VyaWFsaXplKHQudmFsdWUpO2Nhc2UiUkFXIjpyZXR1cm4gdC52YWx1ZX19ZnVuY3Rpb24geSh0LGUscil7cmV0dXJuIG5ldyBQcm9taXNlKChuPT57Y29uc3QgYT1uZXcgQXJyYXkoNCkuZmlsbCgwKS5tYXAoKCgpPT5NYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVIpLnRvU3RyaW5nKDE2KSkpLmpvaW4oIi0iKTt0LmFkZEV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLChmdW5jdGlvbiBlKHIpe3IuZGF0YSYmci5kYXRhLmlkJiZyLmRhdGEuaWQ9PT1hJiYodC5yZW1vdmVFdmVudExpc3RlbmVyKCJtZXNzYWdlIixlKSxuKHIuZGF0YSkpfSkpLHQuc3RhcnQmJnQuc3RhcnQoKSx0LnBvc3RNZXNzYWdlKE9iamVjdC5hc3NpZ24oe2lkOmF9LGUpLHIpfSkpfXZhciBiPVsiMCIsIjEiLCIyIiwiMyIsIjQiLCI1IiwiNiIsIjciLCI4IiwiOSIsIkEiLCJCIiwiQyIsIkQiLCJFIiwiRiIsIkciLCJIIiwiSSIsIkoiLCJLIiwiTCIsIk0iLCJOIiwiTyIsIlAiLCJRIiwiUiIsIlMiLCJUIiwiVSIsIlYiLCJXIiwiWCIsIlkiLCJaIiwiYSIsImIiLCJjIiwiZCIsImUiLCJmIiwiZyIsImgiLCJpIiwiaiIsImsiLCJsIiwibSIsIm4iLCJvIiwicCIsInEiLCJyIiwicyIsInQiLCJ1IiwidiIsInciLCJ4IiwieSIsInoiLCIjIiwiJCIsIiUiLCIqIiwiKyIsIiwiLCItIiwiLiIsIjoiLCI7IiwiPSIsIj8iLCJAIiwiWyIsIl0iLCJeIiwiXyIsInsiLCJ8IiwifSIsIn4iXSx3PXQ9PntsZXQgZT0wO2ZvcihsZXQgcj0wO3I8dC5sZW5ndGg7cisrKXtsZXQgbj10W3JdO2U9ODMqZStiLmluZGV4T2Yobil9cmV0dXJuIGV9LEU9KHQsZSk9Pnt2YXIgcj0iIjtmb3IobGV0IG49MTtuPD1lO24rKyl7bGV0IGE9TWF0aC5mbG9vcih0KS9NYXRoLnBvdyg4MyxlLW4pJTgzO3IrPWJbTWF0aC5mbG9vcihhKV19cmV0dXJuIHJ9LHY9dD0+e2xldCBlPXQvMjU1O3JldHVybiBlPD0uMDQwNDU/ZS8xMi45MjpNYXRoLnBvdygoZSsuMDU1KS8xLjA1NSwyLjQpfSxTPXQ9PntsZXQgZT1NYXRoLm1heCgwLE1hdGgubWluKDEsdCkpO3JldHVybiBlPD0uMDAzMTMwOD9NYXRoLnRydW5jKDEyLjkyKmUqMjU1Ky41KTpNYXRoLnRydW5jKDI1NSooMS4wNTUqTWF0aC5wb3coZSwuNDE2NjY2NjY2NjY2NjY2NyktLjA1NSkrLjUpfSx4PSh0LGUpPT4odD0+dDwwPy0xOjEpKHQpKk1hdGgucG93KE1hdGguYWJzKHQpLGUpLGs9Y2xhc3MgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3Rvcih0KXtzdXBlcih0KSx0aGlzLm5hbWU9IlZhbGlkYXRpb25FcnJvciIsdGhpcy5tZXNzYWdlPXR9fSxQPXQ9PntpZighdHx8dC5sZW5ndGg8Nil0aHJvdyBuZXcgaygiVGhlIGJsdXJoYXNoIHN0cmluZyBtdXN0IGJlIGF0IGxlYXN0IDYgY2hhcmFjdGVycyIpO2xldCBlPXcodFswXSkscj1NYXRoLmZsb29yKGUvOSkrMSxuPWUlOSsxO2lmKHQubGVuZ3RoIT09NCsyKm4qcil0aHJvdyBuZXcgayhgYmx1cmhhc2ggbGVuZ3RoIG1pc21hdGNoOiBsZW5ndGggaXMgJHt0Lmxlbmd0aH0gYnV0IGl0IHNob3VsZCBiZSAkezQrMipuKnJ9YCl9LEE9dD0+e2xldCBlPXQ+PjgmMjU1LHI9MjU1JnQ7cmV0dXJuW3YodD4+MTYpLHYoZSksdihyKV19LFQ9KHQsZSk9PntsZXQgcj1NYXRoLmZsb29yKHQvMzYxKSxuPU1hdGguZmxvb3IodC8xOSklMTksYT10JTE5O3JldHVyblt4KChyLTkpLzksMikqZSx4KChuLTkpLzksMikqZSx4KChhLTkpLzksMikqZV19LEw9KHQsZSxyLG4pPT57bGV0IGE9MCxvPTAscz0wLGk9NCplO2ZvcihsZXQgaD0wO2g8ZTtoKyspe2xldCBlPTQqaDtmb3IobGV0IGw9MDtsPHI7bCsrKXtsZXQgcj1lK2wqaSxjPW4oaCxsKTthKz1jKnYodFtyXSksbys9Yyp2KHRbcisxXSkscys9Yyp2KHRbcisyXSl9fWxldCBsPTEvKGUqcik7cmV0dXJuW2EqbCxvKmwscypsXX0sUj0odCxlLHIsbixhKT0+e2lmKG48MXx8bj45fHxhPDF8fGE+OSl0aHJvdyBuZXcgaygiQmx1ckhhc2ggbXVzdCBoYXZlIGJldHdlZW4gMSBhbmQgOSBjb21wb25lbnRzIik7aWYoZSpyKjQhPT10Lmxlbmd0aCl0aHJvdyBuZXcgaygiV2lkdGggYW5kIGhlaWdodCBtdXN0IG1hdGNoIHRoZSBwaXhlbHMgYXJyYXkiKTtsZXQgbz1bXTtmb3IobGV0IGM9MDtjPGE7YysrKWZvcihsZXQgYT0wO2E8bjthKyspe2xldCBuPTA9PWEmJjA9PWM/MToyLHM9TCh0LGUsciwoKHQsbyk9Pm4qTWF0aC5jb3MoTWF0aC5QSSphKnQvZSkqTWF0aC5jb3MoTWF0aC5QSSpjKm8vcikpKTtvLnB1c2gocyl9bGV0IHMsaT1vWzBdLGw9by5zbGljZSgxKSxoPSIiO2lmKGgrPUUobi0xKzkqKGEtMSksMSksbC5sZW5ndGg+MCl7bGV0IHQ9TWF0aC5tYXgoLi4ubC5tYXAoKHQ9Pk1hdGgubWF4KC4uLnQpKSkpLGU9TWF0aC5mbG9vcihNYXRoLm1heCgwLE1hdGgubWluKDgyLE1hdGguZmxvb3IoMTY2KnQtLjUpKSkpO3M9KGUrMSkvMTY2LGgrPUUoZSwxKX1lbHNlIHM9MSxoKz1FKDAsMSk7cmV0dXJuIGgrPUUoKHQ9PihTKHRbMF0pPDwxNikrKFModFsxXSk8PDgpK1ModFsyXSkpKGkpLDQpLGwuZm9yRWFjaCgodD0+e2grPUUoKCh0LGUpPT4xOSpNYXRoLmZsb29yKE1hdGgubWF4KDAsTWF0aC5taW4oMTgsTWF0aC5mbG9vcig5KngodFswXS9lLC41KSs5LjUpKSkpKjE5KzE5Kk1hdGguZmxvb3IoTWF0aC5tYXgoMCxNYXRoLm1pbigxOCxNYXRoLmZsb29yKDkqeCh0WzFdL2UsLjUpKzkuNSkpKSkrTWF0aC5mbG9vcihNYXRoLm1heCgwLE1hdGgubWluKDE4LE1hdGguZmxvb3IoOSp4KHRbMl0vZSwuNSkrOS41KSkpKSkodCxzKSwyKX0pKSxofTtpKHtWYWxpZGF0aW9uRXJyb3I6ayxlbmNvZGU6UixkZWNvZGU6KHQsZSxyLG4pPT57UCh0KSxufD0xO2xldCBhPXcodFswXSksbz1NYXRoLmZsb29yKGEvOSkrMSxzPWElOSsxLGk9KHcodFsxXSkrMSkvMTY2LGw9bmV3IEFycmF5KHMqbyk7Zm9yKGxldCB1PTA7dTxsLmxlbmd0aDt1KyspaWYoMD09PXUpe2xldCBlPXcodC5zdWJzdHJpbmcoMiw2KSk7bFt1XT1BKGUpfWVsc2V7bGV0IGU9dyh0LnN1YnN0cmluZyg0KzIqdSw2KzIqdSkpO2xbdV09VChlLGkqbil9bGV0IGg9NCplLGM9bmV3IFVpbnQ4Q2xhbXBlZEFycmF5KGgqcik7Zm9yKGxldCB1PTA7dTxyO3UrKylmb3IobGV0IHQ9MDt0PGU7dCsrKXtsZXQgbj0wLGE9MCxpPTA7Zm9yKGxldCBoPTA7aDxvO2grKylmb3IobGV0IG89MDtvPHM7bysrKXtsZXQgYz1NYXRoLmNvcyhNYXRoLlBJKnQqby9lKSpNYXRoLmNvcyhNYXRoLlBJKnUqaC9yKSxmPWxbbytoKnNdO24rPWZbMF0qYyxhKz1mWzFdKmMsaSs9ZlsyXSpjfWxldCBmPVMobiksbT1TKGEpLHA9UyhpKTtjWzQqdCswK3UqaF09ZixjWzQqdCsxK3UqaF09bSxjWzQqdCsyK3UqaF09cCxjWzQqdCszK3UqaF09MjU1fXJldHVybiBjfSxpc0JsdXJoYXNoVmFsaWQ6dD0+e3RyeXtQKHQpfWNhdGNoKGUpe3JldHVybntyZXN1bHQ6ITEsZXJyb3JSZWFzb246ZS5tZXNzYWdlfX1yZXR1cm57cmVzdWx0OiEwfX19KX0oKTsK",t="undefined"!=typeof window&&window.Blob&&new Blob([(Z=K,Uint8Array.from(atob(Z),(i=>i.charCodeAt(0))))],{type:"text/javascript;charset=utf-8"});var Z;const I=l.wrap(new function(i){let d;try{if(d=t&&(window.URL||window.webkitURL).createObjectURL(t),!d)throw"";const l=new Worker(d,{name:null==i?void 0:i.name});return l.addEventListener("error",(()=>{(window.URL||window.webkitURL).revokeObjectURL(d)})),l}catch(l){return new Worker("data:text/javascript;base64,"+K,{name:null==i?void 0:i.name})}finally{d&&(window.URL||window.webkitURL).revokeObjectURL(d)}});function p(i){return new Promise(((d,l)=>{const b=new Image;b.onload=()=>d(b),b.onerror=(...i)=>l(i),b.src=i}))}i.useAlert=()=>{const i=(i=c)=>d.computed((()=>{const d=m.get(i);return d&&d instanceof Map?Array.from(null==d?void 0:d.values()).sort(((i,d)=>i.timestamp-d.timestamp)):[]}));return{groups:m,alerts:i(),addAlert:({id:i=crypto.randomUUID(),group:d=c,title:l,icon:b=o,content:K,footer:t,modifiers:Z="info",dismissable:I=true,autoClose:p=1e4,timestamp:X=Date.now()}={})=>{m.has(d)||m.set(d,new Map);const n=m.get(d),h="string"==typeof Z?Z.split(" "):Z;if(!b){const i=h.find((i=>s.has(i)));i&&(b=s.get(i))}null==n||n.set(i.toString(),{id:i,group:d,title:l,icon:b,content:K,footer:t,modifiers:Z,dismissable:I,autoClose:p,timestamp:X})},removeAlert:(i,d=c)=>{const l=m.get(d);null==l||l.delete(i.toString())},getAlerts:i}},i.useBlurhash=()=>({encode:async function(i){const d=URL.createObjectURL(i),l=await p(d);if("width"in l&&"height"in l){const{width:i,height:d}=(c=l.width,o=l.height,s=32,c>o?{width:s,height:Math.round(s*(o/c))}:{width:Math.round(s*(c/o)),height:s}),m=await(async(i,d,l)=>{var c;const o=new b,s=document.createElement("canvas");return s.width=d,s.height=l,null==(c=(await o.resize(i,s)).getContext("2d"))?void 0:c.getImageData(0,0,d,l).data})(l,i,d);if(m)return I.encode(m,i,d,4,4)}var c,o,s},decode:I.decode,loadImage:p}),Object.defineProperty(i,Symbol.toStringTag,{value:"Module"})}));
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
declare function loadImage(src: string): Promise<CanvasImageSource>;
|
|
2
|
+
export declare const useBlurhash: () => {
|
|
3
|
+
encode: (file: File) => Promise<string | undefined>;
|
|
4
|
+
decode: import("comlink").Remote<(blurhash: string, width: number, height: number, punch?: number | undefined) => Uint8ClampedArray>;
|
|
5
|
+
loadImage: typeof loadImage;
|
|
6
|
+
};
|
|
7
|
+
export {};
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
import type { VvIconProps } from '../components/VvIcon';
|
|
3
|
+
export declare function useComponentIcon(icon?: Ref<string | VvIconProps | undefined>, iconPosition?: Ref<string | undefined>): {
|
|
4
|
+
hasIcon: globalThis.ComputedRef<VvIconProps | undefined>;
|
|
5
|
+
hasIconLeft: globalThis.ComputedRef<VvIconProps | undefined>;
|
|
6
|
+
hasIconRight: globalThis.ComputedRef<VvIconProps | undefined>;
|
|
7
|
+
hasIconTop: globalThis.ComputedRef<VvIconProps | undefined>;
|
|
8
|
+
hasIconBottom: globalThis.ComputedRef<VvIconProps | undefined>;
|
|
9
|
+
hasIconBefore: globalThis.ComputedRef<VvIconProps | undefined>;
|
|
10
|
+
hasIconAfter: globalThis.ComputedRef<VvIconProps | undefined>;
|
|
10
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function useVolver(): import("
|
|
1
|
+
export declare function useVolver(): import("..").Volver | undefined;
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import type { InjectionKey, Ref } from 'vue';
|
|
2
2
|
import type { Emitter } from 'mitt';
|
|
3
3
|
import type { Volver } from './Volver';
|
|
4
|
-
import type {
|
|
4
|
+
import type { AccordionGroupState, InputGroupState, ButtonGroupState, AlertGroupState } from './types';
|
|
5
5
|
export declare const DEFAULT_ICONIFY_PROVIDER = "vv";
|
|
6
|
+
export declare enum StorageType {
|
|
7
|
+
local = "local",
|
|
8
|
+
session = "session"
|
|
9
|
+
}
|
|
6
10
|
export declare enum Strategy {
|
|
7
11
|
absolute = "absolute",
|
|
8
12
|
fixed = "fixed"
|
|
@@ -51,46 +55,44 @@ export declare enum DropdownItemRole {
|
|
|
51
55
|
option = "option",
|
|
52
56
|
presentation = "presentation"
|
|
53
57
|
}
|
|
54
|
-
export declare enum
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
_parent = "_parent",
|
|
58
|
-
_top = "_top"
|
|
58
|
+
export declare enum AlertRole {
|
|
59
|
+
alert = "alert",
|
|
60
|
+
alertdialog = "alertdialog"
|
|
59
61
|
}
|
|
60
62
|
export declare const INJECTION_KEY_VOLVER: InjectionKey<Volver>;
|
|
61
|
-
export declare const INJECTION_KEY_BUTTON_GROUP:
|
|
62
|
-
export declare const INJECTION_KEY_RADIO_GROUP:
|
|
63
|
-
export declare const INJECTION_KEY_CHECK_GROUP:
|
|
64
|
-
export declare const INJECTION_KEY_ACCORDION_GROUP:
|
|
65
|
-
export
|
|
66
|
-
id?: Ref<string | number
|
|
67
|
-
reference?: Ref<HTMLElement | null
|
|
63
|
+
export declare const INJECTION_KEY_BUTTON_GROUP: InjectionKey<ButtonGroupState>;
|
|
64
|
+
export declare const INJECTION_KEY_RADIO_GROUP: InjectionKey<InputGroupState>;
|
|
65
|
+
export declare const INJECTION_KEY_CHECK_GROUP: InjectionKey<InputGroupState>;
|
|
66
|
+
export declare const INJECTION_KEY_ACCORDION_GROUP: InjectionKey<AccordionGroupState>;
|
|
67
|
+
export type DropdownTriggerState = {
|
|
68
|
+
id?: Ref<string | number>;
|
|
69
|
+
reference?: Ref<HTMLElement | null>;
|
|
68
70
|
bus?: Emitter<{
|
|
69
71
|
click: Event;
|
|
70
72
|
mouseover: Event;
|
|
71
73
|
mouseleave: Event;
|
|
72
|
-
}
|
|
73
|
-
expanded?: Ref<boolean
|
|
74
|
+
}>;
|
|
75
|
+
expanded?: Ref<boolean>;
|
|
74
76
|
aria?: Ref<{
|
|
75
77
|
'aria-controls': string;
|
|
76
78
|
'aria-haspopup': boolean;
|
|
77
79
|
'aria-expanded': boolean;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
export declare const
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
export
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
80
|
+
}>;
|
|
81
|
+
};
|
|
82
|
+
export declare const INJECTION_KEY_DROPDOWN_TRIGGER: InjectionKey<DropdownTriggerState>;
|
|
83
|
+
export type DropdownItemState = {
|
|
84
|
+
role?: Ref<`${DropdownItemRole}`>;
|
|
85
|
+
expanded?: Ref<boolean>;
|
|
86
|
+
focused?: Ref<boolean>;
|
|
87
|
+
hovered?: Ref<boolean>;
|
|
88
|
+
};
|
|
89
|
+
export declare const INJECTION_KEY_DROPDOWN_ITEM: InjectionKey<DropdownItemState>;
|
|
90
|
+
export type DropdownActionState = {
|
|
91
|
+
role?: Ref<`${ActionRoles}`>;
|
|
92
|
+
expanded?: Ref<boolean>;
|
|
93
|
+
};
|
|
94
|
+
export declare const INJECTION_KEY_DROPDOWN_ACTION: InjectionKey<DropdownActionState>;
|
|
95
|
+
export declare const INJECTION_KEY_ALERT_GROUP: InjectionKey<AlertGroupState>;
|
|
94
96
|
export declare const DEFAULT_ALERT_AUTO_CLOSE = 10000;
|
|
95
97
|
export declare const DEFAULT_ALERT_MODIFIERS = "info";
|
|
96
98
|
export declare const DEFAULT_ALERT_DISMISSABLE = true;
|
|
@@ -99,4 +101,4 @@ export declare const DEFAULT_ALERT_INFO_ICON = "information";
|
|
|
99
101
|
export declare const DEFAULT_ALERT_SUCCESS_ICON = "check-circle";
|
|
100
102
|
export declare const DEFAULT_ALERT_WARNING_ICON = "warning";
|
|
101
103
|
export declare const DEFAULT_ALERT_DANGER_ICON = "error";
|
|
102
|
-
export declare const DefaultAlertIconMap: Map<
|
|
104
|
+
export declare const DefaultAlertIconMap: Map<string, string>;
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
export default _default;
|
|
1
|
+
import vTooltip from '../directives/v-tooltip';
|
|
2
|
+
import vContextmenu from '../directives/v-contextmenu';
|
|
3
|
+
export { vTooltip, vContextmenu };
|