@studio-west/component-sw 0.3.50 → 0.3.52

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.
@@ -0,0 +1,247 @@
1
+ import { ref as f, computed as te, createElementBlock as v, openBlock as i, createElementVNode as s, createCommentVNode as S, withModifiers as D, toDisplayString as k, unref as M, Fragment as _, renderList as Y, normalizeClass as H } from "vue";
2
+ import { p as x } from "./index-N3RlT28p.js";
3
+ const ae = { class: "sw-data-picker" }, ne = { class: "month_year" }, le = { class: "text" }, oe = {
4
+ key: 0,
5
+ class: "week"
6
+ }, ue = {
7
+ key: 1,
8
+ class: "year"
9
+ }, se = ["onClick"], re = {
10
+ key: 2,
11
+ class: "month"
12
+ }, ve = ["onClick"], ie = { key: 0 }, ce = { class: "month_year" }, de = { class: "text" }, De = {
13
+ key: 0,
14
+ class: "week"
15
+ }, ge = {
16
+ key: 1,
17
+ class: "year"
18
+ }, fe = ["onClick"], he = {
19
+ key: 2,
20
+ class: "month"
21
+ }, me = ["onClick"], ke = {
22
+ __name: "SwDatePicker",
23
+ props: {
24
+ data: Object,
25
+ limitation: {
26
+ type: [Boolean, Array],
27
+ default: () => !1
28
+ },
29
+ range: {
30
+ type: String,
31
+ default: "solid"
32
+ }
33
+ },
34
+ emits: ["input"],
35
+ setup(J, { emit: Q }) {
36
+ var R, W, q, G;
37
+ const l = J, N = Q, d = f(0), y = f(/* @__PURE__ */ new Date()), E = f(/* @__PURE__ */ new Date()), r = f((/* @__PURE__ */ new Date()).getFullYear()), u = f((/* @__PURE__ */ new Date()).getMonth()), z = f((/* @__PURE__ */ new Date()).getFullYear()), A = f((/* @__PURE__ */ new Date()).getMonth()), L = f((/* @__PURE__ */ new Date()).getMonth() + 1), o = f([]), T = f(0), h = f(-1), C = f(-1), O = f(navigator.languages || "ru"), $ = /en|zh|ja|he/.test(O.value) ? 0 : 1, V = te(() => Array.from({ length: 12 }, (a, e) => {
38
+ const t = new Date(2024, e);
39
+ return new Intl.DateTimeFormat(O.value, { month: "long" }).format(t);
40
+ })), p = (a) => {
41
+ let e = a.split(a.match(/\D.*?\D?/));
42
+ return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
43
+ };
44
+ (R = l.data) != null && R.startDate && (y.value = new Date(p(l.data.startDate)), r.value = y.value.getFullYear(), u.value = y.value.getMonth()), (W = l.data) != null && W.endDate && l.range === "range" && (E.value = new Date(p(l.data.endDate)), z.value = E.value.getFullYear(), A.value = E.value.getMonth());
45
+ const P = () => {
46
+ o.value = [], T.value = 0;
47
+ const a = new Date(r.value, u.value, 0);
48
+ for (let t = a.getDate() - a.getDay() + $; t <= a.getDate(); t++)
49
+ a.getDay() !== 6 + $ && (o.value.push({ day: t, month: a.getMonth(), year: a.getFullYear(), class: [] }), T.value++);
50
+ const e = new Date(r.value, u.value + 1, 0).getDate();
51
+ for (let t = 1; t <= e; t++)
52
+ o.value.push({ day: t, month: u.value, year: r.value, class: [] }), T.value++;
53
+ if (l.range === "range") {
54
+ const t = new Date(r.value, u.value + 1, 1), n = new Date(r.value, u.value + 2, 0).getDate();
55
+ for (let g = 1; g <= n; g++)
56
+ o.value.push({ day: g, month: t.getMonth(), year: t.getFullYear(), class: [] });
57
+ }
58
+ U();
59
+ }, U = () => {
60
+ var e;
61
+ if (!((e = l.data) != null && e.holiday)) return;
62
+ const a = (t, n) => {
63
+ t.forEach((g) => {
64
+ const [c, m, b] = g.split("-").map(Number), F = o.value.findIndex((B) => B.year === c && B.month + 1 === m && B.day === b);
65
+ F !== -1 && (o.value[F].class[0] = n);
66
+ });
67
+ };
68
+ a(l.data.holiday.preholidays, "preholiday"), a(l.data.holiday.holidays, "weekend"), a(l.data.holiday.holiday, "holiday"), a(l.data.holiday.nowork, "nowork");
69
+ }, X = () => {
70
+ if (!l.limitation || l.limitation.length < 2) return !1;
71
+ const a = [...l.limitation].sort(
72
+ (e, t) => new Date(p(e.startDate)).getTime() - new Date(p(t.startDate)).getTime()
73
+ );
74
+ for (let e = 1; e < a.length; e++) {
75
+ const t = new Date(p(a[e - 1].endDate));
76
+ if (new Date(p(a[e].startDate)) <= t)
77
+ return console.warn("Warning: Диапазоны пересекаются:", a[e - 1], a[e]), !0;
78
+ }
79
+ return !1;
80
+ }, I = (a, e, t) => {
81
+ if (!l.limitation || l.limitation.length === 0) return !0;
82
+ const n = new Date(a, e, t).getTime();
83
+ for (let g of l.limitation) {
84
+ const { startDate: c, endDate: m } = g;
85
+ if (!c && m) {
86
+ const b = new Date(p(m)).getTime();
87
+ if (n <= b) return !1;
88
+ }
89
+ if (c && !m) {
90
+ const b = new Date(p(c)).getTime();
91
+ if (n >= b) return !1;
92
+ }
93
+ if (c && m) {
94
+ const b = new Date(p(c)).getTime(), F = new Date(p(m)).getTime();
95
+ if (b <= F) {
96
+ if (n >= b && n <= F) return !1;
97
+ } else if (n >= b || n <= F) return !1;
98
+ }
99
+ }
100
+ return !0;
101
+ }, j = (a, e) => {
102
+ const t = x(new Date(a.year, a.month, a.day), "{dd}.{m}.{Y}");
103
+ l.range === "range" ? C.value !== -1 ? (Z(), h.value = e, o.value[e].class[1] = "active") : h.value !== -1 ? (C.value = e, K(h.value, C.value, t)) : (h.value = e, o.value[e].class[1] = "active") : (h.value !== -1 && (o.value[h.value].class[1] = ""), h.value = e, o.value[e].class[1] = "active", N("input", { dateStart: t, count: 1 }));
104
+ }, Z = () => {
105
+ o.value.forEach((a) => a.class[1] = ""), h.value = -1, C.value = -1;
106
+ }, K = (a, e, t) => {
107
+ let n = x(new Date(o.value[a].year, o.value[a].month, o.value[a].day), "{dd}.{m}.{Y}"), g = ee(a, e);
108
+ if (e >= a)
109
+ for (let c = a + 1; c < e; c++)
110
+ o.value[c].class[1] = "select";
111
+ else
112
+ for (let c = e + 1; c < a; c++)
113
+ o.value[c].class[1] = "select";
114
+ o.value[e].class[1] = "active", N("input", { dateStart: n, dateEnd: t, count: g });
115
+ }, ee = (a, e) => {
116
+ var c;
117
+ let t = Math.abs(a - e) + 1, [n, g] = [Math.min(a, e), Math.max(a, e)];
118
+ for (let m = n; m <= g; m++)
119
+ ((c = o.value[m]) == null ? void 0 : c.class[0]) === "holiday" && t--;
120
+ return t;
121
+ }, w = (a, e) => {
122
+ I(a, e) && (y.value = new Date(a, e, 1), r.value = y.value.getFullYear(), u.value = y.value.getMonth(), l.range === "year" ? j({ year: a, month: e, day: 1 }, 8) : P());
123
+ };
124
+ if (P(), X() && console.error("Ошибка: Найдены пересекающиеся диапазоны!"), (q = l.data) != null && q.startDate && (h.value = o.value.findIndex((a) => a.day === y.value.getDate() && a.month === u.value && a.year === r.value), h.value !== -1 && (o.value[h.value].class[1] = "active")), (G = l.data) != null && G.endDate && l.range === "range" && (C.value = o.value.findIndex((a) => a.day === E.value.getDate() && a.month === A.value && a.year === z.value), C.value !== -1)) {
125
+ o.value[C.value].class[1] = "active";
126
+ for (let a = h.value + 1; a < C.value; a++)
127
+ o.value[a].class[1] = "select";
128
+ }
129
+ return (a, e) => (i(), v("div", ae, [
130
+ s("div", null, [
131
+ s("p", ne, [
132
+ s("span", null, [
133
+ s("button", {
134
+ onClick: e[0] || (e[0] = D((t) => w(r.value - 1, u.value), ["prevent"]))
135
+ }, "«"),
136
+ s("button", {
137
+ onClick: e[1] || (e[1] = D((t) => {
138
+ d.value = 0, w(r.value, u.value - 1);
139
+ }, ["prevent"]))
140
+ }, "‹")
141
+ ]),
142
+ s("span", le, [
143
+ s("button", {
144
+ onClick: e[2] || (e[2] = D((t) => d.value = 1, ["prevent"]))
145
+ }, k(r.value), 1),
146
+ s("button", {
147
+ onClick: e[3] || (e[3] = D((t) => d.value = 1, ["prevent"]))
148
+ }, k(M(x)(y.value.setMonth(u.value), "{F}")), 1)
149
+ ]),
150
+ s("span", null, [
151
+ s("button", {
152
+ onClick: e[4] || (e[4] = D((t) => {
153
+ d.value = 0, w(r.value, u.value + 1);
154
+ }, ["prevent"]))
155
+ }, "›"),
156
+ s("button", {
157
+ onClick: e[5] || (e[5] = D((t) => w(r.value + 1, u.value), ["prevent"]))
158
+ }, "»")
159
+ ])
160
+ ]),
161
+ l.range === "year" || d.value === 1 ? S("", !0) : (i(), v("div", oe, [
162
+ (i(), v(_, null, Y(7, (t, n) => s("button", {
163
+ key: n,
164
+ class: "disabled"
165
+ }, k(M(x)(new Date(1970, 1, t + M($)), "{D}")), 1)), 64))
166
+ ])),
167
+ l.range === "year" || d.value === 1 ? (i(), v("div", ue, [
168
+ (i(!0), v(_, null, Y(V.value, (t, n) => (i(), v("button", {
169
+ key: n,
170
+ onClick: D((g) => {
171
+ d.value = 0, w(r.value, n);
172
+ }, ["prevent"])
173
+ }, k(t), 9, se))), 128))
174
+ ])) : (i(), v("div", re, [
175
+ (i(!0), v(_, null, Y(o.value, (t, n) => (i(), v(_, { key: n }, [
176
+ n < T.value + (7 - new Date(r.value, u.value + 1, 1).getDay() + M($)) % 7 ? (i(), v("button", {
177
+ key: 0,
178
+ class: H(t.month === u.value && I(t.year, t.month, t.day) ? t.class : "disabled"),
179
+ onClick: () => {
180
+ t.month === u.value && j(t, n);
181
+ }
182
+ }, k(t.day), 11, ve)) : S("", !0)
183
+ ], 64))), 128))
184
+ ]))
185
+ ]),
186
+ l.range === "range" ? (i(), v("div", ie, [
187
+ s("p", ce, [
188
+ s("span", null, [
189
+ s("button", {
190
+ onClick: e[6] || (e[6] = D((t) => w(r.value - 1, u.value), ["prevent"]))
191
+ }, "«"),
192
+ s("button", {
193
+ onClick: e[7] || (e[7] = D((t) => {
194
+ d.value = 0, w(r.value, u.value - 1);
195
+ }, ["prevent"]))
196
+ }, "‹")
197
+ ]),
198
+ s("span", de, [
199
+ s("button", {
200
+ onClick: e[8] || (e[8] = D((t) => d.value = 2, ["prevent"]))
201
+ }, k(new Date(r.value, u.value + 1).getFullYear()), 1),
202
+ s("button", {
203
+ onClick: e[9] || (e[9] = D((t) => d.value = 2, ["prevent"]))
204
+ }, k(M(x)(y.value.setMonth(u.value + 1), "{F}")), 1)
205
+ ]),
206
+ s("span", null, [
207
+ s("button", {
208
+ onClick: e[10] || (e[10] = D((t) => {
209
+ d.value = 0, w(r.value, u.value + 1);
210
+ }, ["prevent"]))
211
+ }, "›"),
212
+ s("button", {
213
+ onClick: e[11] || (e[11] = D((t) => w(r.value + 1, u.value), ["prevent"]))
214
+ }, "»")
215
+ ])
216
+ ]),
217
+ d.value !== 2 ? (i(), v("div", De, [
218
+ (i(), v(_, null, Y(7, (t, n) => s("button", {
219
+ key: n,
220
+ class: "disabled"
221
+ }, k(M(x)(new Date(1970, 1, t + M($)), "{D}")), 1)), 64))
222
+ ])) : S("", !0),
223
+ d.value === 2 ? (i(), v("div", ge, [
224
+ (i(!0), v(_, null, Y(V.value, (t, n) => (i(), v("button", {
225
+ key: n,
226
+ onClick: D((g) => {
227
+ d.value = 0, w(r.value, n - 1);
228
+ }, ["prevent"])
229
+ }, k(t), 9, fe))), 128))
230
+ ])) : (i(), v("div", he, [
231
+ (i(!0), v(_, null, Y(o.value, (t, n) => (i(), v(_, { key: n }, [
232
+ n >= T.value - (7 + new Date(r.value, u.value + 1, 1).getDay() - M($)) % 7 ? (i(), v("button", {
233
+ key: 0,
234
+ class: H(t.month === L.value && I(t.year, t.month, t.day) ? t.class : "disabled"),
235
+ onClick: () => {
236
+ t.month === L.value && j(t, n);
237
+ }
238
+ }, k(t.day), 11, me)) : S("", !0)
239
+ ], 64))), 128))
240
+ ]))
241
+ ])) : S("", !0)
242
+ ]));
243
+ }
244
+ };
245
+ export {
246
+ ke as default
247
+ };
@@ -1,5 +1,5 @@
1
1
  import { mergeModels as y, useModel as V, ref as C, computed as I, watch as M, createElementBlock as d, openBlock as i, normalizeClass as A, createBlock as v, renderSlot as _, createCommentVNode as x, withDirectives as E, createTextVNode as N, toDisplayString as R, createElementVNode as T, vModelDynamic as F } from "vue";
2
- import { S } from "./index-B2W8qI6A.js";
2
+ import { S } from "./index-N3RlT28p.js";
3
3
  const O = ["for"], U = {
4
4
  key: 0,
5
5
  title: "Это поле обязательно для заполнения."
@@ -1 +1 @@
1
- @charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #8d800d;--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: #007bff;--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-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;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: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--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-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: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--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-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;z-index:1;top:0}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin-top:1rem;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-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:1rem;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-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-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}.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)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";color:var(--sw-color-primary);top:-.9rem;left:0;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{position:fixed;z-index:3;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%}.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);margin-top:.5rem}.sw-data-picker .year>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.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-text{color:var(--sw-color-default);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)}.sw-wrapper-alert{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}@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(--el-font-size-base);color:var(--el-text-color-regular);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
+ @charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #8d800d;--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: #007bff;--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-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;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: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--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-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: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--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-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;z-index:1;top:0}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin-top:1rem;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-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:1rem;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-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-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}.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)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";color:var(--sw-color-primary);top:-.9rem;left:0;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{position:fixed;z-index:3;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%}.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-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-text{color:var(--sw-color-default);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)}.sw-wrapper-alert{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}@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(--el-font-size-base);color:var(--el-text-color-regular);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)}
@@ -148,7 +148,7 @@ function w(e = {}) {
148
148
  }), t = n.mount(document.createElement("div"));
149
149
  l.appendChild(t.$el);
150
150
  }
151
- const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-DxAVOWF1.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-x4R7mk6I.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-BQwvEVfc.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CfnEis1u.js"), "./components/SwInput.vue": () => import("./SwInput-BbFakhxi.js"), "./components/SwMessage.vue": () => import("./SwMessage-BB2yKYsR.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSelect.vue": () => import("./SwSelect-0vcmQ8qv.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-BxSLWRTx.js"), "./components/SwTabs.vue": () => import("./SwTabs-DgvDpw7u.js"), "./components/SwTabsNew.vue": () => import("./SwTabsNew-Dr5Vyz6M.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-BUUmFjh7.js"), "./components/SwTabsPaneNew.vue": () => import("./SwTabsPaneNew-DFPu-sRT.js") }), d = {};
151
+ const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-DxAVOWF1.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-DfF6LBw-.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-BQwvEVfc.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CfnEis1u.js"), "./components/SwInput.vue": () => import("./SwInput-CV3z-EU7.js"), "./components/SwMessage.vue": () => import("./SwMessage-BB2yKYsR.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSelect.vue": () => import("./SwSelect-0vcmQ8qv.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-BxSLWRTx.js"), "./components/SwTabs.vue": () => import("./SwTabs-DgvDpw7u.js"), "./components/SwTabsNew.vue": () => import("./SwTabsNew-Dr5Vyz6M.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-BUUmFjh7.js"), "./components/SwTabsPaneNew.vue": () => import("./SwTabsPaneNew-DFPu-sRT.js") }), d = {};
152
152
  for (const e in h) {
153
153
  const n = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (t, o) => o.toUpperCase());
154
154
  d[n] = O(() => h[e]());
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- (function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T["component-sw"]={},T.vue))})(this,function(T,e){"use strict";function Q(a){return/^(https?:|mailto:|tel:)/.test(a)}function j(a,l){if(arguments.length===0||!a)return null;const t=l||"{Y}-{m}-{d} {G}:{i}:{s}";let o;typeof a=="object"?o=a:(typeof a=="string"&&(/^[0-9]+$/.test(a)?a=parseInt(a):a=a.replace(new RegExp(/-/gm),"/")),typeof a=="number"&&a.toString().length===10&&(a=a*1e3),o=new Date(a));const n="ru-RU",d={Y:o.getFullYear(),m:(o.getMonth()+1).toString().padStart(2,"0"),d:o.getDate(),dd:o.getDate().toString().padStart(2,"0"),G:o.getHours(),H:o.getHours().toString().padStart(2,"0"),i:o.getMinutes().toString().padStart(2,"0"),s:o.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(n,{weekday:"short"}).format(o),F:new Intl.DateTimeFormat(n,{month:"long"}).format(o),M:new Intl.DateTimeFormat(n,{month:"short"}).format(o)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(g,f)=>d[f])}const Z=(a,l)=>{const t=a.__vccOpts||a;for(const[o,n]of l)t[o]=n;return t},K={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return Q(this.iconClass)}}},ee=["href"];function te(a,l,t,o,n,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},a.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ee)],16))}const F=Z(K,[["render",te]]),Y={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:a=>["success","warning","error","info"].includes(a)}},emits:["closed"],setup(a,{emit:l}){const t=a,o=l,n=e.ref(!1);let d=null;const g=()=>{n.value=!0,$()},f=()=>{n.value=!1,o("closed")},i=()=>{d&&(clearTimeout(d),d=null)},u=()=>{$()},$=()=>{d=setTimeout(f,t.duration)};e.onMounted(()=>{g()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const D=e.computed(()=>{const p=["sw-alert"];return t.size.length>0&&p.push(`sw-${t.size}`),t.type.length>0&&p.push(`sw-${t.type}`),t.class.length>0&&p.push(t.class),p});return(p,S)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(D.value),onMouseenter:i,onMouseleave:u},[t.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(p.$slots,"prefix",{key:1}),e.renderSlot(p.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(F,{key:2,"icon-class":t.after,onClick:f},null,8,["icon-class"])):e.renderSlot(p.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},le=Object.freeze(Object.defineProperty({__proto__:null,default:Y},Symbol.toStringTag,{value:"Module"}));let P=document.querySelector("div.sw-alert-wrapper");function I(a={}){P||(P=document.createElement("div"),P.className="sw-alert-wrapper",document.body.appendChild(P));const l=e.createApp({setup(){return()=>e.h(Y,{...a,onClose:()=>{P.removeChild(l._container),l.unmount()}})}}),t=l.mount(document.createElement("div"));P.appendChild(t.$el)}const q=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>le),"./components/SwButton.vue":()=>Promise.resolve().then(()=>ne),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>ke),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>be),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Be),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>$e),"./components/SwInput.vue":()=>Promise.resolve().then(()=>Te),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Ne),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Oe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Ie),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>ve),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Ye),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Re),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>We),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Ge),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Je)}),v={};for(const a in q){const l=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,o)=>o.toUpperCase());v[l]=e.defineAsyncComponent(()=>q[a]())}const oe={install(a){Object.keys(v).forEach(l=>{a.component(l,v[l]),console.log(l)}),a.config.globalProperties.$Alert=I,a.provide("Alert",I)}},R={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(a){const l=a,t=()=>{if(l.href.length>0){const n=document.createElement("a");n.setAttribute("href",l.href),n.setAttribute("target","_blank"),n.click()}},o=e.computed(()=>{let n=["sw-button"];return l.size.length>0&&n.push("sw-"+l.size),l.type.length>0&&n.push("sw-"+l.type),l.round&&n.push("sw-round"),l.text&&n.push("sw-text"),l.link&&n.push("sw-link"),l.class.length>0&&n.push(l.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},ne=Object.freeze(Object.defineProperty({__proto__:null,default:R},Symbol.toStringTag,{value:"Module"})),ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{o.value="0px"});const l=e.ref(null),t=a,o=e.computed(()=>{var n;return t.visual?((n=l.value)==null?void 0:n.scrollHeight)+"px":"0px"});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({height:o.value}),ref_key:"collapse",ref:l},[e.renderSlot(n.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),se={class:"sw-data-picker"},re={class:"month_year"},ce={class:"text"},ie={key:0,class:"week"},de={key:1,class:"year"},pe={key:2,class:"month"},me=["onClick"],fe={key:0},ue={class:"month_year"},ge={class:"text"},he={key:0,class:"week"},ye={key:1,class:"year"},Se={key:2,class:"month"},_e=["onClick"],ke=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(a,{emit:l}){var U,G,X,J;const t=a,o=l,n=e.ref(0),d=e.ref(new Date),g=e.ref(new Date),f=e.ref(new Date().getFullYear()),i=e.ref(new Date().getMonth()),u=e.ref(new Date().getFullYear()),$=e.ref(new Date().getMonth()),D=e.ref(new Date().getMonth()+1),p=e.ref([]),S=e.ref(0),m=e.ref(-1),h=e.ref(-1),k=e.ref(navigator.languages||"ru"),w=/en|zh|ja|he/.test(k.value)?0:1,V=e.computed(()=>Array.from({length:12},(c,s)=>{const r=new Date(2024,s);return new Intl.DateTimeFormat(k.value,{month:"long"}).format(r)})),_=c=>{let s=c.split(c.match(/\D.*?\D?/));return s[0].length>2?s.join("-")+"T00:00:01":s.reverse().join("-")+"T00:00:01"};(U=t.data)!=null&&U.startDate&&(d.value=new Date(_(t.data.startDate)),f.value=d.value.getFullYear(),i.value=d.value.getMonth()),(G=t.data)!=null&&G.endDate&&t.range==="range"&&(g.value=new Date(_(t.data.endDate)),u.value=g.value.getFullYear(),$.value=g.value.getMonth());const b=()=>{p.value=[],S.value=0;const c=new Date(f.value,i.value,0);for(let r=c.getDate()-c.getDay()+w;r<=c.getDate();r++)c.getDay()!==6+w&&(p.value.push({day:r,month:c.getMonth(),year:c.getFullYear(),class:[]}),S.value++);const s=new Date(f.value,i.value+1,0).getDate();for(let r=1;r<=s;r++)p.value.push({day:r,month:i.value,year:f.value,class:[]}),S.value++;if(t.range==="range"){const r=new Date(f.value,i.value+1,1),y=new Date(f.value,i.value+2,0).getDate();for(let E=1;E<=y;E++)p.value.push({day:E,month:r.getMonth(),year:r.getFullYear(),class:[]})}x()},x=()=>{var s;if(!((s=t.data)!=null&&s.holiday))return;const c=(r,y)=>{r.forEach(E=>{const[B,M,C]=E.split("-").map(Number),O=p.value.findIndex(L=>L.year===B&&L.month+1===M&&L.day===C);O!==-1&&(p.value[O].class[0]=y)})};c(t.data.holiday.preholidays,"preholiday"),c(t.data.holiday.holidays,"weekend"),c(t.data.holiday.holiday,"holiday"),c(t.data.holiday.nowork,"nowork")},z=()=>{if(!t.limitation||t.limitation.length<2)return!1;const c=[...t.limitation].sort((s,r)=>new Date(_(s.startDate)).getTime()-new Date(_(r.startDate)).getTime());for(let s=1;s<c.length;s++){const r=new Date(_(c[s-1].endDate));if(new Date(_(c[s].startDate))<=r)return console.warn("Warning: Диапазоны пересекаются:",c[s-1],c[s]),!0}return!1},A=(c,s,r)=>{if(!t.limitation||t.limitation.length===0)return!0;const y=new Date(c,s,r).getTime();for(let E of t.limitation){const{startDate:B,endDate:M}=E;if(!B&&M){const C=new Date(_(M)).getTime();if(y<=C)return!1}if(B&&!M){const C=new Date(_(B)).getTime();if(y>=C)return!1}if(B&&M){const C=new Date(_(B)).getTime(),O=new Date(_(M)).getTime();if(C<=O){if(y>=C&&y<=O)return!1}else if(y>=C||y<=O)return!1}}return!0},W=(c,s)=>{const r=j(new Date(c.year,c.month,c.day),"{dd}.{m}.{Y}");t.range==="range"?h.value!==-1?(Qe(),m.value=s,p.value[s].class[1]="active"):m.value!==-1?(h.value=s,Ze(m.value,h.value,r)):(m.value=s,p.value[s].class[1]="active"):(m.value!==-1&&(p.value[m.value].class[1]=""),m.value=s,p.value[s].class[1]="active",o("input",{dateStart:r,count:1}))},Qe=()=>{p.value.forEach(c=>c.class[1]=""),m.value=-1,h.value=-1},Ze=(c,s,r)=>{let y=j(new Date(p.value[c].year,p.value[c].month,p.value[c].day),"{dd}.{m}.{Y}"),E=Ke(c,s);if(s>=c)for(let B=c+1;B<s;B++)p.value[B].class[1]="select";else for(let B=s+1;B<c;B++)p.value[B].class[1]="select";p.value[s].class[1]="active",o("input",{dateStart:y,dateEnd:r,count:E})},Ke=(c,s)=>{var B;let r=Math.abs(c-s)+1,[y,E]=[Math.min(c,s),Math.max(c,s)];for(let M=y;M<=E;M++)((B=p.value[M])==null?void 0:B.class[0])==="holiday"&&r--;return r},N=(c,s)=>{A(c,s)&&(d.value=new Date(c,s,1),f.value=d.value.getFullYear(),i.value=d.value.getMonth(),b())};if(b(),z()&&console.error("Ошибка: Найдены пересекающиеся диапазоны!"),(X=t.data)!=null&&X.startDate&&(m.value=p.value.findIndex(c=>c.day===d.value.getDate()&&c.month===i.value&&c.year===f.value),m.value!==-1&&(p.value[m.value].class[1]="active")),(J=t.data)!=null&&J.endDate&&t.range==="range"&&(h.value=p.value.findIndex(c=>c.day===g.value.getDate()&&c.month===$.value&&c.year===u.value),h.value!==-1)){p.value[h.value].class[1]="active";for(let c=m.value+1;c<h.value;c++)p.value[c].class[1]="select"}return(c,s)=>(e.openBlock(),e.createElementBlock("div",se,[e.createElementVNode("div",null,[e.createElementVNode("p",re,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(r=>N(f.value-1,i.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[1]||(s[1]=e.withModifiers(r=>N(f.value,i.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",ce,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(r=>n.value=1,["prevent"]))},e.toDisplayString(f.value),1),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(r=>n.value=1,["prevent"]))},e.toDisplayString(e.unref(j)(d.value.setMonth(i.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(r=>N(f.value,i.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(r=>N(f.value+1,i.value),["prevent"]))},"»")])]),t.range==="year"||n.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ie,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,y)=>e.createElementVNode("button",{key:y,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(w)),"{D}")),1)),64))])),t.range==="year"||n.value===1?(e.openBlock(),e.createElementBlock("div",de,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(r,y)=>(e.openBlock(),e.createElementBlock("button",{key:y},e.toDisplayString(r),1))),128))])):(e.openBlock(),e.createElementBlock("div",pe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(r,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:y},[y<S.value+(7-new Date(f.value,i.value+1,1).getDay()+e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===i.value&&A(r.year,r.month,r.day)?r.class:"disabled"),onClick:()=>{r.month===i.value&&W(r,y)}},e.toDisplayString(r.day),11,me)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",fe,[e.createElementVNode("p",ue,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[6]||(s[6]=e.withModifiers(r=>N(f.value-1,i.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[7]||(s[7]=e.withModifiers(r=>N(f.value,i.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",ge,[e.createElementVNode("button",{onClick:s[8]||(s[8]=e.withModifiers(r=>n.value=2,["prevent"]))},e.toDisplayString(new Date(f.value,i.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:s[9]||(s[9]=e.withModifiers(r=>n.value=2,["prevent"]))},e.toDisplayString(e.unref(j)(d.value.setMonth(i.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[10]||(s[10]=e.withModifiers(r=>N(f.value,i.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[11]||(s[11]=e.withModifiers(r=>N(f.value+1,i.value),["prevent"]))},"»")])]),n.value!==2?(e.openBlock(),e.createElementBlock("div",he,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,y)=>e.createElementVNode("button",{key:y,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(w)),"{D}")),1)),64))])):e.createCommentVNode("",!0),n.value===2?(e.openBlock(),e.createElementBlock("div",ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(r,y)=>(e.openBlock(),e.createElementBlock("button",{key:y},e.toDisplayString(r),1))),128))])):(e.openBlock(),e.createElementBlock("div",Se,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(r,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:y},[y>=S.value-(7+new Date(f.value,i.value+1,1).getDay()-e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===D.value&&A(r.year,r.month,r.day)?r.class:"disabled"),onClick:()=>{r.month===D.value&&W(r,y)}},e.toDisplayString(r.day),11,_e)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),we=["id"],be=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0},manual:{type:Boolean,default:!1}},setup(a){const l=a;e.computed(()=>"dropdown"+Array.from(document.body.children).indexOf(document.querySelector("ul")));const t=e.ref(!1),o=e.ref(null),n=e.ref(null),d=e.ref({}),g=Math.ceil(Math.random()*1e3),f=e.computed(()=>{let m=["sw-dropdown"];return l.size.length>0&&m.push("sw-"+l.size),l.type.length>0&&m.push("sw-"+l.type),m});e.watch(()=>l.manual,m=>{t.value=m,console.log("watch",t.value),t.value&&i()});const i=async()=>{if(await e.nextTick(),!n.value)return;const m=window.pageYOffset||document.documentElement.scrollTop,h=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${m}px`,document.body.style.left=`-${h}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=m,document.documentElement.scrollLeft=h;const k=o.value.getBoundingClientRect(),w=n.value.offsetHeight,V=n.value.offsetWidth;console.log("popupHeight",w),console.log("popupWidth",V);let _=k.left+k.width/2+h,b=k.top+k.height/2+m;const[x,z]=l.placement.split("-",2);switch(console.log(l.placement),x){case"bottom":b=b+k.height/2+8;break;case"top":b=b-k.height/2-8-w;break;case"left":_=_-V-k.width/2-8,b=b-w/2;break;case"right":_=_+k.width/2+8,b=b-w/2;break}switch(z){case"left":_=_-k.width/2;break;case"right":_=_-V+k.width/2;break}_<0&&(_=0),b<0&&(b=0),d.value={position:"absolute",top:`${b}px`,left:`${_}px`,maxWidth:l.maxWidth===0?"":`${l.maxWidth}px`}},u=()=>{l.trigger==="click"&&(t.value=!t.value),t.value&&i()},$=()=>{l.trigger==="hover"&&(t.value=!t.value),t.value&&i()},D=()=>{l.trigger==="context"&&(t.value=!t.value),t.value&&i()},p=()=>{t.value&&i()},S=m=>{!m.target.closest(`[id="${g}"]`)&&o.value&&!o.value.contains(m.target)&&(t.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",p),window.addEventListener("click",S)}),e.onUnmounted(()=>{window.removeEventListener("resize",p),window.removeEventListener("click",S)}),(m,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(f.value),onClick:h[0]||(h[0]=k=>u()),onMouseover:h[1]||(h[1]=e.withModifiers(k=>$(),["stop"])),onMouseleave:h[2]||(h[2]=e.withModifiers(k=>$(),["stop"])),onContextmenu:h[3]||(h[3]=e.withModifiers(k=>D(),["stop"])),ref_key:"dropdownRef",ref:o},[e.renderSlot(m.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:n,id:e.unref(g),class:e.normalizeClass(["sw-dropdown-popup",l.class]),style:e.normalizeStyle(d.value),tabindex:"-1"},[e.renderSlot(m.$slots,"dropdown")],14,we)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Be=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let o=["sw-dropdown-item"];return l.size.length>0&&o.push("sw-"+l.size),l.type.length>0&&o.push("sw-"+l.type),l.class.length>0&&o.push(l.class),o});return(o,n)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(o.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let o=["sw-form-item"];return l.type.length>0&&o.push("sw-"+l.type),l.class.length>0&&o.push(l.class),o});return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),De=["for"],Ee={key:0,title:"Это поле обязательно для заполнения."},Me=["required","placeholder","type","id","name"],Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(a,{emit:l}){var p;const t=e.useModel(a,"modelValue"),o=a,n=e.ref(null),d=l,g=S=>{d("focusInput"),S.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},f=S=>{var m;((m=t.value)==null?void 0:m.length)===0&&n.value!==null&&n.value.removeAttribute("style")};((p=t.value)==null?void 0:p.length)>0&&n.value!==null&&(n.value.style.top="-.6em");const i=()=>{d("suffix")},u=()=>{d("prefix")},$=e.computed(()=>{let S=["sw-input"];return o.size.length>0&&S.push("sw-"+o.size),o.class.length>0&&S.push(o.class),S});e.watch(t,(S,m)=>{o.type==="phone"&&(t.value=D(S,m))});const D=(S,m)=>{if(/^\+[0-9]\s/.test(m)&&S.length===2||/^\+0\s/.test(S))return"";const h=S;if(typeof h>"u"||h.length===0)return h;const k="+0 (___) ___-__-__";let w=0;const V=k.replace(/\D/g,""),_=h.replace(/\D/g,"");let b=k.replace(/[_\d]/g,z=>w<_.length?_.charAt(w++)||V.charAt(w):z);w=b.indexOf("_"),w!==-1&&(w=w<5?3:w,b=b.slice(0,w));let x=k.slice(0,h.length).replace(/_+/g,z=>`\\d{1,${z.length}}`).replace(/[+()]/g,"\\$&");if(x=new RegExp(`^${x}$`),b=b.replace(/[-—]$|(\) )$/g,""),!x.test(h)||h.length<5)return b};return(S,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass($.value)},[o.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":o.before,onClick:u},null,8,["icon-class"])):e.renderSlot(S.$slots,"prefix",{key:1}),o.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:o.name,ref_key:"lab",ref:n},[e.createTextVNode(e.toDisplayString(o.label),1),o.required?(e.openBlock(),e.createElementBlock("span",Ee,"*")):e.createCommentVNode("",!0)],8,De)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":m[0]||(m[0]=h=>t.value=h),required:o.required,placeholder:o.required&&o.label.length===0?o.placeholder+"*":o.placeholder,type:o.type,id:o.name,name:o.name,size:"60",onFocus:g,onBlur:f,maxlength:"128"},null,40,Me),[[e.vModelDynamic,t.value]]),o.after.length>0?(e.openBlock(),e.createBlock(F,{key:3,"icon-class":o.after,onClick:i},null,8,["icon-class"])):e.renderSlot(S.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),Ce={key:0},Ve=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,o=e.ref(null);return(n,d)=>{const g=e.resolveComponent("svg-icon");return l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:o},[t.name.length>0?(e.openBlock(),e.createElementBlock("header",Ce,[e.renderSlot(n.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(R,{link:"",type:"primary",onClick:d[0]||(d[0]=f=>l.value=!1)},{default:e.withCtx(()=>[e.createVNode(g,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default",{},()=>[d[1]||(d[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(n.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Ne=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},setup(a){const l=a;return(t,o)=>{const n=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(l.class)},[e.createElementVNode("header",null,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.name)+" ",1),e.createVNode(n,{"icon-class":l.iconAfter},null,8,["icon-class"])])]),e.renderSlot(t.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),xe={class:"popup"},ze={class:"wrapper"},je={class:"scrollbar"},Pe=["onClick"],Oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.ref({fullText:""}),t=e.ref(!1),o=e.ref([]),n=e.useModel(a,"modelValue"),d=a;e.watch(n.text,i=>{i.length>3&&(l.value.fullText=i)}),e.watch(l.value.fullText,(i,u)=>{t.value=i.length>3&&i.length>u.length,i.length>3&&g()});const g=()=>{let i="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(l.value.fullText),axios.post(i,{query:l.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(u=>{console.log(u.data.suggestions),o.value=u.data.suggestions,o.value.length===1&&f(o.value[0])}).catch(u=>{console.log(u)})},f=i=>{l.value.fullText=i.value,t.value=!1;const u={};u.text=i.value,u.coords=[Number(i.data.geo_lat),Number(i.data.geo_lon)],u.suggestion=i.data,n.value=u};return(i,u)=>{const $=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",xe,[e.createVNode($,{size:"large",modelValue:l.value.fullText,"onUpdate:modelValue":u[0]||(u[0]=D=>l.value.fullText=D),placeholder:a.placeholder},null,8,["modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",ze,[e.createElementVNode("ul",je,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(D,p)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:p,onClick:S=>f(D)},e.toDisplayString(D.value),9,Pe))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Fe={key:0},H={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let n=["sw-skeleton-item"];return l.size.length>0&&n.push("sw-"+l.size),l.animate&&n.push("sw-animate"),l.class.length>0&&n.push(l.class),n}),o=e.computed(()=>({width:l.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(o.value)},[l.animate?(e.openBlock(),e.createElementBlock("div",Fe)):e.createCommentVNode("",!0)],6))}},ve=Object.freeze(Object.defineProperty({__proto__:null,default:H},Symbol.toStringTag,{value:"Module"})),Ie=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const l=a;return(t,o)=>l.visual?e.renderSlot(t.$slots,"default",{key:0},()=>[o[0]||(o[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",l.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(H,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ae=["name","id"],Le=["for","data-onlabel","data-offlabel"],Ye=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,o=e.computed(()=>{let n=["sw-switch"];return t.size.length>0&&n.push("sw-"+t.size),t.checkbox&&n.push("sw-checkbox"),t.class.length>0&&n.push(t.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=g=>l.value=g)},null,8,Ae),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,Le),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),qe=["onClick"],Re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),o=a,n=e.useModel(a,"modelValue"),d=l;return t.value=e.useSlots().default().filter(g=>g.type.__name==="SwTabsPane"),e.provide("activeTab",n),e.provide("tabs",t),(g,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(i,u)=>(e.openBlock(),e.createElementBlock("span",{key:u,class:e.normalizeClass([{active:n.value===u}]),onClick:$=>{n.value=u,d("tab-click",u)}},e.toDisplayString(i.props.label||i.props.title),11,qe))),128))]),e.renderSlot(g.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),He=["onClick"],We=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsNew",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),o=a,n=e.useModel(a,"modelValue"),d=l;return e.provide("activeTab",n),e.provide("tabs",t),e.provide("registerTab",g=>{t.value.push(g)}),(g,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(i,u)=>(e.openBlock(),e.createElementBlock("span",{key:u,class:e.normalizeClass([{active:n.value===u}]),onClick:$=>{n.value=u,d("tab-click",u)}},e.toDisplayString(i.props.label||i.props.title),11,He))),128))]),e.renderSlot(g.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ue={key:0,class:"tab-content"},Ge=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const l=a,t=e.inject("activeTab"),o=e.inject("tabs"),n=e.computed(()=>{const d=o.value.findIndex(g=>g.props.title===l.title);return t.value===d});return(d,g)=>n.value?(e.openBlock(),e.createElementBlock("div",Ue,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Xe={key:0,class:"tab-content"},Je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const l=a,t=e.inject("registerTab");if(!t)throw new Error("SwTabsPane must be used inside SwTabs");t({props:l});const o=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const d=e.inject("tabs").value.length-1;return(g,f)=>e.unref(o)===d?(e.openBlock(),e.createElementBlock("div",Xe,[e.renderSlot(g.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));T.Alert=I,T.Library=oe,T.components=v,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
1
+ (function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T["component-sw"]={},T.vue))})(this,function(T,e){"use strict";function Q(a){return/^(https?:|mailto:|tel:)/.test(a)}function j(a,l){if(arguments.length===0||!a)return null;const t=l||"{Y}-{m}-{d} {G}:{i}:{s}";let n;typeof a=="object"?n=a:(typeof a=="string"&&(/^[0-9]+$/.test(a)?a=parseInt(a):a=a.replace(new RegExp(/-/gm),"/")),typeof a=="number"&&a.toString().length===10&&(a=a*1e3),n=new Date(a));const o="ru-RU",d={Y:n.getFullYear(),m:(n.getMonth()+1).toString().padStart(2,"0"),d:n.getDate(),dd:n.getDate().toString().padStart(2,"0"),G:n.getHours(),H:n.getHours().toString().padStart(2,"0"),i:n.getMinutes().toString().padStart(2,"0"),s:n.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(o,{weekday:"short"}).format(n),F:new Intl.DateTimeFormat(o,{month:"long"}).format(n),M:new Intl.DateTimeFormat(o,{month:"short"}).format(n)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(h,m)=>d[m])}const Z=(a,l)=>{const t=a.__vccOpts||a;for(const[n,o]of l)t[n]=o;return t},K={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return Q(this.iconClass)}}},ee=["href"];function te(a,l,t,n,o,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},a.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ee)],16))}const v=Z(K,[["render",te]]),q={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:a=>["success","warning","error","info"].includes(a)}},emits:["closed"],setup(a,{emit:l}){const t=a,n=l,o=e.ref(!1);let d=null;const h=()=>{o.value=!0,$()},m=()=>{o.value=!1,n("closed")},i=()=>{d&&(clearTimeout(d),d=null)},u=()=>{$()},$=()=>{d=setTimeout(m,t.duration)};e.onMounted(()=>{h()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const D=e.computed(()=>{const p=["sw-alert"];return t.size.length>0&&p.push(`sw-${t.size}`),t.type.length>0&&p.push(`sw-${t.type}`),t.class.length>0&&p.push(t.class),p});return(p,_)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(D.value),onMouseenter:i,onMouseleave:u},[t.before.length>0?(e.openBlock(),e.createBlock(v,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(p.$slots,"prefix",{key:1}),e.renderSlot(p.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(v,{key:2,"icon-class":t.after,onClick:m},null,8,["icon-class"])):e.renderSlot(p.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},le=Object.freeze(Object.defineProperty({__proto__:null,default:q},Symbol.toStringTag,{value:"Module"}));let P=document.querySelector("div.sw-alert-wrapper");function I(a={}){P||(P=document.createElement("div"),P.className="sw-alert-wrapper",document.body.appendChild(P));const l=e.createApp({setup(){return()=>e.h(q,{...a,onClose:()=>{P.removeChild(l._container),l.unmount()}})}}),t=l.mount(document.createElement("div"));P.appendChild(t.$el)}const R=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>le),"./components/SwButton.vue":()=>Promise.resolve().then(()=>ne),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>be),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>$e),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>De),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwInput.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>xe),"./components/SwSection.vue":()=>Promise.resolve().then(()=>ze),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Le),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Ae),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Re),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>We),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ge),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Je),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Ze)}),F={};for(const a in R){const l=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,n)=>n.toUpperCase());F[l]=e.defineAsyncComponent(()=>R[a]())}const oe={install(a){Object.keys(F).forEach(l=>{a.component(l,F[l]),console.log(l)}),a.config.globalProperties.$Alert=I,a.provide("Alert",I)}},H={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(a){const l=a,t=()=>{if(l.href.length>0){const o=document.createElement("a");o.setAttribute("href",l.href),o.setAttribute("target","_blank"),o.click()}},n=e.computed(()=>{let o=["sw-button"];return l.size.length>0&&o.push("sw-"+l.size),l.type.length>0&&o.push("sw-"+l.type),l.round&&o.push("sw-round"),l.text&&o.push("sw-text"),l.link&&o.push("sw-link"),l.class.length>0&&o.push(l.class),o});return(o,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(n.value),onClick:t},[e.renderSlot(o.$slots,"default")],2))}},ne=Object.freeze(Object.defineProperty({__proto__:null,default:H},Symbol.toStringTag,{value:"Module"})),ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{n.value="0px"});const l=e.ref(null),t=a,n=e.computed(()=>{var o;return t.visual?((o=l.value)==null?void 0:o.scrollHeight)+"px":"0px"});return(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({height:n.value}),ref_key:"collapse",ref:l},[e.renderSlot(o.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),se={class:"sw-data-picker"},re={class:"month_year"},ce={class:"text"},ie={key:0,class:"week"},de={key:1,class:"year"},pe=["onClick"],me={key:2,class:"month"},fe=["onClick"],ue={key:0},ge={class:"month_year"},he={class:"text"},ye={key:0,class:"week"},_e={key:1,class:"year"},Se=["onClick"],ke={key:2,class:"month"},we=["onClick"],be=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(a,{emit:l}){var U,G,X,J;const t=a,n=l,o=e.ref(0),d=e.ref(new Date),h=e.ref(new Date),m=e.ref(new Date().getFullYear()),i=e.ref(new Date().getMonth()),u=e.ref(new Date().getFullYear()),$=e.ref(new Date().getMonth()),D=e.ref(new Date().getMonth()+1),p=e.ref([]),_=e.ref(0),f=e.ref(-1),y=e.ref(-1),k=e.ref(navigator.languages||"ru"),w=/en|zh|ja|he/.test(k.value)?0:1,N=e.computed(()=>Array.from({length:12},(c,s)=>{const r=new Date(2024,s);return new Intl.DateTimeFormat(k.value,{month:"long"}).format(r)})),S=c=>{let s=c.split(c.match(/\D.*?\D?/));return s[0].length>2?s.join("-")+"T00:00:01":s.reverse().join("-")+"T00:00:01"};(U=t.data)!=null&&U.startDate&&(d.value=new Date(S(t.data.startDate)),m.value=d.value.getFullYear(),i.value=d.value.getMonth()),(G=t.data)!=null&&G.endDate&&t.range==="range"&&(h.value=new Date(S(t.data.endDate)),u.value=h.value.getFullYear(),$.value=h.value.getMonth());const b=()=>{p.value=[],_.value=0;const c=new Date(m.value,i.value,0);for(let r=c.getDate()-c.getDay()+w;r<=c.getDate();r++)c.getDay()!==6+w&&(p.value.push({day:r,month:c.getMonth(),year:c.getFullYear(),class:[]}),_.value++);const s=new Date(m.value,i.value+1,0).getDate();for(let r=1;r<=s;r++)p.value.push({day:r,month:i.value,year:m.value,class:[]}),_.value++;if(t.range==="range"){const r=new Date(m.value,i.value+1,1),g=new Date(m.value,i.value+2,0).getDate();for(let E=1;E<=g;E++)p.value.push({day:E,month:r.getMonth(),year:r.getFullYear(),class:[]})}x()},x=()=>{var s;if(!((s=t.data)!=null&&s.holiday))return;const c=(r,g)=>{r.forEach(E=>{const[B,M,V]=E.split("-").map(Number),O=p.value.findIndex(Y=>Y.year===B&&Y.month+1===M&&Y.day===V);O!==-1&&(p.value[O].class[0]=g)})};c(t.data.holiday.preholidays,"preholiday"),c(t.data.holiday.holidays,"weekend"),c(t.data.holiday.holiday,"holiday"),c(t.data.holiday.nowork,"nowork")},z=()=>{if(!t.limitation||t.limitation.length<2)return!1;const c=[...t.limitation].sort((s,r)=>new Date(S(s.startDate)).getTime()-new Date(S(r.startDate)).getTime());for(let s=1;s<c.length;s++){const r=new Date(S(c[s-1].endDate));if(new Date(S(c[s].startDate))<=r)return console.warn("Warning: Диапазоны пересекаются:",c[s-1],c[s]),!0}return!1},A=(c,s,r)=>{if(!t.limitation||t.limitation.length===0)return!0;const g=new Date(c,s,r).getTime();for(let E of t.limitation){const{startDate:B,endDate:M}=E;if(!B&&M){const V=new Date(S(M)).getTime();if(g<=V)return!1}if(B&&!M){const V=new Date(S(B)).getTime();if(g>=V)return!1}if(B&&M){const V=new Date(S(B)).getTime(),O=new Date(S(M)).getTime();if(V<=O){if(g>=V&&g<=O)return!1}else if(g>=V||g<=O)return!1}}return!0},L=(c,s)=>{const r=j(new Date(c.year,c.month,c.day),"{dd}.{m}.{Y}");t.range==="range"?y.value!==-1?(Ke(),f.value=s,p.value[s].class[1]="active"):f.value!==-1?(y.value=s,et(f.value,y.value,r)):(f.value=s,p.value[s].class[1]="active"):(f.value!==-1&&(p.value[f.value].class[1]=""),f.value=s,p.value[s].class[1]="active",n("input",{dateStart:r,count:1}))},Ke=()=>{p.value.forEach(c=>c.class[1]=""),f.value=-1,y.value=-1},et=(c,s,r)=>{let g=j(new Date(p.value[c].year,p.value[c].month,p.value[c].day),"{dd}.{m}.{Y}"),E=tt(c,s);if(s>=c)for(let B=c+1;B<s;B++)p.value[B].class[1]="select";else for(let B=s+1;B<c;B++)p.value[B].class[1]="select";p.value[s].class[1]="active",n("input",{dateStart:g,dateEnd:r,count:E})},tt=(c,s)=>{var B;let r=Math.abs(c-s)+1,[g,E]=[Math.min(c,s),Math.max(c,s)];for(let M=g;M<=E;M++)((B=p.value[M])==null?void 0:B.class[0])==="holiday"&&r--;return r},C=(c,s)=>{A(c,s)&&(d.value=new Date(c,s,1),m.value=d.value.getFullYear(),i.value=d.value.getMonth(),t.range==="year"?L({year:c,month:s,day:1},8):b())};if(b(),z()&&console.error("Ошибка: Найдены пересекающиеся диапазоны!"),(X=t.data)!=null&&X.startDate&&(f.value=p.value.findIndex(c=>c.day===d.value.getDate()&&c.month===i.value&&c.year===m.value),f.value!==-1&&(p.value[f.value].class[1]="active")),(J=t.data)!=null&&J.endDate&&t.range==="range"&&(y.value=p.value.findIndex(c=>c.day===h.value.getDate()&&c.month===$.value&&c.year===u.value),y.value!==-1)){p.value[y.value].class[1]="active";for(let c=f.value+1;c<y.value;c++)p.value[c].class[1]="select"}return(c,s)=>(e.openBlock(),e.createElementBlock("div",se,[e.createElementVNode("div",null,[e.createElementVNode("p",re,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(r=>C(m.value-1,i.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[1]||(s[1]=e.withModifiers(r=>{o.value=0,C(m.value,i.value-1)},["prevent"]))},"‹")]),e.createElementVNode("span",ce,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(r=>o.value=1,["prevent"]))},e.toDisplayString(m.value),1),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(r=>o.value=1,["prevent"]))},e.toDisplayString(e.unref(j)(d.value.setMonth(i.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(r=>{o.value=0,C(m.value,i.value+1)},["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(r=>C(m.value+1,i.value),["prevent"]))},"»")])]),t.range==="year"||o.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ie,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,g)=>e.createElementVNode("button",{key:g,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(w)),"{D}")),1)),64))])),t.range==="year"||o.value===1?(e.openBlock(),e.createElementBlock("div",de,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(r,g)=>(e.openBlock(),e.createElementBlock("button",{key:g,onClick:e.withModifiers(E=>{o.value=0,C(m.value,g)},["prevent"])},e.toDisplayString(r),9,pe))),128))])):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(r,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g},[g<_.value+(7-new Date(m.value,i.value+1,1).getDay()+e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===i.value&&A(r.year,r.month,r.day)?r.class:"disabled"),onClick:()=>{r.month===i.value&&L(r,g)}},e.toDisplayString(r.day),11,fe)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ue,[e.createElementVNode("p",ge,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[6]||(s[6]=e.withModifiers(r=>C(m.value-1,i.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[7]||(s[7]=e.withModifiers(r=>{o.value=0,C(m.value,i.value-1)},["prevent"]))},"‹")]),e.createElementVNode("span",he,[e.createElementVNode("button",{onClick:s[8]||(s[8]=e.withModifiers(r=>o.value=2,["prevent"]))},e.toDisplayString(new Date(m.value,i.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:s[9]||(s[9]=e.withModifiers(r=>o.value=2,["prevent"]))},e.toDisplayString(e.unref(j)(d.value.setMonth(i.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[10]||(s[10]=e.withModifiers(r=>{o.value=0,C(m.value,i.value+1)},["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[11]||(s[11]=e.withModifiers(r=>C(m.value+1,i.value),["prevent"]))},"»")])]),o.value!==2?(e.openBlock(),e.createElementBlock("div",ye,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,g)=>e.createElementVNode("button",{key:g,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(w)),"{D}")),1)),64))])):e.createCommentVNode("",!0),o.value===2?(e.openBlock(),e.createElementBlock("div",_e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(N.value,(r,g)=>(e.openBlock(),e.createElementBlock("button",{key:g,onClick:e.withModifiers(E=>{o.value=0,C(m.value,g-1)},["prevent"])},e.toDisplayString(r),9,Se))),128))])):(e.openBlock(),e.createElementBlock("div",ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(r,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g},[g>=_.value-(7+new Date(m.value,i.value+1,1).getDay()-e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===D.value&&A(r.year,r.month,r.day)?r.class:"disabled"),onClick:()=>{r.month===D.value&&L(r,g)}},e.toDisplayString(r.day),11,we)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),Be=["id"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0},manual:{type:Boolean,default:!1}},setup(a){const l=a;e.computed(()=>"dropdown"+Array.from(document.body.children).indexOf(document.querySelector("ul")));const t=e.ref(!1),n=e.ref(null),o=e.ref(null),d=e.ref({}),h=Math.ceil(Math.random()*1e3),m=e.computed(()=>{let f=["sw-dropdown"];return l.size.length>0&&f.push("sw-"+l.size),l.type.length>0&&f.push("sw-"+l.type),f});e.watch(()=>l.manual,f=>{t.value=f,console.log("watch",t.value),t.value&&i()});const i=async()=>{if(await e.nextTick(),!o.value)return;const f=window.pageYOffset||document.documentElement.scrollTop,y=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${f}px`,document.body.style.left=`-${y}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=f,document.documentElement.scrollLeft=y;const k=n.value.getBoundingClientRect(),w=o.value.offsetHeight,N=o.value.offsetWidth;console.log("popupHeight",w),console.log("popupWidth",N);let S=k.left+k.width/2+y,b=k.top+k.height/2+f;const[x,z]=l.placement.split("-",2);switch(console.log(l.placement),x){case"bottom":b=b+k.height/2+8;break;case"top":b=b-k.height/2-8-w;break;case"left":S=S-N-k.width/2-8,b=b-w/2;break;case"right":S=S+k.width/2+8,b=b-w/2;break}switch(z){case"left":S=S-k.width/2;break;case"right":S=S-N+k.width/2;break}S<0&&(S=0),b<0&&(b=0),d.value={position:"absolute",top:`${b}px`,left:`${S}px`,maxWidth:l.maxWidth===0?"":`${l.maxWidth}px`}},u=()=>{l.trigger==="click"&&(t.value=!t.value),t.value&&i()},$=()=>{l.trigger==="hover"&&(t.value=!t.value),t.value&&i()},D=()=>{l.trigger==="context"&&(t.value=!t.value),t.value&&i()},p=()=>{t.value&&i()},_=f=>{!f.target.closest(`[id="${h}"]`)&&n.value&&!n.value.contains(f.target)&&(t.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",p),window.addEventListener("click",_)}),e.onUnmounted(()=>{window.removeEventListener("resize",p),window.removeEventListener("click",_)}),(f,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(m.value),onClick:y[0]||(y[0]=k=>u()),onMouseover:y[1]||(y[1]=e.withModifiers(k=>$(),["stop"])),onMouseleave:y[2]||(y[2]=e.withModifiers(k=>$(),["stop"])),onContextmenu:y[3]||(y[3]=e.withModifiers(k=>D(),["stop"])),ref_key:"dropdownRef",ref:n},[e.renderSlot(f.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:o,id:e.unref(h),class:e.normalizeClass(["sw-dropdown-popup",l.class]),style:e.normalizeStyle(d.value),tabindex:"-1"},[e.renderSlot(f.$slots,"dropdown")],14,Be)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),De=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let n=["sw-dropdown-item"];return l.size.length>0&&n.push("sw-"+l.size),l.type.length>0&&n.push("sw-"+l.type),l.class.length>0&&n.push(l.class),n});return(n,o)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(n.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Ee=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let n=["sw-form-item"];return l.type.length>0&&n.push("sw-"+l.type),l.class.length>0&&n.push(l.class),n});return(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Me=["for"],Ce={key:0,title:"Это поле обязательно для заполнения."},Te=["required","placeholder","type","id","name"],Ve=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(a,{emit:l}){var p;const t=e.useModel(a,"modelValue"),n=a,o=e.ref(null),d=l,h=_=>{d("focusInput"),_.target.setSelectionRange(t.value.length,t.value.length),o.value!==null&&(o.value.style.top="-.6em")},m=_=>{var f;((f=t.value)==null?void 0:f.length)===0&&o.value!==null&&o.value.removeAttribute("style")};((p=t.value)==null?void 0:p.length)>0&&o.value!==null&&(o.value.style.top="-.6em");const i=()=>{d("suffix")},u=()=>{d("prefix")},$=e.computed(()=>{let _=["sw-input"];return n.size.length>0&&_.push("sw-"+n.size),n.class.length>0&&_.push(n.class),_});e.watch(t,(_,f)=>{n.type==="phone"&&(t.value=D(_,f))});const D=(_,f)=>{if(/^\+[0-9]\s/.test(f)&&_.length===2||/^\+0\s/.test(_))return"";const y=_;if(typeof y>"u"||y.length===0)return y;const k="+0 (___) ___-__-__";let w=0;const N=k.replace(/\D/g,""),S=y.replace(/\D/g,"");let b=k.replace(/[_\d]/g,z=>w<S.length?S.charAt(w++)||N.charAt(w):z);w=b.indexOf("_"),w!==-1&&(w=w<5?3:w,b=b.slice(0,w));let x=k.slice(0,y.length).replace(/_+/g,z=>`\\d{1,${z.length}}`).replace(/[+()]/g,"\\$&");if(x=new RegExp(`^${x}$`),b=b.replace(/[-—]$|(\) )$/g,""),!x.test(y)||y.length<5)return b};return(_,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass($.value)},[n.before.length>0?(e.openBlock(),e.createBlock(v,{key:0,"icon-class":n.before,onClick:u},null,8,["icon-class"])):e.renderSlot(_.$slots,"prefix",{key:1}),n.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:n.name,ref_key:"lab",ref:o},[e.createTextVNode(e.toDisplayString(n.label),1),n.required?(e.openBlock(),e.createElementBlock("span",Ce,"*")):e.createCommentVNode("",!0)],8,Me)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":f[0]||(f[0]=y=>t.value=y),required:n.required,placeholder:n.required&&n.label.length===0?n.placeholder+"*":n.placeholder,type:n.type,id:n.name,name:n.name,size:"60",onFocus:h,onBlur:m,maxlength:"128"},null,40,Te),[[e.vModelDynamic,t.value]]),n.after.length>0?(e.openBlock(),e.createBlock(v,{key:3,"icon-class":n.after,onClick:i},null,8,["icon-class"])):e.renderSlot(_.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),Ne={key:0},xe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,n=e.ref(null);return(o,d)=>{const h=e.resolveComponent("svg-icon");return l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:n},[t.name.length>0?(e.openBlock(),e.createElementBlock("header",Ne,[e.renderSlot(o.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(H,{link:"",type:"primary",onClick:d[0]||(d[0]=m=>l.value=!1)},{default:e.withCtx(()=>[e.createVNode(h,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(o.$slots,"default",{},()=>[d[1]||(d[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(o.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},setup(a){const l=a;return(t,n)=>{const o=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(l.class)},[e.createElementVNode("header",null,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.name)+" ",1),e.createVNode(o,{"icon-class":l.iconAfter},null,8,["icon-class"])])]),e.renderSlot(t.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),je={class:"popup"},Pe={class:"wrapper"},Oe={class:"scrollbar"},ve=["onClick"],Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.ref({fullText:""}),t=e.ref(!1),n=e.ref([]),o=e.useModel(a,"modelValue"),d=a;e.watch(o.text,i=>{i.length>3&&(l.value.fullText=i)}),e.watch(l.value.fullText,(i,u)=>{t.value=i.length>3&&i.length>u.length,i.length>3&&h()});const h=()=>{let i="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(l.value.fullText),axios.post(i,{query:l.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(u=>{console.log(u.data.suggestions),n.value=u.data.suggestions,n.value.length===1&&m(n.value[0])}).catch(u=>{console.log(u)})},m=i=>{l.value.fullText=i.value,t.value=!1;const u={};u.text=i.value,u.coords=[Number(i.data.geo_lat),Number(i.data.geo_lon)],u.suggestion=i.data,o.value=u};return(i,u)=>{const $=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",je,[e.createVNode($,{size:"large",modelValue:l.value.fullText,"onUpdate:modelValue":u[0]||(u[0]=D=>l.value.fullText=D),placeholder:a.placeholder},null,8,["modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Pe,[e.createElementVNode("ul",Oe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(D,p)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:p,onClick:_=>m(D)},e.toDisplayString(D.value),9,ve))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Ie={key:0},W={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let o=["sw-skeleton-item"];return l.size.length>0&&o.push("sw-"+l.size),l.animate&&o.push("sw-animate"),l.class.length>0&&o.push(l.class),o}),n=e.computed(()=>({width:l.width+"%"}));return(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(n.value)},[l.animate?(e.openBlock(),e.createElementBlock("div",Ie)):e.createCommentVNode("",!0)],6))}},Ae=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),Le=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const l=a;return(t,n)=>l.visual?e.renderSlot(t.$slots,"default",{key:0},()=>[n[0]||(n[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",l.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(W,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ye=["name","id"],qe=["for","data-onlabel","data-offlabel"],Re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,n=e.computed(()=>{let o=["sw-switch"];return t.size.length>0&&o.push("sw-"+t.size),t.checkbox&&o.push("sw-checkbox"),t.class.length>0&&o.push(t.class),o});return(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(n.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=h=>l.value=h)},null,8,Ye),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,qe),e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),He=["onClick"],We=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),n=a,o=e.useModel(a,"modelValue"),d=l;return t.value=e.useSlots().default().filter(h=>h.type.__name==="SwTabsPane"),e.provide("activeTab",o),e.provide("tabs",t),(h,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+n.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(i,u)=>(e.openBlock(),e.createElementBlock("span",{key:u,class:e.normalizeClass([{active:o.value===u}]),onClick:$=>{o.value=u,d("tab-click",u)}},e.toDisplayString(i.props.label||i.props.title),11,He))),128))]),e.renderSlot(h.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ue=["onClick"],Ge=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsNew",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),n=a,o=e.useModel(a,"modelValue"),d=l;return e.provide("activeTab",o),e.provide("tabs",t),e.provide("registerTab",h=>{t.value.push(h)}),(h,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+n.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(i,u)=>(e.openBlock(),e.createElementBlock("span",{key:u,class:e.normalizeClass([{active:o.value===u}]),onClick:$=>{o.value=u,d("tab-click",u)}},e.toDisplayString(i.props.label||i.props.title),11,Ue))),128))]),e.renderSlot(h.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Xe={key:0,class:"tab-content"},Je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const l=a,t=e.inject("activeTab"),n=e.inject("tabs"),o=e.computed(()=>{const d=n.value.findIndex(h=>h.props.title===l.title);return t.value===d});return(d,h)=>o.value?(e.openBlock(),e.createElementBlock("div",Xe,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Qe={key:0,class:"tab-content"},Ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const l=a,t=e.inject("registerTab");if(!t)throw new Error("SwTabsPane must be used inside SwTabs");t({props:l});const n=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const d=e.inject("tabs").value.length-1;return(h,m)=>e.unref(n)===d?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(h.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));T.Alert=I,T.Library=oe,T.components=F,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "vue";
2
- import { A as s, L as t, c as e } from "./index-B2W8qI6A.js";
2
+ import { A as s, L as t, c as e } from "./index-N3RlT28p.js";
3
3
  export {
4
4
  s as Alert,
5
5
  t as Library,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/component-sw",
3
- "version": "0.3.50",
3
+ "version": "0.3.52",
4
4
  "description": "Vue components of Component SW collection.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -1,229 +0,0 @@
1
- import { ref as d, computed as te, createElementBlock as i, openBlock as v, createElementVNode as u, createCommentVNode as S, withModifiers as g, toDisplayString as p, unref as C, Fragment as x, renderList as Y, normalizeClass as H } from "vue";
2
- import { p as $ } from "./index-B2W8qI6A.js";
3
- const ae = { class: "sw-data-picker" }, ne = { class: "month_year" }, le = { class: "text" }, oe = {
4
- key: 0,
5
- class: "week"
6
- }, se = {
7
- key: 1,
8
- class: "year"
9
- }, ue = {
10
- key: 2,
11
- class: "month"
12
- }, re = ["onClick"], ie = { key: 0 }, ve = { class: "month_year" }, ce = { class: "text" }, de = {
13
- key: 0,
14
- class: "week"
15
- }, De = {
16
- key: 1,
17
- class: "year"
18
- }, ge = {
19
- key: 2,
20
- class: "month"
21
- }, me = ["onClick"], pe = {
22
- __name: "SwDatePicker",
23
- props: {
24
- data: Object,
25
- limitation: {
26
- type: [Boolean, Array],
27
- default: () => !1
28
- },
29
- range: {
30
- type: String,
31
- default: "solid"
32
- }
33
- },
34
- emits: ["input"],
35
- setup(J, { emit: Q }) {
36
- var R, W, q, G;
37
- const o = J, B = Q, k = d(0), w = d(/* @__PURE__ */ new Date()), E = d(/* @__PURE__ */ new Date()), r = d((/* @__PURE__ */ new Date()).getFullYear()), s = d((/* @__PURE__ */ new Date()).getMonth()), N = d((/* @__PURE__ */ new Date()).getFullYear()), z = d((/* @__PURE__ */ new Date()).getMonth()), A = d((/* @__PURE__ */ new Date()).getMonth() + 1), l = d([]), T = d(0), D = d(-1), b = d(-1), L = d(navigator.languages || "ru"), _ = /en|zh|ja|he/.test(L.value) ? 0 : 1, O = te(() => Array.from({ length: 12 }, (a, e) => {
38
- const t = new Date(2024, e);
39
- return new Intl.DateTimeFormat(L.value, { month: "long" }).format(t);
40
- })), h = (a) => {
41
- let e = a.split(a.match(/\D.*?\D?/));
42
- return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
43
- };
44
- (R = o.data) != null && R.startDate && (w.value = new Date(h(o.data.startDate)), r.value = w.value.getFullYear(), s.value = w.value.getMonth()), (W = o.data) != null && W.endDate && o.range === "range" && (E.value = new Date(h(o.data.endDate)), N.value = E.value.getFullYear(), z.value = E.value.getMonth());
45
- const V = () => {
46
- l.value = [], T.value = 0;
47
- const a = new Date(r.value, s.value, 0);
48
- for (let t = a.getDate() - a.getDay() + _; t <= a.getDate(); t++)
49
- a.getDay() !== 6 + _ && (l.value.push({ day: t, month: a.getMonth(), year: a.getFullYear(), class: [] }), T.value++);
50
- const e = new Date(r.value, s.value + 1, 0).getDate();
51
- for (let t = 1; t <= e; t++)
52
- l.value.push({ day: t, month: s.value, year: r.value, class: [] }), T.value++;
53
- if (o.range === "range") {
54
- const t = new Date(r.value, s.value + 1, 1), n = new Date(r.value, s.value + 2, 0).getDate();
55
- for (let m = 1; m <= n; m++)
56
- l.value.push({ day: m, month: t.getMonth(), year: t.getFullYear(), class: [] });
57
- }
58
- U();
59
- }, U = () => {
60
- var e;
61
- if (!((e = o.data) != null && e.holiday)) return;
62
- const a = (t, n) => {
63
- t.forEach((m) => {
64
- const [c, f, y] = m.split("-").map(Number), F = l.value.findIndex((j) => j.year === c && j.month + 1 === f && j.day === y);
65
- F !== -1 && (l.value[F].class[0] = n);
66
- });
67
- };
68
- a(o.data.holiday.preholidays, "preholiday"), a(o.data.holiday.holidays, "weekend"), a(o.data.holiday.holiday, "holiday"), a(o.data.holiday.nowork, "nowork");
69
- }, X = () => {
70
- if (!o.limitation || o.limitation.length < 2) return !1;
71
- const a = [...o.limitation].sort(
72
- (e, t) => new Date(h(e.startDate)).getTime() - new Date(h(t.startDate)).getTime()
73
- );
74
- for (let e = 1; e < a.length; e++) {
75
- const t = new Date(h(a[e - 1].endDate));
76
- if (new Date(h(a[e].startDate)) <= t)
77
- return console.warn("Warning: Диапазоны пересекаются:", a[e - 1], a[e]), !0;
78
- }
79
- return !1;
80
- }, I = (a, e, t) => {
81
- if (!o.limitation || o.limitation.length === 0) return !0;
82
- const n = new Date(a, e, t).getTime();
83
- for (let m of o.limitation) {
84
- const { startDate: c, endDate: f } = m;
85
- if (!c && f) {
86
- const y = new Date(h(f)).getTime();
87
- if (n <= y) return !1;
88
- }
89
- if (c && !f) {
90
- const y = new Date(h(c)).getTime();
91
- if (n >= y) return !1;
92
- }
93
- if (c && f) {
94
- const y = new Date(h(c)).getTime(), F = new Date(h(f)).getTime();
95
- if (y <= F) {
96
- if (n >= y && n <= F) return !1;
97
- } else if (n >= y || n <= F) return !1;
98
- }
99
- }
100
- return !0;
101
- }, P = (a, e) => {
102
- const t = $(new Date(a.year, a.month, a.day), "{dd}.{m}.{Y}");
103
- o.range === "range" ? b.value !== -1 ? (Z(), D.value = e, l.value[e].class[1] = "active") : D.value !== -1 ? (b.value = e, K(D.value, b.value, t)) : (D.value = e, l.value[e].class[1] = "active") : (D.value !== -1 && (l.value[D.value].class[1] = ""), D.value = e, l.value[e].class[1] = "active", B("input", { dateStart: t, count: 1 }));
104
- }, Z = () => {
105
- l.value.forEach((a) => a.class[1] = ""), D.value = -1, b.value = -1;
106
- }, K = (a, e, t) => {
107
- let n = $(new Date(l.value[a].year, l.value[a].month, l.value[a].day), "{dd}.{m}.{Y}"), m = ee(a, e);
108
- if (e >= a)
109
- for (let c = a + 1; c < e; c++)
110
- l.value[c].class[1] = "select";
111
- else
112
- for (let c = e + 1; c < a; c++)
113
- l.value[c].class[1] = "select";
114
- l.value[e].class[1] = "active", B("input", { dateStart: n, dateEnd: t, count: m });
115
- }, ee = (a, e) => {
116
- var c;
117
- let t = Math.abs(a - e) + 1, [n, m] = [Math.min(a, e), Math.max(a, e)];
118
- for (let f = n; f <= m; f++)
119
- ((c = l.value[f]) == null ? void 0 : c.class[0]) === "holiday" && t--;
120
- return t;
121
- }, M = (a, e) => {
122
- I(a, e) && (w.value = new Date(a, e, 1), r.value = w.value.getFullYear(), s.value = w.value.getMonth(), V());
123
- };
124
- if (V(), X() && console.error("Ошибка: Найдены пересекающиеся диапазоны!"), (q = o.data) != null && q.startDate && (D.value = l.value.findIndex((a) => a.day === w.value.getDate() && a.month === s.value && a.year === r.value), D.value !== -1 && (l.value[D.value].class[1] = "active")), (G = o.data) != null && G.endDate && o.range === "range" && (b.value = l.value.findIndex((a) => a.day === E.value.getDate() && a.month === z.value && a.year === N.value), b.value !== -1)) {
125
- l.value[b.value].class[1] = "active";
126
- for (let a = D.value + 1; a < b.value; a++)
127
- l.value[a].class[1] = "select";
128
- }
129
- return (a, e) => (v(), i("div", ae, [
130
- u("div", null, [
131
- u("p", ne, [
132
- u("span", null, [
133
- u("button", {
134
- onClick: e[0] || (e[0] = g((t) => M(r.value - 1, s.value), ["prevent"]))
135
- }, "«"),
136
- u("button", {
137
- onClick: e[1] || (e[1] = g((t) => M(r.value, s.value - 1), ["prevent"]))
138
- }, "‹")
139
- ]),
140
- u("span", le, [
141
- u("button", {
142
- onClick: e[2] || (e[2] = g((t) => k.value = 1, ["prevent"]))
143
- }, p(r.value), 1),
144
- u("button", {
145
- onClick: e[3] || (e[3] = g((t) => k.value = 1, ["prevent"]))
146
- }, p(C($)(w.value.setMonth(s.value), "{F}")), 1)
147
- ]),
148
- u("span", null, [
149
- u("button", {
150
- onClick: e[4] || (e[4] = g((t) => M(r.value, s.value + 1), ["prevent"]))
151
- }, "›"),
152
- u("button", {
153
- onClick: e[5] || (e[5] = g((t) => M(r.value + 1, s.value), ["prevent"]))
154
- }, "»")
155
- ])
156
- ]),
157
- o.range === "year" || k.value === 1 ? S("", !0) : (v(), i("div", oe, [
158
- (v(), i(x, null, Y(7, (t, n) => u("button", {
159
- key: n,
160
- class: "disabled"
161
- }, p(C($)(new Date(1970, 1, t + C(_)), "{D}")), 1)), 64))
162
- ])),
163
- o.range === "year" || k.value === 1 ? (v(), i("div", se, [
164
- (v(!0), i(x, null, Y(O.value, (t, n) => (v(), i("button", { key: n }, p(t), 1))), 128))
165
- ])) : (v(), i("div", ue, [
166
- (v(!0), i(x, null, Y(l.value, (t, n) => (v(), i(x, { key: n }, [
167
- n < T.value + (7 - new Date(r.value, s.value + 1, 1).getDay() + C(_)) % 7 ? (v(), i("button", {
168
- key: 0,
169
- class: H(t.month === s.value && I(t.year, t.month, t.day) ? t.class : "disabled"),
170
- onClick: () => {
171
- t.month === s.value && P(t, n);
172
- }
173
- }, p(t.day), 11, re)) : S("", !0)
174
- ], 64))), 128))
175
- ]))
176
- ]),
177
- o.range === "range" ? (v(), i("div", ie, [
178
- u("p", ve, [
179
- u("span", null, [
180
- u("button", {
181
- onClick: e[6] || (e[6] = g((t) => M(r.value - 1, s.value), ["prevent"]))
182
- }, "«"),
183
- u("button", {
184
- onClick: e[7] || (e[7] = g((t) => M(r.value, s.value - 1), ["prevent"]))
185
- }, "‹")
186
- ]),
187
- u("span", ce, [
188
- u("button", {
189
- onClick: e[8] || (e[8] = g((t) => k.value = 2, ["prevent"]))
190
- }, p(new Date(r.value, s.value + 1).getFullYear()), 1),
191
- u("button", {
192
- onClick: e[9] || (e[9] = g((t) => k.value = 2, ["prevent"]))
193
- }, p(C($)(w.value.setMonth(s.value + 1), "{F}")), 1)
194
- ]),
195
- u("span", null, [
196
- u("button", {
197
- onClick: e[10] || (e[10] = g((t) => M(r.value, s.value + 1), ["prevent"]))
198
- }, "›"),
199
- u("button", {
200
- onClick: e[11] || (e[11] = g((t) => M(r.value + 1, s.value), ["prevent"]))
201
- }, "»")
202
- ])
203
- ]),
204
- k.value !== 2 ? (v(), i("div", de, [
205
- (v(), i(x, null, Y(7, (t, n) => u("button", {
206
- key: n,
207
- class: "disabled"
208
- }, p(C($)(new Date(1970, 1, t + C(_)), "{D}")), 1)), 64))
209
- ])) : S("", !0),
210
- k.value === 2 ? (v(), i("div", De, [
211
- (v(!0), i(x, null, Y(O.value, (t, n) => (v(), i("button", { key: n }, p(t), 1))), 128))
212
- ])) : (v(), i("div", ge, [
213
- (v(!0), i(x, null, Y(l.value, (t, n) => (v(), i(x, { key: n }, [
214
- n >= T.value - (7 + new Date(r.value, s.value + 1, 1).getDay() - C(_)) % 7 ? (v(), i("button", {
215
- key: 0,
216
- class: H(t.month === A.value && I(t.year, t.month, t.day) ? t.class : "disabled"),
217
- onClick: () => {
218
- t.month === A.value && P(t, n);
219
- }
220
- }, p(t.day), 11, me)) : S("", !0)
221
- ], 64))), 128))
222
- ]))
223
- ])) : S("", !0)
224
- ]));
225
- }
226
- };
227
- export {
228
- pe as default
229
- };