@studio-west/component-sw 0.5.82 → 0.5.84

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -62,14 +62,17 @@ app.use(Library)
62
62
  ### Пример использования / Example Usage
63
63
 
64
64
  ```js
65
+ const mode = ref((getTheme() === 'dark' || getTheme() !== 'light' && window.matchMedia('(prefers-color-scheme: dark)').matches)? 'light-theme': 'dark-theme')
65
66
  const darkMode = () => {
66
- if(mode.value === 'dark-theme') {
67
+ if(mode.value === 'dark-theme') { // name icon
67
68
  document.querySelector('html').classList.remove('light')
68
69
  document.querySelector('html').classList.add('dark')
70
+ setTheme('dark') // set cookies
69
71
  }
70
72
  else {
71
73
  document.querySelector('html').classList.remove('dark')
72
74
  document.querySelector('html').classList.add('light')
75
+ setTheme('light') // set cookies
73
76
  }
74
77
  mode.value = (document.querySelector('html').classList.contains('dark')) ? 'light-theme' : 'dark-theme'
75
78
  }
@@ -143,7 +146,7 @@ this.$Alert({message: 'Welcome!', type: 'success'});
143
146
 
144
147
  ## SwCollapse
145
148
 
146
- Компонент `SwCollapse` представляет собой аналог тегов <details> + <summary>, но с анимацией.
149
+ Компонент `SwCollapse` представляет собой аналог тегов &lt;details&gt; + &lt;summary&gt; , но с анимацией.
147
150
 
148
151
  ### Свойства / Properties
149
152
 
@@ -203,7 +206,7 @@ input - событие выбора с данными {dateStart: "11.11.2011",
203
206
 
204
207
  ## SwDropdown
205
208
 
206
- Компонент SwDropdown это всплывающее меню с возможностью настройки места относительного всплытия и типа Тригера.
209
+ Компонент SwDropdown это всплывающее меню с возможностью настройки места относительного всплытия и типа Триггера.
207
210
 
208
211
  ### Свойства / Properties
209
212
 
@@ -231,7 +234,7 @@ Default - текст описания или модуль / модули
231
234
  v-model="visual"
232
235
  maxWidth="250"
233
236
  >
234
- <button @click="visual = true">Описание / Description</button>
237
+ <sw-button @click="visual = true">Описание / Description</sw-button>
235
238
  </sw-dropdown>
236
239
  ```
237
240
  ---
@@ -0,0 +1,300 @@
1
+ import { ref as D, computed as le, createElementBlock as r, openBlock as v, createElementVNode as i, createCommentVNode as I, withModifiers as g, renderSlot as M, createTextVNode as F, toDisplayString as w, unref as T, Fragment as C, renderList as Y, normalizeClass as B } from "vue";
2
+ import { p as j } from "./index-Dvy6nz3v.js";
3
+ const ne = { class: "sw-data-picker" }, se = { class: "month_year" }, oe = { class: "text" }, ue = {
4
+ key: 0,
5
+ class: "week"
6
+ }, re = {
7
+ key: 1,
8
+ class: "year"
9
+ }, ve = ["onClick"], ie = {
10
+ key: 2,
11
+ class: "month"
12
+ }, de = ["onClick"], ce = {
13
+ key: 3,
14
+ class: "decades"
15
+ }, ge = ["onClick"], De = { key: 0 }, fe = { class: "month_year" }, me = { class: "text" }, pe = {
16
+ key: 0,
17
+ class: "week"
18
+ }, we = {
19
+ key: 1,
20
+ class: "year"
21
+ }, he = ["onClick"], ke = {
22
+ key: 2,
23
+ class: "month"
24
+ }, ye = ["onClick"], $e = {
25
+ __name: "SwDatePicker",
26
+ props: {
27
+ data: Object,
28
+ limitation: {
29
+ type: [Boolean, Array],
30
+ default: () => !1
31
+ },
32
+ range: {
33
+ type: String,
34
+ default: "solid"
35
+ }
36
+ },
37
+ emits: ["input"],
38
+ setup(Z, { emit: _ }) {
39
+ var J, Q, U, X;
40
+ const s = Z, z = _, c = D(3), y = D(/* @__PURE__ */ new Date()), V = D(/* @__PURE__ */ new Date()), u = D((/* @__PURE__ */ new Date()).getFullYear()), n = D((/* @__PURE__ */ new Date()).getMonth()), W = D((/* @__PURE__ */ new Date()).getFullYear()), q = D((/* @__PURE__ */ new Date()).getMonth()), A = D(new Date(u.value, n.value + 1, 1).getMonth()), o = D([]), N = D(0), f = D(-1), $ = D(-1), x = D(navigator.language || "ru"), S = /en|zh|ja|he/.test(x.value) ? 0 : 1, L = le(() => Array.from({ length: 12 }, (a, e) => {
41
+ const t = new Date(2024, e);
42
+ return new Intl.DateTimeFormat(x.value, { month: "long" }).format(t);
43
+ })), h = (a) => {
44
+ let e = a.split(a.match(/\D.*?\D?/));
45
+ return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
46
+ };
47
+ (J = s.data) != null && J.startDate && (y.value = new Date(h(s.data.startDate)), u.value = y.value.getFullYear(), n.value = y.value.getMonth()), (Q = s.data) != null && Q.endDate && s.range === "range" && (V.value = new Date(h(s.data.endDate)), W.value = V.value.getFullYear(), q.value = V.value.getMonth());
48
+ const G = () => {
49
+ o.value = [], N.value = 0;
50
+ const a = new Date(u.value, n.value, 0);
51
+ for (let t = a.getDate() - a.getDay() + S; t <= a.getDate(); t++)
52
+ a.getDay() !== 6 + S && (o.value.push({ day: t, month: a.getMonth(), year: a.getFullYear(), class: [] }), N.value++);
53
+ const e = new Date(u.value, n.value + 1, 0).getDate();
54
+ for (let t = 1; t <= e; t++)
55
+ o.value.push({ day: t, month: n.value, year: u.value, class: [] }), N.value++;
56
+ if (s.range === "range") {
57
+ const t = new Date(u.value, n.value + 1, 1), l = new Date(u.value, n.value + 2, 0).getDate();
58
+ for (let d = 1; d <= l; d++)
59
+ o.value.push({ day: d, month: t.getMonth(), year: t.getFullYear(), class: [] });
60
+ }
61
+ K();
62
+ }, K = () => {
63
+ var e;
64
+ if (!((e = s.data) != null && e.holiday)) return;
65
+ const a = (t, l) => {
66
+ t.forEach((d) => {
67
+ const [k, p, b] = d.split("-").map(Number), E = o.value.findIndex((R) => R.year === k && R.month + 1 === p && R.day === b);
68
+ E !== -1 && (o.value[E].class[0] = l);
69
+ });
70
+ };
71
+ a(s.data.holiday.preholidays, "preholiday"), a(s.data.holiday.holidays, "weekend"), a(s.data.holiday.holiday, "holiday"), a(s.data.holiday.nowork, "nowork");
72
+ }, ee = () => {
73
+ if (!s.limitation || s.limitation.length < 2) return !1;
74
+ const a = [...s.limitation].sort(
75
+ (e, t) => new Date(h(e.startDate)).getTime() - new Date(h(t.startDate)).getTime()
76
+ );
77
+ for (let e = 1; e < a.length; e++) {
78
+ const t = new Date(h(a[e - 1].endDate));
79
+ if (new Date(h(a[e].startDate)) <= t)
80
+ return console.warn("Warning: Диапазоны пересекаются:", a[e - 1], a[e]), !0;
81
+ }
82
+ return !1;
83
+ }, O = (a, e, t) => {
84
+ if (!s.limitation || s.limitation.length === 0) return !0;
85
+ const l = new Date(a, e, t).getTime();
86
+ for (let d of s.limitation) {
87
+ const { startDate: k, endDate: p } = d;
88
+ if (!k && p) {
89
+ const b = new Date(h(p)).getTime();
90
+ if (l <= b) return !1;
91
+ }
92
+ if (k && !p) {
93
+ const b = new Date(h(k)).getTime();
94
+ if (l >= b) return !1;
95
+ }
96
+ if (k && p) {
97
+ const b = new Date(h(k)).getTime(), E = new Date(h(p)).getTime();
98
+ if (b <= E) {
99
+ if (l >= b && l <= E) return !1;
100
+ } else if (l >= b || l <= E) return !1;
101
+ }
102
+ }
103
+ return !0;
104
+ }, P = (a, e) => {
105
+ const t = j(new Date(a.year, a.month, a.day), "{dd}.{m}.{Y}");
106
+ s.range === "range" ? $.value !== -1 ? (te(), f.value = e, o.value[e].class[1] = "active") : f.value !== -1 ? ($.value = e, ae(f.value, $.value, t)) : (f.value = e, o.value[e].class[1] = "active") : (f.value !== -1 && (o.value[f.value].class[1] = ""), f.value = e, o.value[e].class[1] = "active", z("input", { dateStart: t, count: 1 }));
107
+ }, te = () => {
108
+ o.value.forEach((a) => a.class[1] = ""), f.value = -1, $.value = -1;
109
+ }, ae = (a, e, t) => {
110
+ let l = j(new Date(o.value[a].year, o.value[a].month, o.value[a].day), "{dd}.{m}.{Y}");
111
+ if (e >= a) {
112
+ for (let d = a + 1; d < e; d++)
113
+ o.value[d].class[1] = "select";
114
+ z("input", { dateStart: l, dateEnd: t, count: H(a, e) });
115
+ } else {
116
+ for (let d = e + 1; d < a; d++)
117
+ o.value[d].class[1] = "select";
118
+ z("input", { dateStart: t, dateEnd: l, count: H(e, a) });
119
+ }
120
+ o.value[e].class[1] = "active";
121
+ }, H = (a, e) => {
122
+ var k;
123
+ let t = Math.abs(a - e) + 1, [l, d] = [Math.min(a, e), Math.max(a, e)];
124
+ for (let p = l; p <= d; p++)
125
+ ((k = o.value[p]) == null ? void 0 : k.class[0]) === "holiday" && t--;
126
+ return t;
127
+ }, m = (a, e) => {
128
+ O(a, e) && (y.value = new Date(a, e, 1), u.value = y.value.getFullYear(), n.value = y.value.getMonth(), A.value = new Date(a, e + 1, 1).getMonth(), s.range === "year" && c.value === 0 ? P({ year: a, month: e, day: 1 }, 8) : G());
129
+ };
130
+ if (G(), ee(), (U = s.data) != null && U.startDate && (f.value = o.value.findIndex((a) => a.day === y.value.getDate() && a.month === n.value && a.year === u.value), f.value !== -1 && (o.value[f.value].class[1] = "active")), (X = s.data) != null && X.endDate && s.range === "range" && ($.value = o.value.findIndex((a) => a.day === V.value.getDate() && a.month === q.value && a.year === W.value), $.value !== -1)) {
131
+ o.value[$.value].class[1] = "active";
132
+ for (let a = f.value + 1; a < $.value; a++)
133
+ o.value[a].class[1] = "select";
134
+ }
135
+ return (a, e) => (v(), r("div", ne, [
136
+ i("div", null, [
137
+ i("p", se, [
138
+ i("span", null, [
139
+ i("button", {
140
+ onClick: e[0] || (e[0] = g((t) => m(u.value - 1, n.value), ["prevent"]))
141
+ }, [
142
+ M(a.$slots, "double-arrow", {}, () => [
143
+ e[12] || (e[12] = F("«"))
144
+ ])
145
+ ]),
146
+ i("button", {
147
+ onClick: e[1] || (e[1] = g((t) => {
148
+ c.value = 0, m(u.value, n.value - 1);
149
+ }, ["prevent"]))
150
+ }, [
151
+ M(a.$slots, "arrow", {}, () => [
152
+ e[13] || (e[13] = F("‹"))
153
+ ])
154
+ ])
155
+ ]),
156
+ i("span", oe, [
157
+ i("button", {
158
+ onClick: e[2] || (e[2] = g((t) => c.value = 1, ["prevent"]))
159
+ }, w(u.value), 1),
160
+ i("button", {
161
+ onClick: e[3] || (e[3] = g((t) => c.value = 1, ["prevent"]))
162
+ }, w(T(j)(y.value.setMonth(n.value), "{F}")), 1)
163
+ ]),
164
+ i("span", null, [
165
+ i("button", {
166
+ class: "sw-revers",
167
+ onClick: e[4] || (e[4] = g((t) => {
168
+ c.value = 0, m(u.value, n.value + 1);
169
+ }, ["prevent"]))
170
+ }, [
171
+ M(a.$slots, "arrow", {}, () => [
172
+ e[14] || (e[14] = F("‹"))
173
+ ])
174
+ ]),
175
+ i("button", {
176
+ class: "sw-revers",
177
+ onClick: e[5] || (e[5] = g((t) => m(u.value + 1, n.value), ["prevent"]))
178
+ }, [
179
+ M(a.$slots, "double-arrow", {}, () => [
180
+ e[15] || (e[15] = F("«"))
181
+ ])
182
+ ])
183
+ ])
184
+ ]),
185
+ s.range === "year" || c.value === 1 ? I("", !0) : (v(), r("div", ue, [
186
+ (v(), r(C, null, Y(7, (t, l) => i("button", {
187
+ key: l,
188
+ class: "disabled"
189
+ }, w(T(j)(new Date(1970, 1, t + T(S)), "{D}")), 1)), 64))
190
+ ])),
191
+ s.range === "year" || c.value === 1 ? (v(), r("div", re, [
192
+ (v(!0), r(C, null, Y(L.value, (t, l) => (v(), r("button", {
193
+ key: l,
194
+ onClick: g((d) => {
195
+ c.value = 0, m(u.value, l);
196
+ }, ["prevent"]),
197
+ class: B(l === n.value ? "active" : "")
198
+ }, w(t), 11, ve))), 128))
199
+ ])) : (v(), r("div", ie, [
200
+ (v(!0), r(C, null, Y(o.value, (t, l) => (v(), r(C, { key: l }, [
201
+ l < N.value + (7 - new Date(u.value, n.value + 1, 1).getDay() + T(S)) % 7 ? (v(), r("button", {
202
+ key: 0,
203
+ class: B(t.month === n.value && O(t.year, t.month, t.day) ? t.class : "disabled"),
204
+ onClick: g(() => {
205
+ t.month === n.value && P(t, l);
206
+ }, ["prevent"])
207
+ }, w(t.day), 11, de)) : I("", !0)
208
+ ], 64))), 128))
209
+ ])),
210
+ s.range === "year" || c.value === 1 ? (v(), r("div", ce, [
211
+ (v(!0), r(C, null, Y(L.value, (t, l) => (v(), r("button", {
212
+ key: l,
213
+ onClick: g((d) => {
214
+ c.value = 0, m(u.value, l);
215
+ }, ["prevent"]),
216
+ class: B(l === n.value ? "active" : "")
217
+ }, w(t), 11, ge))), 128))
218
+ ])) : I("", !0)
219
+ ]),
220
+ s.range === "range" ? (v(), r("div", De, [
221
+ i("p", fe, [
222
+ i("span", null, [
223
+ i("button", {
224
+ onClick: e[6] || (e[6] = g((t) => m(u.value - 1, n.value), ["prevent"]))
225
+ }, [
226
+ M(a.$slots, "double-arrow", {}, () => [
227
+ e[16] || (e[16] = F("«"))
228
+ ])
229
+ ]),
230
+ i("button", {
231
+ onClick: e[7] || (e[7] = g((t) => {
232
+ c.value = 0, m(u.value, n.value - 1);
233
+ }, ["prevent"]))
234
+ }, [
235
+ M(a.$slots, "arrow", {}, () => [
236
+ e[17] || (e[17] = F("‹"))
237
+ ])
238
+ ])
239
+ ]),
240
+ i("span", me, [
241
+ i("button", {
242
+ onClick: e[8] || (e[8] = g((t) => c.value = 2, ["prevent"]))
243
+ }, w(new Date(u.value, n.value + 1).getFullYear()), 1),
244
+ i("button", {
245
+ onClick: e[9] || (e[9] = g((t) => c.value = 2, ["prevent"]))
246
+ }, w(T(j)(y.value.setMonth(n.value + 1), "{F}")), 1)
247
+ ]),
248
+ i("span", null, [
249
+ i("button", {
250
+ class: "sw-revers",
251
+ onClick: e[10] || (e[10] = g((t) => {
252
+ c.value = 0, m(u.value, n.value + 1);
253
+ }, ["prevent"]))
254
+ }, [
255
+ M(a.$slots, "arrow", {}, () => [
256
+ e[18] || (e[18] = F("‹"))
257
+ ])
258
+ ]),
259
+ i("button", {
260
+ class: "sw-revers",
261
+ onClick: e[11] || (e[11] = g((t) => m(u.value + 1, n.value), ["prevent"]))
262
+ }, [
263
+ M(a.$slots, "double-arrow", {}, () => [
264
+ e[19] || (e[19] = F("«"))
265
+ ])
266
+ ])
267
+ ])
268
+ ]),
269
+ c.value !== 2 ? (v(), r("div", pe, [
270
+ (v(), r(C, null, Y(7, (t, l) => i("button", {
271
+ key: l,
272
+ class: "disabled"
273
+ }, w(T(j)(new Date(1970, 1, t + T(S)), "{D}")), 1)), 64))
274
+ ])) : I("", !0),
275
+ c.value === 2 ? (v(), r("div", we, [
276
+ (v(!0), r(C, null, Y(L.value, (t, l) => (v(), r("button", {
277
+ key: l,
278
+ onClick: g((d) => {
279
+ c.value = 0, m(u.value, l - 1);
280
+ }, ["prevent"]),
281
+ class: B(l === (n.value + 1) % 12 ? "active" : "")
282
+ }, w(t), 11, he))), 128))
283
+ ])) : (v(), r("div", ke, [
284
+ (v(!0), r(C, null, Y(o.value, (t, l) => (v(), r(C, { key: l }, [
285
+ l >= N.value - (7 + new Date(u.value, n.value + 1, 1).getDay() - T(S)) % 7 ? (v(), r("button", {
286
+ key: 0,
287
+ class: B(t.month === A.value && O(t.year, t.month, t.day) ? t.class : "disabled"),
288
+ onClick: g(() => {
289
+ t.month === A.value && P(t, l);
290
+ }, ["prevent"])
291
+ }, w(t.day), 11, ye)) : I("", !0)
292
+ ], 64))), 128))
293
+ ]))
294
+ ])) : I("", !0)
295
+ ]));
296
+ }
297
+ };
298
+ export {
299
+ $e as default
300
+ };
@@ -1,5 +1,5 @@
1
1
  import { mergeModels as y, useModel as D, ref as V, computed as C, watch as I, createElementBlock as d, openBlock as u, normalizeClass as M, createBlock as v, renderSlot as _, createCommentVNode as x, withDirectives as A, createTextVNode as E, toDisplayString as R, createElementVNode as T, vModelDynamic as F } from "vue";
2
- import { S } from "./index-FdC2mhUI.js";
2
+ import { S } from "./index-Dvy6nz3v.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: #75C6ff;--sw-color-info: #C0C0C0;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-preholiday: #FFE78070;--sw-color-weekend: #ff808070;--sw-color-select: #007bff70;--sw-color-holiday: #ff0000;--sw-color-nowork: #ff0000;--sw-color-active: #5aaaff;--sw-text-color-primary: #333333;--sw-text-color-secondary: #4C4C4C;--sw-text-color-third: #818181;--sw-text-color-revers: white;--sw-bg-color: #f4f4f4;--sw-bg-color-page: white;--sw-bg-color-second: #FAFAFA;--sw-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: #0d588d;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-active: #007bff;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}@media (prefers-color-scheme: dark){:root:not(.light){--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #0d588d;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-active: #007bff;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-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:4;top:max(env(safe-area-inset-top,0rem),env(titlebar-area-y,0rem))}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin:1rem auto 0;border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers)}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.sw-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;will-change:max-height}.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%;overflow-y:auto;color:var(--sw-text-color-primary)}.sw-message>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.sw-message>footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sw-modal-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}.sw-data-picker{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.sw-data-picker .month_year{display:flex;justify-content:space-around;align-items:center}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker button{color:var(--sw-text-color-primary);height:30px;text-align:center;line-height:30px;cursor:pointer;background:none;border:none;border-radius:.2rem;transition:all .3s ease}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-data-picker .year{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.2rem;border-top:1px solid var(--sw-color-info)}.sw-data-picker .year>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .year>button.active{color:var(--sw-color-active)}.sw-revers{transform:scaleX(-1)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-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)}@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
+ :root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #75C6ff;--sw-color-info: #C0C0C0;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-preholiday: #FFE78070;--sw-color-weekend: #ff808070;--sw-color-select: #007bff70;--sw-color-holiday: #ff0000;--sw-color-nowork: #ff0000;--sw-color-active: #5aaaff;--sw-text-color-primary: #333333;--sw-text-color-secondary: #4C4C4C;--sw-text-color-third: #818181;--sw-text-color-revers: white;--sw-bg-color: #f4f4f4;--sw-bg-color-page: white;--sw-bg-color-second: #FAFAFA;--sw-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: #0d588d;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-active: #007bff;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}@media (prefers-color-scheme: dark){:root:not(.light){--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #0d588d;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-active: #007bff;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-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:4;top:max(env(safe-area-inset-top,0rem),env(titlebar-area-y,0rem))}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin:1rem auto 0;border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers)}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.sw-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;will-change:max-height}.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:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='currentColor' viewBox='0 0 24 24'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E");color:var(--sw-color-primary);width:1em;top:-.9rem;left:-.25rem;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%;overflow-y:auto;color:var(--sw-text-color-primary)}.sw-message>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.sw-message>footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sw-modal-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}.sw-data-picker{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.sw-data-picker .month_year{display:flex;justify-content:space-around;align-items:center}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker button{color:var(--sw-text-color-primary);height:30px;text-align:center;line-height:30px;cursor:pointer;background:none;border:none;border-radius:.2rem;transition:all .3s ease}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-data-picker .year{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.2rem;border-top:1px solid var(--sw-color-info)}.sw-data-picker .year>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.sw-data-picker .year>button.active{color:var(--sw-color-active)}.sw-revers{transform:scaleX(-1)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-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)}@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)}
@@ -144,7 +144,7 @@ function w(e = {}) {
144
144
  }), t = n.mount(document.createElement("div"));
145
145
  l.appendChild(t.$el);
146
146
  }
147
- const y = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-85-tKHA7.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CuN3EbT6.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-C2WIKvWC.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-RMQjAH62.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-wFMHwJJk.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CaA4jsoa.js"), "./components/SwInput.vue": () => import("./SwInput-DqJkbBk8.js"), "./components/SwMessage.vue": () => import("./SwMessage-DKatZOJ6.js"), "./components/SwSection.vue": () => import("./SwSection-CQfw3-el.js"), "./components/SwSelect.vue": () => import("./SwSelect-C2RKinez.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-B7ysp8L9.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-FMwJbEH7.js"), "./components/SwTabs.vue": () => import("./SwTabs-DkSI4oAh.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-Dwtj8g7T.js") }), d = {};
147
+ const y = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-85-tKHA7.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CuN3EbT6.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-otSC2Br4.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-RMQjAH62.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-wFMHwJJk.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CaA4jsoa.js"), "./components/SwInput.vue": () => import("./SwInput-DtP0SsiM.js"), "./components/SwMessage.vue": () => import("./SwMessage-DKatZOJ6.js"), "./components/SwSection.vue": () => import("./SwSection-CQfw3-el.js"), "./components/SwSelect.vue": () => import("./SwSelect-C2RKinez.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-B7ysp8L9.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-FMwJbEH7.js"), "./components/SwTabs.vue": () => import("./SwTabs-DkSI4oAh.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-Dwtj8g7T.js") }), d = {};
148
148
  for (const e in y) {
149
149
  const n = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (t, o) => o.toUpperCase());
150
150
  d[n] = P(() => y[e]());
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- (function(v,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(v=typeof globalThis<"u"?globalThis:v||self,e(v["component-sw"]={},v.vue))})(this,function(v,e){"use strict";function ee(s){return/^(https?:|mailto:|tel:)/.test(s)}function P(s,n){if(arguments.length===0||!s)return null;const t=n||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof s=="object"?l=s:(typeof s=="string"&&(/^[0-9]+$/.test(s)?s=parseInt(s):s=s.replace(new RegExp(/-/gm),"/")),typeof s=="number"&&s.toString().length===10&&(s=s*1e3),l=new Date(s));const o="ru-RU",d={Y:l.getFullYear(),m:(l.getMonth()+1).toString().padStart(2,"0"),d:l.getDate(),dd:l.getDate().toString().padStart(2,"0"),G:l.getHours(),H:l.getHours().toString().padStart(2,"0"),i:l.getMinutes().toString().padStart(2,"0"),s:l.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(o,{weekday:"short"}).format(l),F:new Intl.DateTimeFormat(o,{month:"long"}).format(l),M:new Intl.DateTimeFormat(o,{month:"short"}).format(l)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>d[p])}const te=(s,n)=>{const t=s.__vccOpts||s;for(const[l,o]of n)t[l]=o;return t},le={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return ee(this.iconClass)}}},ne=["href"];function oe(s,n,t,l,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"},s.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},s.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ne)],16))}const L=te(le,[["render",oe]]),U={__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:s=>["success","warning","error","info"].includes(s)}},emits:["closed"],setup(s,{emit:n}){const t=s,l=n,o=e.ref(!1);let d=null;const u=()=>{o.value=!0,D()},p=()=>{o.value=!1,l("closed")},c=()=>{d&&(clearTimeout(d),d=null)},g=()=>{D()},D=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const b=e.computed(()=>{const m=["sw-alert"];return t.size.length>0&&m.push(`sw-${t.size}`),t.type.length>0&&m.push(`sw-${t.type}`),t.class.length>0&&m.push(t.class),m});return(m,w)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(b.value),onMouseenter:c,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(L,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),e.renderSlot(m.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(L,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},ae=Object.freeze(Object.defineProperty({__proto__:null,default:U},Symbol.toStringTag,{value:"Module"}));let F=document.querySelector("div.sw-alert-wrapper");function R(s={}){F||(F=document.createElement("div"),F.className="sw-alert-wrapper",document.body.appendChild(F));const n=e.createApp({setup(){return()=>e.h(U,{...s,onClose:()=>{F.removeChild(n._container),n.unmount()}})}}),t=n.mount(document.createElement("div"));F.appendChild(t.$el)}const W=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ae),"./components/SwButton.vue":()=>Promise.resolve().then(()=>re),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ie),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>$e),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>Me),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Ce),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Te),"./components/SwInput.vue":()=>Promise.resolve().then(()=>xe),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Oe),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Pe),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Ye),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>qe),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>He),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Ge),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Qe),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Ke)}),A={};for(const s in W){const n=s.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,l)=>l.toUpperCase());A[n]=e.defineAsyncComponent(()=>W[s]())}const se={install(s){Object.keys(A).forEach(n=>{s.component(n,A[n])}),s.config.globalProperties.$Alert=R,s.provide("Alert",R)}},G={__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(s){const n=s,t=()=>{if(n.href.length>0){const o=document.createElement("a");o.setAttribute("href",n.href),o.setAttribute("target","_blank"),o.click()}},l=e.computed(()=>{let o=["sw-button"];return n.size.length>0&&o.push("sw-"+n.size),n.type.length>0&&o.push("sw-"+n.type),n.round&&o.push("sw-round"),n.text&&o.push("sw-text"),n.link&&o.push("sw-link"),n.class.length>0&&o.push(n.class),o});return(o,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:t},[e.renderSlot(o.$slots,"default")],2))}},re=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),ie=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(s){e.onMounted(()=>{l.value="0px"});const n=e.ref(null),t=s;e.watch(()=>t.visual,()=>o());const l=e.ref("0px"),o=()=>{n.value&&(l.value=t.visual?n.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{o(),n.value&&(d=new ResizeObserver(o),d.observe(n.value))}),e.onBeforeUnmount(()=>{d&&d.disconnect()}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({maxHeight:l.value}),ref_key:"collapse",ref:n},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ce={class:"sw-data-picker"},de={class:"month_year"},pe={class:"text"},me={key:0,class:"week"},fe={key:1,class:"year"},ue=["onClick"],ge={key:2,class:"month"},he=["onClick"],ye={key:0},we={class:"month_year"},Se={class:"text"},ke={key:0,class:"week"},_e={key:1,class:"year"},be=["onClick"],Be={key:2,class:"month"},Ee=["onClick"],$e=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(s,{emit:n}){var J,Q,Z,K;const t=s,l=n,o=e.ref(3),d=e.ref(new Date),u=e.ref(new Date),p=e.ref(new Date().getFullYear()),c=e.ref(new Date().getMonth()),g=e.ref(new Date().getFullYear()),D=e.ref(new Date().getMonth()),b=e.ref(new Date(p.value,c.value+1,1).getMonth()),m=e.ref([]),w=e.ref(0),h=e.ref(-1),S=e.ref(-1),k=e.ref(navigator.language||"ru"),y=/en|zh|ja|he/.test(k.value)?0:1,_=e.computed(()=>Array.from({length:12},(r,a)=>{const i=new Date(2024,a);return new Intl.DateTimeFormat(k.value,{month:"long"}).format(i)})),M=r=>{let a=r.split(r.match(/\D.*?\D?/));return a[0].length>2?a.join("-")+"T00:00:01":a.reverse().join("-")+"T00:00:01"};(J=t.data)!=null&&J.startDate&&(d.value=new Date(M(t.data.startDate)),p.value=d.value.getFullYear(),c.value=d.value.getMonth()),(Q=t.data)!=null&&Q.endDate&&t.range==="range"&&(u.value=new Date(M(t.data.endDate)),g.value=u.value.getFullYear(),D.value=u.value.getMonth());const T=()=>{m.value=[],w.value=0;const r=new Date(p.value,c.value,0);for(let i=r.getDate()-r.getDay()+y;i<=r.getDate();i++)r.getDay()!==6+y&&(m.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]}),w.value++);const a=new Date(p.value,c.value+1,0).getDate();for(let i=1;i<=a;i++)m.value.push({day:i,month:c.value,year:p.value,class:[]}),w.value++;if(t.range==="range"){const i=new Date(p.value,c.value+1,1),f=new Date(p.value,c.value+2,0).getDate();for(let $=1;$<=f;$++)m.value.push({day:$,month:i.getMonth(),year:i.getFullYear(),class:[]})}C()},C=()=>{var a;if(!((a=t.data)!=null&&a.holiday))return;const r=(i,f)=>{i.forEach($=>{const[x,z,j]=$.split("-").map(Number),I=m.value.findIndex(q=>q.year===x&&q.month+1===z&&q.day===j);I!==-1&&(m.value[I].class[0]=f)})};r(t.data.holiday.preholidays,"preholiday"),r(t.data.holiday.holidays,"weekend"),r(t.data.holiday.holiday,"holiday"),r(t.data.holiday.nowork,"nowork")},V=()=>{if(!t.limitation||t.limitation.length<2)return!1;const r=[...t.limitation].sort((a,i)=>new Date(M(a.startDate)).getTime()-new Date(M(i.startDate)).getTime());for(let a=1;a<r.length;a++){const i=new Date(M(r[a-1].endDate));if(new Date(M(r[a].startDate))<=i)return console.warn("Warning: Диапазоны пересекаются:",r[a-1],r[a]),!0}return!1},B=(r,a,i)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(r,a,i).getTime();for(let $ of t.limitation){const{startDate:x,endDate:z}=$;if(!x&&z){const j=new Date(M(z)).getTime();if(f<=j)return!1}if(x&&!z){const j=new Date(M(x)).getTime();if(f>=j)return!1}if(x&&z){const j=new Date(M(x)).getTime(),I=new Date(M(z)).getTime();if(j<=I){if(f>=j&&f<=I)return!1}else if(f>=j||f<=I)return!1}}return!0},E=(r,a)=>{const i=P(new Date(r.year,r.month,r.day),"{dd}.{m}.{Y}");t.range==="range"?S.value!==-1?(O(),h.value=a,m.value[a].class[1]="active"):h.value!==-1?(S.value=a,H(h.value,S.value,i)):(h.value=a,m.value[a].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=a,m.value[a].class[1]="active",l("input",{dateStart:i,count:1}))},O=()=>{m.value.forEach(r=>r.class[1]=""),h.value=-1,S.value=-1},H=(r,a,i)=>{let f=P(new Date(m.value[r].year,m.value[r].month,m.value[r].day),"{dd}.{m}.{Y}");if(a>=r){for(let $=r+1;$<a;$++)m.value[$].class[1]="select";l("input",{dateStart:f,dateEnd:i,count:Y(r,a)})}else{for(let $=a+1;$<r;$++)m.value[$].class[1]="select";l("input",{dateStart:i,dateEnd:f,count:Y(a,r)})}m.value[a].class[1]="active"},Y=(r,a)=>{var x;let i=Math.abs(r-a)+1,[f,$]=[Math.min(r,a),Math.max(r,a)];for(let z=f;z<=$;z++)((x=m.value[z])==null?void 0:x.class[0])==="holiday"&&i--;return i},N=(r,a)=>{B(r,a)&&(d.value=new Date(r,a,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),b.value=new Date(r,a+1,1).getMonth(),t.range==="year"&&o.value===0?E({year:r,month:a,day:1},8):T())};if(T(),V(),(Z=t.data)!=null&&Z.startDate&&(h.value=m.value.findIndex(r=>r.day===d.value.getDate()&&r.month===c.value&&r.year===p.value),h.value!==-1&&(m.value[h.value].class[1]="active")),(K=t.data)!=null&&K.endDate&&t.range==="range"&&(S.value=m.value.findIndex(r=>r.day===u.value.getDate()&&r.month===D.value&&r.year===g.value),S.value!==-1)){m.value[S.value].class[1]="active";for(let r=h.value+1;r<S.value;r++)m.value[r].class[1]="select"}return(r,a)=>(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",null,[e.createElementVNode("p",de,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[0]||(a[0]=e.withModifiers(i=>N(p.value-1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[12]||(a[12]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[1]||(a[1]=e.withModifiers(i=>{o.value=0,N(p.value,c.value-1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[13]||(a[13]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",pe,[e.createElementVNode("button",{onClick:a[2]||(a[2]=e.withModifiers(i=>o.value=1,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:a[3]||(a[3]=e.withModifiers(i=>o.value=1,["prevent"]))},e.toDisplayString(e.unref(P)(d.value.setMonth(c.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[4]||(a[4]=e.withModifiers(i=>{o.value=0,N(p.value,c.value+1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[14]||(a[14]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[5]||(a[5]=e.withModifiers(i=>N(p.value+1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[15]||(a[15]=e.createTextVNode("«"))])])])]),t.range==="year"||o.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(i,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,i+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||o.value===1?(e.openBlock(),e.createElementBlock("div",fe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(i,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers($=>{o.value=0,N(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(i),11,ue))),128))])):(e.openBlock(),e.createElementBlock("div",ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(i,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f<w.value+(7-new Date(p.value,c.value+1,1).getDay()+e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(i.month===c.value&&B(i.year,i.month,i.day)?i.class:"disabled"),onClick:e.withModifiers(()=>{i.month===c.value&&E(i,f)},["prevent"])},e.toDisplayString(i.day),11,he)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ye,[e.createElementVNode("p",we,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[6]||(a[6]=e.withModifiers(i=>N(p.value-1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[16]||(a[16]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[7]||(a[7]=e.withModifiers(i=>{o.value=0,N(p.value,c.value-1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[17]||(a[17]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",Se,[e.createElementVNode("button",{onClick:a[8]||(a[8]=e.withModifiers(i=>o.value=2,["prevent"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:a[9]||(a[9]=e.withModifiers(i=>o.value=2,["prevent"]))},e.toDisplayString(e.unref(P)(d.value.setMonth(c.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[10]||(a[10]=e.withModifiers(i=>{o.value=0,N(p.value,c.value+1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[18]||(a[18]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[11]||(a[11]=e.withModifiers(i=>N(p.value+1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[19]||(a[19]=e.createTextVNode("«"))])])])]),o.value!==2?(e.openBlock(),e.createElementBlock("div",ke,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(i,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,i+e.unref(y)),"{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(_.value,(i,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers($=>{o.value=0,N(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(i),11,be))),128))])):(e.openBlock(),e.createElementBlock("div",Be,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(i,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f>=w.value-(7+new Date(p.value,c.value+1,1).getDay()-e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(i.month===b.value&&B(i.year,i.month,i.day)?i.class:"disabled"),onClick:e.withModifiers(()=>{i.month===b.value&&E(i,f)},["prevent"])},e.toDisplayString(i.day),11,Ee)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),De=["id"],Me=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:e.mergeModels({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}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s,{expose:n}){const t=s,l=e.useModel(s,"modelValue"),o=e.ref(null),d=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),c=e.ref(0),g=e.computed(()=>{let k=["sw-dropdown"];return t.size.length>0&&k.push("sw-"+t.size),t.type.length>0&&k.push("sw-"+t.type),k}),D=new ResizeObserver(k=>{l.value&&c.value++,c.value>99&&(c.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!o.value)return;c.value<2&&D.observe(d.value);let k=window.pageYOffset||document.documentElement.scrollTop,y=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${k}px`,document.body.style.left=`-${y}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=k,document.documentElement.scrollLeft=y;const _=o.value.getBoundingClientRect();let M=window.innerWidth,T=window.innerHeight,C=d.value.offsetHeight,V=d.value.offsetWidth,B=_.left+_.width/2+y,E=_.top+_.height/2+k,O=_.height/2+8;const[H,Y]=t.placement.split("-",2);switch(H){case"bottom":E=k+T-C-O-8<E?E-O-C:E+O;break;case"top":E=k+C+O+8>E?E+O:E-O-C;break;case"left":B=B-V-_.width/2-8,E=E-C/2;break;case"right":B=B+_.width/2+8,E=E-C/2;break}switch(Y){case"left":B=y+M-8>B-_.width/2+V?B-_.width/2:B-V+_.width/2;break;case"right":B=8<B+_.width/2-V?B-V+_.width/2:B-_.width/2;break}B<0&&(B=0),E<0&&(E=0),u.value={position:"absolute",top:`${E}px`,left:`${B}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const b=()=>{t.trigger==="click"&&(l.value=!l.value)},m=()=>{t.trigger==="hover"&&(l.value=!l.value)},w=()=>{t.trigger==="context"&&(l.value=!l.value)},h=()=>{l.value&&c.value++,c.value>99&&(c.value=1)};n({handleResize:h});const S=k=>{!k.target.closest(`[id="${p}"]`)&&o.value&&!o.value.contains(k.target)&&(l.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",S):document.documentElement.addEventListener("click",S),window.onscrollend!==void 0?window.addEventListener("scrollend",h):window.addEventListener("scroll",h)}),e.onUnmounted(()=>{D.disconnect(),window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",S):document.documentElement.removeEventListener("click",S),window.onscrollend!==void 0?window.removeEventListener("scrollend",h):window.removeEventListener("scroll",h)}),(k,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(g.value),onClick:y[0]||(y[0]=_=>b()),onMouseover:y[1]||(y[1]=e.withModifiers(_=>m(),["stop"])),onMouseleave:y[2]||(y[2]=e.withModifiers(_=>m(),["stop"])),onContextmenu:y[3]||(y[3]=e.withModifiers(_=>w(),["stop"])),ref_key:"dropdownRef",ref:o},[e.renderSlot(k.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:d,id:e.unref(p),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(k.$slots,"dropdown")],14,De)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Ce=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(s){const n=s,t=e.computed(()=>{let l=["sw-dropdown-item"];return n.size.length>0&&l.push("sw-"+n.size),n.type.length>0&&l.push("sw-"+n.type),n.class.length>0&&l.push(n.class),l});return(l,o)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":s.iconBefore},null,8,["icon-class"]),e.renderSlot(l.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(s){const n=s,t=e.computed(()=>{let l=["sw-form-item"];return n.type.length>0&&l.push("sw-"+n.type),n.class.length>0&&l.push(n.class),l});return(l,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ve=["for"],ze={key:0,title:"Это поле обязательно для заполнения."},Ne=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus","readonly"],xe=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},maxlength:{type:Number,default:128},minlength:{type:Number,default:1},inputSize:{type:Number,default:60},autofocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(s,{emit:n}){var m;const t=e.useModel(s,"modelValue"),l=s,o=e.ref(null),d=n,u=w=>{d("focusInput"),w.target.setSelectionRange(t.value.length,t.value.length),o.value!==null&&(o.value.style.top="-.6em")},p=w=>{var h;((h=t.value)==null?void 0:h.length)===0&&o.value!==null&&o.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&o.value!==null&&(o.value.style.top="-.6em");const c=()=>{d("suffix")},g=()=>{d("prefix")},D=e.computed(()=>{let w=["sw-input"];return l.size.length>0&&w.push("sw-"+l.size),l.class.length>0&&w.push(l.class),w});e.watch(t,(w,h)=>{l.type==="phone"&&(t.value=b(w,h))});const b=(w,h)=>{if(/^\+[0-9]\s/.test(h)&&w.length===2||/^\+0\s/.test(w))return"";const S=w;if(typeof S>"u"||S.length===0)return S;const k="+0 (___) ___-__-__";let y=0;const _=k.replace(/\D/g,""),M=S.replace(/\D/g,"");let T=k.replace(/[_\d]/g,V=>y<M.length?M.charAt(y++)||_.charAt(y):V);y=T.indexOf("_"),y!==-1&&(y=y<5?3:y,T=T.slice(0,y));let C=k.slice(0,S.length).replace(/_+/g,V=>`\\d{1,${V.length}}`).replace(/[+()]/g,"\\$&");if(C=new RegExp(`^${C}$`),T=T.replace(/[-—]$|(\) )$/g,""),!C.test(S)||S.length<5)return T};return(w,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(D.value)},[l.before.length>0?(e.openBlock(),e.createBlock(L,{key:0,"icon-class":l.before,onClick:g},null,8,["icon-class"])):e.renderSlot(w.$slots,"prefix",{key:1}),l.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:l.name,ref_key:"lab",ref:o},[e.createTextVNode(e.toDisplayString(l.label),1),l.required?(e.openBlock(),e.createElementBlock("span",ze,"*")):e.createCommentVNode("",!0)],8,Ve)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":h[0]||(h[0]=S=>t.value=S),required:l.required,placeholder:l.required&&l.label.length===0?l.placeholder+"*":l.placeholder,type:l.type,id:l.name,name:l.name,size:l.inputSize,onFocus:u,onBlur:p,maxlength:l.maxlength,minlength:l.minlength,autofocus:l.autofocus,readonly:l.readonly},null,40,Ne),[[e.vModelDynamic,t.value]]),l.after.length>0?(e.openBlock(),e.createBlock(L,{key:3,"icon-class":l.after,onClick:c},null,8,["icon-class"])):e.renderSlot(w.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ve=["open"],je={key:0},Oe=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(s){const n=e.useModel(s,"modelValue"),t=s,l=e.ref(null),o=e.useSlots(),d=u=>{l.value&&!l.value.contains(u.target)&&(n.value=!1)};return e.watch(()=>n.value,async u=>{u?(await e.nextTick(),window.addEventListener("click",d,!0)):window.removeEventListener("click",d)}),e.onUnmounted(()=>{window.removeEventListener("click",d)}),(u,p)=>{var g;const c=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("dialog",{open:n.value,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:l},[t.name.length>0||(g=e.unref(o))!=null&&g.header?(e.openBlock(),e.createElementBlock("header",je,[e.renderSlot(u.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(G,{link:"",type:"primary",onClick:p[0]||(p[0]=D=>n.value=!1)},{default:e.withCtx(()=>[e.createVNode(c,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(u.$slots,"footer")])],10,ve)}}}},Symbol.toStringTag,{value:"Module"})),Pe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},emits:["header"],setup(s,{emit:n}){const t=s,l=n,o=()=>{l("header")};return(d,u)=>{const p=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(t.class)},[e.createElementVNode("header",{onClick:o},[e.renderSlot(d.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(p,{"icon-class":t.iconAfter},null,8,["icon-class"])])]),e.renderSlot(d.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(d.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),Fe={class:"popup"},Ie={class:"wrapper"},Le={class:"scrollbar"},Ae=["onClick"],Ye=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:"large"},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const n=e.ref({fullText:""}),t=e.ref(!1),l=e.ref([]),o=e.useModel(s,"modelValue"),d=s;e.watch(o.text,c=>{c.length>3&&(n.value.fullText=c)}),e.watch(n.value.fullText,(c,g)=>{t.value=c.length>3&&c.length>g.length,c.length>3&&u()});const u=()=>{let c="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(n.value.fullText),axios.post(c,{query:n.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(g=>{console.log(g.data.suggestions),l.value=g.data.suggestions,l.value.length===1&&p(l.value[0])}).catch(g=>{console.log(g)})},p=c=>{n.value.fullText=c.value,t.value=!1;const g={};g.text=c.value,g.coords=[Number(c.data.geo_lat),Number(c.data.geo_lon)],g.suggestion=c.data,o.value=g};return(c,g)=>{const D=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Fe,[e.createVNode(D,{size:d.size,modelValue:n.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=b=>n.value.fullText=b),placeholder:s.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ie,[e.createElementVNode("ul",Le,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(b,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:w=>p(b)},e.toDisplayString(b.value),9,Ae))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Re={key:0},X={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(s){const n=s,t=e.computed(()=>{let o=["sw-skeleton-item"];return n.size.length>0&&o.push("sw-"+n.size),n.animate&&o.push("sw-animate"),n.class.length>0&&o.push(n.class),o}),l=e.computed(()=>({width:n.width+"%"}));return(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(l.value)},[n.animate?(e.openBlock(),e.createElementBlock("div",Re)):e.createCommentVNode("",!0)],6))}},He=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"})),qe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(s){const n=s;return(t,l)=>n.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",n.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(X,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ue=["name","id"],We=["for","data-onlabel","data-offlabel"],Ge=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(s){const n=e.useModel(s,"modelValue"),t=s,l=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(l.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=u=>n.value=u)},null,8,Ue),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,We),e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Xe={key:0},Je=["onClick"],Qe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(s,{emit:n}){e.ref(0);const t=e.ref([]),l=s,o=e.useModel(s,"modelValue"),d=n;function u(c){t.value.push(c)}function p(c){t.value=t.value.filter(g=>g!==c)}return e.provide("registerTab",u),e.provide("unregisterTab",p),e.provide("activeTab",o),e.provide("tabs",t),(c,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",Xe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(D,b)=>(e.openBlock(),e.createElementBlock("span",{key:b,class:e.normalizeClass([{active:o.value===b}]),onClick:m=>{o.value=b,d("tab-click",b)}},e.toDisplayString(D.label||D.title),11,Je))),128))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ze={key:0,class:"tab-content"},Ke=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(s){const n=s,t=e.inject("registerTab"),l=e.inject("unregisterTab");e.onMounted(()=>{t({title:n.title,label:n.label})}),e.onUnmounted(()=>{l({title:n.title,label:n.label})});const o=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===n.title)),p=e.computed(()=>o.value===u.value);return(c,g)=>p.value?(e.openBlock(),e.createElementBlock("div",Ze,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));v.Alert=R,v.Library=se,v.components=A,Object.defineProperty(v,Symbol.toStringTag,{value:"Module"})});
1
+ (function(v,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(v=typeof globalThis<"u"?globalThis:v||self,e(v["component-sw"]={},v.vue))})(this,function(v,e){"use strict";function ee(s){return/^(https?:|mailto:|tel:)/.test(s)}function P(s,o){if(arguments.length===0||!s)return null;const t=o||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof s=="object"?l=s:(typeof s=="string"&&(/^[0-9]+$/.test(s)?s=parseInt(s):s=s.replace(new RegExp(/-/gm),"/")),typeof s=="number"&&s.toString().length===10&&(s=s*1e3),l=new Date(s));const n="ru-RU",d={Y:l.getFullYear(),m:(l.getMonth()+1).toString().padStart(2,"0"),d:l.getDate(),dd:l.getDate().toString().padStart(2,"0"),G:l.getHours(),H:l.getHours().toString().padStart(2,"0"),i:l.getMinutes().toString().padStart(2,"0"),s:l.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(n,{weekday:"short"}).format(l),F:new Intl.DateTimeFormat(n,{month:"long"}).format(l),M:new Intl.DateTimeFormat(n,{month:"short"}).format(l)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>d[p])}const te=(s,o)=>{const t=s.__vccOpts||s;for(const[l,n]of o)t[l]=n;return t},le={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return ee(this.iconClass)}}},oe=["href"];function ne(s,o,t,l,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"},s.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},s.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,oe)],16))}const I=te(le,[["render",ne]]),U={__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:s=>["success","warning","error","info"].includes(s)}},emits:["closed"],setup(s,{emit:o}){const t=s,l=o,n=e.ref(!1);let d=null;const u=()=>{n.value=!0,D()},p=()=>{n.value=!1,l("closed")},c=()=>{d&&(clearTimeout(d),d=null)},g=()=>{D()},D=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const B=e.computed(()=>{const m=["sw-alert"];return t.size.length>0&&m.push(`sw-${t.size}`),t.type.length>0&&m.push(`sw-${t.type}`),t.class.length>0&&m.push(t.class),m});return(m,w)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(B.value),onMouseenter:c,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(I,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),e.renderSlot(m.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(I,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},ae=Object.freeze(Object.defineProperty({__proto__:null,default:U},Symbol.toStringTag,{value:"Module"}));let F=document.querySelector("div.sw-alert-wrapper");function R(s={}){F||(F=document.createElement("div"),F.className="sw-alert-wrapper",document.body.appendChild(F));const o=e.createApp({setup(){return()=>e.h(U,{...s,onClose:()=>{F.removeChild(o._container),o.unmount()}})}}),t=o.mount(document.createElement("div"));F.appendChild(t.$el)}const W=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ae),"./components/SwButton.vue":()=>Promise.resolve().then(()=>re),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ie),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>Me),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>Te),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>ze),"./components/SwInput.vue":()=>Promise.resolve().then(()=>je),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Le),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>He),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>We),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Ue),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Je),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Ke),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>tt)}),A={};for(const s in W){const o=s.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,l)=>l.toUpperCase());A[o]=e.defineAsyncComponent(()=>W[s]())}const se={install(s){Object.keys(A).forEach(o=>{s.component(o,A[o])}),s.config.globalProperties.$Alert=R,s.provide("Alert",R)}},G={__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(s){const o=s,t=()=>{if(o.href.length>0){const n=document.createElement("a");n.setAttribute("href",o.href),n.setAttribute("target","_blank"),n.click()}},l=e.computed(()=>{let n=["sw-button"];return o.size.length>0&&n.push("sw-"+o.size),o.type.length>0&&n.push("sw-"+o.type),o.round&&n.push("sw-round"),o.text&&n.push("sw-text"),o.link&&n.push("sw-link"),o.class.length>0&&n.push(o.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},re=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),ie=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(s){e.onMounted(()=>{l.value="0px"});const o=e.ref(null),t=s;e.watch(()=>t.visual,()=>n());const l=e.ref("0px"),n=()=>{o.value&&(l.value=t.visual?o.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{n(),o.value&&(d=new ResizeObserver(n),d.observe(o.value))}),e.onBeforeUnmount(()=>{d&&d.disconnect()}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({maxHeight:l.value}),ref_key:"collapse",ref:o},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ce={class:"sw-data-picker"},de={class:"month_year"},pe={class:"text"},me={key:0,class:"week"},fe={key:1,class:"year"},ue=["onClick"],ge={key:2,class:"month"},he=["onClick"],ye={key:3,class:"decades"},we=["onClick"],ke={key:0},Se={class:"month_year"},_e={class:"text"},be={key:0,class:"week"},Be={key:1,class:"year"},Ee=["onClick"],$e={key:2,class:"month"},De=["onClick"],Me=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(s,{emit:o}){var J,Q,Z,K;const t=s,l=o,n=e.ref(3),d=e.ref(new Date),u=e.ref(new Date),p=e.ref(new Date().getFullYear()),c=e.ref(new Date().getMonth()),g=e.ref(new Date().getFullYear()),D=e.ref(new Date().getMonth()),B=e.ref(new Date(p.value,c.value+1,1).getMonth()),m=e.ref([]),w=e.ref(0),h=e.ref(-1),k=e.ref(-1),S=e.ref(navigator.language||"ru"),y=/en|zh|ja|he/.test(S.value)?0:1,_=e.computed(()=>Array.from({length:12},(i,a)=>{const r=new Date(2024,a);return new Intl.DateTimeFormat(S.value,{month:"long"}).format(r)})),M=i=>{let a=i.split(i.match(/\D.*?\D?/));return a[0].length>2?a.join("-")+"T00:00:01":a.reverse().join("-")+"T00:00:01"};(J=t.data)!=null&&J.startDate&&(d.value=new Date(M(t.data.startDate)),p.value=d.value.getFullYear(),c.value=d.value.getMonth()),(Q=t.data)!=null&&Q.endDate&&t.range==="range"&&(u.value=new Date(M(t.data.endDate)),g.value=u.value.getFullYear(),D.value=u.value.getMonth());const T=()=>{m.value=[],w.value=0;const i=new Date(p.value,c.value,0);for(let r=i.getDate()-i.getDay()+y;r<=i.getDate();r++)i.getDay()!==6+y&&(m.value.push({day:r,month:i.getMonth(),year:i.getFullYear(),class:[]}),w.value++);const a=new Date(p.value,c.value+1,0).getDate();for(let r=1;r<=a;r++)m.value.push({day:r,month:c.value,year:p.value,class:[]}),w.value++;if(t.range==="range"){const r=new Date(p.value,c.value+1,1),f=new Date(p.value,c.value+2,0).getDate();for(let b=1;b<=f;b++)m.value.push({day:b,month:r.getMonth(),year:r.getFullYear(),class:[]})}C()},C=()=>{var a;if(!((a=t.data)!=null&&a.holiday))return;const i=(r,f)=>{r.forEach(b=>{const[x,N,j]=b.split("-").map(Number),L=m.value.findIndex(q=>q.year===x&&q.month+1===N&&q.day===j);L!==-1&&(m.value[L].class[0]=f)})};i(t.data.holiday.preholidays,"preholiday"),i(t.data.holiday.holidays,"weekend"),i(t.data.holiday.holiday,"holiday"),i(t.data.holiday.nowork,"nowork")},V=()=>{if(!t.limitation||t.limitation.length<2)return!1;const i=[...t.limitation].sort((a,r)=>new Date(M(a.startDate)).getTime()-new Date(M(r.startDate)).getTime());for(let a=1;a<i.length;a++){const r=new Date(M(i[a-1].endDate));if(new Date(M(i[a].startDate))<=r)return console.warn("Warning: Диапазоны пересекаются:",i[a-1],i[a]),!0}return!1},E=(i,a,r)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(i,a,r).getTime();for(let b of t.limitation){const{startDate:x,endDate:N}=b;if(!x&&N){const j=new Date(M(N)).getTime();if(f<=j)return!1}if(x&&!N){const j=new Date(M(x)).getTime();if(f>=j)return!1}if(x&&N){const j=new Date(M(x)).getTime(),L=new Date(M(N)).getTime();if(j<=L){if(f>=j&&f<=L)return!1}else if(f>=j||f<=L)return!1}}return!0},$=(i,a)=>{const r=P(new Date(i.year,i.month,i.day),"{dd}.{m}.{Y}");t.range==="range"?k.value!==-1?(O(),h.value=a,m.value[a].class[1]="active"):h.value!==-1?(k.value=a,H(h.value,k.value,r)):(h.value=a,m.value[a].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=a,m.value[a].class[1]="active",l("input",{dateStart:r,count:1}))},O=()=>{m.value.forEach(i=>i.class[1]=""),h.value=-1,k.value=-1},H=(i,a,r)=>{let f=P(new Date(m.value[i].year,m.value[i].month,m.value[i].day),"{dd}.{m}.{Y}");if(a>=i){for(let b=i+1;b<a;b++)m.value[b].class[1]="select";l("input",{dateStart:f,dateEnd:r,count:Y(i,a)})}else{for(let b=a+1;b<i;b++)m.value[b].class[1]="select";l("input",{dateStart:r,dateEnd:f,count:Y(a,i)})}m.value[a].class[1]="active"},Y=(i,a)=>{var x;let r=Math.abs(i-a)+1,[f,b]=[Math.min(i,a),Math.max(i,a)];for(let N=f;N<=b;N++)((x=m.value[N])==null?void 0:x.class[0])==="holiday"&&r--;return r},z=(i,a)=>{E(i,a)&&(d.value=new Date(i,a,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),B.value=new Date(i,a+1,1).getMonth(),t.range==="year"&&n.value===0?$({year:i,month:a,day:1},8):T())};if(T(),V(),(Z=t.data)!=null&&Z.startDate&&(h.value=m.value.findIndex(i=>i.day===d.value.getDate()&&i.month===c.value&&i.year===p.value),h.value!==-1&&(m.value[h.value].class[1]="active")),(K=t.data)!=null&&K.endDate&&t.range==="range"&&(k.value=m.value.findIndex(i=>i.day===u.value.getDate()&&i.month===D.value&&i.year===g.value),k.value!==-1)){m.value[k.value].class[1]="active";for(let i=h.value+1;i<k.value;i++)m.value[i].class[1]="select"}return(i,a)=>(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",null,[e.createElementVNode("p",de,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[0]||(a[0]=e.withModifiers(r=>z(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[a[12]||(a[12]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[1]||(a[1]=e.withModifiers(r=>{n.value=0,z(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[a[13]||(a[13]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",pe,[e.createElementVNode("button",{onClick:a[2]||(a[2]=e.withModifiers(r=>n.value=1,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:a[3]||(a[3]=e.withModifiers(r=>n.value=1,["prevent"]))},e.toDisplayString(e.unref(P)(d.value.setMonth(c.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[4]||(a[4]=e.withModifiers(r=>{n.value=0,z(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[a[14]||(a[14]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[5]||(a[5]=e.withModifiers(r=>z(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[a[15]||(a[15]=e.createTextVNode("«"))])])])]),t.range==="year"||n.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,r+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||n.value===1?(e.openBlock(),e.createElementBlock("div",fe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(r,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(b=>{n.value=0,z(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(r),11,ue))),128))])):(e.openBlock(),e.createElementBlock("div",ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(r,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f<w.value+(7-new Date(p.value,c.value+1,1).getDay()+e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===c.value&&E(r.year,r.month,r.day)?r.class:"disabled"),onClick:e.withModifiers(()=>{r.month===c.value&&$(r,f)},["prevent"])},e.toDisplayString(r.day),11,he)):e.createCommentVNode("",!0)],64))),128))])),t.range==="year"||n.value===1?(e.openBlock(),e.createElementBlock("div",ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(r,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(b=>{n.value=0,z(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(r),11,we))),128))])):e.createCommentVNode("",!0)]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ke,[e.createElementVNode("p",Se,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[6]||(a[6]=e.withModifiers(r=>z(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[a[16]||(a[16]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[7]||(a[7]=e.withModifiers(r=>{n.value=0,z(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[a[17]||(a[17]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",_e,[e.createElementVNode("button",{onClick:a[8]||(a[8]=e.withModifiers(r=>n.value=2,["prevent"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:a[9]||(a[9]=e.withModifiers(r=>n.value=2,["prevent"]))},e.toDisplayString(e.unref(P)(d.value.setMonth(c.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[10]||(a[10]=e.withModifiers(r=>{n.value=0,z(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[a[18]||(a[18]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[11]||(a[11]=e.withModifiers(r=>z(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[a[19]||(a[19]=e.createTextVNode("«"))])])])]),n.value!==2?(e.openBlock(),e.createElementBlock("div",be,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,r+e.unref(y)),"{D}")),1)),64))])):e.createCommentVNode("",!0),n.value===2?(e.openBlock(),e.createElementBlock("div",Be,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(r,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(b=>{n.value=0,z(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(r),11,Ee))),128))])):(e.openBlock(),e.createElementBlock("div",$e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(r,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f>=w.value-(7+new Date(p.value,c.value+1,1).getDay()-e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===B.value&&E(r.year,r.month,r.day)?r.class:"disabled"),onClick:e.withModifiers(()=>{r.month===B.value&&$(r,f)},["prevent"])},e.toDisplayString(r.day),11,De)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),Ce=["id"],Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:e.mergeModels({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}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s,{expose:o}){const t=s,l=e.useModel(s,"modelValue"),n=e.ref(null),d=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),c=e.ref(0),g=e.computed(()=>{let S=["sw-dropdown"];return t.size.length>0&&S.push("sw-"+t.size),t.type.length>0&&S.push("sw-"+t.type),S}),D=new ResizeObserver(S=>{l.value&&c.value++,c.value>99&&(c.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!n.value)return;c.value<2&&D.observe(d.value);let S=window.pageYOffset||document.documentElement.scrollTop,y=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${S}px`,document.body.style.left=`-${y}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=S,document.documentElement.scrollLeft=y;const _=n.value.getBoundingClientRect();let M=window.innerWidth,T=window.innerHeight,C=d.value.offsetHeight,V=d.value.offsetWidth,E=_.left+_.width/2+y,$=_.top+_.height/2+S,O=_.height/2+8;const[H,Y]=t.placement.split("-",2);switch(H){case"bottom":$=S+T-C-O-8<$?$-O-C:$+O;break;case"top":$=S+C+O+8>$?$+O:$-O-C;break;case"left":E=E-V-_.width/2-8,$=$-C/2;break;case"right":E=E+_.width/2+8,$=$-C/2;break}switch(Y){case"left":E=y+M-8>E-_.width/2+V?E-_.width/2:E-V+_.width/2;break;case"right":E=8<E+_.width/2-V?E-V+_.width/2:E-_.width/2;break}E<0&&(E=0),$<0&&($=0),u.value={position:"absolute",top:`${$}px`,left:`${E}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const B=()=>{t.trigger==="click"&&(l.value=!l.value)},m=()=>{t.trigger==="hover"&&(l.value=!l.value)},w=()=>{t.trigger==="context"&&(l.value=!l.value)},h=()=>{l.value&&c.value++,c.value>99&&(c.value=1)};o({handleResize:h});const k=S=>{!S.target.closest(`[id="${p}"]`)&&n.value&&!n.value.contains(S.target)&&(l.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",k):document.documentElement.addEventListener("click",k),window.onscrollend!==void 0?window.addEventListener("scrollend",h):window.addEventListener("scroll",h)}),e.onUnmounted(()=>{D.disconnect(),window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",k):document.documentElement.removeEventListener("click",k),window.onscrollend!==void 0?window.removeEventListener("scrollend",h):window.removeEventListener("scroll",h)}),(S,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(g.value),onClick:y[0]||(y[0]=_=>B()),onMouseover:y[1]||(y[1]=e.withModifiers(_=>m(),["stop"])),onMouseleave:y[2]||(y[2]=e.withModifiers(_=>m(),["stop"])),onContextmenu:y[3]||(y[3]=e.withModifiers(_=>w(),["stop"])),ref_key:"dropdownRef",ref:n},[e.renderSlot(S.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:d,id:e.unref(p),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(S.$slots,"dropdown")],14,Ce)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Ve=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(s){const o=s,t=e.computed(()=>{let l=["sw-dropdown-item"];return o.size.length>0&&l.push("sw-"+o.size),o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,n)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":s.iconBefore},null,8,["icon-class"]),e.renderSlot(l.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(s){const o=s,t=e.computed(()=>{let l=["sw-form-item"];return o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ne=["for"],xe={key:0,title:"Это поле обязательно для заполнения."},ve=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus","readonly"],je=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},maxlength:{type:Number,default:128},minlength:{type:Number,default:1},inputSize:{type:Number,default:60},autofocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(s,{emit:o}){var m;const t=e.useModel(s,"modelValue"),l=s,n=e.ref(null),d=o,u=w=>{d("focusInput"),w.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},p=w=>{var h;((h=t.value)==null?void 0:h.length)===0&&n.value!==null&&n.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&n.value!==null&&(n.value.style.top="-.6em");const c=()=>{d("suffix")},g=()=>{d("prefix")},D=e.computed(()=>{let w=["sw-input"];return l.size.length>0&&w.push("sw-"+l.size),l.class.length>0&&w.push(l.class),w});e.watch(t,(w,h)=>{l.type==="phone"&&(t.value=B(w,h))});const B=(w,h)=>{if(/^\+[0-9]\s/.test(h)&&w.length===2||/^\+0\s/.test(w))return"";const k=w;if(typeof k>"u"||k.length===0)return k;const S="+0 (___) ___-__-__";let y=0;const _=S.replace(/\D/g,""),M=k.replace(/\D/g,"");let T=S.replace(/[_\d]/g,V=>y<M.length?M.charAt(y++)||_.charAt(y):V);y=T.indexOf("_"),y!==-1&&(y=y<5?3:y,T=T.slice(0,y));let C=S.slice(0,k.length).replace(/_+/g,V=>`\\d{1,${V.length}}`).replace(/[+()]/g,"\\$&");if(C=new RegExp(`^${C}$`),T=T.replace(/[-—]$|(\) )$/g,""),!C.test(k)||k.length<5)return T};return(w,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(D.value)},[l.before.length>0?(e.openBlock(),e.createBlock(I,{key:0,"icon-class":l.before,onClick:g},null,8,["icon-class"])):e.renderSlot(w.$slots,"prefix",{key:1}),l.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:l.name,ref_key:"lab",ref:n},[e.createTextVNode(e.toDisplayString(l.label),1),l.required?(e.openBlock(),e.createElementBlock("span",xe,"*")):e.createCommentVNode("",!0)],8,Ne)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":h[0]||(h[0]=k=>t.value=k),required:l.required,placeholder:l.required&&l.label.length===0?l.placeholder+"*":l.placeholder,type:l.type,id:l.name,name:l.name,size:l.inputSize,onFocus:u,onBlur:p,maxlength:l.maxlength,minlength:l.minlength,autofocus:l.autofocus,readonly:l.readonly},null,40,ve),[[e.vModelDynamic,t.value]]),l.after.length>0?(e.openBlock(),e.createBlock(I,{key:3,"icon-class":l.after,onClick:c},null,8,["icon-class"])):e.renderSlot(w.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),Oe=["open"],Pe={key:0},Fe=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(s){const o=e.useModel(s,"modelValue"),t=s,l=e.ref(null),n=e.useSlots(),d=u=>{l.value&&!l.value.contains(u.target)&&(o.value=!1)};return e.watch(()=>o.value,async u=>{u?(await e.nextTick(),window.addEventListener("click",d,!0)):window.removeEventListener("click",d)}),e.onUnmounted(()=>{window.removeEventListener("click",d)}),(u,p)=>{var g;const c=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("dialog",{open:o.value,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:l},[t.name.length>0||(g=e.unref(n))!=null&&g.header?(e.openBlock(),e.createElementBlock("header",Pe,[e.renderSlot(u.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(G,{link:"",type:"primary",onClick:p[0]||(p[0]=D=>o.value=!1)},{default:e.withCtx(()=>[e.createVNode(c,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(u.$slots,"footer")])],10,Oe)}}}},Symbol.toStringTag,{value:"Module"})),Le=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},emits:["header"],setup(s,{emit:o}){const t=s,l=o,n=()=>{l("header")};return(d,u)=>{const p=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(t.class)},[e.createElementVNode("header",{onClick:n},[e.renderSlot(d.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(p,{"icon-class":t.iconAfter},null,8,["icon-class"])])]),e.renderSlot(d.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(d.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),Ie={class:"popup"},Ae={class:"wrapper"},Ye={class:"scrollbar"},Re=["onClick"],He=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:"large"},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const o=e.ref({fullText:""}),t=e.ref(!1),l=e.ref([]),n=e.useModel(s,"modelValue"),d=s;e.watch(n.text,c=>{c.length>3&&(o.value.fullText=c)}),e.watch(o.value.fullText,(c,g)=>{t.value=c.length>3&&c.length>g.length,c.length>3&&u()});const u=()=>{let c="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(o.value.fullText),axios.post(c,{query:o.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(g=>{console.log(g.data.suggestions),l.value=g.data.suggestions,l.value.length===1&&p(l.value[0])}).catch(g=>{console.log(g)})},p=c=>{o.value.fullText=c.value,t.value=!1;const g={};g.text=c.value,g.coords=[Number(c.data.geo_lat),Number(c.data.geo_lon)],g.suggestion=c.data,n.value=g};return(c,g)=>{const D=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Ie,[e.createVNode(D,{size:d.size,modelValue:o.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=B=>o.value.fullText=B),placeholder:s.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ae,[e.createElementVNode("ul",Ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(B,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:w=>p(B)},e.toDisplayString(B.value),9,Re))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),qe={key:0},X={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(s){const o=s,t=e.computed(()=>{let n=["sw-skeleton-item"];return o.size.length>0&&n.push("sw-"+o.size),o.animate&&n.push("sw-animate"),o.class.length>0&&n.push(o.class),n}),l=e.computed(()=>({width:o.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(l.value)},[o.animate?(e.openBlock(),e.createElementBlock("div",qe)):e.createCommentVNode("",!0)],6))}},Ue=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"})),We=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(s){const o=s;return(t,l)=>o.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",o.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(X,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ge=["name","id"],Xe=["for","data-onlabel","data-offlabel"],Je=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(s){const o=e.useModel(s,"modelValue"),t=s,l=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(l.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=u=>o.value=u)},null,8,Ge),[[e.vModelCheckbox,o.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,Xe),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Qe={key:0},Ze=["onClick"],Ke=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(s,{emit:o}){e.ref(0);const t=e.ref([]),l=s,n=e.useModel(s,"modelValue"),d=o;function u(c){t.value.push(c)}function p(c){t.value=t.value.filter(g=>g!==c)}return e.provide("registerTab",u),e.provide("unregisterTab",p),e.provide("activeTab",n),e.provide("tabs",t),(c,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",Qe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(D,B)=>(e.openBlock(),e.createElementBlock("span",{key:B,class:e.normalizeClass([{active:n.value===B}]),onClick:m=>{n.value=B,d("tab-click",B)}},e.toDisplayString(D.label||D.title),11,Ze))),128))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),et={key:0,class:"tab-content"},tt=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(s){const o=s,t=e.inject("registerTab"),l=e.inject("unregisterTab");e.onMounted(()=>{t({title:o.title,label:o.label})}),e.onUnmounted(()=>{l({title:o.title,label:o.label})});const n=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===o.title)),p=e.computed(()=>n.value===u.value);return(c,g)=>p.value?(e.openBlock(),e.createElementBlock("div",et,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));v.Alert=R,v.Library=se,v.components=A,Object.defineProperty(v,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-FdC2mhUI.js";
2
+ import { A as s, L as t, c as e } from "./index-Dvy6nz3v.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.5.82",
3
+ "version": "0.5.84",
4
4
  "description": "Vue components of Component SW collection.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -1,288 +0,0 @@
1
- import { ref as D, computed as le, createElementBlock as v, openBlock as i, createElementVNode as r, createCommentVNode as N, withModifiers as c, renderSlot as M, createTextVNode as $, toDisplayString as k, unref as F, Fragment as T, renderList as E, normalizeClass as V } from "vue";
2
- import { p as I } from "./index-FdC2mhUI.js";
3
- const ne = { class: "sw-data-picker" }, se = { class: "month_year" }, oe = { class: "text" }, ue = {
4
- key: 0,
5
- class: "week"
6
- }, re = {
7
- key: 1,
8
- class: "year"
9
- }, ve = ["onClick"], ie = {
10
- key: 2,
11
- class: "month"
12
- }, de = ["onClick"], ce = { key: 0 }, ge = { class: "month_year" }, De = { class: "text" }, fe = {
13
- key: 0,
14
- class: "week"
15
- }, me = {
16
- key: 1,
17
- class: "year"
18
- }, pe = ["onClick"], we = {
19
- key: 2,
20
- class: "month"
21
- }, he = ["onClick"], be = {
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(Z, { emit: _ }) {
36
- var J, Q, U, X;
37
- const s = Z, x = _, g = D(3), y = D(/* @__PURE__ */ new Date()), B = D(/* @__PURE__ */ new Date()), u = D((/* @__PURE__ */ new Date()).getFullYear()), n = D((/* @__PURE__ */ new Date()).getMonth()), P = D((/* @__PURE__ */ new Date()).getFullYear()), R = D((/* @__PURE__ */ new Date()).getMonth()), z = D(new Date(u.value, n.value + 1, 1).getMonth()), o = D([]), j = D(0), f = D(-1), C = D(-1), W = D(navigator.language || "ru"), Y = /en|zh|ja|he/.test(W.value) ? 0 : 1, q = le(() => Array.from({ length: 12 }, (t, e) => {
38
- const a = new Date(2024, e);
39
- return new Intl.DateTimeFormat(W.value, { month: "long" }).format(a);
40
- })), p = (t) => {
41
- let e = t.split(t.match(/\D.*?\D?/));
42
- return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
43
- };
44
- (J = s.data) != null && J.startDate && (y.value = new Date(p(s.data.startDate)), u.value = y.value.getFullYear(), n.value = y.value.getMonth()), (Q = s.data) != null && Q.endDate && s.range === "range" && (B.value = new Date(p(s.data.endDate)), P.value = B.value.getFullYear(), R.value = B.value.getMonth());
45
- const G = () => {
46
- o.value = [], j.value = 0;
47
- const t = new Date(u.value, n.value, 0);
48
- for (let a = t.getDate() - t.getDay() + Y; a <= t.getDate(); a++)
49
- t.getDay() !== 6 + Y && (o.value.push({ day: a, month: t.getMonth(), year: t.getFullYear(), class: [] }), j.value++);
50
- const e = new Date(u.value, n.value + 1, 0).getDate();
51
- for (let a = 1; a <= e; a++)
52
- o.value.push({ day: a, month: n.value, year: u.value, class: [] }), j.value++;
53
- if (s.range === "range") {
54
- const a = new Date(u.value, n.value + 1, 1), l = new Date(u.value, n.value + 2, 0).getDate();
55
- for (let d = 1; d <= l; d++)
56
- o.value.push({ day: d, month: a.getMonth(), year: a.getFullYear(), class: [] });
57
- }
58
- K();
59
- }, K = () => {
60
- var e;
61
- if (!((e = s.data) != null && e.holiday)) return;
62
- const t = (a, l) => {
63
- a.forEach((d) => {
64
- const [h, m, b] = d.split("-").map(Number), S = o.value.findIndex((O) => O.year === h && O.month + 1 === m && O.day === b);
65
- S !== -1 && (o.value[S].class[0] = l);
66
- });
67
- };
68
- t(s.data.holiday.preholidays, "preholiday"), t(s.data.holiday.holidays, "weekend"), t(s.data.holiday.holiday, "holiday"), t(s.data.holiday.nowork, "nowork");
69
- }, ee = () => {
70
- if (!s.limitation || s.limitation.length < 2) return !1;
71
- const t = [...s.limitation].sort(
72
- (e, a) => new Date(p(e.startDate)).getTime() - new Date(p(a.startDate)).getTime()
73
- );
74
- for (let e = 1; e < t.length; e++) {
75
- const a = new Date(p(t[e - 1].endDate));
76
- if (new Date(p(t[e].startDate)) <= a)
77
- return console.warn("Warning: Диапазоны пересекаются:", t[e - 1], t[e]), !0;
78
- }
79
- return !1;
80
- }, A = (t, e, a) => {
81
- if (!s.limitation || s.limitation.length === 0) return !0;
82
- const l = new Date(t, e, a).getTime();
83
- for (let d of s.limitation) {
84
- const { startDate: h, endDate: m } = d;
85
- if (!h && m) {
86
- const b = new Date(p(m)).getTime();
87
- if (l <= b) return !1;
88
- }
89
- if (h && !m) {
90
- const b = new Date(p(h)).getTime();
91
- if (l >= b) return !1;
92
- }
93
- if (h && m) {
94
- const b = new Date(p(h)).getTime(), S = new Date(p(m)).getTime();
95
- if (b <= S) {
96
- if (l >= b && l <= S) return !1;
97
- } else if (l >= b || l <= S) return !1;
98
- }
99
- }
100
- return !0;
101
- }, L = (t, e) => {
102
- const a = I(new Date(t.year, t.month, t.day), "{dd}.{m}.{Y}");
103
- s.range === "range" ? C.value !== -1 ? (te(), f.value = e, o.value[e].class[1] = "active") : f.value !== -1 ? (C.value = e, ae(f.value, C.value, a)) : (f.value = e, o.value[e].class[1] = "active") : (f.value !== -1 && (o.value[f.value].class[1] = ""), f.value = e, o.value[e].class[1] = "active", x("input", { dateStart: a, count: 1 }));
104
- }, te = () => {
105
- o.value.forEach((t) => t.class[1] = ""), f.value = -1, C.value = -1;
106
- }, ae = (t, e, a) => {
107
- let l = I(new Date(o.value[t].year, o.value[t].month, o.value[t].day), "{dd}.{m}.{Y}");
108
- if (e >= t) {
109
- for (let d = t + 1; d < e; d++)
110
- o.value[d].class[1] = "select";
111
- x("input", { dateStart: l, dateEnd: a, count: H(t, e) });
112
- } else {
113
- for (let d = e + 1; d < t; d++)
114
- o.value[d].class[1] = "select";
115
- x("input", { dateStart: a, dateEnd: l, count: H(e, t) });
116
- }
117
- o.value[e].class[1] = "active";
118
- }, H = (t, e) => {
119
- var h;
120
- let a = Math.abs(t - e) + 1, [l, d] = [Math.min(t, e), Math.max(t, e)];
121
- for (let m = l; m <= d; m++)
122
- ((h = o.value[m]) == null ? void 0 : h.class[0]) === "holiday" && a--;
123
- return a;
124
- }, w = (t, e) => {
125
- A(t, e) && (y.value = new Date(t, e, 1), u.value = y.value.getFullYear(), n.value = y.value.getMonth(), z.value = new Date(t, e + 1, 1).getMonth(), s.range === "year" && g.value === 0 ? L({ year: t, month: e, day: 1 }, 8) : G());
126
- };
127
- if (G(), ee(), (U = s.data) != null && U.startDate && (f.value = o.value.findIndex((t) => t.day === y.value.getDate() && t.month === n.value && t.year === u.value), f.value !== -1 && (o.value[f.value].class[1] = "active")), (X = s.data) != null && X.endDate && s.range === "range" && (C.value = o.value.findIndex((t) => t.day === B.value.getDate() && t.month === R.value && t.year === P.value), C.value !== -1)) {
128
- o.value[C.value].class[1] = "active";
129
- for (let t = f.value + 1; t < C.value; t++)
130
- o.value[t].class[1] = "select";
131
- }
132
- return (t, e) => (i(), v("div", ne, [
133
- r("div", null, [
134
- r("p", se, [
135
- r("span", null, [
136
- r("button", {
137
- onClick: e[0] || (e[0] = c((a) => w(u.value - 1, n.value), ["prevent"]))
138
- }, [
139
- M(t.$slots, "double-arrow", {}, () => [
140
- e[12] || (e[12] = $("«"))
141
- ])
142
- ]),
143
- r("button", {
144
- onClick: e[1] || (e[1] = c((a) => {
145
- g.value = 0, w(u.value, n.value - 1);
146
- }, ["prevent"]))
147
- }, [
148
- M(t.$slots, "arrow", {}, () => [
149
- e[13] || (e[13] = $("‹"))
150
- ])
151
- ])
152
- ]),
153
- r("span", oe, [
154
- r("button", {
155
- onClick: e[2] || (e[2] = c((a) => g.value = 1, ["prevent"]))
156
- }, k(u.value), 1),
157
- r("button", {
158
- onClick: e[3] || (e[3] = c((a) => g.value = 1, ["prevent"]))
159
- }, k(F(I)(y.value.setMonth(n.value), "{F}")), 1)
160
- ]),
161
- r("span", null, [
162
- r("button", {
163
- class: "sw-revers",
164
- onClick: e[4] || (e[4] = c((a) => {
165
- g.value = 0, w(u.value, n.value + 1);
166
- }, ["prevent"]))
167
- }, [
168
- M(t.$slots, "arrow", {}, () => [
169
- e[14] || (e[14] = $("‹"))
170
- ])
171
- ]),
172
- r("button", {
173
- class: "sw-revers",
174
- onClick: e[5] || (e[5] = c((a) => w(u.value + 1, n.value), ["prevent"]))
175
- }, [
176
- M(t.$slots, "double-arrow", {}, () => [
177
- e[15] || (e[15] = $("«"))
178
- ])
179
- ])
180
- ])
181
- ]),
182
- s.range === "year" || g.value === 1 ? N("", !0) : (i(), v("div", ue, [
183
- (i(), v(T, null, E(7, (a, l) => r("button", {
184
- key: l,
185
- class: "disabled"
186
- }, k(F(I)(new Date(1970, 1, a + F(Y)), "{D}")), 1)), 64))
187
- ])),
188
- s.range === "year" || g.value === 1 ? (i(), v("div", re, [
189
- (i(!0), v(T, null, E(q.value, (a, l) => (i(), v("button", {
190
- key: l,
191
- onClick: c((d) => {
192
- g.value = 0, w(u.value, l);
193
- }, ["prevent"]),
194
- class: V(l === n.value ? "active" : "")
195
- }, k(a), 11, ve))), 128))
196
- ])) : (i(), v("div", ie, [
197
- (i(!0), v(T, null, E(o.value, (a, l) => (i(), v(T, { key: l }, [
198
- l < j.value + (7 - new Date(u.value, n.value + 1, 1).getDay() + F(Y)) % 7 ? (i(), v("button", {
199
- key: 0,
200
- class: V(a.month === n.value && A(a.year, a.month, a.day) ? a.class : "disabled"),
201
- onClick: c(() => {
202
- a.month === n.value && L(a, l);
203
- }, ["prevent"])
204
- }, k(a.day), 11, de)) : N("", !0)
205
- ], 64))), 128))
206
- ]))
207
- ]),
208
- s.range === "range" ? (i(), v("div", ce, [
209
- r("p", ge, [
210
- r("span", null, [
211
- r("button", {
212
- onClick: e[6] || (e[6] = c((a) => w(u.value - 1, n.value), ["prevent"]))
213
- }, [
214
- M(t.$slots, "double-arrow", {}, () => [
215
- e[16] || (e[16] = $("«"))
216
- ])
217
- ]),
218
- r("button", {
219
- onClick: e[7] || (e[7] = c((a) => {
220
- g.value = 0, w(u.value, n.value - 1);
221
- }, ["prevent"]))
222
- }, [
223
- M(t.$slots, "arrow", {}, () => [
224
- e[17] || (e[17] = $("‹"))
225
- ])
226
- ])
227
- ]),
228
- r("span", De, [
229
- r("button", {
230
- onClick: e[8] || (e[8] = c((a) => g.value = 2, ["prevent"]))
231
- }, k(new Date(u.value, n.value + 1).getFullYear()), 1),
232
- r("button", {
233
- onClick: e[9] || (e[9] = c((a) => g.value = 2, ["prevent"]))
234
- }, k(F(I)(y.value.setMonth(n.value + 1), "{F}")), 1)
235
- ]),
236
- r("span", null, [
237
- r("button", {
238
- class: "sw-revers",
239
- onClick: e[10] || (e[10] = c((a) => {
240
- g.value = 0, w(u.value, n.value + 1);
241
- }, ["prevent"]))
242
- }, [
243
- M(t.$slots, "arrow", {}, () => [
244
- e[18] || (e[18] = $("‹"))
245
- ])
246
- ]),
247
- r("button", {
248
- class: "sw-revers",
249
- onClick: e[11] || (e[11] = c((a) => w(u.value + 1, n.value), ["prevent"]))
250
- }, [
251
- M(t.$slots, "double-arrow", {}, () => [
252
- e[19] || (e[19] = $("«"))
253
- ])
254
- ])
255
- ])
256
- ]),
257
- g.value !== 2 ? (i(), v("div", fe, [
258
- (i(), v(T, null, E(7, (a, l) => r("button", {
259
- key: l,
260
- class: "disabled"
261
- }, k(F(I)(new Date(1970, 1, a + F(Y)), "{D}")), 1)), 64))
262
- ])) : N("", !0),
263
- g.value === 2 ? (i(), v("div", me, [
264
- (i(!0), v(T, null, E(q.value, (a, l) => (i(), v("button", {
265
- key: l,
266
- onClick: c((d) => {
267
- g.value = 0, w(u.value, l - 1);
268
- }, ["prevent"]),
269
- class: V(l === (n.value + 1) % 12 ? "active" : "")
270
- }, k(a), 11, pe))), 128))
271
- ])) : (i(), v("div", we, [
272
- (i(!0), v(T, null, E(o.value, (a, l) => (i(), v(T, { key: l }, [
273
- l >= j.value - (7 + new Date(u.value, n.value + 1, 1).getDay() - F(Y)) % 7 ? (i(), v("button", {
274
- key: 0,
275
- class: V(a.month === z.value && A(a.year, a.month, a.day) ? a.class : "disabled"),
276
- onClick: c(() => {
277
- a.month === z.value && L(a, l);
278
- }, ["prevent"])
279
- }, k(a.day), 11, he)) : N("", !0)
280
- ], 64))), 128))
281
- ]))
282
- ])) : N("", !0)
283
- ]));
284
- }
285
- };
286
- export {
287
- be as default
288
- };