dxd-style-code 0.1.0 → 0.1.2
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/README.md +8 -7
- package/dist/dxd-style-code.js +1464 -1079
- package/dist/dxd-style-code.umd.cjs +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/dist/dxd-style-code.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { computed as
|
|
2
|
-
const
|
|
1
|
+
import { computed as p, createBlock as $, openBlock as a, resolveDynamicComponent as O, normalizeClass as f, withCtx as T, renderSlot as V, createElementBlock as n, createCommentVNode as c, createTextVNode as j, createElementVNode as o, toDisplayString as h, normalizeStyle as G, ref as B, createVNode as A, unref as _, inject as Q, Fragment as M, renderList as L, watch as F, Transition as Y, provide as ee, onMounted as U, onBeforeUnmount as te, withDirectives as q, withKeys as E, withModifiers as P, vModelText as K, nextTick as J, vShow as ce, Teleport as ge } from "vue";
|
|
2
|
+
const Os = {
|
|
3
3
|
__name: "DXHeading",
|
|
4
4
|
props: {
|
|
5
5
|
/** Уровень заголовка: 1-6 */
|
|
@@ -14,7 +14,7 @@ const ms = {
|
|
|
14
14
|
truncate: { type: Boolean, default: !1 }
|
|
15
15
|
},
|
|
16
16
|
setup(e) {
|
|
17
|
-
const t = e, l =
|
|
17
|
+
const t = e, l = p(() => `h${t.level}`), s = {
|
|
18
18
|
xs: "text-xs",
|
|
19
19
|
sm: "text-sm",
|
|
20
20
|
md: "text-base",
|
|
@@ -42,25 +42,25 @@ const ms = {
|
|
|
42
42
|
success: "text-emerald-700",
|
|
43
43
|
warning: "text-amber-700",
|
|
44
44
|
danger: "text-rose-700"
|
|
45
|
-
}, u =
|
|
45
|
+
}, u = p(() => [
|
|
46
46
|
t.size ? s[t.size] : r[t.level],
|
|
47
47
|
i[t.weight] || i.semibold,
|
|
48
48
|
d[t.color] || d.default,
|
|
49
49
|
"tracking-tight",
|
|
50
50
|
t.truncate && "truncate"
|
|
51
51
|
]);
|
|
52
|
-
return (
|
|
52
|
+
return (v, b) => (a(), $(O(l.value), {
|
|
53
53
|
class: f(u.value),
|
|
54
54
|
"data-component": "DXHeading",
|
|
55
55
|
"data-level": e.level
|
|
56
56
|
}, {
|
|
57
|
-
default:
|
|
58
|
-
|
|
57
|
+
default: T(() => [
|
|
58
|
+
V(v.$slots, "default")
|
|
59
59
|
]),
|
|
60
60
|
_: 3
|
|
61
61
|
}, 8, ["class", "data-level"]));
|
|
62
62
|
}
|
|
63
|
-
},
|
|
63
|
+
}, Zs = {
|
|
64
64
|
__name: "DXText",
|
|
65
65
|
props: {
|
|
66
66
|
/** Тег: p | span | div */
|
|
@@ -102,7 +102,7 @@ const ms = {
|
|
|
102
102
|
center: "text-center",
|
|
103
103
|
right: "text-right",
|
|
104
104
|
justify: "text-justify"
|
|
105
|
-
}, d =
|
|
105
|
+
}, d = p(() => [
|
|
106
106
|
l[t.size] || l.md,
|
|
107
107
|
s[t.weight] || s.normal,
|
|
108
108
|
r[t.color] || r.default,
|
|
@@ -111,20 +111,20 @@ const ms = {
|
|
|
111
111
|
t.truncate && "truncate",
|
|
112
112
|
t.lines > 0 && `line-clamp-${t.lines}`
|
|
113
113
|
]);
|
|
114
|
-
return (u,
|
|
114
|
+
return (u, v) => (a(), $(O(e.tag), {
|
|
115
115
|
class: f(d.value),
|
|
116
116
|
"data-component": "DXText"
|
|
117
117
|
}, {
|
|
118
|
-
default:
|
|
119
|
-
|
|
118
|
+
default: T(() => [
|
|
119
|
+
V(u.$slots, "default")
|
|
120
120
|
]),
|
|
121
121
|
_: 3
|
|
122
122
|
}, 8, ["class"]));
|
|
123
123
|
}
|
|
124
|
-
},
|
|
124
|
+
}, xe = ["for"], ye = {
|
|
125
125
|
key: 0,
|
|
126
126
|
class: "text-rose-500 ml-0.5"
|
|
127
|
-
},
|
|
127
|
+
}, Ts = {
|
|
128
128
|
__name: "DXLabel",
|
|
129
129
|
props: {
|
|
130
130
|
/** ID связанного input */
|
|
@@ -152,7 +152,7 @@ const ms = {
|
|
|
152
152
|
default: "text-slate-700",
|
|
153
153
|
muted: "text-slate-500",
|
|
154
154
|
primary: "text-slate-900"
|
|
155
|
-
}, i =
|
|
155
|
+
}, i = p(() => [
|
|
156
156
|
"block",
|
|
157
157
|
l[t.size] || l.sm,
|
|
158
158
|
s[t.weight] || s.medium,
|
|
@@ -163,11 +163,11 @@ const ms = {
|
|
|
163
163
|
for: e.htmlFor,
|
|
164
164
|
"data-component": "DXLabel"
|
|
165
165
|
}, [
|
|
166
|
-
|
|
167
|
-
e.required ? (a(), n("span",
|
|
168
|
-
], 10,
|
|
166
|
+
V(d.$slots, "default"),
|
|
167
|
+
e.required ? (a(), n("span", ye, "*")) : c("", !0)
|
|
168
|
+
], 10, xe));
|
|
169
169
|
}
|
|
170
|
-
},
|
|
170
|
+
}, we = { key: 0 }, Ns = {
|
|
171
171
|
__name: "DXCode",
|
|
172
172
|
props: {
|
|
173
173
|
/** Блочный код (pre) или inline */
|
|
@@ -182,7 +182,7 @@ const ms = {
|
|
|
182
182
|
xs: "text-xs",
|
|
183
183
|
sm: "text-sm",
|
|
184
184
|
md: "text-base"
|
|
185
|
-
}, s =
|
|
185
|
+
}, s = p(() => t.block ? [
|
|
186
186
|
"block w-full overflow-x-auto rounded-xl bg-slate-900 text-slate-100 p-4",
|
|
187
187
|
l[t.size] || l.sm,
|
|
188
188
|
"font-mono leading-relaxed"
|
|
@@ -191,23 +191,23 @@ const ms = {
|
|
|
191
191
|
l[t.size] || l.sm,
|
|
192
192
|
"font-mono"
|
|
193
193
|
]);
|
|
194
|
-
return (r, i) => (a(),
|
|
194
|
+
return (r, i) => (a(), $(O(e.block ? "pre" : "code"), {
|
|
195
195
|
class: f(s.value),
|
|
196
196
|
"data-component": "DXCode",
|
|
197
197
|
"data-block": e.block
|
|
198
198
|
}, {
|
|
199
|
-
default:
|
|
200
|
-
e.block ? (a(), n("code",
|
|
201
|
-
|
|
202
|
-
])) :
|
|
199
|
+
default: T(() => [
|
|
200
|
+
e.block ? (a(), n("code", we, [
|
|
201
|
+
V(r.$slots, "default")
|
|
202
|
+
])) : V(r.$slots, "default", { key: 1 })
|
|
203
203
|
]),
|
|
204
204
|
_: 3
|
|
205
205
|
}, 8, ["class", "data-block"]));
|
|
206
206
|
}
|
|
207
|
-
},
|
|
207
|
+
}, ke = ["data-variant"], $e = {
|
|
208
208
|
key: 0,
|
|
209
209
|
class: "mt-2 text-sm text-slate-500"
|
|
210
|
-
},
|
|
210
|
+
}, Ps = {
|
|
211
211
|
__name: "DXBlockquote",
|
|
212
212
|
props: {
|
|
213
213
|
/** Вариант: default | bordered | highlighted */
|
|
@@ -226,7 +226,7 @@ const ms = {
|
|
|
226
226
|
default: "text-slate-600 italic",
|
|
227
227
|
bordered: "border-l-4 border-slate-300 pl-4 text-slate-600 italic",
|
|
228
228
|
highlighted: "bg-slate-50 border-l-4 border-slate-400 pl-4 pr-4 py-3 rounded-r-lg text-slate-700"
|
|
229
|
-
}, r =
|
|
229
|
+
}, r = p(() => [
|
|
230
230
|
l[t.size] || l.md,
|
|
231
231
|
s[t.variant] || s.bordered,
|
|
232
232
|
"leading-relaxed"
|
|
@@ -236,18 +236,18 @@ const ms = {
|
|
|
236
236
|
"data-component": "DXBlockquote",
|
|
237
237
|
"data-variant": e.variant
|
|
238
238
|
}, [
|
|
239
|
-
|
|
240
|
-
e.cite || i.$slots.cite ? (a(), n("footer",
|
|
239
|
+
V(i.$slots, "default"),
|
|
240
|
+
e.cite || i.$slots.cite ? (a(), n("footer", $e, [
|
|
241
241
|
d[0] || (d[0] = j(" — ", -1)),
|
|
242
242
|
o("cite", null, [
|
|
243
|
-
|
|
244
|
-
j(
|
|
243
|
+
V(i.$slots, "cite", {}, () => [
|
|
244
|
+
j(h(e.cite), 1)
|
|
245
245
|
])
|
|
246
246
|
])
|
|
247
247
|
])) : c("", !0)
|
|
248
|
-
], 10,
|
|
248
|
+
], 10, ke));
|
|
249
249
|
}
|
|
250
|
-
},
|
|
250
|
+
}, Rs = {
|
|
251
251
|
__name: "DXList",
|
|
252
252
|
props: {
|
|
253
253
|
/** Нумерованный список */
|
|
@@ -275,23 +275,23 @@ const ms = {
|
|
|
275
275
|
square: "list-square",
|
|
276
276
|
decimal: "list-decimal",
|
|
277
277
|
none: "list-none"
|
|
278
|
-
}, i =
|
|
278
|
+
}, i = p(() => [
|
|
279
279
|
l[t.size] || l.md,
|
|
280
280
|
s[t.spacing] || s.sm,
|
|
281
281
|
t.marker ? r[t.marker] : t.ordered ? "list-decimal" : "list-disc",
|
|
282
282
|
"pl-5 text-slate-700"
|
|
283
283
|
]);
|
|
284
|
-
return (d, u) => (a(),
|
|
284
|
+
return (d, u) => (a(), $(O(e.ordered ? "ol" : "ul"), {
|
|
285
285
|
class: f(i.value),
|
|
286
286
|
"data-component": "DXList"
|
|
287
287
|
}, {
|
|
288
|
-
default:
|
|
289
|
-
|
|
288
|
+
default: T(() => [
|
|
289
|
+
V(d.$slots, "default")
|
|
290
290
|
]),
|
|
291
291
|
_: 3
|
|
292
292
|
}, 8, ["class"]));
|
|
293
293
|
}
|
|
294
|
-
},
|
|
294
|
+
}, Ce = ["data-size"], qs = {
|
|
295
295
|
__name: "DXContainer",
|
|
296
296
|
props: {
|
|
297
297
|
/** Максимальная ширина: sm | md | lg | xl | 2xl | full */
|
|
@@ -314,7 +314,7 @@ const ms = {
|
|
|
314
314
|
sm: "px-4",
|
|
315
315
|
md: "px-6",
|
|
316
316
|
lg: "px-8"
|
|
317
|
-
}, r =
|
|
317
|
+
}, r = p(() => [
|
|
318
318
|
"w-full",
|
|
319
319
|
l[t.size] || l.lg,
|
|
320
320
|
s[t.padding] || s.md,
|
|
@@ -325,10 +325,10 @@ const ms = {
|
|
|
325
325
|
"data-component": "DXContainer",
|
|
326
326
|
"data-size": e.size
|
|
327
327
|
}, [
|
|
328
|
-
|
|
329
|
-
], 10,
|
|
328
|
+
V(i.$slots, "default")
|
|
329
|
+
], 10, Ce));
|
|
330
330
|
}
|
|
331
|
-
},
|
|
331
|
+
}, Hs = {
|
|
332
332
|
__name: "DXGrid",
|
|
333
333
|
props: {
|
|
334
334
|
/** Количество колонок: 1-12 или auto */
|
|
@@ -368,7 +368,7 @@ const ms = {
|
|
|
368
368
|
11: "grid-cols-11",
|
|
369
369
|
12: "grid-cols-12",
|
|
370
370
|
auto: "grid-cols-[repeat(auto-fit,minmax(250px,1fr))]"
|
|
371
|
-
}, r =
|
|
371
|
+
}, r = p(() => [
|
|
372
372
|
"grid",
|
|
373
373
|
s[t.cols] || `grid-cols-${t.cols}`,
|
|
374
374
|
t.colsSm && `sm:grid-cols-${t.colsSm}`,
|
|
@@ -377,16 +377,16 @@ const ms = {
|
|
|
377
377
|
!t.gapX && !t.gapY && (l[t.gap] || l.md),
|
|
378
378
|
t.gapX && `gap-x-${t.gapX}`,
|
|
379
379
|
t.gapY && `gap-y-${t.gapY}`
|
|
380
|
-
]), i =
|
|
380
|
+
]), i = p(() => t.cols === "auto" ? {} : {});
|
|
381
381
|
return (d, u) => (a(), n("div", {
|
|
382
382
|
class: f(r.value),
|
|
383
|
-
style:
|
|
383
|
+
style: G(i.value),
|
|
384
384
|
"data-component": "DXGrid"
|
|
385
385
|
}, [
|
|
386
|
-
|
|
386
|
+
V(d.$slots, "default")
|
|
387
387
|
], 6));
|
|
388
388
|
}
|
|
389
|
-
},
|
|
389
|
+
}, Fs = {
|
|
390
390
|
__name: "DXFlex",
|
|
391
391
|
props: {
|
|
392
392
|
/** Направление: row | row-reverse | col | col-reverse */
|
|
@@ -432,7 +432,7 @@ const ms = {
|
|
|
432
432
|
md: "gap-4",
|
|
433
433
|
lg: "gap-6",
|
|
434
434
|
xl: "gap-8"
|
|
435
|
-
}, u =
|
|
435
|
+
}, u = p(() => [
|
|
436
436
|
t.inline ? "inline-flex" : "flex",
|
|
437
437
|
l[t.direction] || l.row,
|
|
438
438
|
s[t.justify] || s.start,
|
|
@@ -440,14 +440,14 @@ const ms = {
|
|
|
440
440
|
i[t.wrap] || i.nowrap,
|
|
441
441
|
d[t.gap] || d.md
|
|
442
442
|
]);
|
|
443
|
-
return (
|
|
443
|
+
return (v, b) => (a(), n("div", {
|
|
444
444
|
class: f(u.value),
|
|
445
445
|
"data-component": "DXFlex"
|
|
446
446
|
}, [
|
|
447
|
-
|
|
447
|
+
V(v.$slots, "default")
|
|
448
448
|
], 2));
|
|
449
449
|
}
|
|
450
|
-
},
|
|
450
|
+
}, Se = ["data-direction"], Es = {
|
|
451
451
|
__name: "DXStack",
|
|
452
452
|
props: {
|
|
453
453
|
/** Направление: vertical | horizontal */
|
|
@@ -481,7 +481,7 @@ const ms = {
|
|
|
481
481
|
end: "justify-end",
|
|
482
482
|
between: "justify-between",
|
|
483
483
|
around: "justify-around"
|
|
484
|
-
}, i =
|
|
484
|
+
}, i = p(() => [
|
|
485
485
|
"flex",
|
|
486
486
|
t.direction === "horizontal" ? "flex-row" : "flex-col",
|
|
487
487
|
l[t.gap] || l.md,
|
|
@@ -494,10 +494,10 @@ const ms = {
|
|
|
494
494
|
"data-component": "DXStack",
|
|
495
495
|
"data-direction": e.direction
|
|
496
496
|
}, [
|
|
497
|
-
|
|
498
|
-
], 10,
|
|
497
|
+
V(d.$slots, "default")
|
|
498
|
+
], 10, Se));
|
|
499
499
|
}
|
|
500
|
-
},
|
|
500
|
+
}, Gs = {
|
|
501
501
|
__name: "DXSpacer",
|
|
502
502
|
props: {
|
|
503
503
|
/** Размер: xs | sm | md | lg | xl | 2xl или число в пикселях */
|
|
@@ -515,12 +515,12 @@ const ms = {
|
|
|
515
515
|
lg: { v: "h-8", h: "w-8" },
|
|
516
516
|
xl: { v: "h-12", h: "w-12" },
|
|
517
517
|
"2xl": { v: "h-16", h: "w-16" }
|
|
518
|
-
}, s =
|
|
518
|
+
}, s = p(() => {
|
|
519
519
|
if (t.grow)
|
|
520
520
|
return ["flex-grow"];
|
|
521
521
|
const i = l[t.size];
|
|
522
522
|
return i ? t.direction === "horizontal" ? [i.h] : t.direction === "both" ? [i.v, i.h] : [i.v] : [];
|
|
523
|
-
}), r =
|
|
523
|
+
}), r = p(() => {
|
|
524
524
|
if (t.grow) return {};
|
|
525
525
|
if (typeof t.size == "number") {
|
|
526
526
|
const i = `${t.size}px`;
|
|
@@ -530,12 +530,12 @@ const ms = {
|
|
|
530
530
|
});
|
|
531
531
|
return (i, d) => (a(), n("div", {
|
|
532
532
|
class: f(s.value),
|
|
533
|
-
style:
|
|
533
|
+
style: G(r.value),
|
|
534
534
|
"data-component": "DXSpacer",
|
|
535
535
|
"aria-hidden": "true"
|
|
536
536
|
}, null, 6));
|
|
537
537
|
}
|
|
538
|
-
},
|
|
538
|
+
}, Us = {
|
|
539
539
|
__name: "DXBox",
|
|
540
540
|
props: {
|
|
541
541
|
/** HTML тег */
|
|
@@ -595,7 +595,7 @@ const ms = {
|
|
|
595
595
|
md: "shadow",
|
|
596
596
|
lg: "shadow-lg",
|
|
597
597
|
xl: "shadow-xl"
|
|
598
|
-
}, u =
|
|
598
|
+
}, u = p(() => [
|
|
599
599
|
t.p && `p-${l[t.p] || t.p}`,
|
|
600
600
|
t.px && `px-${l[t.px] || t.px}`,
|
|
601
601
|
t.py && `py-${l[t.py] || t.py}`,
|
|
@@ -607,18 +607,18 @@ const ms = {
|
|
|
607
607
|
t.shadow && (d[t.shadow] || `shadow-${t.shadow}`),
|
|
608
608
|
t.border && "border border-slate-200"
|
|
609
609
|
]);
|
|
610
|
-
return (
|
|
610
|
+
return (v, b) => (a(), $(O(e.tag), {
|
|
611
611
|
class: f(u.value),
|
|
612
612
|
"data-component": "DXBox"
|
|
613
613
|
}, {
|
|
614
|
-
default:
|
|
615
|
-
|
|
614
|
+
default: T(() => [
|
|
615
|
+
V(v.$slots, "default")
|
|
616
616
|
]),
|
|
617
617
|
_: 3
|
|
618
618
|
}, 8, ["class"]));
|
|
619
619
|
}
|
|
620
620
|
};
|
|
621
|
-
function
|
|
621
|
+
function Ve(e, t) {
|
|
622
622
|
return a(), n("svg", {
|
|
623
623
|
xmlns: "http://www.w3.org/2000/svg",
|
|
624
624
|
viewBox: "0 0 24 24",
|
|
@@ -633,7 +633,7 @@ function ke(e, t) {
|
|
|
633
633
|
})
|
|
634
634
|
]);
|
|
635
635
|
}
|
|
636
|
-
function
|
|
636
|
+
function De(e, t) {
|
|
637
637
|
return a(), n("svg", {
|
|
638
638
|
xmlns: "http://www.w3.org/2000/svg",
|
|
639
639
|
viewBox: "0 0 24 24",
|
|
@@ -648,7 +648,7 @@ function $e(e, t) {
|
|
|
648
648
|
})
|
|
649
649
|
]);
|
|
650
650
|
}
|
|
651
|
-
function
|
|
651
|
+
function le(e, t) {
|
|
652
652
|
return a(), n("svg", {
|
|
653
653
|
xmlns: "http://www.w3.org/2000/svg",
|
|
654
654
|
viewBox: "0 0 24 24",
|
|
@@ -663,7 +663,7 @@ function Q(e, t) {
|
|
|
663
663
|
})
|
|
664
664
|
]);
|
|
665
665
|
}
|
|
666
|
-
function
|
|
666
|
+
function ze(e, t) {
|
|
667
667
|
return a(), n("svg", {
|
|
668
668
|
xmlns: "http://www.w3.org/2000/svg",
|
|
669
669
|
viewBox: "0 0 24 24",
|
|
@@ -678,7 +678,7 @@ function Ce(e, t) {
|
|
|
678
678
|
})
|
|
679
679
|
]);
|
|
680
680
|
}
|
|
681
|
-
function
|
|
681
|
+
function ae(e, t) {
|
|
682
682
|
return a(), n("svg", {
|
|
683
683
|
xmlns: "http://www.w3.org/2000/svg",
|
|
684
684
|
viewBox: "0 0 24 24",
|
|
@@ -693,7 +693,7 @@ function ee(e, t) {
|
|
|
693
693
|
})
|
|
694
694
|
]);
|
|
695
695
|
}
|
|
696
|
-
function
|
|
696
|
+
function Be(e, t) {
|
|
697
697
|
return a(), n("svg", {
|
|
698
698
|
xmlns: "http://www.w3.org/2000/svg",
|
|
699
699
|
viewBox: "0 0 24 24",
|
|
@@ -706,7 +706,7 @@ function Se(e, t) {
|
|
|
706
706
|
o("path", { d: "M6.75 12c0-.619.107-1.213.304-1.764l-3.1-3.1a11.25 11.25 0 0 0-2.63 4.31c-.12.362-.12.752 0 1.114 1.489 4.467 5.704 7.69 10.675 7.69 1.5 0 2.933-.294 4.242-.827l-2.477-2.477A5.25 5.25 0 0 1 6.75 12Z" })
|
|
707
707
|
]);
|
|
708
708
|
}
|
|
709
|
-
function
|
|
709
|
+
function Xe(e, t) {
|
|
710
710
|
return a(), n("svg", {
|
|
711
711
|
xmlns: "http://www.w3.org/2000/svg",
|
|
712
712
|
viewBox: "0 0 24 24",
|
|
@@ -717,7 +717,7 @@ function Ve(e, t) {
|
|
|
717
717
|
o("path", { d: "m11.645 20.91-.007-.003-.022-.012a15.247 15.247 0 0 1-.383-.218 25.18 25.18 0 0 1-4.244-3.17C4.688 15.36 2.25 12.174 2.25 8.25 2.25 5.322 4.714 3 7.688 3A5.5 5.5 0 0 1 12 5.052 5.5 5.5 0 0 1 16.313 3c2.973 0 5.437 2.322 5.437 5.25 0 3.925-2.438 7.111-4.739 9.256a25.175 25.175 0 0 1-4.244 3.17 15.247 15.247 0 0 1-.383.219l-.022.012-.007.004-.003.001a.752.752 0 0 1-.704 0l-.003-.001Z" })
|
|
718
718
|
]);
|
|
719
719
|
}
|
|
720
|
-
function
|
|
720
|
+
function ne(e, t) {
|
|
721
721
|
return a(), n("svg", {
|
|
722
722
|
xmlns: "http://www.w3.org/2000/svg",
|
|
723
723
|
viewBox: "0 0 24 24",
|
|
@@ -732,7 +732,7 @@ function te(e, t) {
|
|
|
732
732
|
})
|
|
733
733
|
]);
|
|
734
734
|
}
|
|
735
|
-
function
|
|
735
|
+
function Ie(e, t) {
|
|
736
736
|
return a(), n("svg", {
|
|
737
737
|
xmlns: "http://www.w3.org/2000/svg",
|
|
738
738
|
viewBox: "0 0 24 24",
|
|
@@ -747,7 +747,7 @@ function De(e, t) {
|
|
|
747
747
|
})
|
|
748
748
|
]);
|
|
749
749
|
}
|
|
750
|
-
function
|
|
750
|
+
function Ae(e, t) {
|
|
751
751
|
return a(), n("svg", {
|
|
752
752
|
xmlns: "http://www.w3.org/2000/svg",
|
|
753
753
|
viewBox: "0 0 24 24",
|
|
@@ -762,7 +762,7 @@ function ze(e, t) {
|
|
|
762
762
|
})
|
|
763
763
|
]);
|
|
764
764
|
}
|
|
765
|
-
function
|
|
765
|
+
function je(e, t) {
|
|
766
766
|
return a(), n("svg", {
|
|
767
767
|
xmlns: "http://www.w3.org/2000/svg",
|
|
768
768
|
viewBox: "0 0 24 24",
|
|
@@ -777,7 +777,7 @@ function Be(e, t) {
|
|
|
777
777
|
})
|
|
778
778
|
]);
|
|
779
779
|
}
|
|
780
|
-
function
|
|
780
|
+
function Me(e, t) {
|
|
781
781
|
return a(), n("svg", {
|
|
782
782
|
xmlns: "http://www.w3.org/2000/svg",
|
|
783
783
|
viewBox: "0 0 24 24",
|
|
@@ -788,7 +788,7 @@ function Xe(e, t) {
|
|
|
788
788
|
o("path", { d: "M13.5 4.06c0-1.336-1.616-2.005-2.56-1.06l-4.5 4.5H4.508c-1.141 0-2.318.664-2.66 1.905A9.76 9.76 0 0 0 1.5 12c0 .898.121 1.768.35 2.595.341 1.24 1.518 1.905 2.659 1.905h1.93l4.5 4.5c.945.945 2.561.276 2.561-1.06V4.06ZM17.78 9.22a.75.75 0 1 0-1.06 1.06L18.44 12l-1.72 1.72a.75.75 0 1 0 1.06 1.06l1.72-1.72 1.72 1.72a.75.75 0 1 0 1.06-1.06L20.56 12l1.72-1.72a.75.75 0 1 0-1.06-1.06l-1.72 1.72-1.72-1.72Z" })
|
|
789
789
|
]);
|
|
790
790
|
}
|
|
791
|
-
function
|
|
791
|
+
function Le(e, t) {
|
|
792
792
|
return a(), n("svg", {
|
|
793
793
|
xmlns: "http://www.w3.org/2000/svg",
|
|
794
794
|
viewBox: "0 0 24 24",
|
|
@@ -803,7 +803,7 @@ function Ie(e, t) {
|
|
|
803
803
|
})
|
|
804
804
|
]);
|
|
805
805
|
}
|
|
806
|
-
function
|
|
806
|
+
function _e(e, t) {
|
|
807
807
|
return a(), n("svg", {
|
|
808
808
|
xmlns: "http://www.w3.org/2000/svg",
|
|
809
809
|
viewBox: "0 0 24 24",
|
|
@@ -818,7 +818,7 @@ function Ae(e, t) {
|
|
|
818
818
|
})
|
|
819
819
|
]);
|
|
820
820
|
}
|
|
821
|
-
function
|
|
821
|
+
function me(e, t) {
|
|
822
822
|
return a(), n("svg", {
|
|
823
823
|
xmlns: "http://www.w3.org/2000/svg",
|
|
824
824
|
viewBox: "0 0 24 24",
|
|
@@ -833,7 +833,7 @@ function ie(e, t) {
|
|
|
833
833
|
})
|
|
834
834
|
]);
|
|
835
835
|
}
|
|
836
|
-
function
|
|
836
|
+
function Oe(e, t) {
|
|
837
837
|
return a(), n("svg", {
|
|
838
838
|
xmlns: "http://www.w3.org/2000/svg",
|
|
839
839
|
viewBox: "0 0 24 24",
|
|
@@ -848,12 +848,12 @@ function je(e, t) {
|
|
|
848
848
|
})
|
|
849
849
|
]);
|
|
850
850
|
}
|
|
851
|
-
const
|
|
851
|
+
const N = (e, t) => {
|
|
852
852
|
const l = e.__vccOpts || e;
|
|
853
853
|
for (const [s, r] of t)
|
|
854
854
|
l[s] = r;
|
|
855
855
|
return l;
|
|
856
|
-
},
|
|
856
|
+
}, Ze = {
|
|
857
857
|
__name: "DXIcon",
|
|
858
858
|
props: {
|
|
859
859
|
/** Heroicon компонент */
|
|
@@ -877,19 +877,19 @@ const Z = (e, t) => {
|
|
|
877
877
|
wiggle: "dx-icon-wiggle",
|
|
878
878
|
scale: "dx-icon-scale",
|
|
879
879
|
rotate: "dx-icon-rotate"
|
|
880
|
-
}, r =
|
|
880
|
+
}, r = p(() => [
|
|
881
881
|
l[t.size] || l.md,
|
|
882
882
|
s[t.animation] || "",
|
|
883
883
|
t.class
|
|
884
884
|
]);
|
|
885
|
-
return (i, d) => (a(),
|
|
885
|
+
return (i, d) => (a(), $(O(e.icon), {
|
|
886
886
|
class: f(r.value),
|
|
887
887
|
"data-component": "DXIcon",
|
|
888
888
|
"data-size": e.size,
|
|
889
889
|
"data-animation": e.animation
|
|
890
890
|
}, null, 8, ["class", "data-size", "data-animation"]));
|
|
891
891
|
}
|
|
892
|
-
},
|
|
892
|
+
}, D = /* @__PURE__ */ N(Ze, [["__scopeId", "data-v-9441a40d"]]), Te = ["data-size"], Ne = ["src", "alt"], Ks = {
|
|
893
893
|
__name: "DXAvatar",
|
|
894
894
|
props: {
|
|
895
895
|
/** URL изображения */
|
|
@@ -910,7 +910,7 @@ const Z = (e, t) => {
|
|
|
910
910
|
iconAnimation: { type: String, default: "none" }
|
|
911
911
|
},
|
|
912
912
|
setup(e) {
|
|
913
|
-
const t = e, l =
|
|
913
|
+
const t = e, l = B(!1), s = {
|
|
914
914
|
xs: "w-6 h-6",
|
|
915
915
|
sm: "w-8 h-8",
|
|
916
916
|
md: "w-10 h-10",
|
|
@@ -937,26 +937,26 @@ const Z = (e, t) => {
|
|
|
937
937
|
offline: "bg-slate-400",
|
|
938
938
|
busy: "bg-rose-500",
|
|
939
939
|
away: "bg-amber-500"
|
|
940
|
-
},
|
|
940
|
+
}, v = p(() => [
|
|
941
941
|
"relative inline-flex items-center justify-center overflow-hidden bg-slate-100 transition-transform",
|
|
942
942
|
s[t.size] || s.md,
|
|
943
943
|
r[t.shape] || r.circle,
|
|
944
944
|
t.iconAnimation !== "none" && "hover:scale-105"
|
|
945
|
-
]),
|
|
945
|
+
]), b = p(() => [
|
|
946
946
|
"text-slate-600 uppercase",
|
|
947
947
|
i[t.size] || i.md
|
|
948
|
-
]), m =
|
|
948
|
+
]), m = p(() => [
|
|
949
949
|
d[t.size] || d.md,
|
|
950
950
|
u[t.status] || ""
|
|
951
|
-
]),
|
|
951
|
+
]), g = p(() => t.icon || _e), w = {
|
|
952
952
|
xs: "sm",
|
|
953
953
|
sm: "sm",
|
|
954
954
|
md: "md",
|
|
955
955
|
lg: "lg",
|
|
956
956
|
xl: "xl"
|
|
957
|
-
},
|
|
958
|
-
return (
|
|
959
|
-
class: f(
|
|
957
|
+
}, y = p(() => w[t.size] || "md");
|
|
958
|
+
return (S, Z) => (a(), n("div", {
|
|
959
|
+
class: f(v.value),
|
|
960
960
|
"data-component": "DXAvatar",
|
|
961
961
|
"data-size": e.size
|
|
962
962
|
}, [
|
|
@@ -965,14 +965,14 @@ const Z = (e, t) => {
|
|
|
965
965
|
src: e.src,
|
|
966
966
|
alt: e.alt,
|
|
967
967
|
class: "w-full h-full object-cover",
|
|
968
|
-
onError:
|
|
969
|
-
}, null, 40,
|
|
968
|
+
onError: Z[0] || (Z[0] = (z) => l.value = !0)
|
|
969
|
+
}, null, 40, Ne)) : e.initials ? (a(), n("span", {
|
|
970
970
|
key: 1,
|
|
971
|
-
class: f(["font-medium",
|
|
972
|
-
},
|
|
971
|
+
class: f(["font-medium", b.value])
|
|
972
|
+
}, h(e.initials), 3)) : (a(), $(D, {
|
|
973
973
|
key: 2,
|
|
974
|
-
icon:
|
|
975
|
-
size:
|
|
974
|
+
icon: g.value,
|
|
975
|
+
size: y.value,
|
|
976
976
|
animation: e.iconAnimation,
|
|
977
977
|
class: "text-slate-400"
|
|
978
978
|
}, null, 8, ["icon", "size", "animation"])),
|
|
@@ -980,9 +980,9 @@ const Z = (e, t) => {
|
|
|
980
980
|
key: 3,
|
|
981
981
|
class: f(["absolute bottom-0 right-0 block rounded-full ring-2 ring-white", m.value])
|
|
982
982
|
}, null, 2)) : c("", !0)
|
|
983
|
-
], 10,
|
|
983
|
+
], 10, Te));
|
|
984
984
|
}
|
|
985
|
-
},
|
|
985
|
+
}, Pe = ["data-variant"], Re = "inline-flex items-center gap-1 px-2 py-1 text-[11px] rounded-full border font-semibold", ie = {
|
|
986
986
|
__name: "DXBadge",
|
|
987
987
|
props: {
|
|
988
988
|
/** Вариант оформления: slate | success | warning | danger | info */
|
|
@@ -999,31 +999,31 @@ const Z = (e, t) => {
|
|
|
999
999
|
warning: "bg-amber-50 text-amber-700 border-amber-100",
|
|
1000
1000
|
danger: "bg-rose-50 text-rose-700 border-rose-100",
|
|
1001
1001
|
info: "bg-blue-50 text-blue-700 border-blue-100"
|
|
1002
|
-
}, s =
|
|
1002
|
+
}, s = p(() => {
|
|
1003
1003
|
const r = l[t.variant] || l.slate;
|
|
1004
|
-
return `${
|
|
1004
|
+
return `${Re} ${r}`;
|
|
1005
1005
|
});
|
|
1006
1006
|
return (r, i) => (a(), n("span", {
|
|
1007
1007
|
class: f(s.value),
|
|
1008
1008
|
"data-component": "DXBadge",
|
|
1009
1009
|
"data-variant": e.variant
|
|
1010
1010
|
}, [
|
|
1011
|
-
e.iconLeft ? (a(),
|
|
1011
|
+
e.iconLeft ? (a(), $(D, {
|
|
1012
1012
|
key: 0,
|
|
1013
1013
|
icon: e.iconLeft,
|
|
1014
1014
|
size: "xs",
|
|
1015
1015
|
animation: "none"
|
|
1016
1016
|
}, null, 8, ["icon"])) : c("", !0),
|
|
1017
|
-
|
|
1018
|
-
e.iconRight ? (a(),
|
|
1017
|
+
V(r.$slots, "default"),
|
|
1018
|
+
e.iconRight ? (a(), $(D, {
|
|
1019
1019
|
key: 1,
|
|
1020
1020
|
icon: e.iconRight,
|
|
1021
1021
|
size: "xs",
|
|
1022
1022
|
animation: "none"
|
|
1023
1023
|
}, null, 8, ["icon"])) : c("", !0)
|
|
1024
|
-
], 10,
|
|
1024
|
+
], 10, Pe));
|
|
1025
1025
|
}
|
|
1026
|
-
},
|
|
1026
|
+
}, qe = {
|
|
1027
1027
|
__name: "DXButton",
|
|
1028
1028
|
props: {
|
|
1029
1029
|
/** Вариант оформления: primary | ghost | danger | outline */
|
|
@@ -1048,7 +1048,7 @@ const Z = (e, t) => {
|
|
|
1048
1048
|
rel: { type: String, default: null }
|
|
1049
1049
|
},
|
|
1050
1050
|
setup(e) {
|
|
1051
|
-
const t = e, l =
|
|
1051
|
+
const t = e, l = p(() => t.to ? "router-link" : t.href ? "a" : "button"), s = p(() => t.iconOnly ? t.size === "sm" ? "h-9 w-9 text-xs" : t.size === "lg" ? "h-12 w-12 text-sm" : "h-10 w-10 text-sm" : t.size === "sm" ? "px-3 py-2 text-xs" : t.size === "lg" ? "px-5 py-3 text-base" : "px-4 py-2 text-sm"), r = p(() => {
|
|
1052
1052
|
switch (t.variant) {
|
|
1053
1053
|
case "ghost":
|
|
1054
1054
|
return "border border-slate-200 text-slate-700 hover:border-slate-300 bg-white";
|
|
@@ -1060,7 +1060,7 @@ const Z = (e, t) => {
|
|
|
1060
1060
|
return "bg-slate-800 text-white hover:bg-slate-700";
|
|
1061
1061
|
}
|
|
1062
1062
|
});
|
|
1063
|
-
return (i, d) => (a(),
|
|
1063
|
+
return (i, d) => (a(), $(O(l.value), {
|
|
1064
1064
|
type: l.value === "button" ? e.type : void 0,
|
|
1065
1065
|
disabled: e.disabled,
|
|
1066
1066
|
to: e.to,
|
|
@@ -1071,25 +1071,25 @@ const Z = (e, t) => {
|
|
|
1071
1071
|
"data-component": "DXButton",
|
|
1072
1072
|
"data-variant": e.variant
|
|
1073
1073
|
}, {
|
|
1074
|
-
default:
|
|
1075
|
-
|
|
1074
|
+
default: T(() => [
|
|
1075
|
+
V(i.$slots, "default", {}, void 0, !0)
|
|
1076
1076
|
]),
|
|
1077
1077
|
_: 3
|
|
1078
1078
|
}, 8, ["type", "disabled", "to", "href", "target", "rel", "class", "data-variant"]));
|
|
1079
1079
|
}
|
|
1080
|
-
},
|
|
1080
|
+
}, Ys = /* @__PURE__ */ N(qe, [["__scopeId", "data-v-99117d90"]]), He = {}, Fe = {
|
|
1081
1081
|
class: "bg-white border border-slate-100 rounded-2xl shadow-sm p-5",
|
|
1082
1082
|
"data-component": "DXCard"
|
|
1083
1083
|
};
|
|
1084
|
-
function
|
|
1085
|
-
return a(), n("div",
|
|
1086
|
-
|
|
1084
|
+
function Ee(e, t) {
|
|
1085
|
+
return a(), n("div", Fe, [
|
|
1086
|
+
V(e.$slots, "default")
|
|
1087
1087
|
]);
|
|
1088
1088
|
}
|
|
1089
|
-
const
|
|
1089
|
+
const Ws = /* @__PURE__ */ N(He, [["render", Ee]]), Ge = ["checked", "value", "disabled"], Ue = {
|
|
1090
1090
|
key: 0,
|
|
1091
1091
|
class: "text-sm text-slate-700 select-none"
|
|
1092
|
-
},
|
|
1092
|
+
}, Js = {
|
|
1093
1093
|
__name: "DXCheckbox",
|
|
1094
1094
|
props: {
|
|
1095
1095
|
/** Значение (v-model) - boolean или массив */
|
|
@@ -1105,7 +1105,7 @@ const Ds = /* @__PURE__ */ Z(Ne, [["render", Fe]]), He = ["checked", "value", "d
|
|
|
1105
1105
|
},
|
|
1106
1106
|
emits: ["update:modelValue"],
|
|
1107
1107
|
setup(e, { emit: t }) {
|
|
1108
|
-
const l = e, s = t, r =
|
|
1108
|
+
const l = e, s = t, r = p(() => {
|
|
1109
1109
|
switch (l.size) {
|
|
1110
1110
|
case "sm":
|
|
1111
1111
|
return "h-3.5 w-3.5";
|
|
@@ -1114,20 +1114,20 @@ const Ds = /* @__PURE__ */ Z(Ne, [["render", Fe]]), He = ["checked", "value", "d
|
|
|
1114
1114
|
default:
|
|
1115
1115
|
return "h-4 w-4";
|
|
1116
1116
|
}
|
|
1117
|
-
}), i =
|
|
1117
|
+
}), i = p(() => Array.isArray(l.modelValue) ? l.modelValue.includes(l.value) : l.modelValue), d = (u) => {
|
|
1118
1118
|
if (Array.isArray(l.modelValue)) {
|
|
1119
|
-
const
|
|
1119
|
+
const v = [...l.modelValue];
|
|
1120
1120
|
if (u.target.checked)
|
|
1121
|
-
|
|
1121
|
+
v.push(l.value);
|
|
1122
1122
|
else {
|
|
1123
|
-
const
|
|
1124
|
-
|
|
1123
|
+
const b = v.indexOf(l.value);
|
|
1124
|
+
b > -1 && v.splice(b, 1);
|
|
1125
1125
|
}
|
|
1126
|
-
s("update:modelValue",
|
|
1126
|
+
s("update:modelValue", v);
|
|
1127
1127
|
} else
|
|
1128
1128
|
s("update:modelValue", u.target.checked);
|
|
1129
1129
|
};
|
|
1130
|
-
return (u,
|
|
1130
|
+
return (u, v) => (a(), n("label", {
|
|
1131
1131
|
class: f(["inline-flex items-center gap-2 cursor-pointer", { "opacity-60 cursor-not-allowed": e.disabled }]),
|
|
1132
1132
|
"data-component": "DXCheckbox"
|
|
1133
1133
|
}, [
|
|
@@ -1138,12 +1138,12 @@ const Ds = /* @__PURE__ */ Z(Ne, [["render", Fe]]), He = ["checked", "value", "d
|
|
|
1138
1138
|
disabled: e.disabled,
|
|
1139
1139
|
class: f(["rounded border-slate-300 text-slate-900 focus:ring-slate-900/10 focus:ring-2 transition", r.value]),
|
|
1140
1140
|
onChange: d
|
|
1141
|
-
}, null, 42,
|
|
1142
|
-
e.label ? (a(), n("span",
|
|
1141
|
+
}, null, 42, Ge),
|
|
1142
|
+
e.label ? (a(), n("span", Ue, h(e.label), 1)) : c("", !0)
|
|
1143
1143
|
], 2));
|
|
1144
1144
|
}
|
|
1145
1145
|
};
|
|
1146
|
-
function
|
|
1146
|
+
function Ke(e, t) {
|
|
1147
1147
|
return a(), n("svg", {
|
|
1148
1148
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1149
1149
|
fill: "none",
|
|
@@ -1160,7 +1160,7 @@ function qe(e, t) {
|
|
|
1160
1160
|
})
|
|
1161
1161
|
]);
|
|
1162
1162
|
}
|
|
1163
|
-
function
|
|
1163
|
+
function Ye(e, t) {
|
|
1164
1164
|
return a(), n("svg", {
|
|
1165
1165
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1166
1166
|
fill: "none",
|
|
@@ -1177,7 +1177,7 @@ function Ee(e, t) {
|
|
|
1177
1177
|
})
|
|
1178
1178
|
]);
|
|
1179
1179
|
}
|
|
1180
|
-
function
|
|
1180
|
+
function We(e, t) {
|
|
1181
1181
|
return a(), n("svg", {
|
|
1182
1182
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1183
1183
|
fill: "none",
|
|
@@ -1194,7 +1194,7 @@ function Ge(e, t) {
|
|
|
1194
1194
|
})
|
|
1195
1195
|
]);
|
|
1196
1196
|
}
|
|
1197
|
-
function
|
|
1197
|
+
function Je(e, t) {
|
|
1198
1198
|
return a(), n("svg", {
|
|
1199
1199
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1200
1200
|
fill: "none",
|
|
@@ -1211,7 +1211,41 @@ function Ue(e, t) {
|
|
|
1211
1211
|
})
|
|
1212
1212
|
]);
|
|
1213
1213
|
}
|
|
1214
|
-
function
|
|
1214
|
+
function Qe(e, t) {
|
|
1215
|
+
return a(), n("svg", {
|
|
1216
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1217
|
+
fill: "none",
|
|
1218
|
+
viewBox: "0 0 24 24",
|
|
1219
|
+
"stroke-width": "1.5",
|
|
1220
|
+
stroke: "currentColor",
|
|
1221
|
+
"aria-hidden": "true",
|
|
1222
|
+
"data-slot": "icon"
|
|
1223
|
+
}, [
|
|
1224
|
+
o("path", {
|
|
1225
|
+
"stroke-linecap": "round",
|
|
1226
|
+
"stroke-linejoin": "round",
|
|
1227
|
+
d: "m18.75 4.5-7.5 7.5 7.5 7.5m-6-15L5.25 12l7.5 7.5"
|
|
1228
|
+
})
|
|
1229
|
+
]);
|
|
1230
|
+
}
|
|
1231
|
+
function et(e, t) {
|
|
1232
|
+
return a(), n("svg", {
|
|
1233
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1234
|
+
fill: "none",
|
|
1235
|
+
viewBox: "0 0 24 24",
|
|
1236
|
+
"stroke-width": "1.5",
|
|
1237
|
+
stroke: "currentColor",
|
|
1238
|
+
"aria-hidden": "true",
|
|
1239
|
+
"data-slot": "icon"
|
|
1240
|
+
}, [
|
|
1241
|
+
o("path", {
|
|
1242
|
+
"stroke-linecap": "round",
|
|
1243
|
+
"stroke-linejoin": "round",
|
|
1244
|
+
d: "m5.25 4.5 7.5 7.5-7.5 7.5m6-15 7.5 7.5-7.5 7.5"
|
|
1245
|
+
})
|
|
1246
|
+
]);
|
|
1247
|
+
}
|
|
1248
|
+
function W(e, t) {
|
|
1215
1249
|
return a(), n("svg", {
|
|
1216
1250
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1217
1251
|
fill: "none",
|
|
@@ -1228,7 +1262,7 @@ function le(e, t) {
|
|
|
1228
1262
|
})
|
|
1229
1263
|
]);
|
|
1230
1264
|
}
|
|
1231
|
-
function
|
|
1265
|
+
function tt(e, t) {
|
|
1232
1266
|
return a(), n("svg", {
|
|
1233
1267
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1234
1268
|
fill: "none",
|
|
@@ -1245,7 +1279,7 @@ function Ke(e, t) {
|
|
|
1245
1279
|
})
|
|
1246
1280
|
]);
|
|
1247
1281
|
}
|
|
1248
|
-
function
|
|
1282
|
+
function fe(e, t) {
|
|
1249
1283
|
return a(), n("svg", {
|
|
1250
1284
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1251
1285
|
fill: "none",
|
|
@@ -1262,7 +1296,7 @@ function de(e, t) {
|
|
|
1262
1296
|
})
|
|
1263
1297
|
]);
|
|
1264
1298
|
}
|
|
1265
|
-
function
|
|
1299
|
+
function lt(e, t) {
|
|
1266
1300
|
return a(), n("svg", {
|
|
1267
1301
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1268
1302
|
fill: "none",
|
|
@@ -1279,7 +1313,7 @@ function We(e, t) {
|
|
|
1279
1313
|
})
|
|
1280
1314
|
]);
|
|
1281
1315
|
}
|
|
1282
|
-
function
|
|
1316
|
+
function at(e, t) {
|
|
1283
1317
|
return a(), n("svg", {
|
|
1284
1318
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1285
1319
|
fill: "none",
|
|
@@ -1296,7 +1330,7 @@ function Ye(e, t) {
|
|
|
1296
1330
|
})
|
|
1297
1331
|
]);
|
|
1298
1332
|
}
|
|
1299
|
-
function
|
|
1333
|
+
function nt(e, t) {
|
|
1300
1334
|
return a(), n("svg", {
|
|
1301
1335
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1302
1336
|
fill: "none",
|
|
@@ -1313,7 +1347,7 @@ function Je(e, t) {
|
|
|
1313
1347
|
})
|
|
1314
1348
|
]);
|
|
1315
1349
|
}
|
|
1316
|
-
function
|
|
1350
|
+
function st(e, t) {
|
|
1317
1351
|
return a(), n("svg", {
|
|
1318
1352
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1319
1353
|
fill: "none",
|
|
@@ -1330,7 +1364,7 @@ function Qe(e, t) {
|
|
|
1330
1364
|
})
|
|
1331
1365
|
]);
|
|
1332
1366
|
}
|
|
1333
|
-
function
|
|
1367
|
+
function ot(e, t) {
|
|
1334
1368
|
return a(), n("svg", {
|
|
1335
1369
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1336
1370
|
fill: "none",
|
|
@@ -1347,7 +1381,7 @@ function et(e, t) {
|
|
|
1347
1381
|
})
|
|
1348
1382
|
]);
|
|
1349
1383
|
}
|
|
1350
|
-
function
|
|
1384
|
+
function se(e, t) {
|
|
1351
1385
|
return a(), n("svg", {
|
|
1352
1386
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1353
1387
|
fill: "none",
|
|
@@ -1369,7 +1403,7 @@ function ae(e, t) {
|
|
|
1369
1403
|
})
|
|
1370
1404
|
]);
|
|
1371
1405
|
}
|
|
1372
|
-
function
|
|
1406
|
+
function rt(e, t) {
|
|
1373
1407
|
return a(), n("svg", {
|
|
1374
1408
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1375
1409
|
fill: "none",
|
|
@@ -1386,7 +1420,7 @@ function tt(e, t) {
|
|
|
1386
1420
|
})
|
|
1387
1421
|
]);
|
|
1388
1422
|
}
|
|
1389
|
-
function
|
|
1423
|
+
function it(e, t) {
|
|
1390
1424
|
return a(), n("svg", {
|
|
1391
1425
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1392
1426
|
fill: "none",
|
|
@@ -1403,7 +1437,24 @@ function lt(e, t) {
|
|
|
1403
1437
|
})
|
|
1404
1438
|
]);
|
|
1405
1439
|
}
|
|
1406
|
-
function
|
|
1440
|
+
function dt(e, t) {
|
|
1441
|
+
return a(), n("svg", {
|
|
1442
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
1443
|
+
fill: "none",
|
|
1444
|
+
viewBox: "0 0 24 24",
|
|
1445
|
+
"stroke-width": "1.5",
|
|
1446
|
+
stroke: "currentColor",
|
|
1447
|
+
"aria-hidden": "true",
|
|
1448
|
+
"data-slot": "icon"
|
|
1449
|
+
}, [
|
|
1450
|
+
o("path", {
|
|
1451
|
+
"stroke-linecap": "round",
|
|
1452
|
+
"stroke-linejoin": "round",
|
|
1453
|
+
d: "m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z"
|
|
1454
|
+
})
|
|
1455
|
+
]);
|
|
1456
|
+
}
|
|
1457
|
+
function ut(e, t) {
|
|
1407
1458
|
return a(), n("svg", {
|
|
1408
1459
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1409
1460
|
fill: "none",
|
|
@@ -1420,7 +1471,7 @@ function at(e, t) {
|
|
|
1420
1471
|
})
|
|
1421
1472
|
]);
|
|
1422
1473
|
}
|
|
1423
|
-
function
|
|
1474
|
+
function ct(e, t) {
|
|
1424
1475
|
return a(), n("svg", {
|
|
1425
1476
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1426
1477
|
fill: "none",
|
|
@@ -1437,7 +1488,7 @@ function nt(e, t) {
|
|
|
1437
1488
|
})
|
|
1438
1489
|
]);
|
|
1439
1490
|
}
|
|
1440
|
-
function
|
|
1491
|
+
function mt(e, t) {
|
|
1441
1492
|
return a(), n("svg", {
|
|
1442
1493
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1443
1494
|
fill: "none",
|
|
@@ -1454,7 +1505,7 @@ function st(e, t) {
|
|
|
1454
1505
|
})
|
|
1455
1506
|
]);
|
|
1456
1507
|
}
|
|
1457
|
-
function
|
|
1508
|
+
function ft(e, t) {
|
|
1458
1509
|
return a(), n("svg", {
|
|
1459
1510
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1460
1511
|
fill: "none",
|
|
@@ -1471,7 +1522,7 @@ function ot(e, t) {
|
|
|
1471
1522
|
})
|
|
1472
1523
|
]);
|
|
1473
1524
|
}
|
|
1474
|
-
function
|
|
1525
|
+
function pt(e, t) {
|
|
1475
1526
|
return a(), n("svg", {
|
|
1476
1527
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1477
1528
|
fill: "none",
|
|
@@ -1488,7 +1539,7 @@ function rt(e, t) {
|
|
|
1488
1539
|
})
|
|
1489
1540
|
]);
|
|
1490
1541
|
}
|
|
1491
|
-
function
|
|
1542
|
+
function vt(e, t) {
|
|
1492
1543
|
return a(), n("svg", {
|
|
1493
1544
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1494
1545
|
fill: "none",
|
|
@@ -1505,7 +1556,7 @@ function it(e, t) {
|
|
|
1505
1556
|
})
|
|
1506
1557
|
]);
|
|
1507
1558
|
}
|
|
1508
|
-
function
|
|
1559
|
+
function ht(e, t) {
|
|
1509
1560
|
return a(), n("svg", {
|
|
1510
1561
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1511
1562
|
fill: "none",
|
|
@@ -1522,7 +1573,7 @@ function dt(e, t) {
|
|
|
1522
1573
|
})
|
|
1523
1574
|
]);
|
|
1524
1575
|
}
|
|
1525
|
-
function
|
|
1576
|
+
function bt(e, t) {
|
|
1526
1577
|
return a(), n("svg", {
|
|
1527
1578
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1528
1579
|
fill: "none",
|
|
@@ -1539,7 +1590,7 @@ function ut(e, t) {
|
|
|
1539
1590
|
})
|
|
1540
1591
|
]);
|
|
1541
1592
|
}
|
|
1542
|
-
function
|
|
1593
|
+
function gt(e, t) {
|
|
1543
1594
|
return a(), n("svg", {
|
|
1544
1595
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1545
1596
|
fill: "none",
|
|
@@ -1556,7 +1607,7 @@ function ct(e, t) {
|
|
|
1556
1607
|
})
|
|
1557
1608
|
]);
|
|
1558
1609
|
}
|
|
1559
|
-
function
|
|
1610
|
+
function xt(e, t) {
|
|
1560
1611
|
return a(), n("svg", {
|
|
1561
1612
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1562
1613
|
fill: "none",
|
|
@@ -1573,7 +1624,7 @@ function mt(e, t) {
|
|
|
1573
1624
|
})
|
|
1574
1625
|
]);
|
|
1575
1626
|
}
|
|
1576
|
-
function
|
|
1627
|
+
function pe(e, t) {
|
|
1577
1628
|
return a(), n("svg", {
|
|
1578
1629
|
xmlns: "http://www.w3.org/2000/svg",
|
|
1579
1630
|
fill: "none",
|
|
@@ -1590,7 +1641,7 @@ function ue(e, t) {
|
|
|
1590
1641
|
})
|
|
1591
1642
|
]);
|
|
1592
1643
|
}
|
|
1593
|
-
const
|
|
1644
|
+
const yt = ["aria-label"], ve = {
|
|
1594
1645
|
__name: "DXCloseButton",
|
|
1595
1646
|
props: {
|
|
1596
1647
|
/** Размер: sm | md | lg */
|
|
@@ -1614,29 +1665,29 @@ const ft = ["aria-label"], ce = {
|
|
|
1614
1665
|
default: "text-slate-400 hover:text-slate-600",
|
|
1615
1666
|
light: "text-white/70 hover:text-white",
|
|
1616
1667
|
danger: "text-rose-400 hover:text-rose-600"
|
|
1617
|
-
}, i =
|
|
1668
|
+
}, i = p(() => s[t.size] || s.md), d = p(() => [
|
|
1618
1669
|
"inline-flex items-center justify-center rounded transition-colors",
|
|
1619
1670
|
l[t.size] || l.md,
|
|
1620
1671
|
r[t.variant] || r.default
|
|
1621
1672
|
]);
|
|
1622
|
-
return (u,
|
|
1673
|
+
return (u, v) => (a(), n("button", {
|
|
1623
1674
|
type: "button",
|
|
1624
1675
|
class: f(d.value),
|
|
1625
|
-
onClick:
|
|
1676
|
+
onClick: v[0] || (v[0] = (b) => u.$emit("click", b)),
|
|
1626
1677
|
"aria-label": e.ariaLabel,
|
|
1627
1678
|
"data-component": "DXCloseButton"
|
|
1628
1679
|
}, [
|
|
1629
|
-
A(
|
|
1630
|
-
icon:
|
|
1680
|
+
A(D, {
|
|
1681
|
+
icon: _(pe),
|
|
1631
1682
|
size: i.value,
|
|
1632
1683
|
animation: "scale"
|
|
1633
1684
|
}, null, 8, ["icon", "size"])
|
|
1634
|
-
], 10,
|
|
1685
|
+
], 10, yt));
|
|
1635
1686
|
}
|
|
1636
|
-
},
|
|
1687
|
+
}, wt = ["data-orientation"], kt = {
|
|
1637
1688
|
key: 0,
|
|
1638
1689
|
class: "flex items-center w-full"
|
|
1639
|
-
},
|
|
1690
|
+
}, $t = { class: "px-3 text-sm text-slate-500 whitespace-nowrap" }, Ct = {
|
|
1640
1691
|
__name: "DXDivider",
|
|
1641
1692
|
props: {
|
|
1642
1693
|
/** Ориентация: horizontal | vertical */
|
|
@@ -1671,42 +1722,42 @@ const ft = ["aria-label"], ce = {
|
|
|
1671
1722
|
sm: "mx-2",
|
|
1672
1723
|
md: "mx-4",
|
|
1673
1724
|
lg: "mx-6"
|
|
1674
|
-
}, u =
|
|
1725
|
+
}, u = p(() => [
|
|
1675
1726
|
t.orientation === "vertical" ? "inline-flex h-full" : "w-full",
|
|
1676
1727
|
t.orientation === "horizontal" ? i[t.spacing] : d[t.spacing]
|
|
1677
|
-
]),
|
|
1728
|
+
]), v = p(() => [
|
|
1678
1729
|
t.orientation === "vertical" ? "h-full" : "flex-1",
|
|
1679
1730
|
l[t.color] || l.default,
|
|
1680
1731
|
t.orientation === "vertical" ? r[t.thickness] : s[t.thickness]
|
|
1681
1732
|
]);
|
|
1682
|
-
return (
|
|
1733
|
+
return (b, m) => (a(), n("div", {
|
|
1683
1734
|
class: f(u.value),
|
|
1684
1735
|
"data-component": "DXDivider",
|
|
1685
1736
|
"data-orientation": e.orientation
|
|
1686
1737
|
}, [
|
|
1687
|
-
|
|
1738
|
+
b.$slots.default && e.orientation === "horizontal" ? (a(), n("div", kt, [
|
|
1688
1739
|
o("div", {
|
|
1689
|
-
class: f(
|
|
1740
|
+
class: f(v.value)
|
|
1690
1741
|
}, null, 2),
|
|
1691
|
-
o("span",
|
|
1692
|
-
|
|
1742
|
+
o("span", $t, [
|
|
1743
|
+
V(b.$slots, "default")
|
|
1693
1744
|
]),
|
|
1694
1745
|
o("div", {
|
|
1695
|
-
class: f(
|
|
1746
|
+
class: f(v.value)
|
|
1696
1747
|
}, null, 2)
|
|
1697
1748
|
])) : (a(), n("div", {
|
|
1698
1749
|
key: 1,
|
|
1699
|
-
class: f(
|
|
1750
|
+
class: f(v.value)
|
|
1700
1751
|
}, null, 2))
|
|
1701
|
-
], 10,
|
|
1752
|
+
], 10, wt));
|
|
1702
1753
|
}
|
|
1703
|
-
},
|
|
1754
|
+
}, St = ["disabled"], Vt = { class: "flex-1" }, Dt = {
|
|
1704
1755
|
key: 1,
|
|
1705
1756
|
class: "w-4 h-4 text-slate-400",
|
|
1706
1757
|
fill: "none",
|
|
1707
1758
|
stroke: "currentColor",
|
|
1708
1759
|
viewBox: "0 0 24 24"
|
|
1709
|
-
},
|
|
1760
|
+
}, zt = {
|
|
1710
1761
|
__name: "DXDropdownItem",
|
|
1711
1762
|
props: {
|
|
1712
1763
|
icon: { type: Object, default: null },
|
|
@@ -1717,7 +1768,7 @@ const ft = ["aria-label"], ce = {
|
|
|
1717
1768
|
},
|
|
1718
1769
|
emits: ["click"],
|
|
1719
1770
|
setup(e, { emit: t }) {
|
|
1720
|
-
const l = e, s = t, r =
|
|
1771
|
+
const l = e, s = t, r = Q("dropdown", null), i = (d) => {
|
|
1721
1772
|
l.disabled || (s("click", d), l.closeOnClick && r && r.close());
|
|
1722
1773
|
};
|
|
1723
1774
|
return (d, u) => (a(), n("button", {
|
|
@@ -1730,14 +1781,14 @@ const ft = ["aria-label"], ce = {
|
|
|
1730
1781
|
onClick: i,
|
|
1731
1782
|
"data-component": "DXDropdownItem"
|
|
1732
1783
|
}, [
|
|
1733
|
-
e.icon ? (a(),
|
|
1784
|
+
e.icon ? (a(), $(O(e.icon), {
|
|
1734
1785
|
key: 0,
|
|
1735
1786
|
class: "w-4 h-4 flex-shrink-0"
|
|
1736
1787
|
})) : c("", !0),
|
|
1737
|
-
o("span",
|
|
1738
|
-
|
|
1788
|
+
o("span", Vt, [
|
|
1789
|
+
V(d.$slots, "default", {}, void 0, !0)
|
|
1739
1790
|
]),
|
|
1740
|
-
e.submenu ? (a(), n("svg",
|
|
1791
|
+
e.submenu ? (a(), n("svg", Dt, [...u[0] || (u[0] = [
|
|
1741
1792
|
o("path", {
|
|
1742
1793
|
"stroke-linecap": "round",
|
|
1743
1794
|
"stroke-linejoin": "round",
|
|
@@ -1745,10 +1796,10 @@ const ft = ["aria-label"], ce = {
|
|
|
1745
1796
|
d: "M9 5l7 7-7 7"
|
|
1746
1797
|
}, null, -1)
|
|
1747
1798
|
])])) : c("", !0)
|
|
1748
|
-
], 10,
|
|
1799
|
+
], 10, St));
|
|
1749
1800
|
}
|
|
1750
|
-
},
|
|
1751
|
-
function
|
|
1801
|
+
}, Qs = /* @__PURE__ */ N(zt, [["__scopeId", "data-v-b0daf145"]]);
|
|
1802
|
+
function he(e, t = "input") {
|
|
1752
1803
|
var s, r;
|
|
1753
1804
|
const l = {
|
|
1754
1805
|
button: {
|
|
@@ -1778,25 +1829,25 @@ function me(e, t = "input") {
|
|
|
1778
1829
|
};
|
|
1779
1830
|
return ((s = l[t]) == null ? void 0 : s[e]) || ((r = l[t]) == null ? void 0 : r.md) || "";
|
|
1780
1831
|
}
|
|
1781
|
-
const
|
|
1832
|
+
const Bt = {
|
|
1782
1833
|
class: "w-full",
|
|
1783
1834
|
"data-component": "DXInput"
|
|
1784
|
-
},
|
|
1835
|
+
}, Xt = {
|
|
1785
1836
|
key: 0,
|
|
1786
1837
|
class: "block text-sm text-slate-600 mb-1 font-medium"
|
|
1787
|
-
},
|
|
1838
|
+
}, It = { class: "relative" }, At = {
|
|
1788
1839
|
key: 0,
|
|
1789
1840
|
class: "absolute left-3 top-1/2 -translate-y-1/2 text-slate-400"
|
|
1790
|
-
},
|
|
1841
|
+
}, jt = ["type", "placeholder", "value", "disabled"], Mt = {
|
|
1791
1842
|
key: 1,
|
|
1792
1843
|
class: "absolute right-3 top-1/2 -translate-y-1/2 text-slate-400"
|
|
1793
|
-
},
|
|
1844
|
+
}, Lt = {
|
|
1794
1845
|
key: 1,
|
|
1795
1846
|
class: "mt-1 text-xs text-rose-500"
|
|
1796
|
-
},
|
|
1847
|
+
}, _t = {
|
|
1797
1848
|
key: 2,
|
|
1798
1849
|
class: "mt-1 text-xs text-slate-500"
|
|
1799
|
-
},
|
|
1850
|
+
}, Ot = {
|
|
1800
1851
|
__name: "DXInput",
|
|
1801
1852
|
props: {
|
|
1802
1853
|
/** Значение поля (v-model) */
|
|
@@ -1824,11 +1875,11 @@ const wt = {
|
|
|
1824
1875
|
},
|
|
1825
1876
|
emits: ["update:modelValue"],
|
|
1826
1877
|
setup(e) {
|
|
1827
|
-
const t = e, l =
|
|
1878
|
+
const t = e, l = p(() => {
|
|
1828
1879
|
var s, r;
|
|
1829
1880
|
return [
|
|
1830
1881
|
"w-full rounded-xl border border-slate-200 bg-white transition-colors",
|
|
1831
|
-
|
|
1882
|
+
he(t.size, "input"),
|
|
1832
1883
|
"text-slate-700 placeholder:text-slate-400",
|
|
1833
1884
|
!t.disabled && "hover:border-slate-300 focus:outline-none focus:ring-2 focus:ring-slate-900/10 focus:border-slate-300",
|
|
1834
1885
|
t.disabled && "opacity-60 cursor-not-allowed bg-slate-50",
|
|
@@ -1838,16 +1889,16 @@ const wt = {
|
|
|
1838
1889
|
t.inputClass
|
|
1839
1890
|
];
|
|
1840
1891
|
});
|
|
1841
|
-
return (s, r) => (a(), n("div",
|
|
1842
|
-
e.label ? (a(), n("label",
|
|
1843
|
-
o("div",
|
|
1844
|
-
e.prefixIcon || s.$slots.prefix ? (a(), n("div",
|
|
1845
|
-
e.prefixIcon ? (a(),
|
|
1892
|
+
return (s, r) => (a(), n("div", Bt, [
|
|
1893
|
+
e.label ? (a(), n("label", Xt, h(e.label), 1)) : c("", !0),
|
|
1894
|
+
o("div", It, [
|
|
1895
|
+
e.prefixIcon || s.$slots.prefix ? (a(), n("div", At, [
|
|
1896
|
+
e.prefixIcon ? (a(), $(D, {
|
|
1846
1897
|
key: 0,
|
|
1847
1898
|
icon: e.prefixIcon,
|
|
1848
1899
|
size: "sm",
|
|
1849
1900
|
animation: "none"
|
|
1850
|
-
}, null, 8, ["icon"])) :
|
|
1901
|
+
}, null, 8, ["icon"])) : V(s.$slots, "prefix", { key: 1 })
|
|
1851
1902
|
])) : c("", !0),
|
|
1852
1903
|
o("input", {
|
|
1853
1904
|
type: e.type,
|
|
@@ -1856,26 +1907,26 @@ const wt = {
|
|
|
1856
1907
|
disabled: e.disabled,
|
|
1857
1908
|
class: f(l.value),
|
|
1858
1909
|
onInput: r[0] || (r[0] = (i) => s.$emit("update:modelValue", i.target.value))
|
|
1859
|
-
}, null, 42,
|
|
1860
|
-
e.suffixIcon || s.$slots.suffix ? (a(), n("div",
|
|
1861
|
-
e.suffixIcon ? (a(),
|
|
1910
|
+
}, null, 42, jt),
|
|
1911
|
+
e.suffixIcon || s.$slots.suffix ? (a(), n("div", Mt, [
|
|
1912
|
+
e.suffixIcon ? (a(), $(D, {
|
|
1862
1913
|
key: 0,
|
|
1863
1914
|
icon: e.suffixIcon,
|
|
1864
1915
|
size: "sm",
|
|
1865
1916
|
animation: "none"
|
|
1866
|
-
}, null, 8, ["icon"])) :
|
|
1917
|
+
}, null, 8, ["icon"])) : V(s.$slots, "suffix", { key: 1 })
|
|
1867
1918
|
])) : c("", !0)
|
|
1868
1919
|
]),
|
|
1869
|
-
e.error ? (a(), n("p",
|
|
1920
|
+
e.error ? (a(), n("p", Lt, h(e.error), 1)) : e.helper ? (a(), n("p", _t, h(e.helper), 1)) : c("", !0)
|
|
1870
1921
|
]));
|
|
1871
1922
|
}
|
|
1872
|
-
},
|
|
1923
|
+
}, eo = {
|
|
1873
1924
|
__name: "DXInputAddon",
|
|
1874
1925
|
props: {
|
|
1875
1926
|
icon: { type: Object, default: null }
|
|
1876
1927
|
},
|
|
1877
1928
|
setup(e) {
|
|
1878
|
-
const t =
|
|
1929
|
+
const t = Q("inputGroup", { size: "md" }), l = p(() => {
|
|
1879
1930
|
const s = {
|
|
1880
1931
|
sm: "h-9",
|
|
1881
1932
|
md: "h-11",
|
|
@@ -1887,38 +1938,38 @@ const wt = {
|
|
|
1887
1938
|
class: f(["flex items-center px-3 border border-r-0 bg-slate-50 text-slate-600 text-sm first:rounded-l-xl last:rounded-r-xl last:border-r", l.value]),
|
|
1888
1939
|
"data-component": "DXInputGroupAddon"
|
|
1889
1940
|
}, [
|
|
1890
|
-
e.icon ? (a(),
|
|
1941
|
+
e.icon ? (a(), $(O(e.icon), {
|
|
1891
1942
|
key: 0,
|
|
1892
1943
|
class: "w-4 h-4"
|
|
1893
1944
|
})) : c("", !0),
|
|
1894
|
-
|
|
1945
|
+
V(s.$slots, "default")
|
|
1895
1946
|
], 2));
|
|
1896
1947
|
}
|
|
1897
|
-
},
|
|
1948
|
+
}, Zt = {}, Tt = {
|
|
1898
1949
|
class: "flex items-center justify-center gap-2 text-sm text-slate-600",
|
|
1899
1950
|
"data-component": "DXLoader"
|
|
1900
1951
|
};
|
|
1901
|
-
function
|
|
1902
|
-
return a(), n("div",
|
|
1952
|
+
function Nt(e, t) {
|
|
1953
|
+
return a(), n("div", Tt, [
|
|
1903
1954
|
t[1] || (t[1] = o("span", { class: "w-4 h-4 border-2 border-slate-300 border-t-slate-900 rounded-full animate-spin" }, null, -1)),
|
|
1904
|
-
|
|
1955
|
+
V(e.$slots, "default", {}, () => [
|
|
1905
1956
|
t[0] || (t[0] = j("Загрузка...", -1))
|
|
1906
1957
|
])
|
|
1907
1958
|
]);
|
|
1908
1959
|
}
|
|
1909
|
-
const
|
|
1960
|
+
const to = /* @__PURE__ */ N(Zt, [["render", Nt]]), Pt = {
|
|
1910
1961
|
class: "w-full",
|
|
1911
1962
|
"data-component": "DXProgress"
|
|
1912
|
-
},
|
|
1963
|
+
}, Rt = {
|
|
1913
1964
|
key: 0,
|
|
1914
1965
|
class: "flex justify-between items-center mb-1"
|
|
1915
|
-
},
|
|
1966
|
+
}, qt = { class: "text-sm font-medium text-slate-700" }, Ht = {
|
|
1916
1967
|
key: 0,
|
|
1917
1968
|
class: "text-sm font-semibold text-slate-900"
|
|
1918
|
-
},
|
|
1969
|
+
}, Ft = ["aria-valuenow", "aria-valuemin", "aria-valuemax"], Et = {
|
|
1919
1970
|
key: 0,
|
|
1920
1971
|
class: "text-xs font-medium text-white px-1"
|
|
1921
|
-
},
|
|
1972
|
+
}, Gt = {
|
|
1922
1973
|
__name: "DXProgress",
|
|
1923
1974
|
props: {
|
|
1924
1975
|
/** Текущее значение */
|
|
@@ -1945,10 +1996,10 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
1945
1996
|
striped: { type: Boolean, default: !1 }
|
|
1946
1997
|
},
|
|
1947
1998
|
setup(e) {
|
|
1948
|
-
const t = e, l =
|
|
1949
|
-
const
|
|
1950
|
-
return Math.min(100, Math.max(0, (t.value - t.min) /
|
|
1951
|
-
}), s =
|
|
1999
|
+
const t = e, l = p(() => {
|
|
2000
|
+
const v = t.max - t.min;
|
|
2001
|
+
return Math.min(100, Math.max(0, (t.value - t.min) / v * 100));
|
|
2002
|
+
}), s = p(() => `${Math.round(l.value)}%`), r = {
|
|
1952
2003
|
xs: "h-1",
|
|
1953
2004
|
sm: "h-2",
|
|
1954
2005
|
md: "h-3",
|
|
@@ -1959,44 +2010,44 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
1959
2010
|
warning: "bg-amber-500",
|
|
1960
2011
|
danger: "bg-rose-500",
|
|
1961
2012
|
info: "bg-blue-500"
|
|
1962
|
-
}, d =
|
|
2013
|
+
}, d = p(() => [
|
|
1963
2014
|
"w-full bg-slate-200 rounded-full overflow-hidden",
|
|
1964
2015
|
r[t.size] || r.md
|
|
1965
|
-
]), u =
|
|
2016
|
+
]), u = p(() => [
|
|
1966
2017
|
"h-full rounded-full transition-all duration-300 flex items-center justify-end",
|
|
1967
2018
|
i[t.color] || i.default,
|
|
1968
2019
|
t.striped && "bg-stripes",
|
|
1969
2020
|
t.animated && t.striped && "animate-stripes"
|
|
1970
2021
|
]);
|
|
1971
|
-
return (
|
|
1972
|
-
e.showLabel ||
|
|
1973
|
-
o("span",
|
|
1974
|
-
|
|
1975
|
-
j(
|
|
2022
|
+
return (v, b) => (a(), n("div", Pt, [
|
|
2023
|
+
e.showLabel || v.$slots.label ? (a(), n("div", Rt, [
|
|
2024
|
+
o("span", qt, [
|
|
2025
|
+
V(v.$slots, "label", {}, () => [
|
|
2026
|
+
j(h(e.label), 1)
|
|
1976
2027
|
], !0)
|
|
1977
2028
|
]),
|
|
1978
|
-
e.showValue ? (a(), n("span",
|
|
2029
|
+
e.showValue ? (a(), n("span", Ht, h(s.value), 1)) : c("", !0)
|
|
1979
2030
|
])) : c("", !0),
|
|
1980
2031
|
o("div", {
|
|
1981
2032
|
class: f(d.value)
|
|
1982
2033
|
}, [
|
|
1983
2034
|
o("div", {
|
|
1984
2035
|
class: f(u.value),
|
|
1985
|
-
style:
|
|
2036
|
+
style: G({ width: `${l.value}%` }),
|
|
1986
2037
|
role: "progressbar",
|
|
1987
2038
|
"aria-valuenow": e.value,
|
|
1988
2039
|
"aria-valuemin": e.min,
|
|
1989
2040
|
"aria-valuemax": e.max
|
|
1990
2041
|
}, [
|
|
1991
|
-
e.showInnerValue && l.value > 10 ? (a(), n("span",
|
|
1992
|
-
], 14,
|
|
2042
|
+
e.showInnerValue && l.value > 10 ? (a(), n("span", Et, h(s.value), 1)) : c("", !0)
|
|
2043
|
+
], 14, Ft)
|
|
1993
2044
|
], 2)
|
|
1994
2045
|
]));
|
|
1995
2046
|
}
|
|
1996
|
-
},
|
|
2047
|
+
}, lo = /* @__PURE__ */ N(Gt, [["__scopeId", "data-v-e469818e"]]), Ut = ["value", "checked", "disabled"], Kt = {
|
|
1997
2048
|
key: 0,
|
|
1998
2049
|
class: "text-sm text-slate-700 select-none"
|
|
1999
|
-
},
|
|
2050
|
+
}, ao = {
|
|
2000
2051
|
__name: "DXRadio",
|
|
2001
2052
|
props: {
|
|
2002
2053
|
/** Текущее значение группы (v-model) */
|
|
@@ -2012,7 +2063,7 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2012
2063
|
},
|
|
2013
2064
|
emits: ["update:modelValue"],
|
|
2014
2065
|
setup(e) {
|
|
2015
|
-
const t = e, l =
|
|
2066
|
+
const t = e, l = p(() => {
|
|
2016
2067
|
switch (t.size) {
|
|
2017
2068
|
case "sm":
|
|
2018
2069
|
return "h-3.5 w-3.5";
|
|
@@ -2033,31 +2084,31 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2033
2084
|
disabled: e.disabled,
|
|
2034
2085
|
class: f(["rounded-full border-slate-300 text-slate-900 focus:ring-slate-900/10 focus:ring-2 transition", l.value]),
|
|
2035
2086
|
onChange: r[0] || (r[0] = (i) => s.$emit("update:modelValue", e.value))
|
|
2036
|
-
}, null, 42,
|
|
2037
|
-
e.label ? (a(), n("span",
|
|
2087
|
+
}, null, 42, Ut),
|
|
2088
|
+
e.label ? (a(), n("span", Kt, h(e.label), 1)) : c("", !0)
|
|
2038
2089
|
], 2));
|
|
2039
2090
|
}
|
|
2040
|
-
},
|
|
2091
|
+
}, Yt = {
|
|
2041
2092
|
class: "w-full",
|
|
2042
2093
|
"data-component": "DXSelect"
|
|
2043
|
-
},
|
|
2094
|
+
}, Wt = {
|
|
2044
2095
|
key: 0,
|
|
2045
2096
|
class: "block text-sm text-slate-600 mb-1 font-medium"
|
|
2046
|
-
},
|
|
2097
|
+
}, Jt = { class: "relative" }, Qt = {
|
|
2047
2098
|
key: 0,
|
|
2048
2099
|
class: "absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none text-slate-400"
|
|
2049
|
-
},
|
|
2100
|
+
}, el = ["value", "disabled"], tl = {
|
|
2050
2101
|
key: 0,
|
|
2051
2102
|
value: "",
|
|
2052
2103
|
disabled: "",
|
|
2053
2104
|
selected: ""
|
|
2054
|
-
},
|
|
2105
|
+
}, ll = ["value"], al = { class: "absolute inset-y-0 right-0 flex items-center pr-3 pointer-events-none" }, nl = {
|
|
2055
2106
|
key: 1,
|
|
2056
2107
|
class: "mt-1 text-xs text-rose-500"
|
|
2057
|
-
},
|
|
2108
|
+
}, sl = {
|
|
2058
2109
|
key: 2,
|
|
2059
2110
|
class: "mt-1 text-xs text-slate-500"
|
|
2060
|
-
},
|
|
2111
|
+
}, no = {
|
|
2061
2112
|
__name: "DXSelect",
|
|
2062
2113
|
props: {
|
|
2063
2114
|
/** Значение (v-model) */
|
|
@@ -2081,20 +2132,20 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2081
2132
|
},
|
|
2082
2133
|
emits: ["update:modelValue"],
|
|
2083
2134
|
setup(e) {
|
|
2084
|
-
const t = e, l =
|
|
2135
|
+
const t = e, l = p(() => [
|
|
2085
2136
|
"w-full appearance-none rounded-xl border border-slate-200 bg-white transition-colors pr-10",
|
|
2086
|
-
|
|
2137
|
+
he(t.size, "input"),
|
|
2087
2138
|
"text-slate-700",
|
|
2088
2139
|
t.prefixIcon && "pl-10",
|
|
2089
2140
|
!t.disabled && "hover:border-slate-300 focus:outline-none focus:ring-2 focus:ring-slate-900/10 focus:border-slate-300",
|
|
2090
2141
|
t.disabled && "opacity-60 cursor-not-allowed bg-slate-50",
|
|
2091
2142
|
t.error && "border-rose-300 focus:ring-rose-500/10"
|
|
2092
2143
|
]);
|
|
2093
|
-
return (s, r) => (a(), n("div",
|
|
2094
|
-
e.label ? (a(), n("label",
|
|
2095
|
-
o("div",
|
|
2096
|
-
e.prefixIcon ? (a(), n("div",
|
|
2097
|
-
A(
|
|
2144
|
+
return (s, r) => (a(), n("div", Yt, [
|
|
2145
|
+
e.label ? (a(), n("label", Wt, h(e.label), 1)) : c("", !0),
|
|
2146
|
+
o("div", Jt, [
|
|
2147
|
+
e.prefixIcon ? (a(), n("div", Qt, [
|
|
2148
|
+
A(D, {
|
|
2098
2149
|
icon: e.prefixIcon,
|
|
2099
2150
|
size: "sm",
|
|
2100
2151
|
animation: "none"
|
|
@@ -2106,25 +2157,25 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2106
2157
|
class: f(l.value),
|
|
2107
2158
|
onChange: r[0] || (r[0] = (i) => s.$emit("update:modelValue", i.target.value))
|
|
2108
2159
|
}, [
|
|
2109
|
-
e.placeholder ? (a(), n("option",
|
|
2110
|
-
(a(!0), n(M, null,
|
|
2160
|
+
e.placeholder ? (a(), n("option", tl, h(e.placeholder), 1)) : c("", !0),
|
|
2161
|
+
(a(!0), n(M, null, L(e.options, (i) => (a(), n("option", {
|
|
2111
2162
|
key: i.value,
|
|
2112
2163
|
value: i.value
|
|
2113
|
-
},
|
|
2114
|
-
], 42,
|
|
2115
|
-
o("div",
|
|
2116
|
-
A(
|
|
2117
|
-
icon:
|
|
2164
|
+
}, h(i.label), 9, ll))), 128))
|
|
2165
|
+
], 42, el),
|
|
2166
|
+
o("div", al, [
|
|
2167
|
+
A(D, {
|
|
2168
|
+
icon: _(W),
|
|
2118
2169
|
size: "sm",
|
|
2119
2170
|
animation: "none",
|
|
2120
2171
|
class: "text-slate-400"
|
|
2121
2172
|
}, null, 8, ["icon"])
|
|
2122
2173
|
])
|
|
2123
2174
|
]),
|
|
2124
|
-
e.error ? (a(), n("p",
|
|
2175
|
+
e.error ? (a(), n("p", nl, h(e.error), 1)) : e.helper ? (a(), n("p", sl, h(e.helper), 1)) : c("", !0)
|
|
2125
2176
|
]));
|
|
2126
2177
|
}
|
|
2127
|
-
},
|
|
2178
|
+
}, so = {
|
|
2128
2179
|
__name: "DXSkeleton",
|
|
2129
2180
|
props: {
|
|
2130
2181
|
/** Ширина */
|
|
@@ -2137,30 +2188,30 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2137
2188
|
setup(e) {
|
|
2138
2189
|
return (t, l) => (a(), n("div", {
|
|
2139
2190
|
class: f(["animate-pulse bg-slate-200", e.rounded]),
|
|
2140
|
-
style:
|
|
2191
|
+
style: G({ width: e.width, height: e.height }),
|
|
2141
2192
|
"data-component": "DXSkeleton"
|
|
2142
2193
|
}, null, 6));
|
|
2143
2194
|
}
|
|
2144
|
-
},
|
|
2195
|
+
}, ol = {
|
|
2145
2196
|
class: "w-full",
|
|
2146
2197
|
"data-component": "DXSlider"
|
|
2147
|
-
},
|
|
2198
|
+
}, rl = { class: "flex items-center justify-between mb-2" }, il = {
|
|
2148
2199
|
key: 0,
|
|
2149
2200
|
class: "text-sm font-medium text-slate-700"
|
|
2150
|
-
},
|
|
2201
|
+
}, dl = {
|
|
2151
2202
|
key: 1,
|
|
2152
2203
|
class: "text-sm font-semibold text-slate-900"
|
|
2153
|
-
},
|
|
2204
|
+
}, ul = { class: "relative" }, cl = {
|
|
2154
2205
|
key: 0,
|
|
2155
2206
|
class: "absolute top-1/2 left-0 right-0 flex justify-between pointer-events-none",
|
|
2156
2207
|
style: { transform: "translateY(-50%)" }
|
|
2157
|
-
},
|
|
2208
|
+
}, ml = ["value", "min", "max", "step", "disabled"], fl = {
|
|
2158
2209
|
key: 0,
|
|
2159
2210
|
class: "flex justify-between mt-1 px-1"
|
|
2160
|
-
},
|
|
2211
|
+
}, pl = {
|
|
2161
2212
|
key: 1,
|
|
2162
2213
|
class: "mt-1 text-xs text-slate-500"
|
|
2163
|
-
},
|
|
2214
|
+
}, vl = {
|
|
2164
2215
|
__name: "DXSlider",
|
|
2165
2216
|
props: {
|
|
2166
2217
|
/** Значение (v-model) */
|
|
@@ -2194,29 +2245,29 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2194
2245
|
},
|
|
2195
2246
|
emits: ["update:modelValue"],
|
|
2196
2247
|
setup(e, { emit: t }) {
|
|
2197
|
-
const l = e, s = t, r =
|
|
2248
|
+
const l = e, s = t, r = p(() => `${l.modelValue}${l.unit}`), i = p(() => {
|
|
2198
2249
|
if (!l.ticks) return [];
|
|
2199
|
-
const m = l.tickCount,
|
|
2200
|
-
return Array.from({ length: m }, (
|
|
2250
|
+
const m = l.tickCount, g = (l.max - l.min) / (m - 1);
|
|
2251
|
+
return Array.from({ length: m }, (w, y) => Math.round(l.min + g * y));
|
|
2201
2252
|
}), d = (m) => {
|
|
2202
2253
|
s("update:modelValue", Number(m.target.value));
|
|
2203
|
-
}, u =
|
|
2254
|
+
}, u = p(() => {
|
|
2204
2255
|
if (!l.ticks || !i.value.length) return -1;
|
|
2205
|
-
let m = 0,
|
|
2206
|
-
return i.value.forEach((
|
|
2207
|
-
const
|
|
2208
|
-
|
|
2256
|
+
let m = 0, g = Math.abs(l.modelValue - i.value[0]);
|
|
2257
|
+
return i.value.forEach((w, y) => {
|
|
2258
|
+
const S = Math.abs(l.modelValue - w);
|
|
2259
|
+
S < g && (g = S, m = y);
|
|
2209
2260
|
}), m;
|
|
2210
|
-
}),
|
|
2211
|
-
return (m,
|
|
2212
|
-
o("div",
|
|
2213
|
-
e.label ? (a(), n("label",
|
|
2214
|
-
e.showValue ? (a(), n("span",
|
|
2261
|
+
}), v = (m) => u.value === m, b = (m) => v(m) ? l.tickIconAnimation : "none";
|
|
2262
|
+
return (m, g) => (a(), n("div", ol, [
|
|
2263
|
+
o("div", rl, [
|
|
2264
|
+
e.label ? (a(), n("label", il, h(e.label), 1)) : c("", !0),
|
|
2265
|
+
e.showValue ? (a(), n("span", dl, h(r.value), 1)) : c("", !0)
|
|
2215
2266
|
]),
|
|
2216
|
-
o("div",
|
|
2217
|
-
e.ticks ? (a(), n("div",
|
|
2218
|
-
(a(!0), n(M, null,
|
|
2219
|
-
key: `tick-${
|
|
2267
|
+
o("div", ul, [
|
|
2268
|
+
e.ticks ? (a(), n("div", cl, [
|
|
2269
|
+
(a(!0), n(M, null, L(i.value, (w, y) => (a(), n("div", {
|
|
2270
|
+
key: `tick-${y}`,
|
|
2220
2271
|
class: "w-0.5 h-3 bg-slate-400 rounded-full"
|
|
2221
2272
|
}))), 128))
|
|
2222
2273
|
])) : c("", !0),
|
|
@@ -2229,33 +2280,33 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2229
2280
|
disabled: e.disabled,
|
|
2230
2281
|
class: "slider w-full appearance-none cursor-pointer disabled:opacity-60 disabled:cursor-not-allowed relative z-10",
|
|
2231
2282
|
onInput: d
|
|
2232
|
-
}, null, 40,
|
|
2283
|
+
}, null, 40, ml)
|
|
2233
2284
|
]),
|
|
2234
|
-
e.ticks && (e.showTickLabels || e.tickIcons) ? (a(), n("div",
|
|
2235
|
-
(a(!0), n(M, null,
|
|
2236
|
-
key:
|
|
2237
|
-
class: f(["flex flex-col items-center gap-0.5 transition-transform duration-200", { "scale-110":
|
|
2285
|
+
e.ticks && (e.showTickLabels || e.tickIcons) ? (a(), n("div", fl, [
|
|
2286
|
+
(a(!0), n(M, null, L(i.value, (w, y) => (a(), n("span", {
|
|
2287
|
+
key: w,
|
|
2288
|
+
class: f(["flex flex-col items-center gap-0.5 transition-transform duration-200", { "scale-110": v(y) }])
|
|
2238
2289
|
}, [
|
|
2239
|
-
e.tickIcons && e.tickIcons[
|
|
2290
|
+
e.tickIcons && e.tickIcons[y] ? (a(), $(D, {
|
|
2240
2291
|
key: 0,
|
|
2241
|
-
icon: e.tickIcons[
|
|
2292
|
+
icon: e.tickIcons[y],
|
|
2242
2293
|
size: "sm",
|
|
2243
|
-
animation:
|
|
2244
|
-
class: f(
|
|
2294
|
+
animation: b(y),
|
|
2295
|
+
class: f(v(y) ? "text-slate-900" : "text-slate-400")
|
|
2245
2296
|
}, null, 8, ["icon", "animation", "class"])) : c("", !0),
|
|
2246
2297
|
e.showTickLabels ? (a(), n("span", {
|
|
2247
2298
|
key: 1,
|
|
2248
|
-
class: f(["text-xs transition-colors duration-200",
|
|
2249
|
-
},
|
|
2299
|
+
class: f(["text-xs transition-colors duration-200", v(y) ? "text-slate-900 font-semibold" : "text-slate-500"])
|
|
2300
|
+
}, h(w) + h(e.unit), 3)) : c("", !0)
|
|
2250
2301
|
], 2))), 128))
|
|
2251
2302
|
])) : c("", !0),
|
|
2252
|
-
e.helper ? (a(), n("p",
|
|
2303
|
+
e.helper ? (a(), n("p", pl, h(e.helper), 1)) : c("", !0)
|
|
2253
2304
|
]));
|
|
2254
2305
|
}
|
|
2255
|
-
},
|
|
2306
|
+
}, oo = /* @__PURE__ */ N(vl, [["__scopeId", "data-v-d55b8f6a"]]), hl = {
|
|
2256
2307
|
class: "flex flex-wrap gap-2",
|
|
2257
2308
|
"data-component": "DXTags"
|
|
2258
|
-
},
|
|
2309
|
+
}, bl = ["onClick", "aria-label"], ro = {
|
|
2259
2310
|
__name: "DXTags",
|
|
2260
2311
|
props: {
|
|
2261
2312
|
/** Массив тегов: строки или объекты { label, icon?, closable?, color?, iconAnimation? } */
|
|
@@ -2269,81 +2320,81 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2269
2320
|
},
|
|
2270
2321
|
emits: ["remove"],
|
|
2271
2322
|
setup(e, { emit: t }) {
|
|
2272
|
-
const l = e, s = t, r =
|
|
2273
|
-
label:
|
|
2323
|
+
const l = e, s = t, r = p(() => l.tags.map((b) => typeof b == "string" ? {
|
|
2324
|
+
label: b,
|
|
2274
2325
|
icon: null,
|
|
2275
2326
|
closable: l.closable,
|
|
2276
2327
|
color: l.color,
|
|
2277
2328
|
iconAnimation: "none"
|
|
2278
2329
|
} : {
|
|
2279
|
-
label:
|
|
2280
|
-
icon:
|
|
2281
|
-
closable:
|
|
2282
|
-
color:
|
|
2283
|
-
iconAnimation:
|
|
2284
|
-
})), i = (
|
|
2330
|
+
label: b.label || b,
|
|
2331
|
+
icon: b.icon || null,
|
|
2332
|
+
closable: b.closable !== void 0 ? b.closable : l.closable,
|
|
2333
|
+
color: b.color || l.color,
|
|
2334
|
+
iconAnimation: b.iconAnimation || "none"
|
|
2335
|
+
})), i = (b, m) => `${b.label}-${m}`, d = {
|
|
2285
2336
|
default: "bg-slate-100 text-slate-800 border-slate-200",
|
|
2286
2337
|
primary: "bg-blue-100 text-blue-800 border-blue-200",
|
|
2287
2338
|
success: "bg-green-100 text-green-800 border-green-200",
|
|
2288
2339
|
warning: "bg-yellow-100 text-yellow-800 border-yellow-200",
|
|
2289
2340
|
danger: "bg-red-100 text-red-800 border-red-200",
|
|
2290
2341
|
info: "bg-cyan-100 text-cyan-800 border-cyan-200"
|
|
2291
|
-
}, u = (
|
|
2292
|
-
const m = l.variant === "large" ? "px-3 py-1.5 text-sm" : "px-2 py-1 text-xs",
|
|
2293
|
-
return `${m} ${
|
|
2294
|
-
},
|
|
2295
|
-
s("remove", { tag:
|
|
2342
|
+
}, u = (b) => {
|
|
2343
|
+
const m = l.variant === "large" ? "px-3 py-1.5 text-sm" : "px-2 py-1 text-xs", g = d[b.color] || d.default;
|
|
2344
|
+
return `${m} ${g} rounded-full border`;
|
|
2345
|
+
}, v = (b, m) => {
|
|
2346
|
+
s("remove", { tag: b, index: m });
|
|
2296
2347
|
};
|
|
2297
|
-
return (
|
|
2298
|
-
(a(!0), n(M, null,
|
|
2299
|
-
key: i(
|
|
2300
|
-
class: f([u(
|
|
2348
|
+
return (b, m) => (a(), n("div", hl, [
|
|
2349
|
+
(a(!0), n(M, null, L(r.value, (g, w) => (a(), n("span", {
|
|
2350
|
+
key: i(g, w),
|
|
2351
|
+
class: f([u(g), "inline-flex items-center gap-1.5 transition-all duration-200"])
|
|
2301
2352
|
}, [
|
|
2302
|
-
|
|
2353
|
+
g.icon ? (a(), $(D, {
|
|
2303
2354
|
key: 0,
|
|
2304
|
-
icon:
|
|
2355
|
+
icon: g.icon,
|
|
2305
2356
|
size: e.variant === "large" ? "sm" : "xs",
|
|
2306
|
-
animation:
|
|
2357
|
+
animation: g.iconAnimation || "none"
|
|
2307
2358
|
}, null, 8, ["icon", "size", "animation"])) : c("", !0),
|
|
2308
|
-
o("span", null,
|
|
2309
|
-
|
|
2359
|
+
o("span", null, h(g.label), 1),
|
|
2360
|
+
g.closable ? (a(), n("button", {
|
|
2310
2361
|
key: 1,
|
|
2311
2362
|
type: "button",
|
|
2312
|
-
onClick: (
|
|
2363
|
+
onClick: (y) => v(g, w),
|
|
2313
2364
|
class: "ml-0.5 -mr-1 hover:bg-slate-200/50 rounded-full p-0.5 transition-colors",
|
|
2314
|
-
"aria-label": `Remove ${
|
|
2365
|
+
"aria-label": `Remove ${g.label}`
|
|
2315
2366
|
}, [
|
|
2316
|
-
A(
|
|
2317
|
-
icon:
|
|
2367
|
+
A(D, {
|
|
2368
|
+
icon: _(Oe),
|
|
2318
2369
|
size: "xs",
|
|
2319
2370
|
animation: "scale"
|
|
2320
2371
|
}, null, 8, ["icon"])
|
|
2321
|
-
], 8,
|
|
2372
|
+
], 8, bl)) : c("", !0)
|
|
2322
2373
|
], 2))), 128))
|
|
2323
2374
|
]));
|
|
2324
2375
|
}
|
|
2325
|
-
},
|
|
2376
|
+
}, gl = {
|
|
2326
2377
|
class: "w-full",
|
|
2327
2378
|
"data-component": "DXTextarea"
|
|
2328
|
-
},
|
|
2379
|
+
}, xl = {
|
|
2329
2380
|
key: 0,
|
|
2330
2381
|
class: "block text-sm text-slate-600 mb-1 font-medium"
|
|
2331
|
-
},
|
|
2382
|
+
}, yl = { class: "relative" }, wl = {
|
|
2332
2383
|
key: 0,
|
|
2333
2384
|
class: "absolute left-3 top-3 text-slate-400 z-10"
|
|
2334
|
-
},
|
|
2385
|
+
}, kl = ["rows", "placeholder", "value", "disabled", "maxlength"], $l = {
|
|
2335
2386
|
key: 1,
|
|
2336
2387
|
class: "absolute right-3 top-3 text-slate-400 z-10"
|
|
2337
|
-
},
|
|
2388
|
+
}, Cl = {
|
|
2338
2389
|
key: 2,
|
|
2339
2390
|
class: "absolute right-3 bottom-3 text-xs text-slate-400"
|
|
2340
|
-
},
|
|
2391
|
+
}, Sl = {
|
|
2341
2392
|
key: 1,
|
|
2342
2393
|
class: "mt-1 text-xs text-rose-500"
|
|
2343
|
-
},
|
|
2394
|
+
}, Vl = {
|
|
2344
2395
|
key: 2,
|
|
2345
2396
|
class: "mt-1 text-xs text-slate-500"
|
|
2346
|
-
},
|
|
2397
|
+
}, io = {
|
|
2347
2398
|
__name: "DXTextarea",
|
|
2348
2399
|
props: {
|
|
2349
2400
|
/** Значение (v-model) */
|
|
@@ -2374,25 +2425,25 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2374
2425
|
emits: ["update:modelValue"],
|
|
2375
2426
|
setup(e, { emit: t }) {
|
|
2376
2427
|
var u;
|
|
2377
|
-
const l = e, s = t, r =
|
|
2378
|
-
const
|
|
2379
|
-
r.value =
|
|
2428
|
+
const l = e, s = t, r = B(((u = l.modelValue) == null ? void 0 : u.length) || 0), i = (v) => {
|
|
2429
|
+
const b = v.target.value;
|
|
2430
|
+
r.value = b.length, s("update:modelValue", b), l.autoResize && (v.target.style.height = "auto", v.target.style.height = v.target.scrollHeight + "px");
|
|
2380
2431
|
};
|
|
2381
|
-
|
|
2382
|
-
r.value = (
|
|
2432
|
+
F(() => l.modelValue, (v) => {
|
|
2433
|
+
r.value = (v == null ? void 0 : v.length) || 0;
|
|
2383
2434
|
});
|
|
2384
|
-
const d =
|
|
2435
|
+
const d = p(() => [
|
|
2385
2436
|
"w-full rounded-xl border border-slate-200 px-4 py-3 text-sm text-slate-700 placeholder:text-slate-400 focus:outline-none focus:ring-2 focus:ring-slate-900/10 focus:border-slate-300 transition-colors disabled:opacity-60 disabled:cursor-not-allowed disabled:bg-slate-50",
|
|
2386
2437
|
l.prefixIcon && "pl-10",
|
|
2387
2438
|
l.suffixIcon && "pr-10",
|
|
2388
2439
|
l.maxLength && l.showCount && "pb-8",
|
|
2389
2440
|
l.error && "border-rose-300 focus:ring-rose-500/10"
|
|
2390
2441
|
]);
|
|
2391
|
-
return (
|
|
2392
|
-
e.label ? (a(), n("label",
|
|
2393
|
-
o("div",
|
|
2394
|
-
e.prefixIcon ? (a(), n("div",
|
|
2395
|
-
A(
|
|
2442
|
+
return (v, b) => (a(), n("div", gl, [
|
|
2443
|
+
e.label ? (a(), n("label", xl, h(e.label), 1)) : c("", !0),
|
|
2444
|
+
o("div", yl, [
|
|
2445
|
+
e.prefixIcon ? (a(), n("div", wl, [
|
|
2446
|
+
A(D, {
|
|
2396
2447
|
icon: e.prefixIcon,
|
|
2397
2448
|
size: "sm",
|
|
2398
2449
|
animation: "none"
|
|
@@ -2406,60 +2457,60 @@ const js = /* @__PURE__ */ Z(Bt, [["render", It]]), At = {
|
|
|
2406
2457
|
maxlength: e.maxLength,
|
|
2407
2458
|
class: f(d.value),
|
|
2408
2459
|
onInput: i
|
|
2409
|
-
}, null, 42,
|
|
2410
|
-
e.suffixIcon ? (a(), n("div",
|
|
2411
|
-
A(
|
|
2460
|
+
}, null, 42, kl),
|
|
2461
|
+
e.suffixIcon ? (a(), n("div", $l, [
|
|
2462
|
+
A(D, {
|
|
2412
2463
|
icon: e.suffixIcon,
|
|
2413
2464
|
size: "sm",
|
|
2414
2465
|
animation: "none"
|
|
2415
2466
|
}, null, 8, ["icon"])
|
|
2416
2467
|
])) : c("", !0),
|
|
2417
|
-
e.maxLength && e.showCount ? (a(), n("div",
|
|
2468
|
+
e.maxLength && e.showCount ? (a(), n("div", Cl, h(r.value) + " / " + h(e.maxLength), 1)) : c("", !0)
|
|
2418
2469
|
]),
|
|
2419
|
-
e.error ? (a(), n("p",
|
|
2470
|
+
e.error ? (a(), n("p", Sl, h(e.error), 1)) : e.helper ? (a(), n("p", Vl, h(e.helper), 1)) : c("", !0)
|
|
2420
2471
|
]));
|
|
2421
2472
|
}
|
|
2422
|
-
},
|
|
2473
|
+
}, H = {
|
|
2423
2474
|
info: {
|
|
2424
2475
|
bg: "bg-blue-50",
|
|
2425
2476
|
text: "text-blue-800",
|
|
2426
2477
|
border: "border-blue-200",
|
|
2427
|
-
icon:
|
|
2478
|
+
icon: ne,
|
|
2428
2479
|
iconColor: "text-blue-500"
|
|
2429
2480
|
},
|
|
2430
2481
|
success: {
|
|
2431
2482
|
bg: "bg-emerald-50",
|
|
2432
2483
|
text: "text-emerald-800",
|
|
2433
2484
|
border: "border-emerald-200",
|
|
2434
|
-
icon:
|
|
2485
|
+
icon: le,
|
|
2435
2486
|
iconColor: "text-emerald-500"
|
|
2436
2487
|
},
|
|
2437
2488
|
warning: {
|
|
2438
2489
|
bg: "bg-amber-50",
|
|
2439
2490
|
text: "text-amber-800",
|
|
2440
2491
|
border: "border-amber-200",
|
|
2441
|
-
icon:
|
|
2492
|
+
icon: ae,
|
|
2442
2493
|
iconColor: "text-amber-500"
|
|
2443
2494
|
},
|
|
2444
2495
|
danger: {
|
|
2445
2496
|
bg: "bg-rose-50",
|
|
2446
2497
|
text: "text-rose-800",
|
|
2447
2498
|
border: "border-rose-200",
|
|
2448
|
-
icon:
|
|
2499
|
+
icon: me,
|
|
2449
2500
|
iconColor: "text-rose-500"
|
|
2450
2501
|
}
|
|
2451
2502
|
};
|
|
2452
|
-
function
|
|
2453
|
-
const t =
|
|
2503
|
+
function uo(e) {
|
|
2504
|
+
const t = H[e] || H.info;
|
|
2454
2505
|
return `${t.bg} ${t.text} ${t.border}`;
|
|
2455
2506
|
}
|
|
2456
|
-
function
|
|
2457
|
-
return (
|
|
2507
|
+
function co(e) {
|
|
2508
|
+
return (H[e] || H.info).icon;
|
|
2458
2509
|
}
|
|
2459
|
-
function
|
|
2460
|
-
return
|
|
2510
|
+
function Dl(e) {
|
|
2511
|
+
return H[e] || H.info;
|
|
2461
2512
|
}
|
|
2462
|
-
const
|
|
2513
|
+
const zl = ["data-variant"], Bl = { class: "flex-1" }, mo = {
|
|
2463
2514
|
__name: "DXToast",
|
|
2464
2515
|
props: {
|
|
2465
2516
|
/** Вариант: info | success | warning | danger */
|
|
@@ -2468,28 +2519,28 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2468
2519
|
showIcon: { type: Boolean, default: !0 }
|
|
2469
2520
|
},
|
|
2470
2521
|
setup(e) {
|
|
2471
|
-
const t = e, l =
|
|
2522
|
+
const t = e, l = p(() => Dl(t.variant)), s = p(() => `${l.value.bg} ${l.value.border} ${l.value.text}`), r = p(() => t.showIcon ? l.value.icon : null), i = p(() => l.value.iconColor);
|
|
2472
2523
|
return (d, u) => (a(), n("div", {
|
|
2473
2524
|
class: f(["flex items-start gap-3 rounded-2xl border px-4 py-3 text-sm", s.value]),
|
|
2474
2525
|
"data-component": "DXToast",
|
|
2475
2526
|
"data-variant": e.variant
|
|
2476
2527
|
}, [
|
|
2477
|
-
r.value ? (a(),
|
|
2528
|
+
r.value ? (a(), $(D, {
|
|
2478
2529
|
key: 0,
|
|
2479
2530
|
icon: r.value,
|
|
2480
2531
|
size: "md",
|
|
2481
2532
|
animation: "none",
|
|
2482
2533
|
class: f([i.value, "shrink-0 mt-0.5"])
|
|
2483
2534
|
}, null, 8, ["icon", "class"])) : c("", !0),
|
|
2484
|
-
o("div",
|
|
2485
|
-
|
|
2535
|
+
o("div", Bl, [
|
|
2536
|
+
V(d.$slots, "default")
|
|
2486
2537
|
])
|
|
2487
|
-
], 10,
|
|
2538
|
+
], 10, zl));
|
|
2488
2539
|
}
|
|
2489
|
-
},
|
|
2540
|
+
}, Xl = ["aria-checked", "disabled"], Il = {
|
|
2490
2541
|
key: 0,
|
|
2491
2542
|
class: "text-sm text-slate-700 select-none"
|
|
2492
|
-
},
|
|
2543
|
+
}, fo = {
|
|
2493
2544
|
__name: "DXToggle",
|
|
2494
2545
|
props: {
|
|
2495
2546
|
/** Значение (v-model) */
|
|
@@ -2516,11 +2567,11 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2516
2567
|
o("span", {
|
|
2517
2568
|
class: f(["inline-block h-4 w-4 transform rounded-full bg-white transition-transform", e.modelValue ? "translate-x-6" : "translate-x-1"])
|
|
2518
2569
|
}, null, 2)
|
|
2519
|
-
], 10,
|
|
2520
|
-
e.label ? (a(), n("span",
|
|
2570
|
+
], 10, Xl),
|
|
2571
|
+
e.label ? (a(), n("span", Il, h(e.label), 1)) : c("", !0)
|
|
2521
2572
|
], 2));
|
|
2522
2573
|
}
|
|
2523
|
-
},
|
|
2574
|
+
}, Al = ["disabled", "aria-pressed", "aria-label"], jl = { key: 1 }, Ml = {
|
|
2524
2575
|
__name: "DXToggleButton",
|
|
2525
2576
|
props: {
|
|
2526
2577
|
/** Текущее состояние (v-model) */
|
|
@@ -2551,38 +2602,38 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2551
2602
|
emits: ["update:modelValue", "change"],
|
|
2552
2603
|
setup(e, { emit: t }) {
|
|
2553
2604
|
const l = e, s = t, r = () => {
|
|
2554
|
-
const
|
|
2555
|
-
s("update:modelValue",
|
|
2556
|
-
}, i =
|
|
2605
|
+
const g = !l.modelValue;
|
|
2606
|
+
s("update:modelValue", g), s("change", g);
|
|
2607
|
+
}, i = p(() => l.modelValue ? l.activeIcon : l.inactiveIcon), d = p(() => l.modelValue ? l.activeLabel : l.inactiveLabel), u = p(() => l.size === "sm" ? "xs" : l.size === "lg" ? "md" : "sm"), v = p(() => d.value ? l.size === "sm" ? "px-3 py-2 text-xs" : l.size === "lg" ? "px-5 py-3 text-base" : "px-4 py-2.5 text-sm" : l.size === "sm" ? "h-9 w-9 text-xs" : l.size === "lg" ? "h-12 w-12 text-base" : "h-10 w-10 text-sm"), b = {
|
|
2557
2608
|
primary: "bg-slate-800 text-white hover:bg-slate-700 focus:ring-slate-500",
|
|
2558
2609
|
ghost: "border border-slate-200 text-slate-700 hover:border-slate-300 hover:bg-slate-50 bg-white focus:ring-slate-400",
|
|
2559
2610
|
danger: "bg-rose-600 text-white hover:bg-rose-500 focus:ring-rose-500",
|
|
2560
2611
|
success: "bg-green-600 text-white hover:bg-green-500 focus:ring-green-500",
|
|
2561
2612
|
warning: "bg-amber-500 text-white hover:bg-amber-400 focus:ring-amber-500",
|
|
2562
2613
|
outline: "border border-slate-200 text-slate-700 hover:border-slate-300 bg-transparent focus:ring-slate-400"
|
|
2563
|
-
}, m =
|
|
2564
|
-
const
|
|
2565
|
-
return
|
|
2614
|
+
}, m = p(() => {
|
|
2615
|
+
const g = l.modelValue ? l.activeVariant : l.inactiveVariant;
|
|
2616
|
+
return b[g] || b.ghost;
|
|
2566
2617
|
});
|
|
2567
|
-
return (
|
|
2618
|
+
return (g, w) => (a(), n("button", {
|
|
2568
2619
|
type: "button",
|
|
2569
|
-
class: f(["toggle-btn inline-flex items-center justify-center gap-2 rounded-xl font-semibold transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:opacity-60 disabled:cursor-not-allowed", [
|
|
2620
|
+
class: f(["toggle-btn inline-flex items-center justify-center gap-2 rounded-xl font-semibold transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:opacity-60 disabled:cursor-not-allowed", [v.value, m.value, { "w-full": e.block }]]),
|
|
2570
2621
|
disabled: e.disabled,
|
|
2571
2622
|
onClick: r,
|
|
2572
2623
|
"aria-pressed": e.modelValue,
|
|
2573
2624
|
"aria-label": e.ariaLabel,
|
|
2574
2625
|
"data-component": "DXToggleButton"
|
|
2575
2626
|
}, [
|
|
2576
|
-
i.value ? (a(),
|
|
2627
|
+
i.value ? (a(), $(D, {
|
|
2577
2628
|
key: 0,
|
|
2578
2629
|
icon: i.value,
|
|
2579
2630
|
size: u.value,
|
|
2580
2631
|
animation: e.iconAnimation
|
|
2581
2632
|
}, null, 8, ["icon", "size", "animation"])) : c("", !0),
|
|
2582
|
-
d.value ? (a(), n("span",
|
|
2583
|
-
], 10,
|
|
2633
|
+
d.value ? (a(), n("span", jl, h(d.value), 1)) : c("", !0)
|
|
2634
|
+
], 10, Al));
|
|
2584
2635
|
}
|
|
2585
|
-
},
|
|
2636
|
+
}, po = /* @__PURE__ */ N(Ml, [["__scopeId", "data-v-249aa090"]]), Ll = {
|
|
2586
2637
|
__name: "DXTooltip",
|
|
2587
2638
|
props: {
|
|
2588
2639
|
/** Текст подсказки */
|
|
@@ -2595,7 +2646,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2595
2646
|
maxWidth: { type: String, default: "200px" }
|
|
2596
2647
|
},
|
|
2597
2648
|
setup(e) {
|
|
2598
|
-
const t = e, l =
|
|
2649
|
+
const t = e, l = B(!1), s = {
|
|
2599
2650
|
top: "bottom-full left-1/2 -translate-x-1/2 mb-2",
|
|
2600
2651
|
bottom: "top-full left-1/2 -translate-x-1/2 mt-2",
|
|
2601
2652
|
left: "right-full top-1/2 -translate-y-1/2 mr-2",
|
|
@@ -2613,35 +2664,35 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2613
2664
|
}, d = {
|
|
2614
2665
|
dark: "bg-slate-900 text-white",
|
|
2615
2666
|
light: "bg-white text-slate-900 border border-slate-200 shadow-lg"
|
|
2616
|
-
}, u =
|
|
2667
|
+
}, u = p(() => [
|
|
2617
2668
|
"absolute z-50 px-3 py-2 text-sm rounded-lg whitespace-normal",
|
|
2618
2669
|
s[t.position] || s.top,
|
|
2619
2670
|
d[t.color] || d.dark
|
|
2620
|
-
]),
|
|
2671
|
+
]), v = p(() => [
|
|
2621
2672
|
"absolute w-0 h-0 border-4",
|
|
2622
2673
|
t.color === "light" ? i[t.position] : r[t.position]
|
|
2623
2674
|
]);
|
|
2624
|
-
return (
|
|
2675
|
+
return (b, m) => (a(), n("div", {
|
|
2625
2676
|
class: "relative inline-block",
|
|
2626
|
-
onMouseenter: m[0] || (m[0] = (
|
|
2627
|
-
onMouseleave: m[1] || (m[1] = (
|
|
2628
|
-
onFocus: m[2] || (m[2] = (
|
|
2629
|
-
onBlur: m[3] || (m[3] = (
|
|
2677
|
+
onMouseenter: m[0] || (m[0] = (g) => l.value = !0),
|
|
2678
|
+
onMouseleave: m[1] || (m[1] = (g) => l.value = !1),
|
|
2679
|
+
onFocus: m[2] || (m[2] = (g) => l.value = !0),
|
|
2680
|
+
onBlur: m[3] || (m[3] = (g) => l.value = !1),
|
|
2630
2681
|
"data-component": "DXTooltip"
|
|
2631
2682
|
}, [
|
|
2632
|
-
|
|
2683
|
+
V(b.$slots, "default", {}, void 0, !0),
|
|
2633
2684
|
A(Y, { name: "tooltip" }, {
|
|
2634
|
-
default:
|
|
2635
|
-
l.value && (e.content ||
|
|
2685
|
+
default: T(() => [
|
|
2686
|
+
l.value && (e.content || b.$slots.content) ? (a(), n("div", {
|
|
2636
2687
|
key: 0,
|
|
2637
2688
|
class: f(u.value),
|
|
2638
2689
|
role: "tooltip"
|
|
2639
2690
|
}, [
|
|
2640
|
-
|
|
2641
|
-
j(
|
|
2691
|
+
V(b.$slots, "content", {}, () => [
|
|
2692
|
+
j(h(e.content), 1)
|
|
2642
2693
|
], !0),
|
|
2643
2694
|
o("div", {
|
|
2644
|
-
class: f(
|
|
2695
|
+
class: f(v.value)
|
|
2645
2696
|
}, null, 2)
|
|
2646
2697
|
], 2)) : c("", !0)
|
|
2647
2698
|
]),
|
|
@@ -2649,7 +2700,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2649
2700
|
})
|
|
2650
2701
|
], 32));
|
|
2651
2702
|
}
|
|
2652
|
-
},
|
|
2703
|
+
}, vo = /* @__PURE__ */ N(Ll, [["__scopeId", "data-v-bd65e96f"]]), de = {
|
|
2653
2704
|
__name: "DXValidationIcon",
|
|
2654
2705
|
props: {
|
|
2655
2706
|
/** Состояние: success | error | warning | info */
|
|
@@ -2660,23 +2711,23 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2660
2711
|
setup(e) {
|
|
2661
2712
|
const t = e, l = {
|
|
2662
2713
|
success: {
|
|
2663
|
-
icon:
|
|
2714
|
+
icon: le,
|
|
2664
2715
|
color: "text-emerald-500"
|
|
2665
2716
|
},
|
|
2666
2717
|
error: {
|
|
2667
|
-
icon:
|
|
2718
|
+
icon: ze,
|
|
2668
2719
|
color: "text-rose-500"
|
|
2669
2720
|
},
|
|
2670
2721
|
warning: {
|
|
2671
|
-
icon:
|
|
2722
|
+
icon: ae,
|
|
2672
2723
|
color: "text-amber-500"
|
|
2673
2724
|
},
|
|
2674
2725
|
info: {
|
|
2675
|
-
icon:
|
|
2726
|
+
icon: ne,
|
|
2676
2727
|
color: "text-blue-500"
|
|
2677
2728
|
}
|
|
2678
|
-
}, s =
|
|
2679
|
-
return (d, u) => r.value ? (a(),
|
|
2729
|
+
}, s = p(() => l[t.state] || l.info), r = p(() => s.value.icon), i = p(() => s.value.color);
|
|
2730
|
+
return (d, u) => r.value ? (a(), $(D, {
|
|
2680
2731
|
key: 0,
|
|
2681
2732
|
icon: r.value,
|
|
2682
2733
|
size: e.size,
|
|
@@ -2686,7 +2737,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2686
2737
|
"data-state": e.state
|
|
2687
2738
|
}, null, 8, ["icon", "size", "class", "data-state"])) : c("", !0);
|
|
2688
2739
|
}
|
|
2689
|
-
},
|
|
2740
|
+
}, _l = ["disabled"], Ol = { key: 0 }, Zl = ["disabled"], Tl = { key: 0 }, Nl = ["disabled"], Pl = { key: 0 }, ho = {
|
|
2690
2741
|
__name: "DXActionButtons",
|
|
2691
2742
|
props: {
|
|
2692
2743
|
/** Показывать кнопку просмотра */
|
|
@@ -2702,11 +2753,11 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2702
2753
|
/** Текст кнопки удаления */
|
|
2703
2754
|
deleteLabel: { type: String, default: "Удалить" },
|
|
2704
2755
|
/** Иконка для кнопки просмотра */
|
|
2705
|
-
viewIcon: { type: Object, default: () =>
|
|
2756
|
+
viewIcon: { type: Object, default: () => se },
|
|
2706
2757
|
/** Иконка для кнопки редактирования */
|
|
2707
|
-
editIcon: { type: Object, default: () =>
|
|
2758
|
+
editIcon: { type: Object, default: () => ut },
|
|
2708
2759
|
/** Иконка для кнопки удаления */
|
|
2709
|
-
deleteIcon: { type: Object, default: () =>
|
|
2760
|
+
deleteIcon: { type: Object, default: () => gt },
|
|
2710
2761
|
/** Размер кнопок: xs | sm | md */
|
|
2711
2762
|
size: { type: String, default: "sm" },
|
|
2712
2763
|
/** Только иконки без текста */
|
|
@@ -2718,7 +2769,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2718
2769
|
},
|
|
2719
2770
|
emits: ["view", "edit", "delete"],
|
|
2720
2771
|
setup(e) {
|
|
2721
|
-
const t = e, l =
|
|
2772
|
+
const t = e, l = p(() => t.size === "xs" ? "xs" : t.size === "md" ? "sm" : "xs"), s = p(() => {
|
|
2722
2773
|
const r = "font-semibold rounded-xl";
|
|
2723
2774
|
return t.iconOnly ? t.size === "xs" ? `${r} p-1.5` : t.size === "md" ? `${r} p-2.5` : `${r} p-2` : t.size === "xs" ? `${r} px-2 py-1 text-xs` : t.size === "md" ? `${r} px-4 py-2.5 text-sm` : `${r} px-3 py-2 text-xs`;
|
|
2724
2775
|
});
|
|
@@ -2733,13 +2784,13 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2733
2784
|
disabled: e.disabled,
|
|
2734
2785
|
onClick: i[0] || (i[0] = (d) => r.$emit("view"))
|
|
2735
2786
|
}, [
|
|
2736
|
-
A(
|
|
2787
|
+
A(D, {
|
|
2737
2788
|
icon: e.viewIcon,
|
|
2738
2789
|
size: l.value,
|
|
2739
2790
|
animation: "scale"
|
|
2740
2791
|
}, null, 8, ["icon", "size"]),
|
|
2741
|
-
e.iconOnly ? c("", !0) : (a(), n("span",
|
|
2742
|
-
], 10,
|
|
2792
|
+
e.iconOnly ? c("", !0) : (a(), n("span", Ol, h(e.viewLabel), 1))
|
|
2793
|
+
], 10, _l)) : c("", !0),
|
|
2743
2794
|
e.showEdit ? (a(), n("button", {
|
|
2744
2795
|
key: 1,
|
|
2745
2796
|
type: "button",
|
|
@@ -2747,13 +2798,13 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2747
2798
|
disabled: e.disabled,
|
|
2748
2799
|
onClick: i[1] || (i[1] = (d) => r.$emit("edit"))
|
|
2749
2800
|
}, [
|
|
2750
|
-
A(
|
|
2801
|
+
A(D, {
|
|
2751
2802
|
icon: e.editIcon,
|
|
2752
2803
|
size: l.value,
|
|
2753
2804
|
animation: "wiggle"
|
|
2754
2805
|
}, null, 8, ["icon", "size"]),
|
|
2755
|
-
e.iconOnly ? c("", !0) : (a(), n("span",
|
|
2756
|
-
], 10,
|
|
2806
|
+
e.iconOnly ? c("", !0) : (a(), n("span", Tl, h(e.editLabel), 1))
|
|
2807
|
+
], 10, Zl)) : c("", !0),
|
|
2757
2808
|
e.showDelete ? (a(), n("button", {
|
|
2758
2809
|
key: 2,
|
|
2759
2810
|
type: "button",
|
|
@@ -2761,20 +2812,20 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2761
2812
|
disabled: e.disabled,
|
|
2762
2813
|
onClick: i[2] || (i[2] = (d) => r.$emit("delete"))
|
|
2763
2814
|
}, [
|
|
2764
|
-
A(
|
|
2815
|
+
A(D, {
|
|
2765
2816
|
icon: e.deleteIcon,
|
|
2766
2817
|
size: l.value,
|
|
2767
2818
|
animation: "scale"
|
|
2768
2819
|
}, null, 8, ["icon", "size"]),
|
|
2769
|
-
e.iconOnly ? c("", !0) : (a(), n("span",
|
|
2770
|
-
], 10,
|
|
2771
|
-
|
|
2820
|
+
e.iconOnly ? c("", !0) : (a(), n("span", Pl, h(e.deleteLabel), 1))
|
|
2821
|
+
], 10, Nl)) : c("", !0),
|
|
2822
|
+
V(r.$slots, "default")
|
|
2772
2823
|
], 2));
|
|
2773
2824
|
}
|
|
2774
|
-
},
|
|
2825
|
+
}, Rl = ["data-variant"], ql = { class: "flex items-start gap-3" }, Hl = { class: "flex-1 min-w-0" }, Fl = {
|
|
2775
2826
|
key: 0,
|
|
2776
2827
|
class: "mt-3 flex gap-2"
|
|
2777
|
-
},
|
|
2828
|
+
}, bo = {
|
|
2778
2829
|
__name: "DXAlert",
|
|
2779
2830
|
props: {
|
|
2780
2831
|
/** Вариант: info | success | warning | danger */
|
|
@@ -2790,7 +2841,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2790
2841
|
},
|
|
2791
2842
|
emits: ["dismiss"],
|
|
2792
2843
|
setup(e, { emit: t }) {
|
|
2793
|
-
const l = e, s = t, r =
|
|
2844
|
+
const l = e, s = t, r = B(!1), i = () => {
|
|
2794
2845
|
r.value = !0, s("dismiss");
|
|
2795
2846
|
}, d = {
|
|
2796
2847
|
info: {
|
|
@@ -2799,7 +2850,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2799
2850
|
title: "text-blue-900",
|
|
2800
2851
|
content: "text-blue-800",
|
|
2801
2852
|
close: "text-blue-500",
|
|
2802
|
-
defaultIcon:
|
|
2853
|
+
defaultIcon: ne
|
|
2803
2854
|
},
|
|
2804
2855
|
success: {
|
|
2805
2856
|
bg: "bg-emerald-50 border-emerald-200",
|
|
@@ -2807,7 +2858,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2807
2858
|
title: "text-emerald-900",
|
|
2808
2859
|
content: "text-emerald-800",
|
|
2809
2860
|
close: "text-emerald-500",
|
|
2810
|
-
defaultIcon:
|
|
2861
|
+
defaultIcon: le
|
|
2811
2862
|
},
|
|
2812
2863
|
warning: {
|
|
2813
2864
|
bg: "bg-amber-50 border-amber-200",
|
|
@@ -2815,7 +2866,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2815
2866
|
title: "text-amber-900",
|
|
2816
2867
|
content: "text-amber-800",
|
|
2817
2868
|
close: "text-amber-500",
|
|
2818
|
-
defaultIcon:
|
|
2869
|
+
defaultIcon: ae
|
|
2819
2870
|
},
|
|
2820
2871
|
danger: {
|
|
2821
2872
|
bg: "bg-rose-50 border-rose-200",
|
|
@@ -2823,58 +2874,58 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2823
2874
|
title: "text-rose-900",
|
|
2824
2875
|
content: "text-rose-800",
|
|
2825
2876
|
close: "text-rose-500",
|
|
2826
|
-
defaultIcon:
|
|
2877
|
+
defaultIcon: me
|
|
2827
2878
|
}
|
|
2828
|
-
}, u =
|
|
2879
|
+
}, u = p(() => d[l.variant] || d.info), v = p(() => l.showIcon ? l.icon !== void 0 ? l.icon : u.value.defaultIcon : null), b = p(() => [
|
|
2829
2880
|
"rounded-xl border p-4",
|
|
2830
2881
|
u.value.bg
|
|
2831
|
-
]), m =
|
|
2832
|
-
return
|
|
2882
|
+
]), m = p(() => ["w-5 h-5 flex-shrink-0 mt-0.5", u.value.icon]), g = p(() => u.value.title), w = p(() => ["text-sm", u.value.content, l.title && "mt-1"]);
|
|
2883
|
+
return p(() => u.value.close), (y, S) => r.value ? c("", !0) : (a(), n("div", {
|
|
2833
2884
|
key: 0,
|
|
2834
|
-
class: f(
|
|
2885
|
+
class: f(b.value),
|
|
2835
2886
|
role: "alert",
|
|
2836
2887
|
"data-component": "DXAlert",
|
|
2837
2888
|
"data-variant": e.variant
|
|
2838
2889
|
}, [
|
|
2839
|
-
o("div",
|
|
2840
|
-
|
|
2890
|
+
o("div", ql, [
|
|
2891
|
+
v.value ? (a(), $(D, {
|
|
2841
2892
|
key: 0,
|
|
2842
|
-
icon:
|
|
2893
|
+
icon: v.value,
|
|
2843
2894
|
size: "md",
|
|
2844
2895
|
animation: "none",
|
|
2845
2896
|
class: f(m.value)
|
|
2846
2897
|
}, null, 8, ["icon", "class"])) : c("", !0),
|
|
2847
|
-
o("div",
|
|
2898
|
+
o("div", Hl, [
|
|
2848
2899
|
e.title ? (a(), n("p", {
|
|
2849
2900
|
key: 0,
|
|
2850
|
-
class: f(["font-semibold",
|
|
2851
|
-
},
|
|
2901
|
+
class: f(["font-semibold", g.value])
|
|
2902
|
+
}, h(e.title), 3)) : c("", !0),
|
|
2852
2903
|
o("div", {
|
|
2853
|
-
class: f(
|
|
2904
|
+
class: f(w.value)
|
|
2854
2905
|
}, [
|
|
2855
|
-
|
|
2906
|
+
V(y.$slots, "default")
|
|
2856
2907
|
], 2)
|
|
2857
2908
|
]),
|
|
2858
|
-
e.dismissible ? (a(),
|
|
2909
|
+
e.dismissible ? (a(), $(ve, {
|
|
2859
2910
|
key: 1,
|
|
2860
2911
|
size: "sm",
|
|
2861
2912
|
variant: "default",
|
|
2862
2913
|
onClick: i
|
|
2863
2914
|
})) : c("", !0)
|
|
2864
2915
|
]),
|
|
2865
|
-
|
|
2866
|
-
|
|
2916
|
+
y.$slots.actions ? (a(), n("div", Fl, [
|
|
2917
|
+
V(y.$slots, "actions")
|
|
2867
2918
|
])) : c("", !0)
|
|
2868
|
-
], 10,
|
|
2919
|
+
], 10, Rl));
|
|
2869
2920
|
}
|
|
2870
|
-
},
|
|
2921
|
+
}, El = {
|
|
2871
2922
|
"aria-label": "Breadcrumb",
|
|
2872
2923
|
"data-component": "DXBreadcrumb"
|
|
2873
|
-
},
|
|
2924
|
+
}, Gl = {
|
|
2874
2925
|
key: 0,
|
|
2875
2926
|
class: "mx-2 text-slate-400",
|
|
2876
2927
|
"aria-hidden": "true"
|
|
2877
|
-
},
|
|
2928
|
+
}, Ul = { key: 1 }, Kl = "inline-flex items-center transition-colors", go = {
|
|
2878
2929
|
__name: "DXBreadcrumb",
|
|
2879
2930
|
props: {
|
|
2880
2931
|
/** Элементы: [{ label, href?, to?, icon?, iconAnimation? }] */
|
|
@@ -2893,43 +2944,43 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2893
2944
|
sm: "text-xs",
|
|
2894
2945
|
md: "text-sm",
|
|
2895
2946
|
lg: "text-base"
|
|
2896
|
-
}, s =
|
|
2897
|
-
return (u,
|
|
2947
|
+
}, s = p(() => l[t.size] || l.md), r = p(() => t.size === "sm" ? "xs" : t.size === "lg" ? "sm" : "xs"), i = (u) => u.to ? "router-link" : u.href ? "a" : "span", d = (u, v) => u.iconAnimation ? u.iconAnimation : t.animateCurrentOnly ? v === t.items.length - 1 ? t.iconAnimation : "none" : t.iconAnimation;
|
|
2948
|
+
return (u, v) => (a(), n("nav", El, [
|
|
2898
2949
|
o("ol", {
|
|
2899
2950
|
class: f(["flex items-center flex-wrap", s.value])
|
|
2900
2951
|
}, [
|
|
2901
|
-
(a(!0), n(M, null,
|
|
2952
|
+
(a(!0), n(M, null, L(e.items, (b, m) => (a(), n("li", {
|
|
2902
2953
|
key: m,
|
|
2903
2954
|
class: "flex items-center"
|
|
2904
2955
|
}, [
|
|
2905
|
-
m > 0 ? (a(), n("span",
|
|
2906
|
-
|
|
2907
|
-
e.separator === "chevron" ? (a(),
|
|
2956
|
+
m > 0 ? (a(), n("span", Gl, [
|
|
2957
|
+
V(u.$slots, "separator", {}, () => [
|
|
2958
|
+
e.separator === "chevron" ? (a(), $(D, {
|
|
2908
2959
|
key: 0,
|
|
2909
|
-
icon:
|
|
2960
|
+
icon: _(fe),
|
|
2910
2961
|
size: r.value,
|
|
2911
2962
|
animation: "none"
|
|
2912
|
-
}, null, 8, ["icon", "size"])) : (a(), n("span",
|
|
2963
|
+
}, null, 8, ["icon", "size"])) : (a(), n("span", Ul, "/"))
|
|
2913
2964
|
])
|
|
2914
2965
|
])) : c("", !0),
|
|
2915
|
-
(a(),
|
|
2916
|
-
href:
|
|
2917
|
-
to:
|
|
2966
|
+
(a(), $(O(i(b)), {
|
|
2967
|
+
href: b.href,
|
|
2968
|
+
to: b.to,
|
|
2918
2969
|
class: f([
|
|
2919
|
-
|
|
2970
|
+
Kl,
|
|
2920
2971
|
m === e.items.length - 1 ? "text-slate-900 font-medium" : "text-slate-500 hover:text-slate-700"
|
|
2921
2972
|
]),
|
|
2922
2973
|
"aria-current": m === e.items.length - 1 ? "page" : void 0
|
|
2923
2974
|
}, {
|
|
2924
|
-
default:
|
|
2925
|
-
|
|
2975
|
+
default: T(() => [
|
|
2976
|
+
b.icon ? (a(), $(D, {
|
|
2926
2977
|
key: 0,
|
|
2927
|
-
icon:
|
|
2978
|
+
icon: b.icon,
|
|
2928
2979
|
size: r.value,
|
|
2929
|
-
animation: d(
|
|
2980
|
+
animation: d(b, m),
|
|
2930
2981
|
class: "mr-1.5"
|
|
2931
2982
|
}, null, 8, ["icon", "size", "animation"])) : c("", !0),
|
|
2932
|
-
j(" " + b
|
|
2983
|
+
j(" " + h(b.label), 1)
|
|
2933
2984
|
]),
|
|
2934
2985
|
_: 2
|
|
2935
2986
|
}, 1032, ["href", "to", "class", "aria-current"]))
|
|
@@ -2937,13 +2988,13 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2937
2988
|
], 2)
|
|
2938
2989
|
]));
|
|
2939
2990
|
}
|
|
2940
|
-
},
|
|
2991
|
+
}, Yl = {
|
|
2941
2992
|
class: "inline-flex",
|
|
2942
2993
|
"data-component": "DXButtonGroup"
|
|
2943
|
-
},
|
|
2994
|
+
}, Wl = {
|
|
2944
2995
|
key: 0,
|
|
2945
2996
|
class: "text-sm font-medium text-slate-700 mb-2"
|
|
2946
|
-
},
|
|
2997
|
+
}, xo = {
|
|
2947
2998
|
__name: "DXButtonGroup",
|
|
2948
2999
|
props: {
|
|
2949
3000
|
/** Значение (v-model) */
|
|
@@ -2959,7 +3010,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2959
3010
|
},
|
|
2960
3011
|
emits: ["update:modelValue"],
|
|
2961
3012
|
setup(e, { emit: t }) {
|
|
2962
|
-
const l = e, s = t, r =
|
|
3013
|
+
const l = e, s = t, r = p(() => {
|
|
2963
3014
|
switch (l.size) {
|
|
2964
3015
|
case "sm":
|
|
2965
3016
|
return "h-8";
|
|
@@ -2971,50 +3022,50 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
2971
3022
|
}), i = (u) => {
|
|
2972
3023
|
if (!l.disabled)
|
|
2973
3024
|
if (l.multiple) {
|
|
2974
|
-
const
|
|
2975
|
-
if (
|
|
2976
|
-
const m = [...
|
|
2977
|
-
m.splice(
|
|
3025
|
+
const v = Array.isArray(l.modelValue) ? l.modelValue : [], b = v.indexOf(u);
|
|
3026
|
+
if (b > -1) {
|
|
3027
|
+
const m = [...v];
|
|
3028
|
+
m.splice(b, 1), s("update:modelValue", m);
|
|
2978
3029
|
} else
|
|
2979
|
-
s("update:modelValue", [...
|
|
3030
|
+
s("update:modelValue", [...v, u]);
|
|
2980
3031
|
} else
|
|
2981
3032
|
s("update:modelValue", u);
|
|
2982
3033
|
}, d = (u) => l.multiple ? Array.isArray(l.modelValue) && l.modelValue.includes(u) : l.modelValue === u;
|
|
2983
|
-
return
|
|
3034
|
+
return ee("buttonGroup", {
|
|
2984
3035
|
modelValue: l.modelValue,
|
|
2985
3036
|
multiple: l.multiple,
|
|
2986
3037
|
size: l.size,
|
|
2987
3038
|
disabled: l.disabled,
|
|
2988
3039
|
handleSelect: i,
|
|
2989
3040
|
isSelected: d
|
|
2990
|
-
}), (u,
|
|
2991
|
-
e.label ? (a(), n("p",
|
|
3041
|
+
}), (u, v) => (a(), n("div", Yl, [
|
|
3042
|
+
e.label ? (a(), n("p", Wl, h(e.label), 1)) : c("", !0),
|
|
2992
3043
|
o("div", {
|
|
2993
3044
|
class: f(["inline-flex border border-slate-200 rounded-xl overflow-hidden divide-x divide-slate-200", r.value])
|
|
2994
3045
|
}, [
|
|
2995
|
-
|
|
3046
|
+
V(u.$slots, "default")
|
|
2996
3047
|
], 2)
|
|
2997
3048
|
]));
|
|
2998
3049
|
}
|
|
2999
|
-
},
|
|
3050
|
+
}, Jl = {
|
|
3000
3051
|
key: 0,
|
|
3001
3052
|
class: "block text-sm font-medium text-slate-700 mb-1"
|
|
3002
|
-
},
|
|
3053
|
+
}, Ql = { class: "relative" }, ea = ["placeholder", "disabled", "onKeydown"], ta = {
|
|
3003
3054
|
key: 1,
|
|
3004
3055
|
class: "absolute z-20 mt-2 w-full bg-white border border-slate-200 rounded-xl shadow-lg py-2 max-h-48 overflow-y-auto"
|
|
3005
|
-
},
|
|
3056
|
+
}, la = ["onClick", "onMouseenter"], aa = { class: "flex items-center gap-2" }, na = {
|
|
3006
3057
|
key: 0,
|
|
3007
3058
|
class: "w-4 h-4 text-slate-900",
|
|
3008
3059
|
fill: "none",
|
|
3009
3060
|
stroke: "currentColor",
|
|
3010
3061
|
viewBox: "0 0 24 24"
|
|
3011
|
-
},
|
|
3062
|
+
}, sa = {
|
|
3012
3063
|
key: 0,
|
|
3013
3064
|
class: "px-4 py-2 text-sm text-slate-500"
|
|
3014
|
-
},
|
|
3065
|
+
}, oa = { key: 0 }, ra = { key: 1 }, ia = {
|
|
3015
3066
|
key: 2,
|
|
3016
3067
|
class: "mt-1 text-xs text-slate-500"
|
|
3017
|
-
},
|
|
3068
|
+
}, yo = {
|
|
3018
3069
|
__name: "DXComboBox",
|
|
3019
3070
|
props: {
|
|
3020
3071
|
modelValue: [String, Number],
|
|
@@ -3028,45 +3079,45 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3028
3079
|
},
|
|
3029
3080
|
emits: ["update:modelValue"],
|
|
3030
3081
|
setup(e, { emit: t }) {
|
|
3031
|
-
const l = e, s = t, r =
|
|
3082
|
+
const l = e, s = t, r = B(null), i = B(null), d = B(""), u = B(!1), v = B(0), b = p(() => l.options.find((x) => x.value === l.modelValue)), m = p(() => {
|
|
3032
3083
|
if (!l.filterable || !d.value)
|
|
3033
3084
|
return l.options;
|
|
3034
|
-
const
|
|
3035
|
-
return l.options.filter((k) => k.label.toLowerCase().includes(
|
|
3036
|
-
}),
|
|
3037
|
-
if (u.value = !0,
|
|
3085
|
+
const x = d.value.toLowerCase();
|
|
3086
|
+
return l.options.filter((k) => k.label.toLowerCase().includes(x));
|
|
3087
|
+
}), g = () => {
|
|
3088
|
+
if (u.value = !0, v.value = 0, !l.filterable) return;
|
|
3038
3089
|
!l.options.find((k) => k.label === d.value) && !l.allowCustom && s("update:modelValue", null);
|
|
3039
|
-
},
|
|
3040
|
-
u.value = !0,
|
|
3041
|
-
},
|
|
3042
|
-
d.value =
|
|
3043
|
-
},
|
|
3090
|
+
}, w = () => {
|
|
3091
|
+
u.value = !0, v.value = 0;
|
|
3092
|
+
}, y = (x) => {
|
|
3093
|
+
d.value = x.label, s("update:modelValue", x.value), u.value = !1;
|
|
3094
|
+
}, S = () => {
|
|
3044
3095
|
if (!u.value) {
|
|
3045
3096
|
u.value = !0;
|
|
3046
3097
|
return;
|
|
3047
3098
|
}
|
|
3048
|
-
|
|
3049
|
-
},
|
|
3050
|
-
|
|
3051
|
-
},
|
|
3099
|
+
v.value < m.value.length - 1 && v.value++;
|
|
3100
|
+
}, Z = () => {
|
|
3101
|
+
v.value > 0 && v.value--;
|
|
3102
|
+
}, z = () => {
|
|
3052
3103
|
if (u.value && m.value.length > 0) {
|
|
3053
|
-
const
|
|
3054
|
-
|
|
3104
|
+
const x = m.value[v.value];
|
|
3105
|
+
x && y(x);
|
|
3055
3106
|
} else l.allowCustom && d.value && (s("update:modelValue", d.value), u.value = !1);
|
|
3056
|
-
},
|
|
3057
|
-
r.value && !r.value.contains(
|
|
3107
|
+
}, C = (x) => {
|
|
3108
|
+
r.value && !r.value.contains(x.target) && (u.value = !1, !l.allowCustom && b.value && (d.value = b.value.label));
|
|
3058
3109
|
};
|
|
3059
|
-
return
|
|
3060
|
-
const k = l.options.find((I) => I.value ===
|
|
3061
|
-
d.value = k ? k.label : l.allowCustom ? String(
|
|
3062
|
-
}, { immediate: !0 }), U(() => document.addEventListener("click",
|
|
3110
|
+
return F(() => l.modelValue, (x) => {
|
|
3111
|
+
const k = l.options.find((I) => I.value === x);
|
|
3112
|
+
d.value = k ? k.label : l.allowCustom ? String(x || "") : "";
|
|
3113
|
+
}, { immediate: !0 }), U(() => document.addEventListener("click", C)), te(() => document.removeEventListener("click", C)), (x, k) => (a(), n("div", {
|
|
3063
3114
|
class: "relative",
|
|
3064
3115
|
ref_key: "root",
|
|
3065
3116
|
ref: r,
|
|
3066
3117
|
"data-component": "DXComboBox"
|
|
3067
3118
|
}, [
|
|
3068
|
-
e.label ? (a(), n("label",
|
|
3069
|
-
o("div",
|
|
3119
|
+
e.label ? (a(), n("label", Jl, h(e.label), 1)) : c("", !0),
|
|
3120
|
+
o("div", Ql, [
|
|
3070
3121
|
q(o("input", {
|
|
3071
3122
|
ref_key: "inputRef",
|
|
3072
3123
|
ref: i,
|
|
@@ -3075,16 +3126,16 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3075
3126
|
placeholder: e.placeholder,
|
|
3076
3127
|
disabled: e.disabled,
|
|
3077
3128
|
class: f(["w-full pr-10 rounded-xl border border-slate-200 bg-white px-4 py-3 text-sm text-slate-900 placeholder:text-slate-400 hover:border-slate-300 focus:border-slate-300 focus:outline-none transition-colors", e.disabled && "opacity-60 cursor-not-allowed bg-slate-50"]),
|
|
3078
|
-
onInput:
|
|
3079
|
-
onFocus:
|
|
3129
|
+
onInput: g,
|
|
3130
|
+
onFocus: w,
|
|
3080
3131
|
onKeydown: [
|
|
3081
|
-
|
|
3082
|
-
|
|
3083
|
-
|
|
3084
|
-
k[1] || (k[1] =
|
|
3132
|
+
E(P(S, ["prevent"]), ["down"]),
|
|
3133
|
+
E(P(Z, ["prevent"]), ["up"]),
|
|
3134
|
+
E(P(z, ["prevent"]), ["enter"]),
|
|
3135
|
+
k[1] || (k[1] = E((I) => u.value = !1, ["escape"]))
|
|
3085
3136
|
]
|
|
3086
|
-
}, null, 42,
|
|
3087
|
-
[
|
|
3137
|
+
}, null, 42, ea), [
|
|
3138
|
+
[K, d.value]
|
|
3088
3139
|
]),
|
|
3089
3140
|
(a(), n("svg", {
|
|
3090
3141
|
class: f(["absolute right-3 top-1/2 -translate-y-1/2 w-4 h-4 text-slate-400 pointer-events-none transition-transform", { "rotate-180": u.value }]),
|
|
@@ -3100,22 +3151,22 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3100
3151
|
}, null, -1)
|
|
3101
3152
|
])], 2))
|
|
3102
3153
|
]),
|
|
3103
|
-
u.value && (m.value.length > 0 || e.allowCustom && d.value) ? (a(), n("div",
|
|
3104
|
-
(a(!0), n(M, null,
|
|
3154
|
+
u.value && (m.value.length > 0 || e.allowCustom && d.value) ? (a(), n("div", ta, [
|
|
3155
|
+
(a(!0), n(M, null, L(m.value, (I, X) => (a(), n("button", {
|
|
3105
3156
|
key: I.value,
|
|
3106
3157
|
type: "button",
|
|
3107
|
-
class: f(["w-full text-left px-4 py-2 text-sm hover:bg-slate-50 flex items-center justify-between", { "bg-slate-100":
|
|
3108
|
-
onClick: (
|
|
3109
|
-
onMouseenter: (
|
|
3158
|
+
class: f(["w-full text-left px-4 py-2 text-sm hover:bg-slate-50 flex items-center justify-between", { "bg-slate-100": X === v.value }]),
|
|
3159
|
+
onClick: (R) => y(I),
|
|
3160
|
+
onMouseenter: (R) => v.value = X
|
|
3110
3161
|
}, [
|
|
3111
|
-
o("span",
|
|
3112
|
-
I.icon ? (a(),
|
|
3162
|
+
o("span", aa, [
|
|
3163
|
+
I.icon ? (a(), $(O(I.icon), {
|
|
3113
3164
|
key: 0,
|
|
3114
3165
|
class: "w-4 h-4 text-slate-500"
|
|
3115
3166
|
})) : c("", !0),
|
|
3116
|
-
j(" " +
|
|
3167
|
+
j(" " + h(I.label), 1)
|
|
3117
3168
|
]),
|
|
3118
|
-
e.modelValue === I.value ? (a(), n("svg",
|
|
3169
|
+
e.modelValue === I.value ? (a(), n("svg", na, [...k[3] || (k[3] = [
|
|
3119
3170
|
o("path", {
|
|
3120
3171
|
"stroke-linecap": "round",
|
|
3121
3172
|
"stroke-linejoin": "round",
|
|
@@ -3123,21 +3174,21 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3123
3174
|
d: "M5 13l4 4L19 7"
|
|
3124
3175
|
}, null, -1)
|
|
3125
3176
|
])])) : c("", !0)
|
|
3126
|
-
], 42,
|
|
3127
|
-
m.value.length === 0 && d.value ? (a(), n("div",
|
|
3128
|
-
e.allowCustom ? (a(), n("span",
|
|
3177
|
+
], 42, la))), 128)),
|
|
3178
|
+
m.value.length === 0 && d.value ? (a(), n("div", sa, [
|
|
3179
|
+
e.allowCustom ? (a(), n("span", oa, 'Нажмите Enter для "' + h(d.value) + '"', 1)) : (a(), n("span", ra, "Не найдено"))
|
|
3129
3180
|
])) : c("", !0)
|
|
3130
3181
|
])) : c("", !0),
|
|
3131
|
-
e.helper ? (a(), n("p",
|
|
3182
|
+
e.helper ? (a(), n("p", ia, h(e.helper), 1)) : c("", !0)
|
|
3132
3183
|
], 512));
|
|
3133
3184
|
}
|
|
3134
|
-
},
|
|
3185
|
+
}, da = {
|
|
3135
3186
|
class: "space-y-1",
|
|
3136
3187
|
"data-component": "DXCopyField"
|
|
3137
|
-
},
|
|
3188
|
+
}, ua = {
|
|
3138
3189
|
key: 0,
|
|
3139
3190
|
class: "text-[11px] uppercase tracking-wide text-slate-500 font-semibold"
|
|
3140
|
-
},
|
|
3191
|
+
}, ca = { class: "flex items-center justify-between gap-2 rounded-lg border border-slate-200 bg-white px-3 py-3" }, ma = { class: "text-base font-semibold text-slate-900 break-all flex-1 text-center" }, fa = ["aria-label"], wo = {
|
|
3141
3192
|
__name: "DXCopyField",
|
|
3142
3193
|
props: {
|
|
3143
3194
|
/** Лейбл */
|
|
@@ -3145,9 +3196,9 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3145
3196
|
/** Значение для копирования */
|
|
3146
3197
|
value: { type: String, default: "" },
|
|
3147
3198
|
/** Иконка для копирования */
|
|
3148
|
-
copyIcon: { type: Object, default: () =>
|
|
3199
|
+
copyIcon: { type: Object, default: () => at },
|
|
3149
3200
|
/** Иконка успешного копирования */
|
|
3150
|
-
successIcon: { type: Object, default: () =>
|
|
3201
|
+
successIcon: { type: Object, default: () => lt },
|
|
3151
3202
|
/** Анимация иконки копирования: none | wiggle | scale | rotate */
|
|
3152
3203
|
copyIconAnimation: { type: String, default: "scale" },
|
|
3153
3204
|
/** Анимация иконки успеха: none | wiggle | scale | rotate */
|
|
@@ -3157,7 +3208,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3157
3208
|
},
|
|
3158
3209
|
emits: ["copied"],
|
|
3159
3210
|
setup(e, { emit: t }) {
|
|
3160
|
-
const l = e, s = t, r =
|
|
3211
|
+
const l = e, s = t, r = B(!1), i = async () => {
|
|
3161
3212
|
if (l.value)
|
|
3162
3213
|
try {
|
|
3163
3214
|
await navigator.clipboard.writeText(l.value), r.value = !0, s("copied", l.value), setTimeout(() => {
|
|
@@ -3167,45 +3218,45 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3167
3218
|
console.error("Не удалось скопировать", d);
|
|
3168
3219
|
}
|
|
3169
3220
|
};
|
|
3170
|
-
return (d, u) => (a(), n("div",
|
|
3171
|
-
e.label ? (a(), n("p",
|
|
3172
|
-
o("div",
|
|
3173
|
-
o("p",
|
|
3221
|
+
return (d, u) => (a(), n("div", da, [
|
|
3222
|
+
e.label ? (a(), n("p", ua, h(e.label), 1)) : c("", !0),
|
|
3223
|
+
o("div", ca, [
|
|
3224
|
+
o("p", ma, h(e.value || "—"), 1),
|
|
3174
3225
|
o("button", {
|
|
3175
3226
|
type: "button",
|
|
3176
3227
|
class: f(["h-9 w-9 inline-flex items-center justify-center rounded-xl border border-slate-200 text-slate-700 hover:border-slate-300 bg-white transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-slate-400 focus:ring-offset-2", { "border-emerald-300 bg-emerald-50": r.value }]),
|
|
3177
3228
|
"aria-label": `Скопировать ${e.label || "значение"}`,
|
|
3178
3229
|
onClick: i
|
|
3179
3230
|
}, [
|
|
3180
|
-
r.value ? (a(),
|
|
3231
|
+
r.value ? (a(), $(D, {
|
|
3181
3232
|
key: 0,
|
|
3182
|
-
icon:
|
|
3233
|
+
icon: _(Je),
|
|
3183
3234
|
size: "sm",
|
|
3184
3235
|
animation: e.copiedIconAnimation,
|
|
3185
3236
|
class: "text-emerald-600"
|
|
3186
|
-
}, null, 8, ["icon", "animation"])) : (a(),
|
|
3237
|
+
}, null, 8, ["icon", "animation"])) : (a(), $(D, {
|
|
3187
3238
|
key: 1,
|
|
3188
3239
|
icon: e.copyIcon,
|
|
3189
3240
|
size: "sm",
|
|
3190
3241
|
animation: e.copyIconAnimation
|
|
3191
3242
|
}, null, 8, ["icon", "animation"]))
|
|
3192
|
-
], 10,
|
|
3243
|
+
], 10, fa)
|
|
3193
3244
|
])
|
|
3194
3245
|
]));
|
|
3195
3246
|
}
|
|
3196
|
-
},
|
|
3247
|
+
}, pa = {
|
|
3197
3248
|
class: "w-full",
|
|
3198
3249
|
"data-component": "DXDatePicker"
|
|
3199
|
-
},
|
|
3250
|
+
}, va = {
|
|
3200
3251
|
key: 0,
|
|
3201
3252
|
class: "block text-sm text-slate-600 mb-1 font-medium"
|
|
3202
|
-
},
|
|
3253
|
+
}, ha = { class: "relative" }, ba = ["type", "value", "placeholder", "disabled", "readonly"], ga = {
|
|
3203
3254
|
key: 1,
|
|
3204
3255
|
class: "absolute z-20 mt-2 p-4 bg-white border border-slate-200 rounded-xl shadow-lg"
|
|
3205
|
-
},
|
|
3256
|
+
}, xa = { class: "space-y-3" }, ya = { class: "flex gap-2" }, wa = {
|
|
3206
3257
|
key: 2,
|
|
3207
3258
|
class: "mt-1 text-xs text-slate-500"
|
|
3208
|
-
},
|
|
3259
|
+
}, ko = {
|
|
3209
3260
|
__name: "DXDatePicker",
|
|
3210
3261
|
props: {
|
|
3211
3262
|
/** Значение (v-model) - строка или { start, end } для range */
|
|
@@ -3223,20 +3274,20 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3223
3274
|
},
|
|
3224
3275
|
emits: ["update:modelValue"],
|
|
3225
3276
|
setup(e, { emit: t }) {
|
|
3226
|
-
const l = e, s = t, r =
|
|
3277
|
+
const l = e, s = t, r = B(!1), i = B(""), d = B(""), u = p(() => {
|
|
3227
3278
|
if (l.range && typeof l.modelValue == "object" && l.modelValue) {
|
|
3228
|
-
const { start:
|
|
3229
|
-
return
|
|
3279
|
+
const { start: w, end: y } = l.modelValue;
|
|
3280
|
+
return w && y ? `${v(w)} - ${v(y)}` : "";
|
|
3230
3281
|
}
|
|
3231
3282
|
return l.modelValue || "";
|
|
3232
|
-
}),
|
|
3283
|
+
}), v = (w) => w ? new Date(w).toLocaleDateString("ru-RU") : "", b = (w) => s("update:modelValue", w), m = () => {
|
|
3233
3284
|
l.disabled || (r.value = !r.value, r.value && typeof l.modelValue == "object" && l.modelValue && (i.value = l.modelValue.start || "", d.value = l.modelValue.end || ""));
|
|
3234
|
-
},
|
|
3285
|
+
}, g = () => {
|
|
3235
3286
|
i.value && d.value && s("update:modelValue", { start: i.value, end: d.value }), r.value = !1;
|
|
3236
3287
|
};
|
|
3237
|
-
return (
|
|
3238
|
-
e.label ? (a(), n("label",
|
|
3239
|
-
o("div",
|
|
3288
|
+
return (w, y) => (a(), n("div", pa, [
|
|
3289
|
+
e.label ? (a(), n("label", va, h(e.label), 1)) : c("", !0),
|
|
3290
|
+
o("div", ha, [
|
|
3240
3291
|
o("input", {
|
|
3241
3292
|
type: e.range ? "text" : "date",
|
|
3242
3293
|
value: u.value,
|
|
@@ -3244,10 +3295,10 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3244
3295
|
disabled: e.disabled,
|
|
3245
3296
|
class: "w-full h-10 px-4 py-2.5 text-sm rounded-xl border border-slate-200 bg-white text-slate-700 transition-colors hover:border-slate-300 focus:outline-none focus:ring-2 focus:ring-slate-900/10 focus:border-slate-300 disabled:opacity-60 disabled:cursor-not-allowed disabled:bg-slate-50",
|
|
3246
3297
|
readonly: e.range,
|
|
3247
|
-
onChange:
|
|
3248
|
-
onClick:
|
|
3249
|
-
}, null, 40,
|
|
3250
|
-
|
|
3298
|
+
onChange: y[0] || (y[0] = (S) => !e.range && b(S.target.value)),
|
|
3299
|
+
onClick: y[1] || (y[1] = (S) => e.range && m())
|
|
3300
|
+
}, null, 40, ba),
|
|
3301
|
+
y[5] || (y[5] = o("svg", {
|
|
3251
3302
|
class: "absolute right-3 top-1/2 -translate-y-1/2 w-4 h-4 text-slate-400 pointer-events-none",
|
|
3252
3303
|
fill: "none",
|
|
3253
3304
|
stroke: "currentColor",
|
|
@@ -3261,67 +3312,67 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3261
3312
|
})
|
|
3262
3313
|
], -1))
|
|
3263
3314
|
]),
|
|
3264
|
-
e.range && r.value ? (a(), n("div",
|
|
3265
|
-
o("div",
|
|
3315
|
+
e.range && r.value ? (a(), n("div", ga, [
|
|
3316
|
+
o("div", xa, [
|
|
3266
3317
|
o("div", null, [
|
|
3267
|
-
|
|
3318
|
+
y[6] || (y[6] = o("label", { class: "text-xs text-slate-600" }, "От", -1)),
|
|
3268
3319
|
q(o("input", {
|
|
3269
3320
|
type: "date",
|
|
3270
|
-
"onUpdate:modelValue":
|
|
3321
|
+
"onUpdate:modelValue": y[2] || (y[2] = (S) => i.value = S),
|
|
3271
3322
|
class: "w-full mt-1 px-3 py-2 text-sm border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-slate-900/10"
|
|
3272
3323
|
}, null, 512), [
|
|
3273
|
-
[
|
|
3324
|
+
[K, i.value]
|
|
3274
3325
|
])
|
|
3275
3326
|
]),
|
|
3276
3327
|
o("div", null, [
|
|
3277
|
-
|
|
3328
|
+
y[7] || (y[7] = o("label", { class: "text-xs text-slate-600" }, "До", -1)),
|
|
3278
3329
|
q(o("input", {
|
|
3279
3330
|
type: "date",
|
|
3280
|
-
"onUpdate:modelValue":
|
|
3331
|
+
"onUpdate:modelValue": y[3] || (y[3] = (S) => d.value = S),
|
|
3281
3332
|
class: "w-full mt-1 px-3 py-2 text-sm border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-slate-900/10"
|
|
3282
3333
|
}, null, 512), [
|
|
3283
|
-
[
|
|
3334
|
+
[K, d.value]
|
|
3284
3335
|
])
|
|
3285
3336
|
]),
|
|
3286
|
-
o("div",
|
|
3337
|
+
o("div", ya, [
|
|
3287
3338
|
o("button", {
|
|
3288
3339
|
type: "button",
|
|
3289
3340
|
class: "flex-1 px-3 py-2 text-sm bg-slate-900 text-white rounded-lg hover:bg-slate-800",
|
|
3290
|
-
onClick:
|
|
3341
|
+
onClick: g
|
|
3291
3342
|
}, " Применить "),
|
|
3292
3343
|
o("button", {
|
|
3293
3344
|
type: "button",
|
|
3294
3345
|
class: "px-3 py-2 text-sm border border-slate-200 rounded-lg hover:bg-slate-50",
|
|
3295
|
-
onClick:
|
|
3346
|
+
onClick: y[4] || (y[4] = (S) => r.value = !1)
|
|
3296
3347
|
}, " Отмена ")
|
|
3297
3348
|
])
|
|
3298
3349
|
])
|
|
3299
3350
|
])) : c("", !0),
|
|
3300
|
-
e.helper ? (a(), n("p",
|
|
3351
|
+
e.helper ? (a(), n("p", wa, h(e.helper), 1)) : c("", !0)
|
|
3301
3352
|
]));
|
|
3302
3353
|
}
|
|
3303
|
-
},
|
|
3354
|
+
}, ka = {
|
|
3304
3355
|
class: "w-full",
|
|
3305
3356
|
"data-component": "DXFileUpload"
|
|
3306
|
-
},
|
|
3357
|
+
}, $a = {
|
|
3307
3358
|
key: 0,
|
|
3308
3359
|
class: "block text-sm font-medium text-slate-700 mb-1"
|
|
3309
|
-
},
|
|
3360
|
+
}, Ca = ["accept", "multiple", "disabled"], Sa = {
|
|
3310
3361
|
key: 0,
|
|
3311
3362
|
class: "text-center"
|
|
3312
|
-
},
|
|
3363
|
+
}, Va = { class: "text-sm font-medium text-slate-700 mb-1" }, Da = ["disabled"], za = { class: "text-xs text-slate-500" }, Ba = {
|
|
3313
3364
|
key: 1,
|
|
3314
3365
|
class: "space-y-2"
|
|
3315
|
-
},
|
|
3366
|
+
}, Xa = {
|
|
3316
3367
|
key: 0,
|
|
3317
3368
|
class: "w-12 h-12 flex-shrink-0 rounded overflow-hidden bg-slate-200"
|
|
3318
|
-
},
|
|
3369
|
+
}, Ia = ["src", "alt"], Aa = { class: "flex-1 min-w-0" }, ja = { class: "text-sm font-medium text-slate-900 truncate" }, Ma = { class: "text-xs text-slate-500" }, La = ["onClick"], _a = ["disabled"], Oa = {
|
|
3319
3370
|
key: 1,
|
|
3320
3371
|
class: "mt-1 text-xs text-slate-500"
|
|
3321
|
-
},
|
|
3372
|
+
}, Za = {
|
|
3322
3373
|
key: 2,
|
|
3323
3374
|
class: "mt-1 text-xs text-rose-500"
|
|
3324
|
-
},
|
|
3375
|
+
}, $o = {
|
|
3325
3376
|
__name: "DXFileUpload",
|
|
3326
3377
|
props: {
|
|
3327
3378
|
modelValue: [File, FileList, Array],
|
|
@@ -3334,40 +3385,40 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3334
3385
|
},
|
|
3335
3386
|
emits: ["update:modelValue", "upload"],
|
|
3336
3387
|
setup(e, { emit: t }) {
|
|
3337
|
-
const l = e, s = t, r =
|
|
3338
|
-
const
|
|
3339
|
-
|
|
3340
|
-
}, m = (
|
|
3341
|
-
var
|
|
3388
|
+
const l = e, s = t, r = B(null), i = B(null), d = B(!1), u = B([]), v = B(""), b = (z) => {
|
|
3389
|
+
const C = Array.from(z.target.files || []);
|
|
3390
|
+
y(C);
|
|
3391
|
+
}, m = (z) => {
|
|
3392
|
+
var x;
|
|
3342
3393
|
if (d.value = !1, l.disabled) return;
|
|
3343
|
-
const
|
|
3344
|
-
|
|
3345
|
-
},
|
|
3394
|
+
const C = Array.from(((x = z.dataTransfer) == null ? void 0 : x.files) || []);
|
|
3395
|
+
y(C);
|
|
3396
|
+
}, g = () => {
|
|
3346
3397
|
l.disabled || (d.value = !0);
|
|
3347
|
-
},
|
|
3348
|
-
|
|
3349
|
-
},
|
|
3350
|
-
|
|
3351
|
-
const
|
|
3352
|
-
if (
|
|
3353
|
-
const k = URL.createObjectURL(
|
|
3354
|
-
return Object.assign(
|
|
3398
|
+
}, w = (z) => {
|
|
3399
|
+
z.target === i.value && (d.value = !1);
|
|
3400
|
+
}, y = (z) => {
|
|
3401
|
+
v.value = "";
|
|
3402
|
+
const C = z.map((x) => {
|
|
3403
|
+
if (x.type.startsWith("image/")) {
|
|
3404
|
+
const k = URL.createObjectURL(x);
|
|
3405
|
+
return Object.assign(x, { preview: k });
|
|
3355
3406
|
}
|
|
3356
|
-
return
|
|
3407
|
+
return x;
|
|
3357
3408
|
});
|
|
3358
|
-
l.multiple ? u.value = [...u.value, ...
|
|
3359
|
-
},
|
|
3360
|
-
const
|
|
3361
|
-
|
|
3362
|
-
},
|
|
3363
|
-
if (
|
|
3364
|
-
const
|
|
3365
|
-
return Math.round(
|
|
3409
|
+
l.multiple ? u.value = [...u.value, ...C] : u.value = C.slice(0, 1), s("update:modelValue", l.multiple ? u.value : u.value[0]);
|
|
3410
|
+
}, S = (z) => {
|
|
3411
|
+
const C = u.value[z];
|
|
3412
|
+
C.preview && URL.revokeObjectURL(C.preview), u.value.splice(z, 1), s("update:modelValue", l.multiple ? u.value : u.value[0] || null);
|
|
3413
|
+
}, Z = (z) => {
|
|
3414
|
+
if (z === 0) return "0 Bytes";
|
|
3415
|
+
const C = 1024, x = ["Bytes", "KB", "MB", "GB"], k = Math.floor(Math.log(z) / Math.log(C));
|
|
3416
|
+
return Math.round(z / Math.pow(C, k) * 100) / 100 + " " + x[k];
|
|
3366
3417
|
};
|
|
3367
|
-
return
|
|
3368
|
-
|
|
3369
|
-
}), (
|
|
3370
|
-
e.label ? (a(), n("label",
|
|
3418
|
+
return F(() => l.modelValue, (z) => {
|
|
3419
|
+
z || (u.value = []);
|
|
3420
|
+
}), (z, C) => (a(), n("div", ka, [
|
|
3421
|
+
e.label ? (a(), n("label", $a, h(e.label), 1)) : c("", !0),
|
|
3371
3422
|
o("div", {
|
|
3372
3423
|
ref_key: "dropZone",
|
|
3373
3424
|
ref: i,
|
|
@@ -3375,11 +3426,11 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3375
3426
|
d.value ? "border-slate-900 bg-slate-50 scale-105" : "border-slate-300 bg-white hover:border-slate-400",
|
|
3376
3427
|
e.disabled && "opacity-60 cursor-not-allowed"
|
|
3377
3428
|
]]),
|
|
3378
|
-
onDragenter:
|
|
3379
|
-
onDragover:
|
|
3429
|
+
onDragenter: P(g, ["prevent"]),
|
|
3430
|
+
onDragover: C[2] || (C[2] = P(() => {
|
|
3380
3431
|
}, ["prevent"])),
|
|
3381
|
-
onDragleave:
|
|
3382
|
-
onDrop:
|
|
3432
|
+
onDragleave: P(w, ["prevent"]),
|
|
3433
|
+
onDrop: P(m, ["prevent"])
|
|
3383
3434
|
}, [
|
|
3384
3435
|
o("input", {
|
|
3385
3436
|
ref_key: "fileInput",
|
|
@@ -3389,44 +3440,44 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3389
3440
|
multiple: e.multiple,
|
|
3390
3441
|
disabled: e.disabled,
|
|
3391
3442
|
class: "hidden",
|
|
3392
|
-
onChange:
|
|
3393
|
-
}, null, 40,
|
|
3394
|
-
u.value.length ? (a(), n("div",
|
|
3395
|
-
(a(!0), n(M, null,
|
|
3443
|
+
onChange: b
|
|
3444
|
+
}, null, 40, Ca),
|
|
3445
|
+
u.value.length ? (a(), n("div", Ba, [
|
|
3446
|
+
(a(!0), n(M, null, L(u.value, (x, k) => {
|
|
3396
3447
|
var I;
|
|
3397
3448
|
return a(), n("div", {
|
|
3398
3449
|
key: k,
|
|
3399
3450
|
class: "flex items-center gap-3 p-3 bg-slate-50 rounded-lg"
|
|
3400
3451
|
}, [
|
|
3401
|
-
(I =
|
|
3452
|
+
(I = x.type) != null && I.startsWith("image/") ? (a(), n("div", Xa, [
|
|
3402
3453
|
o("img", {
|
|
3403
|
-
src:
|
|
3404
|
-
alt:
|
|
3454
|
+
src: x.preview,
|
|
3455
|
+
alt: x.name,
|
|
3405
3456
|
class: "w-full h-full object-cover"
|
|
3406
|
-
}, null, 8,
|
|
3407
|
-
])) : (a(),
|
|
3457
|
+
}, null, 8, Ia)
|
|
3458
|
+
])) : (a(), $(D, {
|
|
3408
3459
|
key: 1,
|
|
3409
|
-
icon:
|
|
3460
|
+
icon: _(st),
|
|
3410
3461
|
size: "lg",
|
|
3411
3462
|
animation: "none",
|
|
3412
3463
|
class: "text-slate-400 flex-shrink-0"
|
|
3413
3464
|
}, null, 8, ["icon"])),
|
|
3414
|
-
o("div",
|
|
3415
|
-
o("p",
|
|
3416
|
-
o("p",
|
|
3465
|
+
o("div", Aa, [
|
|
3466
|
+
o("p", ja, h(x.name), 1),
|
|
3467
|
+
o("p", Ma, h(Z(x.size)), 1)
|
|
3417
3468
|
]),
|
|
3418
3469
|
o("button", {
|
|
3419
3470
|
type: "button",
|
|
3420
3471
|
class: "text-slate-400 hover:text-slate-600 transition-colors",
|
|
3421
|
-
onClick: (
|
|
3472
|
+
onClick: (X) => S(k),
|
|
3422
3473
|
"aria-label": "Удалить файл"
|
|
3423
3474
|
}, [
|
|
3424
|
-
A(
|
|
3425
|
-
icon:
|
|
3475
|
+
A(D, {
|
|
3476
|
+
icon: _(pe),
|
|
3426
3477
|
size: "md",
|
|
3427
3478
|
animation: "scale"
|
|
3428
3479
|
}, null, 8, ["icon"])
|
|
3429
|
-
], 8,
|
|
3480
|
+
], 8, La)
|
|
3430
3481
|
]);
|
|
3431
3482
|
}), 128)),
|
|
3432
3483
|
e.multiple ? (a(), n("button", {
|
|
@@ -3434,49 +3485,49 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3434
3485
|
type: "button",
|
|
3435
3486
|
class: "w-full py-2 text-sm text-slate-600 hover:text-slate-900 border border-slate-200 rounded-lg hover:bg-slate-50",
|
|
3436
3487
|
disabled: e.disabled,
|
|
3437
|
-
onClick:
|
|
3488
|
+
onClick: C[1] || (C[1] = (x) => {
|
|
3438
3489
|
var k;
|
|
3439
3490
|
return (k = r.value) == null ? void 0 : k.click();
|
|
3440
3491
|
})
|
|
3441
3492
|
}, [
|
|
3442
|
-
A(
|
|
3443
|
-
icon:
|
|
3493
|
+
A(D, {
|
|
3494
|
+
icon: _(mt),
|
|
3444
3495
|
size: "sm",
|
|
3445
3496
|
animation: "none",
|
|
3446
3497
|
class: "inline mr-1"
|
|
3447
3498
|
}, null, 8, ["icon"]),
|
|
3448
|
-
|
|
3449
|
-
], 8,
|
|
3450
|
-
])) : (a(), n("div",
|
|
3451
|
-
A(
|
|
3452
|
-
icon:
|
|
3499
|
+
C[4] || (C[4] = j(" Добавить ещё ", -1))
|
|
3500
|
+
], 8, _a)) : c("", !0)
|
|
3501
|
+
])) : (a(), n("div", Sa, [
|
|
3502
|
+
A(D, {
|
|
3503
|
+
icon: _(nt),
|
|
3453
3504
|
size: "xl",
|
|
3454
3505
|
animation: "none",
|
|
3455
3506
|
class: "mx-auto text-slate-400 mb-3 w-12 h-12"
|
|
3456
3507
|
}, null, 8, ["icon"]),
|
|
3457
|
-
o("p",
|
|
3458
|
-
|
|
3508
|
+
o("p", Va, [
|
|
3509
|
+
C[3] || (C[3] = j(" Перетащите файлы сюда или ", -1)),
|
|
3459
3510
|
o("button", {
|
|
3460
3511
|
type: "button",
|
|
3461
3512
|
class: "text-slate-900 underline hover:no-underline",
|
|
3462
3513
|
disabled: e.disabled,
|
|
3463
|
-
onClick:
|
|
3514
|
+
onClick: C[0] || (C[0] = (x) => {
|
|
3464
3515
|
var k;
|
|
3465
3516
|
return (k = r.value) == null ? void 0 : k.click();
|
|
3466
3517
|
})
|
|
3467
|
-
}, " выберите ", 8,
|
|
3518
|
+
}, " выберите ", 8, Da)
|
|
3468
3519
|
]),
|
|
3469
|
-
o("p",
|
|
3520
|
+
o("p", za, h(e.accept || "Любые файлы") + " " + h(e.maxSize ? `• Макс. ${e.maxSize}` : ""), 1)
|
|
3470
3521
|
]))
|
|
3471
3522
|
], 34),
|
|
3472
|
-
e.helper ? (a(), n("p",
|
|
3473
|
-
|
|
3523
|
+
e.helper ? (a(), n("p", Oa, h(e.helper), 1)) : c("", !0),
|
|
3524
|
+
v.value ? (a(), n("p", Za, h(v.value), 1)) : c("", !0)
|
|
3474
3525
|
]));
|
|
3475
3526
|
}
|
|
3476
|
-
},
|
|
3527
|
+
}, Ta = {
|
|
3477
3528
|
class: "space-y-2",
|
|
3478
3529
|
"data-component": "DXFilterGroup"
|
|
3479
|
-
},
|
|
3530
|
+
}, Na = { class: "text-xs font-semibold text-slate-500 uppercase tracking-wide" }, Pa = { class: "flex flex-wrap gap-2" }, Ra = ["onClick"], Co = {
|
|
3480
3531
|
__name: "DXFilterGroup",
|
|
3481
3532
|
props: {
|
|
3482
3533
|
/** Лейбл группы */
|
|
@@ -3490,15 +3541,15 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3490
3541
|
},
|
|
3491
3542
|
emits: ["update:modelValue"],
|
|
3492
3543
|
setup(e) {
|
|
3493
|
-
return (t, l) => (a(), n("div",
|
|
3494
|
-
o("p",
|
|
3495
|
-
o("div",
|
|
3496
|
-
(a(!0), n(M, null,
|
|
3544
|
+
return (t, l) => (a(), n("div", Ta, [
|
|
3545
|
+
o("p", Na, h(e.label), 1),
|
|
3546
|
+
o("div", Pa, [
|
|
3547
|
+
(a(!0), n(M, null, L(e.options, (s) => (a(), n("button", {
|
|
3497
3548
|
key: s.value,
|
|
3498
3549
|
type: "button",
|
|
3499
3550
|
class: f(["px-3 py-2 rounded-full text-xs font-semibold border transition", e.modelValue === s.value ? "bg-slate-800 text-white border-slate-800" : "border-slate-200 text-slate-700 hover:border-slate-300 bg-white"]),
|
|
3500
3551
|
onClick: (r) => t.$emit("update:modelValue", s.value)
|
|
3501
|
-
},
|
|
3552
|
+
}, h(s.label), 11, Ra))), 128)),
|
|
3502
3553
|
e.modelValue && e.clearable ? (a(), n("button", {
|
|
3503
3554
|
key: 0,
|
|
3504
3555
|
type: "button",
|
|
@@ -3508,31 +3559,31 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3508
3559
|
])
|
|
3509
3560
|
]));
|
|
3510
3561
|
}
|
|
3511
|
-
},
|
|
3562
|
+
}, qa = {
|
|
3512
3563
|
class: "w-full",
|
|
3513
3564
|
"data-component": "DXFormControl"
|
|
3514
|
-
},
|
|
3565
|
+
}, Ha = { class: "flex items-center justify-between mb-1" }, Fa = {
|
|
3515
3566
|
key: 0,
|
|
3516
3567
|
class: "text-sm font-medium text-slate-700"
|
|
3517
|
-
},
|
|
3568
|
+
}, Ea = {
|
|
3518
3569
|
key: 0,
|
|
3519
3570
|
class: "text-rose-500"
|
|
3520
|
-
},
|
|
3571
|
+
}, Ga = {
|
|
3521
3572
|
key: 1,
|
|
3522
3573
|
class: "text-xs text-slate-500"
|
|
3523
|
-
},
|
|
3574
|
+
}, Ua = { class: "relative" }, Ka = {
|
|
3524
3575
|
key: 0,
|
|
3525
3576
|
class: "absolute left-3 top-1/2 -translate-y-1/2 text-slate-400"
|
|
3526
|
-
},
|
|
3577
|
+
}, Ya = {
|
|
3527
3578
|
key: 1,
|
|
3528
3579
|
class: "absolute right-3 top-1/2 -translate-y-1/2"
|
|
3529
|
-
},
|
|
3580
|
+
}, Wa = {
|
|
3530
3581
|
key: 0,
|
|
3531
3582
|
class: "mt-1 text-xs text-rose-500 flex items-center gap-1"
|
|
3532
|
-
},
|
|
3583
|
+
}, Ja = {
|
|
3533
3584
|
key: 1,
|
|
3534
3585
|
class: "mt-1 text-xs text-slate-500"
|
|
3535
|
-
},
|
|
3586
|
+
}, So = {
|
|
3536
3587
|
__name: "DXFormControl",
|
|
3537
3588
|
props: {
|
|
3538
3589
|
/** Лейбл */
|
|
@@ -3555,56 +3606,56 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3555
3606
|
showCount: { type: Boolean, default: !1 }
|
|
3556
3607
|
},
|
|
3557
3608
|
setup(e) {
|
|
3558
|
-
const t = e, l =
|
|
3559
|
-
return (s, r) => (a(), n("div",
|
|
3560
|
-
o("div",
|
|
3561
|
-
e.label ? (a(), n("label",
|
|
3562
|
-
j(
|
|
3563
|
-
e.required ? (a(), n("span",
|
|
3609
|
+
const t = e, l = p(() => t.validationState === "success" || t.validationState === "error");
|
|
3610
|
+
return (s, r) => (a(), n("div", qa, [
|
|
3611
|
+
o("div", Ha, [
|
|
3612
|
+
e.label ? (a(), n("label", Fa, [
|
|
3613
|
+
j(h(e.label) + " ", 1),
|
|
3614
|
+
e.required ? (a(), n("span", Ea, "*")) : c("", !0)
|
|
3564
3615
|
])) : c("", !0),
|
|
3565
|
-
e.maxLength && e.showCount ? (a(), n("span",
|
|
3616
|
+
e.maxLength && e.showCount ? (a(), n("span", Ga, h(e.currentLength) + " / " + h(e.maxLength), 1)) : c("", !0)
|
|
3566
3617
|
]),
|
|
3567
|
-
o("div",
|
|
3568
|
-
s.$slots.prefix || e.prefixIcon ? (a(), n("div",
|
|
3569
|
-
e.prefixIcon ? (a(),
|
|
3618
|
+
o("div", Ua, [
|
|
3619
|
+
s.$slots.prefix || e.prefixIcon ? (a(), n("div", Ka, [
|
|
3620
|
+
e.prefixIcon ? (a(), $(D, {
|
|
3570
3621
|
key: 0,
|
|
3571
3622
|
icon: e.prefixIcon,
|
|
3572
3623
|
size: "sm",
|
|
3573
3624
|
animation: "none"
|
|
3574
3625
|
}, null, 8, ["icon"])) : c("", !0),
|
|
3575
|
-
|
|
3626
|
+
V(s.$slots, "prefix")
|
|
3576
3627
|
])) : c("", !0),
|
|
3577
3628
|
o("div", {
|
|
3578
3629
|
class: f({ "pl-10": s.$slots.prefix || e.prefixIcon, "pr-10": l.value })
|
|
3579
3630
|
}, [
|
|
3580
|
-
|
|
3631
|
+
V(s.$slots, "default")
|
|
3581
3632
|
], 2),
|
|
3582
|
-
l.value ? (a(), n("div",
|
|
3583
|
-
A(
|
|
3633
|
+
l.value ? (a(), n("div", Ya, [
|
|
3634
|
+
A(de, {
|
|
3584
3635
|
state: e.validationState,
|
|
3585
3636
|
size: "md"
|
|
3586
3637
|
}, null, 8, ["state"])
|
|
3587
3638
|
])) : c("", !0)
|
|
3588
3639
|
]),
|
|
3589
|
-
e.error ? (a(), n("p",
|
|
3590
|
-
A(
|
|
3640
|
+
e.error ? (a(), n("p", Wa, [
|
|
3641
|
+
A(de, {
|
|
3591
3642
|
state: "error",
|
|
3592
3643
|
size: "xs"
|
|
3593
3644
|
}),
|
|
3594
|
-
j(" " +
|
|
3595
|
-
])) : e.helper ? (a(), n("p",
|
|
3645
|
+
j(" " + h(e.error), 1)
|
|
3646
|
+
])) : e.helper ? (a(), n("p", Ja, h(e.helper), 1)) : c("", !0)
|
|
3596
3647
|
]));
|
|
3597
3648
|
}
|
|
3598
|
-
},
|
|
3649
|
+
}, Qa = {
|
|
3599
3650
|
class: "w-full",
|
|
3600
3651
|
"data-component": "DXInputGroup"
|
|
3601
|
-
},
|
|
3652
|
+
}, en = {
|
|
3602
3653
|
key: 0,
|
|
3603
3654
|
class: "block text-sm font-medium text-slate-700 mb-1"
|
|
3604
|
-
},
|
|
3655
|
+
}, tn = { class: "flex" }, ln = {
|
|
3605
3656
|
key: 1,
|
|
3606
3657
|
class: "mt-1 text-xs text-slate-500"
|
|
3607
|
-
},
|
|
3658
|
+
}, Vo = {
|
|
3608
3659
|
__name: "DXInputGroup",
|
|
3609
3660
|
props: {
|
|
3610
3661
|
label: { type: String, default: "" },
|
|
@@ -3612,26 +3663,26 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3612
3663
|
size: { type: String, default: "md" }
|
|
3613
3664
|
},
|
|
3614
3665
|
setup(e) {
|
|
3615
|
-
return
|
|
3666
|
+
return ee("inputGroup", {
|
|
3616
3667
|
size: e.size
|
|
3617
|
-
}), (l, s) => (a(), n("div",
|
|
3618
|
-
e.label ? (a(), n("label",
|
|
3619
|
-
o("div",
|
|
3620
|
-
|
|
3668
|
+
}), (l, s) => (a(), n("div", Qa, [
|
|
3669
|
+
e.label ? (a(), n("label", en, h(e.label), 1)) : c("", !0),
|
|
3670
|
+
o("div", tn, [
|
|
3671
|
+
V(l.$slots, "default")
|
|
3621
3672
|
]),
|
|
3622
|
-
e.helper ? (a(), n("p",
|
|
3673
|
+
e.helper ? (a(), n("p", ln, h(e.helper), 1)) : c("", !0)
|
|
3623
3674
|
]));
|
|
3624
3675
|
}
|
|
3625
|
-
},
|
|
3676
|
+
}, an = {
|
|
3626
3677
|
class: "w-full",
|
|
3627
3678
|
"data-component": "DXInputMask"
|
|
3628
|
-
},
|
|
3679
|
+
}, nn = {
|
|
3629
3680
|
key: 0,
|
|
3630
3681
|
class: "block text-sm text-slate-600 mb-1 font-medium"
|
|
3631
|
-
},
|
|
3682
|
+
}, sn = ["type", "placeholder", "value", "disabled"], on = {
|
|
3632
3683
|
key: 1,
|
|
3633
3684
|
class: "mt-1 text-xs text-slate-500"
|
|
3634
|
-
},
|
|
3685
|
+
}, Do = {
|
|
3635
3686
|
__name: "DXInputMask",
|
|
3636
3687
|
props: {
|
|
3637
3688
|
/** Значение (v-model) - сырое значение без маски */
|
|
@@ -3651,27 +3702,27 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3651
3702
|
},
|
|
3652
3703
|
emits: ["update:modelValue"],
|
|
3653
3704
|
setup(e, { emit: t }) {
|
|
3654
|
-
const l = e, s = t, r =
|
|
3655
|
-
const
|
|
3656
|
-
let
|
|
3657
|
-
for (let
|
|
3658
|
-
l.mask[
|
|
3659
|
-
return
|
|
3660
|
-
}, u = (m) => m.replace(/\D/g, ""),
|
|
3661
|
-
const
|
|
3662
|
-
i.value =
|
|
3705
|
+
const l = e, s = t, r = B(null), i = B(""), d = (m) => {
|
|
3706
|
+
const g = m.replace(/\D/g, "");
|
|
3707
|
+
let w = "", y = 0;
|
|
3708
|
+
for (let S = 0; S < l.mask.length && y < g.length; S++)
|
|
3709
|
+
l.mask[S] === "#" ? (w += g[y], y++) : w += l.mask[S];
|
|
3710
|
+
return w;
|
|
3711
|
+
}, u = (m) => m.replace(/\D/g, ""), v = (m) => {
|
|
3712
|
+
const g = u(m.target.value), w = d(g);
|
|
3713
|
+
i.value = w, s("update:modelValue", g), setTimeout(() => {
|
|
3663
3714
|
if (r.value) {
|
|
3664
|
-
const
|
|
3665
|
-
r.value.setSelectionRange(
|
|
3715
|
+
const y = w.length;
|
|
3716
|
+
r.value.setSelectionRange(y, y);
|
|
3666
3717
|
}
|
|
3667
3718
|
}, 0);
|
|
3668
|
-
},
|
|
3719
|
+
}, b = (m) => {
|
|
3669
3720
|
["Backspace", "Delete", "Tab", "Escape", "Enter", "ArrowLeft", "ArrowRight"].includes(m.key) || /^\d$/.test(m.key) || m.preventDefault();
|
|
3670
3721
|
};
|
|
3671
|
-
return
|
|
3722
|
+
return F(() => l.modelValue, (m) => {
|
|
3672
3723
|
m !== u(i.value) && (i.value = d(m));
|
|
3673
|
-
}, { immediate: !0 }), (m,
|
|
3674
|
-
e.label ? (a(), n("label",
|
|
3724
|
+
}, { immediate: !0 }), (m, g) => (a(), n("div", an, [
|
|
3725
|
+
e.label ? (a(), n("label", nn, h(e.label), 1)) : c("", !0),
|
|
3675
3726
|
o("input", {
|
|
3676
3727
|
ref_key: "inputRef",
|
|
3677
3728
|
ref: r,
|
|
@@ -3680,20 +3731,20 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3680
3731
|
value: i.value,
|
|
3681
3732
|
disabled: e.disabled,
|
|
3682
3733
|
class: "w-full h-10 px-4 py-2.5 text-sm rounded-xl border border-slate-200 bg-white text-slate-700 placeholder:text-slate-400 transition-colors hover:border-slate-300 focus:outline-none focus:ring-2 focus:ring-slate-900/10 focus:border-slate-300 disabled:opacity-60 disabled:cursor-not-allowed disabled:bg-slate-50",
|
|
3683
|
-
onInput:
|
|
3684
|
-
onKeydown:
|
|
3685
|
-
}, null, 40,
|
|
3686
|
-
e.helper ? (a(), n("p",
|
|
3734
|
+
onInput: v,
|
|
3735
|
+
onKeydown: b
|
|
3736
|
+
}, null, 40, sn),
|
|
3737
|
+
e.helper ? (a(), n("p", on, h(e.helper), 1)) : c("", !0)
|
|
3687
3738
|
]));
|
|
3688
3739
|
}
|
|
3689
|
-
},
|
|
3740
|
+
}, rn = {
|
|
3690
3741
|
class: "flex items-center gap-1",
|
|
3691
3742
|
"aria-label": "Pagination",
|
|
3692
3743
|
"data-component": "DXPagination"
|
|
3693
|
-
},
|
|
3744
|
+
}, dn = ["disabled"], un = {
|
|
3694
3745
|
key: 0,
|
|
3695
3746
|
class: "px-2 text-slate-400"
|
|
3696
|
-
},
|
|
3747
|
+
}, cn = ["aria-current", "onClick"], mn = ["disabled"], fn = "bg-slate-900 text-white hover:bg-slate-800", zo = {
|
|
3697
3748
|
__name: "DXPagination",
|
|
3698
3749
|
props: {
|
|
3699
3750
|
/** Текущая страница (v-model) */
|
|
@@ -3707,79 +3758,79 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3707
3758
|
},
|
|
3708
3759
|
emits: ["update:modelValue"],
|
|
3709
3760
|
setup(e, { emit: t }) {
|
|
3710
|
-
const l = e, s = t, r = (
|
|
3711
|
-
|
|
3712
|
-
}, i =
|
|
3713
|
-
const
|
|
3714
|
-
|
|
3715
|
-
const
|
|
3716
|
-
|
|
3717
|
-
for (let
|
|
3718
|
-
|
|
3719
|
-
return
|
|
3761
|
+
const l = e, s = t, r = (b) => {
|
|
3762
|
+
b >= 1 && b <= l.totalPages && s("update:modelValue", b);
|
|
3763
|
+
}, i = p(() => {
|
|
3764
|
+
const b = l.modelValue, m = l.totalPages, g = l.siblingCount, w = [];
|
|
3765
|
+
w.push(1);
|
|
3766
|
+
const y = Math.max(2, b - g), S = Math.min(m - 1, b + g);
|
|
3767
|
+
y > 2 && w.push("...");
|
|
3768
|
+
for (let Z = y; Z <= S; Z++)
|
|
3769
|
+
Z !== 1 && Z !== m && w.push(Z);
|
|
3770
|
+
return S < m - 1 && w.push("..."), m > 1 && w.push(m), w;
|
|
3720
3771
|
}), d = {
|
|
3721
3772
|
sm: "h-7 min-w-7 text-xs",
|
|
3722
3773
|
md: "h-9 min-w-9 text-sm",
|
|
3723
3774
|
lg: "h-11 min-w-11 text-base"
|
|
3724
|
-
}, u =
|
|
3775
|
+
}, u = p(() => [
|
|
3725
3776
|
"inline-flex items-center justify-center rounded-lg border border-slate-200 bg-white text-slate-600 hover:bg-slate-50 hover:border-slate-300 transition-colors",
|
|
3726
3777
|
d[l.size] || d.md
|
|
3727
|
-
]),
|
|
3778
|
+
]), v = p(() => [
|
|
3728
3779
|
"inline-flex items-center justify-center rounded-lg font-medium transition-colors",
|
|
3729
3780
|
d[l.size] || d.md,
|
|
3730
3781
|
"text-slate-600 hover:bg-slate-100"
|
|
3731
3782
|
]);
|
|
3732
|
-
return (
|
|
3783
|
+
return (b, m) => (a(), n("nav", rn, [
|
|
3733
3784
|
o("button", {
|
|
3734
3785
|
type: "button",
|
|
3735
3786
|
disabled: e.modelValue <= 1,
|
|
3736
3787
|
class: f([u.value, e.modelValue <= 1 && "opacity-50 cursor-not-allowed"]),
|
|
3737
|
-
onClick: m[0] || (m[0] = (
|
|
3788
|
+
onClick: m[0] || (m[0] = (g) => r(e.modelValue - 1)),
|
|
3738
3789
|
"aria-label": "Предыдущая"
|
|
3739
3790
|
}, [
|
|
3740
|
-
A(
|
|
3741
|
-
icon:
|
|
3791
|
+
A(D, {
|
|
3792
|
+
icon: _(tt),
|
|
3742
3793
|
size: "sm",
|
|
3743
3794
|
animation: "none"
|
|
3744
3795
|
}, null, 8, ["icon"])
|
|
3745
|
-
], 10,
|
|
3746
|
-
(a(!0), n(M, null,
|
|
3747
|
-
|
|
3796
|
+
], 10, dn),
|
|
3797
|
+
(a(!0), n(M, null, L(i.value, (g) => (a(), n(M, { key: g }, [
|
|
3798
|
+
g === "..." ? (a(), n("span", un, "...")) : (a(), n("button", {
|
|
3748
3799
|
key: 1,
|
|
3749
3800
|
type: "button",
|
|
3750
|
-
class: f([
|
|
3751
|
-
"aria-current":
|
|
3752
|
-
onClick: (
|
|
3753
|
-
},
|
|
3801
|
+
class: f([v.value, g === e.modelValue && fn]),
|
|
3802
|
+
"aria-current": g === e.modelValue ? "page" : void 0,
|
|
3803
|
+
onClick: (w) => r(g)
|
|
3804
|
+
}, h(g), 11, cn))
|
|
3754
3805
|
], 64))), 128)),
|
|
3755
3806
|
o("button", {
|
|
3756
3807
|
type: "button",
|
|
3757
3808
|
disabled: e.modelValue >= e.totalPages,
|
|
3758
3809
|
class: f([u.value, e.modelValue >= e.totalPages && "opacity-50 cursor-not-allowed"]),
|
|
3759
|
-
onClick: m[1] || (m[1] = (
|
|
3810
|
+
onClick: m[1] || (m[1] = (g) => r(e.modelValue + 1)),
|
|
3760
3811
|
"aria-label": "Следующая"
|
|
3761
3812
|
}, [
|
|
3762
|
-
A(
|
|
3763
|
-
icon:
|
|
3813
|
+
A(D, {
|
|
3814
|
+
icon: _(fe),
|
|
3764
3815
|
size: "sm",
|
|
3765
3816
|
animation: "none"
|
|
3766
3817
|
}, null, 8, ["icon"])
|
|
3767
|
-
], 10,
|
|
3818
|
+
], 10, mn)
|
|
3768
3819
|
]));
|
|
3769
3820
|
}
|
|
3770
|
-
},
|
|
3821
|
+
}, pn = {
|
|
3771
3822
|
class: "w-full",
|
|
3772
3823
|
"data-component": "DXPasswordInput"
|
|
3773
|
-
},
|
|
3824
|
+
}, vn = {
|
|
3774
3825
|
key: 0,
|
|
3775
3826
|
class: "block text-sm text-slate-600 mb-1 font-medium"
|
|
3776
|
-
},
|
|
3827
|
+
}, hn = { class: "relative" }, bn = ["type", "placeholder", "value", "disabled"], gn = ["disabled", "aria-label"], xn = {
|
|
3777
3828
|
key: 1,
|
|
3778
3829
|
class: "mt-1 text-xs text-rose-500"
|
|
3779
|
-
},
|
|
3830
|
+
}, yn = {
|
|
3780
3831
|
key: 2,
|
|
3781
3832
|
class: "mt-1 text-xs text-slate-500"
|
|
3782
|
-
},
|
|
3833
|
+
}, Bo = {
|
|
3783
3834
|
__name: "DXPasswordInput",
|
|
3784
3835
|
props: {
|
|
3785
3836
|
/** Значение (v-model) */
|
|
@@ -3797,10 +3848,10 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3797
3848
|
},
|
|
3798
3849
|
emits: ["update:modelValue"],
|
|
3799
3850
|
setup(e) {
|
|
3800
|
-
const t =
|
|
3801
|
-
return (l, s) => (a(), n("div",
|
|
3802
|
-
e.label ? (a(), n("label",
|
|
3803
|
-
o("div",
|
|
3851
|
+
const t = B(!1);
|
|
3852
|
+
return (l, s) => (a(), n("div", pn, [
|
|
3853
|
+
e.label ? (a(), n("label", vn, h(e.label), 1)) : c("", !0),
|
|
3854
|
+
o("div", hn, [
|
|
3804
3855
|
o("input", {
|
|
3805
3856
|
type: t.value ? "text" : "password",
|
|
3806
3857
|
placeholder: e.placeholder,
|
|
@@ -3808,7 +3859,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3808
3859
|
disabled: e.disabled,
|
|
3809
3860
|
class: f(["w-full pr-11 h-10 px-4 py-2.5 text-sm rounded-xl border border-slate-200 bg-white text-slate-700 placeholder:text-slate-400 transition-colors hover:border-slate-300 focus:outline-none focus:ring-2 focus:ring-slate-900/10 focus:border-slate-300 disabled:opacity-60 disabled:cursor-not-allowed disabled:bg-slate-50", { "border-rose-300 focus:ring-rose-500/10": e.error }]),
|
|
3810
3861
|
onInput: s[0] || (s[0] = (r) => l.$emit("update:modelValue", r.target.value))
|
|
3811
|
-
}, null, 42,
|
|
3862
|
+
}, null, 42, bn),
|
|
3812
3863
|
o("button", {
|
|
3813
3864
|
type: "button",
|
|
3814
3865
|
class: "absolute right-3 top-1/2 -translate-y-1/2 text-slate-400 hover:text-slate-600 transition",
|
|
@@ -3816,23 +3867,23 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3816
3867
|
onClick: s[1] || (s[1] = (r) => t.value = !t.value),
|
|
3817
3868
|
"aria-label": t.value ? "Скрыть пароль" : "Показать пароль"
|
|
3818
3869
|
}, [
|
|
3819
|
-
A(
|
|
3820
|
-
icon: t.value ?
|
|
3870
|
+
A(D, {
|
|
3871
|
+
icon: t.value ? _(ot) : _(se),
|
|
3821
3872
|
size: "md",
|
|
3822
3873
|
animation: "scale"
|
|
3823
3874
|
}, null, 8, ["icon"])
|
|
3824
|
-
], 8,
|
|
3875
|
+
], 8, gn)
|
|
3825
3876
|
]),
|
|
3826
|
-
e.error ? (a(), n("p",
|
|
3877
|
+
e.error ? (a(), n("p", xn, h(e.error), 1)) : e.helper ? (a(), n("p", yn, h(e.helper), 1)) : c("", !0)
|
|
3827
3878
|
]));
|
|
3828
3879
|
}
|
|
3829
|
-
},
|
|
3880
|
+
}, wn = ["value", "checked", "disabled"], kn = { class: "flex items-start gap-3" }, $n = { class: "flex-1 min-w-0" }, Cn = { class: "flex items-center justify-between" }, Sn = {
|
|
3830
3881
|
key: 0,
|
|
3831
3882
|
class: "w-5 h-5 rounded-full bg-slate-900 flex items-center justify-center flex-shrink-0"
|
|
3832
|
-
},
|
|
3883
|
+
}, Vn = {
|
|
3833
3884
|
key: 0,
|
|
3834
3885
|
class: "text-sm text-slate-600 mt-1"
|
|
3835
|
-
},
|
|
3886
|
+
}, Xo = {
|
|
3836
3887
|
__name: "DXRadioCard",
|
|
3837
3888
|
props: {
|
|
3838
3889
|
modelValue: [String, Number, Boolean],
|
|
@@ -3855,7 +3906,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3855
3906
|
disabled: e.disabled,
|
|
3856
3907
|
class: "sr-only peer",
|
|
3857
3908
|
onChange: l[0] || (l[0] = (s) => t.$emit("update:modelValue", e.value))
|
|
3858
|
-
}, null, 40,
|
|
3909
|
+
}, null, 40, wn),
|
|
3859
3910
|
o("div", {
|
|
3860
3911
|
class: f(["border-2 rounded-xl p-4 transition-all", [
|
|
3861
3912
|
e.modelValue === e.value ? "border-slate-900 bg-slate-50" : "border-slate-200 bg-white",
|
|
@@ -3863,17 +3914,17 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3863
3914
|
e.disabled && "bg-slate-50"
|
|
3864
3915
|
]])
|
|
3865
3916
|
}, [
|
|
3866
|
-
o("div",
|
|
3867
|
-
e.icon ? (a(),
|
|
3917
|
+
o("div", kn, [
|
|
3918
|
+
e.icon ? (a(), $(O(e.icon), {
|
|
3868
3919
|
key: 0,
|
|
3869
3920
|
class: f(["w-6 h-6 flex-shrink-0", e.modelValue === e.value ? "text-slate-900" : "text-slate-400"])
|
|
3870
3921
|
}, null, 8, ["class"])) : c("", !0),
|
|
3871
|
-
o("div",
|
|
3872
|
-
o("div",
|
|
3922
|
+
o("div", $n, [
|
|
3923
|
+
o("div", Cn, [
|
|
3873
3924
|
o("p", {
|
|
3874
3925
|
class: f(["font-semibold", e.modelValue === e.value ? "text-slate-900" : "text-slate-700"])
|
|
3875
|
-
},
|
|
3876
|
-
e.modelValue === e.value ? (a(), n("div",
|
|
3926
|
+
}, h(e.title), 3),
|
|
3927
|
+
e.modelValue === e.value ? (a(), n("div", Sn, [...l[1] || (l[1] = [
|
|
3877
3928
|
o("svg", {
|
|
3878
3929
|
class: "w-3 h-3 text-white",
|
|
3879
3930
|
fill: "none",
|
|
@@ -3889,23 +3940,23 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3889
3940
|
], -1)
|
|
3890
3941
|
])])) : c("", !0)
|
|
3891
3942
|
]),
|
|
3892
|
-
e.description ? (a(), n("p",
|
|
3893
|
-
|
|
3943
|
+
e.description ? (a(), n("p", Vn, h(e.description), 1)) : c("", !0),
|
|
3944
|
+
V(t.$slots, "default")
|
|
3894
3945
|
])
|
|
3895
3946
|
])
|
|
3896
3947
|
], 2)
|
|
3897
3948
|
], 2));
|
|
3898
3949
|
}
|
|
3899
|
-
},
|
|
3950
|
+
}, Dn = {
|
|
3900
3951
|
class: "space-y-2",
|
|
3901
3952
|
"data-component": "DXRadioGroup"
|
|
3902
|
-
},
|
|
3953
|
+
}, zn = {
|
|
3903
3954
|
key: 0,
|
|
3904
3955
|
class: "text-sm font-medium text-slate-700 mb-3"
|
|
3905
|
-
},
|
|
3956
|
+
}, Bn = ["value", "checked", "disabled", "onChange"], Xn = { class: "text-sm text-slate-700 select-none" }, In = {
|
|
3906
3957
|
key: 1,
|
|
3907
3958
|
class: "text-xs text-slate-500 mt-1"
|
|
3908
|
-
},
|
|
3959
|
+
}, Io = {
|
|
3909
3960
|
__name: "DXRadioGroup",
|
|
3910
3961
|
props: {
|
|
3911
3962
|
/** Текущее значение (v-model) */
|
|
@@ -3925,7 +3976,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3925
3976
|
},
|
|
3926
3977
|
emits: ["update:modelValue"],
|
|
3927
3978
|
setup(e) {
|
|
3928
|
-
const t = e, l =
|
|
3979
|
+
const t = e, l = p(() => {
|
|
3929
3980
|
switch (t.size) {
|
|
3930
3981
|
case "sm":
|
|
3931
3982
|
return "h-3.5 w-3.5";
|
|
@@ -3935,12 +3986,12 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3935
3986
|
return "h-4 w-4";
|
|
3936
3987
|
}
|
|
3937
3988
|
});
|
|
3938
|
-
return (s, r) => (a(), n("div",
|
|
3939
|
-
e.label ? (a(), n("p",
|
|
3989
|
+
return (s, r) => (a(), n("div", Dn, [
|
|
3990
|
+
e.label ? (a(), n("p", zn, h(e.label), 1)) : c("", !0),
|
|
3940
3991
|
o("div", {
|
|
3941
3992
|
class: f(e.layout === "horizontal" ? "flex flex-wrap gap-3" : "space-y-2")
|
|
3942
3993
|
}, [
|
|
3943
|
-
(a(!0), n(M, null,
|
|
3994
|
+
(a(!0), n(M, null, L(e.options, (i) => (a(), n("label", {
|
|
3944
3995
|
key: i.value,
|
|
3945
3996
|
class: f(["inline-flex items-center gap-2 cursor-pointer", { "opacity-60 cursor-not-allowed": e.disabled || i.disabled }])
|
|
3946
3997
|
}, [
|
|
@@ -3951,32 +4002,32 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3951
4002
|
disabled: e.disabled || i.disabled,
|
|
3952
4003
|
class: f(["rounded-full border-slate-300 text-slate-900 focus:ring-slate-900/10 focus:ring-2 transition", l.value]),
|
|
3953
4004
|
onChange: (d) => s.$emit("update:modelValue", i.value)
|
|
3954
|
-
}, null, 42,
|
|
3955
|
-
o("span",
|
|
4005
|
+
}, null, 42, Bn),
|
|
4006
|
+
o("span", Xn, h(i.label), 1)
|
|
3956
4007
|
], 2))), 128))
|
|
3957
4008
|
], 2),
|
|
3958
|
-
e.helper ? (a(), n("p",
|
|
4009
|
+
e.helper ? (a(), n("p", In, h(e.helper), 1)) : c("", !0)
|
|
3959
4010
|
]));
|
|
3960
4011
|
}
|
|
3961
|
-
},
|
|
4012
|
+
}, An = {
|
|
3962
4013
|
key: 0,
|
|
3963
4014
|
class: "block text-sm text-slate-600 mb-1 font-medium"
|
|
3964
|
-
},
|
|
4015
|
+
}, jn = {
|
|
3965
4016
|
key: 1,
|
|
3966
4017
|
class: "flex flex-wrap gap-2 mb-2"
|
|
3967
|
-
},
|
|
4018
|
+
}, Mn = ["onClick"], Ln = { class: "truncate flex items-center gap-2" }, _n = {
|
|
3968
4019
|
key: 2,
|
|
3969
4020
|
class: "absolute z-20 mt-2 w-full bg-white border border-slate-200 rounded-xl shadow-lg p-3 space-y-2"
|
|
3970
|
-
},
|
|
4021
|
+
}, On = { class: "relative" }, Zn = ["placeholder"], Tn = { class: "max-h-48 overflow-y-auto space-y-1" }, Nn = ["onClick"], Pn = { class: "flex items-center gap-2 flex-1 truncate" }, Rn = {
|
|
3971
4022
|
key: 0,
|
|
3972
4023
|
class: "w-4 h-4 text-slate-900 flex-shrink-0",
|
|
3973
4024
|
fill: "none",
|
|
3974
4025
|
stroke: "currentColor",
|
|
3975
4026
|
viewBox: "0 0 24 24"
|
|
3976
|
-
},
|
|
4027
|
+
}, qn = {
|
|
3977
4028
|
key: 1,
|
|
3978
4029
|
class: "text-xs text-slate-500 px-3 py-2"
|
|
3979
|
-
},
|
|
4030
|
+
}, Ao = {
|
|
3980
4031
|
__name: "DXSearchSelect",
|
|
3981
4032
|
props: {
|
|
3982
4033
|
/** Значение (v-model) - строка или массив для multiple */
|
|
@@ -3996,48 +4047,48 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
3996
4047
|
},
|
|
3997
4048
|
emits: ["update:modelValue", "create"],
|
|
3998
4049
|
setup(e, { emit: t }) {
|
|
3999
|
-
const l = e, s = t, r =
|
|
4050
|
+
const l = e, s = t, r = B(!1), i = B(""), d = B(null), u = B(null), v = p(() => l.multiple ? null : l.options.find((x) => String(x.value) === String(l.modelValue))), b = p(() => {
|
|
4000
4051
|
if (!l.multiple) return [];
|
|
4001
|
-
const
|
|
4002
|
-
return l.options.filter((k) =>
|
|
4003
|
-
}), m =
|
|
4052
|
+
const x = Array.isArray(l.modelValue) ? l.modelValue : [];
|
|
4053
|
+
return l.options.filter((k) => x.includes(k.value));
|
|
4054
|
+
}), m = p(() => {
|
|
4004
4055
|
if (l.multiple) {
|
|
4005
|
-
const
|
|
4006
|
-
return
|
|
4056
|
+
const x = b.value.length;
|
|
4057
|
+
return x > 0 ? `Выбрано: ${x}` : l.placeholder;
|
|
4007
4058
|
}
|
|
4008
|
-
return
|
|
4009
|
-
}),
|
|
4010
|
-
const
|
|
4011
|
-
return
|
|
4012
|
-
}),
|
|
4013
|
-
r.value = !r.value, r.value &&
|
|
4014
|
-
var
|
|
4015
|
-
return (
|
|
4059
|
+
return v.value ? v.value.label : l.placeholder;
|
|
4060
|
+
}), g = p(() => {
|
|
4061
|
+
const x = i.value.toLowerCase().trim();
|
|
4062
|
+
return x ? l.options.filter((k) => k.label.toLowerCase().includes(x)) : l.options;
|
|
4063
|
+
}), w = (x) => l.multiple ? (Array.isArray(l.modelValue) ? l.modelValue : []).includes(x) : l.modelValue === x, y = () => {
|
|
4064
|
+
r.value = !r.value, r.value && J(() => {
|
|
4065
|
+
var x;
|
|
4066
|
+
return (x = u.value) == null ? void 0 : x.focus();
|
|
4016
4067
|
});
|
|
4017
|
-
},
|
|
4068
|
+
}, S = (x) => {
|
|
4018
4069
|
if (l.multiple) {
|
|
4019
|
-
const k = Array.isArray(l.modelValue) ? l.modelValue : [], I = k.indexOf(
|
|
4070
|
+
const k = Array.isArray(l.modelValue) ? l.modelValue : [], I = k.indexOf(x);
|
|
4020
4071
|
if (I > -1) {
|
|
4021
|
-
const
|
|
4022
|
-
|
|
4072
|
+
const X = [...k];
|
|
4073
|
+
X.splice(I, 1), s("update:modelValue", X);
|
|
4023
4074
|
} else
|
|
4024
|
-
s("update:modelValue", [...k,
|
|
4075
|
+
s("update:modelValue", [...k, x]);
|
|
4025
4076
|
} else
|
|
4026
|
-
s("update:modelValue",
|
|
4077
|
+
s("update:modelValue", x), r.value = !1;
|
|
4027
4078
|
i.value = "";
|
|
4028
|
-
},
|
|
4079
|
+
}, Z = (x) => {
|
|
4029
4080
|
if (l.multiple) {
|
|
4030
4081
|
const k = Array.isArray(l.modelValue) ? l.modelValue : [];
|
|
4031
|
-
s("update:modelValue", k.filter((I) => I !==
|
|
4082
|
+
s("update:modelValue", k.filter((I) => I !== x));
|
|
4032
4083
|
}
|
|
4033
|
-
},
|
|
4084
|
+
}, z = () => {
|
|
4034
4085
|
l.creatable && i.value && (s("create", i.value), i.value = "");
|
|
4035
|
-
},
|
|
4036
|
-
d.value && !d.value.contains(
|
|
4086
|
+
}, C = (x) => {
|
|
4087
|
+
d.value && !d.value.contains(x.target) && (r.value = !1, i.value = "");
|
|
4037
4088
|
};
|
|
4038
|
-
return
|
|
4039
|
-
|
|
4040
|
-
}), U(() => document.addEventListener("click",
|
|
4089
|
+
return F(r, (x) => {
|
|
4090
|
+
x || (i.value = "");
|
|
4091
|
+
}), U(() => document.addEventListener("click", C)), te(() => document.removeEventListener("click", C)), (x, k) => {
|
|
4041
4092
|
var I;
|
|
4042
4093
|
return a(), n("div", {
|
|
4043
4094
|
class: "relative",
|
|
@@ -4045,21 +4096,21 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4045
4096
|
ref: d,
|
|
4046
4097
|
"data-component": "DXSearchSelect"
|
|
4047
4098
|
}, [
|
|
4048
|
-
e.label ? (a(), n("label",
|
|
4049
|
-
e.multiple &&
|
|
4050
|
-
(a(!0), n(M, null,
|
|
4051
|
-
key:
|
|
4099
|
+
e.label ? (a(), n("label", An, h(e.label), 1)) : c("", !0),
|
|
4100
|
+
e.multiple && b.value.length > 0 ? (a(), n("div", jn, [
|
|
4101
|
+
(a(!0), n(M, null, L(b.value, (X) => (a(), n("span", {
|
|
4102
|
+
key: X.value,
|
|
4052
4103
|
class: "inline-flex items-center gap-1 px-2 py-1 text-xs font-medium bg-slate-100 text-slate-700 rounded-lg"
|
|
4053
4104
|
}, [
|
|
4054
|
-
|
|
4105
|
+
X.icon ? (a(), $(O(X.icon), {
|
|
4055
4106
|
key: 0,
|
|
4056
4107
|
class: "w-3 h-3"
|
|
4057
4108
|
})) : c("", !0),
|
|
4058
|
-
j(" " +
|
|
4109
|
+
j(" " + h(X.label) + " ", 1),
|
|
4059
4110
|
o("button", {
|
|
4060
4111
|
type: "button",
|
|
4061
4112
|
class: "hover:text-slate-900",
|
|
4062
|
-
onClick:
|
|
4113
|
+
onClick: P((R) => Z(X.value), ["stop"])
|
|
4063
4114
|
}, [...k[3] || (k[3] = [
|
|
4064
4115
|
o("svg", {
|
|
4065
4116
|
class: "w-3 h-3",
|
|
@@ -4074,7 +4125,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4074
4125
|
d: "M6 18L18 6M6 6l12 12"
|
|
4075
4126
|
})
|
|
4076
4127
|
], -1)
|
|
4077
|
-
])], 8,
|
|
4128
|
+
])], 8, Mn)
|
|
4078
4129
|
]))), 128))
|
|
4079
4130
|
])) : c("", !0),
|
|
4080
4131
|
o("button", {
|
|
@@ -4083,14 +4134,14 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4083
4134
|
!r.value && "hover:border-slate-300",
|
|
4084
4135
|
r.value && "ring-2 ring-slate-900/10 border-slate-300"
|
|
4085
4136
|
]]),
|
|
4086
|
-
onClick:
|
|
4137
|
+
onClick: y
|
|
4087
4138
|
}, [
|
|
4088
|
-
o("span",
|
|
4089
|
-
!e.multiple && ((I =
|
|
4139
|
+
o("span", Ln, [
|
|
4140
|
+
!e.multiple && ((I = v.value) != null && I.icon) ? (a(), $(O(v.value.icon), {
|
|
4090
4141
|
key: 0,
|
|
4091
4142
|
class: "w-4 h-4 text-slate-500"
|
|
4092
4143
|
})) : c("", !0),
|
|
4093
|
-
j(" " +
|
|
4144
|
+
j(" " + h(m.value), 1)
|
|
4094
4145
|
]),
|
|
4095
4146
|
(a(), n("svg", {
|
|
4096
4147
|
class: f(["w-4 h-4 text-slate-400 transition-transform", { "rotate-180": r.value }]),
|
|
@@ -4106,21 +4157,21 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4106
4157
|
}, null, -1)
|
|
4107
4158
|
])], 2))
|
|
4108
4159
|
], 2),
|
|
4109
|
-
r.value ? (a(), n("div",
|
|
4110
|
-
o("div",
|
|
4160
|
+
r.value ? (a(), n("div", _n, [
|
|
4161
|
+
o("div", On, [
|
|
4111
4162
|
q(o("input", {
|
|
4112
4163
|
ref_key: "searchInput",
|
|
4113
4164
|
ref: u,
|
|
4114
|
-
"onUpdate:modelValue": k[0] || (k[0] = (
|
|
4165
|
+
"onUpdate:modelValue": k[0] || (k[0] = (X) => i.value = X),
|
|
4115
4166
|
class: "w-full px-3 py-2 text-sm border border-slate-200 rounded-lg focus:outline-none focus:ring-2 focus:ring-slate-900/10",
|
|
4116
4167
|
placeholder: e.searchPlaceholder,
|
|
4117
4168
|
onKeydown: [
|
|
4118
|
-
k[1] || (k[1] =
|
|
4169
|
+
k[1] || (k[1] = P(() => {
|
|
4119
4170
|
}, ["stop"])),
|
|
4120
|
-
k[2] || (k[2] =
|
|
4171
|
+
k[2] || (k[2] = E((X) => r.value = !1, ["escape"]))
|
|
4121
4172
|
]
|
|
4122
|
-
}, null, 40,
|
|
4123
|
-
[
|
|
4173
|
+
}, null, 40, Zn), [
|
|
4174
|
+
[K, i.value]
|
|
4124
4175
|
]),
|
|
4125
4176
|
k[5] || (k[5] = o("svg", {
|
|
4126
4177
|
class: "absolute right-3 top-2.5 w-4 h-4 text-slate-400",
|
|
@@ -4136,21 +4187,21 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4136
4187
|
})
|
|
4137
4188
|
], -1))
|
|
4138
4189
|
]),
|
|
4139
|
-
o("div",
|
|
4140
|
-
(a(!0), n(M, null,
|
|
4141
|
-
key:
|
|
4190
|
+
o("div", Tn, [
|
|
4191
|
+
(a(!0), n(M, null, L(g.value, (X) => (a(), n("button", {
|
|
4192
|
+
key: X.value,
|
|
4142
4193
|
type: "button",
|
|
4143
|
-
class: f(["w-full text-left px-3 py-2 rounded-lg hover:bg-slate-50 text-sm flex items-center justify-between gap-2", { "bg-slate-100":
|
|
4144
|
-
onClick: (
|
|
4194
|
+
class: f(["w-full text-left px-3 py-2 rounded-lg hover:bg-slate-50 text-sm flex items-center justify-between gap-2", { "bg-slate-100": w(X.value) }]),
|
|
4195
|
+
onClick: (R) => S(X.value)
|
|
4145
4196
|
}, [
|
|
4146
|
-
o("span",
|
|
4147
|
-
|
|
4197
|
+
o("span", Pn, [
|
|
4198
|
+
X.icon ? (a(), $(O(X.icon), {
|
|
4148
4199
|
key: 0,
|
|
4149
4200
|
class: "w-4 h-4 text-slate-500"
|
|
4150
4201
|
})) : c("", !0),
|
|
4151
|
-
j(" " +
|
|
4202
|
+
j(" " + h(X.label), 1)
|
|
4152
4203
|
]),
|
|
4153
|
-
|
|
4204
|
+
w(X.value) ? (a(), n("svg", Rn, [...k[6] || (k[6] = [
|
|
4154
4205
|
o("path", {
|
|
4155
4206
|
"stroke-linecap": "round",
|
|
4156
4207
|
"stroke-linejoin": "round",
|
|
@@ -4158,12 +4209,12 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4158
4209
|
d: "M5 13l4 4L19 7"
|
|
4159
4210
|
}, null, -1)
|
|
4160
4211
|
])])) : c("", !0)
|
|
4161
|
-
], 10,
|
|
4162
|
-
e.creatable && i.value && !
|
|
4212
|
+
], 10, Nn))), 128)),
|
|
4213
|
+
e.creatable && i.value && !g.value.length ? (a(), n("button", {
|
|
4163
4214
|
key: 0,
|
|
4164
4215
|
type: "button",
|
|
4165
4216
|
class: "w-full text-left px-3 py-2 rounded-lg hover:bg-slate-50 text-sm flex items-center gap-2 text-slate-600",
|
|
4166
|
-
onClick:
|
|
4217
|
+
onClick: z
|
|
4167
4218
|
}, [
|
|
4168
4219
|
k[7] || (k[7] = o("svg", {
|
|
4169
4220
|
class: "w-4 h-4",
|
|
@@ -4178,20 +4229,20 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4178
4229
|
d: "M12 4v16m8-8H4"
|
|
4179
4230
|
})
|
|
4180
4231
|
], -1)),
|
|
4181
|
-
j(' Создать "' +
|
|
4182
|
-
])) :
|
|
4232
|
+
j(' Создать "' + h(i.value) + '" ', 1)
|
|
4233
|
+
])) : g.value.length ? c("", !0) : (a(), n("p", qn, "Не найдено"))
|
|
4183
4234
|
])
|
|
4184
4235
|
])) : c("", !0)
|
|
4185
4236
|
], 512);
|
|
4186
4237
|
};
|
|
4187
4238
|
}
|
|
4188
|
-
},
|
|
4239
|
+
}, Hn = {
|
|
4189
4240
|
class: "inline-flex",
|
|
4190
4241
|
"data-component": "DXSegmentedControl"
|
|
4191
|
-
},
|
|
4242
|
+
}, Fn = {
|
|
4192
4243
|
key: 0,
|
|
4193
4244
|
class: "text-sm font-medium text-slate-700 mb-2"
|
|
4194
|
-
},
|
|
4245
|
+
}, En = { class: "relative inline-flex p-1 bg-slate-100 rounded-xl gap-1" }, Gn = ["disabled", "onClick"], Un = { key: 1 }, jo = {
|
|
4195
4246
|
__name: "DXSegmentedControl",
|
|
4196
4247
|
props: {
|
|
4197
4248
|
modelValue: [String, Number, Boolean],
|
|
@@ -4208,61 +4259,61 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4208
4259
|
},
|
|
4209
4260
|
emits: ["update:modelValue"],
|
|
4210
4261
|
setup(e, { emit: t }) {
|
|
4211
|
-
const l = e, s = t, r =
|
|
4262
|
+
const l = e, s = t, r = B([]), i = B({}), d = p(() => l.options.findIndex((m) => m.value === l.modelValue)), u = () => {
|
|
4212
4263
|
const m = d.value;
|
|
4213
4264
|
if (m >= 0 && r.value[m]) {
|
|
4214
|
-
const
|
|
4265
|
+
const g = r.value[m];
|
|
4215
4266
|
i.value = {
|
|
4216
|
-
width: `${
|
|
4217
|
-
height: `${
|
|
4218
|
-
left: `${
|
|
4219
|
-
top: `${
|
|
4267
|
+
width: `${g.offsetWidth}px`,
|
|
4268
|
+
height: `${g.offsetHeight}px`,
|
|
4269
|
+
left: `${g.offsetLeft}px`,
|
|
4270
|
+
top: `${g.offsetTop}px`
|
|
4220
4271
|
};
|
|
4221
4272
|
}
|
|
4222
|
-
},
|
|
4273
|
+
}, v = (m) => {
|
|
4223
4274
|
l.disabled || s("update:modelValue", m);
|
|
4224
|
-
},
|
|
4225
|
-
return
|
|
4226
|
-
|
|
4275
|
+
}, b = (m) => l.iconAnimation === "none" ? "none" : l.animateActiveOnly ? l.modelValue === m.value ? l.iconAnimation : "none" : l.iconAnimation;
|
|
4276
|
+
return F(() => l.modelValue, () => {
|
|
4277
|
+
J(u);
|
|
4227
4278
|
}), U(() => {
|
|
4228
|
-
|
|
4229
|
-
}), (m,
|
|
4230
|
-
e.label ? (a(), n("p",
|
|
4231
|
-
o("div",
|
|
4279
|
+
J(u);
|
|
4280
|
+
}), (m, g) => (a(), n("div", Hn, [
|
|
4281
|
+
e.label ? (a(), n("p", Fn, h(e.label), 1)) : c("", !0),
|
|
4282
|
+
o("div", En, [
|
|
4232
4283
|
o("div", {
|
|
4233
4284
|
class: "absolute bg-white rounded-lg shadow-sm transition-all duration-200 ease-out",
|
|
4234
|
-
style:
|
|
4285
|
+
style: G(i.value)
|
|
4235
4286
|
}, null, 4),
|
|
4236
|
-
(a(!0), n(M, null,
|
|
4237
|
-
key:
|
|
4287
|
+
(a(!0), n(M, null, L(e.options, (w, y) => (a(), n("button", {
|
|
4288
|
+
key: w.value,
|
|
4238
4289
|
type: "button",
|
|
4239
4290
|
ref_for: !0,
|
|
4240
|
-
ref: (
|
|
4241
|
-
|
|
4291
|
+
ref: (S) => {
|
|
4292
|
+
S && (r.value[y] = S);
|
|
4242
4293
|
},
|
|
4243
4294
|
class: f(["relative z-10 px-4 py-1.5 text-sm font-medium transition-colors duration-150 rounded-lg whitespace-nowrap min-w-[60px] text-center inline-flex items-center justify-center gap-1.5", [
|
|
4244
|
-
e.modelValue ===
|
|
4295
|
+
e.modelValue === w.value ? "text-slate-900" : "text-slate-600 hover:text-slate-900",
|
|
4245
4296
|
e.disabled && "opacity-60 cursor-not-allowed"
|
|
4246
4297
|
]]),
|
|
4247
4298
|
disabled: e.disabled,
|
|
4248
|
-
onClick: (
|
|
4299
|
+
onClick: (S) => v(w.value)
|
|
4249
4300
|
}, [
|
|
4250
|
-
|
|
4301
|
+
w.icon ? (a(), $(D, {
|
|
4251
4302
|
key: 0,
|
|
4252
|
-
icon:
|
|
4303
|
+
icon: w.icon,
|
|
4253
4304
|
size: "xs",
|
|
4254
|
-
animation:
|
|
4305
|
+
animation: b(w)
|
|
4255
4306
|
}, null, 8, ["icon", "animation"])) : c("", !0),
|
|
4256
|
-
|
|
4257
|
-
|
|
4307
|
+
w.label ? (a(), n("span", Un, h(w.label), 1)) : c("", !0),
|
|
4308
|
+
w.count !== void 0 && w.count !== null ? (a(), n("span", {
|
|
4258
4309
|
key: 2,
|
|
4259
|
-
class: f(["inline-flex items-center justify-center min-w-[20px] h-5 px-1.5 text-[11px] font-semibold rounded-full", e.modelValue ===
|
|
4260
|
-
},
|
|
4261
|
-
], 10,
|
|
4310
|
+
class: f(["inline-flex items-center justify-center min-w-[20px] h-5 px-1.5 text-[11px] font-semibold rounded-full", e.modelValue === w.value ? "bg-slate-800 text-white" : "bg-slate-200 text-slate-700"])
|
|
4311
|
+
}, h(w.count), 3)) : c("", !0)
|
|
4312
|
+
], 10, Gn))), 128))
|
|
4262
4313
|
])
|
|
4263
4314
|
]));
|
|
4264
4315
|
}
|
|
4265
|
-
},
|
|
4316
|
+
}, Kn = ["onClick", "aria-expanded"], Yn = { class: "flex items-center gap-2" }, Wn = { class: "text-slate-900" }, Jn = { class: "overflow-hidden" }, Qn = { class: "pb-4 px-1 text-sm text-slate-600" }, Mo = {
|
|
4266
4317
|
__name: "DXAccordion",
|
|
4267
4318
|
props: {
|
|
4268
4319
|
/** Элементы: [{ title, content?, icon? }] */
|
|
@@ -4275,46 +4326,46 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4275
4326
|
variant: { type: String, default: "default" }
|
|
4276
4327
|
},
|
|
4277
4328
|
setup(e) {
|
|
4278
|
-
const t = e, l =
|
|
4329
|
+
const t = e, l = B(new Set(t.defaultOpen)), s = (u) => l.value.has(u), r = (u) => {
|
|
4279
4330
|
t.multiple ? (l.value.has(u) ? l.value.delete(u) : l.value.add(u), l.value = new Set(l.value)) : l.value.has(u) ? l.value = /* @__PURE__ */ new Set() : l.value = /* @__PURE__ */ new Set([u]);
|
|
4280
4331
|
}, i = {
|
|
4281
4332
|
default: "",
|
|
4282
4333
|
bordered: "border border-slate-200 rounded-xl overflow-hidden",
|
|
4283
4334
|
separated: "space-y-2"
|
|
4284
|
-
}, d =
|
|
4335
|
+
}, d = p(() => [
|
|
4285
4336
|
i[t.variant] || i.default
|
|
4286
4337
|
]);
|
|
4287
|
-
return (u,
|
|
4338
|
+
return (u, v) => (a(), n("div", {
|
|
4288
4339
|
class: f(d.value),
|
|
4289
4340
|
"data-component": "DXAccordion"
|
|
4290
4341
|
}, [
|
|
4291
|
-
(a(!0), n(M, null,
|
|
4342
|
+
(a(!0), n(M, null, L(e.items, (b, m) => (a(), n("div", {
|
|
4292
4343
|
key: m,
|
|
4293
4344
|
class: "border-b border-slate-200 last:border-b-0"
|
|
4294
4345
|
}, [
|
|
4295
4346
|
o("button", {
|
|
4296
4347
|
type: "button",
|
|
4297
4348
|
class: f(["w-full flex items-center justify-between py-4 px-1 text-left transition-colors hover:bg-slate-50", { "font-semibold": s(m) }]),
|
|
4298
|
-
onClick: (
|
|
4349
|
+
onClick: (g) => r(m),
|
|
4299
4350
|
"aria-expanded": s(m)
|
|
4300
4351
|
}, [
|
|
4301
|
-
o("span",
|
|
4302
|
-
|
|
4352
|
+
o("span", Yn, [
|
|
4353
|
+
b.icon ? (a(), $(D, {
|
|
4303
4354
|
key: 0,
|
|
4304
|
-
icon:
|
|
4355
|
+
icon: b.icon,
|
|
4305
4356
|
size: "md",
|
|
4306
4357
|
animation: "none",
|
|
4307
4358
|
class: "text-slate-500"
|
|
4308
4359
|
}, null, 8, ["icon"])) : c("", !0),
|
|
4309
|
-
o("span",
|
|
4360
|
+
o("span", Wn, h(b.title), 1)
|
|
4310
4361
|
]),
|
|
4311
|
-
A(
|
|
4312
|
-
icon:
|
|
4362
|
+
A(D, {
|
|
4363
|
+
icon: _(W),
|
|
4313
4364
|
size: "md",
|
|
4314
4365
|
animation: "none",
|
|
4315
4366
|
class: f(["text-slate-400 transition-transform duration-200", { "rotate-180": s(m) }])
|
|
4316
4367
|
}, null, 8, ["icon", "class"])
|
|
4317
|
-
], 10,
|
|
4368
|
+
], 10, Kn),
|
|
4318
4369
|
A(Y, {
|
|
4319
4370
|
"enter-active-class": "transition-all duration-200 ease-out",
|
|
4320
4371
|
"enter-from-class": "opacity-0 max-h-0",
|
|
@@ -4323,15 +4374,15 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4323
4374
|
"leave-from-class": "opacity-100 max-h-96",
|
|
4324
4375
|
"leave-to-class": "opacity-0 max-h-0"
|
|
4325
4376
|
}, {
|
|
4326
|
-
default:
|
|
4327
|
-
q(o("div",
|
|
4328
|
-
o("div",
|
|
4329
|
-
|
|
4330
|
-
j(b
|
|
4377
|
+
default: T(() => [
|
|
4378
|
+
q(o("div", Jn, [
|
|
4379
|
+
o("div", Qn, [
|
|
4380
|
+
V(u.$slots, `item-${m}`, {}, () => [
|
|
4381
|
+
j(h(b.content), 1)
|
|
4331
4382
|
])
|
|
4332
4383
|
])
|
|
4333
4384
|
], 512), [
|
|
4334
|
-
[
|
|
4385
|
+
[ce, s(m)]
|
|
4335
4386
|
])
|
|
4336
4387
|
]),
|
|
4337
4388
|
_: 2
|
|
@@ -4339,16 +4390,16 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4339
4390
|
]))), 128))
|
|
4340
4391
|
], 2));
|
|
4341
4392
|
}
|
|
4342
|
-
},
|
|
4393
|
+
}, es = {
|
|
4343
4394
|
key: 0,
|
|
4344
4395
|
class: "absolute right-0 mt-2 w-56 bg-white border border-slate-200 rounded-2xl shadow-lg py-2 z-20"
|
|
4345
|
-
},
|
|
4396
|
+
}, Lo = {
|
|
4346
4397
|
__name: "DXDropdown",
|
|
4347
4398
|
setup(e) {
|
|
4348
|
-
const t =
|
|
4399
|
+
const t = B(!1), l = B(null), s = () => t.value = !t.value, r = () => t.value = !1, i = (d) => {
|
|
4349
4400
|
l.value && !l.value.contains(d.target) && r();
|
|
4350
4401
|
};
|
|
4351
|
-
return U(() => document.addEventListener("click", i)),
|
|
4402
|
+
return U(() => document.addEventListener("click", i)), te(() => document.removeEventListener("click", i)), (d, u) => (a(), n("div", {
|
|
4352
4403
|
class: "relative inline-block",
|
|
4353
4404
|
ref_key: "root",
|
|
4354
4405
|
ref: l,
|
|
@@ -4359,28 +4410,28 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4359
4410
|
class: "dropdown-btn inline-flex items-center gap-2 px-3 py-2 rounded-xl border border-slate-200 text-sm font-semibold text-slate-700 hover:border-slate-300 transition",
|
|
4360
4411
|
onClick: s
|
|
4361
4412
|
}, [
|
|
4362
|
-
|
|
4413
|
+
V(d.$slots, "trigger", {}, () => [
|
|
4363
4414
|
u[0] || (u[0] = j("Меню", -1))
|
|
4364
4415
|
]),
|
|
4365
|
-
A(
|
|
4366
|
-
icon:
|
|
4416
|
+
A(D, {
|
|
4417
|
+
icon: _(W),
|
|
4367
4418
|
size: "sm",
|
|
4368
4419
|
animation: "wiggle",
|
|
4369
4420
|
class: "text-slate-400"
|
|
4370
4421
|
}, null, 8, ["icon"])
|
|
4371
4422
|
]),
|
|
4372
|
-
t.value ? (a(), n("div",
|
|
4373
|
-
|
|
4423
|
+
t.value ? (a(), n("div", es, [
|
|
4424
|
+
V(d.$slots, "default")
|
|
4374
4425
|
])) : c("", !0)
|
|
4375
4426
|
], 512));
|
|
4376
4427
|
}
|
|
4377
|
-
},
|
|
4428
|
+
}, ts = {
|
|
4378
4429
|
class: "bg-white border border-slate-100 rounded-3xl shadow-sm p-8 text-center space-y-3",
|
|
4379
4430
|
"data-component": "DXEmptyState"
|
|
4380
|
-
},
|
|
4431
|
+
}, ls = { class: "text-base font-semibold text-slate-900" }, as = {
|
|
4381
4432
|
key: 0,
|
|
4382
4433
|
class: "text-sm text-slate-600"
|
|
4383
|
-
},
|
|
4434
|
+
}, ns = {
|
|
4384
4435
|
__name: "DXEmptyState",
|
|
4385
4436
|
props: {
|
|
4386
4437
|
/** Иконка (компонент) */
|
|
@@ -4393,22 +4444,22 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4393
4444
|
animated: { type: Boolean, default: !1 }
|
|
4394
4445
|
},
|
|
4395
4446
|
setup(e) {
|
|
4396
|
-
return (t, l) => (a(), n("div",
|
|
4397
|
-
(a(),
|
|
4447
|
+
return (t, l) => (a(), n("div", ts, [
|
|
4448
|
+
(a(), $(O(e.icon), {
|
|
4398
4449
|
class: f(["w-10 h-10 text-slate-500 mx-auto", e.animated && "animate-bounce-slow"])
|
|
4399
4450
|
}, null, 8, ["class"])),
|
|
4400
|
-
o("p",
|
|
4401
|
-
e.description ? (a(), n("p",
|
|
4402
|
-
|
|
4451
|
+
o("p", ls, h(e.title), 1),
|
|
4452
|
+
e.description ? (a(), n("p", as, h(e.description), 1)) : c("", !0),
|
|
4453
|
+
V(t.$slots, "action", {}, void 0, !0)
|
|
4403
4454
|
]));
|
|
4404
4455
|
}
|
|
4405
|
-
},
|
|
4456
|
+
}, _o = /* @__PURE__ */ N(ns, [["__scopeId", "data-v-0d333d18"]]), ss = ["data-variant"], os = { class: "flex items-center justify-between flex-shrink-0 mb-4 gap-4" }, rs = { class: "text-lg font-semibold tracking-tight text-slate-900 flex-1" }, is = {
|
|
4406
4457
|
key: 0,
|
|
4407
4458
|
class: "flex items-center gap-1 rounded-xl border border-slate-200 bg-slate-50 p-1"
|
|
4408
|
-
},
|
|
4459
|
+
}, ds = ["title", "onClick"], us = { class: "text-slate-700 overflow-y-auto flex-1 min-h-0" }, cs = {
|
|
4409
4460
|
key: 0,
|
|
4410
4461
|
class: "flex justify-end gap-2 flex-shrink-0 mt-4 pt-4 border-t border-slate-200"
|
|
4411
|
-
},
|
|
4462
|
+
}, ms = {
|
|
4412
4463
|
__name: "DXModal",
|
|
4413
4464
|
props: {
|
|
4414
4465
|
/** Открыто/закрыто */
|
|
@@ -4425,15 +4476,15 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4425
4476
|
emits: ["close", "opened", "closed", "update:variant"],
|
|
4426
4477
|
setup(e, { emit: t }) {
|
|
4427
4478
|
const l = e, s = t, r = [
|
|
4428
|
-
{ value: "modal", label: "Модальное окно", icon:
|
|
4429
|
-
{ value: "fullscreen", label: "На весь экран", icon:
|
|
4430
|
-
{ value: "sidebar-right", label: "Боковая панель", icon:
|
|
4431
|
-
{ value: "half-right", label: "Половина справа", icon:
|
|
4479
|
+
{ value: "modal", label: "Модальное окно", icon: vt },
|
|
4480
|
+
{ value: "fullscreen", label: "На весь экран", icon: Ke },
|
|
4481
|
+
{ value: "sidebar-right", label: "Боковая панель", icon: xt },
|
|
4482
|
+
{ value: "half-right", label: "Половина справа", icon: ft }
|
|
4432
4483
|
], i = () => {
|
|
4433
4484
|
l.closable && l.variant !== "half-right" && s("close");
|
|
4434
|
-
}, d = (
|
|
4435
|
-
s("update:variant",
|
|
4436
|
-
}, u =
|
|
4485
|
+
}, d = (g) => {
|
|
4486
|
+
s("update:variant", g);
|
|
4487
|
+
}, u = p(() => {
|
|
4437
4488
|
switch (l.variant) {
|
|
4438
4489
|
case "sidebar-right":
|
|
4439
4490
|
case "half-right":
|
|
@@ -4441,7 +4492,7 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4441
4492
|
default:
|
|
4442
4493
|
return "fade-scale";
|
|
4443
4494
|
}
|
|
4444
|
-
}),
|
|
4495
|
+
}), v = p(() => {
|
|
4445
4496
|
switch (l.variant) {
|
|
4446
4497
|
case "fullscreen":
|
|
4447
4498
|
return "fixed inset-0 z-50 bg-slate-900/40 backdrop-blur-sm flex items-center justify-center p-0";
|
|
@@ -4452,19 +4503,19 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4452
4503
|
default:
|
|
4453
4504
|
return "fixed inset-0 z-50 bg-slate-900/40 backdrop-blur-sm flex items-center justify-center px-4 py-4 overflow-y-auto";
|
|
4454
4505
|
}
|
|
4455
|
-
}),
|
|
4456
|
-
const
|
|
4506
|
+
}), b = p(() => {
|
|
4507
|
+
const g = "bg-white shadow-2xl flex flex-col";
|
|
4457
4508
|
switch (l.variant) {
|
|
4458
4509
|
case "fullscreen":
|
|
4459
|
-
return `${
|
|
4510
|
+
return `${g} w-full h-full p-8`;
|
|
4460
4511
|
case "sidebar-right":
|
|
4461
|
-
return `${
|
|
4512
|
+
return `${g} h-full w-full max-w-md p-6 border-l border-slate-200`;
|
|
4462
4513
|
case "half-right":
|
|
4463
|
-
return `${
|
|
4514
|
+
return `${g} h-full w-full p-6 border-l border-slate-200 pointer-events-auto`;
|
|
4464
4515
|
default:
|
|
4465
|
-
return `${
|
|
4516
|
+
return `${g} rounded-2xl w-full max-h-[90vh] p-6 my-auto ${m.value}`;
|
|
4466
4517
|
}
|
|
4467
|
-
}), m =
|
|
4518
|
+
}), m = p(() => {
|
|
4468
4519
|
if (l.variant !== "modal") return "";
|
|
4469
4520
|
switch (l.width) {
|
|
4470
4521
|
case "sm":
|
|
@@ -4477,90 +4528,422 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4477
4528
|
return "max-w-xl";
|
|
4478
4529
|
}
|
|
4479
4530
|
});
|
|
4480
|
-
return (
|
|
4531
|
+
return (g, w) => (a(), $(ge, { to: "body" }, [
|
|
4481
4532
|
A(Y, {
|
|
4482
4533
|
name: u.value,
|
|
4483
|
-
onAfterEnter:
|
|
4484
|
-
onAfterLeave:
|
|
4534
|
+
onAfterEnter: w[1] || (w[1] = (y) => g.$emit("opened")),
|
|
4535
|
+
onAfterLeave: w[2] || (w[2] = (y) => g.$emit("closed"))
|
|
4485
4536
|
}, {
|
|
4486
|
-
default:
|
|
4537
|
+
default: T(() => [
|
|
4487
4538
|
e.open ? (a(), n("div", {
|
|
4488
4539
|
key: 0,
|
|
4489
|
-
class: f(
|
|
4490
|
-
onClick:
|
|
4540
|
+
class: f(v.value),
|
|
4541
|
+
onClick: P(i, ["self"]),
|
|
4491
4542
|
"data-component": "DXModal",
|
|
4492
4543
|
"data-variant": e.variant
|
|
4493
4544
|
}, [
|
|
4494
4545
|
o("div", {
|
|
4495
|
-
class: f(
|
|
4546
|
+
class: f(b.value)
|
|
4496
4547
|
}, [
|
|
4497
|
-
o("div",
|
|
4498
|
-
o("h3",
|
|
4499
|
-
|
|
4500
|
-
|
|
4548
|
+
o("div", os, [
|
|
4549
|
+
o("h3", rs, [
|
|
4550
|
+
V(g.$slots, "title", {}, () => [
|
|
4551
|
+
w[3] || (w[3] = j("Диалог", -1))
|
|
4501
4552
|
], !0)
|
|
4502
4553
|
]),
|
|
4503
|
-
e.showModeSwitcher ? (a(), n("div",
|
|
4504
|
-
(a(), n(M, null,
|
|
4505
|
-
key:
|
|
4554
|
+
e.showModeSwitcher ? (a(), n("div", is, [
|
|
4555
|
+
(a(), n(M, null, L(r, (y) => o("button", {
|
|
4556
|
+
key: y.value,
|
|
4506
4557
|
type: "button",
|
|
4507
|
-
class: f(["rounded-lg p-1.5 transition-colors", e.variant ===
|
|
4508
|
-
title:
|
|
4509
|
-
onClick: (
|
|
4558
|
+
class: f(["rounded-lg p-1.5 transition-colors", e.variant === y.value ? "bg-white text-slate-900 shadow-sm" : "text-slate-400 hover:text-slate-600 hover:bg-white/50"]),
|
|
4559
|
+
title: y.label,
|
|
4560
|
+
onClick: (S) => d(y.value)
|
|
4510
4561
|
}, [
|
|
4511
|
-
(a(),
|
|
4512
|
-
], 10,
|
|
4562
|
+
(a(), $(O(y.icon), { class: "h-4 w-4" }))
|
|
4563
|
+
], 10, ds)), 64))
|
|
4513
4564
|
])) : c("", !0),
|
|
4514
|
-
e.closable ? (a(),
|
|
4565
|
+
e.closable ? (a(), $(ve, {
|
|
4515
4566
|
key: 1,
|
|
4516
4567
|
size: "md",
|
|
4517
4568
|
variant: "default",
|
|
4518
|
-
onClick:
|
|
4569
|
+
onClick: w[0] || (w[0] = (y) => g.$emit("close"))
|
|
4519
4570
|
})) : c("", !0)
|
|
4520
4571
|
]),
|
|
4521
|
-
o("div",
|
|
4522
|
-
|
|
4572
|
+
o("div", us, [
|
|
4573
|
+
V(g.$slots, "default", {}, void 0, !0)
|
|
4523
4574
|
]),
|
|
4524
|
-
|
|
4525
|
-
|
|
4575
|
+
g.$slots.actions ? (a(), n("div", cs, [
|
|
4576
|
+
V(g.$slots, "actions", {}, void 0, !0)
|
|
4526
4577
|
])) : c("", !0)
|
|
4527
4578
|
], 2)
|
|
4528
|
-
], 10,
|
|
4579
|
+
], 10, ss)) : c("", !0)
|
|
4529
4580
|
]),
|
|
4530
4581
|
_: 3
|
|
4531
4582
|
}, 8, ["name"])
|
|
4532
4583
|
]));
|
|
4533
4584
|
}
|
|
4534
|
-
},
|
|
4585
|
+
}, Oo = /* @__PURE__ */ N(ms, [["__scopeId", "data-v-d02ee1db"]]), fs = { "data-component": "DXSidebarMenuItem" }, ps = { class: "flex items-center gap-3 flex-1" }, vs = {
|
|
4586
|
+
key: 1,
|
|
4587
|
+
class: "flex-1 text-sm font-medium text-left"
|
|
4588
|
+
}, hs = { key: 1 }, bs = { class: "flex items-center gap-3 flex-1" }, gs = {
|
|
4589
|
+
key: 1,
|
|
4590
|
+
class: "flex-1 text-sm font-medium text-left"
|
|
4591
|
+
}, xs = { class: "overflow-hidden" }, ys = { class: "pl-11 py-1 space-y-1" }, ws = {
|
|
4592
|
+
__name: "DXSidebarMenuItem",
|
|
4593
|
+
props: {
|
|
4594
|
+
item: {
|
|
4595
|
+
type: Object,
|
|
4596
|
+
required: !0
|
|
4597
|
+
},
|
|
4598
|
+
active: {
|
|
4599
|
+
type: Boolean,
|
|
4600
|
+
default: !1
|
|
4601
|
+
},
|
|
4602
|
+
compact: {
|
|
4603
|
+
type: Boolean,
|
|
4604
|
+
default: !1
|
|
4605
|
+
}
|
|
4606
|
+
},
|
|
4607
|
+
emits: ["click", "child-click"],
|
|
4608
|
+
setup(e, { emit: t }) {
|
|
4609
|
+
const l = e, s = t, r = B(!1), i = Q("hasRouter", !1), d = () => {
|
|
4610
|
+
r.value = !r.value;
|
|
4611
|
+
}, u = p(() => l.item.to && i ? "router-link" : l.item.href ? "a" : "button"), v = (S) => S.to && i ? "router-link" : S.href ? "a" : "button", b = p(() => [
|
|
4612
|
+
"w-full flex items-center gap-3 px-4 py-2.5 rounded-xl transition-all duration-200 text-left",
|
|
4613
|
+
l.active ? "bg-slate-900 text-white shadow-lg shadow-slate-900/20" : "text-slate-600 hover:bg-slate-100 hover:text-slate-900",
|
|
4614
|
+
l.item.disabled && "opacity-50 cursor-not-allowed",
|
|
4615
|
+
l.compact && "justify-center px-2"
|
|
4616
|
+
]), m = p(() => [
|
|
4617
|
+
"flex-shrink-0",
|
|
4618
|
+
l.active ? "text-white" : "text-slate-400"
|
|
4619
|
+
]), g = (S) => [
|
|
4620
|
+
"w-full flex items-center px-3 py-2 text-sm rounded-lg transition-colors text-left",
|
|
4621
|
+
S.active ? "bg-slate-100 text-slate-900 font-medium" : "text-slate-600 hover:bg-slate-50 hover:text-slate-900"
|
|
4622
|
+
], w = (S) => {
|
|
4623
|
+
if (l.item.disabled) {
|
|
4624
|
+
S.preventDefault();
|
|
4625
|
+
return;
|
|
4626
|
+
}
|
|
4627
|
+
s("click", l.item, S);
|
|
4628
|
+
}, y = (S) => {
|
|
4629
|
+
S.disabled || s("child-click", S);
|
|
4630
|
+
};
|
|
4631
|
+
return (S, Z) => (a(), n("div", fs, [
|
|
4632
|
+
e.item.children ? (a(), n("div", hs, [
|
|
4633
|
+
o("button", {
|
|
4634
|
+
type: "button",
|
|
4635
|
+
class: f(b.value),
|
|
4636
|
+
onClick: d
|
|
4637
|
+
}, [
|
|
4638
|
+
o("div", bs, [
|
|
4639
|
+
e.item.icon ? (a(), $(D, {
|
|
4640
|
+
key: 0,
|
|
4641
|
+
icon: e.item.icon,
|
|
4642
|
+
size: "md",
|
|
4643
|
+
animation: "scale",
|
|
4644
|
+
class: f(m.value)
|
|
4645
|
+
}, null, 8, ["icon", "class"])) : c("", !0),
|
|
4646
|
+
e.compact ? c("", !0) : (a(), n("span", gs, h(e.item.label), 1))
|
|
4647
|
+
]),
|
|
4648
|
+
e.compact ? c("", !0) : (a(), $(D, {
|
|
4649
|
+
key: 0,
|
|
4650
|
+
icon: _(W),
|
|
4651
|
+
size: "sm",
|
|
4652
|
+
animation: "none",
|
|
4653
|
+
class: f(["text-slate-400 transition-transform duration-200", { "rotate-180": r.value }])
|
|
4654
|
+
}, null, 8, ["icon", "class"]))
|
|
4655
|
+
], 2),
|
|
4656
|
+
A(Y, {
|
|
4657
|
+
"enter-active-class": "transition-all duration-200 ease-out",
|
|
4658
|
+
"enter-from-class": "opacity-0 max-h-0",
|
|
4659
|
+
"enter-to-class": "opacity-100 max-h-96",
|
|
4660
|
+
"leave-active-class": "transition-all duration-200 ease-in",
|
|
4661
|
+
"leave-from-class": "opacity-100 max-h-96",
|
|
4662
|
+
"leave-to-class": "opacity-0 max-h-0"
|
|
4663
|
+
}, {
|
|
4664
|
+
default: T(() => [
|
|
4665
|
+
q(o("div", xs, [
|
|
4666
|
+
o("div", ys, [
|
|
4667
|
+
(a(!0), n(M, null, L(e.item.children, (z, C) => (a(), $(O(v(z)), {
|
|
4668
|
+
key: C,
|
|
4669
|
+
to: z.to,
|
|
4670
|
+
href: z.href,
|
|
4671
|
+
class: f(g(z)),
|
|
4672
|
+
onClick: (x) => y(z)
|
|
4673
|
+
}, {
|
|
4674
|
+
default: T(() => [
|
|
4675
|
+
j(h(z.label) + " ", 1),
|
|
4676
|
+
z.badge ? (a(), $(ie, {
|
|
4677
|
+
key: 0,
|
|
4678
|
+
variant: z.badgeVariant || "info",
|
|
4679
|
+
size: "sm",
|
|
4680
|
+
class: "ml-auto"
|
|
4681
|
+
}, {
|
|
4682
|
+
default: T(() => [
|
|
4683
|
+
j(h(z.badge), 1)
|
|
4684
|
+
]),
|
|
4685
|
+
_: 2
|
|
4686
|
+
}, 1032, ["variant"])) : c("", !0)
|
|
4687
|
+
]),
|
|
4688
|
+
_: 2
|
|
4689
|
+
}, 1032, ["to", "href", "class", "onClick"]))), 128))
|
|
4690
|
+
])
|
|
4691
|
+
], 512), [
|
|
4692
|
+
[ce, r.value && !e.compact]
|
|
4693
|
+
])
|
|
4694
|
+
]),
|
|
4695
|
+
_: 1
|
|
4696
|
+
})
|
|
4697
|
+
])) : (a(), $(O(u.value), {
|
|
4698
|
+
key: 0,
|
|
4699
|
+
to: e.item.to,
|
|
4700
|
+
href: e.item.href,
|
|
4701
|
+
class: f(b.value),
|
|
4702
|
+
onClick: w
|
|
4703
|
+
}, {
|
|
4704
|
+
default: T(() => [
|
|
4705
|
+
o("div", ps, [
|
|
4706
|
+
e.item.icon ? (a(), $(D, {
|
|
4707
|
+
key: 0,
|
|
4708
|
+
icon: e.item.icon,
|
|
4709
|
+
size: "md",
|
|
4710
|
+
animation: "scale",
|
|
4711
|
+
class: f(m.value)
|
|
4712
|
+
}, null, 8, ["icon", "class"])) : c("", !0),
|
|
4713
|
+
e.compact ? c("", !0) : (a(), n("span", vs, h(e.item.label), 1))
|
|
4714
|
+
]),
|
|
4715
|
+
e.item.badge && !e.compact ? (a(), $(ie, {
|
|
4716
|
+
key: 0,
|
|
4717
|
+
variant: e.item.badgeVariant || "info",
|
|
4718
|
+
size: "sm"
|
|
4719
|
+
}, {
|
|
4720
|
+
default: T(() => [
|
|
4721
|
+
j(h(e.item.badge), 1)
|
|
4722
|
+
]),
|
|
4723
|
+
_: 1
|
|
4724
|
+
}, 8, ["variant"])) : c("", !0)
|
|
4725
|
+
]),
|
|
4726
|
+
_: 1
|
|
4727
|
+
}, 8, ["to", "href", "class"]))
|
|
4728
|
+
]));
|
|
4729
|
+
}
|
|
4730
|
+
}, ks = /* @__PURE__ */ N(ws, [["__scopeId", "data-v-ddd1087c"]]), $s = ["data-compact"], Cs = {
|
|
4731
|
+
key: 0,
|
|
4732
|
+
class: "text-lg font-bold text-slate-900"
|
|
4733
|
+
}, Ss = ["title"], Vs = {
|
|
4734
|
+
key: 1,
|
|
4735
|
+
class: "px-4 pb-4"
|
|
4736
|
+
}, Ds = {
|
|
4737
|
+
key: 0,
|
|
4738
|
+
class: "px-4 py-2 text-xs font-semibold text-slate-400 uppercase tracking-wider"
|
|
4739
|
+
}, zs = {
|
|
4740
|
+
__name: "DXSidebarMenu",
|
|
4741
|
+
props: {
|
|
4742
|
+
/** Заголовок сайдбара */
|
|
4743
|
+
title: {
|
|
4744
|
+
type: String,
|
|
4745
|
+
default: ""
|
|
4746
|
+
},
|
|
4747
|
+
/** Секции меню: [{ title?, items: [{ label, icon?, to?, href?, badge?, children? }] }] */
|
|
4748
|
+
sections: {
|
|
4749
|
+
type: Array,
|
|
4750
|
+
required: !0
|
|
4751
|
+
},
|
|
4752
|
+
/** Текущий активный элемент (path или id) */
|
|
4753
|
+
activeItem: {
|
|
4754
|
+
type: String,
|
|
4755
|
+
default: ""
|
|
4756
|
+
},
|
|
4757
|
+
/** Компактный режим (только иконки) */
|
|
4758
|
+
compact: {
|
|
4759
|
+
type: Boolean,
|
|
4760
|
+
default: !1
|
|
4761
|
+
},
|
|
4762
|
+
/** Можно ли сворачивать */
|
|
4763
|
+
collapsible: {
|
|
4764
|
+
type: Boolean,
|
|
4765
|
+
default: !0
|
|
4766
|
+
},
|
|
4767
|
+
/** Показывать поиск */
|
|
4768
|
+
searchable: {
|
|
4769
|
+
type: Boolean,
|
|
4770
|
+
default: !1
|
|
4771
|
+
},
|
|
4772
|
+
/** Ширина: sm | md | lg | full */
|
|
4773
|
+
width: {
|
|
4774
|
+
type: String,
|
|
4775
|
+
default: "md",
|
|
4776
|
+
validator: (e) => ["sm", "md", "lg", "full"].includes(e)
|
|
4777
|
+
},
|
|
4778
|
+
/** Фиксированная позиция */
|
|
4779
|
+
fixed: {
|
|
4780
|
+
type: Boolean,
|
|
4781
|
+
default: !1
|
|
4782
|
+
},
|
|
4783
|
+
/** Показывать бордер справа */
|
|
4784
|
+
bordered: {
|
|
4785
|
+
type: Boolean,
|
|
4786
|
+
default: !0
|
|
4787
|
+
}
|
|
4788
|
+
},
|
|
4789
|
+
emits: ["item-click", "update:compact"],
|
|
4790
|
+
setup(e, { emit: t }) {
|
|
4791
|
+
const l = e, s = t, r = B(""), i = B(l.compact), d = p(() => i.value);
|
|
4792
|
+
let u = !1;
|
|
4793
|
+
U(() => {
|
|
4794
|
+
try {
|
|
4795
|
+
u = !!(window != null && window.$router) || !1;
|
|
4796
|
+
} catch {
|
|
4797
|
+
u = !1;
|
|
4798
|
+
}
|
|
4799
|
+
}), ee("hasRouter", u);
|
|
4800
|
+
const v = {
|
|
4801
|
+
sm: "w-64",
|
|
4802
|
+
md: "w-80",
|
|
4803
|
+
lg: "w-96",
|
|
4804
|
+
full: "w-full"
|
|
4805
|
+
}, b = p(() => [
|
|
4806
|
+
"flex flex-col bg-white transition-all duration-300",
|
|
4807
|
+
i.value ? "w-20" : v[l.width],
|
|
4808
|
+
l.fixed && "fixed top-0 left-0 h-screen",
|
|
4809
|
+
l.bordered && "border-r border-slate-200",
|
|
4810
|
+
"shadow-sm"
|
|
4811
|
+
]), m = p(() => [
|
|
4812
|
+
"flex items-center gap-2 border-b border-slate-200 flex-shrink-0",
|
|
4813
|
+
i.value ? "justify-center px-2 py-3" : "px-4 py-5"
|
|
4814
|
+
]), g = p(() => [
|
|
4815
|
+
"flex-1 overflow-y-auto py-4 px-3 space-y-6",
|
|
4816
|
+
i.value && "px-2"
|
|
4817
|
+
]), w = p(() => [
|
|
4818
|
+
"px-4 py-4 border-t border-slate-200 flex-shrink-0",
|
|
4819
|
+
i.value && "px-2"
|
|
4820
|
+
]), y = p(() => {
|
|
4821
|
+
if (!r.value.trim()) return l.sections;
|
|
4822
|
+
const C = r.value.toLowerCase();
|
|
4823
|
+
return l.sections.map((x) => ({
|
|
4824
|
+
...x,
|
|
4825
|
+
items: x.items.filter((k) => {
|
|
4826
|
+
var R, oe;
|
|
4827
|
+
const I = (R = k.label) == null ? void 0 : R.toLowerCase().includes(C), X = (oe = k.children) == null ? void 0 : oe.some(
|
|
4828
|
+
(be) => {
|
|
4829
|
+
var re;
|
|
4830
|
+
return (re = be.label) == null ? void 0 : re.toLowerCase().includes(C);
|
|
4831
|
+
}
|
|
4832
|
+
);
|
|
4833
|
+
return I || X;
|
|
4834
|
+
})
|
|
4835
|
+
})).filter((x) => x.items.length > 0);
|
|
4836
|
+
}), S = (C) => l.activeItem ? C.to === l.activeItem || C.id === l.activeItem ? !0 : C.children ? C.children.some(
|
|
4837
|
+
(x) => x.to === l.activeItem || x.id === l.activeItem
|
|
4838
|
+
) : !1 : !1, Z = () => {
|
|
4839
|
+
i.value = !i.value, s("update:compact", i.value);
|
|
4840
|
+
}, z = (C, x) => {
|
|
4841
|
+
s("item-click", C, x);
|
|
4842
|
+
};
|
|
4843
|
+
return (C, x) => (a(), n("aside", {
|
|
4844
|
+
class: f(b.value),
|
|
4845
|
+
"data-component": "DXSidebarMenu",
|
|
4846
|
+
"data-compact": d.value
|
|
4847
|
+
}, [
|
|
4848
|
+
C.$slots.header || e.title || e.collapsible ? (a(), n("div", {
|
|
4849
|
+
key: 0,
|
|
4850
|
+
class: f(m.value)
|
|
4851
|
+
}, [
|
|
4852
|
+
d.value ? c("", !0) : V(C.$slots, "header", { key: 0 }, () => [
|
|
4853
|
+
e.title ? (a(), n("h2", Cs, h(e.title), 1)) : c("", !0)
|
|
4854
|
+
], !0),
|
|
4855
|
+
e.collapsible ? (a(), n("button", {
|
|
4856
|
+
key: 1,
|
|
4857
|
+
type: "button",
|
|
4858
|
+
class: f(["p-2 rounded-lg hover:bg-slate-100 transition-colors", { "ml-auto": !d.value }]),
|
|
4859
|
+
onClick: Z,
|
|
4860
|
+
title: d.value ? "Развернуть" : "Свернуть"
|
|
4861
|
+
}, [
|
|
4862
|
+
A(D, {
|
|
4863
|
+
icon: d.value ? _(et) : _(Qe),
|
|
4864
|
+
size: "md",
|
|
4865
|
+
animation: "scale",
|
|
4866
|
+
class: "text-slate-600"
|
|
4867
|
+
}, null, 8, ["icon"])
|
|
4868
|
+
], 10, Ss)) : c("", !0)
|
|
4869
|
+
], 2)) : c("", !0),
|
|
4870
|
+
e.searchable && !d.value ? (a(), n("div", Vs, [
|
|
4871
|
+
A(Ot, {
|
|
4872
|
+
modelValue: r.value,
|
|
4873
|
+
"onUpdate:modelValue": x[0] || (x[0] = (k) => r.value = k),
|
|
4874
|
+
placeholder: "Поиск...",
|
|
4875
|
+
size: "sm"
|
|
4876
|
+
}, {
|
|
4877
|
+
prefix: T(() => [
|
|
4878
|
+
A(D, {
|
|
4879
|
+
icon: _(dt),
|
|
4880
|
+
size: "sm",
|
|
4881
|
+
class: "text-slate-400"
|
|
4882
|
+
}, null, 8, ["icon"])
|
|
4883
|
+
]),
|
|
4884
|
+
_: 1
|
|
4885
|
+
}, 8, ["modelValue"])
|
|
4886
|
+
])) : c("", !0),
|
|
4887
|
+
o("nav", {
|
|
4888
|
+
class: f(g.value)
|
|
4889
|
+
}, [
|
|
4890
|
+
(a(!0), n(M, null, L(y.value, (k, I) => (a(), n("div", {
|
|
4891
|
+
key: I,
|
|
4892
|
+
class: "space-y-1"
|
|
4893
|
+
}, [
|
|
4894
|
+
k.title && !d.value ? (a(), n("div", Ds, h(k.title), 1)) : c("", !0),
|
|
4895
|
+
k.title && d.value ? (a(), $(Ct, {
|
|
4896
|
+
key: 1,
|
|
4897
|
+
spacing: "sm"
|
|
4898
|
+
})) : c("", !0),
|
|
4899
|
+
(a(!0), n(M, null, L(k.items, (X, R) => (a(), $(ks, {
|
|
4900
|
+
key: R,
|
|
4901
|
+
item: X,
|
|
4902
|
+
active: S(X),
|
|
4903
|
+
compact: d.value,
|
|
4904
|
+
onClick: z,
|
|
4905
|
+
onChildClick: z
|
|
4906
|
+
}, null, 8, ["item", "active", "compact"]))), 128))
|
|
4907
|
+
]))), 128))
|
|
4908
|
+
], 2),
|
|
4909
|
+
C.$slots.footer && !d.value ? (a(), n("div", {
|
|
4910
|
+
key: 2,
|
|
4911
|
+
class: f(w.value)
|
|
4912
|
+
}, [
|
|
4913
|
+
V(C.$slots, "footer", {}, void 0, !0)
|
|
4914
|
+
], 2)) : c("", !0)
|
|
4915
|
+
], 10, $s));
|
|
4916
|
+
}
|
|
4917
|
+
}, Zo = /* @__PURE__ */ N(zs, [["__scopeId", "data-v-0cacd444"]]), Bs = {
|
|
4535
4918
|
class: "border border-slate-200 rounded-2xl overflow-hidden",
|
|
4536
4919
|
"data-component": "DXTable"
|
|
4537
|
-
},
|
|
4920
|
+
}, Xs = { class: "min-w-full divide-y divide-slate-200" }, Is = { class: "bg-slate-50" }, As = { class: "divide-y divide-slate-200 bg-white" }, To = {
|
|
4538
4921
|
__name: "DXTable",
|
|
4539
4922
|
props: {
|
|
4540
4923
|
/** Массив заголовков колонок */
|
|
4541
4924
|
headers: { type: Array, default: () => [] }
|
|
4542
4925
|
},
|
|
4543
4926
|
setup(e) {
|
|
4544
|
-
return (t, l) => (a(), n("div",
|
|
4545
|
-
o("table",
|
|
4546
|
-
o("thead",
|
|
4927
|
+
return (t, l) => (a(), n("div", Bs, [
|
|
4928
|
+
o("table", Xs, [
|
|
4929
|
+
o("thead", Is, [
|
|
4547
4930
|
o("tr", null, [
|
|
4548
|
-
(a(!0), n(M, null,
|
|
4931
|
+
(a(!0), n(M, null, L(e.headers, (s) => (a(), n("th", {
|
|
4549
4932
|
key: s,
|
|
4550
4933
|
class: "px-4 py-3 text-left text-xs font-semibold text-slate-600 uppercase tracking-wide"
|
|
4551
|
-
},
|
|
4934
|
+
}, h(s), 1))), 128))
|
|
4552
4935
|
])
|
|
4553
4936
|
]),
|
|
4554
|
-
o("tbody",
|
|
4555
|
-
|
|
4937
|
+
o("tbody", As, [
|
|
4938
|
+
V(t.$slots, "default")
|
|
4556
4939
|
])
|
|
4557
4940
|
])
|
|
4558
4941
|
]));
|
|
4559
4942
|
}
|
|
4560
|
-
},
|
|
4943
|
+
}, js = {
|
|
4561
4944
|
class: "flex flex-wrap gap-2",
|
|
4562
4945
|
"data-component": "DXTabs"
|
|
4563
|
-
},
|
|
4946
|
+
}, Ms = ["onClick"], Ls = { class: "flex items-center gap-2" }, No = {
|
|
4564
4947
|
__name: "DXTabs",
|
|
4565
4948
|
props: {
|
|
4566
4949
|
/** Текущее значение (v-model) */
|
|
@@ -4575,91 +4958,91 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4575
4958
|
emits: ["update:modelValue"],
|
|
4576
4959
|
setup(e) {
|
|
4577
4960
|
const t = e, l = (s) => s.iconAnimation ? s.iconAnimation : t.animateActiveOnly ? t.modelValue === s.value ? t.iconAnimation : "none" : t.iconAnimation;
|
|
4578
|
-
return (s, r) => (a(), n("div",
|
|
4579
|
-
(a(!0), n(M, null,
|
|
4961
|
+
return (s, r) => (a(), n("div", js, [
|
|
4962
|
+
(a(!0), n(M, null, L(e.tabs, (i) => (a(), n("button", {
|
|
4580
4963
|
key: i.value,
|
|
4581
4964
|
class: f(["tab-btn px-3 py-2 rounded-xl text-sm font-semibold border transition", e.modelValue === i.value ? "bg-slate-800 text-white border-slate-800" : "border-slate-200 text-slate-700 hover:border-slate-300"]),
|
|
4582
4965
|
onClick: (d) => s.$emit("update:modelValue", i.value)
|
|
4583
4966
|
}, [
|
|
4584
|
-
o("span",
|
|
4585
|
-
i.icon ? (a(),
|
|
4967
|
+
o("span", Ls, [
|
|
4968
|
+
i.icon ? (a(), $(D, {
|
|
4586
4969
|
key: 0,
|
|
4587
4970
|
icon: i.icon,
|
|
4588
4971
|
size: "sm",
|
|
4589
4972
|
animation: l(i)
|
|
4590
4973
|
}, null, 8, ["icon", "animation"])) : c("", !0),
|
|
4591
|
-
o("span", null,
|
|
4974
|
+
o("span", null, h(i.label), 1),
|
|
4592
4975
|
i.count !== void 0 ? (a(), n("span", {
|
|
4593
4976
|
key: 1,
|
|
4594
4977
|
class: f(["inline-flex items-center justify-center min-w-[24px] px-2 py-1 text-[11px] rounded-full", e.modelValue === i.value ? "bg-white/20 text-white" : "bg-slate-100 text-slate-700"])
|
|
4595
|
-
},
|
|
4978
|
+
}, h(i.count), 3)) : c("", !0)
|
|
4596
4979
|
])
|
|
4597
|
-
], 10,
|
|
4980
|
+
], 10, Ms))), 128))
|
|
4598
4981
|
]));
|
|
4599
4982
|
}
|
|
4600
|
-
},
|
|
4983
|
+
}, Po = {
|
|
4601
4984
|
type: String,
|
|
4602
4985
|
default: "md",
|
|
4603
4986
|
validator: (e) => ["xs", "sm", "md", "lg", "xl"].includes(e)
|
|
4604
|
-
},
|
|
4987
|
+
}, Ro = {
|
|
4605
4988
|
type: String,
|
|
4606
4989
|
default: "info",
|
|
4607
4990
|
validator: (e) => ["info", "success", "warning", "danger"].includes(e)
|
|
4608
|
-
},
|
|
4991
|
+
}, qo = {
|
|
4609
4992
|
type: String,
|
|
4610
4993
|
default: "primary",
|
|
4611
4994
|
validator: (e) => ["primary", "ghost", "danger", "success", "warning", "outline"].includes(e)
|
|
4612
|
-
},
|
|
4995
|
+
}, Ho = {
|
|
4613
4996
|
type: String,
|
|
4614
4997
|
default: "none",
|
|
4615
4998
|
validator: (e) => ["none", "wiggle", "scale", "rotate"].includes(e)
|
|
4616
|
-
},
|
|
4999
|
+
}, Fo = {
|
|
4617
5000
|
type: Boolean,
|
|
4618
5001
|
default: !1
|
|
4619
|
-
},
|
|
5002
|
+
}, Eo = {
|
|
4620
5003
|
type: String,
|
|
4621
5004
|
default: ""
|
|
4622
|
-
},
|
|
5005
|
+
}, Go = {
|
|
4623
5006
|
type: String,
|
|
4624
5007
|
default: ""
|
|
4625
|
-
},
|
|
5008
|
+
}, Uo = {
|
|
4626
5009
|
type: String,
|
|
4627
5010
|
default: ""
|
|
4628
|
-
},
|
|
5011
|
+
}, Ko = {
|
|
4629
5012
|
type: String,
|
|
4630
5013
|
default: ""
|
|
4631
|
-
},
|
|
5014
|
+
}, ue = {
|
|
4632
5015
|
favorite: {
|
|
4633
|
-
activeIcon:
|
|
4634
|
-
inactiveIcon:
|
|
5016
|
+
activeIcon: Xe,
|
|
5017
|
+
inactiveIcon: rt,
|
|
4635
5018
|
activeVariant: "danger",
|
|
4636
5019
|
inactiveVariant: "ghost",
|
|
4637
5020
|
iconAnimation: "scale"
|
|
4638
5021
|
},
|
|
4639
5022
|
bookmark: {
|
|
4640
|
-
activeIcon:
|
|
4641
|
-
inactiveIcon:
|
|
5023
|
+
activeIcon: De,
|
|
5024
|
+
inactiveIcon: We,
|
|
4642
5025
|
activeVariant: "warning",
|
|
4643
5026
|
inactiveVariant: "ghost",
|
|
4644
5027
|
iconAnimation: "scale"
|
|
4645
5028
|
},
|
|
4646
5029
|
star: {
|
|
4647
|
-
activeIcon:
|
|
4648
|
-
inactiveIcon:
|
|
5030
|
+
activeIcon: Le,
|
|
5031
|
+
inactiveIcon: ht,
|
|
4649
5032
|
activeVariant: "warning",
|
|
4650
5033
|
inactiveVariant: "ghost",
|
|
4651
5034
|
iconAnimation: "scale"
|
|
4652
5035
|
},
|
|
4653
5036
|
notifications: {
|
|
4654
|
-
activeIcon:
|
|
4655
|
-
inactiveIcon:
|
|
5037
|
+
activeIcon: Ve,
|
|
5038
|
+
inactiveIcon: Ye,
|
|
4656
5039
|
activeVariant: "primary",
|
|
4657
5040
|
inactiveVariant: "ghost",
|
|
4658
5041
|
iconAnimation: "wiggle"
|
|
4659
5042
|
},
|
|
4660
5043
|
visibility: {
|
|
4661
|
-
activeIcon:
|
|
4662
|
-
inactiveIcon:
|
|
5044
|
+
activeIcon: se,
|
|
5045
|
+
inactiveIcon: Be,
|
|
4663
5046
|
activeLabel: "Visible",
|
|
4664
5047
|
inactiveLabel: "Hidden",
|
|
4665
5048
|
activeVariant: "success",
|
|
@@ -4667,8 +5050,8 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4667
5050
|
iconAnimation: "scale"
|
|
4668
5051
|
},
|
|
4669
5052
|
lock: {
|
|
4670
|
-
activeIcon:
|
|
4671
|
-
inactiveIcon:
|
|
5053
|
+
activeIcon: Ie,
|
|
5054
|
+
inactiveIcon: it,
|
|
4672
5055
|
activeLabel: "Locked",
|
|
4673
5056
|
inactiveLabel: "Unlocked",
|
|
4674
5057
|
activeVariant: "danger",
|
|
@@ -4676,8 +5059,8 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4676
5059
|
iconAnimation: "rotate"
|
|
4677
5060
|
},
|
|
4678
5061
|
theme: {
|
|
4679
|
-
activeIcon:
|
|
4680
|
-
inactiveIcon:
|
|
5062
|
+
activeIcon: Ae,
|
|
5063
|
+
inactiveIcon: bt,
|
|
4681
5064
|
activeLabel: "Dark",
|
|
4682
5065
|
inactiveLabel: "Light",
|
|
4683
5066
|
activeVariant: "primary",
|
|
@@ -4685,15 +5068,15 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4685
5068
|
iconAnimation: "rotate"
|
|
4686
5069
|
},
|
|
4687
5070
|
sound: {
|
|
4688
|
-
activeIcon:
|
|
4689
|
-
inactiveIcon:
|
|
5071
|
+
activeIcon: Me,
|
|
5072
|
+
inactiveIcon: pt,
|
|
4690
5073
|
activeVariant: "danger",
|
|
4691
5074
|
inactiveVariant: "primary",
|
|
4692
5075
|
iconAnimation: "scale"
|
|
4693
5076
|
},
|
|
4694
5077
|
playPause: {
|
|
4695
|
-
activeIcon:
|
|
4696
|
-
inactiveIcon:
|
|
5078
|
+
activeIcon: je,
|
|
5079
|
+
inactiveIcon: ct,
|
|
4697
5080
|
activeLabel: "Pause",
|
|
4698
5081
|
inactiveLabel: "Play",
|
|
4699
5082
|
activeVariant: "warning",
|
|
@@ -4701,84 +5084,86 @@ const xl = ["data-variant"], yl = { class: "flex-1" }, Hs = {
|
|
|
4701
5084
|
iconAnimation: "scale"
|
|
4702
5085
|
}
|
|
4703
5086
|
};
|
|
4704
|
-
function
|
|
4705
|
-
return
|
|
5087
|
+
function Yo(e) {
|
|
5088
|
+
return ue[e] || ue.favorite;
|
|
4706
5089
|
}
|
|
4707
5090
|
export {
|
|
4708
|
-
|
|
4709
|
-
|
|
4710
|
-
|
|
4711
|
-
|
|
4712
|
-
|
|
4713
|
-
|
|
4714
|
-
|
|
4715
|
-
|
|
4716
|
-
|
|
4717
|
-
|
|
4718
|
-
|
|
4719
|
-
|
|
4720
|
-
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
|
|
4728
|
-
|
|
4729
|
-
|
|
4730
|
-
|
|
4731
|
-
|
|
4732
|
-
|
|
4733
|
-
|
|
4734
|
-
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4743
|
-
|
|
4744
|
-
|
|
4745
|
-
|
|
4746
|
-
|
|
4747
|
-
|
|
4748
|
-
|
|
4749
|
-
|
|
4750
|
-
|
|
4751
|
-
|
|
4752
|
-
|
|
4753
|
-
|
|
4754
|
-
|
|
4755
|
-
|
|
4756
|
-
|
|
4757
|
-
|
|
4758
|
-
|
|
4759
|
-
|
|
4760
|
-
|
|
4761
|
-
|
|
4762
|
-
|
|
4763
|
-
|
|
4764
|
-
|
|
4765
|
-
|
|
4766
|
-
|
|
4767
|
-
|
|
4768
|
-
|
|
4769
|
-
|
|
4770
|
-
|
|
4771
|
-
|
|
4772
|
-
|
|
4773
|
-
|
|
4774
|
-
|
|
4775
|
-
|
|
4776
|
-
|
|
4777
|
-
|
|
4778
|
-
|
|
4779
|
-
|
|
4780
|
-
|
|
4781
|
-
|
|
4782
|
-
|
|
4783
|
-
|
|
5091
|
+
Mo as DXAccordion,
|
|
5092
|
+
ho as DXActionButtons,
|
|
5093
|
+
bo as DXAlert,
|
|
5094
|
+
Ks as DXAvatar,
|
|
5095
|
+
ie as DXBadge,
|
|
5096
|
+
Ps as DXBlockquote,
|
|
5097
|
+
Us as DXBox,
|
|
5098
|
+
go as DXBreadcrumb,
|
|
5099
|
+
Ys as DXButton,
|
|
5100
|
+
xo as DXButtonGroup,
|
|
5101
|
+
Ws as DXCard,
|
|
5102
|
+
Js as DXCheckbox,
|
|
5103
|
+
ve as DXCloseButton,
|
|
5104
|
+
Ns as DXCode,
|
|
5105
|
+
yo as DXComboBox,
|
|
5106
|
+
qs as DXContainer,
|
|
5107
|
+
wo as DXCopyField,
|
|
5108
|
+
ko as DXDatePicker,
|
|
5109
|
+
Ct as DXDivider,
|
|
5110
|
+
Lo as DXDropdown,
|
|
5111
|
+
Qs as DXDropdownItem,
|
|
5112
|
+
_o as DXEmptyState,
|
|
5113
|
+
$o as DXFileUpload,
|
|
5114
|
+
Co as DXFilterGroup,
|
|
5115
|
+
Fs as DXFlex,
|
|
5116
|
+
So as DXFormControl,
|
|
5117
|
+
Hs as DXGrid,
|
|
5118
|
+
Os as DXHeading,
|
|
5119
|
+
D as DXIcon,
|
|
5120
|
+
Ot as DXInput,
|
|
5121
|
+
eo as DXInputAddon,
|
|
5122
|
+
Vo as DXInputGroup,
|
|
5123
|
+
Do as DXInputMask,
|
|
5124
|
+
Ts as DXLabel,
|
|
5125
|
+
Rs as DXList,
|
|
5126
|
+
to as DXLoader,
|
|
5127
|
+
Oo as DXModal,
|
|
5128
|
+
zo as DXPagination,
|
|
5129
|
+
Bo as DXPasswordInput,
|
|
5130
|
+
lo as DXProgress,
|
|
5131
|
+
ao as DXRadio,
|
|
5132
|
+
Xo as DXRadioCard,
|
|
5133
|
+
Io as DXRadioGroup,
|
|
5134
|
+
Ao as DXSearchSelect,
|
|
5135
|
+
jo as DXSegmentedControl,
|
|
5136
|
+
no as DXSelect,
|
|
5137
|
+
Zo as DXSidebarMenu,
|
|
5138
|
+
ks as DXSidebarMenuItem,
|
|
5139
|
+
so as DXSkeleton,
|
|
5140
|
+
oo as DXSlider,
|
|
5141
|
+
Gs as DXSpacer,
|
|
5142
|
+
Es as DXStack,
|
|
5143
|
+
To as DXTable,
|
|
5144
|
+
No as DXTabs,
|
|
5145
|
+
ro as DXTags,
|
|
5146
|
+
Zs as DXText,
|
|
5147
|
+
io as DXTextarea,
|
|
5148
|
+
mo as DXToast,
|
|
5149
|
+
fo as DXToggle,
|
|
5150
|
+
po as DXToggleButton,
|
|
5151
|
+
vo as DXTooltip,
|
|
5152
|
+
de as DXValidationIcon,
|
|
5153
|
+
ue as TOGGLE_PRESETS,
|
|
5154
|
+
H as VARIANT_CONFIGS,
|
|
5155
|
+
qo as buttonVariantProp,
|
|
5156
|
+
Fo as disabledProp,
|
|
5157
|
+
Uo as errorProp,
|
|
5158
|
+
Ko as helperProp,
|
|
5159
|
+
Ho as iconAnimationProp,
|
|
5160
|
+
Eo as labelProp,
|
|
5161
|
+
Go as placeholderProp,
|
|
5162
|
+
Po as sizeProp,
|
|
5163
|
+
he as useComponentSize,
|
|
5164
|
+
Yo as useTogglePreset,
|
|
5165
|
+
uo as useVariantClasses,
|
|
5166
|
+
Dl as useVariantConfig,
|
|
5167
|
+
co as useVariantIcon,
|
|
5168
|
+
Ro as variantProp
|
|
4784
5169
|
};
|