@leaflink/stash 50.3.0 → 50.5.0
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/assets/icons/camera.svg +1 -0
- package/assets/icons/home.svg +1 -0
- package/assets/spritesheet.svg +1 -1
- package/dist/Accordion.vue.d.ts +2 -2
- package/dist/AppNavigationItem.vue.d.ts +1 -1
- package/dist/Carousel.js +321 -324
- package/dist/Carousel.js.map +1 -1
- package/dist/Carousel.vue.d.ts +4 -0
- package/dist/DatePicker.vue.d.ts +1 -1
- package/dist/Filters.vue.d.ts +9 -9
- package/dist/Icon.js +2 -0
- package/dist/Icon.js.map +1 -1
- package/dist/Icon.vue.d.ts +1 -1
- package/dist/IconLabel.vue.d.ts +1 -1
- package/dist/Image.js +6 -166
- package/dist/Image.js.map +1 -1
- package/dist/Image.vue_vue_type_script_setup_true_lang-YUNunj71.js +169 -0
- package/dist/Image.vue_vue_type_script_setup_true_lang-YUNunj71.js.map +1 -0
- package/dist/InlineEdit.vue.d.ts +1 -1
- package/dist/ListView.vue.d.ts +15 -15
- package/dist/Module.vue.d.ts +1 -1
- package/dist/QuickAction.vue.d.ts +1 -1
- package/dist/SelectStatus.vue.d.ts +1 -1
- package/dist/TextEditor.vue.d.ts +1 -1
- package/dist/Thumbnail.js +91 -0
- package/dist/Thumbnail.js.map +1 -0
- package/dist/Thumbnail.vue.d.ts +63 -0
- package/dist/ThumbnailEmpty.js +33 -0
- package/dist/ThumbnailEmpty.js.map +1 -0
- package/dist/ThumbnailEmpty.vue.d.ts +9 -0
- package/dist/ThumbnailGroup.js +73 -0
- package/dist/ThumbnailGroup.js.map +1 -0
- package/dist/ThumbnailGroup.keys-D6WL5xQ5.js +16 -0
- package/dist/ThumbnailGroup.keys-D6WL5xQ5.js.map +1 -0
- package/dist/ThumbnailGroup.vue.d.ts +191 -0
- package/dist/Tooltip.js +6 -6
- package/dist/components.css +1 -1
- package/dist/{index-Ck3Dl09q.js → index-Bbc2pg2X.js} +3 -3
- package/dist/index-Bbc2pg2X.js.map +1 -0
- package/dist/locale.js +16 -12
- package/dist/locale.js.map +1 -1
- package/dist/useSortable.js +1 -1
- package/package.json +2 -1
- package/dist/index-Ck3Dl09q.js.map +0 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { defineComponent as h, mergeModels as m, useModel as c, computed as l, ref as g, provide as v, openBlock as o, createElementBlock as d, renderSlot as T, normalizeProps as y, guardReactiveProps as _, unref as E, Fragment as x, renderList as w, createBlock as I } from "vue";
|
|
2
|
+
import B, { moveSortableElements as k } from "./useSortable.js";
|
|
3
|
+
import S from "./ThumbnailEmpty.js";
|
|
4
|
+
import { T as C } from "./ThumbnailGroup.keys-D6WL5xQ5.js";
|
|
5
|
+
import { _ as D } from "./_plugin-vue_export-helper-CHgC5LLL.js";
|
|
6
|
+
const M = /* @__PURE__ */ h({
|
|
7
|
+
__name: "ThumbnailGroup",
|
|
8
|
+
props: /* @__PURE__ */ m({
|
|
9
|
+
draggable: { type: Boolean, default: !1 },
|
|
10
|
+
radius: { default: "rounded" },
|
|
11
|
+
removable: { type: Boolean, default: !1 },
|
|
12
|
+
showEmpty: { type: Boolean, default: !1 },
|
|
13
|
+
emptyOptions: { default: () => ({ max: 6 }) },
|
|
14
|
+
thumbnails: { default: () => [] }
|
|
15
|
+
}, {
|
|
16
|
+
activeThumbnail: {
|
|
17
|
+
default: -1
|
|
18
|
+
},
|
|
19
|
+
activeThumbnailModifiers: {}
|
|
20
|
+
}),
|
|
21
|
+
emits: /* @__PURE__ */ m(["dragStart", "dragEnd", "update:thumbnails"], ["update:activeThumbnail"]),
|
|
22
|
+
setup(s, { emit: p }) {
|
|
23
|
+
const n = p, t = s, r = c(s, "activeThumbnail"), a = l({
|
|
24
|
+
get() {
|
|
25
|
+
return t.thumbnails;
|
|
26
|
+
},
|
|
27
|
+
set(e) {
|
|
28
|
+
n("update:thumbnails", e);
|
|
29
|
+
}
|
|
30
|
+
}), u = g(null), { isDragging: i } = B({
|
|
31
|
+
ref: u,
|
|
32
|
+
list: a,
|
|
33
|
+
isEnabled: t.draggable,
|
|
34
|
+
ghostClass: "thumbnail-ghost",
|
|
35
|
+
chosenClass: "thumbnail-chosen",
|
|
36
|
+
sortInPlace: !1,
|
|
37
|
+
onDragStart: (e) => n("dragStart", e),
|
|
38
|
+
onDragEnd: (e) => {
|
|
39
|
+
r.value = e.newIndex, k({ list: a, from: e.oldIndex, to: e.newIndex }), n("dragEnd", e);
|
|
40
|
+
}
|
|
41
|
+
}), f = l(() => {
|
|
42
|
+
if (!t.showEmpty) return 0;
|
|
43
|
+
const { max: e } = t.emptyOptions || {};
|
|
44
|
+
return a.value.length < e ? e - a.value.length : 0;
|
|
45
|
+
});
|
|
46
|
+
return v(
|
|
47
|
+
C.key,
|
|
48
|
+
Object.freeze({
|
|
49
|
+
draggable: l(() => t.draggable),
|
|
50
|
+
removable: l(() => t.removable),
|
|
51
|
+
thumbnails: a,
|
|
52
|
+
radius: t.radius,
|
|
53
|
+
activeThumbnail: r,
|
|
54
|
+
isDragging: i
|
|
55
|
+
})
|
|
56
|
+
), (e, O) => (o(), d("ul", {
|
|
57
|
+
ref_key: "thumbnailRef",
|
|
58
|
+
ref: u,
|
|
59
|
+
class: "stash-thumbnail-group tw-flex tw-flex-wrap tw-gap-3",
|
|
60
|
+
"data-test": "stash-thumbnail-group"
|
|
61
|
+
}, [
|
|
62
|
+
T(e.$slots, "default", y(_({ activeThumbnail: r.value, isDragging: E(i) })), void 0, !0),
|
|
63
|
+
(o(!0), d(x, null, w(f.value, (N, b) => (o(), I(S, {
|
|
64
|
+
key: `empty_thumb_${b}`
|
|
65
|
+
}))), 128))
|
|
66
|
+
], 512));
|
|
67
|
+
}
|
|
68
|
+
}), $ = /* @__PURE__ */ D(M, [["__scopeId", "data-v-358f73aa"]]);
|
|
69
|
+
export {
|
|
70
|
+
$ as default,
|
|
71
|
+
k as moveSortableElements
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=ThumbnailGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThumbnailGroup.js","sources":["../src/components/ThumbnailGroup/ThumbnailGroup.vue"],"sourcesContent":["<script lang=\"ts\">\n export * from '../../composables/useSortable/useSortable';\n export * from './ThumbnailGroup.types';\n</script>\n\n<script setup lang=\"ts\" generic=\"Thumbnail extends ThumbnailDefinition\">\n import { computed, provide, ref } from 'vue';\n\n import useSortable, {\n moveSortableElements,\n type SortableOnDragEndEvent,\n type SortableOnDragStartEvent,\n } from '../../composables/useSortable/useSortable';\n import { ThumbnailDefinition } from '../Thumbnail/Thumbnail.types';\n import ThumbnailEmpty from '../ThumbnailEmpty/ThumbnailEmpty.vue';\n import { THUMBNAIL_INJECTION } from './ThumbnailGroup.keys';\n import type { ThumbnailEmptyOptions, ThumbnailRadius } from './ThumbnailGroup.types';\n\n interface ThumbnailProps {\n /**\n * Enable drag and drop functionality\n * @default false\n */\n draggable?: boolean;\n\n /**\n * Thumbnail radius. Can be 'rounded' or 'circle'\n * @default 'rounded'\n */\n radius?: ThumbnailRadius;\n\n /**\n * Shows a close button on the thumbnail when set to true\n * @default false\n */\n removable?: boolean;\n\n /**\n * Shows empty thumbnails when set to true\n */\n showEmpty?: boolean;\n\n /**\n * Empty thumbnail options. Only applicable when `showEmpty` is true\n * @default { max: 6 }\n */\n emptyOptions?: ThumbnailEmptyOptions;\n\n /**\n * List of thumbnails to display\n * @default []\n */\n thumbnails?: Thumbnail[];\n }\n\n const emit = defineEmits<{\n /**\n * Emits when a thumbnail starts dragging\n */\n dragStart: [event: SortableOnDragStartEvent];\n\n /**\n * Emits when a thumbnail stops dragging\n */\n dragEnd: [event: SortableOnDragEndEvent];\n\n /**\n * Emits when the thumbnails are updated\n */\n 'update:thumbnails': [thumbnails: Thumbnail[]];\n }>();\n\n const props = withDefaults(defineProps<ThumbnailProps>(), {\n thumbnails: () => [],\n draggable: false,\n radius: 'rounded',\n variant: 'opaque',\n removable: false,\n showEmpty: false,\n emptyOptions: () => ({ max: 6 }),\n });\n\n /**\n * The active thumbnail index\n */\n const activeThumbnail = defineModel<number>('activeThumbnail', {\n default: -1,\n });\n\n const internalThumbnails = computed({\n get() {\n return props.thumbnails;\n },\n set(value) {\n emit('update:thumbnails', value);\n },\n });\n\n const thumbnailRef = ref<HTMLElement | null>(null);\n const { isDragging } = useSortable({\n ref: thumbnailRef,\n list: internalThumbnails,\n isEnabled: props.draggable,\n ghostClass: 'thumbnail-ghost',\n chosenClass: 'thumbnail-chosen',\n sortInPlace: false,\n onDragStart: (e) => emit('dragStart', e),\n onDragEnd: (e) => {\n activeThumbnail.value = e.newIndex;\n moveSortableElements({ list: internalThumbnails, from: e.oldIndex, to: e.newIndex });\n emit('dragEnd', e);\n },\n });\n\n const emptyThumbnailsCount = computed(() => {\n if (!props.showEmpty) return 0;\n\n const { max } = props.emptyOptions || {};\n\n return internalThumbnails.value.length < max ? max - internalThumbnails.value.length : 0;\n });\n\n provide(\n THUMBNAIL_INJECTION.key,\n Object.freeze({\n draggable: computed(() => props.draggable),\n removable: computed(() => props.removable),\n thumbnails: internalThumbnails,\n radius: props.radius,\n activeThumbnail,\n isDragging,\n }),\n );\n</script>\n\n<template>\n <ul ref=\"thumbnailRef\" class=\"stash-thumbnail-group tw-flex tw-flex-wrap tw-gap-3\" data-test=\"stash-thumbnail-group\">\n <slot v-bind=\"{ activeThumbnail, isDragging }\"></slot>\n\n <ThumbnailEmpty v-for=\"(_, index) in emptyThumbnailsCount\" :key=\"`empty_thumb_${index}`\" />\n </ul>\n</template>\n\n<style>\n .thumbnail-ghost {\n .stash-thumbnail-item__img {\n border: 1px solid var(-color-blue-500);\n mask-image: none !important;\n box-shadow: theme('boxShadow.DEFAULT');\n }\n\n .stash-thumbnail-item__remove {\n opacity: 0;\n }\n }\n</style>\n\n<style scoped>\n :deep(.thumbnail-chosen) {\n opacity: 0 !important;\n }\n</style>\n"],"names":["emit","__emit","props","__props","activeThumbnail","_useModel","internalThumbnails","computed","value","thumbnailRef","ref","isDragging","useSortable","moveSortableElements","emptyThumbnailsCount","max","provide","THUMBNAIL_INJECTION"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAuDE,UAAMA,IAAOC,GAiBPC,IAAQC,GAaRC,IAAkBC,EAAoBF,GAAA,iBAE3C,GAEKG,IAAqBC,EAAS;AAAA,MAClC,MAAM;AACJ,eAAOL,EAAM;AAAA,MACf;AAAA,MACA,IAAIM,GAAO;AACT,QAAAR,EAAK,qBAAqBQ,CAAK;AAAA,MACjC;AAAA,IAAA,CACD,GAEKC,IAAeC,EAAwB,IAAI,GAC3C,EAAE,YAAAC,EAAW,IAAIC,EAAY;AAAA,MACjC,KAAKH;AAAA,MACL,MAAMH;AAAA,MACN,WAAWJ,EAAM;AAAA,MACjB,YAAY;AAAA,MACZ,aAAa;AAAA,MACb,aAAa;AAAA,MACb,aAAa,CAAC,MAAMF,EAAK,aAAa,CAAC;AAAA,MACvC,WAAW,CAAC,MAAM;AAChB,QAAAI,EAAgB,QAAQ,EAAE,UACLS,EAAA,EAAE,MAAMP,GAAoB,MAAM,EAAE,UAAU,IAAI,EAAE,SAAA,CAAU,GACnFN,EAAK,WAAW,CAAC;AAAA,MACnB;AAAA,IAAA,CACD,GAEKc,IAAuBP,EAAS,MAAM;AACtC,UAAA,CAACL,EAAM,UAAkB,QAAA;AAE7B,YAAM,EAAE,KAAAa,EAAQ,IAAAb,EAAM,gBAAgB,CAAA;AAEtC,aAAOI,EAAmB,MAAM,SAASS,IAAMA,IAAMT,EAAmB,MAAM,SAAS;AAAA,IAAA,CACxF;AAED,WAAAU;AAAA,MACEC,EAAoB;AAAA,MACpB,OAAO,OAAO;AAAA,QACZ,WAAWV,EAAS,MAAML,EAAM,SAAS;AAAA,QACzC,WAAWK,EAAS,MAAML,EAAM,SAAS;AAAA,QACzC,YAAYI;AAAA,QACZ,QAAQJ,EAAM;AAAA,QACd,iBAAAE;AAAA,QACA,YAAAO;AAAA,MAAA,CACD;AAAA,IAAA;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { computed as e, ref as a } from "vue";
|
|
2
|
+
const l = Object.freeze({
|
|
3
|
+
key: Symbol("THUMBNAIL_INJECTION_KEY"),
|
|
4
|
+
defaults: Object.freeze({
|
|
5
|
+
radius: "rounded",
|
|
6
|
+
draggable: e(() => !1),
|
|
7
|
+
removable: e(() => !1),
|
|
8
|
+
thumbnails: e(() => []),
|
|
9
|
+
activeThumbnail: a(void 0),
|
|
10
|
+
isDragging: a(!1)
|
|
11
|
+
})
|
|
12
|
+
});
|
|
13
|
+
export {
|
|
14
|
+
l as T
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=ThumbnailGroup.keys-D6WL5xQ5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThumbnailGroup.keys-D6WL5xQ5.js","sources":["../src/components/ThumbnailGroup/ThumbnailGroup.keys.ts"],"sourcesContent":["import { computed, ref } from 'vue';\n\nimport { InjectionWithDefaults } from '../../../types/utils';\nimport { ThumbnailDefinition } from '../Thumbnail/Thumbnail.types';\nimport { ThumbnailInjection, ThumbnailRadius } from './ThumbnailGroup.types';\n\n// See: https://vuejs.org/guide/typescript/composition-api.html#typing-provide-inject\nexport const THUMBNAIL_INJECTION: InjectionWithDefaults<ThumbnailInjection<ThumbnailDefinition>> = Object.freeze({\n key: Symbol('THUMBNAIL_INJECTION_KEY'),\n defaults: Object.freeze({\n radius: 'rounded' as ThumbnailRadius,\n draggable: computed(() => false),\n removable: computed(() => false),\n thumbnails: computed(() => [] as ThumbnailDefinition[]),\n activeThumbnail: ref(undefined),\n isDragging: ref(false),\n }),\n});\n"],"names":["THUMBNAIL_INJECTION","computed","ref"],"mappings":";AAOa,MAAAA,IAAsF,OAAO,OAAO;AAAA,EAC/G,KAAK,OAAO,yBAAyB;AAAA,EACrC,UAAU,OAAO,OAAO;AAAA,IACtB,QAAQ;AAAA,IACR,WAAWC,EAAS,MAAM,EAAK;AAAA,IAC/B,WAAWA,EAAS,MAAM,EAAK;AAAA,IAC/B,YAAYA,EAAS,MAAM,EAA2B;AAAA,IACtD,iBAAiBC,EAAI,MAAS;AAAA,IAC9B,YAAYA,EAAI,EAAK;AAAA,EAAA,CACtB;AACH,CAAC;"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { AllowedComponentProps } from 'vue';
|
|
2
|
+
import { ComponentCustomProps } from 'vue';
|
|
3
|
+
import { ComputedRef } from 'vue';
|
|
4
|
+
import { MaybeRefOrGetter } from 'vue';
|
|
5
|
+
import { Ref } from 'vue';
|
|
6
|
+
import { RendererElement } from 'vue';
|
|
7
|
+
import { RendererNode } from 'vue';
|
|
8
|
+
import { ShallowUnwrapRef } from 'vue';
|
|
9
|
+
import { VNode } from 'vue';
|
|
10
|
+
import { VNodeProps } from 'vue';
|
|
11
|
+
|
|
12
|
+
declare const _default: <Thumbnail extends ThumbnailDefinition>(__VLS_props: {
|
|
13
|
+
radius?: ThumbnailRadius | undefined;
|
|
14
|
+
draggable?: boolean | undefined;
|
|
15
|
+
removable?: boolean | undefined;
|
|
16
|
+
thumbnails?: Thumbnail[] | undefined;
|
|
17
|
+
activeThumbnail?: number | undefined;
|
|
18
|
+
readonly onDragStart?: ((event: SortableOnDragStartEvent) => any) | undefined;
|
|
19
|
+
readonly onDragEnd?: ((event: SortableDragEvent) => any) | undefined;
|
|
20
|
+
readonly "onUpdate:thumbnails"?: ((thumbnails: Thumbnail[]) => any) | undefined;
|
|
21
|
+
showEmpty?: boolean | undefined;
|
|
22
|
+
emptyOptions?: ThumbnailEmptyOptions | undefined;
|
|
23
|
+
} & VNodeProps & AllowedComponentProps & ComponentCustomProps, __VLS_ctx?: {
|
|
24
|
+
attrs: any;
|
|
25
|
+
slots: {
|
|
26
|
+
default?(_: {
|
|
27
|
+
activeThumbnail: number;
|
|
28
|
+
isDragging: boolean;
|
|
29
|
+
}): any;
|
|
30
|
+
};
|
|
31
|
+
emit: ((evt: "dragStart", event: SortableOnDragStartEvent) => void) & ((evt: "dragEnd", event: SortableDragEvent) => void) & ((evt: "update:thumbnails", thumbnails: Thumbnail[]) => void);
|
|
32
|
+
} | undefined, __VLS_expose?: ((exposed: ShallowUnwrapRef< {}>) => void) | undefined, __VLS_setup?: Promise<{
|
|
33
|
+
props: {
|
|
34
|
+
radius?: ThumbnailRadius | undefined;
|
|
35
|
+
draggable?: boolean | undefined;
|
|
36
|
+
removable?: boolean | undefined;
|
|
37
|
+
thumbnails?: Thumbnail[] | undefined;
|
|
38
|
+
activeThumbnail?: number | undefined;
|
|
39
|
+
readonly onDragStart?: ((event: SortableOnDragStartEvent) => any) | undefined;
|
|
40
|
+
readonly onDragEnd?: ((event: SortableDragEvent) => any) | undefined;
|
|
41
|
+
readonly "onUpdate:thumbnails"?: ((thumbnails: Thumbnail[]) => any) | undefined;
|
|
42
|
+
showEmpty?: boolean | undefined;
|
|
43
|
+
emptyOptions?: ThumbnailEmptyOptions | undefined;
|
|
44
|
+
} & VNodeProps & AllowedComponentProps & ComponentCustomProps;
|
|
45
|
+
expose(exposed: ShallowUnwrapRef< {}>): void;
|
|
46
|
+
attrs: any;
|
|
47
|
+
slots: {
|
|
48
|
+
default?(_: {
|
|
49
|
+
activeThumbnail: number;
|
|
50
|
+
isDragging: boolean;
|
|
51
|
+
}): any;
|
|
52
|
+
};
|
|
53
|
+
emit: ((evt: "dragStart", event: SortableOnDragStartEvent) => void) & ((evt: "dragEnd", event: SortableDragEvent) => void) & ((evt: "update:thumbnails", thumbnails: Thumbnail[]) => void);
|
|
54
|
+
}>) => VNode<RendererNode, RendererElement, {
|
|
55
|
+
[key: string]: any;
|
|
56
|
+
}> & {
|
|
57
|
+
__ctx?: {
|
|
58
|
+
props: {
|
|
59
|
+
radius?: ThumbnailRadius | undefined;
|
|
60
|
+
draggable?: boolean | undefined;
|
|
61
|
+
removable?: boolean | undefined;
|
|
62
|
+
thumbnails?: Thumbnail[] | undefined;
|
|
63
|
+
activeThumbnail?: number | undefined;
|
|
64
|
+
readonly onDragStart?: ((event: SortableOnDragStartEvent) => any) | undefined;
|
|
65
|
+
readonly onDragEnd?: ((event: SortableDragEvent) => any) | undefined;
|
|
66
|
+
readonly "onUpdate:thumbnails"?: ((thumbnails: Thumbnail[]) => any) | undefined;
|
|
67
|
+
showEmpty?: boolean | undefined;
|
|
68
|
+
emptyOptions?: ThumbnailEmptyOptions | undefined;
|
|
69
|
+
} & VNodeProps & AllowedComponentProps & ComponentCustomProps;
|
|
70
|
+
expose(exposed: ShallowUnwrapRef< {}>): void;
|
|
71
|
+
attrs: any;
|
|
72
|
+
slots: {
|
|
73
|
+
default?(_: {
|
|
74
|
+
activeThumbnail: number;
|
|
75
|
+
isDragging: boolean;
|
|
76
|
+
}): any;
|
|
77
|
+
};
|
|
78
|
+
emit: ((evt: "dragStart", event: SortableOnDragStartEvent) => void) & ((evt: "dragEnd", event: SortableDragEvent) => void) & ((evt: "update:thumbnails", thumbnails: Thumbnail[]) => void);
|
|
79
|
+
} | undefined;
|
|
80
|
+
};
|
|
81
|
+
export default _default;
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Move sortable elements in the list
|
|
85
|
+
* @param list List of sortable elements
|
|
86
|
+
* @param from Original element position
|
|
87
|
+
* @param to New element position
|
|
88
|
+
*/
|
|
89
|
+
export declare function moveSortableElements<ListItem>({ list, from, to }: MoveSortableElementsOptions<ListItem>): void;
|
|
90
|
+
|
|
91
|
+
export declare interface MoveSortableElementsOptions<T> {
|
|
92
|
+
list: RefOrGetter<T[]>;
|
|
93
|
+
from: number;
|
|
94
|
+
to: number;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Like the MaybeRefOrGetter type from Vue, but without the Maybe. Can be used to ensure the most up-to-date value is available.
|
|
99
|
+
*/
|
|
100
|
+
declare type RefOrGetter<T> = Ref<T> | (() => T);
|
|
101
|
+
|
|
102
|
+
export declare interface SortableDragEvent extends DragEvent {
|
|
103
|
+
/**
|
|
104
|
+
* The old index of the dragged element
|
|
105
|
+
*/
|
|
106
|
+
oldIndex: number;
|
|
107
|
+
/**
|
|
108
|
+
* The new index of the dragged element
|
|
109
|
+
*/
|
|
110
|
+
newIndex: number;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export declare type SortableOnDragEndEvent = SortableDragEvent;
|
|
114
|
+
|
|
115
|
+
export declare type SortableOnDragStartEvent = Omit<SortableDragEvent, 'newIndex'>;
|
|
116
|
+
|
|
117
|
+
declare interface ThumbnailDefinition {
|
|
118
|
+
id: number | string;
|
|
119
|
+
imageUrl: string;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
export declare interface ThumbnailEmptyOptions {
|
|
123
|
+
max: number;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export declare interface ThumbnailInjection<Thumbnail> {
|
|
127
|
+
isDragging: MaybeRefOrGetter<boolean>;
|
|
128
|
+
radius: ThumbnailRadius;
|
|
129
|
+
draggable: ComputedRef<boolean>;
|
|
130
|
+
removable: MaybeRefOrGetter<boolean>;
|
|
131
|
+
thumbnails: MaybeRefOrGetter<Thumbnail[]>;
|
|
132
|
+
activeThumbnail: Ref<number | undefined>;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
export declare type ThumbnailRadius = 'rounded' | 'circle';
|
|
136
|
+
|
|
137
|
+
export declare interface UseSortableOptions<SortableItem> {
|
|
138
|
+
/**
|
|
139
|
+
* The parent element of the sortable elements
|
|
140
|
+
*/
|
|
141
|
+
ref: Ref<HTMLElement | null>;
|
|
142
|
+
/**
|
|
143
|
+
* The list of sortable elements to be sorted
|
|
144
|
+
*/
|
|
145
|
+
list: Ref<SortableItem[]>;
|
|
146
|
+
/**
|
|
147
|
+
* Enables/Disables drag and drop sorting
|
|
148
|
+
* @default true
|
|
149
|
+
*/
|
|
150
|
+
isEnabled?: boolean;
|
|
151
|
+
/**
|
|
152
|
+
* Class name for the ghost element
|
|
153
|
+
* @default ''
|
|
154
|
+
*/
|
|
155
|
+
ghostClass?: string;
|
|
156
|
+
/**
|
|
157
|
+
* Class name for the chosen element
|
|
158
|
+
* @default ''
|
|
159
|
+
*/
|
|
160
|
+
chosenClass?: string;
|
|
161
|
+
/**
|
|
162
|
+
* Sort the list in place
|
|
163
|
+
* @default true
|
|
164
|
+
*/
|
|
165
|
+
sortInPlace?: boolean;
|
|
166
|
+
/**
|
|
167
|
+
* Callback when the dragging starts
|
|
168
|
+
*/
|
|
169
|
+
onDragStart?: (e: SortableOnDragStartEvent) => void;
|
|
170
|
+
/**
|
|
171
|
+
* Callback when the dragging ends
|
|
172
|
+
*/
|
|
173
|
+
onDragEnd?: (e: SortableOnDragEndEvent) => void;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
export declare interface UseSortableReturn {
|
|
177
|
+
/**
|
|
178
|
+
* Whether the element is currently being dragged
|
|
179
|
+
*/
|
|
180
|
+
isDragging: Ref<boolean>;
|
|
181
|
+
/**
|
|
182
|
+
* The new position of the dragged element
|
|
183
|
+
*/
|
|
184
|
+
newIndex: Ref<number>;
|
|
185
|
+
/**
|
|
186
|
+
* The original position of the dragged element
|
|
187
|
+
*/
|
|
188
|
+
oldIndex: Ref<number>;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
export { }
|
package/dist/Tooltip.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { defineComponent as g, ref as n, computed as r, openBlock as d, createElementBlock as S, createElementVNode as i, renderSlot as l, createBlock as T, Teleport as E, normalizeStyle as
|
|
1
|
+
import { defineComponent as g, ref as n, computed as r, openBlock as d, createElementBlock as S, createElementVNode as i, renderSlot as l, createBlock as T, Teleport as E, normalizeStyle as f, unref as $, createTextVNode as k, toDisplayString as O } from "vue";
|
|
2
2
|
import { u as A, a as B, f as F, o as D, b as I } from "./floating-ui.vue-BmfQDqE-.js";
|
|
3
|
-
import {
|
|
3
|
+
import { a as P } from "./index-Bbc2pg2X.js";
|
|
4
4
|
const z = {
|
|
5
5
|
ref: "wrapper",
|
|
6
6
|
class: "stash-tooltip__wrapper tw-relative tw-inline-flex tw-h-fit tw-w-fit"
|
|
@@ -13,13 +13,13 @@ const z = {
|
|
|
13
13
|
teleportTo: { default: "#stash-menus-mount-node" },
|
|
14
14
|
text: { default: "" }
|
|
15
15
|
},
|
|
16
|
-
setup(
|
|
16
|
+
setup(u) {
|
|
17
17
|
const m = {
|
|
18
18
|
top: "bottom",
|
|
19
19
|
right: "left",
|
|
20
20
|
bottom: "top",
|
|
21
21
|
left: "right"
|
|
22
|
-
}, e =
|
|
22
|
+
}, e = u, a = n(null), p = n(null), c = n(null), { isOutside: h } = P(a), _ = r(() => !h.value || e.isOpen), y = r(() => e.side), { floatingStyles: x, middlewareData: o, placement: v } = A(a, c, {
|
|
23
23
|
whileElementsMounted: B,
|
|
24
24
|
placement: y,
|
|
25
25
|
middleware: [F(), D(N), I({ element: p })]
|
|
@@ -51,7 +51,7 @@ const z = {
|
|
|
51
51
|
"data-test": "stash-tooltip",
|
|
52
52
|
class: "stash-tooltip tw-pointer-events-none tw-z-screen tw-flex tw-w-[148px] tw-flex-col tw-items-center tw-whitespace-normal tw-rounded tw-bg-ice-900 tw-p-3 tw-text-center tw-text-xs tw-text-white tw-opacity-0 tw-shadow tw-transition-opacity",
|
|
53
53
|
role: "tooltip",
|
|
54
|
-
style:
|
|
54
|
+
style: f({
|
|
55
55
|
...$(x),
|
|
56
56
|
opacity: _.value ? 0.95 : 0
|
|
57
57
|
})
|
|
@@ -65,7 +65,7 @@ const z = {
|
|
|
65
65
|
ref_key: "floatingArrow",
|
|
66
66
|
ref: p,
|
|
67
67
|
class: "stash-tooltip__arrow tw-absolute tw-z-behind tw-h-[12px] tw-w-[12px] tw-rotate-45 tw-bg-ice-900",
|
|
68
|
-
style:
|
|
68
|
+
style: f(b.value)
|
|
69
69
|
}, null, 4)
|
|
70
70
|
], 4)
|
|
71
71
|
], 8, ["to", "disabled"]))
|