@studio-west/component-sw 0.11.18 → 0.11.19

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.
Files changed (54) hide show
  1. package/dist/SwAlert-BN8mwcp_.js +89 -0
  2. package/dist/SwButton-B6iaLa_y.js +45 -0
  3. package/dist/SwButtonGroup-Dmsbam44.js +59 -0
  4. package/dist/SwCollapse-Dy2XxzJg.js +31 -0
  5. package/dist/SwDatePicker-CNGIsEmm.js +262 -0
  6. package/dist/SwDropdown-DMkEn-su.js +114 -0
  7. package/dist/SwDropdownItem-CscV8R77.js +36 -0
  8. package/dist/SwDropdownNew-TXu5V6xZ.js +107 -0
  9. package/dist/SwFormItem-DQJohClb.js +24 -0
  10. package/dist/SwGide-9v0z3Y49.js +125 -0
  11. package/dist/SwIcon-0PtPyq2k.js +35 -0
  12. package/dist/SwInput-fqZBIN92.js +102 -0
  13. package/dist/SwMessage-BvvbQ1cP.js +55 -0
  14. package/dist/SwSection-fNuXuePo.js +32 -0
  15. package/dist/SwSelect-CuBxoXju.js +1594 -0
  16. package/dist/SwSkeleton-DIwAcNfp.js +28 -0
  17. package/dist/SwSkeletonItem-D3Wjgl7J.js +35 -0
  18. package/dist/SwSlider-CyLU7COn.js +179 -0
  19. package/dist/SwSwitch-DluxsVEW.js +56 -0
  20. package/dist/SwTable-D5v0TIuo.js +133 -0
  21. package/dist/SwTableColumn-CCqBUIhN.js +28 -0
  22. package/dist/SwTabs-zHhFxzck.js +32 -0
  23. package/dist/SwTabsPane-BY5KEs_h.js +36 -0
  24. package/dist/component-sw.css +2 -1
  25. package/dist/index.cjs +6 -6
  26. package/dist/index.js +58 -7
  27. package/dist/utils-CGgSSFR1.js +52 -0
  28. package/package.json +1 -1
  29. package/src/components/SwButton.vue +1 -0
  30. package/src/components/SwButtonGroup.vue +1 -0
  31. package/src/components/SwTable.vue +14 -5
  32. package/dist/SwButton-yS_tKW9w.js +0 -4
  33. package/dist/SwButton.vue_vue_type_script_setup_true_lang-aODPwFa6.js +0 -34
  34. package/dist/SwButtonGroup-D9HH5POO.js +0 -49
  35. package/dist/SwCollapse-CuN3EbT6.js +0 -33
  36. package/dist/SwDatePicker-DHP73Q1c.js +0 -366
  37. package/dist/SwDropdown-DQGTnnKw.js +0 -111
  38. package/dist/SwDropdownItem-Cua7E0JN.js +0 -31
  39. package/dist/SwDropdownNew-CYfjZFd2.js +0 -107
  40. package/dist/SwFormItem-CaA4jsoa.js +0 -24
  41. package/dist/SwGide-BcLOtvRd.js +0 -138
  42. package/dist/SwInput-m4LDJuNs.js +0 -90
  43. package/dist/SwMessage-yOG9UmvF.js +0 -57
  44. package/dist/SwSection-CQe2kE0O.js +0 -34
  45. package/dist/SwSelect-BxbCfof-.js +0 -1883
  46. package/dist/SwSkeleton-B7ysp8L9.js +0 -26
  47. package/dist/SwSkeletonItem-CU7LvihY.js +0 -29
  48. package/dist/SwSlider--meCHr2D.js +0 -158
  49. package/dist/SwSwitch-DeMdyD0-.js +0 -47
  50. package/dist/SwTable-BSCqB4nS.js +0 -156
  51. package/dist/SwTableColumn-BLF5bPuJ.js +0 -28
  52. package/dist/SwTabs-DkSI4oAh.js +0 -38
  53. package/dist/SwTabsPane-Dwtj8g7T.js +0 -38
  54. package/dist/index-DX9QZTeL.js +0 -188
@@ -0,0 +1,28 @@
1
+ import e from "./SwSkeletonItem-D3Wjgl7J.js";
2
+ import { createElementBlock as t, createVNode as n, normalizeClass as r, openBlock as i, renderSlot as a } from "vue";
3
+ //#region src/components/SwSkeleton.vue
4
+ var o = {
5
+ __name: "SwSkeleton",
6
+ props: {
7
+ class: {
8
+ type: String,
9
+ default: ""
10
+ },
11
+ visual: {
12
+ type: Boolean,
13
+ default: !1
14
+ }
15
+ },
16
+ setup(o) {
17
+ let s = o;
18
+ return (o, c) => s.visual ? a(o.$slots, "default", { key: 0 }) : (i(), t("div", {
19
+ key: 1,
20
+ class: r(["sw-skeleton", s.class])
21
+ }, [a(o.$slots, "skeleton", {}, () => [n(e, {
22
+ animate: "",
23
+ size: "small"
24
+ })])], 2));
25
+ }
26
+ };
27
+ //#endregion
28
+ export { o as default };
@@ -0,0 +1,35 @@
1
+ import { computed as e, createCommentVNode as t, createElementBlock as n, normalizeClass as r, normalizeStyle as i, openBlock as a } from "vue";
2
+ //#region src/components/SwSkeletonItem.vue
3
+ var o = { key: 0 }, s = {
4
+ __name: "SwSkeletonItem",
5
+ props: {
6
+ width: {
7
+ type: String,
8
+ default: "100"
9
+ },
10
+ class: {
11
+ type: String,
12
+ default: ""
13
+ },
14
+ animate: {
15
+ type: Boolean,
16
+ default: !1
17
+ },
18
+ size: {
19
+ type: String,
20
+ default: ""
21
+ }
22
+ },
23
+ setup(s) {
24
+ let c = s, l = e(() => {
25
+ let e = ["sw-skeleton-item"];
26
+ return c.size.length > 0 && e.push("sw-" + c.size), c.animate && e.push("sw-animate"), c.class.length > 0 && e.push(c.class), e;
27
+ }), u = e(() => ({ width: c.width + "%" }));
28
+ return (e, s) => (a(), n("div", {
29
+ class: r(l.value),
30
+ style: i(u.value)
31
+ }, [c.animate ? (a(), n("div", o)) : t("", !0)], 6));
32
+ }
33
+ };
34
+ //#endregion
35
+ export { s as default };
@@ -0,0 +1,179 @@
1
+ import { t as e } from "./utils-CGgSSFR1.js";
2
+ import { Fragment as t, computed as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, mergeModels as o, normalizeClass as s, normalizeStyle as c, onMounted as l, onUnmounted as u, openBlock as d, ref as f, renderList as p, renderSlot as m, toDisplayString as h, useModel as g, withModifiers as _ } from "vue";
3
+ //#region src/components/SwSlider.vue
4
+ var v = [
5
+ "onMouseenter",
6
+ "onMouseleave",
7
+ "onFocus",
8
+ "onBlur",
9
+ "onMousedown",
10
+ "onTouchstart"
11
+ ], y = {
12
+ __name: "SwSlider",
13
+ props: /* @__PURE__ */ o({
14
+ class: {
15
+ type: String,
16
+ default: ""
17
+ },
18
+ size: {
19
+ type: String,
20
+ default: ""
21
+ },
22
+ min: {
23
+ type: Number,
24
+ default: 0
25
+ },
26
+ max: {
27
+ type: Number,
28
+ default: 100
29
+ },
30
+ step: {
31
+ type: Number,
32
+ default: 1
33
+ },
34
+ vertical: {
35
+ type: Boolean,
36
+ default: !1
37
+ },
38
+ showValue: {
39
+ type: Boolean,
40
+ default: !1
41
+ }
42
+ }, {
43
+ modelValue: {
44
+ type: [Number, Array],
45
+ required: !0
46
+ },
47
+ modelModifiers: {}
48
+ }),
49
+ emits: ["update:modelValue"],
50
+ setup(o) {
51
+ let y = g(o, "modelValue"), b = o, x = f([]), S = f([]), C = n(() => {
52
+ let e = ["sw-slider"];
53
+ return b.size.length > 0 && e.push("sw-" + b.size), b.class.length > 0 && e.push(b.class), b.vertical && e.push("vertical"), e;
54
+ }), w = (e) => {
55
+ let t = [...x.value];
56
+ t[e] = !0, x.value = t;
57
+ }, T = (e) => {
58
+ let t = [...x.value];
59
+ t[e] = !1, x.value = t;
60
+ }, E = (t) => {
61
+ let n = document.querySelector(".sw-slider");
62
+ return n ? e(n, b.vertical) : b.vertical ? {
63
+ right: "100%",
64
+ marginRight: "10px"
65
+ } : {
66
+ bottom: "100%",
67
+ marginBottom: "10px"
68
+ };
69
+ }, D = n(() => Array.isArray(y.value)), O = n({
70
+ get() {
71
+ return D.value ? [...y.value] : [y.value];
72
+ },
73
+ set(e) {
74
+ D.value ? y.value = [...e].sort((e, t) => e - t) : y.value = e[0];
75
+ }
76
+ }), k = n(() => {
77
+ let e = b.max - b.min;
78
+ return O.value.map((t) => e === 0 ? 0 : (t - b.min) / e * 100);
79
+ }), A = n(() => {
80
+ if (b.vertical) if (D.value) {
81
+ let e = k.value[0] || 0, t = k.value[k.value.length - 1] || 0, n = Math.min(e, t);
82
+ return {
83
+ height: `${Math.max(e, t) - n}%`,
84
+ top: `${n}%`,
85
+ left: "0",
86
+ width: "100%"
87
+ };
88
+ } else return {
89
+ height: `${k.value[0] || 0}%`,
90
+ top: "0",
91
+ left: "0",
92
+ width: "100%"
93
+ };
94
+ else if (D.value) {
95
+ let e = k.value[0] || 0, t = k.value[k.value.length - 1] || 0, n = Math.min(e, t);
96
+ return {
97
+ width: `${Math.max(e, t) - n}%`,
98
+ left: `${n}%`,
99
+ top: "0",
100
+ height: "100%"
101
+ };
102
+ } else return {
103
+ width: `${k.value[0] || 0}%`,
104
+ left: "0",
105
+ top: "0",
106
+ height: "100%"
107
+ };
108
+ }), j = n(() => k.value.map((e, t) => b.vertical ? {
109
+ top: `${e}%`,
110
+ zIndex: O.value.length - t
111
+ } : {
112
+ left: `${e}%`,
113
+ zIndex: O.value.length - t
114
+ }));
115
+ function M(e) {
116
+ if (D.value) return;
117
+ let t = e.currentTarget.closest(".sw-slider");
118
+ if (!t) return;
119
+ let n = t.getBoundingClientRect(), r = b.vertical ? (e.clientY - n.top) / n.height : (e.clientX - n.left) / n.width, i = Math.max(0, Math.min(1, r)), a = b.max - b.min, o = b.min + i * a, s = Math.round((o - b.min) / b.step);
120
+ o = b.min + s * b.step, o = Math.max(b.min, Math.min(b.max, o)), O.value = [o], setTimeout(() => {
121
+ let e = [...S.value];
122
+ e[0] = E(0), S.value = e;
123
+ }, 0);
124
+ }
125
+ let N = f(!1), P = f(null), F = f(null);
126
+ function I(e, t) {
127
+ let n = e.target.closest(".sw-slider");
128
+ n && (F.value = n.getBoundingClientRect(), P.value = t, N.value = !0, z(e.clientX || e.touches?.[0]?.clientX, e.clientY || e.touches?.[0]?.clientY));
129
+ }
130
+ function L(e) {
131
+ N.value && (e.preventDefault?.(), z(e.clientX || e.touches?.[0]?.clientX, e.clientY || e.touches?.[0]?.clientY));
132
+ }
133
+ function R() {
134
+ N.value = !1, P.value = null;
135
+ }
136
+ function z(e, t) {
137
+ if (!F.value || P.value === null) return;
138
+ let n = F.value, r = b.vertical ? (t - n.top) / n.height : (e - n.left) / n.width, i = Math.max(0, Math.min(1, r)), a = b.max - b.min, o = b.min + i * a, s = Math.round((o - b.min) / b.step);
139
+ o = b.min + s * b.step, o = Math.max(b.min, Math.min(b.max, o));
140
+ let c = [...O.value];
141
+ c[P.value] = o, O.value = c, setTimeout(() => {
142
+ let e = [...S.value];
143
+ e[P.value] = E(P.value), S.value = e;
144
+ }, 0);
145
+ }
146
+ return l(() => {
147
+ window.addEventListener("mousemove", L), window.addEventListener("mouseup", R), window.addEventListener("touchmove", L, { passive: !1 }), window.addEventListener("touchend", R), x.value = Array(O.value.length).fill(!1);
148
+ }), u(() => {
149
+ window.removeEventListener("mousemove", L), window.removeEventListener("mouseup", R), window.removeEventListener("touchmove", L), window.removeEventListener("touchend", R);
150
+ }), (e, n) => (d(), i("div", { class: s(C.value) }, [a("div", {
151
+ class: "track",
152
+ onClick: M,
153
+ onMousedown: n[0] ||= _((e) => I(e, 0), ["prevent"]),
154
+ onTouchstart: n[1] ||= _((e) => I(e.touches[0], 0), ["prevent"])
155
+ }, [a("div", {
156
+ class: "fill",
157
+ style: c(A.value)
158
+ }, null, 4)], 32), (d(!0), i(t, null, p(O.value, (t, n) => (d(), i("div", {
159
+ class: "thumb",
160
+ key: n,
161
+ style: c(j.value[n]),
162
+ onMouseenter: (e) => w(n),
163
+ onMouseleave: (e) => T(n),
164
+ onFocus: (e) => w(n),
165
+ onBlur: (e) => T(n),
166
+ onMousedown: _((e) => I(e, n), ["prevent"]),
167
+ onTouchstart: _((e) => I(e.touches[0], n), ["prevent"])
168
+ }, [m(e.$slots, "default", {
169
+ index: n,
170
+ value: t
171
+ }), x.value[n] && o.showValue ? (d(), i("div", {
172
+ key: 0,
173
+ class: s(["tooltip", { "tooltip-vertical": b.vertical }]),
174
+ style: c(E(n))
175
+ }, h(t), 7)) : r("", !0)], 44, v))), 128))], 2));
176
+ }
177
+ };
178
+ //#endregion
179
+ export { y as default };
@@ -0,0 +1,56 @@
1
+ import { computed as e, createElementBlock as t, createElementVNode as n, defineComponent as r, mergeModels as i, normalizeClass as a, openBlock as o, renderSlot as s, useModel as c } from "vue";
2
+ //#region src/components/SwSwitch.vue?vue&type=script&setup=true&lang.ts
3
+ var l = [
4
+ "name",
5
+ "id",
6
+ "checked"
7
+ ], u = [
8
+ "for",
9
+ "data-onlabel",
10
+ "data-offlabel"
11
+ ], d = /* @__PURE__ */ r({
12
+ __name: "SwSwitch",
13
+ props: /* @__PURE__ */ i({
14
+ id: { default: "checkbox" },
15
+ class: { default: "" },
16
+ name: { default: "" },
17
+ on: { default: "" },
18
+ off: { default: "" },
19
+ size: { default: "" },
20
+ checkbox: {
21
+ type: Boolean,
22
+ default: !1
23
+ }
24
+ }, {
25
+ modelValue: { type: Boolean },
26
+ modelModifiers: {}
27
+ }),
28
+ emits: ["update:modelValue"],
29
+ setup(r) {
30
+ let i = c(r, "modelValue"), d = r, f = e(() => {
31
+ let e = ["sw-switch"];
32
+ return d.size.length > 0 && e.push("sw-" + d.size), d.checkbox && e.push("sw-checkbox"), d.class.length > 0 && e.push(d.class), e;
33
+ }), p = (e) => {
34
+ i.value = e.target.checked;
35
+ };
36
+ return (e, r) => (o(), t("div", { class: a(f.value) }, [
37
+ n("input", {
38
+ type: "checkbox",
39
+ name: d.name,
40
+ class: "sw-control",
41
+ id: d.id,
42
+ checked: i.value,
43
+ onChange: p
44
+ }, null, 40, l),
45
+ n("label", {
46
+ for: d.id,
47
+ class: "sw-label",
48
+ "data-onlabel": d.on,
49
+ "data-offlabel": d.off
50
+ }, null, 8, u),
51
+ s(e.$slots, "default")
52
+ ], 2));
53
+ }
54
+ });
55
+ //#endregion
56
+ export { d as default };
@@ -0,0 +1,133 @@
1
+ import e from "./SwTableColumn-CCqBUIhN.js";
2
+ import { Fragment as t, computed as n, createElementBlock as r, createElementVNode as i, createTextVNode as a, normalizeStyle as o, onMounted as s, openBlock as c, ref as l, renderList as u, renderSlot as d, toDisplayString as f, useSlots as p } from "vue";
3
+ //#region src/components/SwTable.vue
4
+ var m = { class: "sw-table" }, h = ["colspan", "rowspan"], g = ["colspan", "rowspan"], _ = {
5
+ __name: "SwTable",
6
+ props: { data: {
7
+ type: Array,
8
+ required: !0
9
+ } },
10
+ setup(_) {
11
+ let v = _, y = p(), b = l([]);
12
+ function x(t) {
13
+ let n = [];
14
+ for (let r of t) if (r.type === e || r.type.__name === "SwTableColumn" || r.type.name === "SwTableColumn" || typeof r.type == "object" && r.props?.prop !== void 0) {
15
+ let e = {
16
+ ...r.props,
17
+ children: []
18
+ }, t = [];
19
+ typeof r.children?.default == "function" ? t = r.children.default() : Array.isArray(r.children) && (t = r.children), t && t.length > 0 && (e.children = x(t)), n.push(e);
20
+ }
21
+ return n;
22
+ }
23
+ function S(e) {
24
+ if (!e || e.length === 0) return 1;
25
+ let t = 1;
26
+ for (let n of e) if (n.children && n.children.length > 0) {
27
+ let e = S(n.children);
28
+ t = Math.max(t, 1 + e);
29
+ }
30
+ return t;
31
+ }
32
+ function C(e, t) {
33
+ let n = Array.from({ length: t }, () => []);
34
+ function r(e, i, a = "") {
35
+ for (let o = 0; o < e.length; o++) {
36
+ let s = e[o], c = a ? `${a}-${s.prop || o}` : s.prop || o;
37
+ if (s.children && s.children.length > 0) {
38
+ let e = w(s.children);
39
+ n[i].push({
40
+ key: c,
41
+ label: s.label,
42
+ colspan: e,
43
+ rowspan: 1,
44
+ width: s.width,
45
+ height: s.height
46
+ }), r(s.children, i + 1, c);
47
+ } else n[i].push({
48
+ key: s.prop,
49
+ label: s.label,
50
+ colspan: 1,
51
+ rowspan: t - i,
52
+ width: s.width,
53
+ height: s.height,
54
+ prop: s.prop
55
+ });
56
+ }
57
+ }
58
+ return r(e, 0), n;
59
+ }
60
+ function w(e) {
61
+ let t = 0;
62
+ function n(e) {
63
+ for (let r of e) r.children && r.children.length > 0 ? n(r.children) : t++;
64
+ }
65
+ return n(e), t;
66
+ }
67
+ function T(e) {
68
+ let t = [];
69
+ function n(e) {
70
+ for (let r of e) r.children && r.children.length > 0 ? n(r.children) : t.push(r);
71
+ }
72
+ return n(e), t;
73
+ }
74
+ function E(e, t) {
75
+ if (!e || !Array.isArray(e) || !t || !Array.isArray(t)) return [];
76
+ let n = [], r = /* @__PURE__ */ new Map();
77
+ return e.forEach((e, i) => {
78
+ let a = [];
79
+ t.forEach((n, o) => {
80
+ let s = `${i}-${n.prop}`;
81
+ if (r.has(s)) return;
82
+ let c = e[n.prop], l = c, u = 1, d = 1, f = {};
83
+ c && typeof c == "object" && c && (l = c.label || c.value || "", u = c.colspan || 1, d = c.rowspan || 1, f = c.style || {});
84
+ let p = {
85
+ key: s,
86
+ label: l,
87
+ prop: n.prop,
88
+ colspan: u,
89
+ rowspan: d,
90
+ style: f,
91
+ originalRow: e,
92
+ rowIndex: i
93
+ };
94
+ a.push(p);
95
+ for (let e = 0; e < d; e++) for (let n = 0; n < u; n++) {
96
+ if (e === 0 && n === 0) continue;
97
+ let a = `${i + e}-${t[o + n]?.prop}`;
98
+ a && r.set(a, !0);
99
+ }
100
+ }), a.length > 0 && n.push(a);
101
+ }), n;
102
+ }
103
+ let D = n(() => S(b.value)), O = n(() => C(b.value, D.value)), k = n(() => T(b.value)), A = n(() => E(v.data, k.value));
104
+ return s(() => {
105
+ let e = y.default?.() || [];
106
+ console.log("Raw slot VNodes:", e);
107
+ let t = e.filter((e) => {
108
+ console.log("VNode type:", e.type, "props:", e.props);
109
+ let t = e.type && (typeof e.type == "object" || typeof e.type == "function");
110
+ return console.log("Is component:", t), t;
111
+ });
112
+ console.log("Valid VNodes:", t), b.value = x(t), console.log("SwTable mounted - columnTree:", b.value), console.log("SwTable mounted - flatColumns:", k.value), console.log("SwTable mounted - data:", v.data);
113
+ }), (e, n) => (c(), r("table", m, [i("thead", null, [(c(!0), r(t, null, u(O.value, (e, n) => (c(), r("tr", { key: n }, [(c(!0), r(t, null, u(e, (e) => (c(), r("th", {
114
+ key: e.key,
115
+ colspan: e.colspan,
116
+ rowspan: e.rowspan,
117
+ style: o({
118
+ minWidth: e.width,
119
+ minHeight: e.height
120
+ })
121
+ }, f(e.label), 13, h))), 128))]))), 128))]), i("tbody", null, [(c(!0), r(t, null, u(A.value, (n, i) => (c(), r("tr", { key: i }, [(c(!0), r(t, null, u(n, (t) => (c(), r("td", {
122
+ key: t.key,
123
+ colspan: t.colspan,
124
+ rowspan: t.rowspan,
125
+ style: o(t.style)
126
+ }, [d(e.$slots, t.prop, {
127
+ row: t.originalRow,
128
+ $index: t.rowIndex
129
+ }, () => [a(f(t.label), 1)])], 12, g))), 128))]))), 128))])]));
130
+ }
131
+ };
132
+ //#endregion
133
+ export { _ as default };
@@ -0,0 +1,28 @@
1
+ import { createElementBlock as e, openBlock as t } from "vue";
2
+ //#region src/components/SwTableColumn.vue
3
+ var n = { style: { display: "none" } }, r = {
4
+ __name: "SwTableColumn",
5
+ props: {
6
+ prop: {
7
+ type: String,
8
+ required: !0
9
+ },
10
+ label: {
11
+ type: String,
12
+ default: ""
13
+ },
14
+ width: {
15
+ type: String,
16
+ default: "auto"
17
+ },
18
+ height: {
19
+ type: String,
20
+ default: "auto"
21
+ }
22
+ },
23
+ setup(r) {
24
+ return (r, i) => (t(), e("div", n));
25
+ }
26
+ };
27
+ //#endregion
28
+ export { r as default };
@@ -0,0 +1,32 @@
1
+ import { Fragment as e, createCommentVNode as t, createElementBlock as n, mergeModels as r, normalizeClass as i, openBlock as a, provide as o, ref as s, renderList as c, renderSlot as l, toDisplayString as u, useModel as d } from "vue";
2
+ //#region src/components/SwTabs.vue
3
+ var f = { key: 0 }, p = ["onClick"], m = {
4
+ __name: "SwTabs",
5
+ props: /* @__PURE__ */ r({ class: {
6
+ type: String,
7
+ default: ""
8
+ } }, {
9
+ modelValue: {},
10
+ modelModifiers: {}
11
+ }),
12
+ emits: /* @__PURE__ */ r(["tab-click"], ["update:modelValue"]),
13
+ setup(r, { emit: m }) {
14
+ s(0);
15
+ let h = s([]), g = r, _ = d(r, "modelValue"), v = m;
16
+ function y(e) {
17
+ h.value.push(e);
18
+ }
19
+ function b(e) {
20
+ h.value = h.value.filter((t) => t !== e);
21
+ }
22
+ return o("registerTab", y), o("unregisterTab", b), o("activeTab", _), o("tabs", h), (r, o) => (a(), n("div", { class: i("sw-tabs " + g.class) }, [h.value.length === 0 ? t("", !0) : (a(), n("header", f, [(a(!0), n(e, null, c(h.value, (e, t) => (a(), n("span", {
23
+ key: t,
24
+ class: i([{ active: _.value === t }]),
25
+ onClick: (e) => {
26
+ _.value = t, v("tab-click", t);
27
+ }
28
+ }, u(e.label || e.title), 11, p))), 128))])), l(r.$slots, "default")], 2));
29
+ }
30
+ };
31
+ //#endregion
32
+ export { m as default };
@@ -0,0 +1,36 @@
1
+ import { computed as e, createCommentVNode as t, createElementBlock as n, inject as r, onMounted as i, onUnmounted as a, openBlock as o, renderSlot as s } from "vue";
2
+ //#region src/components/SwTabsPane.vue
3
+ var c = {
4
+ key: 0,
5
+ class: "tab-content"
6
+ }, l = {
7
+ __name: "SwTabsPane",
8
+ props: {
9
+ title: {
10
+ type: String,
11
+ required: !0
12
+ },
13
+ label: {
14
+ type: String,
15
+ default: ""
16
+ }
17
+ },
18
+ setup(l) {
19
+ let u = l, d = r("registerTab"), f = r("unregisterTab");
20
+ i(() => {
21
+ d({
22
+ title: u.title,
23
+ label: u.label
24
+ });
25
+ }), a(() => {
26
+ f({
27
+ title: u.title,
28
+ label: u.label
29
+ });
30
+ });
31
+ let p = r("activeTab"), m = r("tabs"), h = e(() => m.value.findIndex((e) => e.title === u.title)), g = e(() => p.value === h.value);
32
+ return (e, r) => g.value ? (o(), n("div", c, [s(e.$slots, "default")])) : t("", !0);
33
+ }
34
+ };
35
+ //#endregion
36
+ export { l as default };
@@ -1 +1,2 @@
1
- @charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #75C6ff;--sw-color-info: #C0C0C0;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-preholiday: #FFE78070;--sw-color-weekend: #ff808070;--sw-color-select: #007bff70;--sw-color-holiday: #ff0000;--sw-color-nowork: #ff0000;--sw-color-active: #5aaaff;--sw-text-color-primary: #333333;--sw-text-color-secondary: #4C4C4C;--sw-text-color-third: #818181;--sw-text-color-revers: white;--sw-bg-color: #f4f4f4;--sw-bg-color-page: white;--sw-bg-color-second: #FAFAFA;--sw-bg-color-glass: rgba(133, 133, 133, .45);--sw-border-color: #D6D6D6;--sw-border-color-input: #CECECE;--sw-font-size: 1rem;--sw-font-size-small: .875rem;--sw-font-size-large: 1.125rem;--sw-font-size-big: 2.8rem;--sw-border-radius: .625rem;--sw-border-radius-small: .25rem;--sw-border-round: 3.625rem;--sw-component-size-base: 3rem;--sw-component-size-small: 1.625rem;--sw-component-size-large: 3.5rem;--sw-component-size-big: 10.5rem;--sw-track-thickness: .375rem;--sw-border-thickness: .125rem;font-family:Montserrat,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--sw-text-color-primary);background-color:var(--sw-bg-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root.dark{--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #0d588d;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-active: #007bff;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-bg-color-glass: rgba(27, 33, 39, .55);--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}@media (prefers-color-scheme: dark){:root:not(.light){--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #0d588d;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-active: #007bff;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-bg-color-glass: rgba(27, 33, 39, .55);--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}}.sw-alert-wrapper{position:fixed;background:none;border:none;top:max(env(safe-area-inset-top,0rem),env(titlebar-area-y,0rem))}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin:1rem auto 0;border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers)}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.sw-alert-wrapper .sw-alert footer{display:flex;justify-content:flex-end}.sw-tabs{-webkit-user-select:none;user-select:none}.sw-tabs>header{display:flex;border-bottom:2px solid var(--sw-color-info);color:var(--sw-color-info);-webkit-user-select:none;user-select:none;font-size:var(--sw-font-size-small);font-weight:400;margin-bottom:1.25rem;transition:all .6s ease-out}.sw-tabs>header span{position:relative;top:2px;border-radius:0;padding:5px;cursor:pointer;border:none;background:none;outline:none}.sw-tabs>header span.active{border-bottom:2px solid var(--sw-color-primary);color:var(--sw-color-primary);font-weight:700}.sw-tabs>header span:hover:not(.active){color:var(--sw-border-color)}.sw-input{display:flex;align-items:center;position:relative;gap:0 1.75rem;padding:0 1.2em;border:1px solid var(--sw-border-color-input);border-radius:var(--sw-border-radius)}.sw-input>label{text-align:left;transition:all .2s .2s linear;position:absolute;font-size:var(--sw-font-size-large);line-height:1;top:1.1rem;background:var(--sw-bg-color-page)}.sw-input>label:hover{top:.8rem}.sw-input>label+input::placeholder{opacity:0}.sw-input>input{line-height:var(--sw-component-size-base);border:none;width:100%;font-size:var(--sw-font-size-large);background:none;outline:none}.sw-input>input::placeholder{color:var(--sw-text-color-secondary);opacity:1;transition:opacity .2s .2s linear}.sw-input>input:focus::placeholder{opacity:1}.sw-input .svg-icon{font-size:20px;color:var(--sw-text-color-third)}.sw-input>svg+label{left:4rem}.sw-input.sw-small label{top:.3rem}.sw-input.sw-small label:hover{top:0}.sw-input.sw-small input{line-height:var(--sw-component-size-small)}.sw-input.sw-large label{top:1.22rem}.sw-input.sw-large label:hover{top:1rem}.sw-input.sw-large input{line-height:var(--sw-component-size-large)}.sw-button{border-radius:var(--sw-border-radius);border:1px solid var(--sw-color-default);padding:0 1.2em;min-height:var(--sw-component-size-base);font-size:var(--sw-font-size);font-weight:500;cursor:pointer;transition:border-color .25s;background-color:var(--sw-color-default);color:var(--sw-text-color-revers)}.sw-button-group{display:inline-flex;--radius: var(--sw-border-radius)}.sw-button-group.sw-round{--radius: var(--sw-border-round)}.sw-button-group>.sw-button{border-radius:0}.sw-button-group :first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.sw-button-group :last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.sw-button-group.sw-vertical :first-child{border-top-right-radius:var(--radius);border-bottom-left-radius:0}.sw-button-group.sw-vertical :last-child{border-top-right-radius:0;border-bottom-left-radius:var(--radius)}.sw-form-item{display:flex;justify-content:space-between;font-size:var(--sw-font-size-small);color:var(--sw-text-color-secondary);gap:1rem}.sw-form-item.sw-start{justify-content:flex-start}.sw-form-item.sw-end{justify-content:flex-end}.sw-form-item.sw-around{justify-content:space-around}.sw-form-item.sw-center{justify-content:center}.sw-dropdown{position:relative;display:inline-block;outline:none}.sw-dropdown-popup{z-index:3;padding:8px;min-width:200px;margin:0;-webkit-user-select:none;user-select:none;background-color:var(--sw-bg-color-second);border:1px solid var(--sw-border-color);border-radius:4px;box-shadow:0 2px 8px #0000001a}.sw-dropdown-popup.gide>header,.sw-dropdown-popup.gide>footer{display:flex;justify-content:space-between;align-items:center}.sw-dropdown-popup.gide>header .sw-button,.sw-dropdown-popup.gide>footer .sw-button{font-size:var(--sw-font-size-large);padding:.3em}.sw-dropdown-popup.gide>footer .sw-button{padding:.1em .6em}.sw-dropdown-popup.gide img{position:absolute;height:160px;right:-100px}.sw-dropdown-popup.gide img.reflect{left:-100px}.sw-dropdown-item{display:block;outline:none;-webkit-user-select:none;user-select:none}.sw-dropdown-item svg{margin-right:.5rem}.sw-dropdown-item:hover{color:var(--sw-color-primary)}.sw-collapse{transition:all .3s ease-out;overflow:hidden;box-sizing:border-box;margin:0;will-change:max-height}.sw-slider{position:relative;width:100%;height:var(--sw-component-size-small);cursor:pointer;-webkit-user-select:none;user-select:none}.sw-slider:not(.vertical) .track{height:var(--sw-track-thickness);width:100%;top:50%;left:0;transform:translateY(-50%)}.sw-slider.vertical{width:var(--sw-component-size-small);height:200px}.sw-slider.vertical .track{width:var(--sw-track-thickness);height:100%;left:50%;top:0;transform:translate(-50%)}.sw-slider .track{position:absolute;background:var(--sw-border-color);border-radius:var(--sw-border-radius-small)}.sw-slider .track .fill{background:var(--sw-color-primary);border-radius:var(--sw-border-radius-small);transition:all .1s ease;position:absolute;height:100%;width:100%}.sw-slider .thumb{position:absolute;width:var(--sw-component-size-small);height:var(--sw-component-size-small);background:var(--sw-bg-color-page);border:var(--sw-border-thickness) solid var(--sw-color-primary);box-sizing:border-box;border-radius:var(--sw-border-round);cursor:grab;box-shadow:0 2px 4px #0003;transition:all .2s;text-align:center;transform:translate(-50%,-50%);left:50%;top:50%;color:var(--sw-color-primary);line-height:calc(var(--sw-component-size-small) - var(--sw-border-thickness) * 2)}.sw-slider .thumb:hover,.sw-slider .thumb:active{transform:translate(-50%,-50%) scale(1.1)}.sw-slider .thumb>*{width:calc(var(--sw-component-size-small) - var(--sw-border-thickness) * 2);height:calc(var(--sw-component-size-small) - var(--sw-border-thickness) * 2)}.sw-slider .thumb .tooltip{position:absolute;background:var(--sw-bg-color-page);color:var(--sw-text-color-primary);padding:0;box-shadow:var(--sw-shadow);font-size:var(--sw-font-size-small);white-space:nowrap;z-index:10;left:50%;transform:translate(-50%)}.sw-slider .thumb .tooltip.tooltip-vertical{top:50%;left:auto;transform:translateY(-50%)}.sw-switch{display:inline-flex;align-items:center;box-sizing:border-box;-webkit-user-select:none;user-select:none}.sw-switch>input{display:none}.sw-switch>input:checked+label{background-color:var(--sw-color-primary)}.sw-switch>input:checked+label:before{color:var(--sw-text-color-revers);content:attr(data-onlabel);left:.5rem;right:auto}.sw-switch>input:checked+label:after{background:#f7f7f7;left:2.125rem}.sw-switch>label{background-color:var(--sw-color-info);border-radius:1rem;cursor:pointer;flex:0 0 4rem;height:1.75rem;margin:.5rem;position:relative;transition:all .3s;width:4rem}.sw-switch>label:before{color:var(--sw-text-color-revers);content:attr(data-offlabel);display:block;font-size:1rem;position:absolute;right:.5rem;transition:all .3s}.sw-switch>label:after{background:var(--sw-text-color-revers);border:1px solid var(--sw-color-info);border-radius:50%;content:"";height:2rem;left:-.125rem;position:absolute;top:-.125rem;transition:all .3s;width:2rem}.sw-switch.sw-small>label{width:3.125rem;flex:0 0 3.125rem}.sw-switch.sw-small>label:before{content:""}.sw-switch.sw-small>label:after{content:"";left:.15rem;top:.125rem;width:1.375rem;height:1.375rem}.sw-switch.sw-small>input:checked+label:before{content:""}.sw-switch.sw-small>input:checked+label:after{left:1.475rem}.sw-switch.sw-checkbox label{border-radius:var(--sw-border-radius-small);background:var(--sw-bg-color-pag);border:1px solid var(--sw-border-color-input);height:.875rem;flex:0 0 .875rem}.sw-switch.sw-checkbox label:after{content:none}.sw-switch.sw-checkbox>input:checked+label{background:var(--sw-bg-color-page);color:var(--sw-color-primary)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";width:1em;top:-.9rem;left:0;text-rendering:geometricPrecision;white-space:nowrap;font-size:1.6rem}.sw-skeleton{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-end}.sw-skeleton-item{min-height:var(--sw-component-size-base);width:100%;background:var(--sw-bg-color-second);border-radius:var(--sw-border-radius);border:1px solid var(--sw-bg-color);box-sizing:border-box;overflow:hidden;position:relative}.sw-skeleton-item>div{height:100%;width:10px;background:var(--sw-border-color-input);display:inline-block;animation:sw-skeleton 3s linear infinite normal;position:absolute;transform:skew(-20deg);box-shadow:0 0 20px 20px var(--sw-border-color-input)}.sw-message{background-color:var(--sw-bg-color-page);border:1px solid var(--sw-border-color);border-radius:var(--sw-border-radius);padding:1.875rem;box-sizing:border-box;top:50%;left:50%;transform:translateY(-50%) translate(-50%);min-width:16rem;max-width:95%;max-height:95%;overflow-y:auto}.sw-message::backdrop{background:var(--sw-bg-color-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sw-message>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.sw-message>footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sw-modal-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}.sw-data-picker{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.sw-data-picker .month_year{display:flex;justify-content:space-around;align-items:center}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker button{color:var(--sw-text-color-primary);height:30px;text-align:center;line-height:30px;cursor:pointer;background:none;border:none;border-radius:.2rem;transition:all .3s ease}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-data-picker .year{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.2rem;border-top:1px solid var(--sw-color-info)}.sw-data-picker .year>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .year>button.active{color:var(--sw-color-active)}.sw-gide{display:grid;width:100%;height:100%;position:absolute;top:0;left:0;z-index:1;grid-template-rows:40% 0 1fr;grid-template-columns:1fr 0 1fr;overflow-x:hidden;grid-template-areas:"overlay0 overlay0 overlay0" "overlay1 windows overlay2" "overlay3 overlay3 overlay3"}.sw-gide .hole{height:100%}.sw-gide .overlay0,.sw-gide .overlay1,.sw-gide .overlay2,.sw-gide .overlay3{grid-area:overlay0;background:var(--sw-bg-color-glass);-webkit-backdrop-filter:blur(.8rem);backdrop-filter:blur(.8rem)}.sw-gide .overlay1{grid-area:overlay1}.sw-gide .overlay2{grid-area:overlay2}.sw-gide .overlay3{grid-area:overlay3}.sw-icon{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}.sw-external-icon{background-color:currentColor;-webkit-mask-size:cover!important;mask-size:cover!important;display:inline-block}.sw-revers{transform:scaleX(-1)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-vertical{flex-direction:column}.sw-disabled{opacity:.5;cursor:not-allowed}.sw-text{color:var(--sw-text-color-primary)}.sw-text:hover,.sw-text:active{opacity:.5}.sw-text:not(:hover),.sw-text:not(:active){background:none}.sw-text.sw-primary{color:var(--sw-color-primary)}.sw-text.sw-success{color:var(--sw-color-success)}.sw-text.sw-info{color:var(--sw-color-info)}.sw-text.sw-warning{color:var(--sw-color-warning)}.sw-text.sw-danger{color:var(--sw-color-danger)}.sw-link{background:none;border:none;padding:0;color:var(--sw-text-color-secondary);min-height:1em}.sw-link:hover.sw-primary{color:var(--sw-color-primary)}.sw-link:hover.sw-success{color:var(--sw-color-success)}.sw-link:hover.sw-info{color:var(--sw-color-info)}.sw-link:hover.sw-warning{color:var(--sw-color-warning)}.sw-link:hover.sw-danger{color:var(--sw-color-danger)}@keyframes sw-skeleton{0%{left:-50px}to{left:calc(50px + 100%)}}.popup{position:relative}.popup .wrapper{position:absolute;z-index:1;list-style:none;font-size:.8rem;line-height:1.2;word-break:break-word;padding:0;margin:10px 0 0}.popup .wrapper :before{content:"";border-bottom-color:transparent!important;border-left-color:transparent!important;border:1px solid var(--el-border-color-light);background:var(--el-bg-color-overlay);right:50%;top:-6px;position:absolute;width:10px;height:10px;z-index:1;transform:rotate(-45deg)}.popup .scrollbar{box-shadow:0 0 0 1px var(--el-border-color);border-radius:var(--el-border-radius-base);background:#fff;padding:.5rem 0;margin:0}.popup .scrollbar li{display:flex;align-items:start;white-space:nowrap;list-style:none;line-height:22px;padding:5px 16px;margin:0;font-size:var(--sw-font-size);color:var(--sw-text-color-secondary);cursor:pointer;outline:none}.popup .scrollbar li:not(.is-disabled):focus{background:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}
1
+ :root{--sw-color-default:#dfdfdf;--sw-color-primary:#3eaf4e;--sw-color-success:#75c6ff;--sw-color-info:silver;--sw-color-warning:#ff7a00;--sw-color-danger:#cc2d4a;--sw-color-preholiday:#ffe78070;--sw-color-weekend:#ff808070;--sw-color-select:#007bff70;--sw-color-holiday:red;--sw-color-nowork:red;--sw-color-active:#5aaaff;--sw-text-color-primary:#333;--sw-text-color-secondary:#4c4c4c;--sw-text-color-third:#818181;--sw-text-color-revers:white;--sw-bg-color:#f4f4f4;--sw-bg-color-page:white;--sw-bg-color-second:#fafafa;--sw-bg-color-glass:#85858573;--sw-border-color:#d6d6d6;--sw-border-color-input:#cecece;--sw-font-size:1rem;--sw-font-size-small:.875rem;--sw-font-size-large:1.125rem;--sw-font-size-big:2.8rem;--sw-border-radius:.625rem;--sw-border-radius-small:.25rem;--sw-border-round:3.625rem;--sw-component-size-base:3rem;--sw-component-size-small:1.625rem;--sw-component-size-large:3.5rem;--sw-component-size-big:10.5rem;--sw-track-thickness:.375rem;--sw-border-thickness:.125rem;color:var(--sw-text-color-primary);background-color:var(--sw-bg-color);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Montserrat,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}:root.dark{--sw-color-default:#4e4e4e;--sw-color-primary:#38a151;--sw-color-success:#0d588d;--sw-color-info:#808185;--sw-color-warning:#ff7a00;--sw-color-danger:#cc2d4a;--sw-color-active:#007bff;--sw-text-color-primary:white;--sw-text-color-secondary:#fafafa;--sw-text-color-third:#fafafa;--sw-text-color-revers:white;--sw-bg-color:#182127;--sw-bg-color-page:#323741;--sw-bg-color-second:#232832;--sw-bg-color-glass:#1b21278c;--sw-border-color:#4e4e4e;--sw-border-color-input:#5c5e63;--sw-shadow:0 100px 80px #00000008, 0 41.7776px 33.4221px #00000005, 0 22.3363px 17.869px #00000005, 0 12.5216px 10.0172px #00000004, 0 6.6501px 5.32008px #00000003, 0 2.76726px 2.21381px #00000002}@media (prefers-color-scheme:dark){:root:not(.light){--sw-color-default:#4e4e4e;--sw-color-primary:#38a151;--sw-color-success:#0d588d;--sw-color-info:#808185;--sw-color-warning:#ff7a00;--sw-color-danger:#cc2d4a;--sw-color-active:#007bff;--sw-text-color-primary:white;--sw-text-color-secondary:#fafafa;--sw-text-color-third:#fafafa;--sw-text-color-revers:white;--sw-bg-color:#182127;--sw-bg-color-page:#323741;--sw-bg-color-second:#232832;--sw-bg-color-glass:#1b21278c;--sw-border-color:#4e4e4e;--sw-border-color-input:#5c5e63;--sw-shadow:0 100px 80px #00000008, 0 41.7776px 33.4221px #00000005, 0 22.3363px 17.869px #00000005, 0 12.5216px 10.0172px #00000004, 0 6.6501px 5.32008px #00000003, 0 2.76726px 2.21381px #00000002}}.sw-alert-wrapper{top:max(env(safe-area-inset-top,0rem), env(titlebar-area-y,0rem));background:0 0;border:none;position:fixed}.sw-alert-wrapper .sw-alert{border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers);margin:1rem auto 0;padding:.625rem 1rem}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.sw-alert-wrapper .sw-alert footer{justify-content:flex-end;display:flex}.sw-tabs{-webkit-user-select:none;user-select:none}.sw-tabs>header{border-bottom:2px solid var(--sw-color-info);color:var(--sw-color-info);-webkit-user-select:none;user-select:none;font-size:var(--sw-font-size-small);margin-bottom:1.25rem;font-weight:400;transition:all .6s ease-out;display:flex}.sw-tabs>header span{cursor:pointer;background:0 0;border:none;border-radius:0;outline:none;padding:5px;position:relative;top:2px}.sw-tabs>header span.active{border-bottom:2px solid var(--sw-color-primary);color:var(--sw-color-primary);font-weight:700}.sw-tabs>header span:hover:not(.active){color:var(--sw-border-color)}.sw-input{border:1px solid var(--sw-border-color-input);border-radius:var(--sw-border-radius);align-items:center;gap:0 1.75rem;padding:0 1.2em;display:flex;position:relative}.sw-input>label{text-align:left;font-size:var(--sw-font-size-large);background:var(--sw-bg-color-page);line-height:1;transition:all .2s linear .2s;position:absolute;top:1.1rem}.sw-input>label:hover{top:.8rem}.sw-input>label+input::placeholder{opacity:0}.sw-input>input{line-height:var(--sw-component-size-base);width:100%;font-size:var(--sw-font-size-large);background:0 0;border:none;outline:none}.sw-input>input::placeholder{color:var(--sw-text-color-secondary);opacity:1;transition:opacity .2s linear .2s}.sw-input>input:focus::placeholder{opacity:1}.sw-input .svg-icon{color:var(--sw-text-color-third);font-size:20px}.sw-input>svg+label{left:4rem}.sw-input.sw-small label{top:.3rem}.sw-input.sw-small label:hover{top:0}.sw-input.sw-small input{line-height:var(--sw-component-size-small)}.sw-input.sw-large label{top:1.22rem}.sw-input.sw-large label:hover{top:1rem}.sw-input.sw-large input{line-height:var(--sw-component-size-large)}.sw-button{border-radius:var(--sw-border-radius);border:1px solid var(--sw-color-default);min-height:var(--sw-component-size-base);font-size:var(--sw-font-size);cursor:pointer;background-color:var(--sw-color-default);color:var(--sw-text-color-revers);padding:0 1.2em;font-weight:500;transition:border-color .25s}.sw-button-group{--radius:var(--sw-border-radius);display:inline-flex}.sw-button-group.sw-round{--radius:var(--sw-border-round)}.sw-button-group>.sw-button{border-radius:0}.sw-button-group :first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.sw-button-group :last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.sw-button-group.sw-vertical :first-child{border-top-right-radius:var(--radius);border-bottom-left-radius:0}.sw-button-group.sw-vertical :last-child{border-top-right-radius:0;border-bottom-left-radius:var(--radius)}.sw-form-item{font-size:var(--sw-font-size-small);color:var(--sw-text-color-secondary);justify-content:space-between;gap:1rem;display:flex}.sw-form-item.sw-start{justify-content:flex-start}.sw-form-item.sw-end{justify-content:flex-end}.sw-form-item.sw-around{justify-content:space-around}.sw-form-item.sw-center{justify-content:center}.sw-dropdown{outline:none;display:inline-block;position:relative}.sw-dropdown-popup{z-index:3;-webkit-user-select:none;user-select:none;background-color:var(--sw-bg-color-second);border:1px solid var(--sw-border-color);border-radius:4px;min-width:200px;margin:0;padding:8px;box-shadow:0 2px 8px #0000001a}.sw-dropdown-popup.gide>header,.sw-dropdown-popup.gide>footer{justify-content:space-between;align-items:center;display:flex}.sw-dropdown-popup.gide>header .sw-button,.sw-dropdown-popup.gide>footer .sw-button{font-size:var(--sw-font-size-large);padding:.3em}.sw-dropdown-popup.gide>footer .sw-button{padding:.1em .6em}.sw-dropdown-popup.gide img{height:160px;position:absolute;right:-100px}.sw-dropdown-popup.gide img.reflect{left:-100px}.sw-dropdown-item{-webkit-user-select:none;user-select:none;outline:none;display:block}.sw-dropdown-item svg{margin-right:.5rem}.sw-dropdown-item:hover{color:var(--sw-color-primary)}.sw-collapse{box-sizing:border-box;will-change:max-height;margin:0;transition:all .3s ease-out;overflow:hidden}.sw-slider{width:100%;height:var(--sw-component-size-small);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.sw-slider:not(.vertical) .track{height:var(--sw-track-thickness);width:100%;top:50%;left:0;transform:translateY(-50%)}.sw-slider.vertical{width:var(--sw-component-size-small);height:200px}.sw-slider.vertical .track{width:var(--sw-track-thickness);height:100%;top:0;left:50%;transform:translate(-50%)}.sw-slider .track{background:var(--sw-border-color);border-radius:var(--sw-border-radius-small);position:absolute}.sw-slider .track .fill{background:var(--sw-color-primary);border-radius:var(--sw-border-radius-small);width:100%;height:100%;transition:all .1s;position:absolute}.sw-slider .thumb{width:var(--sw-component-size-small);height:var(--sw-component-size-small);background:var(--sw-bg-color-page);border:var(--sw-border-thickness) solid var(--sw-color-primary);box-sizing:border-box;border-radius:var(--sw-border-round);cursor:grab;text-align:center;color:var(--sw-color-primary);line-height:calc(var(--sw-component-size-small) - var(--sw-border-thickness) * 2);transition:all .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 4px #0003}.sw-slider .thumb:hover,.sw-slider .thumb:active{transform:translate(-50%,-50%)scale(1.1)}.sw-slider .thumb>*{width:calc(var(--sw-component-size-small) - var(--sw-border-thickness) * 2);height:calc(var(--sw-component-size-small) - var(--sw-border-thickness) * 2)}.sw-slider .thumb .tooltip{background:var(--sw-bg-color-page);color:var(--sw-text-color-primary);box-shadow:var(--sw-shadow);font-size:var(--sw-font-size-small);white-space:nowrap;z-index:10;padding:0;position:absolute;left:50%;transform:translate(-50%)}.sw-slider .thumb .tooltip.tooltip-vertical{top:50%;left:auto;transform:translateY(-50%)}.sw-switch{box-sizing:border-box;-webkit-user-select:none;user-select:none;align-items:center;display:inline-flex}.sw-switch>input{display:none}.sw-switch>input:checked+label{background-color:var(--sw-color-primary)}.sw-switch>input:checked+label:before{color:var(--sw-text-color-revers);content:attr(data-onlabel);left:.5rem;right:auto}.sw-switch>input:checked+label:after{background:#f7f7f7;left:2.125rem}.sw-switch>label{background-color:var(--sw-color-info);cursor:pointer;border-radius:1rem;flex:0 0 4rem;width:4rem;height:1.75rem;margin:.5rem;transition:all .3s;position:relative}.sw-switch>label:before{color:var(--sw-text-color-revers);content:attr(data-offlabel);font-size:1rem;transition:all .3s;display:block;position:absolute;right:.5rem}.sw-switch>label:after{background:var(--sw-text-color-revers);border:1px solid var(--sw-color-info);content:"";border-radius:50%;width:2rem;height:2rem;transition:all .3s;position:absolute;top:-.125rem;left:-.125rem}.sw-switch.sw-small>label{flex:0 0 3.125rem;width:3.125rem}.sw-switch.sw-small>label:before{content:""}.sw-switch.sw-small>label:after{content:"";width:1.375rem;height:1.375rem;top:.125rem;left:.15rem}.sw-switch.sw-small>input:checked+label:before{content:""}.sw-switch.sw-small>input:checked+label:after{left:1.475rem}.sw-switch.sw-checkbox label{border-radius:var(--sw-border-radius-small);background:var(--sw-bg-color-pag);border:1px solid var(--sw-border-color-input);flex:0 0 .875rem;height:.875rem}.sw-switch.sw-checkbox label:after{content:none}.sw-switch.sw-checkbox>input:checked+label{background:var(--sw-bg-color-page);color:var(--sw-color-primary)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";text-rendering:geometricprecision;white-space:nowrap;width:1em;font-size:1.6rem;top:-.9rem;left:0}.sw-skeleton{flex-wrap:wrap;align-items:flex-end;gap:.5rem;display:flex}.sw-skeleton-item{min-height:var(--sw-component-size-base);background:var(--sw-bg-color-second);border-radius:var(--sw-border-radius);border:1px solid var(--sw-bg-color);box-sizing:border-box;width:100%;position:relative;overflow:hidden}.sw-skeleton-item>div{background:var(--sw-border-color-input);width:10px;height:100%;box-shadow:0 0 20px 20px var(--sw-border-color-input);animation:3s linear infinite sw-skeleton;display:inline-block;position:absolute;transform:skew(-20deg)}.sw-message{background-color:var(--sw-bg-color-page);border:1px solid var(--sw-border-color);border-radius:var(--sw-border-radius);box-sizing:border-box;min-width:16rem;max-width:95%;max-height:95%;padding:1.875rem;top:50%;left:50%;overflow-y:auto;transform:translateY(-50%)translate(-50%)}.sw-message::backdrop{background:var(--sw-bg-color-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sw-message>header{justify-content:space-between;gap:.5rem;margin-bottom:.5rem;display:flex}.sw-message>footer{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.sw-modal-footer{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.sw-data-picker{flex-wrap:wrap;justify-content:center;gap:2rem;display:flex}.sw-data-picker .month_year{justify-content:space-around;align-items:center;display:flex}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker button{color:var(--sw-text-color-primary);text-align:center;cursor:pointer;background:0 0;border:none;border-radius:.2rem;height:30px;line-height:30px;transition:all .3s}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem;width:250px;display:grid}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-data-picker .year{border-top:1px solid var(--sw-color-info);grid-template-columns:1fr 1fr 1fr;gap:.2rem;width:250px;display:grid}.sw-data-picker .year>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .year>button.active{color:var(--sw-color-active)}.sw-gide{z-index:1;grid-template:"overlay0 overlay0 overlay0"40%"overlay1 windows overlay2"0"overlay3 overlay3 overlay3"1fr/1fr 0 1fr;width:100%;height:100%;display:grid;position:absolute;top:0;left:0;overflow-x:hidden}.sw-gide .hole{height:100%}.sw-gide .overlay0,.sw-gide .overlay1,.sw-gide .overlay2,.sw-gide .overlay3{background:var(--sw-bg-color-glass);-webkit-backdrop-filter:blur(.8rem);backdrop-filter:blur(.8rem);grid-area:overlay0}.sw-gide .overlay1{grid-area:overlay1}.sw-gide .overlay2{grid-area:overlay2}.sw-gide .overlay3{grid-area:overlay3}.sw-icon{vertical-align:-.15em;width:1em;height:1em;fill:var(--icon-fill,currentColor);stroke:var(--icon-stroke,currentColor);overflow:hidden}.sw-external-icon{background-color:var(--icon-bg,currentColor);display:inline-block;-webkit-mask-size:cover!important;mask-size:cover!important}.sw-revers{transform:scaleX(-1)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-vertical{flex-direction:column}.sw-disabled{opacity:.5;cursor:not-allowed}.sw-text{color:var(--sw-text-color-primary)}.sw-text:hover,.sw-text:active{opacity:.5}.sw-text:not(:hover),.sw-text:not(:active){background:0 0}.sw-text.sw-primary{color:var(--sw-color-primary)}.sw-text.sw-success{color:var(--sw-color-success)}.sw-text.sw-info{color:var(--sw-color-info)}.sw-text.sw-warning{color:var(--sw-color-warning)}.sw-text.sw-danger{color:var(--sw-color-danger)}.sw-link{color:var(--sw-text-color-secondary);background:0 0;border:none;min-height:1em;padding:0}.sw-link:hover.sw-primary{color:var(--sw-color-primary)}.sw-link:hover.sw-success{color:var(--sw-color-success)}.sw-link:hover.sw-info{color:var(--sw-color-info)}.sw-link:hover.sw-warning{color:var(--sw-color-warning)}.sw-link:hover.sw-danger{color:var(--sw-color-danger)}@keyframes sw-skeleton{0%{left:-50px}to{left:calc(50px + 100%)}}.popup{position:relative}.popup .wrapper{z-index:1;word-break:break-word;margin:10px 0 0;padding:0;font-size:.8rem;line-height:1.2;list-style:none;position:absolute}.popup .wrapper :before{content:"";border:1px solid var(--el-border-color-light);background:var(--el-bg-color-overlay);z-index:1;width:10px;height:10px;position:absolute;top:-6px;right:50%;transform:rotate(-45deg);border-bottom-color:#0000!important;border-left-color:#0000!important}.popup .scrollbar{box-shadow:0 0 0 1px var(--el-border-color);border-radius:var(--el-border-radius-base);background:#fff;margin:0;padding:.5rem 0}.popup .scrollbar li{white-space:nowrap;line-height:22px;font-size:var(--sw-font-size);color:var(--sw-text-color-secondary);cursor:pointer;outline:none;align-items:start;margin:0;padding:5px 16px;list-style:none;display:flex}.popup .scrollbar li:not(.is-disabled):focus{background:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}
2
+ /*$vite$:1*/