@vasakgroup/vue-libvasak 0.1.0 → 0.2.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/dist/vue-libvasak.css +0 -0
- package/dist/vue-libvasak.es.js +626 -233
- package/dist/vue-libvasak.umd.js +1 -1
- package/package.json +8 -8
- package/src/cards/DeviceCard.vue +82 -0
- package/src/cards/ListCard.vue +40 -0
- package/src/controls/ActionButton.vue +85 -0
- package/src/controls/ToggleControl.vue +55 -0
- package/src/forms/FormGroup.vue +27 -0
- package/src/forms/SliderControl.vue +100 -0
- package/src/forms/SwitchToggle.vue +49 -0
- package/src/index.ts +37 -2
- package/src/layout/ConfigSection.vue +28 -0
- package/src/sidebar/SideButton.vue +1 -3
- package/src/tray/TrayIconButton.vue +80 -0
- package/src/types/vue-libvasak.d.ts +153 -8
package/dist/vue-libvasak.es.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { createElementBlock as
|
|
2
|
-
const
|
|
3
|
-
const
|
|
4
|
-
for (const [l,
|
|
5
|
-
|
|
6
|
-
return
|
|
7
|
-
},
|
|
8
|
-
function
|
|
9
|
-
return
|
|
10
|
-
|
|
1
|
+
import { createElementBlock as s, openBlock as o, renderSlot as k, defineComponent as y, createElementVNode as u, ref as x, onMounted as q, toDisplayString as w, unref as W, Fragment as F, createVNode as Z, normalizeClass as d, createCommentVNode as g, renderList as Q, withModifiers as Y, computed as T } from "vue";
|
|
2
|
+
const D = (t, e) => {
|
|
3
|
+
const i = t.__vccOpts || t;
|
|
4
|
+
for (const [l, a] of e)
|
|
5
|
+
i[l] = a;
|
|
6
|
+
return i;
|
|
7
|
+
}, K = {}, X = { class: "sidebar" };
|
|
8
|
+
function ee(t, e) {
|
|
9
|
+
return o(), s("div", X, [
|
|
10
|
+
k(t.$slots, "default")
|
|
11
11
|
]);
|
|
12
12
|
}
|
|
13
|
-
const
|
|
13
|
+
const te = /* @__PURE__ */ D(K, [["render", ee]]), ie = {
|
|
14
14
|
href: "#",
|
|
15
15
|
class: "sidebar-button"
|
|
16
|
-
},
|
|
16
|
+
}, ne = ["src", "alt"], le = /* @__PURE__ */ y({
|
|
17
17
|
__name: "SideButton",
|
|
18
18
|
props: {
|
|
19
19
|
title: {
|
|
@@ -25,37 +25,38 @@ const j = /* @__PURE__ */ $(H, [["render", q]]), Z = {
|
|
|
25
25
|
default: ""
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
|
-
setup(
|
|
29
|
-
return (e,
|
|
28
|
+
setup(t) {
|
|
29
|
+
return (e, i) => (o(), s("a", ie, [
|
|
30
30
|
u("img", {
|
|
31
|
-
src:
|
|
31
|
+
src: t.image,
|
|
32
|
+
alt: t.title,
|
|
32
33
|
class: "img-fluid"
|
|
33
|
-
}, null, 8,
|
|
34
|
+
}, null, 8, ne)
|
|
34
35
|
]));
|
|
35
36
|
}
|
|
36
37
|
});
|
|
37
|
-
function
|
|
38
|
-
if (typeof e == "function" ?
|
|
39
|
-
return
|
|
38
|
+
function ae(t, e, i, l) {
|
|
39
|
+
if (typeof e == "function" ? t !== e || !l : !e.has(t)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
40
|
+
return i === "m" ? l : i === "a" ? l.call(t) : l ? l.value : e.get(t);
|
|
40
41
|
}
|
|
41
|
-
function
|
|
42
|
-
if (typeof e == "function" ?
|
|
43
|
-
return e.set(
|
|
42
|
+
function se(t, e, i, l, a) {
|
|
43
|
+
if (typeof e == "function" ? t !== e || !0 : !e.has(t)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
44
|
+
return e.set(t, i), i;
|
|
44
45
|
}
|
|
45
|
-
var
|
|
46
|
-
const
|
|
47
|
-
function
|
|
48
|
-
return window.__TAURI_INTERNALS__.transformCallback(
|
|
46
|
+
var I;
|
|
47
|
+
const m = "__TAURI_TO_IPC_KEY__";
|
|
48
|
+
function oe(t, e = !1) {
|
|
49
|
+
return window.__TAURI_INTERNALS__.transformCallback(t, e);
|
|
49
50
|
}
|
|
50
|
-
async function n(
|
|
51
|
-
return window.__TAURI_INTERNALS__.invoke(
|
|
51
|
+
async function n(t, e = {}, i) {
|
|
52
|
+
return window.__TAURI_INTERNALS__.invoke(t, e, i);
|
|
52
53
|
}
|
|
53
|
-
class
|
|
54
|
+
class re {
|
|
54
55
|
get rid() {
|
|
55
|
-
return
|
|
56
|
+
return ae(this, I, "f");
|
|
56
57
|
}
|
|
57
58
|
constructor(e) {
|
|
58
|
-
|
|
59
|
+
I.set(this, void 0), se(this, I, e);
|
|
59
60
|
}
|
|
60
61
|
/**
|
|
61
62
|
* Destroys and cleans up this resource from memory.
|
|
@@ -67,8 +68,8 @@ class ie {
|
|
|
67
68
|
});
|
|
68
69
|
}
|
|
69
70
|
}
|
|
70
|
-
|
|
71
|
-
class
|
|
71
|
+
I = /* @__PURE__ */ new WeakMap();
|
|
72
|
+
class V {
|
|
72
73
|
constructor(...e) {
|
|
73
74
|
this.type = "Logical", e.length === 1 ? "Logical" in e[0] ? (this.width = e[0].Logical.width, this.height = e[0].Logical.height) : (this.width = e[0].width, this.height = e[0].height) : (this.width = e[0], this.height = e[1]);
|
|
74
75
|
}
|
|
@@ -88,19 +89,19 @@ class L {
|
|
|
88
89
|
* @since 2.0.0
|
|
89
90
|
*/
|
|
90
91
|
toPhysical(e) {
|
|
91
|
-
return new
|
|
92
|
+
return new C(this.width * e, this.height * e);
|
|
92
93
|
}
|
|
93
|
-
[
|
|
94
|
+
[m]() {
|
|
94
95
|
return {
|
|
95
96
|
width: this.width,
|
|
96
97
|
height: this.height
|
|
97
98
|
};
|
|
98
99
|
}
|
|
99
100
|
toJSON() {
|
|
100
|
-
return this[
|
|
101
|
+
return this[m]();
|
|
101
102
|
}
|
|
102
103
|
}
|
|
103
|
-
class
|
|
104
|
+
class C {
|
|
104
105
|
constructor(...e) {
|
|
105
106
|
this.type = "Physical", e.length === 1 ? "Physical" in e[0] ? (this.width = e[0].Physical.width, this.height = e[0].Physical.height) : (this.width = e[0].width, this.height = e[0].height) : (this.width = e[0], this.height = e[1]);
|
|
106
107
|
}
|
|
@@ -116,29 +117,29 @@ class b {
|
|
|
116
117
|
* ```
|
|
117
118
|
*/
|
|
118
119
|
toLogical(e) {
|
|
119
|
-
return new
|
|
120
|
+
return new V(this.width / e, this.height / e);
|
|
120
121
|
}
|
|
121
|
-
[
|
|
122
|
+
[m]() {
|
|
122
123
|
return {
|
|
123
124
|
width: this.width,
|
|
124
125
|
height: this.height
|
|
125
126
|
};
|
|
126
127
|
}
|
|
127
128
|
toJSON() {
|
|
128
|
-
return this[
|
|
129
|
+
return this[m]();
|
|
129
130
|
}
|
|
130
131
|
}
|
|
131
|
-
class
|
|
132
|
+
class _ {
|
|
132
133
|
constructor(e) {
|
|
133
134
|
this.size = e;
|
|
134
135
|
}
|
|
135
136
|
toLogical(e) {
|
|
136
|
-
return this.size instanceof
|
|
137
|
+
return this.size instanceof V ? this.size : this.size.toLogical(e);
|
|
137
138
|
}
|
|
138
139
|
toPhysical(e) {
|
|
139
|
-
return this.size instanceof
|
|
140
|
+
return this.size instanceof C ? this.size : this.size.toPhysical(e);
|
|
140
141
|
}
|
|
141
|
-
[
|
|
142
|
+
[m]() {
|
|
142
143
|
return {
|
|
143
144
|
[`${this.size.type}`]: {
|
|
144
145
|
width: this.size.width,
|
|
@@ -147,10 +148,10 @@ class w {
|
|
|
147
148
|
};
|
|
148
149
|
}
|
|
149
150
|
toJSON() {
|
|
150
|
-
return this[
|
|
151
|
+
return this[m]();
|
|
151
152
|
}
|
|
152
153
|
}
|
|
153
|
-
class
|
|
154
|
+
class U {
|
|
154
155
|
constructor(...e) {
|
|
155
156
|
this.type = "Logical", e.length === 1 ? "Logical" in e[0] ? (this.x = e[0].Logical.x, this.y = e[0].Logical.y) : (this.x = e[0].x, this.y = e[0].y) : (this.x = e[0], this.y = e[1]);
|
|
156
157
|
}
|
|
@@ -170,19 +171,19 @@ class E {
|
|
|
170
171
|
* @since 2.0.0
|
|
171
172
|
*/
|
|
172
173
|
toPhysical(e) {
|
|
173
|
-
return new
|
|
174
|
+
return new p(this.x * e, this.y * e);
|
|
174
175
|
}
|
|
175
|
-
[
|
|
176
|
+
[m]() {
|
|
176
177
|
return {
|
|
177
178
|
x: this.x,
|
|
178
179
|
y: this.y
|
|
179
180
|
};
|
|
180
181
|
}
|
|
181
182
|
toJSON() {
|
|
182
|
-
return this[
|
|
183
|
+
return this[m]();
|
|
183
184
|
}
|
|
184
185
|
}
|
|
185
|
-
class
|
|
186
|
+
class p {
|
|
186
187
|
constructor(...e) {
|
|
187
188
|
this.type = "Physical", e.length === 1 ? "Physical" in e[0] ? (this.x = e[0].Physical.x, this.y = e[0].Physical.y) : (this.x = e[0].x, this.y = e[0].y) : (this.x = e[0], this.y = e[1]);
|
|
188
189
|
}
|
|
@@ -202,29 +203,29 @@ class c {
|
|
|
202
203
|
* @since 2.0.0
|
|
203
204
|
*/
|
|
204
205
|
toLogical(e) {
|
|
205
|
-
return new
|
|
206
|
+
return new U(this.x / e, this.y / e);
|
|
206
207
|
}
|
|
207
|
-
[
|
|
208
|
+
[m]() {
|
|
208
209
|
return {
|
|
209
210
|
x: this.x,
|
|
210
211
|
y: this.y
|
|
211
212
|
};
|
|
212
213
|
}
|
|
213
214
|
toJSON() {
|
|
214
|
-
return this[
|
|
215
|
+
return this[m]();
|
|
215
216
|
}
|
|
216
217
|
}
|
|
217
|
-
class
|
|
218
|
+
class z {
|
|
218
219
|
constructor(e) {
|
|
219
220
|
this.position = e;
|
|
220
221
|
}
|
|
221
222
|
toLogical(e) {
|
|
222
|
-
return this.position instanceof
|
|
223
|
+
return this.position instanceof U ? this.position : this.position.toLogical(e);
|
|
223
224
|
}
|
|
224
225
|
toPhysical(e) {
|
|
225
|
-
return this.position instanceof
|
|
226
|
+
return this.position instanceof p ? this.position : this.position.toPhysical(e);
|
|
226
227
|
}
|
|
227
|
-
[
|
|
228
|
+
[m]() {
|
|
228
229
|
return {
|
|
229
230
|
[`${this.position.type}`]: {
|
|
230
231
|
x: this.position.x,
|
|
@@ -233,47 +234,47 @@ class _ {
|
|
|
233
234
|
};
|
|
234
235
|
}
|
|
235
236
|
toJSON() {
|
|
236
|
-
return this[
|
|
237
|
+
return this[m]();
|
|
237
238
|
}
|
|
238
239
|
}
|
|
239
|
-
var
|
|
240
|
-
(function(
|
|
241
|
-
|
|
242
|
-
})(
|
|
243
|
-
async function
|
|
244
|
-
window.__TAURI_EVENT_PLUGIN_INTERNALS__.unregisterListener(
|
|
245
|
-
event:
|
|
240
|
+
var b;
|
|
241
|
+
(function(t) {
|
|
242
|
+
t.WINDOW_RESIZED = "tauri://resize", t.WINDOW_MOVED = "tauri://move", t.WINDOW_CLOSE_REQUESTED = "tauri://close-requested", t.WINDOW_DESTROYED = "tauri://destroyed", t.WINDOW_FOCUS = "tauri://focus", t.WINDOW_BLUR = "tauri://blur", t.WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change", t.WINDOW_THEME_CHANGED = "tauri://theme-changed", t.WINDOW_CREATED = "tauri://window-created", t.WEBVIEW_CREATED = "tauri://webview-created", t.DRAG_ENTER = "tauri://drag-enter", t.DRAG_OVER = "tauri://drag-over", t.DRAG_DROP = "tauri://drag-drop", t.DRAG_LEAVE = "tauri://drag-leave";
|
|
243
|
+
})(b || (b = {}));
|
|
244
|
+
async function G(t, e) {
|
|
245
|
+
window.__TAURI_EVENT_PLUGIN_INTERNALS__.unregisterListener(t, e), await n("plugin:event|unlisten", {
|
|
246
|
+
event: t,
|
|
246
247
|
eventId: e
|
|
247
248
|
});
|
|
248
249
|
}
|
|
249
|
-
async function
|
|
250
|
+
async function H(t, e, i) {
|
|
250
251
|
var l;
|
|
251
|
-
const
|
|
252
|
+
const a = typeof i?.target == "string" ? { kind: "AnyLabel", label: i.target } : (l = i?.target) !== null && l !== void 0 ? l : { kind: "Any" };
|
|
252
253
|
return n("plugin:event|listen", {
|
|
253
|
-
event:
|
|
254
|
-
target:
|
|
255
|
-
handler:
|
|
256
|
-
}).then((
|
|
254
|
+
event: t,
|
|
255
|
+
target: a,
|
|
256
|
+
handler: oe(e)
|
|
257
|
+
}).then((c) => async () => G(t, c));
|
|
257
258
|
}
|
|
258
|
-
async function
|
|
259
|
-
return
|
|
260
|
-
|
|
261
|
-
},
|
|
259
|
+
async function ue(t, e, i) {
|
|
260
|
+
return H(t, (l) => {
|
|
261
|
+
G(t, l.id), e(l);
|
|
262
|
+
}, i);
|
|
262
263
|
}
|
|
263
|
-
async function
|
|
264
|
+
async function ce(t, e) {
|
|
264
265
|
await n("plugin:event|emit", {
|
|
265
|
-
event:
|
|
266
|
+
event: t,
|
|
266
267
|
payload: e
|
|
267
268
|
});
|
|
268
269
|
}
|
|
269
|
-
async function
|
|
270
|
+
async function de(t, e, i) {
|
|
270
271
|
await n("plugin:event|emit_to", {
|
|
271
|
-
target: typeof
|
|
272
|
+
target: typeof t == "string" ? { kind: "AnyLabel", label: t } : t,
|
|
272
273
|
event: e,
|
|
273
|
-
payload:
|
|
274
|
+
payload: i
|
|
274
275
|
});
|
|
275
276
|
}
|
|
276
|
-
class
|
|
277
|
+
class S extends re {
|
|
277
278
|
/**
|
|
278
279
|
* Creates an Image from a resource ID. For internal use only.
|
|
279
280
|
*
|
|
@@ -283,12 +284,12 @@ class g extends ie {
|
|
|
283
284
|
super(e);
|
|
284
285
|
}
|
|
285
286
|
/** Creates a new Image using RGBA data, in row-major order from top to bottom, and with specified width and height. */
|
|
286
|
-
static async new(e,
|
|
287
|
+
static async new(e, i, l) {
|
|
287
288
|
return n("plugin:image|new", {
|
|
288
|
-
rgba:
|
|
289
|
-
width:
|
|
289
|
+
rgba: A(e),
|
|
290
|
+
width: i,
|
|
290
291
|
height: l
|
|
291
|
-
}).then((
|
|
292
|
+
}).then((a) => new S(a));
|
|
292
293
|
}
|
|
293
294
|
/**
|
|
294
295
|
* Creates a new image using the provided bytes by inferring the file format.
|
|
@@ -305,8 +306,8 @@ class g extends ie {
|
|
|
305
306
|
*/
|
|
306
307
|
static async fromBytes(e) {
|
|
307
308
|
return n("plugin:image|from_bytes", {
|
|
308
|
-
bytes:
|
|
309
|
-
}).then((
|
|
309
|
+
bytes: A(e)
|
|
310
|
+
}).then((i) => new S(i));
|
|
310
311
|
}
|
|
311
312
|
/**
|
|
312
313
|
* Creates a new image using the provided path.
|
|
@@ -321,7 +322,7 @@ class g extends ie {
|
|
|
321
322
|
* ```
|
|
322
323
|
*/
|
|
323
324
|
static async fromPath(e) {
|
|
324
|
-
return n("plugin:image|from_path", { path: e }).then((
|
|
325
|
+
return n("plugin:image|from_path", { path: e }).then((i) => new S(i));
|
|
325
326
|
}
|
|
326
327
|
/** Returns the RGBA data for this image, in row-major order from top to bottom. */
|
|
327
328
|
async rgba() {
|
|
@@ -334,14 +335,14 @@ class g extends ie {
|
|
|
334
335
|
return n("plugin:image|size", { rid: this.rid });
|
|
335
336
|
}
|
|
336
337
|
}
|
|
337
|
-
function
|
|
338
|
-
return
|
|
338
|
+
function A(t) {
|
|
339
|
+
return t == null ? null : typeof t == "string" ? t : t instanceof S ? t.rid : t;
|
|
339
340
|
}
|
|
340
|
-
var
|
|
341
|
-
(function(
|
|
342
|
-
|
|
343
|
-
})(
|
|
344
|
-
class
|
|
341
|
+
var B;
|
|
342
|
+
(function(t) {
|
|
343
|
+
t[t.Critical = 1] = "Critical", t[t.Informational = 2] = "Informational";
|
|
344
|
+
})(B || (B = {}));
|
|
345
|
+
class he {
|
|
345
346
|
constructor(e) {
|
|
346
347
|
this._preventDefault = !1, this.event = e.event, this.id = e.id;
|
|
347
348
|
}
|
|
@@ -352,24 +353,24 @@ class se {
|
|
|
352
353
|
return this._preventDefault;
|
|
353
354
|
}
|
|
354
355
|
}
|
|
355
|
-
var
|
|
356
|
-
(function(
|
|
357
|
-
|
|
358
|
-
})(
|
|
359
|
-
function
|
|
360
|
-
return new
|
|
356
|
+
var R;
|
|
357
|
+
(function(t) {
|
|
358
|
+
t.None = "none", t.Normal = "normal", t.Indeterminate = "indeterminate", t.Paused = "paused", t.Error = "error";
|
|
359
|
+
})(R || (R = {}));
|
|
360
|
+
function j() {
|
|
361
|
+
return new J(window.__TAURI_INTERNALS__.metadata.currentWindow.label, {
|
|
361
362
|
// @ts-expect-error `skip` is not defined in the public API but it is handled by the constructor
|
|
362
363
|
skip: !0
|
|
363
364
|
});
|
|
364
365
|
}
|
|
365
|
-
async function
|
|
366
|
-
return n("plugin:window|get_all_windows").then((
|
|
366
|
+
async function $() {
|
|
367
|
+
return n("plugin:window|get_all_windows").then((t) => t.map((e) => new J(e, {
|
|
367
368
|
// @ts-expect-error `skip` is not defined in the public API but it is handled by the constructor
|
|
368
369
|
skip: !0
|
|
369
370
|
})));
|
|
370
371
|
}
|
|
371
|
-
const
|
|
372
|
-
class
|
|
372
|
+
const O = ["tauri://created", "tauri://error"];
|
|
373
|
+
class J {
|
|
373
374
|
/**
|
|
374
375
|
* Creates a new Window.
|
|
375
376
|
* @example
|
|
@@ -387,15 +388,15 @@ class M {
|
|
|
387
388
|
* @param label The unique window label. Must be alphanumeric: `a-zA-Z-/:_`.
|
|
388
389
|
* @returns The {@link Window} instance to communicate with the window.
|
|
389
390
|
*/
|
|
390
|
-
constructor(e,
|
|
391
|
+
constructor(e, i = {}) {
|
|
391
392
|
var l;
|
|
392
|
-
this.label = e, this.listeners = /* @__PURE__ */ Object.create(null),
|
|
393
|
+
this.label = e, this.listeners = /* @__PURE__ */ Object.create(null), i?.skip || n("plugin:window|create", {
|
|
393
394
|
options: {
|
|
394
|
-
...
|
|
395
|
-
parent: typeof
|
|
395
|
+
...i,
|
|
396
|
+
parent: typeof i.parent == "string" ? i.parent : (l = i.parent) === null || l === void 0 ? void 0 : l.label,
|
|
396
397
|
label: e
|
|
397
398
|
}
|
|
398
|
-
}).then(async () => this.emit("tauri://created")).catch(async (
|
|
399
|
+
}).then(async () => this.emit("tauri://created")).catch(async (a) => this.emit("tauri://error", a));
|
|
399
400
|
}
|
|
400
401
|
/**
|
|
401
402
|
* Gets the Window associated with the given label.
|
|
@@ -409,20 +410,20 @@ class M {
|
|
|
409
410
|
* @returns The Window instance to communicate with the window or null if the window doesn't exist.
|
|
410
411
|
*/
|
|
411
412
|
static async getByLabel(e) {
|
|
412
|
-
var
|
|
413
|
-
return (
|
|
413
|
+
var i;
|
|
414
|
+
return (i = (await $()).find((l) => l.label === e)) !== null && i !== void 0 ? i : null;
|
|
414
415
|
}
|
|
415
416
|
/**
|
|
416
417
|
* Get an instance of `Window` for the current window.
|
|
417
418
|
*/
|
|
418
419
|
static getCurrent() {
|
|
419
|
-
return
|
|
420
|
+
return j();
|
|
420
421
|
}
|
|
421
422
|
/**
|
|
422
423
|
* Gets a list of instances of `Window` for all available windows.
|
|
423
424
|
*/
|
|
424
425
|
static async getAll() {
|
|
425
|
-
return
|
|
426
|
+
return $();
|
|
426
427
|
}
|
|
427
428
|
/**
|
|
428
429
|
* Gets the focused window.
|
|
@@ -435,7 +436,7 @@ class M {
|
|
|
435
436
|
* @returns The Window instance or `undefined` if there is not any focused window.
|
|
436
437
|
*/
|
|
437
438
|
static async getFocusedWindow() {
|
|
438
|
-
for (const e of await
|
|
439
|
+
for (const e of await $())
|
|
439
440
|
if (await e.isFocused())
|
|
440
441
|
return e;
|
|
441
442
|
return null;
|
|
@@ -459,11 +460,11 @@ class M {
|
|
|
459
460
|
* @returns A promise resolving to a function to unlisten to the event.
|
|
460
461
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
461
462
|
*/
|
|
462
|
-
async listen(e,
|
|
463
|
-
return this._handleTauriEvent(e,
|
|
463
|
+
async listen(e, i) {
|
|
464
|
+
return this._handleTauriEvent(e, i) ? () => {
|
|
464
465
|
const l = this.listeners[e];
|
|
465
|
-
l.splice(l.indexOf(
|
|
466
|
-
} :
|
|
466
|
+
l.splice(l.indexOf(i), 1);
|
|
467
|
+
} : H(e, i, {
|
|
467
468
|
target: { kind: "Window", label: this.label }
|
|
468
469
|
});
|
|
469
470
|
}
|
|
@@ -486,11 +487,11 @@ class M {
|
|
|
486
487
|
* @returns A promise resolving to a function to unlisten to the event.
|
|
487
488
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
488
489
|
*/
|
|
489
|
-
async once(e,
|
|
490
|
-
return this._handleTauriEvent(e,
|
|
490
|
+
async once(e, i) {
|
|
491
|
+
return this._handleTauriEvent(e, i) ? () => {
|
|
491
492
|
const l = this.listeners[e];
|
|
492
|
-
l.splice(l.indexOf(
|
|
493
|
-
} :
|
|
493
|
+
l.splice(l.indexOf(i), 1);
|
|
494
|
+
} : ue(e, i, {
|
|
494
495
|
target: { kind: "Window", label: this.label }
|
|
495
496
|
});
|
|
496
497
|
}
|
|
@@ -505,17 +506,17 @@ class M {
|
|
|
505
506
|
* @param event Event name. Must include only alphanumeric characters, `-`, `/`, `:` and `_`.
|
|
506
507
|
* @param payload Event payload.
|
|
507
508
|
*/
|
|
508
|
-
async emit(e,
|
|
509
|
-
if (
|
|
509
|
+
async emit(e, i) {
|
|
510
|
+
if (O.includes(e)) {
|
|
510
511
|
for (const l of this.listeners[e] || [])
|
|
511
512
|
l({
|
|
512
513
|
event: e,
|
|
513
514
|
id: -1,
|
|
514
|
-
payload:
|
|
515
|
+
payload: i
|
|
515
516
|
});
|
|
516
517
|
return;
|
|
517
518
|
}
|
|
518
|
-
return
|
|
519
|
+
return ce(e, i);
|
|
519
520
|
}
|
|
520
521
|
/**
|
|
521
522
|
* Emits an event to all {@link EventTarget|targets} matching the given target.
|
|
@@ -529,21 +530,21 @@ class M {
|
|
|
529
530
|
* @param event Event name. Must include only alphanumeric characters, `-`, `/`, `:` and `_`.
|
|
530
531
|
* @param payload Event payload.
|
|
531
532
|
*/
|
|
532
|
-
async emitTo(e,
|
|
533
|
-
if (
|
|
534
|
-
for (const
|
|
535
|
-
|
|
536
|
-
event:
|
|
533
|
+
async emitTo(e, i, l) {
|
|
534
|
+
if (O.includes(i)) {
|
|
535
|
+
for (const a of this.listeners[i] || [])
|
|
536
|
+
a({
|
|
537
|
+
event: i,
|
|
537
538
|
id: -1,
|
|
538
539
|
payload: l
|
|
539
540
|
});
|
|
540
541
|
return;
|
|
541
542
|
}
|
|
542
|
-
return
|
|
543
|
+
return de(e, i, l);
|
|
543
544
|
}
|
|
544
545
|
/** @ignore */
|
|
545
|
-
_handleTauriEvent(e,
|
|
546
|
-
return
|
|
546
|
+
_handleTauriEvent(e, i) {
|
|
547
|
+
return O.includes(e) ? (e in this.listeners ? this.listeners[e].push(i) : this.listeners[e] = [i], !0) : !1;
|
|
547
548
|
}
|
|
548
549
|
// Getters
|
|
549
550
|
/**
|
|
@@ -574,7 +575,7 @@ class M {
|
|
|
574
575
|
async innerPosition() {
|
|
575
576
|
return n("plugin:window|inner_position", {
|
|
576
577
|
label: this.label
|
|
577
|
-
}).then((e) => new
|
|
578
|
+
}).then((e) => new p(e));
|
|
578
579
|
}
|
|
579
580
|
/**
|
|
580
581
|
* The position of the top-left hand corner of the window relative to the top-left hand corner of the desktop.
|
|
@@ -589,7 +590,7 @@ class M {
|
|
|
589
590
|
async outerPosition() {
|
|
590
591
|
return n("plugin:window|outer_position", {
|
|
591
592
|
label: this.label
|
|
592
|
-
}).then((e) => new
|
|
593
|
+
}).then((e) => new p(e));
|
|
593
594
|
}
|
|
594
595
|
/**
|
|
595
596
|
* The physical size of the window's client area.
|
|
@@ -605,7 +606,7 @@ class M {
|
|
|
605
606
|
async innerSize() {
|
|
606
607
|
return n("plugin:window|inner_size", {
|
|
607
608
|
label: this.label
|
|
608
|
-
}).then((e) => new
|
|
609
|
+
}).then((e) => new C(e));
|
|
609
610
|
}
|
|
610
611
|
/**
|
|
611
612
|
* The physical size of the entire window.
|
|
@@ -621,7 +622,7 @@ class M {
|
|
|
621
622
|
async outerSize() {
|
|
622
623
|
return n("plugin:window|outer_size", {
|
|
623
624
|
label: this.label
|
|
624
|
-
}).then((e) => new
|
|
625
|
+
}).then((e) => new C(e));
|
|
625
626
|
}
|
|
626
627
|
/**
|
|
627
628
|
* Gets the window's current fullscreen state.
|
|
@@ -871,10 +872,10 @@ class M {
|
|
|
871
872
|
* @returns A promise indicating the success or failure of the operation.
|
|
872
873
|
*/
|
|
873
874
|
async requestUserAttention(e) {
|
|
874
|
-
let
|
|
875
|
-
return e && (e ===
|
|
875
|
+
let i = null;
|
|
876
|
+
return e && (e === B.Critical ? i = { type: "Critical" } : i = { type: "Informational" }), n("plugin:window|request_user_attention", {
|
|
876
877
|
label: this.label,
|
|
877
|
-
value:
|
|
878
|
+
value: i
|
|
878
879
|
});
|
|
879
880
|
}
|
|
880
881
|
/**
|
|
@@ -1272,7 +1273,7 @@ class M {
|
|
|
1272
1273
|
async setSize(e) {
|
|
1273
1274
|
return n("plugin:window|set_size", {
|
|
1274
1275
|
label: this.label,
|
|
1275
|
-
value: e instanceof
|
|
1276
|
+
value: e instanceof _ ? e : new _(e)
|
|
1276
1277
|
});
|
|
1277
1278
|
}
|
|
1278
1279
|
/**
|
|
@@ -1289,7 +1290,7 @@ class M {
|
|
|
1289
1290
|
async setMinSize(e) {
|
|
1290
1291
|
return n("plugin:window|set_min_size", {
|
|
1291
1292
|
label: this.label,
|
|
1292
|
-
value: e instanceof
|
|
1293
|
+
value: e instanceof _ ? e : e ? new _(e) : null
|
|
1293
1294
|
});
|
|
1294
1295
|
}
|
|
1295
1296
|
/**
|
|
@@ -1306,7 +1307,7 @@ class M {
|
|
|
1306
1307
|
async setMaxSize(e) {
|
|
1307
1308
|
return n("plugin:window|set_max_size", {
|
|
1308
1309
|
label: this.label,
|
|
1309
|
-
value: e instanceof
|
|
1310
|
+
value: e instanceof _ ? e : e ? new _(e) : null
|
|
1310
1311
|
});
|
|
1311
1312
|
}
|
|
1312
1313
|
/**
|
|
@@ -1321,16 +1322,16 @@ class M {
|
|
|
1321
1322
|
* @returns A promise indicating the success or failure of the operation.
|
|
1322
1323
|
*/
|
|
1323
1324
|
async setSizeConstraints(e) {
|
|
1324
|
-
function
|
|
1325
|
+
function i(l) {
|
|
1325
1326
|
return l ? { Logical: l } : null;
|
|
1326
1327
|
}
|
|
1327
1328
|
return n("plugin:window|set_size_constraints", {
|
|
1328
1329
|
label: this.label,
|
|
1329
1330
|
value: {
|
|
1330
|
-
minWidth:
|
|
1331
|
-
minHeight:
|
|
1332
|
-
maxWidth:
|
|
1333
|
-
maxHeight:
|
|
1331
|
+
minWidth: i(e?.minWidth),
|
|
1332
|
+
minHeight: i(e?.minHeight),
|
|
1333
|
+
maxWidth: i(e?.maxWidth),
|
|
1334
|
+
maxHeight: i(e?.maxHeight)
|
|
1334
1335
|
}
|
|
1335
1336
|
});
|
|
1336
1337
|
}
|
|
@@ -1348,7 +1349,7 @@ class M {
|
|
|
1348
1349
|
async setPosition(e) {
|
|
1349
1350
|
return n("plugin:window|set_position", {
|
|
1350
1351
|
label: this.label,
|
|
1351
|
-
value: e instanceof
|
|
1352
|
+
value: e instanceof z ? e : new z(e)
|
|
1352
1353
|
});
|
|
1353
1354
|
}
|
|
1354
1355
|
/**
|
|
@@ -1442,7 +1443,7 @@ class M {
|
|
|
1442
1443
|
async setIcon(e) {
|
|
1443
1444
|
return n("plugin:window|set_icon", {
|
|
1444
1445
|
label: this.label,
|
|
1445
|
-
value:
|
|
1446
|
+
value: A(e)
|
|
1446
1447
|
});
|
|
1447
1448
|
}
|
|
1448
1449
|
/**
|
|
@@ -1560,7 +1561,7 @@ class M {
|
|
|
1560
1561
|
async setCursorPosition(e) {
|
|
1561
1562
|
return n("plugin:window|set_cursor_position", {
|
|
1562
1563
|
label: this.label,
|
|
1563
|
-
value: e instanceof
|
|
1564
|
+
value: e instanceof z ? e : new z(e)
|
|
1564
1565
|
});
|
|
1565
1566
|
}
|
|
1566
1567
|
/**
|
|
@@ -1677,7 +1678,7 @@ class M {
|
|
|
1677
1678
|
async setOverlayIcon(e) {
|
|
1678
1679
|
return n("plugin:window|set_overlay_icon", {
|
|
1679
1680
|
label: this.label,
|
|
1680
|
-
value: e ?
|
|
1681
|
+
value: e ? A(e) : void 0
|
|
1681
1682
|
});
|
|
1682
1683
|
}
|
|
1683
1684
|
/**
|
|
@@ -1766,8 +1767,8 @@ class M {
|
|
|
1766
1767
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
1767
1768
|
*/
|
|
1768
1769
|
async onResized(e) {
|
|
1769
|
-
return this.listen(
|
|
1770
|
-
|
|
1770
|
+
return this.listen(b.WINDOW_RESIZED, (i) => {
|
|
1771
|
+
i.payload = new C(i.payload), e(i);
|
|
1771
1772
|
});
|
|
1772
1773
|
}
|
|
1773
1774
|
/**
|
|
@@ -1788,8 +1789,8 @@ class M {
|
|
|
1788
1789
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
1789
1790
|
*/
|
|
1790
1791
|
async onMoved(e) {
|
|
1791
|
-
return this.listen(
|
|
1792
|
-
|
|
1792
|
+
return this.listen(b.WINDOW_MOVED, (i) => {
|
|
1793
|
+
i.payload = new p(i.payload), e(i);
|
|
1793
1794
|
});
|
|
1794
1795
|
}
|
|
1795
1796
|
/**
|
|
@@ -1815,8 +1816,8 @@ class M {
|
|
|
1815
1816
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
1816
1817
|
*/
|
|
1817
1818
|
async onCloseRequested(e) {
|
|
1818
|
-
return this.listen(
|
|
1819
|
-
const l = new
|
|
1819
|
+
return this.listen(b.WINDOW_CLOSE_REQUESTED, async (i) => {
|
|
1820
|
+
const l = new he(i);
|
|
1820
1821
|
await e(l), l.isPreventDefault() || await this.destroy();
|
|
1821
1822
|
});
|
|
1822
1823
|
}
|
|
@@ -1846,37 +1847,37 @@ class M {
|
|
|
1846
1847
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
1847
1848
|
*/
|
|
1848
1849
|
async onDragDropEvent(e) {
|
|
1849
|
-
const
|
|
1850
|
+
const i = await this.listen(b.DRAG_ENTER, (r) => {
|
|
1850
1851
|
e({
|
|
1851
|
-
...
|
|
1852
|
+
...r,
|
|
1852
1853
|
payload: {
|
|
1853
1854
|
type: "enter",
|
|
1854
|
-
paths:
|
|
1855
|
-
position: new
|
|
1855
|
+
paths: r.payload.paths,
|
|
1856
|
+
position: new p(r.payload.position)
|
|
1856
1857
|
}
|
|
1857
1858
|
});
|
|
1858
|
-
}), l = await this.listen(
|
|
1859
|
+
}), l = await this.listen(b.DRAG_OVER, (r) => {
|
|
1859
1860
|
e({
|
|
1860
|
-
...
|
|
1861
|
+
...r,
|
|
1861
1862
|
payload: {
|
|
1862
1863
|
type: "over",
|
|
1863
|
-
position: new
|
|
1864
|
+
position: new p(r.payload.position)
|
|
1864
1865
|
}
|
|
1865
1866
|
});
|
|
1866
|
-
}),
|
|
1867
|
+
}), a = await this.listen(b.DRAG_DROP, (r) => {
|
|
1867
1868
|
e({
|
|
1868
|
-
...
|
|
1869
|
+
...r,
|
|
1869
1870
|
payload: {
|
|
1870
1871
|
type: "drop",
|
|
1871
|
-
paths:
|
|
1872
|
-
position: new
|
|
1872
|
+
paths: r.payload.paths,
|
|
1873
|
+
position: new p(r.payload.position)
|
|
1873
1874
|
}
|
|
1874
1875
|
});
|
|
1875
|
-
}),
|
|
1876
|
-
e({ ...
|
|
1876
|
+
}), c = await this.listen(b.DRAG_LEAVE, (r) => {
|
|
1877
|
+
e({ ...r, payload: { type: "leave" } });
|
|
1877
1878
|
});
|
|
1878
1879
|
return () => {
|
|
1879
|
-
|
|
1880
|
+
i(), a(), l(), c();
|
|
1880
1881
|
};
|
|
1881
1882
|
}
|
|
1882
1883
|
/**
|
|
@@ -1897,13 +1898,13 @@ class M {
|
|
|
1897
1898
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
1898
1899
|
*/
|
|
1899
1900
|
async onFocusChanged(e) {
|
|
1900
|
-
const
|
|
1901
|
-
e({ ...
|
|
1902
|
-
}), l = await this.listen(
|
|
1903
|
-
e({ ...
|
|
1901
|
+
const i = await this.listen(b.WINDOW_FOCUS, (a) => {
|
|
1902
|
+
e({ ...a, payload: !0 });
|
|
1903
|
+
}), l = await this.listen(b.WINDOW_BLUR, (a) => {
|
|
1904
|
+
e({ ...a, payload: !1 });
|
|
1904
1905
|
});
|
|
1905
1906
|
return () => {
|
|
1906
|
-
|
|
1907
|
+
i(), l();
|
|
1907
1908
|
};
|
|
1908
1909
|
}
|
|
1909
1910
|
/**
|
|
@@ -1928,7 +1929,7 @@ class M {
|
|
|
1928
1929
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
1929
1930
|
*/
|
|
1930
1931
|
async onScaleChanged(e) {
|
|
1931
|
-
return this.listen(
|
|
1932
|
+
return this.listen(b.WINDOW_SCALE_FACTOR_CHANGED, e);
|
|
1932
1933
|
}
|
|
1933
1934
|
/**
|
|
1934
1935
|
* Listen to the system theme change.
|
|
@@ -1948,106 +1949,113 @@ class M {
|
|
|
1948
1949
|
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
|
1949
1950
|
*/
|
|
1950
1951
|
async onThemeChanged(e) {
|
|
1951
|
-
return this.listen(
|
|
1952
|
+
return this.listen(b.WINDOW_THEME_CHANGED, e);
|
|
1952
1953
|
}
|
|
1953
1954
|
}
|
|
1954
|
-
var O;
|
|
1955
|
-
(function(i) {
|
|
1956
|
-
i.Disabled = "disabled", i.Throttle = "throttle", i.Suspend = "suspend";
|
|
1957
|
-
})(O || (O = {}));
|
|
1958
|
-
var A;
|
|
1959
|
-
(function(i) {
|
|
1960
|
-
i.AppearanceBased = "appearanceBased", i.Light = "light", i.Dark = "dark", i.MediumLight = "mediumLight", i.UltraDark = "ultraDark", i.Titlebar = "titlebar", i.Selection = "selection", i.Menu = "menu", i.Popover = "popover", i.Sidebar = "sidebar", i.HeaderView = "headerView", i.Sheet = "sheet", i.WindowBackground = "windowBackground", i.HudWindow = "hudWindow", i.FullScreenUI = "fullScreenUI", i.Tooltip = "tooltip", i.ContentBackground = "contentBackground", i.UnderWindowBackground = "underWindowBackground", i.UnderPageBackground = "underPageBackground", i.Mica = "mica", i.Blur = "blur", i.Acrylic = "acrylic", i.Tabbed = "tabbed", i.TabbedDark = "tabbedDark", i.TabbedLight = "tabbedLight";
|
|
1961
|
-
})(A || (A = {}));
|
|
1962
1955
|
var N;
|
|
1963
|
-
(function(
|
|
1964
|
-
|
|
1956
|
+
(function(t) {
|
|
1957
|
+
t.Disabled = "disabled", t.Throttle = "throttle", t.Suspend = "suspend";
|
|
1965
1958
|
})(N || (N = {}));
|
|
1966
|
-
|
|
1959
|
+
var E;
|
|
1960
|
+
(function(t) {
|
|
1961
|
+
t.Default = "default", t.FluentOverlay = "fluentOverlay";
|
|
1962
|
+
})(E || (E = {}));
|
|
1963
|
+
var P;
|
|
1964
|
+
(function(t) {
|
|
1965
|
+
t.AppearanceBased = "appearanceBased", t.Light = "light", t.Dark = "dark", t.MediumLight = "mediumLight", t.UltraDark = "ultraDark", t.Titlebar = "titlebar", t.Selection = "selection", t.Menu = "menu", t.Popover = "popover", t.Sidebar = "sidebar", t.HeaderView = "headerView", t.Sheet = "sheet", t.WindowBackground = "windowBackground", t.HudWindow = "hudWindow", t.FullScreenUI = "fullScreenUI", t.Tooltip = "tooltip", t.ContentBackground = "contentBackground", t.UnderWindowBackground = "underWindowBackground", t.UnderPageBackground = "underPageBackground", t.Mica = "mica", t.Blur = "blur", t.Acrylic = "acrylic", t.Tabbed = "tabbed", t.TabbedDark = "tabbedDark", t.TabbedLight = "tabbedLight";
|
|
1966
|
+
})(P || (P = {}));
|
|
1967
|
+
var M;
|
|
1968
|
+
(function(t) {
|
|
1969
|
+
t.FollowsWindowActiveState = "followsWindowActiveState", t.Active = "active", t.Inactive = "inactive";
|
|
1970
|
+
})(M || (M = {}));
|
|
1971
|
+
async function be(t, e = {}, i) {
|
|
1972
|
+
return window.__TAURI_INTERNALS__.invoke(t, e, i);
|
|
1973
|
+
}
|
|
1974
|
+
async function we(t) {
|
|
1967
1975
|
try {
|
|
1968
|
-
return await
|
|
1976
|
+
return await be("plugin:vicons|get_icon", { name: t });
|
|
1969
1977
|
} catch (e) {
|
|
1970
1978
|
console.error("[Icon Error] Error obteniendo icono:", e);
|
|
1971
1979
|
}
|
|
1972
1980
|
return "";
|
|
1973
1981
|
}
|
|
1974
|
-
function
|
|
1982
|
+
function ge(t) {
|
|
1975
1983
|
try {
|
|
1976
|
-
const e = atob(
|
|
1984
|
+
const e = atob(t.substring(0, 32)), i = new Uint8Array(e.length);
|
|
1977
1985
|
for (let l = 0; l < e.length; l++)
|
|
1978
|
-
|
|
1979
|
-
return
|
|
1986
|
+
i[l] = e.charCodeAt(l);
|
|
1987
|
+
return i[0] === 137 && i[1] === 80 && i[2] === 78 && i[3] === 71 ? "image/png" : "image/svg+xml";
|
|
1980
1988
|
} catch (e) {
|
|
1981
1989
|
return console.error("Error identificando tipo de imagen:", e), "image/png";
|
|
1982
1990
|
}
|
|
1983
1991
|
}
|
|
1984
|
-
async function
|
|
1992
|
+
async function L(t) {
|
|
1985
1993
|
try {
|
|
1986
|
-
const e = await
|
|
1987
|
-
return `data:${
|
|
1994
|
+
const e = await we(t);
|
|
1995
|
+
return `data:${ge(e)};base64,${e}`;
|
|
1988
1996
|
} catch (e) {
|
|
1989
1997
|
return console.error("[Icon Error] Error obteniendo icono:", e), "";
|
|
1990
1998
|
}
|
|
1991
1999
|
}
|
|
1992
|
-
const
|
|
2000
|
+
const me = { "data-tauri-drag-region": "" }, ye = ["src"], fe = { "data-tauri-drag-region": "" }, pe = { "data-tauri-drag-region": "" }, ve = ["src"], _e = ["src"], ke = ["src"], xe = /* @__PURE__ */ y({
|
|
1993
2001
|
__name: "TopBar",
|
|
1994
2002
|
props: {
|
|
1995
2003
|
title: String,
|
|
1996
2004
|
image: String
|
|
1997
2005
|
},
|
|
1998
|
-
setup(
|
|
1999
|
-
const e =
|
|
2000
|
-
return
|
|
2001
|
-
l.value = await
|
|
2002
|
-
}), (
|
|
2006
|
+
setup(t) {
|
|
2007
|
+
const e = x(null), i = j(), l = x(""), a = x(""), c = x(""), r = t;
|
|
2008
|
+
return q(async () => {
|
|
2009
|
+
l.value = await L("window-close"), a.value = await L("window-minimize"), c.value = await L("window-maximize");
|
|
2010
|
+
}), (f, h) => (o(), s("div", {
|
|
2003
2011
|
"data-tauri-drag-region": "",
|
|
2004
2012
|
class: "flex h-8 px-4 py-1 bg-vsk-primary rounded-t-window justify-between align-center",
|
|
2005
2013
|
ref_key: "bar",
|
|
2006
2014
|
ref: e
|
|
2007
2015
|
}, [
|
|
2008
|
-
u("div",
|
|
2016
|
+
u("div", me, [
|
|
2009
2017
|
u("img", {
|
|
2010
|
-
src:
|
|
2018
|
+
src: r.image,
|
|
2011
2019
|
"data-tauri-drag-region": "",
|
|
2012
2020
|
class: "h-6 w-auto"
|
|
2013
|
-
}, null, 8,
|
|
2021
|
+
}, null, 8, ye)
|
|
2014
2022
|
]),
|
|
2015
|
-
u("div",
|
|
2016
|
-
u("div",
|
|
2023
|
+
u("div", fe, w(r.title), 1),
|
|
2024
|
+
u("div", pe, [
|
|
2017
2025
|
u("span", {
|
|
2018
2026
|
class: "win-button",
|
|
2019
|
-
onClick: h[0] || (h[0] = (
|
|
2027
|
+
onClick: h[0] || (h[0] = (v) => W(i).minimize())
|
|
2020
2028
|
}, [
|
|
2021
2029
|
u("img", {
|
|
2022
|
-
src:
|
|
2030
|
+
src: a.value,
|
|
2023
2031
|
class: "h-6 w-6 inline-block",
|
|
2024
2032
|
alt: "Minimize"
|
|
2025
|
-
}, null, 8,
|
|
2033
|
+
}, null, 8, ve)
|
|
2026
2034
|
]),
|
|
2027
2035
|
u("span", {
|
|
2028
2036
|
class: "win-button",
|
|
2029
|
-
onClick: h[1] || (h[1] = (
|
|
2037
|
+
onClick: h[1] || (h[1] = (v) => W(i).toggleMaximize())
|
|
2030
2038
|
}, [
|
|
2031
2039
|
u("img", {
|
|
2032
|
-
src:
|
|
2040
|
+
src: c.value,
|
|
2033
2041
|
class: "h-6 w-6 inline-block",
|
|
2034
2042
|
alt: "Maximize"
|
|
2035
|
-
}, null, 8,
|
|
2043
|
+
}, null, 8, _e)
|
|
2036
2044
|
]),
|
|
2037
2045
|
u("span", {
|
|
2038
2046
|
class: "win-button",
|
|
2039
|
-
onClick: h[2] || (h[2] = (
|
|
2047
|
+
onClick: h[2] || (h[2] = (v) => W(i).close())
|
|
2040
2048
|
}, [
|
|
2041
2049
|
u("img", {
|
|
2042
2050
|
src: l.value,
|
|
2043
2051
|
class: "h-6 w-6 inline-block",
|
|
2044
2052
|
alt: "Close"
|
|
2045
|
-
}, null, 8,
|
|
2053
|
+
}, null, 8, ke)
|
|
2046
2054
|
])
|
|
2047
2055
|
])
|
|
2048
2056
|
], 512));
|
|
2049
2057
|
}
|
|
2050
|
-
}),
|
|
2058
|
+
}), Ce = /* @__PURE__ */ y({
|
|
2051
2059
|
__name: "WindowFrame",
|
|
2052
2060
|
props: {
|
|
2053
2061
|
title: {
|
|
@@ -2059,26 +2067,411 @@ const oe = { "data-tauri-drag-region": "" }, ue = ["src"], ce = { "data-tauri-dr
|
|
|
2059
2067
|
default: ""
|
|
2060
2068
|
}
|
|
2061
2069
|
},
|
|
2062
|
-
setup(
|
|
2063
|
-
const e =
|
|
2064
|
-
return (
|
|
2065
|
-
|
|
2070
|
+
setup(t) {
|
|
2071
|
+
const e = t;
|
|
2072
|
+
return (i, l) => (o(), s(F, null, [
|
|
2073
|
+
Z(xe, {
|
|
2066
2074
|
title: e.title,
|
|
2067
2075
|
image: e.image
|
|
2068
2076
|
}, null, 8, ["title", "image"]),
|
|
2069
|
-
|
|
2077
|
+
k(i.$slots, "default")
|
|
2070
2078
|
], 64));
|
|
2071
2079
|
}
|
|
2072
|
-
}),
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2080
|
+
}), Se = ["type", "disabled"], De = {
|
|
2081
|
+
key: 0,
|
|
2082
|
+
class: "w-4 h-4 animate-spin rounded-full border-2 border-current border-t-transparent"
|
|
2083
|
+
}, ze = ["src", "alt"], Ie = { key: 2 }, Ae = ["src", "alt"], We = /* @__PURE__ */ y({
|
|
2084
|
+
__name: "ActionButton",
|
|
2085
|
+
props: {
|
|
2086
|
+
label: {},
|
|
2087
|
+
disabled: { type: Boolean, default: !1 },
|
|
2088
|
+
variant: { default: "primary" },
|
|
2089
|
+
loading: { type: Boolean, default: !1 },
|
|
2090
|
+
customClass: { default: () => ({}) },
|
|
2091
|
+
size: { default: "md" },
|
|
2092
|
+
fullWidth: { type: Boolean, default: !1 },
|
|
2093
|
+
iconSrc: { default: "" },
|
|
2094
|
+
iconAlt: { default: "" },
|
|
2095
|
+
iconRight: { type: Boolean, default: !1 },
|
|
2096
|
+
type: { default: "button" },
|
|
2097
|
+
stopPropagation: { type: Boolean, default: !1 },
|
|
2098
|
+
preventDefault: { type: Boolean, default: !1 }
|
|
2099
|
+
},
|
|
2100
|
+
emits: ["click"],
|
|
2101
|
+
setup(t, { emit: e }) {
|
|
2102
|
+
const i = t, l = e, a = {
|
|
2103
|
+
primary: "bg-vsk-primary text-white hover:bg-vsk-primary/90",
|
|
2104
|
+
secondary: "bg-vsk-border text-vsk-text hover:bg-vsk-border/80",
|
|
2105
|
+
danger: "bg-red-600 text-white hover:bg-red-700"
|
|
2106
|
+
}, c = {
|
|
2107
|
+
sm: "px-2 py-1 text-xs",
|
|
2108
|
+
md: "px-3 py-1 text-sm",
|
|
2109
|
+
lg: "px-4 py-2 text-base"
|
|
2110
|
+
}, r = (f) => {
|
|
2111
|
+
i.stopPropagation && f.stopPropagation(), i.preventDefault && f.preventDefault(), !i.disabled && !i.loading && l("click");
|
|
2112
|
+
};
|
|
2113
|
+
return (f, h) => (o(), s("button", {
|
|
2114
|
+
type: i.type,
|
|
2115
|
+
onClick: r,
|
|
2116
|
+
class: d(["rounded-vsk transition-all duration-200 disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2", [
|
|
2117
|
+
a[i.variant],
|
|
2118
|
+
c[i.size],
|
|
2119
|
+
i.fullWidth ? "w-full" : "",
|
|
2120
|
+
i.iconSrc && !i.label ? "px-2 py-2" : "",
|
|
2121
|
+
t.customClass
|
|
2122
|
+
]]),
|
|
2123
|
+
disabled: i.disabled || i.loading
|
|
2124
|
+
}, [
|
|
2125
|
+
t.loading ? (o(), s("span", De)) : g("", !0),
|
|
2126
|
+
i.iconSrc && !i.iconRight ? (o(), s("img", {
|
|
2127
|
+
key: 1,
|
|
2128
|
+
src: i.iconSrc,
|
|
2129
|
+
alt: i.iconAlt || i.label,
|
|
2130
|
+
class: "w-4 h-4"
|
|
2131
|
+
}, null, 8, ze)) : g("", !0),
|
|
2132
|
+
i.label ? (o(), s("span", Ie, w(i.label), 1)) : g("", !0),
|
|
2133
|
+
i.iconSrc && i.iconRight ? (o(), s("img", {
|
|
2134
|
+
key: 3,
|
|
2135
|
+
src: i.iconSrc,
|
|
2136
|
+
alt: i.iconAlt || i.label,
|
|
2137
|
+
class: "w-4 h-4"
|
|
2138
|
+
}, null, 8, Ae)) : g("", !0)
|
|
2139
|
+
], 10, Se));
|
|
2140
|
+
}
|
|
2141
|
+
}), $e = /* @__PURE__ */ D(We, [["__scopeId", "data-v-d1ce8923"]]), Oe = { class: "text-base font-semibold m-0 text-vsk-primary" }, Le = /* @__PURE__ */ y({
|
|
2142
|
+
__name: "ConfigSection",
|
|
2143
|
+
props: {
|
|
2144
|
+
title: {},
|
|
2145
|
+
icon: { default: "" },
|
|
2146
|
+
customClass: { default: () => ({}) }
|
|
2147
|
+
},
|
|
2148
|
+
setup(t) {
|
|
2149
|
+
return (e, i) => (o(), s("div", {
|
|
2150
|
+
class: d(["flex flex-col gap-4 p-4 background rounded-vsk", t.customClass])
|
|
2151
|
+
}, [
|
|
2152
|
+
u("h3", Oe, w(t.icon ? `${t.icon} ${t.title}` : t.title), 1),
|
|
2153
|
+
k(e.$slots, "default", {}, void 0, !0)
|
|
2154
|
+
], 2));
|
|
2155
|
+
}
|
|
2156
|
+
}), Be = /* @__PURE__ */ D(Le, [["__scopeId", "data-v-89531d08"]]), Te = { class: "flex items-center gap-3 flex-1 min-w-0" }, Re = ["src", "alt"], Ne = { class: "min-w-0" }, Ee = { class: "font-semibold truncate" }, Pe = {
|
|
2157
|
+
key: 0,
|
|
2158
|
+
class: "text-xs text-gray-400 truncate"
|
|
2159
|
+
}, Me = {
|
|
2160
|
+
key: 1,
|
|
2161
|
+
class: "text-xs text-gray-400 truncate"
|
|
2162
|
+
}, Fe = {
|
|
2163
|
+
key: 2,
|
|
2164
|
+
class: "text-xs text-gray-400 flex gap-2 mt-1"
|
|
2165
|
+
}, Ve = {
|
|
2166
|
+
key: 1,
|
|
2167
|
+
class: "w-2 h-2 rounded-full bg-green-500"
|
|
2168
|
+
}, Ue = /* @__PURE__ */ y({
|
|
2169
|
+
__name: "DeviceCard",
|
|
2170
|
+
props: {
|
|
2171
|
+
icon: {},
|
|
2172
|
+
title: {},
|
|
2173
|
+
subtitle: { default: "" },
|
|
2174
|
+
metadata: { default: "" },
|
|
2175
|
+
extraInfo: { default: () => [] },
|
|
2176
|
+
isConnected: { type: Boolean, default: !1 },
|
|
2177
|
+
showActionButton: { type: Boolean, default: !0 },
|
|
2178
|
+
actionLabel: { default: "Conectar" },
|
|
2179
|
+
showStatusIndicator: { type: Boolean, default: !1 },
|
|
2180
|
+
customClass: { default: "" },
|
|
2181
|
+
clickable: { type: Boolean, default: !1 }
|
|
2182
|
+
},
|
|
2183
|
+
emits: ["action", "click"],
|
|
2184
|
+
setup(t, { emit: e }) {
|
|
2185
|
+
const i = e, l = () => {
|
|
2186
|
+
i("action");
|
|
2187
|
+
}, a = () => {
|
|
2188
|
+
i("click");
|
|
2189
|
+
};
|
|
2190
|
+
return (c, r) => (o(), s("div", {
|
|
2191
|
+
class: d(["flex items-center justify-between background rounded-vsk px-6 py-3 mb-4", [{ "border-l-4 border-green-500": t.isConnected }, t.customClass]]),
|
|
2192
|
+
onClick: a
|
|
2193
|
+
}, [
|
|
2194
|
+
u("div", Te, [
|
|
2195
|
+
u("img", {
|
|
2196
|
+
src: t.icon,
|
|
2197
|
+
alt: t.title,
|
|
2198
|
+
class: "h-7 w-7 shrink-0"
|
|
2199
|
+
}, null, 8, Re),
|
|
2200
|
+
u("div", Ne, [
|
|
2201
|
+
u("div", Ee, w(t.title), 1),
|
|
2202
|
+
t.subtitle ? (o(), s("div", Pe, w(t.subtitle), 1)) : g("", !0),
|
|
2203
|
+
t.metadata ? (o(), s("div", Me, w(t.metadata), 1)) : g("", !0),
|
|
2204
|
+
t.extraInfo && t.extraInfo.length > 0 ? (o(), s("div", Fe, [
|
|
2205
|
+
(o(!0), s(F, null, Q(t.extraInfo, (f, h) => (o(), s("span", { key: h }, w(f), 1))), 128))
|
|
2206
|
+
])) : g("", !0)
|
|
2207
|
+
])
|
|
2208
|
+
]),
|
|
2209
|
+
t.showActionButton ? (o(), s("button", {
|
|
2210
|
+
key: 0,
|
|
2211
|
+
class: "bg-vsk-primary rounded-vsk px-4 py-2 text-sm font-semibold cursor-pointer hover:opacity-70",
|
|
2212
|
+
onClick: Y(l, ["stop"])
|
|
2213
|
+
}, w(t.actionLabel), 1)) : g("", !0),
|
|
2214
|
+
t.showStatusIndicator && t.isConnected ? (o(), s("div", Ve)) : g("", !0)
|
|
2215
|
+
], 2));
|
|
2216
|
+
}
|
|
2217
|
+
}), Ge = ["for"], He = /* @__PURE__ */ y({
|
|
2218
|
+
__name: "FormGroup",
|
|
2219
|
+
props: {
|
|
2220
|
+
label: {},
|
|
2221
|
+
htmlFor: { default: "" },
|
|
2222
|
+
customClass: { default: () => ({}) },
|
|
2223
|
+
labelClass: { default: () => ({}) }
|
|
2224
|
+
},
|
|
2225
|
+
setup(t) {
|
|
2226
|
+
return (e, i) => (o(), s("div", {
|
|
2227
|
+
class: d(["flex flex-col gap-2", t.customClass])
|
|
2228
|
+
}, [
|
|
2229
|
+
t.label ? (o(), s("label", {
|
|
2230
|
+
key: 0,
|
|
2231
|
+
for: t.htmlFor,
|
|
2232
|
+
class: d(["text-sm font-medium text-vsk-primary", t.labelClass])
|
|
2233
|
+
}, w(t.label), 11, Ge)) : g("", !0),
|
|
2234
|
+
k(e.$slots, "default", {}, void 0, !0)
|
|
2235
|
+
], 2));
|
|
2236
|
+
}
|
|
2237
|
+
}), je = /* @__PURE__ */ D(He, [["__scopeId", "data-v-a4bd01fc"]]), Je = /* @__PURE__ */ y({
|
|
2238
|
+
__name: "ListCard",
|
|
2239
|
+
props: {
|
|
2240
|
+
clickable: { type: Boolean, default: !1 },
|
|
2241
|
+
customClass: { default: () => ({}) }
|
|
2242
|
+
},
|
|
2243
|
+
emits: ["click"],
|
|
2244
|
+
setup(t, { emit: e }) {
|
|
2245
|
+
const i = t, l = e, a = () => {
|
|
2246
|
+
i.clickable && l("click");
|
|
2247
|
+
};
|
|
2248
|
+
return (c, r) => (o(), s("div", {
|
|
2249
|
+
class: d([
|
|
2250
|
+
"flex items-center justify-between background p-3 rounded-vsk border border-vsk-primary/70 transition-colors duration-200",
|
|
2251
|
+
{
|
|
2252
|
+
"hover:bg-vsk-primary/5 cursor-pointer": i.clickable
|
|
2253
|
+
},
|
|
2254
|
+
t.customClass
|
|
2255
|
+
]),
|
|
2256
|
+
onClick: a
|
|
2257
|
+
}, [
|
|
2258
|
+
k(c.$slots, "default", {}, void 0, !0)
|
|
2259
|
+
], 2));
|
|
2260
|
+
}
|
|
2261
|
+
}), qe = /* @__PURE__ */ D(Je, [["__scopeId", "data-v-f86d47da"]]), Ze = { class: "background rounded-vsk flex flex-row items-center gap-2 justify-between w-full h-auto p-4 transition-all duration-200 hover:bg-white/60 dark:hover:bg-black/60" }, Qe = ["src", "alt", "title"], Ye = {
|
|
2262
|
+
key: 1,
|
|
2263
|
+
class: "w-8 h-8 flex items-center justify-center"
|
|
2264
|
+
}, Ke = ["src", "alt"], Xe = ["min", "max", "value"], et = /* @__PURE__ */ y({
|
|
2265
|
+
__name: "SliderControl",
|
|
2266
|
+
props: {
|
|
2267
|
+
icon: {},
|
|
2268
|
+
alt: { default: "" },
|
|
2269
|
+
tooltip: { default: "" },
|
|
2270
|
+
modelValue: {},
|
|
2271
|
+
min: { default: 0 },
|
|
2272
|
+
max: { default: 100 },
|
|
2273
|
+
showButton: { type: Boolean, default: !1 },
|
|
2274
|
+
iconClass: { default: () => ({}) },
|
|
2275
|
+
getPercentageClass: { type: Function, default: () => "" }
|
|
2276
|
+
},
|
|
2277
|
+
emits: ["update:modelValue", "buttonClick"],
|
|
2278
|
+
setup(t, { emit: e }) {
|
|
2279
|
+
const i = t, l = e, a = T(() => {
|
|
2280
|
+
if (i.max <= i.min) return 0;
|
|
2281
|
+
const h = i.max - i.min, v = i.modelValue - i.min;
|
|
2282
|
+
return Math.round(v / h * 100);
|
|
2283
|
+
}), c = T(() => i.getPercentageClass ? i.getPercentageClass(a.value) : ""), r = (h) => {
|
|
2284
|
+
const v = h.target;
|
|
2285
|
+
l("update:modelValue", Number(v.value));
|
|
2286
|
+
}, f = () => {
|
|
2287
|
+
l("buttonClick");
|
|
2288
|
+
};
|
|
2289
|
+
return (h, v) => (o(), s("div", Ze, [
|
|
2290
|
+
t.showButton ? (o(), s("button", {
|
|
2291
|
+
key: 0,
|
|
2292
|
+
onClick: f,
|
|
2293
|
+
class: "w-8 h-8 flex items-center justify-center rounded-vsk transition-all duration-200 hover:bg-white/30 dark:hover:bg-black/30 hover:scale-110 active:scale-95"
|
|
2294
|
+
}, [
|
|
2295
|
+
u("img", {
|
|
2296
|
+
src: t.icon,
|
|
2297
|
+
alt: t.alt,
|
|
2298
|
+
title: t.tooltip,
|
|
2299
|
+
class: d(["w-6 h-6 transition-all duration-200", t.iconClass])
|
|
2300
|
+
}, null, 10, Qe)
|
|
2301
|
+
])) : (o(), s("div", Ye, [
|
|
2302
|
+
u("img", {
|
|
2303
|
+
src: t.icon,
|
|
2304
|
+
alt: t.alt,
|
|
2305
|
+
class: "w-6 h-6 transition-all duration-200"
|
|
2306
|
+
}, null, 8, Ke)
|
|
2307
|
+
])),
|
|
2308
|
+
u("input", {
|
|
2309
|
+
type: "range",
|
|
2310
|
+
min: t.min,
|
|
2311
|
+
max: t.max,
|
|
2312
|
+
value: t.modelValue,
|
|
2313
|
+
onInput: r,
|
|
2314
|
+
class: "flex-1 transition-all duration-200 hover:scale-105"
|
|
2315
|
+
}, null, 40, Xe),
|
|
2316
|
+
u("span", {
|
|
2317
|
+
class: d(["w-12 text-right transition-all duration-200 font-medium", c.value])
|
|
2318
|
+
}, w(a.value) + "% ", 3)
|
|
2319
|
+
]));
|
|
2320
|
+
}
|
|
2321
|
+
}), tt = ["disabled"], it = /* @__PURE__ */ y({
|
|
2322
|
+
__name: "SwitchToggle",
|
|
2323
|
+
props: {
|
|
2324
|
+
isOn: { type: Boolean },
|
|
2325
|
+
disabled: { type: Boolean, default: !1 },
|
|
2326
|
+
size: { default: "small" },
|
|
2327
|
+
activeClass: { default: "bg-vsk-primary" },
|
|
2328
|
+
inactiveClass: { default: "background" },
|
|
2329
|
+
customClass: { default: "" }
|
|
2330
|
+
},
|
|
2331
|
+
emits: ["toggle"],
|
|
2332
|
+
setup(t, { emit: e }) {
|
|
2333
|
+
const i = t, l = e, a = () => {
|
|
2334
|
+
l("toggle", !i.isOn);
|
|
2335
|
+
};
|
|
2336
|
+
return (c, r) => (o(), s("button", {
|
|
2337
|
+
type: "button",
|
|
2338
|
+
onClick: a,
|
|
2339
|
+
disabled: t.disabled,
|
|
2340
|
+
class: d([
|
|
2341
|
+
"relative inline-flex items-center rounded-full transition-colors",
|
|
2342
|
+
t.size === "small" ? "h-6 w-11" : "h-7 w-12",
|
|
2343
|
+
t.isOn ? t.activeClass : t.inactiveClass,
|
|
2344
|
+
t.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer",
|
|
2345
|
+
t.customClass
|
|
2346
|
+
])
|
|
2347
|
+
}, [
|
|
2348
|
+
u("span", {
|
|
2349
|
+
class: d([
|
|
2350
|
+
"inline-block transform rounded-full bg-white shadow transition-transform",
|
|
2351
|
+
t.size === "small" ? "h-4 w-4" : "h-6 w-6",
|
|
2352
|
+
t.isOn ? t.size === "small" ? "translate-x-6" : "translate-x-5" : "translate-x-1"
|
|
2353
|
+
])
|
|
2354
|
+
}, null, 2)
|
|
2355
|
+
], 10, tt));
|
|
2356
|
+
}
|
|
2357
|
+
}), nt = ["disabled"], lt = ["src", "alt", "title"], at = /* @__PURE__ */ y({
|
|
2358
|
+
__name: "ToggleControl",
|
|
2359
|
+
props: {
|
|
2360
|
+
icon: {},
|
|
2361
|
+
alt: { default: "" },
|
|
2362
|
+
tooltip: { default: "" },
|
|
2363
|
+
isActive: { type: Boolean, default: !1 },
|
|
2364
|
+
isLoading: { type: Boolean, default: !1 },
|
|
2365
|
+
iconClass: { default: () => ({}) },
|
|
2366
|
+
customClass: { default: () => ({}) }
|
|
2367
|
+
},
|
|
2368
|
+
emits: ["click"],
|
|
2369
|
+
setup(t, { emit: e }) {
|
|
2370
|
+
const i = e, l = () => {
|
|
2371
|
+
i("click");
|
|
2372
|
+
};
|
|
2373
|
+
return (a, c) => (o(), s("button", {
|
|
2374
|
+
onClick: l,
|
|
2375
|
+
class: d(["p-2 rounded-vsk background hover:opacity-50 transition-all duration-300 h-17.5 w-17.5 group relative overflow-hidden hover:scale-105 hover:shadow-lg active:scale-95", {
|
|
2376
|
+
"animate-pulse": t.isLoading,
|
|
2377
|
+
"ring-2 ring-vsk-primary/50": t.isActive,
|
|
2378
|
+
"opacity-60": !t.isActive,
|
|
2379
|
+
...t.customClass
|
|
2380
|
+
}]),
|
|
2381
|
+
disabled: t.isLoading
|
|
2382
|
+
}, [
|
|
2383
|
+
u("img", {
|
|
2384
|
+
src: t.icon,
|
|
2385
|
+
alt: t.alt,
|
|
2386
|
+
title: t.tooltip,
|
|
2387
|
+
class: d(["m-auto w-12.5 h-12.5 transition-all duration-300 group-hover:scale-110 relative z-10", {
|
|
2388
|
+
"animate-spin": t.isLoading,
|
|
2389
|
+
"filter brightness-75": !t.isActive,
|
|
2390
|
+
"drop-shadow-lg": t.isActive,
|
|
2391
|
+
...t.iconClass
|
|
2392
|
+
}])
|
|
2393
|
+
}, null, 10, lt)
|
|
2394
|
+
], 10, nt));
|
|
2395
|
+
}
|
|
2396
|
+
}), st = ["title"], ot = ["src", "alt"], rt = {
|
|
2397
|
+
key: 0,
|
|
2398
|
+
class: "absolute bottom-1 right-1 bg-vsk-primary text-white text-xs rounded-full w-4 h-4 flex items-center justify-center font-bold animate-bounce"
|
|
2399
|
+
}, ut = /* @__PURE__ */ y({
|
|
2400
|
+
__name: "TrayIconButton",
|
|
2401
|
+
props: {
|
|
2402
|
+
icon: {},
|
|
2403
|
+
alt: { default: "" },
|
|
2404
|
+
tooltip: { default: "" },
|
|
2405
|
+
badge: { default: null },
|
|
2406
|
+
iconClass: { default: () => ({}) },
|
|
2407
|
+
customClass: { default: "" },
|
|
2408
|
+
tooltipClass: { default: "" },
|
|
2409
|
+
showCustomTooltip: { type: Boolean, default: !1 },
|
|
2410
|
+
customTooltipText: { default: "" }
|
|
2411
|
+
},
|
|
2412
|
+
emits: ["click"],
|
|
2413
|
+
setup(t, { emit: e }) {
|
|
2414
|
+
const i = e, l = x(!1), a = () => {
|
|
2415
|
+
i("click");
|
|
2416
|
+
};
|
|
2417
|
+
return (c, r) => (o(), s("div", {
|
|
2418
|
+
class: d(["p-1 rounded-vsk relative hover:bg-vsk-primary/30 group transition-all duration-300", t.customClass]),
|
|
2419
|
+
title: t.tooltip,
|
|
2420
|
+
onClick: a,
|
|
2421
|
+
onMouseenter: r[0] || (r[0] = (f) => l.value = !0),
|
|
2422
|
+
onMouseleave: r[1] || (r[1] = (f) => l.value = !1)
|
|
2423
|
+
}, [
|
|
2424
|
+
u("img", {
|
|
2425
|
+
src: t.icon,
|
|
2426
|
+
alt: t.alt,
|
|
2427
|
+
class: d(["m-auto h-5.5 w-auto transition-all duration-300", t.iconClass])
|
|
2428
|
+
}, null, 10, ot),
|
|
2429
|
+
t.badge !== null && t.badge > 0 ? (o(), s("div", rt, w(t.badge), 1)) : g("", !0),
|
|
2430
|
+
t.showCustomTooltip && t.customTooltipText ? (o(), s("div", {
|
|
2431
|
+
key: 1,
|
|
2432
|
+
class: d(["absolute top-1 left-1/2 transform -translate-x-1/2 text-xs font-semibold p-1 rounded-vsk transition-all duration-300 pointer-events-none background", [
|
|
2433
|
+
t.tooltipClass,
|
|
2434
|
+
{
|
|
2435
|
+
"opacity-0 -translate-y-2": !l.value,
|
|
2436
|
+
"opacity-100 translate-y-0": l.value
|
|
2437
|
+
}
|
|
2438
|
+
]])
|
|
2439
|
+
}, w(t.customTooltipText), 3)) : g("", !0),
|
|
2440
|
+
k(c.$slots, "default")
|
|
2441
|
+
], 42, st));
|
|
2442
|
+
}
|
|
2443
|
+
}), ct = [
|
|
2444
|
+
te,
|
|
2445
|
+
le,
|
|
2446
|
+
Ce,
|
|
2447
|
+
$e,
|
|
2448
|
+
Be,
|
|
2449
|
+
Ue,
|
|
2450
|
+
je,
|
|
2451
|
+
qe,
|
|
2452
|
+
et,
|
|
2453
|
+
it,
|
|
2454
|
+
at,
|
|
2455
|
+
ut
|
|
2456
|
+
], ht = {
|
|
2457
|
+
install(t) {
|
|
2458
|
+
ct.forEach((e) => {
|
|
2459
|
+
t.component(e.name, e);
|
|
2076
2460
|
});
|
|
2077
2461
|
}
|
|
2078
2462
|
};
|
|
2079
2463
|
export {
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2464
|
+
$e as ActionButton,
|
|
2465
|
+
Be as ConfigSection,
|
|
2466
|
+
Ue as DeviceCard,
|
|
2467
|
+
je as FormGroup,
|
|
2468
|
+
qe as ListCard,
|
|
2469
|
+
te as SideBar,
|
|
2470
|
+
le as SideButton,
|
|
2471
|
+
et as SliderControl,
|
|
2472
|
+
it as SwitchToggle,
|
|
2473
|
+
at as ToggleControl,
|
|
2474
|
+
ut as TrayIconButton,
|
|
2475
|
+
Ce as WindowFrame,
|
|
2476
|
+
ht as default
|
|
2084
2477
|
};
|