@volverjs/ui-vue 0.0.10-beta.16 → 0.0.10-beta.18
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/auto-imports.d.ts +3 -2
- package/bin/icons.js +1 -1
- package/dist/Volver.d.ts +1 -1
- package/dist/components/VvAccordion/VvAccordion.es.js +2 -1
- package/dist/components/VvAccordion/VvAccordion.umd.js +1 -1
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +4 -2
- package/dist/components/VvAccordionGroup/VvAccordionGroup.umd.js +1 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +2 -2
- package/dist/components/VvAction/VvAction.es.js +2 -1
- package/dist/components/VvAction/VvAction.umd.js +1 -1
- package/dist/components/VvAction/VvAction.vue.d.ts +1 -1
- package/dist/components/VvAlert/VvAlert.es.js +3 -2
- package/dist/components/VvAlert/VvAlert.umd.js +1 -1
- package/dist/components/VvAlert/VvAlert.vue.d.ts +1 -1
- package/dist/components/VvAlert/index.d.ts +2 -2
- package/dist/components/VvAlertGroup/VvAlertGroup.es.js +5 -3
- package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
- package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +1 -1
- package/dist/components/VvAvatar/VvAvatar.vue.d.ts +1 -1
- package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +1 -1
- package/dist/components/VvBadge/VvBadge.vue.d.ts +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +2 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.umd.js +1 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +1 -1
- package/dist/components/VvButton/VvButton.es.js +5 -3
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +7 -7
- package/dist/components/VvButton/index.d.ts +3 -3
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +2 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.umd.js +1 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +1 -1
- package/dist/components/VvCard/VvCard.vue.d.ts +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.es.js +2 -1
- package/dist/components/VvCheckbox/VvCheckbox.umd.js +1 -1
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +7 -7
- package/dist/components/VvCheckbox/index.d.ts +3 -3
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +4 -2
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.umd.js +1 -1
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +3 -3
- package/dist/components/VvCheckboxGroup/index.d.ts +1 -1
- package/dist/components/VvCombobox/VvCombobox.es.js +11 -6
- package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.vue.d.ts +3 -3
- package/dist/components/VvCombobox/index.d.ts +1 -1
- package/dist/components/VvDialog/VvDialog.es.js +60 -54
- package/dist/components/VvDialog/VvDialog.umd.js +1 -1
- package/dist/components/VvDialog/VvDialog.vue.d.ts +1 -1
- package/dist/components/VvDropdown/VvDropdown.es.js +2 -1
- package/dist/components/VvDropdown/VvDropdown.umd.js +1 -1
- package/dist/components/VvDropdown/VvDropdown.vue.d.ts +1 -1
- package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +1 -1
- package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +1 -1
- package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +1 -1
- package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +1 -1
- package/dist/components/VvDropdownAction/VvDropdownAction.es.js +2 -1
- package/dist/components/VvDropdownAction/VvDropdownAction.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.es.js +1 -1
- package/dist/components/VvIcon/VvIcon.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.vue.d.ts +23 -103
- package/dist/components/VvInputFile/VvInputFile.es.js +87 -57
- package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
- package/dist/components/VvInputFile/VvInputFile.vue.d.ts +1 -1
- package/dist/components/VvInputText/VvInputClearAction.d.ts +1 -1
- package/dist/components/VvInputText/VvInputPasswordAction.d.ts +1 -1
- package/dist/components/VvInputText/VvInputStepAction.d.ts +1 -1
- package/dist/components/VvInputText/VvInputText.es.js +48 -42
- package/dist/components/VvInputText/VvInputText.umd.js +1 -1
- package/dist/components/VvInputText/VvInputText.vue.d.ts +3 -3
- package/dist/components/VvInputText/index.d.ts +1 -1
- package/dist/components/VvNav/VvNav.es.js +7 -6
- package/dist/components/VvNav/VvNav.umd.js +1 -1
- package/dist/components/VvNav/VvNav.vue.d.ts +1 -1
- package/dist/components/VvNav/VvNavItem.vue.d.ts +1 -1
- package/dist/components/VvNav/VvNavSeparator.vue.d.ts +1 -1
- package/dist/components/VvNavItem/VvNavItem.es.js +2 -1
- package/dist/components/VvNavItem/VvNavItem.umd.js +1 -1
- package/dist/components/VvProgress/VvProgress.vue.d.ts +1 -1
- package/dist/components/VvRadio/VvRadio.es.js +2 -1
- package/dist/components/VvRadio/VvRadio.umd.js +1 -1
- package/dist/components/VvRadio/VvRadio.vue.d.ts +5 -5
- package/dist/components/VvRadio/index.d.ts +2 -2
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +4 -2
- package/dist/components/VvRadioGroup/VvRadioGroup.umd.js +1 -1
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +3 -3
- package/dist/components/VvRadioGroup/index.d.ts +1 -1
- package/dist/components/VvSelect/VvSelect.es.js +3 -2
- package/dist/components/VvSelect/VvSelect.umd.js +1 -1
- package/dist/components/VvSelect/VvSelect.vue.d.ts +3 -3
- package/dist/components/VvSelect/index.d.ts +1 -1
- package/dist/components/VvTab/VvTab.es.js +9 -7
- package/dist/components/VvTab/VvTab.umd.js +1 -1
- package/dist/components/VvTab/VvTab.vue.d.ts +2 -2
- package/dist/components/VvTextarea/VvTextarea.es.js +3 -2
- package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +5 -5
- package/dist/components/VvTextarea/index.d.ts +2 -2
- package/dist/components/VvTooltip/VvTooltip.vue.d.ts +1 -1
- package/dist/components/index.es.js +266 -210
- 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.es.js +14 -3
- package/dist/composables/index.umd.js +1 -1
- package/dist/directives/index.d.ts +3 -3
- package/dist/directives/index.es.js +3 -3
- package/dist/directives/index.umd.js +1 -1
- package/dist/directives/v-tooltip.es.js +1 -1
- package/dist/directives/v-tooltip.umd.js +1 -1
- package/dist/icons.es.js +6 -6
- package/dist/icons.umd.js +1 -1
- package/dist/index.es.js +62 -0
- package/dist/index.umd.js +1 -1
- package/dist/props/index.d.ts +5 -5
- package/dist/resolvers/unplugin.es.js +59 -6
- package/dist/resolvers/unplugin.umd.js +1 -1
- package/dist/stories/AccordionGroup/AccordionGroup.stories.d.ts +59 -117
- package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +519 -661
- package/dist/utils/ObjectUtilities.d.ts +0 -1
- package/package.json +53 -53
- package/src/Volver.ts +9 -4
- 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/VvInputFile/VvInputFile.vue +33 -10
- package/src/directives/index.ts +3 -3
- package/src/resolvers/unplugin.ts +3 -13
- package/src/utils/ObjectUtilities.ts +0 -11
|
@@ -155,14 +155,17 @@
|
|
|
155
155
|
localModelValue.value = toReturn
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
+
const currentFileIndex = ref(0)
|
|
158
159
|
const previewSrc = computed(() => {
|
|
159
160
|
if (files.value.length === 0) {
|
|
160
161
|
return
|
|
161
162
|
}
|
|
162
|
-
if (files.value[
|
|
163
|
-
return URL.createObjectURL(
|
|
163
|
+
if (files.value[currentFileIndex.value] instanceof File) {
|
|
164
|
+
return URL.createObjectURL(
|
|
165
|
+
files.value[currentFileIndex.value] as File,
|
|
166
|
+
)
|
|
164
167
|
}
|
|
165
|
-
return files.value[
|
|
168
|
+
return (files.value[currentFileIndex.value] as UploadedFile).url
|
|
166
169
|
})
|
|
167
170
|
|
|
168
171
|
onBeforeUnmount(() => {
|
|
@@ -177,6 +180,18 @@
|
|
|
177
180
|
}
|
|
178
181
|
return Math.floor(size / 1024)
|
|
179
182
|
}
|
|
183
|
+
|
|
184
|
+
const onClickDownloadFile = (file: File | UploadedFile) => {
|
|
185
|
+
const link = document.createElement('a')
|
|
186
|
+
if (file instanceof File) {
|
|
187
|
+
link.href = URL.createObjectURL(file)
|
|
188
|
+
} else if (file.url) {
|
|
189
|
+
link.href = file.url
|
|
190
|
+
}
|
|
191
|
+
link.setAttribute('download', file.name)
|
|
192
|
+
document.body.appendChild(link)
|
|
193
|
+
link.click()
|
|
194
|
+
}
|
|
180
195
|
</script>
|
|
181
196
|
|
|
182
197
|
<template>
|
|
@@ -201,7 +216,7 @@
|
|
|
201
216
|
:class="{
|
|
202
217
|
'absolute top-8 right-8': previewSrc,
|
|
203
218
|
}"
|
|
204
|
-
:icon="!previewSrc ? 'image' : 'edit'"
|
|
219
|
+
:icon="!previewSrc ? 'image' : isMultiple ? 'add' : 'edit'"
|
|
205
220
|
class="z-1"
|
|
206
221
|
@click.stop="onClick"
|
|
207
222
|
/>
|
|
@@ -209,7 +224,7 @@
|
|
|
209
224
|
<img
|
|
210
225
|
v-if="previewSrc"
|
|
211
226
|
:src="previewSrc"
|
|
212
|
-
:alt="files[
|
|
227
|
+
:alt="files[currentFileIndex].name"
|
|
213
228
|
/>
|
|
214
229
|
</picture>
|
|
215
230
|
</slot>
|
|
@@ -238,12 +253,20 @@
|
|
|
238
253
|
v-for="(file, index) in files"
|
|
239
254
|
:key="index"
|
|
240
255
|
class="vv-input-file__item"
|
|
256
|
+
@click.stop="currentFileIndex = index"
|
|
241
257
|
>
|
|
242
|
-
<
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
258
|
+
<button
|
|
259
|
+
type="button"
|
|
260
|
+
class="vv-input-file__item-icon cursor-pointer"
|
|
261
|
+
title="Download"
|
|
262
|
+
aria-label="download-file"
|
|
263
|
+
@click.stop="onClickDownloadFile(file)"
|
|
264
|
+
>
|
|
265
|
+
<VvIcon name="download" />
|
|
266
|
+
</button>
|
|
267
|
+
<div class="vv-input-file__item-name cursor-pointer">
|
|
268
|
+
{{ file.name }}
|
|
269
|
+
</div>
|
|
247
270
|
<small class="vv-input-file__item-info">
|
|
248
271
|
{{ sizeInKiB(file.size) }} KB
|
|
249
272
|
</small>
|
package/src/directives/index.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import vTooltip from '../directives/v-tooltip'
|
|
2
|
+
import vContextmenu from '../directives/v-contextmenu'
|
|
3
3
|
|
|
4
|
-
export {
|
|
4
|
+
export { vTooltip, vContextmenu }
|
|
@@ -2,17 +2,7 @@ import type {
|
|
|
2
2
|
ComponentResolver,
|
|
3
3
|
SideEffectsInfo,
|
|
4
4
|
} from 'unplugin-vue-components/types'
|
|
5
|
-
|
|
6
|
-
function kebabCase(str: string, options?: { condense: boolean }) {
|
|
7
|
-
if (typeof str !== 'string') throw new TypeError('expected a string')
|
|
8
|
-
return str
|
|
9
|
-
.trim()
|
|
10
|
-
.replace(/([a-z])([A-Z])/g, '$1-$2')
|
|
11
|
-
.replace(/\W/g, (m) => (/[À-ž]/.test(m) ? m : '-'))
|
|
12
|
-
.replace(/^-+|-+$/g, '')
|
|
13
|
-
.replace(/-{2,}/g, (m) => (options?.condense ? '-' : m))
|
|
14
|
-
.toLowerCase()
|
|
15
|
-
}
|
|
5
|
+
import { kebabCase } from 'change-case'
|
|
16
6
|
|
|
17
7
|
type ImportStyle = boolean | 'css' | 'scss'
|
|
18
8
|
|
|
@@ -47,7 +37,7 @@ export interface VolverResolverOptions {
|
|
|
47
37
|
|
|
48
38
|
const STYLE_EXCLUDE = ['vv-icon', 'vv-action']
|
|
49
39
|
const VOLVER_PREFIX = 'vv'
|
|
50
|
-
const DIRECTIVES = ['v-tooltip']
|
|
40
|
+
const DIRECTIVES = ['v-tooltip', 'v-contextmenu']
|
|
51
41
|
|
|
52
42
|
export const getStyleNames = function (kebabName: string) {
|
|
53
43
|
if (STYLE_EXCLUDE.includes(kebabName)) {
|
|
@@ -181,7 +171,7 @@ export function VolverResolver({
|
|
|
181
171
|
return {
|
|
182
172
|
from: '@volverjs/ui-vue/directives',
|
|
183
173
|
sideEffects: getSideEffects(kebabName, importStyle),
|
|
184
|
-
name
|
|
174
|
+
name: `v${name}`,
|
|
185
175
|
}
|
|
186
176
|
},
|
|
187
177
|
},
|
|
@@ -275,14 +275,3 @@ export function filterArray<T = Record<string, unknown>>(
|
|
|
275
275
|
})
|
|
276
276
|
})
|
|
277
277
|
}
|
|
278
|
-
|
|
279
|
-
export function kebabCase(value: string) {
|
|
280
|
-
if (value) {
|
|
281
|
-
return value
|
|
282
|
-
.match(
|
|
283
|
-
/[A-Z]{2,}(?=[A-Z][a-z]+[0-9]*|\b)|[A-Z]?[a-z]+[0-9]*|[A-Z]|[0-9]+/g,
|
|
284
|
-
)
|
|
285
|
-
?.join('-')
|
|
286
|
-
?.toLowerCase()
|
|
287
|
-
}
|
|
288
|
-
}
|