@studio-west/component-sw 0.5.95 → 0.6.1

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
@@ -278,22 +278,23 @@ Default - текст названия или модуль
278
278
 
279
279
  ### Свойства / Properties
280
280
 
281
- | Имя | Тип | Значения/Описание |
282
- |---------------|-----------|----------------------------------------------------------------------------------------------------------|
283
- | `name` | `String` | Обязателен! нужен для связывания через id input и label. |
284
- | `class` | `String` | Добавляет пользовательский CSS-класс к компоненту. |
285
- | `size` | `String` | Размер поля: `'large'`, `'small'`. |
286
- | `type` | `String` | Тип поля: `'text'`- по умолчанию, `'phone'`- телефон, `'password'` - пароль |
287
- | `before` | `String` | Название svg в спрайте загружаемое в начале. |
288
- | `after` | `String` | Название svg в спрайте загружаемое в конце. |
289
- | `placeholder` | `String` | Текст Placeholder. |
290
- | `required` | `Boolean` | Признак обязательно ли для заполнения false - по умолчанию. |
291
- | `label` | `String` | Текст в Label. |
292
- | `maxlength` | `Number` | По умолчанию - 128, параметр атрибута max-length. Минимальное количество символов разрешённых в тексте. |
293
- | `minlength` | `Number` | По умолчанию - 1, параметр атрибута min-length. Минимальное количество символов разрешённых в тексте. |
294
- | `inputSize` | `Number` | По умолчанию - 60, параметр атрибута size - ширина текстового поля. |
295
- | `autofocus` | `Boolean` | По умолчанию - false, Устанавливает фокус в поле формы. |
296
- | `readonly` | `Boolean` | По умолчанию - false, Устанавливает, что поле не может изменяться пользователем. |
281
+ | Имя | Тип | Значения/Описание |
282
+ |---------------|-----------|-------------------------------------------------------------------------------------------------------------------------------------------------|
283
+ | `name` | `String` | Обязателен! нужен для связывания через id input и label. |
284
+ | `class` | `String` | Добавляет пользовательский CSS-класс к компоненту. |
285
+ | `size` | `String` | Размер поля: `'large'`, `'small'`. |
286
+ | `type` | `String` | Тип поля: `'text'`- по умолчанию, `'phone'`- телефон, `'password'` - пароль |
287
+ | `inputMode` | `String` | Мобильная клавиатура: `'search'`- по умолчанию, `'mumeric'`- цифры, `'decimal'` - числа, `'tel'` - телефон, `'url'` - адреса, `'email'` - почта |
288
+ | `before` | `String` | Название svg в спрайте загружаемое в начале. |
289
+ | `after` | `String` | Название svg в спрайте загружаемое в конце. |
290
+ | `placeholder` | `String` | Текст Placeholder. |
291
+ | `required` | `Boolean` | Признак обязательно ли для заполнения false - по умолчанию. |
292
+ | `label` | `String` | Текст в Label. |
293
+ | `maxlength` | `Number` | По умолчанию - 128, параметр атрибута max-length. Минимальное количество символов разрешённых в тексте. |
294
+ | `minlength` | `Number` | По умолчанию - 1, параметр атрибута min-length. Минимальное количество символов разрешённых в тексте. |
295
+ | `inputSize` | `Number` | По умолчанию - 60, параметр атрибута size - ширина текстового поля. |
296
+ | `autofocus` | `Boolean` | По умолчанию - false, Устанавливает фокус в поле формы. |
297
+ | `readonly` | `Boolean` | По умолчанию - false, Устанавливает, что поле не может изменяться пользователем. |
297
298
 
298
299
  ### Слоты / Slots
299
300
 
@@ -0,0 +1,372 @@
1
+ import { ref as f, computed as K, createElementBlock as u, openBlock as r, createElementVNode as s, createCommentVNode as V, withModifiers as c, renderSlot as w, createTextVNode as k, toDisplayString as D, unref as T, Fragment as $, renderList as Y, normalizeClass as N } from "vue";
2
+ import { p as A } from "./index-Cs1U4S9r.js";
3
+ const oe = { class: "sw-data-picker" }, ue = {
4
+ key: 0,
5
+ class: "month_year"
6
+ }, re = { class: "text" }, ve = {
7
+ key: 1,
8
+ class: "month_year"
9
+ }, ie = { class: "text" }, de = {
10
+ key: 2,
11
+ class: "week"
12
+ }, ce = {
13
+ key: 3,
14
+ class: "year"
15
+ }, ge = ["onClick"], pe = {
16
+ key: 4,
17
+ class: "year"
18
+ }, De = ["onClick"], fe = {
19
+ key: 5,
20
+ class: "month"
21
+ }, me = ["onClick"], we = { key: 0 }, ke = {
22
+ key: 0,
23
+ class: "month_year"
24
+ }, he = { class: "text" }, ye = {
25
+ key: 1,
26
+ class: "month_year"
27
+ }, be = { class: "text" }, $e = {
28
+ key: 2,
29
+ class: "week"
30
+ }, Ce = {
31
+ key: 3,
32
+ class: "year"
33
+ }, Me = ["onClick"], Fe = {
34
+ key: 4,
35
+ class: "year"
36
+ }, Te = ["onClick"], Ye = {
37
+ key: 5,
38
+ class: "month"
39
+ }, Se = ["onClick"], je = {
40
+ __name: "SwDatePicker",
41
+ props: {
42
+ data: Object,
43
+ limitation: {
44
+ type: [Boolean, Array],
45
+ default: () => !1
46
+ },
47
+ range: {
48
+ type: String,
49
+ default: "solid"
50
+ }
51
+ },
52
+ emits: ["input"],
53
+ setup(ee, { emit: te }) {
54
+ var U, X, Z, _;
55
+ const v = ee, L = te, d = f(5), C = f(/* @__PURE__ */ new Date()), z = f(/* @__PURE__ */ new Date()), o = f((/* @__PURE__ */ new Date()).getFullYear()), n = f((/* @__PURE__ */ new Date()).getMonth()), q = f((/* @__PURE__ */ new Date()).getFullYear()), x = f((/* @__PURE__ */ new Date()).getMonth()), O = f(new Date(o.value, n.value + 1, 1).getMonth()), i = f([]), B = f(0), m = f(-1), F = f(-1), G = f(navigator.language || "ru"), E = /en|zh|ja|he/.test(G.value) ? 0 : 1, H = K(() => Array.from({ length: 12 }, (a, e) => {
56
+ const t = new Date(2024, e);
57
+ return new Intl.DateTimeFormat(G.value, { month: "long" }).format(t);
58
+ })), S = f(Math.floor(o.value / 10) * 10), I = K(() => Array.from({ length: 12 }, (a, e) => S.value + e - 1)), y = (a) => {
59
+ let e = a.split(a.match(/\D.*?\D?/));
60
+ return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
61
+ };
62
+ (U = v.data) != null && U.startDate && (C.value = new Date(y(v.data.startDate)), o.value = C.value.getFullYear(), n.value = C.value.getMonth()), (X = v.data) != null && X.endDate && v.range === "range" && (z.value = new Date(y(v.data.endDate)), q.value = z.value.getFullYear(), x.value = z.value.getMonth());
63
+ const J = () => {
64
+ i.value = [], B.value = 0;
65
+ const a = new Date(o.value, n.value, 0);
66
+ for (let t = a.getDate() - a.getDay() + E; t <= a.getDate(); t++)
67
+ a.getDay() !== 6 + E && (i.value.push({ day: t, month: a.getMonth(), year: a.getFullYear(), class: [] }), B.value++);
68
+ const e = new Date(o.value, n.value + 1, 0).getDate();
69
+ for (let t = 1; t <= e; t++)
70
+ i.value.push({ day: t, month: n.value, year: o.value, class: [] }), B.value++;
71
+ if (v.range === "range") {
72
+ const t = new Date(o.value, n.value + 1, 1), l = new Date(o.value, n.value + 2, 0).getDate();
73
+ for (let g = 1; g <= l; g++)
74
+ i.value.push({ day: g, month: t.getMonth(), year: t.getFullYear(), class: [] });
75
+ }
76
+ ae();
77
+ }, ae = () => {
78
+ var e;
79
+ if (!((e = v.data) != null && e.holiday)) return;
80
+ const a = (t, l) => {
81
+ t.forEach((g) => {
82
+ const [b, h, M] = g.split("-").map(Number), j = i.value.findIndex((W) => W.year === b && W.month + 1 === h && W.day === M);
83
+ j !== -1 && (i.value[j].class[0] = l);
84
+ });
85
+ };
86
+ a(v.data.holiday.preholidays, "preholiday"), a(v.data.holiday.holidays, "weekend"), a(v.data.holiday.holiday, "holiday"), a(v.data.holiday.nowork, "nowork");
87
+ }, le = () => {
88
+ if (!v.limitation || v.limitation.length < 2) return !1;
89
+ const a = [...v.limitation].sort(
90
+ (e, t) => new Date(y(e.startDate)).getTime() - new Date(y(t.startDate)).getTime()
91
+ );
92
+ for (let e = 1; e < a.length; e++) {
93
+ const t = new Date(y(a[e - 1].endDate));
94
+ if (new Date(y(a[e].startDate)) <= t)
95
+ return console.warn("Warning: Диапазоны пересекаются:", a[e - 1], a[e]), !0;
96
+ }
97
+ return !1;
98
+ }, P = (a, e, t) => {
99
+ if (!v.limitation || v.limitation.length === 0) return !0;
100
+ const l = new Date(a, e, t).getTime();
101
+ for (let g of v.limitation) {
102
+ const { startDate: b, endDate: h } = g;
103
+ if (!b && h) {
104
+ const M = new Date(y(h)).getTime();
105
+ if (l <= M) return !1;
106
+ }
107
+ if (b && !h) {
108
+ const M = new Date(y(b)).getTime();
109
+ if (l >= M) return !1;
110
+ }
111
+ if (b && h) {
112
+ const M = new Date(y(b)).getTime(), j = new Date(y(h)).getTime();
113
+ if (M <= j) {
114
+ if (l >= M && l <= j) return !1;
115
+ } else if (l >= M || l <= j) return !1;
116
+ }
117
+ }
118
+ return !0;
119
+ }, R = (a, e) => {
120
+ const t = A(new Date(a.year, a.month, a.day), "{dd}.{m}.{Y}");
121
+ v.range === "range" ? F.value !== -1 ? (ne(), m.value = e, i.value[e].class[1] = "active") : m.value !== -1 ? (F.value = e, se(m.value, F.value, t)) : (m.value = e, i.value[e].class[1] = "active") : (m.value !== -1 && (i.value[m.value].class[1] = ""), m.value = e, i.value[e].class[1] = "active", L("input", { dateStart: t, count: 1 }));
122
+ }, ne = () => {
123
+ i.value.forEach((a) => a.class[1] = ""), m.value = -1, F.value = -1;
124
+ }, se = (a, e, t) => {
125
+ let l = A(new Date(i.value[a].year, i.value[a].month, i.value[a].day), "{dd}.{m}.{Y}");
126
+ if (e >= a) {
127
+ for (let g = a + 1; g < e; g++)
128
+ i.value[g].class[1] = "select";
129
+ L("input", { dateStart: l, dateEnd: t, count: Q(a, e) });
130
+ } else {
131
+ for (let g = e + 1; g < a; g++)
132
+ i.value[g].class[1] = "select";
133
+ L("input", { dateStart: t, dateEnd: l, count: Q(e, a) });
134
+ }
135
+ i.value[e].class[1] = "active";
136
+ }, Q = (a, e) => {
137
+ var b;
138
+ let t = Math.abs(a - e) + 1, [l, g] = [Math.min(a, e), Math.max(a, e)];
139
+ for (let h = l; h <= g; h++)
140
+ ((b = i.value[h]) == null ? void 0 : b.class[0]) === "holiday" && t--;
141
+ return t;
142
+ }, p = (a, e) => {
143
+ P(a, e) && (C.value = new Date(a, e, 1), o.value = C.value.getFullYear(), n.value = C.value.getMonth(), O.value = new Date(a, e + 1, 1).getMonth(), (v.range === "year" || v.range === "decades") && d.value === 0 ? R({ year: a, month: e, day: 1 }, 8) : J());
144
+ };
145
+ if (J(), le(), (Z = v.data) != null && Z.startDate && (m.value = i.value.findIndex((a) => a.day === C.value.getDate() && a.month === n.value && a.year === o.value), m.value !== -1 && (i.value[m.value].class[1] = "active")), (_ = v.data) != null && _.endDate && v.range === "range" && (F.value = i.value.findIndex((a) => a.day === z.value.getDate() && a.month === x.value && a.year === q.value), F.value !== -1)) {
146
+ i.value[F.value].class[1] = "active";
147
+ for (let a = m.value + 1; a < F.value; a++)
148
+ i.value[a].class[1] = "select";
149
+ }
150
+ return (a, e) => (r(), u("div", oe, [
151
+ s("div", null, [
152
+ v.range === "decades" || d.value === 3 ? (r(), u("p", ue, [
153
+ s("span", null, [
154
+ s("button", {
155
+ onClick: e[0] || (e[0] = c((t) => {
156
+ S.value -= 10, p(o.value, n.value);
157
+ }, ["prevent"]))
158
+ }, [
159
+ w(a.$slots, "double-arrow", {}, () => [
160
+ e[16] || (e[16] = k("«"))
161
+ ])
162
+ ])
163
+ ]),
164
+ s("span", re, D(I.value[0]) + " - " + D(I.value[11]), 1),
165
+ s("span", null, [
166
+ s("button", {
167
+ class: "sw-revers",
168
+ onClick: e[1] || (e[1] = c((t) => {
169
+ S.value += 10, p(o.value, n.value);
170
+ }, ["prevent"]))
171
+ }, [
172
+ w(a.$slots, "double-arrow", {}, () => [
173
+ e[17] || (e[17] = k("«"))
174
+ ])
175
+ ])
176
+ ])
177
+ ])) : (r(), u("p", ve, [
178
+ s("span", null, [
179
+ s("button", {
180
+ onClick: e[2] || (e[2] = c((t) => p(o.value - 1, n.value), ["prevent"]))
181
+ }, [
182
+ w(a.$slots, "double-arrow", {}, () => [
183
+ e[18] || (e[18] = k("«"))
184
+ ])
185
+ ]),
186
+ s("button", {
187
+ onClick: e[3] || (e[3] = c((t) => {
188
+ d.value = 0, p(o.value, n.value - 1);
189
+ }, ["prevent"]))
190
+ }, [
191
+ w(a.$slots, "arrow", {}, () => [
192
+ e[19] || (e[19] = k("‹"))
193
+ ])
194
+ ])
195
+ ]),
196
+ s("span", ie, [
197
+ s("button", {
198
+ onClick: e[4] || (e[4] = c((t) => d.value = 3, ["prevent"]))
199
+ }, D(o.value), 1),
200
+ s("button", {
201
+ onClick: e[5] || (e[5] = c((t) => d.value = 1, ["prevent"]))
202
+ }, D(T(A)(C.value.setMonth(n.value), "{F}")), 1)
203
+ ]),
204
+ s("span", null, [
205
+ s("button", {
206
+ class: "sw-revers",
207
+ onClick: e[6] || (e[6] = c((t) => {
208
+ d.value = 0, p(o.value, n.value + 1);
209
+ }, ["prevent"]))
210
+ }, [
211
+ w(a.$slots, "arrow", {}, () => [
212
+ e[20] || (e[20] = k("‹"))
213
+ ])
214
+ ]),
215
+ s("button", {
216
+ class: "sw-revers",
217
+ onClick: e[7] || (e[7] = c((t) => p(o.value + 1, n.value), ["prevent"]))
218
+ }, [
219
+ w(a.$slots, "double-arrow", {}, () => [
220
+ e[21] || (e[21] = k("«"))
221
+ ])
222
+ ])
223
+ ])
224
+ ])),
225
+ v.range === "year" || d.value === 1 || d.value === 3 ? V("", !0) : (r(), u("div", de, [
226
+ (r(), u($, null, Y(7, (t, l) => s("button", {
227
+ key: l,
228
+ class: "disabled"
229
+ }, D(T(A)(new Date(1970, 1, t + T(E)), "{D}")), 1)), 64))
230
+ ])),
231
+ v.range === "year" || d.value === 1 ? (r(), u("div", ce, [
232
+ (r(!0), u($, null, Y(H.value, (t, l) => (r(), u("button", {
233
+ key: l,
234
+ onClick: c((g) => {
235
+ d.value = 0, p(o.value, l);
236
+ }, ["prevent"]),
237
+ class: N(l === n.value ? "active" : "")
238
+ }, D(t), 11, ge))), 128))
239
+ ])) : v.range === "decades" || d.value === 3 ? (r(), u("div", pe, [
240
+ (r(!0), u($, null, Y(I.value, (t, l) => (r(), u("button", {
241
+ key: l,
242
+ onClick: c((g) => {
243
+ d.value = 0, p(t, n.value);
244
+ }, ["prevent"]),
245
+ class: N(S.value + l - 1 === o.value ? "active" : "")
246
+ }, D(t), 11, De))), 128))
247
+ ])) : (r(), u("div", fe, [
248
+ (r(!0), u($, null, Y(i.value, (t, l) => (r(), u($, { key: l }, [
249
+ l < B.value + (7 - new Date(o.value, n.value + 1, 1).getDay() + T(E)) % 7 ? (r(), u("button", {
250
+ key: 0,
251
+ class: N(t.month === n.value && P(t.year, t.month, t.day) ? t.class : "disabled"),
252
+ onClick: c(() => {
253
+ t.month === n.value && R(t, l);
254
+ }, ["prevent"])
255
+ }, D(t.day), 11, me)) : V("", !0)
256
+ ], 64))), 128))
257
+ ]))
258
+ ]),
259
+ v.range === "range" ? (r(), u("div", we, [
260
+ v.range === "decades" || d.value === 4 ? (r(), u("p", ke, [
261
+ s("span", null, [
262
+ s("button", {
263
+ onClick: e[8] || (e[8] = c((t) => {
264
+ S.value -= 10, p(o.value, n.value);
265
+ }, ["prevent"]))
266
+ }, [
267
+ w(a.$slots, "double-arrow", {}, () => [
268
+ e[22] || (e[22] = k("«"))
269
+ ])
270
+ ])
271
+ ]),
272
+ s("span", he, D(I.value[0]) + " - " + D(I.value[11]), 1),
273
+ s("span", null, [
274
+ s("button", {
275
+ class: "sw-revers",
276
+ onClick: e[9] || (e[9] = c((t) => {
277
+ S.value += 10, p(o.value, n.value);
278
+ }, ["prevent"]))
279
+ }, [
280
+ w(a.$slots, "double-arrow", {}, () => [
281
+ e[23] || (e[23] = k("«"))
282
+ ])
283
+ ])
284
+ ])
285
+ ])) : (r(), u("p", ye, [
286
+ s("span", null, [
287
+ s("button", {
288
+ onClick: e[10] || (e[10] = c((t) => p(o.value - 1, n.value), ["prevent"]))
289
+ }, [
290
+ w(a.$slots, "double-arrow", {}, () => [
291
+ e[24] || (e[24] = k("«"))
292
+ ])
293
+ ]),
294
+ s("button", {
295
+ onClick: e[11] || (e[11] = c((t) => {
296
+ d.value = 0, p(o.value, n.value - 1);
297
+ }, ["prevent"]))
298
+ }, [
299
+ w(a.$slots, "arrow", {}, () => [
300
+ e[25] || (e[25] = k("‹"))
301
+ ])
302
+ ])
303
+ ]),
304
+ s("span", be, [
305
+ s("button", {
306
+ onClick: e[12] || (e[12] = c((t) => d.value = 4, ["prevent"]))
307
+ }, D(new Date(o.value, n.value + 1).getFullYear()), 1),
308
+ s("button", {
309
+ onClick: e[13] || (e[13] = c((t) => d.value = 2, ["prevent"]))
310
+ }, D(T(A)(C.value.setMonth(n.value + 1), "{F}")), 1)
311
+ ]),
312
+ s("span", null, [
313
+ s("button", {
314
+ class: "sw-revers",
315
+ onClick: e[14] || (e[14] = c((t) => {
316
+ d.value = 0, p(o.value, n.value + 1);
317
+ }, ["prevent"]))
318
+ }, [
319
+ w(a.$slots, "arrow", {}, () => [
320
+ e[26] || (e[26] = k("‹"))
321
+ ])
322
+ ]),
323
+ s("button", {
324
+ class: "sw-revers",
325
+ onClick: e[15] || (e[15] = c((t) => p(o.value + 1, n.value), ["prevent"]))
326
+ }, [
327
+ w(a.$slots, "double-arrow", {}, () => [
328
+ e[27] || (e[27] = k("«"))
329
+ ])
330
+ ])
331
+ ])
332
+ ])),
333
+ d.value === 2 || d.value === 4 ? V("", !0) : (r(), u("div", $e, [
334
+ (r(), u($, null, Y(7, (t, l) => s("button", {
335
+ key: l,
336
+ class: "disabled"
337
+ }, D(T(A)(new Date(1970, 1, t + T(E)), "{D}")), 1)), 64))
338
+ ])),
339
+ d.value === 2 ? (r(), u("div", Ce, [
340
+ (r(!0), u($, null, Y(H.value, (t, l) => (r(), u("button", {
341
+ key: l,
342
+ onClick: c((g) => {
343
+ d.value = 0, p(o.value, l - 1);
344
+ }, ["prevent"]),
345
+ class: N(l === (n.value + 1) % 12 ? "active" : "")
346
+ }, D(t), 11, Me))), 128))
347
+ ])) : d.value === 4 ? (r(), u("div", Fe, [
348
+ (r(!0), u($, null, Y(I.value, (t, l) => (r(), u("button", {
349
+ key: l,
350
+ onClick: c((g) => {
351
+ d.value = 0, p(t, n.value);
352
+ }, ["prevent"]),
353
+ class: N(S.value + l - 1 === o.value ? "active" : "")
354
+ }, D(t), 11, Te))), 128))
355
+ ])) : (r(), u("div", Ye, [
356
+ (r(!0), u($, null, Y(i.value, (t, l) => (r(), u($, { key: l }, [
357
+ l >= B.value - (7 + new Date(o.value, n.value + 1, 1).getDay() - T(E)) % 7 ? (r(), u("button", {
358
+ key: 0,
359
+ class: N(t.month === O.value && P(t.year, t.month, t.day) ? t.class : "disabled"),
360
+ onClick: c(() => {
361
+ t.month === O.value && R(t, l);
362
+ }, ["prevent"])
363
+ }, D(t.day), 11, Se)) : V("", !0)
364
+ ], 64))), 128))
365
+ ]))
366
+ ])) : V("", !0)
367
+ ]));
368
+ }
369
+ };
370
+ export {
371
+ je as default
372
+ };
@@ -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-UGcV1AnF.js";
2
+ import { S } from "./index-Cs1U4S9r.js";
3
3
  const O = ["for"], U = {
4
4
  key: 0,
5
5
  title: "Это поле обязательно для заполнения."
@@ -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-BicZIoq3.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-I55ur24V.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-FvG5tyby.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-Be3-FdY5.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(j,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(j=typeof globalThis<"u"?globalThis:j||self,e(j["component-sw"]={},j.vue))})(this,function(j,e){"use strict";function te(r){return/^(https?:|mailto:|tel:)/.test(r)}function P(r,a){if(arguments.length===0||!r)return null;const t=a||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof r=="object"?l=r:(typeof r=="string"&&(/^[0-9]+$/.test(r)?r=parseInt(r):r=r.replace(new RegExp(/-/gm),"/")),typeof r=="number"&&r.toString().length===10&&(r=r*1e3),l=new Date(r));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 le=(r,a)=>{const t=r.__vccOpts||r;for(const[l,n]of a)t[l]=n;return t},oe={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return te(this.iconClass)}}},ne=["href"];function ae(r,a,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"},r.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},r.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ne)],16))}const A=le(oe,[["render",ae]]),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:r=>["success","warning","error","info"].includes(r)}},emits:["closed"],setup(r,{emit:a}){const t=r,l=a,n=e.ref(!1);let d=null;const u=()=>{n.value=!0,M()},p=()=>{n.value=!1,l("closed")},c=()=>{d&&(clearTimeout(d),d=null)},g=()=>{M()},M=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const E=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,k)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(E.value),onMouseenter:c,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(A,{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(A,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},se=Object.freeze(Object.defineProperty({__proto__:null,default:U},Symbol.toStringTag,{value:"Module"}));let F=document.querySelector("div.sw-alert-wrapper");function R(r={}){F||(F=document.createElement("div"),F.className="sw-alert-wrapper",document.body.appendChild(F));const a=e.createApp({setup(){return()=>e.h(U,{...r,onClose:()=>{F.removeChild(a._container),a.unmount()}})}}),t=a.mount(document.createElement("div"));F.appendChild(t.$el)}const W=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>se),"./components/SwButton.vue":()=>Promise.resolve().then(()=>ie),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ce),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>ze),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>ve),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>je),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Oe),"./components/SwInput.vue":()=>Promise.resolve().then(()=>Ie),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Re),"./components/SwSection.vue":()=>Promise.resolve().then(()=>He),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Xe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Ze),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Qe),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>tt),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>nt),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>st)}),Y={};for(const r in W){const a=r.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,l)=>l.toUpperCase());Y[a]=e.defineAsyncComponent(()=>W[r]())}const re={install(r){Object.keys(Y).forEach(a=>{r.component(a,Y[a])}),r.config.globalProperties.$Alert=R,r.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(r){const a=r,t=()=>{if(a.href.length>0){const n=document.createElement("a");n.setAttribute("href",a.href),n.setAttribute("target","_blank"),n.click()}},l=e.computed(()=>{let n=["sw-button"];return a.size.length>0&&n.push("sw-"+a.size),a.type.length>0&&n.push("sw-"+a.type),a.round&&n.push("sw-round"),a.text&&n.push("sw-text"),a.link&&n.push("sw-link"),a.class.length>0&&n.push(a.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},ie=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(r){e.onMounted(()=>{l.value="0px"});const a=e.ref(null),t=r;e.watch(()=>t.visual,()=>n());const l=e.ref("0px"),n=()=>{a.value&&(l.value=t.visual?a.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{n(),a.value&&(d=new ResizeObserver(n),d.observe(a.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:a},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),de={class:"sw-data-picker"},pe={key:0,class:"month_year"},me={class:"text"},fe={key:1,class:"month_year"},ue={class:"text"},ge={key:2,class:"week"},he={key:3,class:"year"},ye=["onClick"],ke={key:4,class:"year"},we=["onClick"],Se={key:5,class:"month"},_e=["onClick"],be={key:0},Be={class:"month_year"},Ee={class:"text"},$e={key:0,class:"week"},De={key:1,class:"year"},Me=["onClick"],Ce={key:2,class:"year"},Te=["onClick"],Ve={key:3,class:"month"},Ne=["onClick"],ze=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(r,{emit:a}){var Q,Z,K,ee;const t=r,l=a,n=e.ref(5),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()),M=e.ref(new Date().getMonth()),E=e.ref(new Date(p.value,c.value+1,1).getMonth()),m=e.ref([]),k=e.ref(0),h=e.ref(-1),w=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,o)=>{const s=new Date(2024,o);return new Intl.DateTimeFormat(S.value,{month:"long"}).format(s)})),z=e.ref(Math.floor(p.value/10)*10),T=e.computed(()=>Array.from({length:12},(i,o)=>z.value+o-1)),b=i=>{let o=i.split(i.match(/\D.*?\D?/));return o[0].length>2?o.join("-")+"T00:00:01":o.reverse().join("-")+"T00:00:01"};(Q=t.data)!=null&&Q.startDate&&(d.value=new Date(b(t.data.startDate)),p.value=d.value.getFullYear(),c.value=d.value.getMonth()),(Z=t.data)!=null&&Z.endDate&&t.range==="range"&&(u.value=new Date(b(t.data.endDate)),g.value=u.value.getFullYear(),M.value=u.value.getMonth());const V=()=>{m.value=[],k.value=0;const i=new Date(p.value,c.value,0);for(let s=i.getDate()-i.getDay()+y;s<=i.getDate();s++)i.getDay()!==6+y&&(m.value.push({day:s,month:i.getMonth(),year:i.getFullYear(),class:[]}),k.value++);const o=new Date(p.value,c.value+1,0).getDate();for(let s=1;s<=o;s++)m.value.push({day:s,month:c.value,year:p.value,class:[]}),k.value++;if(t.range==="range"){const s=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:s.getMonth(),year:s.getFullYear(),class:[]})}$()},$=()=>{var o;if(!((o=t.data)!=null&&o.holiday))return;const i=(s,f)=>{s.forEach(B=>{const[v,N,O]=B.split("-").map(Number),L=m.value.findIndex(q=>q.year===v&&q.month+1===N&&q.day===O);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")},D=()=>{if(!t.limitation||t.limitation.length<2)return!1;const i=[...t.limitation].sort((o,s)=>new Date(b(o.startDate)).getTime()-new Date(b(s.startDate)).getTime());for(let o=1;o<i.length;o++){const s=new Date(b(i[o-1].endDate));if(new Date(b(i[o].startDate))<=s)return console.warn("Warning: Диапазоны пересекаются:",i[o-1],i[o]),!0}return!1},x=(i,o,s)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(i,o,s).getTime();for(let B of t.limitation){const{startDate:v,endDate:N}=B;if(!v&&N){const O=new Date(b(N)).getTime();if(f<=O)return!1}if(v&&!N){const O=new Date(b(v)).getTime();if(f>=O)return!1}if(v&&N){const O=new Date(b(v)).getTime(),L=new Date(b(N)).getTime();if(O<=L){if(f>=O&&f<=L)return!1}else if(f>=O||f<=L)return!1}}return!0},I=(i,o)=>{const s=P(new Date(i.year,i.month,i.day),"{dd}.{m}.{Y}");t.range==="range"?w.value!==-1?(H(),h.value=o,m.value[o].class[1]="active"):h.value!==-1?(w.value=o,rt(h.value,w.value,s)):(h.value=o,m.value[o].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=o,m.value[o].class[1]="active",l("input",{dateStart:s,count:1}))},H=()=>{m.value.forEach(i=>i.class[1]=""),h.value=-1,w.value=-1},rt=(i,o,s)=>{let f=P(new Date(m.value[i].year,m.value[i].month,m.value[i].day),"{dd}.{m}.{Y}");if(o>=i){for(let B=i+1;B<o;B++)m.value[B].class[1]="select";l("input",{dateStart:f,dateEnd:s,count:J(i,o)})}else{for(let B=o+1;B<i;B++)m.value[B].class[1]="select";l("input",{dateStart:s,dateEnd:f,count:J(o,i)})}m.value[o].class[1]="active"},J=(i,o)=>{var v;let s=Math.abs(i-o)+1,[f,B]=[Math.min(i,o),Math.max(i,o)];for(let N=f;N<=B;N++)((v=m.value[N])==null?void 0:v.class[0])==="holiday"&&s--;return s},C=(i,o)=>{x(i,o)&&(d.value=new Date(i,o,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),E.value=new Date(i,o+1,1).getMonth(),(t.range==="year"||t.range==="decades")&&n.value===0?I({year:i,month:o,day:1},8):V())};if(V(),D(),(K=t.data)!=null&&K.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")),(ee=t.data)!=null&&ee.endDate&&t.range==="range"&&(w.value=m.value.findIndex(i=>i.day===u.value.getDate()&&i.month===M.value&&i.year===g.value),w.value!==-1)){m.value[w.value].class[1]="active";for(let i=h.value+1;i<w.value;i++)m.value[i].class[1]="select"}return(i,o)=>(e.openBlock(),e.createElementBlock("div",de,[e.createElementVNode("div",null,[t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[0]||(o[0]=e.withModifiers(s=>{z.value-=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[14]||(o[14]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",me,e.toDisplayString(T.value[0])+" - "+e.toDisplayString(T.value[11]),1),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:o[1]||(o[1]=e.withModifiers(s=>{z.value+=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[15]||(o[15]=e.createTextVNode("‹"))])])])])):(e.openBlock(),e.createElementBlock("p",fe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[2]||(o[2]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[16]||(o[16]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:o[3]||(o[3]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[17]||(o[17]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",ue,[e.createElementVNode("button",{onClick:o[4]||(o[4]=e.withModifiers(s=>n.value=3,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:o[5]||(o[5]=e.withModifiers(s=>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:o[6]||(o[6]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[18]||(o[18]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:o[7]||(o[7]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[19]||(o[19]=e.createTextVNode("«"))])])])])),t.range==="year"||n.value===1||n.value===3?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ge,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,s+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||n.value===1?(e.openBlock(),e.createElementBlock("div",he,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(s),11,ye))),128))])):t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("div",ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(T.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(s,c.value)},["prevent"]),class:e.normalizeClass(z.value+f-1===p.value?"active":"")},e.toDisplayString(s),11,we))),128))])):(e.openBlock(),e.createElementBlock("div",Se,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(s,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f<k.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(s.month===c.value&&x(s.year,s.month,s.day)?s.class:"disabled"),onClick:e.withModifiers(()=>{s.month===c.value&&I(s,f)},["prevent"])},e.toDisplayString(s.day),11,_e)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",be,[e.createElementVNode("p",Be,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[8]||(o[8]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[20]||(o[20]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:o[9]||(o[9]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[21]||(o[21]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",Ee,[e.createElementVNode("button",{onClick:o[10]||(o[10]=e.withModifiers(s=>n.value=4,["prevent"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:o[11]||(o[11]=e.withModifiers(s=>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:o[12]||(o[12]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[22]||(o[22]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:o[13]||(o[13]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[23]||(o[23]=e.createTextVNode("«"))])])])]),n.value===2||n.value===4?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",$e,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,s+e.unref(y)),"{D}")),1)),64))])),n.value===2?(e.openBlock(),e.createElementBlock("div",De,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(s),11,Me))),128))])):n.value===4?(e.openBlock(),e.createElementBlock("div",Ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(T.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(s,c.value)},["prevent"]),class:e.normalizeClass(z.value+f-1===p.value?"active":"")},e.toDisplayString(s),11,Te))),128))])):(e.openBlock(),e.createElementBlock("div",Ve,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(s,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f>=k.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(s.month===E.value&&x(s.year,s.month,s.day)?s.class:"disabled"),onClick:e.withModifiers(()=>{s.month===E.value&&I(s,f)},["prevent"])},e.toDisplayString(s.day),11,Ne)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),xe=["id"],ve=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(r,{expose:a}){const t=r,l=e.useModel(r,"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}),M=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&&M.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 z=window.innerWidth,T=window.innerHeight,b=d.value.offsetHeight,V=d.value.offsetWidth,$=_.left+_.width/2+y,D=_.top+_.height/2+S,x=_.height/2+8;const[I,H]=t.placement.split("-",2);switch(I){case"bottom":D=S+T-b-x-8<D?D-x-b:D+x;break;case"top":D=S+b+x+8>D?D+x:D-x-b;break;case"left":$=$-V-_.width/2-8,D=D-b/2;break;case"right":$=$+_.width/2+8,D=D-b/2;break}switch(H){case"left":$=y+z-8>$-_.width/2+V?$-_.width/2:$-V+_.width/2;break;case"right":$=8<$+_.width/2-V?$-V+_.width/2:$-_.width/2;break}$<0&&($=0),D<0&&(D=0),u.value={position:"absolute",top:`${D}px`,left:`${$}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const E=()=>{t.trigger==="click"&&(l.value=!l.value)},m=()=>{t.trigger==="hover"&&(l.value=!l.value)},k=()=>{t.trigger==="context"&&(l.value=!l.value)},h=()=>{l.value&&c.value++,c.value>99&&(c.value=1)};a({handleResize:h});const w=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",w):document.documentElement.addEventListener("click",w),window.onscrollend!==void 0?window.addEventListener("scrollend",h):window.addEventListener("scroll",h)}),e.onUnmounted(()=>{M.disconnect(),window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",w):document.documentElement.removeEventListener("click",w),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]=_=>E()),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(_=>k(),["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,xe)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),je=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(r){const a=r,t=e.computed(()=>{let l=["sw-dropdown-item"];return a.size.length>0&&l.push("sw-"+a.size),a.type.length>0&&l.push("sw-"+a.type),a.class.length>0&&l.push(a.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":r.iconBefore},null,8,["icon-class"]),e.renderSlot(l.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(r){const a=r,t=e.computed(()=>{let l=["sw-form-item"];return a.type.length>0&&l.push("sw-"+a.type),a.class.length>0&&l.push(a.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"})),Pe=["for"],Fe={key:0,title:"Это поле обязательно для заполнения."},Le=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus","readonly"],Ie=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(r,{emit:a}){var m;const t=e.useModel(r,"modelValue"),l=r,n=e.ref(null),d=a,u=k=>{d("focusInput"),k.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},p=k=>{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")},M=e.computed(()=>{let k=["sw-input"];return l.size.length>0&&k.push("sw-"+l.size),l.class.length>0&&k.push(l.class),k});e.watch(t,(k,h)=>{l.type==="phone"&&(t.value=E(k,h))});const E=(k,h)=>{if(/^\+[0-9]\s/.test(h)&&k.length===2||/^\+0\s/.test(k))return"";const w=k;if(typeof w>"u"||w.length===0)return w;const S="+0 (___) ___-__-__";let y=0;const _=S.replace(/\D/g,""),z=w.replace(/\D/g,"");let T=S.replace(/[_\d]/g,V=>y<z.length?z.charAt(y++)||_.charAt(y):V);y=T.indexOf("_"),y!==-1&&(y=y<5?3:y,T=T.slice(0,y));let b=S.slice(0,w.length).replace(/_+/g,V=>`\\d{1,${V.length}}`).replace(/[+()]/g,"\\$&");if(b=new RegExp(`^${b}$`),T=T.replace(/[-—]$|(\) )$/g,""),!b.test(w)||w.length<5)return T};return(k,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[l.before.length>0?(e.openBlock(),e.createBlock(A,{key:0,"icon-class":l.before,onClick:g},null,8,["icon-class"])):e.renderSlot(k.$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",Fe,"*")):e.createCommentVNode("",!0)],8,Pe)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":h[0]||(h[0]=w=>t.value=w),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,Le),[[e.vModelDynamic,t.value]]),l.after.length>0?(e.openBlock(),e.createBlock(A,{key:3,"icon-class":l.after,onClick:c},null,8,["icon-class"])):e.renderSlot(k.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),Ae=["open"],Ye={key:0},Re=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(r){const a=e.useModel(r,"modelValue"),t=r,l=e.ref(null),n=e.useSlots(),d=u=>{l.value&&!l.value.contains(u.target)&&(a.value=!1)};return e.watch(()=>a.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:a.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",Ye,[e.renderSlot(u.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(G,{link:"",type:"primary",onClick:p[0]||(p[0]=M=>a.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,Ae)}}}},Symbol.toStringTag,{value:"Module"})),He=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(r,{emit:a}){const t=r,l=a,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"})),qe={class:"popup"},Ue={class:"wrapper"},We={class:"scrollbar"},Ge=["onClick"],Xe=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(r){const a=e.ref({fullText:""}),t=e.ref(!1),l=e.ref([]),n=e.useModel(r,"modelValue"),d=r;e.watch(n.text,c=>{c.length>3&&(a.value.fullText=c)}),e.watch(a.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(a.value.fullText),axios.post(c,{query:a.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=>{a.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 M=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",qe,[e.createVNode(M,{size:d.size,modelValue:a.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=E=>a.value.fullText=E),placeholder:r.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ue,[e.createElementVNode("ul",We,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(E,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:k=>p(E)},e.toDisplayString(E.value),9,Ge))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Je={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(r){const a=r,t=e.computed(()=>{let n=["sw-skeleton-item"];return a.size.length>0&&n.push("sw-"+a.size),a.animate&&n.push("sw-animate"),a.class.length>0&&n.push(a.class),n}),l=e.computed(()=>({width:a.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(l.value)},[a.animate?(e.openBlock(),e.createElementBlock("div",Je)):e.createCommentVNode("",!0)],6))}},Qe=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"})),Ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(r){const a=r;return(t,l)=>a.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",a.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(X,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ke=["name","id"],et=["for","data-onlabel","data-offlabel"],tt=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(r){const a=e.useModel(r,"modelValue"),t=r,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=>a.value=u)},null,8,Ke),[[e.vModelCheckbox,a.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,et),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),lt={key:0},ot=["onClick"],nt=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(r,{emit:a}){e.ref(0);const t=e.ref([]),l=r,n=e.useModel(r,"modelValue"),d=a;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",lt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(M,E)=>(e.openBlock(),e.createElementBlock("span",{key:E,class:e.normalizeClass([{active:n.value===E}]),onClick:m=>{n.value=E,d("tab-click",E)}},e.toDisplayString(M.label||M.title),11,ot))),128))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),at={key:0,class:"tab-content"},st=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(r){const a=r,t=e.inject("registerTab"),l=e.inject("unregisterTab");e.onMounted(()=>{t({title:a.title,label:a.label})}),e.onUnmounted(()=>{l({title:a.title,label:a.label})});const n=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===a.title)),p=e.computed(()=>n.value===u.value);return(c,g)=>p.value?(e.openBlock(),e.createElementBlock("div",at,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));j.Alert=R,j.Library=re,j.components=Y,Object.defineProperty(j,Symbol.toStringTag,{value:"Module"})});
1
+ (function(j,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(j=typeof globalThis<"u"?globalThis:j||self,e(j["component-sw"]={},j.vue))})(this,function(j,e){"use strict";function te(r){return/^(https?:|mailto:|tel:)/.test(r)}function P(r,a){if(arguments.length===0||!r)return null;const t=a||"{Y}-{m}-{d} {G}:{i}:{s}";let o;typeof r=="object"?o=r:(typeof r=="string"&&(/^[0-9]+$/.test(r)?r=parseInt(r):r=r.replace(new RegExp(/-/gm),"/")),typeof r=="number"&&r.toString().length===10&&(r=r*1e3),o=new Date(r));const n="ru-RU",d={Y:o.getFullYear(),m:(o.getMonth()+1).toString().padStart(2,"0"),d:o.getDate(),dd:o.getDate().toString().padStart(2,"0"),G:o.getHours(),H:o.getHours().toString().padStart(2,"0"),i:o.getMinutes().toString().padStart(2,"0"),s:o.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(n,{weekday:"short"}).format(o),F:new Intl.DateTimeFormat(n,{month:"long"}).format(o),M:new Intl.DateTimeFormat(n,{month:"short"}).format(o)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>d[p])}const le=(r,a)=>{const t=r.__vccOpts||r;for(const[o,n]of a)t[o]=n;return t},oe={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return te(this.iconClass)}}},ne=["href"];function ae(r,a,t,o,n,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},r.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},r.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ne)],16))}const A=le(oe,[["render",ae]]),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:r=>["success","warning","error","info"].includes(r)}},emits:["closed"],setup(r,{emit:a}){const t=r,o=a,n=e.ref(!1);let d=null;const u=()=>{n.value=!0,M()},p=()=>{n.value=!1,o("closed")},c=()=>{d&&(clearTimeout(d),d=null)},g=()=>{M()},M=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const E=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,k)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(E.value),onMouseenter:c,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(A,{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(A,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},se=Object.freeze(Object.defineProperty({__proto__:null,default:U},Symbol.toStringTag,{value:"Module"}));let F=document.querySelector("div.sw-alert-wrapper");function R(r={}){F||(F=document.createElement("div"),F.className="sw-alert-wrapper",document.body.appendChild(F));const a=e.createApp({setup(){return()=>e.h(U,{...r,onClose:()=>{F.removeChild(a._container),a.unmount()}})}}),t=a.mount(document.createElement("div"));F.appendChild(t.$el)}const W=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>se),"./components/SwButton.vue":()=>Promise.resolve().then(()=>ie),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ce),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>ve),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>Oe),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Pe),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwInput.vue":()=>Promise.resolve().then(()=>Ye),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>qe),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Ue),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Qe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>et),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Ke),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>ot),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>st),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>it)}),Y={};for(const r in W){const a=r.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,o)=>o.toUpperCase());Y[a]=e.defineAsyncComponent(()=>W[r]())}const re={install(r){Object.keys(Y).forEach(a=>{r.component(a,Y[a])}),r.config.globalProperties.$Alert=R,r.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(r){const a=r,t=()=>{if(a.href.length>0){const n=document.createElement("a");n.setAttribute("href",a.href),n.setAttribute("target","_blank"),n.click()}},o=e.computed(()=>{let n=["sw-button"];return a.size.length>0&&n.push("sw-"+a.size),a.type.length>0&&n.push("sw-"+a.type),a.round&&n.push("sw-round"),a.text&&n.push("sw-text"),a.link&&n.push("sw-link"),a.class.length>0&&n.push(a.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},ie=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(r){e.onMounted(()=>{o.value="0px"});const a=e.ref(null),t=r;e.watch(()=>t.visual,()=>n());const o=e.ref("0px"),n=()=>{a.value&&(o.value=t.visual?a.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{n(),a.value&&(d=new ResizeObserver(n),d.observe(a.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:o.value}),ref_key:"collapse",ref:a},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),de={class:"sw-data-picker"},pe={key:0,class:"month_year"},me={class:"text"},fe={key:1,class:"month_year"},ue={class:"text"},ge={key:2,class:"week"},he={key:3,class:"year"},ye=["onClick"],ke={key:4,class:"year"},we=["onClick"],Se={key:5,class:"month"},_e=["onClick"],be={key:0},Be={key:0,class:"month_year"},Ee={class:"text"},$e={key:1,class:"month_year"},De={class:"text"},Me={key:2,class:"week"},Ce={key:3,class:"year"},Ve=["onClick"],Te={key:4,class:"year"},Ne=["onClick"],ze={key:5,class:"month"},xe=["onClick"],ve=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(r,{emit:a}){var Q,Z,K,ee;const t=r,o=a,n=e.ref(5),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()),M=e.ref(new Date().getMonth()),E=e.ref(new Date(p.value,c.value+1,1).getMonth()),m=e.ref([]),k=e.ref(0),h=e.ref(-1),w=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,l)=>{const s=new Date(2024,l);return new Intl.DateTimeFormat(S.value,{month:"long"}).format(s)})),T=e.ref(Math.floor(p.value/10)*10),V=e.computed(()=>Array.from({length:12},(i,l)=>T.value+l-1)),b=i=>{let l=i.split(i.match(/\D.*?\D?/));return l[0].length>2?l.join("-")+"T00:00:01":l.reverse().join("-")+"T00:00:01"};(Q=t.data)!=null&&Q.startDate&&(d.value=new Date(b(t.data.startDate)),p.value=d.value.getFullYear(),c.value=d.value.getMonth()),(Z=t.data)!=null&&Z.endDate&&t.range==="range"&&(u.value=new Date(b(t.data.endDate)),g.value=u.value.getFullYear(),M.value=u.value.getMonth());const N=()=>{m.value=[],k.value=0;const i=new Date(p.value,c.value,0);for(let s=i.getDate()-i.getDay()+y;s<=i.getDate();s++)i.getDay()!==6+y&&(m.value.push({day:s,month:i.getMonth(),year:i.getFullYear(),class:[]}),k.value++);const l=new Date(p.value,c.value+1,0).getDate();for(let s=1;s<=l;s++)m.value.push({day:s,month:c.value,year:p.value,class:[]}),k.value++;if(t.range==="range"){const s=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:s.getMonth(),year:s.getFullYear(),class:[]})}$()},$=()=>{var l;if(!((l=t.data)!=null&&l.holiday))return;const i=(s,f)=>{s.forEach(B=>{const[v,z,O]=B.split("-").map(Number),L=m.value.findIndex(q=>q.year===v&&q.month+1===z&&q.day===O);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")},D=()=>{if(!t.limitation||t.limitation.length<2)return!1;const i=[...t.limitation].sort((l,s)=>new Date(b(l.startDate)).getTime()-new Date(b(s.startDate)).getTime());for(let l=1;l<i.length;l++){const s=new Date(b(i[l-1].endDate));if(new Date(b(i[l].startDate))<=s)return console.warn("Warning: Диапазоны пересекаются:",i[l-1],i[l]),!0}return!1},x=(i,l,s)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(i,l,s).getTime();for(let B of t.limitation){const{startDate:v,endDate:z}=B;if(!v&&z){const O=new Date(b(z)).getTime();if(f<=O)return!1}if(v&&!z){const O=new Date(b(v)).getTime();if(f>=O)return!1}if(v&&z){const O=new Date(b(v)).getTime(),L=new Date(b(z)).getTime();if(O<=L){if(f>=O&&f<=L)return!1}else if(f>=O||f<=L)return!1}}return!0},I=(i,l)=>{const s=P(new Date(i.year,i.month,i.day),"{dd}.{m}.{Y}");t.range==="range"?w.value!==-1?(H(),h.value=l,m.value[l].class[1]="active"):h.value!==-1?(w.value=l,ct(h.value,w.value,s)):(h.value=l,m.value[l].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=l,m.value[l].class[1]="active",o("input",{dateStart:s,count:1}))},H=()=>{m.value.forEach(i=>i.class[1]=""),h.value=-1,w.value=-1},ct=(i,l,s)=>{let f=P(new Date(m.value[i].year,m.value[i].month,m.value[i].day),"{dd}.{m}.{Y}");if(l>=i){for(let B=i+1;B<l;B++)m.value[B].class[1]="select";o("input",{dateStart:f,dateEnd:s,count:J(i,l)})}else{for(let B=l+1;B<i;B++)m.value[B].class[1]="select";o("input",{dateStart:s,dateEnd:f,count:J(l,i)})}m.value[l].class[1]="active"},J=(i,l)=>{var v;let s=Math.abs(i-l)+1,[f,B]=[Math.min(i,l),Math.max(i,l)];for(let z=f;z<=B;z++)((v=m.value[z])==null?void 0:v.class[0])==="holiday"&&s--;return s},C=(i,l)=>{x(i,l)&&(d.value=new Date(i,l,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),E.value=new Date(i,l+1,1).getMonth(),(t.range==="year"||t.range==="decades")&&n.value===0?I({year:i,month:l,day:1},8):N())};if(N(),D(),(K=t.data)!=null&&K.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")),(ee=t.data)!=null&&ee.endDate&&t.range==="range"&&(w.value=m.value.findIndex(i=>i.day===u.value.getDate()&&i.month===M.value&&i.year===g.value),w.value!==-1)){m.value[w.value].class[1]="active";for(let i=h.value+1;i<w.value;i++)m.value[i].class[1]="select"}return(i,l)=>(e.openBlock(),e.createElementBlock("div",de,[e.createElementVNode("div",null,[t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:l[0]||(l[0]=e.withModifiers(s=>{T.value-=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[16]||(l[16]=e.createTextVNode("«"))])])]),e.createElementVNode("span",me,e.toDisplayString(V.value[0])+" - "+e.toDisplayString(V.value[11]),1),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:l[1]||(l[1]=e.withModifiers(s=>{T.value+=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[17]||(l[17]=e.createTextVNode("«"))])])])])):(e.openBlock(),e.createElementBlock("p",fe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:l[2]||(l[2]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[18]||(l[18]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:l[3]||(l[3]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[l[19]||(l[19]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",ue,[e.createElementVNode("button",{onClick:l[4]||(l[4]=e.withModifiers(s=>n.value=3,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:l[5]||(l[5]=e.withModifiers(s=>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:l[6]||(l[6]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[l[20]||(l[20]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:l[7]||(l[7]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[21]||(l[21]=e.createTextVNode("«"))])])])])),t.range==="year"||n.value===1||n.value===3?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ge,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,s+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||n.value===1?(e.openBlock(),e.createElementBlock("div",he,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(s),11,ye))),128))])):t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("div",ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(s,c.value)},["prevent"]),class:e.normalizeClass(T.value+f-1===p.value?"active":"")},e.toDisplayString(s),11,we))),128))])):(e.openBlock(),e.createElementBlock("div",Se,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(s,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f<k.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(s.month===c.value&&x(s.year,s.month,s.day)?s.class:"disabled"),onClick:e.withModifiers(()=>{s.month===c.value&&I(s,f)},["prevent"])},e.toDisplayString(s.day),11,_e)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",be,[t.range==="decades"||n.value===4?(e.openBlock(),e.createElementBlock("p",Be,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:l[8]||(l[8]=e.withModifiers(s=>{T.value-=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[22]||(l[22]=e.createTextVNode("«"))])])]),e.createElementVNode("span",Ee,e.toDisplayString(V.value[0])+" - "+e.toDisplayString(V.value[11]),1),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:l[9]||(l[9]=e.withModifiers(s=>{T.value+=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[23]||(l[23]=e.createTextVNode("«"))])])])])):(e.openBlock(),e.createElementBlock("p",$e,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:l[10]||(l[10]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[24]||(l[24]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:l[11]||(l[11]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[l[25]||(l[25]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",De,[e.createElementVNode("button",{onClick:l[12]||(l[12]=e.withModifiers(s=>n.value=4,["prevent"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:l[13]||(l[13]=e.withModifiers(s=>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:l[14]||(l[14]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[l[26]||(l[26]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:l[15]||(l[15]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[l[27]||(l[27]=e.createTextVNode("«"))])])])])),n.value===2||n.value===4?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Me,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(P)(new Date(1970,1,s+e.unref(y)),"{D}")),1)),64))])),n.value===2?(e.openBlock(),e.createElementBlock("div",Ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(s),11,Ve))),128))])):n.value===4?(e.openBlock(),e.createElementBlock("div",Te,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(s,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{n.value=0,C(s,c.value)},["prevent"]),class:e.normalizeClass(T.value+f-1===p.value?"active":"")},e.toDisplayString(s),11,Ne))),128))])):(e.openBlock(),e.createElementBlock("div",ze,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(s,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f>=k.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(s.month===E.value&&x(s.year,s.month,s.day)?s.class:"disabled"),onClick:e.withModifiers(()=>{s.month===E.value&&I(s,f)},["prevent"])},e.toDisplayString(s.day),11,xe)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),je=["id"],Oe=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(r,{expose:a}){const t=r,o=e.useModel(r,"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}),M=new ResizeObserver(S=>{o.value&&c.value++,c.value>99&&(c.value=1)});e.watchEffect(()=>{if(!o.value||!d.value||!n.value)return;c.value<2&&M.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 T=window.innerWidth,V=window.innerHeight,b=d.value.offsetHeight,N=d.value.offsetWidth,$=_.left+_.width/2+y,D=_.top+_.height/2+S,x=_.height/2+8;const[I,H]=t.placement.split("-",2);switch(I){case"bottom":D=S+V-b-x-8<D?D-x-b:D+x;break;case"top":D=S+b+x+8>D?D+x:D-x-b;break;case"left":$=$-N-_.width/2-8,D=D-b/2;break;case"right":$=$+_.width/2+8,D=D-b/2;break}switch(H){case"left":$=y+T-8>$-_.width/2+N?$-_.width/2:$-N+_.width/2;break;case"right":$=8<$+_.width/2-N?$-N+_.width/2:$-_.width/2;break}$<0&&($=0),D<0&&(D=0),u.value={position:"absolute",top:`${D}px`,left:`${$}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const E=()=>{t.trigger==="click"&&(o.value=!o.value)},m=()=>{t.trigger==="hover"&&(o.value=!o.value)},k=()=>{t.trigger==="context"&&(o.value=!o.value)},h=()=>{o.value&&c.value++,c.value>99&&(c.value=1)};a({handleResize:h});const w=S=>{!S.target.closest(`[id="${p}"]`)&&n.value&&!n.value.contains(S.target)&&(o.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",w):document.documentElement.addEventListener("click",w),window.onscrollend!==void 0?window.addEventListener("scrollend",h):window.addEventListener("scroll",h)}),e.onUnmounted(()=>{M.disconnect(),window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",w):document.documentElement.removeEventListener("click",w),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]=_=>E()),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(_=>k(),["stop"])),ref_key:"dropdownRef",ref:n},[e.renderSlot(S.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.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,je)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Pe=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(r){const a=r,t=e.computed(()=>{let o=["sw-dropdown-item"];return a.size.length>0&&o.push("sw-"+a.size),a.type.length>0&&o.push("sw-"+a.type),a.class.length>0&&o.push(a.class),o});return(o,n)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":r.iconBefore},null,8,["icon-class"]),e.renderSlot(o.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(r){const a=r,t=e.computed(()=>{let o=["sw-form-item"];return a.type.length>0&&o.push("sw-"+a.type),a.class.length>0&&o.push(a.class),o});return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Le=["for"],Ie={key:0,title:"Это поле обязательно для заполнения."},Ae=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus","readonly"],Ye=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(r,{emit:a}){var m;const t=e.useModel(r,"modelValue"),o=r,n=e.ref(null),d=a,u=k=>{d("focusInput"),k.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},p=k=>{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")},M=e.computed(()=>{let k=["sw-input"];return o.size.length>0&&k.push("sw-"+o.size),o.class.length>0&&k.push(o.class),k});e.watch(t,(k,h)=>{o.type==="phone"&&(t.value=E(k,h))});const E=(k,h)=>{if(/^\+[0-9]\s/.test(h)&&k.length===2||/^\+0\s/.test(k))return"";const w=k;if(typeof w>"u"||w.length===0)return w;const S="+0 (___) ___-__-__";let y=0;const _=S.replace(/\D/g,""),T=w.replace(/\D/g,"");let V=S.replace(/[_\d]/g,N=>y<T.length?T.charAt(y++)||_.charAt(y):N);y=V.indexOf("_"),y!==-1&&(y=y<5?3:y,V=V.slice(0,y));let b=S.slice(0,w.length).replace(/_+/g,N=>`\\d{1,${N.length}}`).replace(/[+()]/g,"\\$&");if(b=new RegExp(`^${b}$`),V=V.replace(/[-—]$|(\) )$/g,""),!b.test(w)||w.length<5)return V};return(k,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[o.before.length>0?(e.openBlock(),e.createBlock(A,{key:0,"icon-class":o.before,onClick:g},null,8,["icon-class"])):e.renderSlot(k.$slots,"prefix",{key:1}),o.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:o.name,ref_key:"lab",ref:n},[e.createTextVNode(e.toDisplayString(o.label),1),o.required?(e.openBlock(),e.createElementBlock("span",Ie,"*")):e.createCommentVNode("",!0)],8,Le)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":h[0]||(h[0]=w=>t.value=w),required:o.required,placeholder:o.required&&o.label.length===0?o.placeholder+"*":o.placeholder,type:o.type,id:o.name,name:o.name,size:o.inputSize,onFocus:u,onBlur:p,maxlength:o.maxlength,minlength:o.minlength,autofocus:o.autofocus,readonly:o.readonly},null,40,Ae),[[e.vModelDynamic,t.value]]),o.after.length>0?(e.openBlock(),e.createBlock(A,{key:3,"icon-class":o.after,onClick:c},null,8,["icon-class"])):e.renderSlot(k.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),Re=["open"],He={key:0},qe=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(r){const a=e.useModel(r,"modelValue"),t=r,o=e.ref(null),n=e.useSlots(),d=u=>{o.value&&!o.value.contains(u.target)&&(a.value=!1)};return e.watch(()=>a.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:a.value,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:o},[t.name.length>0||(g=e.unref(n))!=null&&g.header?(e.openBlock(),e.createElementBlock("header",He,[e.renderSlot(u.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(G,{link:"",type:"primary",onClick:p[0]||(p[0]=M=>a.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,Re)}}}},Symbol.toStringTag,{value:"Module"})),Ue=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(r,{emit:a}){const t=r,o=a,n=()=>{o("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"})),We={class:"popup"},Ge={class:"wrapper"},Xe={class:"scrollbar"},Je=["onClick"],Qe=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(r){const a=e.ref({fullText:""}),t=e.ref(!1),o=e.ref([]),n=e.useModel(r,"modelValue"),d=r;e.watch(n.text,c=>{c.length>3&&(a.value.fullText=c)}),e.watch(a.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(a.value.fullText),axios.post(c,{query:a.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(g=>{console.log(g.data.suggestions),o.value=g.data.suggestions,o.value.length===1&&p(o.value[0])}).catch(g=>{console.log(g)})},p=c=>{a.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 M=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",We,[e.createVNode(M,{size:d.size,modelValue:a.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=E=>a.value.fullText=E),placeholder:r.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ge,[e.createElementVNode("ul",Xe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:k=>p(E)},e.toDisplayString(E.value),9,Je))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Ze={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(r){const a=r,t=e.computed(()=>{let n=["sw-skeleton-item"];return a.size.length>0&&n.push("sw-"+a.size),a.animate&&n.push("sw-animate"),a.class.length>0&&n.push(a.class),n}),o=e.computed(()=>({width:a.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(o.value)},[a.animate?(e.openBlock(),e.createElementBlock("div",Ze)):e.createCommentVNode("",!0)],6))}},Ke=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"})),et=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(r){const a=r;return(t,o)=>a.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",a.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(X,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),tt=["name","id"],lt=["for","data-onlabel","data-offlabel"],ot=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(r){const a=e.useModel(r,"modelValue"),t=r,o=e.computed(()=>{let n=["sw-switch"];return t.size.length>0&&n.push("sw-"+t.size),t.checkbox&&n.push("sw-checkbox"),t.class.length>0&&n.push(t.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=u=>a.value=u)},null,8,tt),[[e.vModelCheckbox,a.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,lt),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),nt={key:0},at=["onClick"],st=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(r,{emit:a}){e.ref(0);const t=e.ref([]),o=r,n=e.useModel(r,"modelValue"),d=a;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 "+o.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",nt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(M,E)=>(e.openBlock(),e.createElementBlock("span",{key:E,class:e.normalizeClass([{active:n.value===E}]),onClick:m=>{n.value=E,d("tab-click",E)}},e.toDisplayString(M.label||M.title),11,at))),128))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),rt={key:0,class:"tab-content"},it=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(r){const a=r,t=e.inject("registerTab"),o=e.inject("unregisterTab");e.onMounted(()=>{t({title:a.title,label:a.label})}),e.onUnmounted(()=>{o({title:a.title,label:a.label})});const n=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===a.title)),p=e.computed(()=>n.value===u.value);return(c,g)=>p.value?(e.openBlock(),e.createElementBlock("div",rt,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));j.Alert=R,j.Library=re,j.components=Y,Object.defineProperty(j,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-UGcV1AnF.js";
2
+ import { A as s, L as t, c as e } from "./index-Cs1U4S9r.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.95",
3
+ "version": "0.6.1",
4
4
  "description": "Vue components of Component SW collection.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -1,341 +0,0 @@
1
- import { ref as f, computed as K, createElementBlock as u, openBlock as r, createElementVNode as v, createCommentVNode as B, withModifiers as g, renderSlot as y, createTextVNode as b, toDisplayString as m, unref as T, Fragment as C, renderList as Y, normalizeClass as I } from "vue";
2
- import { p as j } from "./index-UGcV1AnF.js";
3
- const oe = { class: "sw-data-picker" }, ue = {
4
- key: 0,
5
- class: "month_year"
6
- }, re = { class: "text" }, ve = {
7
- key: 1,
8
- class: "month_year"
9
- }, ie = { class: "text" }, de = {
10
- key: 2,
11
- class: "week"
12
- }, ce = {
13
- key: 3,
14
- class: "year"
15
- }, ge = ["onClick"], De = {
16
- key: 4,
17
- class: "year"
18
- }, fe = ["onClick"], me = {
19
- key: 5,
20
- class: "month"
21
- }, pe = ["onClick"], we = { key: 0 }, he = { class: "month_year" }, ke = { class: "text" }, ye = {
22
- key: 0,
23
- class: "week"
24
- }, be = {
25
- key: 1,
26
- class: "year"
27
- }, Ce = ["onClick"], $e = {
28
- key: 2,
29
- class: "year"
30
- }, Me = ["onClick"], Fe = {
31
- key: 3,
32
- class: "month"
33
- }, Te = ["onClick"], Ee = {
34
- __name: "SwDatePicker",
35
- props: {
36
- data: Object,
37
- limitation: {
38
- type: [Boolean, Array],
39
- default: () => !1
40
- },
41
- range: {
42
- type: String,
43
- default: "solid"
44
- }
45
- },
46
- emits: ["input"],
47
- setup(ee, { emit: te }) {
48
- var U, X, Z, _;
49
- const s = ee, L = te, d = f(5), $ = f(/* @__PURE__ */ new Date()), V = f(/* @__PURE__ */ new Date()), o = f((/* @__PURE__ */ new Date()).getFullYear()), n = f((/* @__PURE__ */ new Date()).getMonth()), W = f((/* @__PURE__ */ new Date()).getFullYear()), q = f((/* @__PURE__ */ new Date()).getMonth()), O = f(new Date(o.value, n.value + 1, 1).getMonth()), i = f([]), N = f(0), p = f(-1), F = f(-1), G = f(navigator.language || "ru"), S = /en|zh|ja|he/.test(G.value) ? 0 : 1, H = K(() => Array.from({ length: 12 }, (a, e) => {
50
- const t = new Date(2024, e);
51
- return new Intl.DateTimeFormat(G.value, { month: "long" }).format(t);
52
- })), A = f(Math.floor(o.value / 10) * 10), z = K(() => Array.from({ length: 12 }, (a, e) => A.value + e - 1)), h = (a) => {
53
- let e = a.split(a.match(/\D.*?\D?/));
54
- return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
55
- };
56
- (U = s.data) != null && U.startDate && ($.value = new Date(h(s.data.startDate)), o.value = $.value.getFullYear(), n.value = $.value.getMonth()), (X = s.data) != null && X.endDate && s.range === "range" && (V.value = new Date(h(s.data.endDate)), W.value = V.value.getFullYear(), q.value = V.value.getMonth());
57
- const J = () => {
58
- i.value = [], N.value = 0;
59
- const a = new Date(o.value, n.value, 0);
60
- for (let t = a.getDate() - a.getDay() + S; t <= a.getDate(); t++)
61
- a.getDay() !== 6 + S && (i.value.push({ day: t, month: a.getMonth(), year: a.getFullYear(), class: [] }), N.value++);
62
- const e = new Date(o.value, n.value + 1, 0).getDate();
63
- for (let t = 1; t <= e; t++)
64
- i.value.push({ day: t, month: n.value, year: o.value, class: [] }), N.value++;
65
- if (s.range === "range") {
66
- const t = new Date(o.value, n.value + 1, 1), l = new Date(o.value, n.value + 2, 0).getDate();
67
- for (let c = 1; c <= l; c++)
68
- i.value.push({ day: c, month: t.getMonth(), year: t.getFullYear(), class: [] });
69
- }
70
- ae();
71
- }, ae = () => {
72
- var e;
73
- if (!((e = s.data) != null && e.holiday)) return;
74
- const a = (t, l) => {
75
- t.forEach((c) => {
76
- const [k, w, M] = c.split("-").map(Number), E = i.value.findIndex((R) => R.year === k && R.month + 1 === w && R.day === M);
77
- E !== -1 && (i.value[E].class[0] = l);
78
- });
79
- };
80
- a(s.data.holiday.preholidays, "preholiday"), a(s.data.holiday.holidays, "weekend"), a(s.data.holiday.holiday, "holiday"), a(s.data.holiday.nowork, "nowork");
81
- }, le = () => {
82
- if (!s.limitation || s.limitation.length < 2) return !1;
83
- const a = [...s.limitation].sort(
84
- (e, t) => new Date(h(e.startDate)).getTime() - new Date(h(t.startDate)).getTime()
85
- );
86
- for (let e = 1; e < a.length; e++) {
87
- const t = new Date(h(a[e - 1].endDate));
88
- if (new Date(h(a[e].startDate)) <= t)
89
- return console.warn("Warning: Диапазоны пересекаются:", a[e - 1], a[e]), !0;
90
- }
91
- return !1;
92
- }, x = (a, e, t) => {
93
- if (!s.limitation || s.limitation.length === 0) return !0;
94
- const l = new Date(a, e, t).getTime();
95
- for (let c of s.limitation) {
96
- const { startDate: k, endDate: w } = c;
97
- if (!k && w) {
98
- const M = new Date(h(w)).getTime();
99
- if (l <= M) return !1;
100
- }
101
- if (k && !w) {
102
- const M = new Date(h(k)).getTime();
103
- if (l >= M) return !1;
104
- }
105
- if (k && w) {
106
- const M = new Date(h(k)).getTime(), E = new Date(h(w)).getTime();
107
- if (M <= E) {
108
- if (l >= M && l <= E) return !1;
109
- } else if (l >= M || l <= E) return !1;
110
- }
111
- }
112
- return !0;
113
- }, P = (a, e) => {
114
- const t = j(new Date(a.year, a.month, a.day), "{dd}.{m}.{Y}");
115
- s.range === "range" ? F.value !== -1 ? (ne(), p.value = e, i.value[e].class[1] = "active") : p.value !== -1 ? (F.value = e, se(p.value, F.value, t)) : (p.value = e, i.value[e].class[1] = "active") : (p.value !== -1 && (i.value[p.value].class[1] = ""), p.value = e, i.value[e].class[1] = "active", L("input", { dateStart: t, count: 1 }));
116
- }, ne = () => {
117
- i.value.forEach((a) => a.class[1] = ""), p.value = -1, F.value = -1;
118
- }, se = (a, e, t) => {
119
- let l = j(new Date(i.value[a].year, i.value[a].month, i.value[a].day), "{dd}.{m}.{Y}");
120
- if (e >= a) {
121
- for (let c = a + 1; c < e; c++)
122
- i.value[c].class[1] = "select";
123
- L("input", { dateStart: l, dateEnd: t, count: Q(a, e) });
124
- } else {
125
- for (let c = e + 1; c < a; c++)
126
- i.value[c].class[1] = "select";
127
- L("input", { dateStart: t, dateEnd: l, count: Q(e, a) });
128
- }
129
- i.value[e].class[1] = "active";
130
- }, Q = (a, e) => {
131
- var k;
132
- let t = Math.abs(a - e) + 1, [l, c] = [Math.min(a, e), Math.max(a, e)];
133
- for (let w = l; w <= c; w++)
134
- ((k = i.value[w]) == null ? void 0 : k.class[0]) === "holiday" && t--;
135
- return t;
136
- }, D = (a, e) => {
137
- x(a, e) && ($.value = new Date(a, e, 1), o.value = $.value.getFullYear(), n.value = $.value.getMonth(), O.value = new Date(a, e + 1, 1).getMonth(), (s.range === "year" || s.range === "decades") && d.value === 0 ? P({ year: a, month: e, day: 1 }, 8) : J());
138
- };
139
- if (J(), le(), (Z = s.data) != null && Z.startDate && (p.value = i.value.findIndex((a) => a.day === $.value.getDate() && a.month === n.value && a.year === o.value), p.value !== -1 && (i.value[p.value].class[1] = "active")), (_ = s.data) != null && _.endDate && s.range === "range" && (F.value = i.value.findIndex((a) => a.day === V.value.getDate() && a.month === q.value && a.year === W.value), F.value !== -1)) {
140
- i.value[F.value].class[1] = "active";
141
- for (let a = p.value + 1; a < F.value; a++)
142
- i.value[a].class[1] = "select";
143
- }
144
- return (a, e) => (r(), u("div", oe, [
145
- v("div", null, [
146
- s.range === "decades" || d.value === 3 ? (r(), u("p", ue, [
147
- v("span", null, [
148
- v("button", {
149
- onClick: e[0] || (e[0] = g((t) => {
150
- A.value -= 10, D(o.value, n.value);
151
- }, ["prevent"]))
152
- }, [
153
- y(a.$slots, "arrow", {}, () => [
154
- e[14] || (e[14] = b("‹"))
155
- ])
156
- ])
157
- ]),
158
- v("span", re, m(z.value[0]) + " - " + m(z.value[11]), 1),
159
- v("span", null, [
160
- v("button", {
161
- class: "sw-revers",
162
- onClick: e[1] || (e[1] = g((t) => {
163
- A.value += 10, D(o.value, n.value);
164
- }, ["prevent"]))
165
- }, [
166
- y(a.$slots, "arrow", {}, () => [
167
- e[15] || (e[15] = b("‹"))
168
- ])
169
- ])
170
- ])
171
- ])) : (r(), u("p", ve, [
172
- v("span", null, [
173
- v("button", {
174
- onClick: e[2] || (e[2] = g((t) => D(o.value - 1, n.value), ["prevent"]))
175
- }, [
176
- y(a.$slots, "double-arrow", {}, () => [
177
- e[16] || (e[16] = b("«"))
178
- ])
179
- ]),
180
- v("button", {
181
- onClick: e[3] || (e[3] = g((t) => {
182
- d.value = 0, D(o.value, n.value - 1);
183
- }, ["prevent"]))
184
- }, [
185
- y(a.$slots, "arrow", {}, () => [
186
- e[17] || (e[17] = b("‹"))
187
- ])
188
- ])
189
- ]),
190
- v("span", ie, [
191
- v("button", {
192
- onClick: e[4] || (e[4] = g((t) => d.value = 3, ["prevent"]))
193
- }, m(o.value), 1),
194
- v("button", {
195
- onClick: e[5] || (e[5] = g((t) => d.value = 1, ["prevent"]))
196
- }, m(T(j)($.value.setMonth(n.value), "{F}")), 1)
197
- ]),
198
- v("span", null, [
199
- v("button", {
200
- class: "sw-revers",
201
- onClick: e[6] || (e[6] = g((t) => {
202
- d.value = 0, D(o.value, n.value + 1);
203
- }, ["prevent"]))
204
- }, [
205
- y(a.$slots, "arrow", {}, () => [
206
- e[18] || (e[18] = b("‹"))
207
- ])
208
- ]),
209
- v("button", {
210
- class: "sw-revers",
211
- onClick: e[7] || (e[7] = g((t) => D(o.value + 1, n.value), ["prevent"]))
212
- }, [
213
- y(a.$slots, "double-arrow", {}, () => [
214
- e[19] || (e[19] = b("«"))
215
- ])
216
- ])
217
- ])
218
- ])),
219
- s.range === "year" || d.value === 1 || d.value === 3 ? B("", !0) : (r(), u("div", de, [
220
- (r(), u(C, null, Y(7, (t, l) => v("button", {
221
- key: l,
222
- class: "disabled"
223
- }, m(T(j)(new Date(1970, 1, t + T(S)), "{D}")), 1)), 64))
224
- ])),
225
- s.range === "year" || d.value === 1 ? (r(), u("div", ce, [
226
- (r(!0), u(C, null, Y(H.value, (t, l) => (r(), u("button", {
227
- key: l,
228
- onClick: g((c) => {
229
- d.value = 0, D(o.value, l);
230
- }, ["prevent"]),
231
- class: I(l === n.value ? "active" : "")
232
- }, m(t), 11, ge))), 128))
233
- ])) : s.range === "decades" || d.value === 3 ? (r(), u("div", De, [
234
- (r(!0), u(C, null, Y(z.value, (t, l) => (r(), u("button", {
235
- key: l,
236
- onClick: g((c) => {
237
- d.value = 0, D(t, n.value);
238
- }, ["prevent"]),
239
- class: I(A.value + l - 1 === o.value ? "active" : "")
240
- }, m(t), 11, fe))), 128))
241
- ])) : (r(), u("div", me, [
242
- (r(!0), u(C, null, Y(i.value, (t, l) => (r(), u(C, { key: l }, [
243
- l < N.value + (7 - new Date(o.value, n.value + 1, 1).getDay() + T(S)) % 7 ? (r(), u("button", {
244
- key: 0,
245
- class: I(t.month === n.value && x(t.year, t.month, t.day) ? t.class : "disabled"),
246
- onClick: g(() => {
247
- t.month === n.value && P(t, l);
248
- }, ["prevent"])
249
- }, m(t.day), 11, pe)) : B("", !0)
250
- ], 64))), 128))
251
- ]))
252
- ]),
253
- s.range === "range" ? (r(), u("div", we, [
254
- v("p", he, [
255
- v("span", null, [
256
- v("button", {
257
- onClick: e[8] || (e[8] = g((t) => D(o.value - 1, n.value), ["prevent"]))
258
- }, [
259
- y(a.$slots, "double-arrow", {}, () => [
260
- e[20] || (e[20] = b("«"))
261
- ])
262
- ]),
263
- v("button", {
264
- onClick: e[9] || (e[9] = g((t) => {
265
- d.value = 0, D(o.value, n.value - 1);
266
- }, ["prevent"]))
267
- }, [
268
- y(a.$slots, "arrow", {}, () => [
269
- e[21] || (e[21] = b("‹"))
270
- ])
271
- ])
272
- ]),
273
- v("span", ke, [
274
- v("button", {
275
- onClick: e[10] || (e[10] = g((t) => d.value = 4, ["prevent"]))
276
- }, m(new Date(o.value, n.value + 1).getFullYear()), 1),
277
- v("button", {
278
- onClick: e[11] || (e[11] = g((t) => d.value = 2, ["prevent"]))
279
- }, m(T(j)($.value.setMonth(n.value + 1), "{F}")), 1)
280
- ]),
281
- v("span", null, [
282
- v("button", {
283
- class: "sw-revers",
284
- onClick: e[12] || (e[12] = g((t) => {
285
- d.value = 0, D(o.value, n.value + 1);
286
- }, ["prevent"]))
287
- }, [
288
- y(a.$slots, "arrow", {}, () => [
289
- e[22] || (e[22] = b("‹"))
290
- ])
291
- ]),
292
- v("button", {
293
- class: "sw-revers",
294
- onClick: e[13] || (e[13] = g((t) => D(o.value + 1, n.value), ["prevent"]))
295
- }, [
296
- y(a.$slots, "double-arrow", {}, () => [
297
- e[23] || (e[23] = b("«"))
298
- ])
299
- ])
300
- ])
301
- ]),
302
- d.value === 2 || d.value === 4 ? B("", !0) : (r(), u("div", ye, [
303
- (r(), u(C, null, Y(7, (t, l) => v("button", {
304
- key: l,
305
- class: "disabled"
306
- }, m(T(j)(new Date(1970, 1, t + T(S)), "{D}")), 1)), 64))
307
- ])),
308
- d.value === 2 ? (r(), u("div", be, [
309
- (r(!0), u(C, null, Y(H.value, (t, l) => (r(), u("button", {
310
- key: l,
311
- onClick: g((c) => {
312
- d.value = 0, D(o.value, l - 1);
313
- }, ["prevent"]),
314
- class: I(l === (n.value + 1) % 12 ? "active" : "")
315
- }, m(t), 11, Ce))), 128))
316
- ])) : d.value === 4 ? (r(), u("div", $e, [
317
- (r(!0), u(C, null, Y(z.value, (t, l) => (r(), u("button", {
318
- key: l,
319
- onClick: g((c) => {
320
- d.value = 0, D(t, n.value);
321
- }, ["prevent"]),
322
- class: I(A.value + l - 1 === o.value ? "active" : "")
323
- }, m(t), 11, Me))), 128))
324
- ])) : (r(), u("div", Fe, [
325
- (r(!0), u(C, null, Y(i.value, (t, l) => (r(), u(C, { key: l }, [
326
- l >= N.value - (7 + new Date(o.value, n.value + 1, 1).getDay() - T(S)) % 7 ? (r(), u("button", {
327
- key: 0,
328
- class: I(t.month === O.value && x(t.year, t.month, t.day) ? t.class : "disabled"),
329
- onClick: g(() => {
330
- t.month === O.value && P(t, l);
331
- }, ["prevent"])
332
- }, m(t.day), 11, Te)) : B("", !0)
333
- ], 64))), 128))
334
- ]))
335
- ])) : B("", !0)
336
- ]));
337
- }
338
- };
339
- export {
340
- Ee as default
341
- };