vlite3 1.4.31 → 1.4.33
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/components/Accordion/Accordion.vue.js +19 -16
- package/components/Accordion/AccordionContent.vue.js +2 -2
- package/components/Accordion/AccordionItem.vue.js +38 -36
- package/components/CategoryManager/CategoryManager.vue2.js +4 -3
- package/components/CategoryManager/CategoryNode.vue.js +30 -30
- package/components/CategoryMenu/CategoryMenu.vue.js +9 -11
- package/components/Chart/GanttChart.vue.d.ts +18 -2
- package/components/Chart/GanttChart.vue.js +1 -1
- package/components/Chart/GanttChart.vue2.js +1347 -604
- package/components/Chart/GanttChartConnectorRouting.d.ts +83 -0
- package/components/Chart/GanttChartConnectorRouting.js +405 -0
- package/components/Chart/GanttChartDateUtils.d.ts +38 -0
- package/components/Chart/GanttChartDateUtils.js +79 -0
- package/components/Chart/GanttChartDependencyUtils.d.ts +92 -0
- package/components/Chart/GanttChartDependencyUtils.js +109 -0
- package/components/Chart/GanttChartResizePreviewUtils.d.ts +52 -0
- package/components/Chart/GanttChartResizePreviewUtils.js +53 -0
- package/components/Chart/GanttChartTooltipUtils.d.ts +41 -0
- package/components/Chart/GanttChartTooltipUtils.js +63 -0
- package/components/Chart/index.d.ts +3 -1
- package/components/Chart/types.d.ts +92 -2
- package/components/Chart/types.js +8 -0
- package/components/ColorPicker/ColorIro.vue2.js +155 -0
- package/components/ColorPicker/ColorIro.vue3.js +2 -2
- package/components/ColorPicker/ColorPicker.vue.d.ts +5 -0
- package/components/ColorPicker/ColorPicker.vue.js +111 -65
- package/components/ColorPicker/constants.d.ts +2 -0
- package/components/ColorPicker/constants.js +4 -0
- package/components/ColorPicker/index.d.ts +1 -0
- package/components/CommandPalette/CommandPaletteContent.vue2.js +1 -1
- package/components/CommandPalette/{CommandPaletteItem.vue.js → CommandPaletteItem.vue2.js} +1 -1
- package/components/Dropdown/Dropdown.vue.js +100 -97
- package/components/Dropdown/DropdownMenu.vue.js +1 -1
- package/components/Form/AccordionView.vue.js +5 -220
- package/components/Form/AccordionView.vue3.js +250 -0
- package/components/Form/Form.vue.js +2 -2
- package/components/Form/Form.vue2.js +309 -280
- package/components/Form/FormField.vue.js +177 -197
- package/components/Form/FormFields.vue.js +1 -1
- package/components/Form/FormFields.vue2.js +60 -60
- package/components/Form/FormSkeleton.vue.js +50 -35
- package/components/Form/TableView.vue.js +59 -43
- package/components/Form/composables/useForm.js +159 -148
- package/components/Form/index.vue2.js +7 -7
- package/components/Form/utils/form.utils.d.ts +2 -0
- package/components/Form/utils/form.utils.js +17 -13
- package/components/GoogleMap.vue.d.ts +1 -1
- package/components/Kanban/Kanban.vue.d.ts +16 -2
- package/components/Kanban/Kanban.vue.js +2 -2
- package/components/Kanban/Kanban.vue2.js +150 -86
- package/components/Kanban/types.d.ts +37 -0
- package/components/NavbarCommandPalette.vue.js +1 -1
- package/components/PanZoomViewport/PanZoomViewport.vue.d.ts +189 -0
- package/components/PanZoomViewport/PanZoomViewport.vue.js +7 -0
- package/components/PanZoomViewport/PanZoomViewport.vue2.js +536 -0
- package/components/PanZoomViewport/index.d.ts +2 -0
- package/components/PanZoomViewport/types.d.ts +121 -0
- package/components/ScaleGenerator/ScaleGenerator.vue.d.ts +3 -0
- package/components/ScaleGenerator/ScaleGenerator.vue.js +5 -108
- package/components/ScaleGenerator/ScaleGenerator.vue2.js +143 -2
- package/components/ScaleGenerator/types.d.ts +2 -0
- package/components/Screen/ScreenFilter.vue.js +19 -18
- package/components/SeoProvider/SeoProvider.vue.d.ts +4 -1
- package/components/SeoProvider/SeoProvider.vue.js +39 -33
- package/components/SeoProvider/domAdapter.d.ts +1 -4
- package/components/SeoProvider/domAdapter.js +71 -58
- package/components/SeoProvider/index.d.ts +5 -2
- package/components/SeoProvider/normalizeSeo.d.ts +10 -49
- package/components/SeoProvider/normalizeSeo.js +246 -182
- package/components/SeoProvider/plainText.d.ts +8 -0
- package/components/SeoProvider/plainText.js +117 -0
- package/components/SeoProvider/seoUrl.d.ts +13 -0
- package/components/SeoProvider/seoUrl.js +25 -0
- package/components/SeoProvider/structuredData.d.ts +100 -0
- package/components/SeoProvider/structuredData.js +33 -0
- package/components/SeoProvider/types.d.ts +47 -109
- package/components/Tabes/Tabes.vue.js +1 -1
- package/components/Tabes/Tabes.vue2.js +215 -193
- package/components/Tabes/TabesMarkerGeometry.d.ts +34 -0
- package/components/Tabes/TabesMarkerGeometry.js +21 -0
- package/components/ThemeProvider/ThemeProvider.vue.d.ts +2 -0
- package/components/ThemeProvider/ThemeProvider.vue.js +29 -23
- package/components/ThemeProvider/index.d.ts +1 -1
- package/components/ThemeProvider/themeVars.d.ts +9 -13
- package/components/ThemeProvider/themeVars.js +173 -125
- package/components/ThemeProvider/types.d.ts +10 -0
- package/components/ToastNotification.vue.js +1 -1
- package/components/ToastNotification.vue2.js +3 -3
- package/components/index.d.ts +3 -2
- package/composables/useKeyStroke.d.ts +18 -0
- package/composables/useKeyStroke.js +103 -77
- package/composables/useTheme.js +1 -1
- package/index.d.ts +2 -0
- package/index.js +380 -350
- package/package.json +12 -4
- package/style.css +1 -1
- package/utils/environment.d.ts +29 -0
- package/utils/environment.js +4 -0
- package/utils/functions.js +14 -13
- package/components/ColorPicker/ColorIro.vue.js +0 -141
- package/components/Form/AccordionView.vue2.js +0 -4
- /package/components/Dropdown/{DropdownMenu.vue2.js → DropdownMenu.vue3.js} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
const
|
|
1
|
+
import { defineComponent as G, ref as K, watch as U, openBlock as C, createElementBlock as P, normalizeClass as j, Fragment as q, renderList as w, createBlock as z, withCtx as v, renderSlot as g, mergeProps as h } from "vue";
|
|
2
|
+
import F from "./KanbanBoard.vue.js";
|
|
3
|
+
const T = /* @__PURE__ */ G({
|
|
4
4
|
__name: "Kanban",
|
|
5
5
|
props: {
|
|
6
6
|
columns: {},
|
|
@@ -17,109 +17,173 @@ const U = /* @__PURE__ */ D({
|
|
|
17
17
|
draggableClass: {},
|
|
18
18
|
ghostClass: {},
|
|
19
19
|
class: { default: "h-full w-full" },
|
|
20
|
-
isItemDisabled: {}
|
|
20
|
+
isItemDisabled: {},
|
|
21
|
+
onItemMoved: {}
|
|
21
22
|
},
|
|
22
|
-
emits: ["change", "move", "update:data", "item-
|
|
23
|
-
setup(
|
|
24
|
-
const
|
|
25
|
-
|
|
26
|
-
[() =>
|
|
27
|
-
([e,
|
|
28
|
-
if (
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
23
|
+
emits: ["change", "move", "update:data", "item-move-failed"],
|
|
24
|
+
setup(l, { emit: B }) {
|
|
25
|
+
const s = l, c = B, u = K({}), d = K({}), p = K(!1);
|
|
26
|
+
U(
|
|
27
|
+
[() => s.data, () => s.rawData],
|
|
28
|
+
([e, a]) => {
|
|
29
|
+
if (!p.value)
|
|
30
|
+
if (a && Array.isArray(a)) {
|
|
31
|
+
const o = {};
|
|
32
|
+
s.columns.forEach((t) => o[t.id] = []), a.forEach((t) => {
|
|
33
|
+
const i = t[s.groupKey];
|
|
34
|
+
o[i] ? o[i].push({ ...t }) : o[i] = [{ ...t }];
|
|
35
|
+
}), Object.keys(o).forEach((t) => {
|
|
36
|
+
o[t].sort((i, r) => (i[s.positionKey] || 0) - (r[s.positionKey] || 0));
|
|
37
|
+
}), d.value = o;
|
|
38
|
+
} else e && (d.value = { ...e });
|
|
37
39
|
},
|
|
38
40
|
{ immediate: !0, deep: !0 }
|
|
39
41
|
);
|
|
40
|
-
const
|
|
41
|
-
let
|
|
42
|
-
return
|
|
43
|
-
},
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
42
|
+
const A = (e, a) => {
|
|
43
|
+
let o = 0, t = 0;
|
|
44
|
+
return a > 0 && (o = Number(e[a - 1]?.[s.positionKey]) || 0), a < e.length - 1 && (t = Number(e[a + 1]?.[s.positionKey]) || 0), o === 0 && t === 0 ? 1024 : o === 0 ? t / 2 : t === 0 ? o + 1024 : (o + t) / 2;
|
|
45
|
+
}, E = (e) => {
|
|
46
|
+
p.value = !0;
|
|
47
|
+
try {
|
|
48
|
+
const a = s.itemKey, o = { ...d.value }, t = [...o[e.toColumnId] || []];
|
|
49
|
+
let i = t.find((n) => n?.[a] === e.itemId) || e.item;
|
|
50
|
+
const r = t.findIndex((n) => n?.[a] === e.itemId);
|
|
51
|
+
if (r >= 0)
|
|
52
|
+
i = t.splice(r, 1)[0];
|
|
53
|
+
else if (e.fromColumnId === e.toColumnId) {
|
|
54
|
+
const n = t.findIndex((m) => m?.[a] === e.itemId);
|
|
55
|
+
n >= 0 && (i = t.splice(n, 1)[0]);
|
|
56
|
+
}
|
|
57
|
+
if (!i) return;
|
|
58
|
+
if (i[s.positionKey] = e.previousPosition, i[s.groupKey] = e.previousGroupValue, e.fromColumnId === e.toColumnId) {
|
|
59
|
+
const n = Math.min(Math.max(e.oldIndex, 0), t.length);
|
|
60
|
+
t.splice(n, 0, i), o[e.toColumnId] = t;
|
|
61
|
+
} else {
|
|
62
|
+
o[e.toColumnId] = t;
|
|
63
|
+
const n = [...o[e.fromColumnId] || []], m = n.findIndex((f) => f?.[a] === e.itemId);
|
|
64
|
+
m >= 0 && n.splice(m, 1);
|
|
65
|
+
const I = Math.min(Math.max(e.oldIndex, 0), n.length);
|
|
66
|
+
n.splice(I, 0, i), o[e.fromColumnId] = n;
|
|
67
|
+
}
|
|
68
|
+
d.value = o, s.data && c("update:data", { ...o });
|
|
69
|
+
} finally {
|
|
70
|
+
queueMicrotask(() => {
|
|
71
|
+
p.value = !1;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}, k = async (e, a, o, t) => {
|
|
75
|
+
const i = d.value[e];
|
|
76
|
+
if (!i) return;
|
|
77
|
+
const r = i[a];
|
|
78
|
+
if (!r) return;
|
|
79
|
+
const n = r[s.itemKey], m = r[s.positionKey], I = r[s.groupKey], f = A(i, a);
|
|
80
|
+
r[s.positionKey] = f, r[s.groupKey] = e;
|
|
81
|
+
const y = () => E({
|
|
82
|
+
itemId: n,
|
|
83
|
+
item: r,
|
|
84
|
+
fromColumnId: o,
|
|
85
|
+
toColumnId: e,
|
|
86
|
+
oldIndex: t,
|
|
87
|
+
previousPosition: m,
|
|
88
|
+
previousGroupValue: I
|
|
89
|
+
}), V = {
|
|
90
|
+
fromColumnId: o,
|
|
91
|
+
oldIndex: t,
|
|
92
|
+
newIndex: a,
|
|
93
|
+
previousPosition: m,
|
|
94
|
+
revert: y
|
|
95
|
+
};
|
|
96
|
+
c("move", {
|
|
97
|
+
itemId: n,
|
|
98
|
+
item: r,
|
|
99
|
+
fromColumnId: o,
|
|
100
|
+
toColumnId: e,
|
|
101
|
+
oldIndex: t,
|
|
102
|
+
newIndex: a
|
|
103
|
+
});
|
|
104
|
+
const D = s.onItemMoved;
|
|
105
|
+
if (D)
|
|
106
|
+
try {
|
|
107
|
+
await D(n, e, f, r, V) === !1 && y();
|
|
108
|
+
} catch (M) {
|
|
109
|
+
y(), c("item-move-failed", {
|
|
110
|
+
itemId: n,
|
|
111
|
+
toColumnId: e,
|
|
112
|
+
fromColumnId: o,
|
|
113
|
+
newPosition: f,
|
|
114
|
+
item: r,
|
|
115
|
+
error: M
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
}, b = (e) => s.columns.find((a) => a.id === e)?.disabled === !0, $ = (e) => {
|
|
119
|
+
if (c("change", e), e.type === "remove")
|
|
120
|
+
u.value.remove = { columnId: e.columnId, event: e.event };
|
|
53
121
|
else if (e.type === "add")
|
|
54
|
-
|
|
122
|
+
u.value.add = { columnId: e.columnId, event: e.event };
|
|
55
123
|
else if (e.type === "update") {
|
|
56
|
-
if (
|
|
57
|
-
|
|
124
|
+
if (b(e.columnId)) {
|
|
125
|
+
u.value = {};
|
|
58
126
|
return;
|
|
59
127
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
newIndex: e.event.newIndex
|
|
67
|
-
});
|
|
128
|
+
k(
|
|
129
|
+
e.columnId,
|
|
130
|
+
e.event.newIndex,
|
|
131
|
+
e.columnId,
|
|
132
|
+
e.event.oldIndex
|
|
133
|
+
);
|
|
68
134
|
}
|
|
69
|
-
if (
|
|
70
|
-
const { remove:
|
|
71
|
-
if (
|
|
72
|
-
|
|
135
|
+
if (u.value.remove && u.value.add) {
|
|
136
|
+
const { remove: a, add: o } = u.value;
|
|
137
|
+
if (b(a.columnId) || b(o.columnId)) {
|
|
138
|
+
u.value = {};
|
|
73
139
|
return;
|
|
74
140
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
newIndex: t.event.newIndex
|
|
82
|
-
}), r.value = {};
|
|
141
|
+
k(
|
|
142
|
+
o.columnId,
|
|
143
|
+
o.event.newIndex,
|
|
144
|
+
a.columnId,
|
|
145
|
+
a.event.oldIndex
|
|
146
|
+
), u.value = {};
|
|
83
147
|
}
|
|
84
148
|
setTimeout(() => {
|
|
85
|
-
|
|
149
|
+
u.value = {};
|
|
86
150
|
}, 100);
|
|
87
|
-
},
|
|
88
|
-
|
|
89
|
-
},
|
|
90
|
-
return (e,
|
|
91
|
-
class:
|
|
151
|
+
}, L = (e, a) => {
|
|
152
|
+
d.value[e] = a, s.data && c("update:data", { ...s.data, [e]: a });
|
|
153
|
+
}, N = (e) => d.value[e] || [];
|
|
154
|
+
return (e, a) => (C(), P("div", {
|
|
155
|
+
class: j([
|
|
92
156
|
"flex gap-4 scrollbar-thin overflow-x-auto p-1 scrollbar-thin-x scrollable-container",
|
|
93
|
-
|
|
157
|
+
s.class
|
|
94
158
|
])
|
|
95
159
|
}, [
|
|
96
|
-
(
|
|
97
|
-
key:
|
|
98
|
-
column:
|
|
99
|
-
group:
|
|
100
|
-
"item-key":
|
|
101
|
-
"load-data":
|
|
102
|
-
"column-data":
|
|
103
|
-
"board-class":
|
|
104
|
-
"header-class":
|
|
105
|
-
"body-class":
|
|
106
|
-
"draggable-class":
|
|
107
|
-
"ghost-class":
|
|
108
|
-
"is-item-disabled":
|
|
109
|
-
onChange:
|
|
110
|
-
"onUpdate:columnData": (
|
|
160
|
+
(C(!0), P(q, null, w(l.columns, (o) => (C(), z(F, {
|
|
161
|
+
key: o.id,
|
|
162
|
+
column: o,
|
|
163
|
+
group: l.group,
|
|
164
|
+
"item-key": l.itemKey,
|
|
165
|
+
"load-data": l.loadData,
|
|
166
|
+
"column-data": N(o.id),
|
|
167
|
+
"board-class": l.boardClass,
|
|
168
|
+
"header-class": l.headerClass,
|
|
169
|
+
"body-class": l.bodyClass,
|
|
170
|
+
"draggable-class": l.draggableClass,
|
|
171
|
+
"ghost-class": l.ghostClass,
|
|
172
|
+
"is-item-disabled": l.isItemDisabled,
|
|
173
|
+
onChange: $,
|
|
174
|
+
"onUpdate:columnData": (t) => L(o.id, t)
|
|
111
175
|
}, {
|
|
112
|
-
header:
|
|
113
|
-
|
|
176
|
+
header: v((t) => [
|
|
177
|
+
g(e.$slots, "column-header", h({ ref_for: !0 }, t), void 0, !0)
|
|
114
178
|
]),
|
|
115
|
-
"prepend-item":
|
|
116
|
-
|
|
179
|
+
"prepend-item": v((t) => [
|
|
180
|
+
g(e.$slots, "prepend-item", h({ ref_for: !0 }, t), void 0, !0)
|
|
117
181
|
]),
|
|
118
|
-
item:
|
|
119
|
-
|
|
182
|
+
item: v((t) => [
|
|
183
|
+
g(e.$slots, "item", h({ ref_for: !0 }, t), void 0, !0)
|
|
120
184
|
]),
|
|
121
|
-
"append-item":
|
|
122
|
-
|
|
185
|
+
"append-item": v((t) => [
|
|
186
|
+
g(e.$slots, "append-item", h({ ref_for: !0 }, t), void 0, !0)
|
|
123
187
|
]),
|
|
124
188
|
_: 3
|
|
125
189
|
}, 8, ["column", "group", "item-key", "load-data", "column-data", "board-class", "header-class", "body-class", "draggable-class", "ghost-class", "is-item-disabled", "onUpdate:columnData"]))), 128))
|
|
@@ -127,5 +191,5 @@ const U = /* @__PURE__ */ D({
|
|
|
127
191
|
}
|
|
128
192
|
});
|
|
129
193
|
export {
|
|
130
|
-
|
|
194
|
+
T as default
|
|
131
195
|
};
|
|
@@ -38,6 +38,36 @@ export interface KanbanMoveEvent {
|
|
|
38
38
|
oldIndex: number;
|
|
39
39
|
newIndex: number;
|
|
40
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Extra context passed as the 5th argument to `onItemMoved` / `@item-moved`.
|
|
43
|
+
* `revert()` restores the card to its pre-drop column and index immediately.
|
|
44
|
+
*/
|
|
45
|
+
export interface KanbanItemMovedMeta {
|
|
46
|
+
fromColumnId: string | number;
|
|
47
|
+
oldIndex: number;
|
|
48
|
+
newIndex: number;
|
|
49
|
+
previousPosition: any;
|
|
50
|
+
/** Imperative escape hatch — usually unnecessary; the board auto-reverts on reject/false. */
|
|
51
|
+
revert: () => void;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Async move handler. Return a Promise that settles when the server confirms.
|
|
55
|
+
*
|
|
56
|
+
* - resolve / return `void` | `true` → keep the optimistic placement
|
|
57
|
+
* - return `false` → auto-revert the card to its previous column/index
|
|
58
|
+
* - reject / throw → auto-revert (same as `false`)
|
|
59
|
+
*
|
|
60
|
+
* Bound via `:on-item-moved` or `@item-moved` (both map to this prop).
|
|
61
|
+
*/
|
|
62
|
+
export type KanbanItemMovedHandler = (itemId: string | number, toColumnId: string | number, newPosition: number, item: any, meta: KanbanItemMovedMeta) => void | boolean | Promise<void | boolean>;
|
|
63
|
+
export interface KanbanItemMoveFailedPayload {
|
|
64
|
+
itemId: string | number;
|
|
65
|
+
toColumnId: string | number;
|
|
66
|
+
fromColumnId: string | number;
|
|
67
|
+
newPosition: number;
|
|
68
|
+
item: any;
|
|
69
|
+
error: unknown;
|
|
70
|
+
}
|
|
41
71
|
export interface KanbanProps {
|
|
42
72
|
columns: KanbanColumn[];
|
|
43
73
|
group?: string;
|
|
@@ -61,4 +91,11 @@ export interface KanbanProps {
|
|
|
61
91
|
* Example: :is-item-disabled="(item) => item.locked === true"
|
|
62
92
|
*/
|
|
63
93
|
isItemDisabled?: (item: any) => boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Called after an optimistic drop. Await a mutation here — if it rejects
|
|
96
|
+
* (or returns `false`), the board automatically moves the card back.
|
|
97
|
+
*
|
|
98
|
+
* Use `@item-moved` or `:on-item-moved` — both bind this prop.
|
|
99
|
+
*/
|
|
100
|
+
onItemMoved?: KanbanItemMovedHandler;
|
|
64
101
|
}
|
|
@@ -3,7 +3,7 @@ import L from "./Icon.vue.js";
|
|
|
3
3
|
import v from "./Modal.vue.js";
|
|
4
4
|
import N from "./CommandPalette/CommandPaletteContent.vue.js";
|
|
5
5
|
import { $t as U } from "../utils/i18n.js";
|
|
6
|
-
/* empty css
|
|
6
|
+
/* empty css */
|
|
7
7
|
const V = { class: "block truncate -text-fs-1.5" }, S = { class: "ml-auto inline-flex items-center gap-0.5 px-1.5 py-0.5 rounded text-[10px] font-mono font-medium border border-border/80 bg-background text-muted-foreground ml-1" }, A = /* @__PURE__ */ x({
|
|
8
8
|
__name: "NavbarCommandPalette",
|
|
9
9
|
props: {
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { PanZoomViewportActionOptions, PanZoomViewportAlignment, PanZoomViewportChangeMeta, PanZoomViewportFitOptions, PanZoomViewportPanOptions, PanZoomViewportProps, PanZoomViewportSize, PanZoomViewportTransform, PanZoomViewportZoomAvailability, PanZoomViewportZoomOptions } from './types';
|
|
2
|
+
declare function __VLS_template(): {
|
|
3
|
+
attrs: Partial<{}>;
|
|
4
|
+
slots: {
|
|
5
|
+
default?(_: {
|
|
6
|
+
transform: PanZoomViewportTransform;
|
|
7
|
+
viewportSize: PanZoomViewportSize;
|
|
8
|
+
contentSize: PanZoomViewportSize;
|
|
9
|
+
ready: boolean;
|
|
10
|
+
panning: boolean;
|
|
11
|
+
canZoomIn: boolean;
|
|
12
|
+
canZoomOut: boolean;
|
|
13
|
+
}): any;
|
|
14
|
+
};
|
|
15
|
+
refs: {
|
|
16
|
+
viewportRef: HTMLDivElement;
|
|
17
|
+
contentRef: HTMLDivElement;
|
|
18
|
+
};
|
|
19
|
+
rootEl: HTMLDivElement;
|
|
20
|
+
};
|
|
21
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
22
|
+
declare const __VLS_component: import('vue').DefineComponent<PanZoomViewportProps, {
|
|
23
|
+
zoomIn: (options
|
|
24
|
+
/**
|
|
25
|
+
* Generic transform-only viewport for arbitrary slotted content.
|
|
26
|
+
*
|
|
27
|
+
* Gesture deltas arrive in visual/client pixels while the transform is written
|
|
28
|
+
* in this element's local CSS pixels. Every client-space operation therefore
|
|
29
|
+
* normalizes through getBoundingClientRect() / layout size so nested ancestor
|
|
30
|
+
* transforms and non-unity browser pixel ratios do not distort navigation.
|
|
31
|
+
*
|
|
32
|
+
* Performance (docs/6-performance.md): DOM nodes and replace-only geometry use
|
|
33
|
+
* shallowRef; translate/scale is painted directly onto the content layer each
|
|
34
|
+
* rAF; layout style objects keep stable identity when unchanged; both layers
|
|
35
|
+
* use will-change + contain; observers/frames/timers are cleared on unmount.
|
|
36
|
+
*/
|
|
37
|
+
?: PanZoomViewportZoomOptions) => void;
|
|
38
|
+
zoomOut: (options
|
|
39
|
+
/**
|
|
40
|
+
* Generic transform-only viewport for arbitrary slotted content.
|
|
41
|
+
*
|
|
42
|
+
* Gesture deltas arrive in visual/client pixels while the transform is written
|
|
43
|
+
* in this element's local CSS pixels. Every client-space operation therefore
|
|
44
|
+
* normalizes through getBoundingClientRect() / layout size so nested ancestor
|
|
45
|
+
* transforms and non-unity browser pixel ratios do not distort navigation.
|
|
46
|
+
*
|
|
47
|
+
* Performance (docs/6-performance.md): DOM nodes and replace-only geometry use
|
|
48
|
+
* shallowRef; translate/scale is painted directly onto the content layer each
|
|
49
|
+
* rAF; layout style objects keep stable identity when unchanged; both layers
|
|
50
|
+
* use will-change + contain; observers/frames/timers are cleared on unmount.
|
|
51
|
+
*/
|
|
52
|
+
?: PanZoomViewportZoomOptions) => void;
|
|
53
|
+
setScale: (scale: number, options
|
|
54
|
+
/**
|
|
55
|
+
* Generic transform-only viewport for arbitrary slotted content.
|
|
56
|
+
*
|
|
57
|
+
* Gesture deltas arrive in visual/client pixels while the transform is written
|
|
58
|
+
* in this element's local CSS pixels. Every client-space operation therefore
|
|
59
|
+
* normalizes through getBoundingClientRect() / layout size so nested ancestor
|
|
60
|
+
* transforms and non-unity browser pixel ratios do not distort navigation.
|
|
61
|
+
*
|
|
62
|
+
* Performance (docs/6-performance.md): DOM nodes and replace-only geometry use
|
|
63
|
+
* shallowRef; translate/scale is painted directly onto the content layer each
|
|
64
|
+
* rAF; layout style objects keep stable identity when unchanged; both layers
|
|
65
|
+
* use will-change + contain; observers/frames/timers are cleared on unmount.
|
|
66
|
+
*/
|
|
67
|
+
?: PanZoomViewportZoomOptions) => void;
|
|
68
|
+
setTransform: (transform: PanZoomViewportTransform, options
|
|
69
|
+
/**
|
|
70
|
+
* Generic transform-only viewport for arbitrary slotted content.
|
|
71
|
+
*
|
|
72
|
+
* Gesture deltas arrive in visual/client pixels while the transform is written
|
|
73
|
+
* in this element's local CSS pixels. Every client-space operation therefore
|
|
74
|
+
* normalizes through getBoundingClientRect() / layout size so nested ancestor
|
|
75
|
+
* transforms and non-unity browser pixel ratios do not distort navigation.
|
|
76
|
+
*
|
|
77
|
+
* Performance (docs/6-performance.md): DOM nodes and replace-only geometry use
|
|
78
|
+
* shallowRef; translate/scale is painted directly onto the content layer each
|
|
79
|
+
* rAF; layout style objects keep stable identity when unchanged; both layers
|
|
80
|
+
* use will-change + contain; observers/frames/timers are cleared on unmount.
|
|
81
|
+
*/
|
|
82
|
+
?: PanZoomViewportActionOptions) => void;
|
|
83
|
+
panBy: (deltaX: number, deltaY: number, options
|
|
84
|
+
/**
|
|
85
|
+
* Generic transform-only viewport for arbitrary slotted content.
|
|
86
|
+
*
|
|
87
|
+
* Gesture deltas arrive in visual/client pixels while the transform is written
|
|
88
|
+
* in this element's local CSS pixels. Every client-space operation therefore
|
|
89
|
+
* normalizes through getBoundingClientRect() / layout size so nested ancestor
|
|
90
|
+
* transforms and non-unity browser pixel ratios do not distort navigation.
|
|
91
|
+
*
|
|
92
|
+
* Performance (docs/6-performance.md): DOM nodes and replace-only geometry use
|
|
93
|
+
* shallowRef; translate/scale is painted directly onto the content layer each
|
|
94
|
+
* rAF; layout style objects keep stable identity when unchanged; both layers
|
|
95
|
+
* use will-change + contain; observers/frames/timers are cleared on unmount.
|
|
96
|
+
*/
|
|
97
|
+
?: PanZoomViewportPanOptions) => void;
|
|
98
|
+
reset: (options
|
|
99
|
+
/**
|
|
100
|
+
* Generic transform-only viewport for arbitrary slotted content.
|
|
101
|
+
*
|
|
102
|
+
* Gesture deltas arrive in visual/client pixels while the transform is written
|
|
103
|
+
* in this element's local CSS pixels. Every client-space operation therefore
|
|
104
|
+
* normalizes through getBoundingClientRect() / layout size so nested ancestor
|
|
105
|
+
* transforms and non-unity browser pixel ratios do not distort navigation.
|
|
106
|
+
*
|
|
107
|
+
* Performance (docs/6-performance.md): DOM nodes and replace-only geometry use
|
|
108
|
+
* shallowRef; translate/scale is painted directly onto the content layer each
|
|
109
|
+
* rAF; layout style objects keep stable identity when unchanged; both layers
|
|
110
|
+
* use will-change + contain; observers/frames/timers are cleared on unmount.
|
|
111
|
+
*/
|
|
112
|
+
?: PanZoomViewportActionOptions) => void;
|
|
113
|
+
fitToContent: (options
|
|
114
|
+
/**
|
|
115
|
+
* Generic transform-only viewport for arbitrary slotted content.
|
|
116
|
+
*
|
|
117
|
+
* Gesture deltas arrive in visual/client pixels while the transform is written
|
|
118
|
+
* in this element's local CSS pixels. Every client-space operation therefore
|
|
119
|
+
* normalizes through getBoundingClientRect() / layout size so nested ancestor
|
|
120
|
+
* transforms and non-unity browser pixel ratios do not distort navigation.
|
|
121
|
+
*
|
|
122
|
+
* Performance (docs/6-performance.md): DOM nodes and replace-only geometry use
|
|
123
|
+
* shallowRef; translate/scale is painted directly onto the content layer each
|
|
124
|
+
* rAF; layout style objects keep stable identity when unchanged; both layers
|
|
125
|
+
* use will-change + contain; observers/frames/timers are cleared on unmount.
|
|
126
|
+
*/
|
|
127
|
+
?: PanZoomViewportFitOptions) => boolean;
|
|
128
|
+
canZoomIn: () => boolean;
|
|
129
|
+
canZoomOut: () => boolean;
|
|
130
|
+
focus: () => void;
|
|
131
|
+
getViewportElement: () => HTMLElement | null;
|
|
132
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
133
|
+
change: (value: PanZoomViewportTransform, meta: PanZoomViewportChangeMeta) => any;
|
|
134
|
+
"update:modelValue": (value: PanZoomViewportTransform) => any;
|
|
135
|
+
"update:ready": (value: boolean) => any;
|
|
136
|
+
"update:viewportSize": (value: PanZoomViewportSize) => any;
|
|
137
|
+
"update:contentSize": (value: PanZoomViewportSize) => any;
|
|
138
|
+
"pan-start": () => any;
|
|
139
|
+
"pan-end": () => any;
|
|
140
|
+
"zoom-availability-change": (value: PanZoomViewportZoomAvailability) => any;
|
|
141
|
+
}, string, import('vue').PublicProps, Readonly<PanZoomViewportProps> & Readonly<{
|
|
142
|
+
onChange?: (value: PanZoomViewportTransform, meta: PanZoomViewportChangeMeta) => any;
|
|
143
|
+
"onUpdate:modelValue"?: (value: PanZoomViewportTransform) => any;
|
|
144
|
+
"onUpdate:ready"?: (value: boolean) => any;
|
|
145
|
+
"onUpdate:viewportSize"?: (value: PanZoomViewportSize) => any;
|
|
146
|
+
"onUpdate:contentSize"?: (value: PanZoomViewportSize) => any;
|
|
147
|
+
"onPan-start"?: () => any;
|
|
148
|
+
"onPan-end"?: () => any;
|
|
149
|
+
"onZoom-availability-change"?: (value: PanZoomViewportZoomAvailability) => any;
|
|
150
|
+
}>, {
|
|
151
|
+
disabled: boolean;
|
|
152
|
+
modelValue: PanZoomViewportTransform;
|
|
153
|
+
contentClass: string;
|
|
154
|
+
minScale: number;
|
|
155
|
+
maxScale: number;
|
|
156
|
+
keyboard: boolean;
|
|
157
|
+
zoomStep: number;
|
|
158
|
+
wheelZoomSpeed: number;
|
|
159
|
+
keyboardPanStep: number;
|
|
160
|
+
fitPadding: number;
|
|
161
|
+
fitMode: import('./types').PanZoomViewportFitMode;
|
|
162
|
+
fitAlignX: PanZoomViewportAlignment;
|
|
163
|
+
fitAlignY: PanZoomViewportAlignment;
|
|
164
|
+
initialFit: boolean;
|
|
165
|
+
autoFitOnResize: boolean;
|
|
166
|
+
zoomEnabled: boolean;
|
|
167
|
+
zoomInEnabled: boolean;
|
|
168
|
+
zoomOutEnabled: boolean;
|
|
169
|
+
panEnabled: boolean;
|
|
170
|
+
pointerPanEnabled: boolean;
|
|
171
|
+
wheelPanEnabled: boolean;
|
|
172
|
+
keyboardPanEnabled: boolean;
|
|
173
|
+
horizontalPanEnabled: boolean;
|
|
174
|
+
verticalPanEnabled: boolean;
|
|
175
|
+
panOnWheel: boolean;
|
|
176
|
+
wheelZoomMode: import('./types').PanZoomViewportWheelZoomMode;
|
|
177
|
+
panOnPrimaryDrag: boolean;
|
|
178
|
+
ariaLabel: string;
|
|
179
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
|
|
180
|
+
viewportRef: HTMLDivElement;
|
|
181
|
+
contentRef: HTMLDivElement;
|
|
182
|
+
}, HTMLDivElement>;
|
|
183
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
184
|
+
export default _default;
|
|
185
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
186
|
+
new (): {
|
|
187
|
+
$slots: S;
|
|
188
|
+
};
|
|
189
|
+
};
|