@studio-west/component-sw 0.10.12 → 0.10.13
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 +5 -5
- package/dist/{SwDatePicker-zxPO6_Nq.js → SwDatePicker-03CHh838.js} +113 -113
- package/dist/{SwDropdownItem-BHXReZyZ.js → SwDropdownItem-D9Nm6baa.js} +1 -1
- package/dist/{SwGide-DGFGiol_.js → SwGide-BR7N6BBt.js} +1 -1
- package/dist/{SwInput-Bu5M3svO.js → SwInput-BMLQeDUm.js} +1 -1
- package/dist/{SwMessage-WSE3Fz3X.js → SwMessage-DfobTkbX.js} +1 -1
- package/dist/{SwSlider-BFwd51w-.js → SwSlider-EbWEfhMU.js} +1 -1
- package/dist/{index-Cw7hFsnh.js → index-C67_vMqe.js} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -197,11 +197,11 @@ Default - Контент для скрытия
|
|
|
197
197
|
|
|
198
198
|
### Свойства / Properties
|
|
199
199
|
|
|
200
|
-
| Имя | Тип | По умолчанию | Значения/Описание
|
|
201
|
-
|
|
202
|
-
| `data` | `Object` | `new Date()` | Начальные данные - диапазон ( при `'solid'` - используется только `'startDate'`) изначальных выбранных дат {endDate: '14-04-2025', startDate:'30-03-2025', holiday: { preholidays: ["2020-03-30"], holidays: ["2020-03-30"], holiday: ["2020-03-30"], nowork: ["2020-03-30"] }}, ограничение не более 2х месяцев. |
|
|
203
|
-
| `limitation` | `Boolean, Array` | `false` | Массив ограничений дат: [{endDate: '14-04-2025', startDate:'30-03-2025'}].
|
|
204
|
-
| `range` | `String` | `solid` | Тип календаря: `'decades'`,`'year'`,`'range'`, `'solid'`.
|
|
200
|
+
| Имя | Тип | По умолчанию | Значения/Описание |
|
|
201
|
+
|--------------|------------------|--------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
202
|
+
| `data` | `Object` | `new Date()` | Начальные данные - диапазон ( при `'solid'` - используется только `'startDate'`) изначальных выбранных дат {firstDate: '01-04-2025', endDate: '14-04-2025', startDate:'30-03-2025', holiday: { preholidays: ["2020-03-30"], holidays: ["2020-03-30"], holiday: ["2020-03-30"], nowork: ["2020-03-30"] }}, ограничение не более 2х месяцев. firstDate - выбор месяца календаря при отсутствии startDate |
|
|
203
|
+
| `limitation` | `Boolean, Array` | `false` | Массив ограничений дат: [{endDate: '14-04-2025', startDate:'30-03-2025'}]. |
|
|
204
|
+
| `range` | `String` | `solid` | Тип календаря: `'decades'`,`'year'`,`'range'`, `'solid'`. |
|
|
205
205
|
|
|
206
206
|
### События / Events
|
|
207
207
|
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { ref as
|
|
2
|
-
import { p as
|
|
1
|
+
import { ref as p, computed as Q, createElementBlock as r, openBlock as v, createElementVNode as o, createCommentVNode as j, withModifiers as g, renderSlot as w, createTextVNode as k, toDisplayString as f, unref as F, Fragment as $, renderList as Y, normalizeClass as A } from "vue";
|
|
2
|
+
import { p as y, a as B } from "./index-C67_vMqe.js";
|
|
3
3
|
const te = { class: "sw-data-picker" }, ae = {
|
|
4
4
|
key: 0,
|
|
5
5
|
class: "month_year"
|
|
6
6
|
}, le = { class: "text" }, ne = {
|
|
7
7
|
key: 1,
|
|
8
8
|
class: "month_year"
|
|
9
|
-
}, se = { class: "text" },
|
|
9
|
+
}, se = { class: "text" }, ue = {
|
|
10
10
|
key: 2,
|
|
11
11
|
class: "week"
|
|
12
|
-
},
|
|
12
|
+
}, oe = {
|
|
13
13
|
key: 3,
|
|
14
14
|
class: "year"
|
|
15
15
|
}, re = ["onClick"], ve = {
|
|
@@ -18,10 +18,10 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
18
18
|
}, ie = ["onClick"], de = {
|
|
19
19
|
key: 5,
|
|
20
20
|
class: "month"
|
|
21
|
-
},
|
|
21
|
+
}, ge = ["onClick"], ce = { key: 0 }, De = {
|
|
22
22
|
key: 0,
|
|
23
23
|
class: "month_year"
|
|
24
|
-
}, fe = { class: "text" },
|
|
24
|
+
}, fe = { class: "text" }, pe = {
|
|
25
25
|
key: 1,
|
|
26
26
|
class: "month_year"
|
|
27
27
|
}, me = { class: "text" }, we = {
|
|
@@ -36,7 +36,7 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
36
36
|
}, be = ["onClick"], $e = {
|
|
37
37
|
key: 5,
|
|
38
38
|
class: "month"
|
|
39
|
-
}, Ce = ["onClick"],
|
|
39
|
+
}, Ce = ["onClick"], Ye = {
|
|
40
40
|
__name: "SwDatePicker",
|
|
41
41
|
props: {
|
|
42
42
|
data: Object,
|
|
@@ -51,103 +51,103 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
51
51
|
},
|
|
52
52
|
emits: ["input"],
|
|
53
53
|
setup(U, { emit: X }) {
|
|
54
|
-
const
|
|
54
|
+
const n = U, L = X, d = p(5), C = p(/* @__PURE__ */ new Date()), z = p(/* @__PURE__ */ new Date()), u = p((/* @__PURE__ */ new Date()).getFullYear()), s = p((/* @__PURE__ */ new Date()).getMonth()), W = p((/* @__PURE__ */ new Date()).getFullYear()), q = p((/* @__PURE__ */ new Date()).getMonth()), O = p(new Date(u.value, s.value + 1, 1).getMonth()), i = p([]), V = p(0), m = p(-1), M = p(-1), x = p(navigator.language || "ru"), I = /en|zh|ja|he/.test(x.value) ? 0 : 1, G = Q(() => Array.from({ length: 12 }, (a, e) => {
|
|
55
55
|
const t = new Date(2024, e);
|
|
56
56
|
return new Intl.DateTimeFormat(x.value, { month: "long" }).format(t);
|
|
57
|
-
})),
|
|
58
|
-
|
|
57
|
+
})), S = p(Math.floor(u.value / 10) * 10), N = Q(() => Array.from({ length: 12 }, (a, e) => S.value + e - 1));
|
|
58
|
+
n.data?.startDate ? (C.value = new Date(y(n.data.startDate)), u.value = C.value.getFullYear(), s.value = C.value.getMonth()) : n.data?.firstDate && (u.value = new Date(y(n.data.firstDate)).getFullYear(), s.value = new Date(y(n.data.firstDate)).getMonth()), n.data?.endDate && n.range === "range" && (z.value = new Date(y(n.data.endDate)), W.value = z.value.getFullYear(), q.value = z.value.getMonth());
|
|
59
59
|
const H = () => {
|
|
60
60
|
i.value = [], V.value = 0;
|
|
61
|
-
const a = new Date(u.value,
|
|
61
|
+
const a = new Date(u.value, s.value, 0);
|
|
62
62
|
for (let t = a.getDate() - a.getDay() + I; t <= a.getDate(); t++)
|
|
63
63
|
a.getDay() !== 6 + I && (i.value.push({ day: t, month: a.getMonth(), year: a.getFullYear(), class: [] }), V.value++);
|
|
64
|
-
const e = new Date(u.value,
|
|
64
|
+
const e = new Date(u.value, s.value + 1, 0).getDate();
|
|
65
65
|
for (let t = 1; t <= e; t++)
|
|
66
|
-
i.value.push({ day: t, month:
|
|
67
|
-
if (
|
|
68
|
-
const t = new Date(u.value,
|
|
69
|
-
for (let
|
|
70
|
-
i.value.push({ day:
|
|
66
|
+
i.value.push({ day: t, month: s.value, year: u.value, class: [] }), V.value++;
|
|
67
|
+
if (n.range === "range") {
|
|
68
|
+
const t = new Date(u.value, s.value + 1, 1), l = new Date(u.value, s.value + 2, 0).getDate();
|
|
69
|
+
for (let c = 1; c <= l; c++)
|
|
70
|
+
i.value.push({ day: c, month: t.getMonth(), year: t.getFullYear(), class: [] });
|
|
71
71
|
}
|
|
72
72
|
Z();
|
|
73
73
|
}, Z = () => {
|
|
74
|
-
if (!
|
|
74
|
+
if (!n.data?.holiday) return;
|
|
75
75
|
const a = (e, t) => {
|
|
76
76
|
e.forEach((l) => {
|
|
77
|
-
const [
|
|
78
|
-
|
|
77
|
+
const [c, h, T] = l.split("-").map(Number), b = i.value.findIndex((E) => E.year === c && E.month + 1 === h && E.day === T);
|
|
78
|
+
b !== -1 && (i.value[b].class[0] = t);
|
|
79
79
|
});
|
|
80
80
|
};
|
|
81
|
-
a(
|
|
81
|
+
a(n.data.holiday.preholidays, "preholiday"), a(n.data.holiday.holidays, "weekend"), a(n.data.holiday.holiday, "holiday"), a(n.data.holiday.nowork, "nowork");
|
|
82
82
|
}, _ = () => {
|
|
83
|
-
if (!
|
|
84
|
-
const a = [...
|
|
85
|
-
(e, t) => new Date(
|
|
83
|
+
if (!n.limitation || n.limitation.length < 2) return !1;
|
|
84
|
+
const a = [...n.limitation].sort(
|
|
85
|
+
(e, t) => new Date(y(e.startDate)).getTime() - new Date(y(t.startDate)).getTime()
|
|
86
86
|
);
|
|
87
87
|
for (let e = 1; e < a.length; e++) {
|
|
88
|
-
const t = new Date(
|
|
89
|
-
if (new Date(
|
|
88
|
+
const t = new Date(y(a[e - 1].endDate));
|
|
89
|
+
if (new Date(y(a[e].startDate)) <= t)
|
|
90
90
|
return console.warn("Warning: Диапазоны пересекаются:", a[e - 1], a[e]), !0;
|
|
91
91
|
}
|
|
92
92
|
return !1;
|
|
93
93
|
}, P = (a, e, t) => {
|
|
94
|
-
if (!
|
|
94
|
+
if (!n.limitation || n.limitation.length === 0) return !0;
|
|
95
95
|
const l = new Date(a, e, t).getTime();
|
|
96
|
-
for (let
|
|
97
|
-
const { startDate:
|
|
98
|
-
if (!
|
|
99
|
-
const
|
|
100
|
-
if (l <=
|
|
96
|
+
for (let c of n.limitation) {
|
|
97
|
+
const { startDate: h, endDate: T } = c;
|
|
98
|
+
if (!h && T) {
|
|
99
|
+
const b = new Date(y(T)).getTime();
|
|
100
|
+
if (l <= b) return !1;
|
|
101
101
|
}
|
|
102
|
-
if (
|
|
103
|
-
const
|
|
104
|
-
if (l >=
|
|
102
|
+
if (h && !T) {
|
|
103
|
+
const b = new Date(y(h)).getTime();
|
|
104
|
+
if (l >= b) return !1;
|
|
105
105
|
}
|
|
106
|
-
if (
|
|
107
|
-
const
|
|
108
|
-
if (
|
|
109
|
-
if (l >=
|
|
110
|
-
} else if (l >=
|
|
106
|
+
if (h && T) {
|
|
107
|
+
const b = new Date(y(h)).getTime(), E = new Date(y(T)).getTime();
|
|
108
|
+
if (b <= E) {
|
|
109
|
+
if (l >= b && l <= E) return !1;
|
|
110
|
+
} else if (l >= b || l <= E) return !1;
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
return !0;
|
|
114
114
|
}, R = (a, e) => {
|
|
115
115
|
const t = B(new Date(a.year, a.month, a.day), "{dd}.{m}.{Y}");
|
|
116
|
-
|
|
116
|
+
n.range === "range" ? M.value !== -1 ? (K(), m.value = e, i.value[e].class[1] = "active") : m.value !== -1 ? (M.value = e, ee(m.value, M.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 }));
|
|
117
117
|
}, K = () => {
|
|
118
118
|
i.value.forEach((a) => a.class[1] = ""), m.value = -1, M.value = -1;
|
|
119
119
|
}, ee = (a, e, t) => {
|
|
120
120
|
let l = B(new Date(i.value[a].year, i.value[a].month, i.value[a].day), "{dd}.{m}.{Y}");
|
|
121
121
|
if (e >= a) {
|
|
122
|
-
for (let
|
|
123
|
-
i.value[
|
|
122
|
+
for (let c = a + 1; c < e; c++)
|
|
123
|
+
i.value[c].class[1] = "select";
|
|
124
124
|
L("input", { dateStart: l, dateEnd: t, count: J(a, e) });
|
|
125
125
|
} else {
|
|
126
|
-
for (let
|
|
127
|
-
i.value[
|
|
126
|
+
for (let c = e + 1; c < a; c++)
|
|
127
|
+
i.value[c].class[1] = "select";
|
|
128
128
|
L("input", { dateStart: t, dateEnd: l, count: J(e, a) });
|
|
129
129
|
}
|
|
130
130
|
i.value[e].class[1] = "active";
|
|
131
131
|
}, J = (a, e) => {
|
|
132
|
-
let t = Math.abs(a - e) + 1, [l,
|
|
133
|
-
for (let
|
|
134
|
-
i.value[
|
|
132
|
+
let t = Math.abs(a - e) + 1, [l, c] = [Math.min(a, e), Math.max(a, e)];
|
|
133
|
+
for (let h = l; h <= c; h++)
|
|
134
|
+
i.value[h]?.class[0] === "holiday" && t--;
|
|
135
135
|
return t;
|
|
136
|
-
},
|
|
137
|
-
P(a, e) && (C.value = new Date(a, e, 1), u.value = C.value.getFullYear(),
|
|
136
|
+
}, D = (a, e) => {
|
|
137
|
+
P(a, e) && (C.value = new Date(a, e, 1), u.value = C.value.getFullYear(), s.value = C.value.getMonth(), O.value = new Date(a, e + 1, 1).getMonth(), (n.range === "year" || n.range === "decades") && d.value === 0 ? R({ year: a, month: e, day: 1 }, 8) : H());
|
|
138
138
|
};
|
|
139
|
-
if (H(), _(),
|
|
139
|
+
if (H(), _(), n.data?.startDate && (m.value = i.value.findIndex((a) => a.day === C.value.getDate() && a.month === s.value && a.year === u.value), m.value !== -1 && (i.value[m.value].class[1] = "active")), n.data?.endDate && n.range === "range" && (M.value = i.value.findIndex((a) => a.day === z.value.getDate() && a.month === q.value && a.year === W.value), M.value !== -1)) {
|
|
140
140
|
i.value[M.value].class[1] = "active";
|
|
141
141
|
for (let a = m.value + 1; a < M.value; a++)
|
|
142
142
|
i.value[a].class[1] = "select";
|
|
143
143
|
}
|
|
144
144
|
return (a, e) => (v(), r("div", te, [
|
|
145
145
|
o("div", null, [
|
|
146
|
-
|
|
146
|
+
n.range === "decades" || d.value === 3 ? (v(), r("p", ae, [
|
|
147
147
|
o("span", null, [
|
|
148
148
|
o("button", {
|
|
149
|
-
onClick: e[0] || (e[0] =
|
|
150
|
-
|
|
149
|
+
onClick: e[0] || (e[0] = g((t) => {
|
|
150
|
+
S.value -= 10, D(u.value, s.value);
|
|
151
151
|
}, ["prevent"]))
|
|
152
152
|
}, [
|
|
153
153
|
w(a.$slots, "double-arrow", {}, () => [
|
|
@@ -159,8 +159,8 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
159
159
|
o("span", null, [
|
|
160
160
|
o("button", {
|
|
161
161
|
class: "sw-revers",
|
|
162
|
-
onClick: e[1] || (e[1] =
|
|
163
|
-
|
|
162
|
+
onClick: e[1] || (e[1] = g((t) => {
|
|
163
|
+
S.value += 10, D(u.value, s.value);
|
|
164
164
|
}, ["prevent"]))
|
|
165
165
|
}, [
|
|
166
166
|
w(a.$slots, "double-arrow", {}, () => [
|
|
@@ -171,15 +171,15 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
171
171
|
])) : (v(), r("p", ne, [
|
|
172
172
|
o("span", null, [
|
|
173
173
|
o("button", {
|
|
174
|
-
onClick: e[2] || (e[2] =
|
|
174
|
+
onClick: e[2] || (e[2] = g((t) => D(u.value - 1, s.value), ["prevent"]))
|
|
175
175
|
}, [
|
|
176
176
|
w(a.$slots, "double-arrow", {}, () => [
|
|
177
177
|
e[18] || (e[18] = k("«", -1))
|
|
178
178
|
])
|
|
179
179
|
]),
|
|
180
180
|
o("button", {
|
|
181
|
-
onClick: e[3] || (e[3] =
|
|
182
|
-
d.value = 0,
|
|
181
|
+
onClick: e[3] || (e[3] = g((t) => {
|
|
182
|
+
d.value = 0, D(u.value, s.value - 1);
|
|
183
183
|
}, ["prevent"]))
|
|
184
184
|
}, [
|
|
185
185
|
w(a.$slots, "arrow", {}, () => [
|
|
@@ -189,17 +189,17 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
189
189
|
]),
|
|
190
190
|
o("span", se, [
|
|
191
191
|
o("button", {
|
|
192
|
-
onClick: e[4] || (e[4] =
|
|
192
|
+
onClick: e[4] || (e[4] = g((t) => d.value = 3, ["prevent"]))
|
|
193
193
|
}, f(u.value), 1),
|
|
194
194
|
o("button", {
|
|
195
|
-
onClick: e[5] || (e[5] =
|
|
196
|
-
}, f(F(B)(C.value.setMonth(
|
|
195
|
+
onClick: e[5] || (e[5] = g((t) => d.value = 1, ["prevent"]))
|
|
196
|
+
}, f(F(B)(C.value.setMonth(s.value), "{F}")), 1)
|
|
197
197
|
]),
|
|
198
198
|
o("span", null, [
|
|
199
199
|
o("button", {
|
|
200
200
|
class: "sw-revers",
|
|
201
|
-
onClick: e[6] || (e[6] =
|
|
202
|
-
d.value = 0,
|
|
201
|
+
onClick: e[6] || (e[6] = g((t) => {
|
|
202
|
+
d.value = 0, D(u.value, s.value + 1);
|
|
203
203
|
}, ["prevent"]))
|
|
204
204
|
}, [
|
|
205
205
|
w(a.$slots, "arrow", {}, () => [
|
|
@@ -208,7 +208,7 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
208
208
|
]),
|
|
209
209
|
o("button", {
|
|
210
210
|
class: "sw-revers",
|
|
211
|
-
onClick: e[7] || (e[7] =
|
|
211
|
+
onClick: e[7] || (e[7] = g((t) => D(u.value + 1, s.value), ["prevent"]))
|
|
212
212
|
}, [
|
|
213
213
|
w(a.$slots, "double-arrow", {}, () => [
|
|
214
214
|
e[21] || (e[21] = k("«", -1))
|
|
@@ -216,46 +216,46 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
216
216
|
])
|
|
217
217
|
])
|
|
218
218
|
])),
|
|
219
|
-
|
|
220
|
-
(v(), r(
|
|
219
|
+
n.range === "year" || n.range === "decades" || d.value === 1 || d.value === 3 ? j("", !0) : (v(), r("div", ue, [
|
|
220
|
+
(v(), r($, null, Y(7, (t, l) => o("button", {
|
|
221
221
|
key: l,
|
|
222
222
|
class: "disabled"
|
|
223
223
|
}, f(F(B)(new Date(1970, 1, t + F(I)), "{D}")), 1)), 64))
|
|
224
224
|
])),
|
|
225
|
-
d.value !== 3 &&
|
|
226
|
-
(v(!0), r(
|
|
225
|
+
d.value !== 3 && n.range === "year" || d.value === 1 ? (v(), r("div", oe, [
|
|
226
|
+
(v(!0), r($, null, Y(G.value, (t, l) => (v(), r("button", {
|
|
227
227
|
key: l,
|
|
228
|
-
onClick:
|
|
229
|
-
d.value = 0,
|
|
228
|
+
onClick: g((c) => {
|
|
229
|
+
d.value = 0, D(u.value, l);
|
|
230
230
|
}, ["prevent"]),
|
|
231
|
-
class: A(l ===
|
|
231
|
+
class: A(l === s.value ? "active" : "")
|
|
232
232
|
}, f(t), 11, re))), 128))
|
|
233
|
-
])) :
|
|
234
|
-
(v(!0), r(
|
|
233
|
+
])) : n.range === "decades" || d.value === 3 ? (v(), r("div", ve, [
|
|
234
|
+
(v(!0), r($, null, Y(N.value, (t, l) => (v(), r("button", {
|
|
235
235
|
key: l,
|
|
236
|
-
onClick:
|
|
237
|
-
d.value =
|
|
236
|
+
onClick: g((c) => {
|
|
237
|
+
d.value = n.range === "year" ? 1 : 0, D(t, s.value);
|
|
238
238
|
}, ["prevent"]),
|
|
239
|
-
class: A(
|
|
239
|
+
class: A(S.value + l - 1 === u.value ? "active" : "")
|
|
240
240
|
}, f(t), 11, ie))), 128))
|
|
241
241
|
])) : (v(), r("div", de, [
|
|
242
|
-
(v(!0), r(
|
|
243
|
-
l < V.value + (7 - new Date(u.value,
|
|
242
|
+
(v(!0), r($, null, Y(i.value, (t, l) => (v(), r($, { key: l }, [
|
|
243
|
+
l < V.value + (7 - new Date(u.value, s.value + 1, 1).getDay() + F(I)) % 7 ? (v(), r("button", {
|
|
244
244
|
key: 0,
|
|
245
|
-
class: A(t.month ===
|
|
246
|
-
onClick:
|
|
247
|
-
t.month ===
|
|
245
|
+
class: A(t.month === s.value && P(t.year, t.month, t.day) ? t.class : "disabled"),
|
|
246
|
+
onClick: g(() => {
|
|
247
|
+
t.month === s.value && R(t, l);
|
|
248
248
|
}, ["prevent"])
|
|
249
|
-
}, f(t.day), 11,
|
|
249
|
+
}, f(t.day), 11, ge)) : j("", !0)
|
|
250
250
|
], 64))), 128))
|
|
251
251
|
]))
|
|
252
252
|
]),
|
|
253
|
-
|
|
254
|
-
|
|
253
|
+
n.range === "range" ? (v(), r("div", ce, [
|
|
254
|
+
n.range === "decades" || d.value === 4 ? (v(), r("p", De, [
|
|
255
255
|
o("span", null, [
|
|
256
256
|
o("button", {
|
|
257
|
-
onClick: e[8] || (e[8] =
|
|
258
|
-
|
|
257
|
+
onClick: e[8] || (e[8] = g((t) => {
|
|
258
|
+
S.value -= 10, D(u.value, s.value);
|
|
259
259
|
}, ["prevent"]))
|
|
260
260
|
}, [
|
|
261
261
|
w(a.$slots, "double-arrow", {}, () => [
|
|
@@ -267,8 +267,8 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
267
267
|
o("span", null, [
|
|
268
268
|
o("button", {
|
|
269
269
|
class: "sw-revers",
|
|
270
|
-
onClick: e[9] || (e[9] =
|
|
271
|
-
|
|
270
|
+
onClick: e[9] || (e[9] = g((t) => {
|
|
271
|
+
S.value += 10, D(u.value, s.value);
|
|
272
272
|
}, ["prevent"]))
|
|
273
273
|
}, [
|
|
274
274
|
w(a.$slots, "double-arrow", {}, () => [
|
|
@@ -276,18 +276,18 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
276
276
|
])
|
|
277
277
|
])
|
|
278
278
|
])
|
|
279
|
-
])) : (v(), r("p",
|
|
279
|
+
])) : (v(), r("p", pe, [
|
|
280
280
|
o("span", null, [
|
|
281
281
|
o("button", {
|
|
282
|
-
onClick: e[10] || (e[10] =
|
|
282
|
+
onClick: e[10] || (e[10] = g((t) => D(u.value - 1, s.value), ["prevent"]))
|
|
283
283
|
}, [
|
|
284
284
|
w(a.$slots, "double-arrow", {}, () => [
|
|
285
285
|
e[24] || (e[24] = k("«", -1))
|
|
286
286
|
])
|
|
287
287
|
]),
|
|
288
288
|
o("button", {
|
|
289
|
-
onClick: e[11] || (e[11] =
|
|
290
|
-
d.value = 0,
|
|
289
|
+
onClick: e[11] || (e[11] = g((t) => {
|
|
290
|
+
d.value = 0, D(u.value, s.value - 1);
|
|
291
291
|
}, ["prevent"]))
|
|
292
292
|
}, [
|
|
293
293
|
w(a.$slots, "arrow", {}, () => [
|
|
@@ -297,17 +297,17 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
297
297
|
]),
|
|
298
298
|
o("span", me, [
|
|
299
299
|
o("button", {
|
|
300
|
-
onClick: e[12] || (e[12] =
|
|
301
|
-
}, f(new Date(u.value,
|
|
300
|
+
onClick: e[12] || (e[12] = g((t) => d.value = 4, ["prevent"]))
|
|
301
|
+
}, f(new Date(u.value, s.value + 1).getFullYear()), 1),
|
|
302
302
|
o("button", {
|
|
303
|
-
onClick: e[13] || (e[13] =
|
|
304
|
-
}, f(F(B)(C.value.setMonth(
|
|
303
|
+
onClick: e[13] || (e[13] = g((t) => d.value = 2, ["prevent"]))
|
|
304
|
+
}, f(F(B)(C.value.setMonth(s.value + 1), "{F}")), 1)
|
|
305
305
|
]),
|
|
306
306
|
o("span", null, [
|
|
307
307
|
o("button", {
|
|
308
308
|
class: "sw-revers",
|
|
309
|
-
onClick: e[14] || (e[14] =
|
|
310
|
-
d.value = 0,
|
|
309
|
+
onClick: e[14] || (e[14] = g((t) => {
|
|
310
|
+
d.value = 0, D(u.value, s.value + 1);
|
|
311
311
|
}, ["prevent"]))
|
|
312
312
|
}, [
|
|
313
313
|
w(a.$slots, "arrow", {}, () => [
|
|
@@ -316,7 +316,7 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
316
316
|
]),
|
|
317
317
|
o("button", {
|
|
318
318
|
class: "sw-revers",
|
|
319
|
-
onClick: e[15] || (e[15] =
|
|
319
|
+
onClick: e[15] || (e[15] = g((t) => D(u.value + 1, s.value), ["prevent"]))
|
|
320
320
|
}, [
|
|
321
321
|
w(a.$slots, "double-arrow", {}, () => [
|
|
322
322
|
e[27] || (e[27] = k("«", -1))
|
|
@@ -325,33 +325,33 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
325
325
|
])
|
|
326
326
|
])),
|
|
327
327
|
d.value === 2 || d.value === 4 ? j("", !0) : (v(), r("div", we, [
|
|
328
|
-
(v(), r(
|
|
328
|
+
(v(), r($, null, Y(7, (t, l) => o("button", {
|
|
329
329
|
key: l,
|
|
330
330
|
class: "disabled"
|
|
331
331
|
}, f(F(B)(new Date(1970, 1, t + F(I)), "{D}")), 1)), 64))
|
|
332
332
|
])),
|
|
333
333
|
d.value === 2 ? (v(), r("div", ke, [
|
|
334
|
-
(v(!0), r(
|
|
334
|
+
(v(!0), r($, null, Y(G.value, (t, l) => (v(), r("button", {
|
|
335
335
|
key: l,
|
|
336
|
-
onClick:
|
|
337
|
-
d.value = 0,
|
|
336
|
+
onClick: g((c) => {
|
|
337
|
+
d.value = 0, D(u.value, l - 1);
|
|
338
338
|
}, ["prevent"]),
|
|
339
|
-
class: A(l === (
|
|
339
|
+
class: A(l === (s.value + 1) % 12 ? "active" : "")
|
|
340
340
|
}, f(t), 11, ye))), 128))
|
|
341
341
|
])) : d.value === 4 ? (v(), r("div", he, [
|
|
342
|
-
(v(!0), r(
|
|
342
|
+
(v(!0), r($, null, Y(N.value, (t, l) => (v(), r("button", {
|
|
343
343
|
key: l,
|
|
344
|
-
onClick:
|
|
345
|
-
d.value = 0,
|
|
344
|
+
onClick: g((c) => {
|
|
345
|
+
d.value = 0, D(t, s.value);
|
|
346
346
|
}, ["prevent"]),
|
|
347
|
-
class: A(
|
|
347
|
+
class: A(S.value + l - 1 === u.value ? "active" : "")
|
|
348
348
|
}, f(t), 11, be))), 128))
|
|
349
349
|
])) : (v(), r("div", $e, [
|
|
350
|
-
(v(!0), r(
|
|
351
|
-
l >= V.value - (7 + new Date(u.value,
|
|
350
|
+
(v(!0), r($, null, Y(i.value, (t, l) => (v(), r($, { key: l }, [
|
|
351
|
+
l >= V.value - (7 + new Date(u.value, s.value + 1, 1).getDay() - F(I)) % 7 ? (v(), r("button", {
|
|
352
352
|
key: 0,
|
|
353
353
|
class: A(t.month === O.value && P(t.year, t.month, t.day) ? t.class : "disabled"),
|
|
354
|
-
onClick:
|
|
354
|
+
onClick: g(() => {
|
|
355
355
|
t.month === O.value && R(t, l);
|
|
356
356
|
}, ["prevent"])
|
|
357
357
|
}, f(t.day), 11, Ce)) : j("", !0)
|
|
@@ -362,5 +362,5 @@ const te = { class: "sw-data-picker" }, ae = {
|
|
|
362
362
|
}
|
|
363
363
|
};
|
|
364
364
|
export {
|
|
365
|
-
|
|
365
|
+
Ye as default
|
|
366
366
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { computed as o, createElementBlock as r, openBlock as l, normalizeClass as c, createBlock as a, createCommentVNode as i, renderSlot as p } from "vue";
|
|
2
|
-
import { _ as u } from "./index-
|
|
2
|
+
import { _ as u } from "./index-C67_vMqe.js";
|
|
3
3
|
const y = {
|
|
4
4
|
__name: "SwDropdownItem",
|
|
5
5
|
props: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { mergeModels as E, ref as c, useModel as V, watchEffect as b, onMounted as L, createElementBlock as N, openBlock as R, createElementVNode as r, createVNode as u, withCtx as a, renderSlot as d, createTextVNode as v, toDisplayString as k, normalizeClass as z } from "vue";
|
|
2
2
|
import M from "./SwDropdown-DQGTnnKw.js";
|
|
3
3
|
import f from "./SwButton-85-tKHA7.js";
|
|
4
|
-
import { _ as h } from "./index-
|
|
4
|
+
import { _ as h } from "./index-C67_vMqe.js";
|
|
5
5
|
const B = ["src"], q = {
|
|
6
6
|
__name: "SwGide",
|
|
7
7
|
props: /* @__PURE__ */ E({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { mergeModels as i, useModel as x, ref as k, computed as _, watch as z, createElementBlock as r, openBlock as a, normalizeClass as q, createBlock as f, renderSlot as p, createCommentVNode as c, withDirectives as N, createTextVNode as V, toDisplayString as w, createElementVNode as B, mergeProps as M, vModelDynamic as C } from "vue";
|
|
2
|
-
import { f as $, _ as d } from "./index-
|
|
2
|
+
import { f as $, _ as d } from "./index-C67_vMqe.js";
|
|
3
3
|
const D = ["for"], I = {
|
|
4
4
|
key: 0,
|
|
5
5
|
title: "Это поле обязательно для заполнения."
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { mergeModels as f, useModel as g, ref as p, useSlots as v, watch as k, nextTick as w, onUnmounted as h, createElementBlock as r, openBlock as c, normalizeClass as y, createCommentVNode as C, renderSlot as a, createElementVNode as _, unref as S, createTextVNode as V, createVNode as d, toDisplayString as $, withCtx as E } from "vue";
|
|
2
2
|
import M from "./SwButton-85-tKHA7.js";
|
|
3
|
-
import { _ as N } from "./index-
|
|
3
|
+
import { _ as N } from "./index-C67_vMqe.js";
|
|
4
4
|
const R = { key: 0 }, x = {
|
|
5
5
|
__name: "SwMessage",
|
|
6
6
|
props: /* @__PURE__ */ f({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { mergeModels as F, useModel as I, ref as p, computed as v, onMounted as q, onUnmounted as U, createElementBlock as M, openBlock as x, normalizeClass as D, createElementVNode as N, withModifiers as P, normalizeStyle as B, Fragment as j, renderList as G, renderSlot as H, createCommentVNode as J, toDisplayString as K } from "vue";
|
|
2
|
-
import { c as O } from "./index-
|
|
2
|
+
import { c as O } from "./index-C67_vMqe.js";
|
|
3
3
|
const Q = ["onMouseenter", "onMouseleave", "onFocus", "onBlur", "onMousedown", "onTouchstart"], _ = {
|
|
4
4
|
__name: "SwSlider",
|
|
5
5
|
props: /* @__PURE__ */ F({
|
|
@@ -166,7 +166,7 @@ function v(e = {}) {
|
|
|
166
166
|
}), i = l.mount(document.createElement("div"));
|
|
167
167
|
p.appendChild(i.$el);
|
|
168
168
|
}
|
|
169
|
-
const y = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => G), "./components/SwButton.vue": () => import("./SwButton-85-tKHA7.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CuN3EbT6.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-
|
|
169
|
+
const y = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => G), "./components/SwButton.vue": () => import("./SwButton-85-tKHA7.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CuN3EbT6.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-03CHh838.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-DQGTnnKw.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-D9Nm6baa.js"), "./components/SwDropdownNew.vue": () => import("./SwDropdownNew-CYfjZFd2.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CaA4jsoa.js"), "./components/SwGide.vue": () => import("./SwGide-BR7N6BBt.js"), "./components/SwIcon.vue": () => Promise.resolve().then(() => q), "./components/SwInput.vue": () => import("./SwInput-BMLQeDUm.js"), "./components/SwMessage.vue": () => import("./SwMessage-DfobTkbX.js"), "./components/SwSection.vue": () => import("./SwSection-D8ooQ21I.js"), "./components/SwSelect.vue": () => import("./SwSelect-C2RKinez.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-B7ysp8L9.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSlider.vue": () => import("./SwSlider-EbWEfhMU.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-6rl1IT4p.js"), "./components/SwTable.vue": () => import("./SwTable-BKZ5idCi.js"), "./components/SwTableColumn.vue": () => import("./SwTableColumn-BLF5bPuJ.js"), "./components/SwTabs.vue": () => import("./SwTabs-DkSI4oAh.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-Dwtj8g7T.js") }), S = {};
|
|
170
170
|
for (const e in y) {
|
|
171
171
|
const o = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (n, t) => t.toUpperCase());
|
|
172
172
|
S[o] = F(() => y[e]());
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(R,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(R=typeof globalThis<"u"?globalThis:R||self,e(R["component-sw"]={},R.vue))})(this,function(R,e){"use strict";function K(c){return/^(https?:|mailto:|tel:)/.test(c)}function H(c,o){if(arguments.length===0||!c)return null;const t=o||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof c=="object"?l=c:(typeof c=="string"&&(/^[0-9]+$/.test(c)?c=parseInt(c):c=c.replace(new RegExp(/-/gm),"/")),typeof c=="number"&&c.toString().length===10&&(c=c*1e3),l=new Date(c));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,(b,m)=>d[m])}function j(c){let o=c.split(c.match(/\D.*?\D?/));return o[0].length>2?o.join("-")+"T00:00:01":o.reverse().join("-")+"T00:00:01"}function ee(c,o){if(/^\+[0-9]\s/.test(o)&&c.length===2||/^\+0\s/.test(c))return"";if(typeof c>"u"||c.length===0)return c;const t="+0 (___) ___-__-__";let l=0;const n=t.replace(/\D/g,""),d=c.replace(/\D/g,"");let b=t.replace(/[_\d]/g,i=>l<d.length?d.charAt(l++)||n.charAt(l):i);l=b.indexOf("_"),l!==-1&&(l=l<5?3:l,b=b.slice(0,l));let m=t.slice(0,c.length).replace(/_+/g,i=>`\\d{1,${i.length}}`).replace(/[+()]/g,"\\$&");return m=new RegExp(`^${m}$`),b=b.replace(/[-—]$|(\) )$/g,""),!m.test(c)||c.length<5?b:c}function te(c,o=!1){const t=c.getBoundingClientRect();return o?t.left>50?{right:"100%",marginRight:"10px"}:{left:"100%",marginLeft:"10px"}:{bottom:"100%",marginBottom:"10px"}}const le=["href"],F={__name:"SwIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},setup(c){const o=c,t=K(o.iconClass);return(l,n)=>e.unref(t)?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+o.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},l.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon icon-"+(o.className||o.iconClass),"aria-hidden":"true"},l.$attrs),[e.createElementVNode("use",{href:"#"+o.prefix+"-"+o.iconClass},null,8,le)],16))}},oe=Object.freeze(Object.defineProperty({__proto__:null,default:F},Symbol.toStringTag,{value:"Module"})),X={__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:c=>["success","warning","error","info"].includes(c)}},emits:["closed"],setup(c,{emit:o}){const t=c,l=o,n=e.ref(!1);let d=null;const b=()=>{document.querySelector(".sw-alert-wrapper").togglePopover(),n.value=!0,document.querySelector(".sw-alert-wrapper").showPopover(),C()},m=()=>{n.value=!1,l("closed")},i=()=>{d&&(clearTimeout(d),d=null)},$=()=>{C()},C=()=>{d=setTimeout(m,t.duration)};e.onMounted(()=>{b()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const _=e.computed(()=>{const S=["sw-alert"];return t.size.length>0&&S.push(`sw-${t.size}`),t.type.length>0&&S.push(`sw-${t.type}`),t.class.length>0&&S.push(t.class),S});return(S,V)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(_.value),onMouseenter:i,onMouseleave:$},[t.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(S.$slots,"prefix",{key:1}),e.renderSlot(S.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(F,{key:2,"icon-class":t.after,onClick:m},null,8,["icon-class"])):e.renderSlot(S.$slots,"suffix",{key:3}),e.createElementVNode("footer",null,[e.renderSlot(S.$slots,"footer")])],34)):e.createCommentVNode("",!0)]),_:3}))}},ne=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"}));let A=document.querySelector("div.sw-alert-wrapper");function U(c={}){A||(A=document.createElement("div"),A.className="sw-alert-wrapper",A.setAttribute("popover","manual"),document.body.appendChild(A));const{prefix:o,suffix:t,footer:l,...n}=c,d=i=>i==null?null:typeof i=="function"?i:typeof i=="string"?()=>[i]:Array.isArray(i)?()=>i:()=>[i],b=e.createApp({setup(){return()=>e.h(X,{...n,onClose:()=>{A.removeChild(b._container),b.unmount()}},{...o!=null&&{prefix:d(o)},...t!=null&&{suffix:d(t)},...l!=null&&{footer:d(l)}})}}),m=b.mount(document.createElement("div"));A.appendChild(m.$el)}const G=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ne),"./components/SwButton.vue":()=>Promise.resolve().then(()=>se),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>xe),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>ze),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Pe),"./components/SwDropdownNew.vue":()=>Promise.resolve().then(()=>je),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Le),"./components/SwGide.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwIcon.vue":()=>Promise.resolve().then(()=>oe),"./components/SwInput.vue":()=>Promise.resolve().then(()=>He),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>qe),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Ue),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Ze),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>tt),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>et),"./components/SwSlider.vue":()=>Promise.resolve().then(()=>ot),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>st),"./components/SwTable.vue":()=>Promise.resolve().then(()=>ut),"./components/SwTableColumn.vue":()=>Promise.resolve().then(()=>it),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>gt),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>wt)}),q={};for(const c in G){const o=c.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,l)=>l.toUpperCase());q[o]=e.defineAsyncComponent(()=>G[c]())}const re={install(c){Object.keys(q).forEach(o=>{c.component(o,q[o])}),c.config.globalProperties.$Alert=U,c.provide("Alert",U)}},W={__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(c){const o=c,t=()=>{if(o.href.length>0){const n=document.createElement("a");n.setAttribute("href",o.href),n.setAttribute("target","_blank"),n.click()}},l=e.computed(()=>{let n=["sw-button"];return o.size.length>0&&n.push("sw-"+o.size),o.type.length>0&&n.push("sw-"+o.type),o.round&&n.push("sw-round"),o.text&&n.push("sw-text"),o.link&&n.push("sw-link"),o.class.length>0&&n.push(o.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},se=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(c){e.onMounted(()=>{l.value="0px"});const o=e.ref(null),t=c;e.watch(()=>t.visual,()=>n());const l=e.ref("0px"),n=()=>{o.value&&(l.value=t.visual?o.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{n(),o.value&&(d=new ResizeObserver(n),d.observe(o.value))}),e.onBeforeUnmount(()=>{d&&d.disconnect()}),(b,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({maxHeight:l.value}),ref_key:"collapse",ref:o},[e.renderSlot(b.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ie={class:"sw-data-picker"},ce={key:0,class:"month_year"},de={class:"text"},pe={key:1,class:"month_year"},ue={class:"text"},me={key:2,class:"week"},fe={key:3,class:"year"},ge=["onClick"],he={key:4,class:"year"},we=["onClick"],ye={key:5,class:"month"},ke=["onClick"],Se={key:0},be={key:0,class:"month_year"},_e={class:"text"},Ee={key:1,class:"month_year"},Be={class:"text"},$e={key:2,class:"week"},Me={key:3,class:"year"},Ce=["onClick"],Ve={key:4,class:"year"},De=["onClick"],Te={key:5,class:"month"},ve=["onClick"],xe=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(c,{emit:o}){const t=c,l=o,n=e.ref(5),d=e.ref(new Date),b=e.ref(new Date),m=e.ref(new Date().getFullYear()),i=e.ref(new Date().getMonth()),$=e.ref(new Date().getFullYear()),C=e.ref(new Date().getMonth()),_=e.ref(new Date(m.value,i.value+1,1).getMonth()),S=e.ref([]),V=e.ref(0),u=e.ref(-1),k=e.ref(-1),y=e.ref(navigator.language||"ru"),w=/en|zh|ja|he/.test(y.value)?0:1,h=e.computed(()=>Array.from({length:12},(f,s)=>{const g=new Date(2024,s);return new Intl.DateTimeFormat(y.value,{month:"long"}).format(g)})),T=e.ref(Math.floor(m.value/10)*10),D=e.computed(()=>Array.from({length:12},(f,s)=>T.value+s-1));t.data?.startDate&&(d.value=new Date(j(t.data.startDate)),m.value=d.value.getFullYear(),i.value=d.value.getMonth()),t.data?.endDate&&t.range==="range"&&(b.value=new Date(j(t.data.endDate)),$.value=b.value.getFullYear(),C.value=b.value.getMonth());const E=()=>{S.value=[],V.value=0;const f=new Date(m.value,i.value,0);for(let g=f.getDate()-f.getDay()+w;g<=f.getDate();g++)f.getDay()!==6+w&&(S.value.push({day:g,month:f.getMonth(),year:f.getFullYear(),class:[]}),V.value++);const s=new Date(m.value,i.value+1,0).getDate();for(let g=1;g<=s;g++)S.value.push({day:g,month:i.value,year:m.value,class:[]}),V.value++;if(t.range==="range"){const g=new Date(m.value,i.value+1,1),B=new Date(m.value,i.value+2,0).getDate();for(let N=1;N<=B;N++)S.value.push({day:N,month:g.getMonth(),year:g.getFullYear(),class:[]})}r()},r=()=>{if(!t.data?.holiday)return;const f=(s,g)=>{s.forEach(B=>{const[N,O,I]=B.split("-").map(Number),L=S.value.findIndex(Y=>Y.year===N&&Y.month+1===O&&Y.day===I);L!==-1&&(S.value[L].class[0]=g)})};f(t.data.holiday.preholidays,"preholiday"),f(t.data.holiday.holidays,"weekend"),f(t.data.holiday.holiday,"holiday"),f(t.data.holiday.nowork,"nowork")},a=()=>{if(!t.limitation||t.limitation.length<2)return!1;const f=[...t.limitation].sort((s,g)=>new Date(j(s.startDate)).getTime()-new Date(j(g.startDate)).getTime());for(let s=1;s<f.length;s++){const g=new Date(j(f[s-1].endDate));if(new Date(j(f[s].startDate))<=g)return console.warn("Warning: Диапазоны пересекаются:",f[s-1],f[s]),!0}return!1},p=(f,s,g)=>{if(!t.limitation||t.limitation.length===0)return!0;const B=new Date(f,s,g).getTime();for(let N of t.limitation){const{startDate:O,endDate:I}=N;if(!O&&I){const L=new Date(j(I)).getTime();if(B<=L)return!1}if(O&&!I){const L=new Date(j(O)).getTime();if(B>=L)return!1}if(O&&I){const L=new Date(j(O)).getTime(),Y=new Date(j(I)).getTime();if(L<=Y){if(B>=L&&B<=Y)return!1}else if(B>=L||B<=Y)return!1}}return!0},M=(f,s)=>{const g=H(new Date(f.year,f.month,f.day),"{dd}.{m}.{Y}");t.range==="range"?k.value!==-1?(v(),u.value=s,S.value[s].class[1]="active"):u.value!==-1?(k.value=s,P(u.value,k.value,g)):(u.value=s,S.value[s].class[1]="active"):(u.value!==-1&&(S.value[u.value].class[1]=""),u.value=s,S.value[s].class[1]="active",l("input",{dateStart:g,count:1}))},v=()=>{S.value.forEach(f=>f.class[1]=""),u.value=-1,k.value=-1},P=(f,s,g)=>{let B=H(new Date(S.value[f].year,S.value[f].month,S.value[f].day),"{dd}.{m}.{Y}");if(s>=f){for(let N=f+1;N<s;N++)S.value[N].class[1]="select";l("input",{dateStart:B,dateEnd:g,count:z(f,s)})}else{for(let N=s+1;N<f;N++)S.value[N].class[1]="select";l("input",{dateStart:g,dateEnd:B,count:z(s,f)})}S.value[s].class[1]="active"},z=(f,s)=>{let g=Math.abs(f-s)+1,[B,N]=[Math.min(f,s),Math.max(f,s)];for(let O=B;O<=N;O++)S.value[O]?.class[0]==="holiday"&&g--;return g},x=(f,s)=>{p(f,s)&&(d.value=new Date(f,s,1),m.value=d.value.getFullYear(),i.value=d.value.getMonth(),_.value=new Date(f,s+1,1).getMonth(),(t.range==="year"||t.range==="decades")&&n.value===0?M({year:f,month:s,day:1},8):E())};if(E(),a(),t.data?.startDate&&(u.value=S.value.findIndex(f=>f.day===d.value.getDate()&&f.month===i.value&&f.year===m.value),u.value!==-1&&(S.value[u.value].class[1]="active")),t.data?.endDate&&t.range==="range"&&(k.value=S.value.findIndex(f=>f.day===b.value.getDate()&&f.month===C.value&&f.year===$.value),k.value!==-1)){S.value[k.value].class[1]="active";for(let f=u.value+1;f<k.value;f++)S.value[f].class[1]="select"}return(f,s)=>(e.openBlock(),e.createElementBlock("div",ie,[e.createElementVNode("div",null,[t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("p",ce,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(g=>{T.value-=10,x(m.value,i.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[16]||(s[16]=e.createTextVNode("«",-1))])])]),e.createElementVNode("span",de,e.toDisplayString(D.value[0])+" - "+e.toDisplayString(D.value[11]),1),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[1]||(s[1]=e.withModifiers(g=>{T.value+=10,x(m.value,i.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[17]||(s[17]=e.createTextVNode("«",-1))])])])])):(e.openBlock(),e.createElementBlock("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(g=>x(m.value-1,i.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[18]||(s[18]=e.createTextVNode("«",-1))])]),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(g=>{n.value=0,x(m.value,i.value-1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[19]||(s[19]=e.createTextVNode("‹",-1))])])]),e.createElementVNode("span",ue,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(g=>n.value=3,["prevent"]))},e.toDisplayString(m.value),1),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(g=>n.value=1,["prevent"]))},e.toDisplayString(e.unref(H)(d.value.setMonth(i.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[6]||(s[6]=e.withModifiers(g=>{n.value=0,x(m.value,i.value+1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[20]||(s[20]=e.createTextVNode("‹",-1))])]),e.createElementVNode("button",{class:"sw-revers",onClick:s[7]||(s[7]=e.withModifiers(g=>x(m.value+1,i.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[21]||(s[21]=e.createTextVNode("«",-1))])])])])),t.range==="year"||t.range==="decades"||n.value===1||n.value===3?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(g,B)=>e.createElementVNode("button",{key:B,class:"disabled"},e.toDisplayString(e.unref(H)(new Date(1970,1,g+e.unref(w)),"{D}")),1)),64))])),n.value!==3&&t.range==="year"||n.value===1?(e.openBlock(),e.createElementBlock("div",fe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=0,x(m.value,B)},["prevent"]),class:e.normalizeClass(B===i.value?"active":"")},e.toDisplayString(g),11,ge))),128))])):t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("div",he,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(D.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=t.range==="year"?1:0,x(g,i.value)},["prevent"]),class:e.normalizeClass(T.value+B-1===m.value?"active":"")},e.toDisplayString(g),11,we))),128))])):(e.openBlock(),e.createElementBlock("div",ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(g,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:B},[B<V.value+(7-new Date(m.value,i.value+1,1).getDay()+e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(g.month===i.value&&p(g.year,g.month,g.day)?g.class:"disabled"),onClick:e.withModifiers(()=>{g.month===i.value&&M(g,B)},["prevent"])},e.toDisplayString(g.day),11,ke)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",Se,[t.range==="decades"||n.value===4?(e.openBlock(),e.createElementBlock("p",be,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[8]||(s[8]=e.withModifiers(g=>{T.value-=10,x(m.value,i.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[22]||(s[22]=e.createTextVNode("«",-1))])])]),e.createElementVNode("span",_e,e.toDisplayString(D.value[0])+" - "+e.toDisplayString(D.value[11]),1),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[9]||(s[9]=e.withModifiers(g=>{T.value+=10,x(m.value,i.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[23]||(s[23]=e.createTextVNode("«",-1))])])])])):(e.openBlock(),e.createElementBlock("p",Ee,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[10]||(s[10]=e.withModifiers(g=>x(m.value-1,i.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[24]||(s[24]=e.createTextVNode("«",-1))])]),e.createElementVNode("button",{onClick:s[11]||(s[11]=e.withModifiers(g=>{n.value=0,x(m.value,i.value-1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[25]||(s[25]=e.createTextVNode("‹",-1))])])]),e.createElementVNode("span",Be,[e.createElementVNode("button",{onClick:s[12]||(s[12]=e.withModifiers(g=>n.value=4,["prevent"]))},e.toDisplayString(new Date(m.value,i.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:s[13]||(s[13]=e.withModifiers(g=>n.value=2,["prevent"]))},e.toDisplayString(e.unref(H)(d.value.setMonth(i.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[14]||(s[14]=e.withModifiers(g=>{n.value=0,x(m.value,i.value+1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[26]||(s[26]=e.createTextVNode("‹",-1))])]),e.createElementVNode("button",{class:"sw-revers",onClick:s[15]||(s[15]=e.withModifiers(g=>x(m.value+1,i.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[27]||(s[27]=e.createTextVNode("«",-1))])])])])),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,(g,B)=>e.createElementVNode("button",{key:B,class:"disabled"},e.toDisplayString(e.unref(H)(new Date(1970,1,g+e.unref(w)),"{D}")),1)),64))])),n.value===2?(e.openBlock(),e.createElementBlock("div",Me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=0,x(m.value,B-1)},["prevent"]),class:e.normalizeClass(B===(i.value+1)%12?"active":"")},e.toDisplayString(g),11,Ce))),128))])):n.value===4?(e.openBlock(),e.createElementBlock("div",Ve,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(D.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=0,x(g,i.value)},["prevent"]),class:e.normalizeClass(T.value+B-1===m.value?"active":"")},e.toDisplayString(g),11,De))),128))])):(e.openBlock(),e.createElementBlock("div",Te,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(g,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:B},[B>=V.value-(7+new Date(m.value,i.value+1,1).getDay()-e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(g.month===_.value&&p(g.year,g.month,g.day)?g.class:"disabled"),onClick:e.withModifiers(()=>{g.month===_.value&&M(g,B)},["prevent"])},e.toDisplayString(g.day),11,ve)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),Ne=["id"],J={__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(c,{expose:o}){const t=c,l=e.useModel(c,"modelValue"),n=e.ref(null),d=e.ref(null),b=e.ref({}),m=Math.ceil(Math.random()*1e3),i=e.ref(0),$=e.computed(()=>{let y=["sw-dropdown"];return t.size.length>0&&y.push("sw-"+t.size),t.type.length>0&&y.push("sw-"+t.type),y}),C=new ResizeObserver(()=>{l.value&&i.value++,i.value>99&&(i.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!n.value)return;i.value<2&&C.observe(d.value);let y=window.pageYOffset||document.documentElement.scrollTop,w=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${y}px`,document.body.style.left=`-${w}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=y,document.documentElement.scrollLeft=w;const h=n.value.getBoundingClientRect();let T=window.innerWidth,D=window.innerHeight,E=d.value.offsetHeight,r=d.value.offsetWidth,a=h.left+h.width/2+w,p=h.top+h.height/2+y,M=h.height/2+8;const[v,P]=t.placement.split("-",2);switch(v){case"bottom":p=y+D-E-M-8<p?p-M-E:p+M,P===void 0&&(a-=r/2);break;case"top":p=y+E+M+8>p?p+M:p-M-E,P===void 0&&(a-=r/2);break;case"left":a-r-h.width/2-8<0?a+h.width/2+8+r<T?(a=a+h.width/2+8,p=p-E/2):(p=y+E+M+8>p?p+M:p-M-E,a=a+h.width/2<T?a+h.width/2-r:a-r/2):(a=a-r-h.width/2-8,p=p-E/2);break;case"right":a+h.width/2+8+r>T?a-r-h.width/2-8>0?(a=a-r-h.width/2-8,p=p-E/2):(p=y+E+M+8>p?p+M:p-M-E,a=a-h.width/2):(a=a+h.width/2+8,p=p-E/2);break}switch(P){case"left":a=w+T-8>a-h.width/2+r?a-h.width/2:a-r+h.width/2;break;case"right":a=8<a+h.width/2-r?a-r+h.width/2:a-h.width/2;break}a<0&&(a=0),p<0&&(p=0),b.value={position:"absolute",top:`${p}px`,left:`${a}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const _=()=>{t.trigger==="click"&&(l.value=!l.value)},S=()=>{t.trigger==="hover"&&(l.value=!l.value)},V=()=>{t.trigger==="context"&&(l.value=!l.value)},u=()=>{l.value&&i.value++,i.value>99&&(i.value=1)};o({handleResize:u});const k=y=>{t.trigger!=="none"&&!y.target.closest(`[id="${m}"]`)&&n.value&&!n.value.contains(y.target)&&(l.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",u),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",k,!0):document.documentElement.addEventListener("click",k,!0),window.onscrollend!==void 0?window.addEventListener("scrollend",u):window.addEventListener("scroll",u)}),e.onUnmounted(()=>{C.disconnect(),window.removeEventListener("resize",u),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",k):document.documentElement.removeEventListener("click",k),window.onscrollend!==void 0?window.removeEventListener("scrollend",u):window.removeEventListener("scroll",u)}),(y,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass($.value),onClick:w[0]||(w[0]=h=>_()),onMouseover:w[1]||(w[1]=e.withModifiers(h=>S(),["stop"])),onMouseleave:w[2]||(w[2]=e.withModifiers(h=>S(),["stop"])),onContextmenu:w[3]||(w[3]=e.withModifiers(h=>V(),["stop"])),ref_key:"dropdownRef",ref:n},[e.renderSlot(y.$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(m),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(b.value),tabindex:"-1"},[e.renderSlot(y.$slots,"dropdown")],14,Ne)):e.createCommentVNode("",!0)]))],34))}},ze=Object.freeze(Object.defineProperty({__proto__:null,default:J},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(c){const o=c,t=e.computed(()=>{let l=["sw-dropdown-item"];return o.size.length>0&&l.push("sw-"+o.size),o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,n)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[c.iconBefore.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":c.iconBefore},null,8,["icon-class"])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Oe=["id"],je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownNew",props:e.mergeModels({class:{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(c,{expose:o}){const t=c,l=e.useModel(c,"modelValue"),n=e.ref(null),d=e.ref(null),b=e.ref({}),m=Math.ceil(Math.random()*1e3),i=e.ref(0),$=e.computed(()=>{let k=["sw-dropdown"];return t.type.length>0&&k.push("sw-"+t.type),k}),C=new ResizeObserver(()=>{l.value&&i.value++,i.value>99&&(i.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!n.value)return;i.value<2&&C.observe(d.value);let k=window.pageYOffset||document.documentElement.scrollTop,y=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${k}px`,document.body.style.left=`-${y}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=k,document.documentElement.scrollLeft=y;const w=n.value.getBoundingClientRect();let h=window.innerWidth,T=window.innerHeight,D=d.value.offsetHeight,E=d.value.offsetWidth,r=w.left+w.width/2+y,a=w.top+w.height/2+k,p=w.height/2+8;const[M,v]=t.placement.split("-",2);switch(M){case"bottom":a=k+T-D-p-8<a?a-p-D:a+p,v===void 0&&(r-=E/2);break;case"top":a=k+D+p+8>a?a+p:a-p-D,v===void 0&&(r-=E/2);break;case"left":r-E-w.width/2-8<0?r+w.width/2+8+E<h?(r=r+w.width/2+8,a=a-D/2):(a=k+D+p+8>a?a+p:a-p-D,r=r+w.width/2<h?r+w.width/2-E:r-E/2):(r=r-E-w.width/2-8,a=a-D/2);break;case"right":r+w.width/2+8+E>h?r-E-w.width/2-8>0?(r=r-E-w.width/2-8,a=a-D/2):(a=k+D+p+8>a?a+p:a-p-D,r=r-w.width/2):(r=r+w.width/2+8,a=a-D/2);break}switch(v){case"left":r=y+h-8>r-w.width/2+E?r-w.width/2:r-E+w.width/2;break;case"right":r=8<r+w.width/2-E?r-E+w.width/2:r-w.width/2;break}r<0&&(r=0),a<0&&(a=0),b.value={position:"absolute",top:`${a}px`,left:`${r}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const _=()=>{t.trigger==="click"&&(l.value=!l.value)},S=()=>{t.trigger==="hover"&&(l.value=!l.value)},V=()=>{t.trigger==="context"&&(l.value=!l.value)},u=()=>{l.value&&i.value++,i.value>99&&(i.value=1)};return o({handleResize:u}),e.onMounted(()=>{window.addEventListener("resize",u),window.onscrollend!==void 0?window.addEventListener("scrollend",u):window.addEventListener("scroll",u)}),e.onUnmounted(()=>{C.disconnect(),window.removeEventListener("resize",u),window.onscrollend!==void 0?window.removeEventListener("scrollend",u):window.removeEventListener("scroll",u)}),(k,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass($.value),onClick:y[0]||(y[0]=w=>_()),onMouseover:y[1]||(y[1]=e.withModifiers(w=>S(),["stop"])),onMouseleave:y[2]||(y[2]=e.withModifiers(w=>S(),["stop"])),onContextmenu:y[3]||(y[3]=e.withModifiers(w=>V(),["stop"])),ref_key:"dropdownRef",ref:n},[e.renderSlot(k.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("ul",{key:0,popover:"",ref_key:"popupRef",ref:d,id:e.unref(m),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(b.value),tabindex:"-1"},[e.renderSlot(k.$slots,"dropdown")],14,Oe)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Le=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(c){const o=c,t=e.computed(()=>{let l=["sw-form-item"];return o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Re=["src"],Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwGide",props:e.mergeModels({steps:{type:Array,default:()=>[]},iconClose:{type:String,default:""},maxWidth:{type:Number,default:250}},{modelValue:{type:Number,default:0},modelModifiers:{}}),emits:e.mergeModels(["close"],["update:modelValue"]),setup(c,{emit:o}){const t=e.ref(null),l=e.ref(!0),n=e.ref(null),d=e.useModel(c,"modelValue"),b=o,m=c,i=()=>b("close"),$=V=>{const u=d.value+V;u<0?d.value=0:u>=m.steps.length?i():d.value=u};let C=!1;const _=V=>{const u=V.getBoundingClientRect(),k=window.innerHeight;u.top<5?(C=!0,document.documentElement.scrollTop+=u.top-5):u.bottom>k-5&&(C=!0,document.documentElement.scrollTop+=u.bottom-k+5)},S=()=>{if(!n.value||!t.value)return;const V=n.value.getBoundingClientRect(),u=window.pageYOffset||document.documentElement.scrollTop,k=window.pageXOffset||document.documentElement.scrollLeft;t.value.style.gridTemplateRows=`${V.top+u-5}px ${V.height+10}px 1fr`,t.value.style.gridTemplateColumns=`${V.left+k-5}px ${V.width+10}px 1fr`,t.value.style.height=document.documentElement.scrollHeight+"px"};return e.watchEffect(V=>{if(!t.value)return;const u=m.steps[d.value]?.tag;if(!u||!u.trim()){t.value.style.gridTemplateRows="40% 0 1fr",t.value.style.gridTemplateColumns="1fr 0 1fr",t.value.style.height=document.documentElement.scrollHeight+"px";return}if(n.value=document.querySelector(u),!n.value){console.warn(`[SwGuide] Элемент не найден: ${u}`);return}_(n.value);const k=()=>{if(C){C=!1;return}S()};S();const y=new ResizeObserver(S);y.observe(n.value),window.addEventListener("resize",k),window.addEventListener("scroll",k,{passive:!0}),V(()=>{y.disconnect(),window.removeEventListener("resize",k),window.removeEventListener("scroll",k)})}),e.onMounted(()=>window.onload=()=>n.value=document.querySelector(m.steps[d.value]?.tag)),(V,u)=>(e.openBlock(),e.createElementBlock("div",{class:"sw-gide",ref_key:"swGide",ref:t},[u[6]||(u[6]=e.createElementVNode("div",{class:"overlay0"},null,-1)),u[7]||(u[7]=e.createElementVNode("div",{class:"overlay1"},null,-1)),e.createVNode(J,{class:"gide",trigger:"none",placement:m.steps[d.value].placement,modelValue:l.value,"onUpdate:modelValue":u[2]||(u[2]=k=>l.value=k),maxWidth:m.maxWidth},{dropdown:e.withCtx(()=>[e.createElementVNode("header",null,[e.renderSlot(V.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(m.steps[d.value].header)+" ",1),e.createVNode(W,{type:"primary",link:"",onClick:i},{default:e.withCtx(()=>[e.createVNode(F,{"icon-class":m.iconClose},null,8,["icon-class"])]),_:1})])]),e.renderSlot(V.$slots,"default",{},()=>[e.createElementVNode("div",null,e.toDisplayString(m.steps[d.value].text),1),e.createElementVNode("img",{class:e.normalizeClass(/left/.test(m.steps[d.value]?.placement)?"reflect":null),src:m.steps[d.value].img},null,10,Re)]),e.createElementVNode("footer",null,[e.renderSlot(V.$slots,"footer",{},()=>[e.createVNode(W,{type:d.value===0?"info":"warning",text:"",link:"",onClick:u[0]||(u[0]=k=>$(-1))},{default:e.withCtx(()=>[e.renderSlot(V.$slots,"arrow",{},()=>[u[3]||(u[3]=e.createTextVNode("‹",-1))])]),_:3},8,["type"]),e.createVNode(W,{type:"success",onClick:u[1]||(u[1]=k=>$(1)),text:"",link:"",class:"sw-revers"},{default:e.withCtx(()=>[e.renderSlot(V.$slots,"arrow",{},()=>[u[4]||(u[4]=e.createTextVNode("‹",-1))])]),_:3})])])]),default:e.withCtx(()=>[u[5]||(u[5]=e.createElementVNode("div",{class:"hole"},null,-1))]),_:3},8,["placement","modelValue","maxWidth"]),u[8]||(u[8]=e.createElementVNode("div",{class:"overlay2"},null,-1)),u[9]||(u[9]=e.createElementVNode("div",{class:"overlay3"},null,-1))],512))}}},Symbol.toStringTag,{value:"Module"})),Ae=["for"],Ie={key:0,title:"Это поле обязательно для заполнения."},Ye=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus"],He=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"},inputMode:{type:String,default:"text"},required:{type:Boolean,default:!1},maxlength:{type:Number,default:128},minlength:{type:Number,default:1},inputSize:{type:Number,default:60}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(c,{emit:o}){const t=e.useModel(c,"modelValue"),l=c,n=e.ref(null),d=o,b=_=>{d("focusInput"),_.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},m=_=>{t.value?.length===0&&n.value!==null&&n.value.removeAttribute("style")};t.value?.length>0&&n.value!==null&&(n.value.style.top="-.6em");const i=()=>{d("suffix")},$=()=>{d("prefix")},C=e.computed(()=>{let _=["sw-input"];return l.size.length>0&&_.push("sw-"+l.size),l.class.length>0&&_.push(l.class),_});return e.watch(t,(_,S)=>{l.type==="phone"&&(t.value=ee(_,S))}),(_,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(C.value)},[l.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":l.before,onClick:$},null,8,["icon-class"])):e.renderSlot(_.$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",Ie,"*")):e.createCommentVNode("",!0)],8,Ae)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":S[0]||(S[0]=V=>t.value=V),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:b,onBlur:m,maxlength:l.maxlength,minlength:l.minlength,autofocus:l.autofocus},_.$attrs),null,16,Ye),[[e.vModelDynamic,t.value]]),l.after.length>0?(e.openBlock(),e.createBlock(F,{key:3,"icon-class":l.after,onClick:i},null,8,["icon-class"])):e.renderSlot(_.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),We={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(c){const o=e.useModel(c,"modelValue"),t=c,l=e.ref(null),n=e.useSlots(),d=b=>{if(console.log("target - ",b.target),l.value&&o.value){const m=l.value.getBoundingClientRect();b.clientX>=m.left&&b.clientX<=m.right&&b.clientY>=m.top&&b.clientY<=m.bottom||(o.value=!1)}};return e.watch(()=>o.value,b=>{b?(l.value.showModal(),e.nextTick(),window.addEventListener("click",d,!0)):(l.value.close(),window.removeEventListener("click",d))}),e.onUnmounted(()=>{window.removeEventListener("click",d)}),(b,m)=>(e.openBlock(),e.createElementBlock("dialog",{class:e.normalizeClass("sw-message "+t.class),ref_key:"messageRef",ref:l},[t.name.length>0||e.unref(n)?.header?(e.openBlock(),e.createElementBlock("header",We,[e.renderSlot(b.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(W,{link:"",type:"primary",onClick:m[0]||(m[0]=i=>o.value=!1)},{default:e.withCtx(()=>[e.createVNode(F,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(b.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(b.$slots,"footer")])],2))}}},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(c,{emit:o}){const t=c,l=o,n=()=>{l("header")};return(d,b)=>{const m=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass("sw-section "+t.class)},[e.createElementVNode("header",{onClick:n},[e.renderSlot(d.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(m,{"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"})),Xe={class:"popup"},Ge={class:"wrapper"},Je={class:"scrollbar"},Qe=["onClick"],Ze=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(c){const o=e.ref({fullText:""}),t=e.ref(!1),l=e.ref([]),n=e.useModel(c,"modelValue"),d=c;e.watch(n.text,i=>{i.length>3&&(o.value.fullText=i)}),e.watch(o.value.fullText,(i,$)=>{t.value=i.length>3&&i.length>$.length,i.length>3&&b()});const b=()=>{let i="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(o.value.fullText),axios.post(i,{query:o.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then($=>{console.log($.data.suggestions),l.value=$.data.suggestions,l.value.length===1&&m(l.value[0])}).catch($=>{console.log($)})},m=i=>{o.value.fullText=i.value,t.value=!1;const $={};$.text=i.value,$.coords=[Number(i.data.geo_lat),Number(i.data.geo_lon)],$.suggestion=i.data,n.value=$};return(i,$)=>{const C=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Xe,[e.createVNode(C,{size:d.size,modelValue:o.value.fullText,"onUpdate:modelValue":$[0]||($[0]=_=>o.value.fullText=_),placeholder:c.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ge,[e.createElementVNode("ul",Je,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(_,S)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:S,onClick:V=>m(_)},e.toDisplayString(_.value),9,Qe))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Ke={key:0},Q={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(c){const o=c,t=e.computed(()=>{let n=["sw-skeleton-item"];return o.size.length>0&&n.push("sw-"+o.size),o.animate&&n.push("sw-animate"),o.class.length>0&&n.push(o.class),n}),l=e.computed(()=>({width:o.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(l.value)},[o.animate?(e.openBlock(),e.createElementBlock("div",Ke)):e.createCommentVNode("",!0)],6))}},et=Object.freeze(Object.defineProperty({__proto__:null,default:Q},Symbol.toStringTag,{value:"Module"})),tt=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(c){const o=c;return(t,l)=>o.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",o.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(Q,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),lt=["onMouseenter","onMouseleave","onFocus","onBlur","onMousedown","onTouchstart"],ot=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSlider",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:""},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},vertical:{type:Boolean,default:!1},showValue:{type:Boolean,default:!1}},{modelValue:{type:[Number,Array],required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(c){const o=e.useModel(c,"modelValue"),t=c,l=e.ref([]),n=e.ref([]),d=e.computed(()=>{let r=["sw-slider"];return t.size.length>0&&r.push("sw-"+t.size),t.class.length>0&&r.push(t.class),t.vertical&&r.push("vertical"),r}),b=r=>{const a=[...l.value];a[r]=!0,l.value=a},m=r=>{const a=[...l.value];a[r]=!1,l.value=a},i=r=>{const a=document.querySelector(".sw-slider");return a?te(a,t.vertical):t.vertical?{right:"100%",marginRight:"10px"}:{bottom:"100%",marginBottom:"10px"}},$=e.computed(()=>Array.isArray(o.value)),C=e.computed({get(){return $.value?[...o.value]:[o.value]},set(r){$.value?o.value=[...r].sort((a,p)=>a-p):o.value=r[0]}}),_=e.computed(()=>{const r=t.max-t.min;return C.value.map(a=>r===0?0:(a-t.min)/r*100)}),S=e.computed(()=>{if(t.vertical)if($.value){const r=_.value[0]||0,a=_.value[_.value.length-1]||0,p=Math.min(r,a);return{height:`${Math.max(r,a)-p}%`,top:`${p}%`,left:"0",width:"100%"}}else return{height:`${_.value[0]||0}%`,top:"0",left:"0",width:"100%"};else if($.value){const r=_.value[0]||0,a=_.value[_.value.length-1]||0,p=Math.min(r,a);return{width:`${Math.max(r,a)-p}%`,left:`${p}%`,top:"0",height:"100%"}}else return{width:`${_.value[0]||0}%`,left:"0",top:"0",height:"100%"}}),V=e.computed(()=>_.value.map((r,a)=>t.vertical?{top:`${r}%`,zIndex:C.value.length-a}:{left:`${r}%`,zIndex:C.value.length-a}));function u(r){if($.value)return;const a=r.currentTarget.closest(".sw-slider");if(!a)return;const p=a.getBoundingClientRect(),M=t.vertical?(r.clientY-p.top)/p.height:(r.clientX-p.left)/p.width,v=Math.max(0,Math.min(1,M)),P=t.max-t.min;let z=t.min+v*P;const x=Math.round((z-t.min)/t.step);z=t.min+x*t.step,z=Math.max(t.min,Math.min(t.max,z)),C.value=[z],setTimeout(()=>{const f=[...n.value];f[0]=i(),n.value=f},0)}const k=e.ref(!1),y=e.ref(null),w=e.ref(null);function h(r,a){const p=r.target.closest(".sw-slider");p&&(w.value=p.getBoundingClientRect(),y.value=a,k.value=!0,E(r.clientX||r.touches?.[0]?.clientX,r.clientY||r.touches?.[0]?.clientY))}function T(r){if(!k.value)return;r.preventDefault?.();const a=r.clientX||r.touches?.[0]?.clientX,p=r.clientY||r.touches?.[0]?.clientY;E(a,p)}function D(){k.value=!1,y.value=null}function E(r,a){if(!w.value||y.value===null)return;const p=w.value,M=t.vertical?(a-p.top)/p.height:(r-p.left)/p.width,v=Math.max(0,Math.min(1,M)),P=t.max-t.min;let z=t.min+v*P;const x=Math.round((z-t.min)/t.step);z=t.min+x*t.step,z=Math.max(t.min,Math.min(t.max,z));const f=[...C.value];f[y.value]=z,C.value=f,setTimeout(()=>{const s=[...n.value];s[y.value]=i(y.value),n.value=s},0)}return e.onMounted(()=>{window.addEventListener("mousemove",T),window.addEventListener("mouseup",D),window.addEventListener("touchmove",T,{passive:!1}),window.addEventListener("touchend",D),l.value=new Array(C.value.length).fill(!1)}),e.onUnmounted(()=>{window.removeEventListener("mousemove",T),window.removeEventListener("mouseup",D),window.removeEventListener("touchmove",T),window.removeEventListener("touchend",D)}),(r,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value)},[e.createElementVNode("div",{class:"track",onClick:u,onMousedown:a[0]||(a[0]=e.withModifiers(p=>h(p,0),["prevent"])),onTouchstart:a[1]||(a[1]=e.withModifiers(p=>h(p.touches[0],0),["prevent"]))},[e.createElementVNode("div",{class:"fill",style:e.normalizeStyle(S.value)},null,4)],32),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(p,M)=>(e.openBlock(),e.createElementBlock("div",{class:"thumb",key:M,style:e.normalizeStyle(V.value[M]),onMouseenter:v=>b(M),onMouseleave:v=>m(M),onFocus:v=>b(M),onBlur:v=>m(M),onMousedown:e.withModifiers(v=>h(v,M),["prevent"]),onTouchstart:e.withModifiers(v=>h(v.touches[0],M),["prevent"])},[e.renderSlot(r.$slots,"default",{index:M,value:p}),l.value[M]&&c.showValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["tooltip",{"tooltip-vertical":t.vertical}]),style:e.normalizeStyle(i())},e.toDisplayString(p),7)):e.createCommentVNode("",!0)],44,lt))),128))],2))}}},Symbol.toStringTag,{value:"Module"})),nt=["name","id","checked"],rt=["for","data-onlabel","data-offlabel"],st=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(c){const o=e.useModel(c,"modelValue"),t=c,l=e.computed(()=>{let d=["sw-switch"];return t.size.length>0&&d.push("sw-"+t.size),t.checkbox&&d.push("sw-checkbox"),t.class.length>0&&d.push(t.class),d}),n=d=>{o.value=d.target.checked};return(d,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,checked:o.value,onChange:n},null,40,nt),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,rt),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),at={style:{display:"none"}},Z={__name:"SwTableColumn",props:{prop:{type:String,required:!0},label:{type:String,default:""},width:{type:String,default:"auto"},height:{type:String,default:"auto"}},setup(c){return(o,t)=>(e.openBlock(),e.createElementBlock("div",at))}},it=Object.freeze(Object.defineProperty({__proto__:null,default:Z},Symbol.toStringTag,{value:"Module"})),ct={class:"sw-table"},dt=["colspan","rowspan"],pt=["colspan","rowspan"],ut=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTable",props:{data:{type:Array,required:!0}},setup(c){const o=c,t=e.useSlots(),l=e.ref([]);function n(u){const k=[];for(const y of u)if(y.type===Z){const w={...y.props,children:[]},h=y.children?.default?.();h&&h.length>0&&(w.children=n(h)),k.push(w)}return k}function d(u){if(!u||u.length===0)return 1;let k=1;for(const y of u)if(y.children&&y.children.length>0){const w=d(y.children);k=Math.max(k,1+w)}return k}function b(u,k){const y=Array.from({length:k},()=>[]);function w(h,T,D=""){for(let E=0;E<h.length;E++){const r=h[E],a=D?`${D}-${r.prop||E}`:r.prop||E;if(r.children&&r.children.length>0){const p=m(r.children);y[T].push({key:a,label:r.label,colspan:p,rowspan:1,width:r.width,height:r.height}),w(r.children,T+1,a)}else y[T].push({key:r.prop,label:r.label,colspan:1,rowspan:k-T,width:r.width,height:r.height,prop:r.prop})}}return w(u,0),y}function m(u){let k=0;function y(w){for(const h of w)h.children&&h.children.length>0?y(h.children):k++}return y(u),k}function i(u){const k=[];function y(w){for(const h of w)h.children&&h.children.length>0?y(h.children):k.push(h)}return y(u),k}function $(u,k){const y=[],w=new Map;return u.forEach((h,T)=>{const D=[];k.forEach((E,r)=>{const a=`${T}-${E.prop}`;if(w.has(a))return;const p=h[E.prop];let M=p,v=1,P=1,z={};p&&typeof p=="object"&&p!==null&&(M=p.label||p.value||"",v=p.colspan||1,P=p.rowspan||1,z=p.style||{});const x={key:a,label:M,prop:E.prop,colspan:v,rowspan:P,style:z,originalRow:h,rowIndex:T};D.push(x);for(let f=0;f<P;f++)for(let s=0;s<v;s++){if(f===0&&s===0)continue;const g=`${T+f}-${k[r+s]?.prop}`;g&&w.set(g,!0)}}),D.length>0&&y.push(D)}),y}e.onMounted(()=>{const u=t.default?.()||[];l.value=n(u)});const C=e.computed(()=>d(l.value)),_=e.computed(()=>b(l.value,C.value)),S=e.computed(()=>i(l.value)),V=e.computed(()=>$(o.data,S.value));return(u,k)=>(e.openBlock(),e.createElementBlock("table",ct,[e.createElementVNode("thead",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(y,w)=>(e.openBlock(),e.createElementBlock("tr",{key:w},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y,h=>(e.openBlock(),e.createElementBlock("th",{key:h.key,colspan:h.colspan,rowspan:h.rowspan,style:e.normalizeStyle({minWidth:h.width,minHeight:h.height})},e.toDisplayString(h.label),13,dt))),128))]))),128))]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(y,w)=>(e.openBlock(),e.createElementBlock("tr",{key:w},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y,h=>(e.openBlock(),e.createElementBlock("td",{key:h.key,colspan:h.colspan,rowspan:h.rowspan,style:e.normalizeStyle(h.style)},[e.renderSlot(u.$slots,h.prop,{row:h.originalRow,$index:h.rowIndex},()=>[e.createTextVNode(e.toDisplayString(h.label),1)])],12,pt))),128))]))),128))])]))}}},Symbol.toStringTag,{value:"Module"})),mt={key:0},ft=["onClick"],gt=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(c,{emit:o}){e.ref(0);const t=e.ref([]),l=c,n=e.useModel(c,"modelValue"),d=o;function b(i){t.value.push(i)}function m(i){t.value=t.value.filter($=>$!==i)}return e.provide("registerTab",b),e.provide("unregisterTab",m),e.provide("activeTab",n),e.provide("tabs",t),(i,$)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",mt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(C,_)=>(e.openBlock(),e.createElementBlock("span",{key:_,class:e.normalizeClass([{active:n.value===_}]),onClick:S=>{n.value=_,d("tab-click",_)}},e.toDisplayString(C.label||C.title),11,ft))),128))])):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),ht={key:0,class:"tab-content"},wt=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(c){const o=c,t=e.inject("registerTab"),l=e.inject("unregisterTab");e.onMounted(()=>{t({title:o.title,label:o.label})}),e.onUnmounted(()=>{l({title:o.title,label:o.label})});const n=e.inject("activeTab"),d=e.inject("tabs"),b=e.computed(()=>d.value.findIndex(i=>i.title===o.title)),m=e.computed(()=>n.value===b.value);return(i,$)=>m.value?(e.openBlock(),e.createElementBlock("div",ht,[e.renderSlot(i.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));R.Alert=U,R.Library=re,R.components=q,Object.defineProperty(R,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(R,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(R=typeof globalThis<"u"?globalThis:R||self,e(R["component-sw"]={},R.vue))})(this,function(R,e){"use strict";function K(c){return/^(https?:|mailto:|tel:)/.test(c)}function H(c,o){if(arguments.length===0||!c)return null;const t=o||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof c=="object"?l=c:(typeof c=="string"&&(/^[0-9]+$/.test(c)?c=parseInt(c):c=c.replace(new RegExp(/-/gm),"/")),typeof c=="number"&&c.toString().length===10&&(c=c*1e3),l=new Date(c));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,(b,m)=>d[m])}function O(c){let o=c.split(c.match(/\D.*?\D?/));return o[0].length>2?o.join("-")+"T00:00:01":o.reverse().join("-")+"T00:00:01"}function ee(c,o){if(/^\+[0-9]\s/.test(o)&&c.length===2||/^\+0\s/.test(c))return"";if(typeof c>"u"||c.length===0)return c;const t="+0 (___) ___-__-__";let l=0;const n=t.replace(/\D/g,""),d=c.replace(/\D/g,"");let b=t.replace(/[_\d]/g,a=>l<d.length?d.charAt(l++)||n.charAt(l):a);l=b.indexOf("_"),l!==-1&&(l=l<5?3:l,b=b.slice(0,l));let m=t.slice(0,c.length).replace(/_+/g,a=>`\\d{1,${a.length}}`).replace(/[+()]/g,"\\$&");return m=new RegExp(`^${m}$`),b=b.replace(/[-—]$|(\) )$/g,""),!m.test(c)||c.length<5?b:c}function te(c,o=!1){const t=c.getBoundingClientRect();return o?t.left>50?{right:"100%",marginRight:"10px"}:{left:"100%",marginLeft:"10px"}:{bottom:"100%",marginBottom:"10px"}}const le=["href"],F={__name:"SwIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},setup(c){const o=c,t=K(o.iconClass);return(l,n)=>e.unref(t)?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+o.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},l.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon icon-"+(o.className||o.iconClass),"aria-hidden":"true"},l.$attrs),[e.createElementVNode("use",{href:"#"+o.prefix+"-"+o.iconClass},null,8,le)],16))}},oe=Object.freeze(Object.defineProperty({__proto__:null,default:F},Symbol.toStringTag,{value:"Module"})),X={__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:c=>["success","warning","error","info"].includes(c)}},emits:["closed"],setup(c,{emit:o}){const t=c,l=o,n=e.ref(!1);let d=null;const b=()=>{document.querySelector(".sw-alert-wrapper").togglePopover(),n.value=!0,document.querySelector(".sw-alert-wrapper").showPopover(),C()},m=()=>{n.value=!1,l("closed")},a=()=>{d&&(clearTimeout(d),d=null)},$=()=>{C()},C=()=>{d=setTimeout(m,t.duration)};e.onMounted(()=>{b()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const _=e.computed(()=>{const S=["sw-alert"];return t.size.length>0&&S.push(`sw-${t.size}`),t.type.length>0&&S.push(`sw-${t.type}`),t.class.length>0&&S.push(t.class),S});return(S,D)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(_.value),onMouseenter:a,onMouseleave:$},[t.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(S.$slots,"prefix",{key:1}),e.renderSlot(S.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(F,{key:2,"icon-class":t.after,onClick:m},null,8,["icon-class"])):e.renderSlot(S.$slots,"suffix",{key:3}),e.createElementVNode("footer",null,[e.renderSlot(S.$slots,"footer")])],34)):e.createCommentVNode("",!0)]),_:3}))}},ne=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"}));let A=document.querySelector("div.sw-alert-wrapper");function U(c={}){A||(A=document.createElement("div"),A.className="sw-alert-wrapper",A.setAttribute("popover","manual"),document.body.appendChild(A));const{prefix:o,suffix:t,footer:l,...n}=c,d=a=>a==null?null:typeof a=="function"?a:typeof a=="string"?()=>[a]:Array.isArray(a)?()=>a:()=>[a],b=e.createApp({setup(){return()=>e.h(X,{...n,onClose:()=>{A.removeChild(b._container),b.unmount()}},{...o!=null&&{prefix:d(o)},...t!=null&&{suffix:d(t)},...l!=null&&{footer:d(l)}})}}),m=b.mount(document.createElement("div"));A.appendChild(m.$el)}const G=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ne),"./components/SwButton.vue":()=>Promise.resolve().then(()=>se),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>xe),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>ze),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Pe),"./components/SwDropdownNew.vue":()=>Promise.resolve().then(()=>je),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Le),"./components/SwGide.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwIcon.vue":()=>Promise.resolve().then(()=>oe),"./components/SwInput.vue":()=>Promise.resolve().then(()=>He),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>qe),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Ue),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Ze),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>tt),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>et),"./components/SwSlider.vue":()=>Promise.resolve().then(()=>ot),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>st),"./components/SwTable.vue":()=>Promise.resolve().then(()=>ut),"./components/SwTableColumn.vue":()=>Promise.resolve().then(()=>it),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>gt),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>wt)}),q={};for(const c in G){const o=c.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,l)=>l.toUpperCase());q[o]=e.defineAsyncComponent(()=>G[c]())}const re={install(c){Object.keys(q).forEach(o=>{c.component(o,q[o])}),c.config.globalProperties.$Alert=U,c.provide("Alert",U)}},W={__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(c){const o=c,t=()=>{if(o.href.length>0){const n=document.createElement("a");n.setAttribute("href",o.href),n.setAttribute("target","_blank"),n.click()}},l=e.computed(()=>{let n=["sw-button"];return o.size.length>0&&n.push("sw-"+o.size),o.type.length>0&&n.push("sw-"+o.type),o.round&&n.push("sw-round"),o.text&&n.push("sw-text"),o.link&&n.push("sw-link"),o.class.length>0&&n.push(o.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},se=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(c){e.onMounted(()=>{l.value="0px"});const o=e.ref(null),t=c;e.watch(()=>t.visual,()=>n());const l=e.ref("0px"),n=()=>{o.value&&(l.value=t.visual?o.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{n(),o.value&&(d=new ResizeObserver(n),d.observe(o.value))}),e.onBeforeUnmount(()=>{d&&d.disconnect()}),(b,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({maxHeight:l.value}),ref_key:"collapse",ref:o},[e.renderSlot(b.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ie={class:"sw-data-picker"},ce={key:0,class:"month_year"},de={class:"text"},pe={key:1,class:"month_year"},ue={class:"text"},me={key:2,class:"week"},fe={key:3,class:"year"},ge=["onClick"],he={key:4,class:"year"},we=["onClick"],ye={key:5,class:"month"},ke=["onClick"],Se={key:0},be={key:0,class:"month_year"},_e={class:"text"},Ee={key:1,class:"month_year"},Be={class:"text"},$e={key:2,class:"week"},Me={key:3,class:"year"},Ce=["onClick"],De={key:4,class:"year"},Ve=["onClick"],Te={key:5,class:"month"},ve=["onClick"],xe=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(c,{emit:o}){const t=c,l=o,n=e.ref(5),d=e.ref(new Date),b=e.ref(new Date),m=e.ref(new Date().getFullYear()),a=e.ref(new Date().getMonth()),$=e.ref(new Date().getFullYear()),C=e.ref(new Date().getMonth()),_=e.ref(new Date(m.value,a.value+1,1).getMonth()),S=e.ref([]),D=e.ref(0),u=e.ref(-1),k=e.ref(-1),y=e.ref(navigator.language||"ru"),w=/en|zh|ja|he/.test(y.value)?0:1,h=e.computed(()=>Array.from({length:12},(f,s)=>{const g=new Date(2024,s);return new Intl.DateTimeFormat(y.value,{month:"long"}).format(g)})),T=e.ref(Math.floor(m.value/10)*10),V=e.computed(()=>Array.from({length:12},(f,s)=>T.value+s-1));t.data?.startDate?(d.value=new Date(O(t.data.startDate)),m.value=d.value.getFullYear(),a.value=d.value.getMonth()):t.data?.firstDate&&(m.value=new Date(O(t.data.firstDate)).getFullYear(),a.value=new Date(O(t.data.firstDate)).getMonth()),t.data?.endDate&&t.range==="range"&&(b.value=new Date(O(t.data.endDate)),$.value=b.value.getFullYear(),C.value=b.value.getMonth());const E=()=>{S.value=[],D.value=0;const f=new Date(m.value,a.value,0);for(let g=f.getDate()-f.getDay()+w;g<=f.getDate();g++)f.getDay()!==6+w&&(S.value.push({day:g,month:f.getMonth(),year:f.getFullYear(),class:[]}),D.value++);const s=new Date(m.value,a.value+1,0).getDate();for(let g=1;g<=s;g++)S.value.push({day:g,month:a.value,year:m.value,class:[]}),D.value++;if(t.range==="range"){const g=new Date(m.value,a.value+1,1),B=new Date(m.value,a.value+2,0).getDate();for(let N=1;N<=B;N++)S.value.push({day:N,month:g.getMonth(),year:g.getFullYear(),class:[]})}r()},r=()=>{if(!t.data?.holiday)return;const f=(s,g)=>{s.forEach(B=>{const[N,j,I]=B.split("-").map(Number),L=S.value.findIndex(Y=>Y.year===N&&Y.month+1===j&&Y.day===I);L!==-1&&(S.value[L].class[0]=g)})};f(t.data.holiday.preholidays,"preholiday"),f(t.data.holiday.holidays,"weekend"),f(t.data.holiday.holiday,"holiday"),f(t.data.holiday.nowork,"nowork")},i=()=>{if(!t.limitation||t.limitation.length<2)return!1;const f=[...t.limitation].sort((s,g)=>new Date(O(s.startDate)).getTime()-new Date(O(g.startDate)).getTime());for(let s=1;s<f.length;s++){const g=new Date(O(f[s-1].endDate));if(new Date(O(f[s].startDate))<=g)return console.warn("Warning: Диапазоны пересекаются:",f[s-1],f[s]),!0}return!1},p=(f,s,g)=>{if(!t.limitation||t.limitation.length===0)return!0;const B=new Date(f,s,g).getTime();for(let N of t.limitation){const{startDate:j,endDate:I}=N;if(!j&&I){const L=new Date(O(I)).getTime();if(B<=L)return!1}if(j&&!I){const L=new Date(O(j)).getTime();if(B>=L)return!1}if(j&&I){const L=new Date(O(j)).getTime(),Y=new Date(O(I)).getTime();if(L<=Y){if(B>=L&&B<=Y)return!1}else if(B>=L||B<=Y)return!1}}return!0},M=(f,s)=>{const g=H(new Date(f.year,f.month,f.day),"{dd}.{m}.{Y}");t.range==="range"?k.value!==-1?(v(),u.value=s,S.value[s].class[1]="active"):u.value!==-1?(k.value=s,P(u.value,k.value,g)):(u.value=s,S.value[s].class[1]="active"):(u.value!==-1&&(S.value[u.value].class[1]=""),u.value=s,S.value[s].class[1]="active",l("input",{dateStart:g,count:1}))},v=()=>{S.value.forEach(f=>f.class[1]=""),u.value=-1,k.value=-1},P=(f,s,g)=>{let B=H(new Date(S.value[f].year,S.value[f].month,S.value[f].day),"{dd}.{m}.{Y}");if(s>=f){for(let N=f+1;N<s;N++)S.value[N].class[1]="select";l("input",{dateStart:B,dateEnd:g,count:z(f,s)})}else{for(let N=s+1;N<f;N++)S.value[N].class[1]="select";l("input",{dateStart:g,dateEnd:B,count:z(s,f)})}S.value[s].class[1]="active"},z=(f,s)=>{let g=Math.abs(f-s)+1,[B,N]=[Math.min(f,s),Math.max(f,s)];for(let j=B;j<=N;j++)S.value[j]?.class[0]==="holiday"&&g--;return g},x=(f,s)=>{p(f,s)&&(d.value=new Date(f,s,1),m.value=d.value.getFullYear(),a.value=d.value.getMonth(),_.value=new Date(f,s+1,1).getMonth(),(t.range==="year"||t.range==="decades")&&n.value===0?M({year:f,month:s,day:1},8):E())};if(E(),i(),t.data?.startDate&&(u.value=S.value.findIndex(f=>f.day===d.value.getDate()&&f.month===a.value&&f.year===m.value),u.value!==-1&&(S.value[u.value].class[1]="active")),t.data?.endDate&&t.range==="range"&&(k.value=S.value.findIndex(f=>f.day===b.value.getDate()&&f.month===C.value&&f.year===$.value),k.value!==-1)){S.value[k.value].class[1]="active";for(let f=u.value+1;f<k.value;f++)S.value[f].class[1]="select"}return(f,s)=>(e.openBlock(),e.createElementBlock("div",ie,[e.createElementVNode("div",null,[t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("p",ce,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(g=>{T.value-=10,x(m.value,a.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[16]||(s[16]=e.createTextVNode("«",-1))])])]),e.createElementVNode("span",de,e.toDisplayString(V.value[0])+" - "+e.toDisplayString(V.value[11]),1),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[1]||(s[1]=e.withModifiers(g=>{T.value+=10,x(m.value,a.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[17]||(s[17]=e.createTextVNode("«",-1))])])])])):(e.openBlock(),e.createElementBlock("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(g=>x(m.value-1,a.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[18]||(s[18]=e.createTextVNode("«",-1))])]),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(g=>{n.value=0,x(m.value,a.value-1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[19]||(s[19]=e.createTextVNode("‹",-1))])])]),e.createElementVNode("span",ue,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(g=>n.value=3,["prevent"]))},e.toDisplayString(m.value),1),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(g=>n.value=1,["prevent"]))},e.toDisplayString(e.unref(H)(d.value.setMonth(a.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[6]||(s[6]=e.withModifiers(g=>{n.value=0,x(m.value,a.value+1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[20]||(s[20]=e.createTextVNode("‹",-1))])]),e.createElementVNode("button",{class:"sw-revers",onClick:s[7]||(s[7]=e.withModifiers(g=>x(m.value+1,a.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[21]||(s[21]=e.createTextVNode("«",-1))])])])])),t.range==="year"||t.range==="decades"||n.value===1||n.value===3?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(g,B)=>e.createElementVNode("button",{key:B,class:"disabled"},e.toDisplayString(e.unref(H)(new Date(1970,1,g+e.unref(w)),"{D}")),1)),64))])),n.value!==3&&t.range==="year"||n.value===1?(e.openBlock(),e.createElementBlock("div",fe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=0,x(m.value,B)},["prevent"]),class:e.normalizeClass(B===a.value?"active":"")},e.toDisplayString(g),11,ge))),128))])):t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("div",he,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=t.range==="year"?1:0,x(g,a.value)},["prevent"]),class:e.normalizeClass(T.value+B-1===m.value?"active":"")},e.toDisplayString(g),11,we))),128))])):(e.openBlock(),e.createElementBlock("div",ye,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(g,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:B},[B<D.value+(7-new Date(m.value,a.value+1,1).getDay()+e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(g.month===a.value&&p(g.year,g.month,g.day)?g.class:"disabled"),onClick:e.withModifiers(()=>{g.month===a.value&&M(g,B)},["prevent"])},e.toDisplayString(g.day),11,ke)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",Se,[t.range==="decades"||n.value===4?(e.openBlock(),e.createElementBlock("p",be,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[8]||(s[8]=e.withModifiers(g=>{T.value-=10,x(m.value,a.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[22]||(s[22]=e.createTextVNode("«",-1))])])]),e.createElementVNode("span",_e,e.toDisplayString(V.value[0])+" - "+e.toDisplayString(V.value[11]),1),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[9]||(s[9]=e.withModifiers(g=>{T.value+=10,x(m.value,a.value)},["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[23]||(s[23]=e.createTextVNode("«",-1))])])])])):(e.openBlock(),e.createElementBlock("p",Ee,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[10]||(s[10]=e.withModifiers(g=>x(m.value-1,a.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[24]||(s[24]=e.createTextVNode("«",-1))])]),e.createElementVNode("button",{onClick:s[11]||(s[11]=e.withModifiers(g=>{n.value=0,x(m.value,a.value-1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[25]||(s[25]=e.createTextVNode("‹",-1))])])]),e.createElementVNode("span",Be,[e.createElementVNode("button",{onClick:s[12]||(s[12]=e.withModifiers(g=>n.value=4,["prevent"]))},e.toDisplayString(new Date(m.value,a.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:s[13]||(s[13]=e.withModifiers(g=>n.value=2,["prevent"]))},e.toDisplayString(e.unref(H)(d.value.setMonth(a.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:s[14]||(s[14]=e.withModifiers(g=>{n.value=0,x(m.value,a.value+1)},["prevent"]))},[e.renderSlot(f.$slots,"arrow",{},()=>[s[26]||(s[26]=e.createTextVNode("‹",-1))])]),e.createElementVNode("button",{class:"sw-revers",onClick:s[15]||(s[15]=e.withModifiers(g=>x(m.value+1,a.value),["prevent"]))},[e.renderSlot(f.$slots,"double-arrow",{},()=>[s[27]||(s[27]=e.createTextVNode("«",-1))])])])])),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,(g,B)=>e.createElementVNode("button",{key:B,class:"disabled"},e.toDisplayString(e.unref(H)(new Date(1970,1,g+e.unref(w)),"{D}")),1)),64))])),n.value===2?(e.openBlock(),e.createElementBlock("div",Me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=0,x(m.value,B-1)},["prevent"]),class:e.normalizeClass(B===(a.value+1)%12?"active":"")},e.toDisplayString(g),11,Ce))),128))])):n.value===4?(e.openBlock(),e.createElementBlock("div",De,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,(g,B)=>(e.openBlock(),e.createElementBlock("button",{key:B,onClick:e.withModifiers(N=>{n.value=0,x(g,a.value)},["prevent"]),class:e.normalizeClass(T.value+B-1===m.value?"active":"")},e.toDisplayString(g),11,Ve))),128))])):(e.openBlock(),e.createElementBlock("div",Te,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S.value,(g,B)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:B},[B>=D.value-(7+new Date(m.value,a.value+1,1).getDay()-e.unref(w))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(g.month===_.value&&p(g.year,g.month,g.day)?g.class:"disabled"),onClick:e.withModifiers(()=>{g.month===_.value&&M(g,B)},["prevent"])},e.toDisplayString(g.day),11,ve)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),Ne=["id"],J={__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(c,{expose:o}){const t=c,l=e.useModel(c,"modelValue"),n=e.ref(null),d=e.ref(null),b=e.ref({}),m=Math.ceil(Math.random()*1e3),a=e.ref(0),$=e.computed(()=>{let y=["sw-dropdown"];return t.size.length>0&&y.push("sw-"+t.size),t.type.length>0&&y.push("sw-"+t.type),y}),C=new ResizeObserver(()=>{l.value&&a.value++,a.value>99&&(a.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!n.value)return;a.value<2&&C.observe(d.value);let y=window.pageYOffset||document.documentElement.scrollTop,w=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${y}px`,document.body.style.left=`-${w}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=y,document.documentElement.scrollLeft=w;const h=n.value.getBoundingClientRect();let T=window.innerWidth,V=window.innerHeight,E=d.value.offsetHeight,r=d.value.offsetWidth,i=h.left+h.width/2+w,p=h.top+h.height/2+y,M=h.height/2+8;const[v,P]=t.placement.split("-",2);switch(v){case"bottom":p=y+V-E-M-8<p?p-M-E:p+M,P===void 0&&(i-=r/2);break;case"top":p=y+E+M+8>p?p+M:p-M-E,P===void 0&&(i-=r/2);break;case"left":i-r-h.width/2-8<0?i+h.width/2+8+r<T?(i=i+h.width/2+8,p=p-E/2):(p=y+E+M+8>p?p+M:p-M-E,i=i+h.width/2<T?i+h.width/2-r:i-r/2):(i=i-r-h.width/2-8,p=p-E/2);break;case"right":i+h.width/2+8+r>T?i-r-h.width/2-8>0?(i=i-r-h.width/2-8,p=p-E/2):(p=y+E+M+8>p?p+M:p-M-E,i=i-h.width/2):(i=i+h.width/2+8,p=p-E/2);break}switch(P){case"left":i=w+T-8>i-h.width/2+r?i-h.width/2:i-r+h.width/2;break;case"right":i=8<i+h.width/2-r?i-r+h.width/2:i-h.width/2;break}i<0&&(i=0),p<0&&(p=0),b.value={position:"absolute",top:`${p}px`,left:`${i}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const _=()=>{t.trigger==="click"&&(l.value=!l.value)},S=()=>{t.trigger==="hover"&&(l.value=!l.value)},D=()=>{t.trigger==="context"&&(l.value=!l.value)},u=()=>{l.value&&a.value++,a.value>99&&(a.value=1)};o({handleResize:u});const k=y=>{t.trigger!=="none"&&!y.target.closest(`[id="${m}"]`)&&n.value&&!n.value.contains(y.target)&&(l.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",u),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",k,!0):document.documentElement.addEventListener("click",k,!0),window.onscrollend!==void 0?window.addEventListener("scrollend",u):window.addEventListener("scroll",u)}),e.onUnmounted(()=>{C.disconnect(),window.removeEventListener("resize",u),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",k):document.documentElement.removeEventListener("click",k),window.onscrollend!==void 0?window.removeEventListener("scrollend",u):window.removeEventListener("scroll",u)}),(y,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass($.value),onClick:w[0]||(w[0]=h=>_()),onMouseover:w[1]||(w[1]=e.withModifiers(h=>S(),["stop"])),onMouseleave:w[2]||(w[2]=e.withModifiers(h=>S(),["stop"])),onContextmenu:w[3]||(w[3]=e.withModifiers(h=>D(),["stop"])),ref_key:"dropdownRef",ref:n},[e.renderSlot(y.$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(m),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(b.value),tabindex:"-1"},[e.renderSlot(y.$slots,"dropdown")],14,Ne)):e.createCommentVNode("",!0)]))],34))}},ze=Object.freeze(Object.defineProperty({__proto__:null,default:J},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(c){const o=c,t=e.computed(()=>{let l=["sw-dropdown-item"];return o.size.length>0&&l.push("sw-"+o.size),o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,n)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[c.iconBefore.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":c.iconBefore},null,8,["icon-class"])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Oe=["id"],je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownNew",props:e.mergeModels({class:{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(c,{expose:o}){const t=c,l=e.useModel(c,"modelValue"),n=e.ref(null),d=e.ref(null),b=e.ref({}),m=Math.ceil(Math.random()*1e3),a=e.ref(0),$=e.computed(()=>{let k=["sw-dropdown"];return t.type.length>0&&k.push("sw-"+t.type),k}),C=new ResizeObserver(()=>{l.value&&a.value++,a.value>99&&(a.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!n.value)return;a.value<2&&C.observe(d.value);let k=window.pageYOffset||document.documentElement.scrollTop,y=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${k}px`,document.body.style.left=`-${y}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=k,document.documentElement.scrollLeft=y;const w=n.value.getBoundingClientRect();let h=window.innerWidth,T=window.innerHeight,V=d.value.offsetHeight,E=d.value.offsetWidth,r=w.left+w.width/2+y,i=w.top+w.height/2+k,p=w.height/2+8;const[M,v]=t.placement.split("-",2);switch(M){case"bottom":i=k+T-V-p-8<i?i-p-V:i+p,v===void 0&&(r-=E/2);break;case"top":i=k+V+p+8>i?i+p:i-p-V,v===void 0&&(r-=E/2);break;case"left":r-E-w.width/2-8<0?r+w.width/2+8+E<h?(r=r+w.width/2+8,i=i-V/2):(i=k+V+p+8>i?i+p:i-p-V,r=r+w.width/2<h?r+w.width/2-E:r-E/2):(r=r-E-w.width/2-8,i=i-V/2);break;case"right":r+w.width/2+8+E>h?r-E-w.width/2-8>0?(r=r-E-w.width/2-8,i=i-V/2):(i=k+V+p+8>i?i+p:i-p-V,r=r-w.width/2):(r=r+w.width/2+8,i=i-V/2);break}switch(v){case"left":r=y+h-8>r-w.width/2+E?r-w.width/2:r-E+w.width/2;break;case"right":r=8<r+w.width/2-E?r-E+w.width/2:r-w.width/2;break}r<0&&(r=0),i<0&&(i=0),b.value={position:"absolute",top:`${i}px`,left:`${r}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""}},{flush:"post"});const _=()=>{t.trigger==="click"&&(l.value=!l.value)},S=()=>{t.trigger==="hover"&&(l.value=!l.value)},D=()=>{t.trigger==="context"&&(l.value=!l.value)},u=()=>{l.value&&a.value++,a.value>99&&(a.value=1)};return o({handleResize:u}),e.onMounted(()=>{window.addEventListener("resize",u),window.onscrollend!==void 0?window.addEventListener("scrollend",u):window.addEventListener("scroll",u)}),e.onUnmounted(()=>{C.disconnect(),window.removeEventListener("resize",u),window.onscrollend!==void 0?window.removeEventListener("scrollend",u):window.removeEventListener("scroll",u)}),(k,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass($.value),onClick:y[0]||(y[0]=w=>_()),onMouseover:y[1]||(y[1]=e.withModifiers(w=>S(),["stop"])),onMouseleave:y[2]||(y[2]=e.withModifiers(w=>S(),["stop"])),onContextmenu:y[3]||(y[3]=e.withModifiers(w=>D(),["stop"])),ref_key:"dropdownRef",ref:n},[e.renderSlot(k.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("ul",{key:0,popover:"",ref_key:"popupRef",ref:d,id:e.unref(m),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(b.value),tabindex:"-1"},[e.renderSlot(k.$slots,"dropdown")],14,Oe)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Le=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(c){const o=c,t=e.computed(()=>{let l=["sw-form-item"];return o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Re=["src"],Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwGide",props:e.mergeModels({steps:{type:Array,default:()=>[]},iconClose:{type:String,default:""},maxWidth:{type:Number,default:250}},{modelValue:{type:Number,default:0},modelModifiers:{}}),emits:e.mergeModels(["close"],["update:modelValue"]),setup(c,{emit:o}){const t=e.ref(null),l=e.ref(!0),n=e.ref(null),d=e.useModel(c,"modelValue"),b=o,m=c,a=()=>b("close"),$=D=>{const u=d.value+D;u<0?d.value=0:u>=m.steps.length?a():d.value=u};let C=!1;const _=D=>{const u=D.getBoundingClientRect(),k=window.innerHeight;u.top<5?(C=!0,document.documentElement.scrollTop+=u.top-5):u.bottom>k-5&&(C=!0,document.documentElement.scrollTop+=u.bottom-k+5)},S=()=>{if(!n.value||!t.value)return;const D=n.value.getBoundingClientRect(),u=window.pageYOffset||document.documentElement.scrollTop,k=window.pageXOffset||document.documentElement.scrollLeft;t.value.style.gridTemplateRows=`${D.top+u-5}px ${D.height+10}px 1fr`,t.value.style.gridTemplateColumns=`${D.left+k-5}px ${D.width+10}px 1fr`,t.value.style.height=document.documentElement.scrollHeight+"px"};return e.watchEffect(D=>{if(!t.value)return;const u=m.steps[d.value]?.tag;if(!u||!u.trim()){t.value.style.gridTemplateRows="40% 0 1fr",t.value.style.gridTemplateColumns="1fr 0 1fr",t.value.style.height=document.documentElement.scrollHeight+"px";return}if(n.value=document.querySelector(u),!n.value){console.warn(`[SwGuide] Элемент не найден: ${u}`);return}_(n.value);const k=()=>{if(C){C=!1;return}S()};S();const y=new ResizeObserver(S);y.observe(n.value),window.addEventListener("resize",k),window.addEventListener("scroll",k,{passive:!0}),D(()=>{y.disconnect(),window.removeEventListener("resize",k),window.removeEventListener("scroll",k)})}),e.onMounted(()=>window.onload=()=>n.value=document.querySelector(m.steps[d.value]?.tag)),(D,u)=>(e.openBlock(),e.createElementBlock("div",{class:"sw-gide",ref_key:"swGide",ref:t},[u[6]||(u[6]=e.createElementVNode("div",{class:"overlay0"},null,-1)),u[7]||(u[7]=e.createElementVNode("div",{class:"overlay1"},null,-1)),e.createVNode(J,{class:"gide",trigger:"none",placement:m.steps[d.value].placement,modelValue:l.value,"onUpdate:modelValue":u[2]||(u[2]=k=>l.value=k),maxWidth:m.maxWidth},{dropdown:e.withCtx(()=>[e.createElementVNode("header",null,[e.renderSlot(D.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(m.steps[d.value].header)+" ",1),e.createVNode(W,{type:"primary",link:"",onClick:a},{default:e.withCtx(()=>[e.createVNode(F,{"icon-class":m.iconClose},null,8,["icon-class"])]),_:1})])]),e.renderSlot(D.$slots,"default",{},()=>[e.createElementVNode("div",null,e.toDisplayString(m.steps[d.value].text),1),e.createElementVNode("img",{class:e.normalizeClass(/left/.test(m.steps[d.value]?.placement)?"reflect":null),src:m.steps[d.value].img},null,10,Re)]),e.createElementVNode("footer",null,[e.renderSlot(D.$slots,"footer",{},()=>[e.createVNode(W,{type:d.value===0?"info":"warning",text:"",link:"",onClick:u[0]||(u[0]=k=>$(-1))},{default:e.withCtx(()=>[e.renderSlot(D.$slots,"arrow",{},()=>[u[3]||(u[3]=e.createTextVNode("‹",-1))])]),_:3},8,["type"]),e.createVNode(W,{type:"success",onClick:u[1]||(u[1]=k=>$(1)),text:"",link:"",class:"sw-revers"},{default:e.withCtx(()=>[e.renderSlot(D.$slots,"arrow",{},()=>[u[4]||(u[4]=e.createTextVNode("‹",-1))])]),_:3})])])]),default:e.withCtx(()=>[u[5]||(u[5]=e.createElementVNode("div",{class:"hole"},null,-1))]),_:3},8,["placement","modelValue","maxWidth"]),u[8]||(u[8]=e.createElementVNode("div",{class:"overlay2"},null,-1)),u[9]||(u[9]=e.createElementVNode("div",{class:"overlay3"},null,-1))],512))}}},Symbol.toStringTag,{value:"Module"})),Ae=["for"],Ie={key:0,title:"Это поле обязательно для заполнения."},Ye=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus"],He=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"},inputMode:{type:String,default:"text"},required:{type:Boolean,default:!1},maxlength:{type:Number,default:128},minlength:{type:Number,default:1},inputSize:{type:Number,default:60}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(c,{emit:o}){const t=e.useModel(c,"modelValue"),l=c,n=e.ref(null),d=o,b=_=>{d("focusInput"),_.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},m=_=>{t.value?.length===0&&n.value!==null&&n.value.removeAttribute("style")};t.value?.length>0&&n.value!==null&&(n.value.style.top="-.6em");const a=()=>{d("suffix")},$=()=>{d("prefix")},C=e.computed(()=>{let _=["sw-input"];return l.size.length>0&&_.push("sw-"+l.size),l.class.length>0&&_.push(l.class),_});return e.watch(t,(_,S)=>{l.type==="phone"&&(t.value=ee(_,S))}),(_,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(C.value)},[l.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":l.before,onClick:$},null,8,["icon-class"])):e.renderSlot(_.$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",Ie,"*")):e.createCommentVNode("",!0)],8,Ae)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":S[0]||(S[0]=D=>t.value=D),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:b,onBlur:m,maxlength:l.maxlength,minlength:l.minlength,autofocus:l.autofocus},_.$attrs),null,16,Ye),[[e.vModelDynamic,t.value]]),l.after.length>0?(e.openBlock(),e.createBlock(F,{key:3,"icon-class":l.after,onClick:a},null,8,["icon-class"])):e.renderSlot(_.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),We={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(c){const o=e.useModel(c,"modelValue"),t=c,l=e.ref(null),n=e.useSlots(),d=b=>{if(console.log("target - ",b.target),l.value&&o.value){const m=l.value.getBoundingClientRect();b.clientX>=m.left&&b.clientX<=m.right&&b.clientY>=m.top&&b.clientY<=m.bottom||(o.value=!1)}};return e.watch(()=>o.value,b=>{b?(l.value.showModal(),e.nextTick(),window.addEventListener("click",d,!0)):(l.value.close(),window.removeEventListener("click",d))}),e.onUnmounted(()=>{window.removeEventListener("click",d)}),(b,m)=>(e.openBlock(),e.createElementBlock("dialog",{class:e.normalizeClass("sw-message "+t.class),ref_key:"messageRef",ref:l},[t.name.length>0||e.unref(n)?.header?(e.openBlock(),e.createElementBlock("header",We,[e.renderSlot(b.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(W,{link:"",type:"primary",onClick:m[0]||(m[0]=a=>o.value=!1)},{default:e.withCtx(()=>[e.createVNode(F,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(b.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(b.$slots,"footer")])],2))}}},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(c,{emit:o}){const t=c,l=o,n=()=>{l("header")};return(d,b)=>{const m=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass("sw-section "+t.class)},[e.createElementVNode("header",{onClick:n},[e.renderSlot(d.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(m,{"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"})),Xe={class:"popup"},Ge={class:"wrapper"},Je={class:"scrollbar"},Qe=["onClick"],Ze=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(c){const o=e.ref({fullText:""}),t=e.ref(!1),l=e.ref([]),n=e.useModel(c,"modelValue"),d=c;e.watch(n.text,a=>{a.length>3&&(o.value.fullText=a)}),e.watch(o.value.fullText,(a,$)=>{t.value=a.length>3&&a.length>$.length,a.length>3&&b()});const b=()=>{let a="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(o.value.fullText),axios.post(a,{query:o.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then($=>{console.log($.data.suggestions),l.value=$.data.suggestions,l.value.length===1&&m(l.value[0])}).catch($=>{console.log($)})},m=a=>{o.value.fullText=a.value,t.value=!1;const $={};$.text=a.value,$.coords=[Number(a.data.geo_lat),Number(a.data.geo_lon)],$.suggestion=a.data,n.value=$};return(a,$)=>{const C=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Xe,[e.createVNode(C,{size:d.size,modelValue:o.value.fullText,"onUpdate:modelValue":$[0]||($[0]=_=>o.value.fullText=_),placeholder:c.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ge,[e.createElementVNode("ul",Je,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,(_,S)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:S,onClick:D=>m(_)},e.toDisplayString(_.value),9,Qe))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Ke={key:0},Q={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(c){const o=c,t=e.computed(()=>{let n=["sw-skeleton-item"];return o.size.length>0&&n.push("sw-"+o.size),o.animate&&n.push("sw-animate"),o.class.length>0&&n.push(o.class),n}),l=e.computed(()=>({width:o.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(l.value)},[o.animate?(e.openBlock(),e.createElementBlock("div",Ke)):e.createCommentVNode("",!0)],6))}},et=Object.freeze(Object.defineProperty({__proto__:null,default:Q},Symbol.toStringTag,{value:"Module"})),tt=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(c){const o=c;return(t,l)=>o.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",o.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(Q,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),lt=["onMouseenter","onMouseleave","onFocus","onBlur","onMousedown","onTouchstart"],ot=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSlider",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:""},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},vertical:{type:Boolean,default:!1},showValue:{type:Boolean,default:!1}},{modelValue:{type:[Number,Array],required:!0},modelModifiers:{}}),emits:["update:modelValue"],setup(c){const o=e.useModel(c,"modelValue"),t=c,l=e.ref([]),n=e.ref([]),d=e.computed(()=>{let r=["sw-slider"];return t.size.length>0&&r.push("sw-"+t.size),t.class.length>0&&r.push(t.class),t.vertical&&r.push("vertical"),r}),b=r=>{const i=[...l.value];i[r]=!0,l.value=i},m=r=>{const i=[...l.value];i[r]=!1,l.value=i},a=r=>{const i=document.querySelector(".sw-slider");return i?te(i,t.vertical):t.vertical?{right:"100%",marginRight:"10px"}:{bottom:"100%",marginBottom:"10px"}},$=e.computed(()=>Array.isArray(o.value)),C=e.computed({get(){return $.value?[...o.value]:[o.value]},set(r){$.value?o.value=[...r].sort((i,p)=>i-p):o.value=r[0]}}),_=e.computed(()=>{const r=t.max-t.min;return C.value.map(i=>r===0?0:(i-t.min)/r*100)}),S=e.computed(()=>{if(t.vertical)if($.value){const r=_.value[0]||0,i=_.value[_.value.length-1]||0,p=Math.min(r,i);return{height:`${Math.max(r,i)-p}%`,top:`${p}%`,left:"0",width:"100%"}}else return{height:`${_.value[0]||0}%`,top:"0",left:"0",width:"100%"};else if($.value){const r=_.value[0]||0,i=_.value[_.value.length-1]||0,p=Math.min(r,i);return{width:`${Math.max(r,i)-p}%`,left:`${p}%`,top:"0",height:"100%"}}else return{width:`${_.value[0]||0}%`,left:"0",top:"0",height:"100%"}}),D=e.computed(()=>_.value.map((r,i)=>t.vertical?{top:`${r}%`,zIndex:C.value.length-i}:{left:`${r}%`,zIndex:C.value.length-i}));function u(r){if($.value)return;const i=r.currentTarget.closest(".sw-slider");if(!i)return;const p=i.getBoundingClientRect(),M=t.vertical?(r.clientY-p.top)/p.height:(r.clientX-p.left)/p.width,v=Math.max(0,Math.min(1,M)),P=t.max-t.min;let z=t.min+v*P;const x=Math.round((z-t.min)/t.step);z=t.min+x*t.step,z=Math.max(t.min,Math.min(t.max,z)),C.value=[z],setTimeout(()=>{const f=[...n.value];f[0]=a(),n.value=f},0)}const k=e.ref(!1),y=e.ref(null),w=e.ref(null);function h(r,i){const p=r.target.closest(".sw-slider");p&&(w.value=p.getBoundingClientRect(),y.value=i,k.value=!0,E(r.clientX||r.touches?.[0]?.clientX,r.clientY||r.touches?.[0]?.clientY))}function T(r){if(!k.value)return;r.preventDefault?.();const i=r.clientX||r.touches?.[0]?.clientX,p=r.clientY||r.touches?.[0]?.clientY;E(i,p)}function V(){k.value=!1,y.value=null}function E(r,i){if(!w.value||y.value===null)return;const p=w.value,M=t.vertical?(i-p.top)/p.height:(r-p.left)/p.width,v=Math.max(0,Math.min(1,M)),P=t.max-t.min;let z=t.min+v*P;const x=Math.round((z-t.min)/t.step);z=t.min+x*t.step,z=Math.max(t.min,Math.min(t.max,z));const f=[...C.value];f[y.value]=z,C.value=f,setTimeout(()=>{const s=[...n.value];s[y.value]=a(y.value),n.value=s},0)}return e.onMounted(()=>{window.addEventListener("mousemove",T),window.addEventListener("mouseup",V),window.addEventListener("touchmove",T,{passive:!1}),window.addEventListener("touchend",V),l.value=new Array(C.value.length).fill(!1)}),e.onUnmounted(()=>{window.removeEventListener("mousemove",T),window.removeEventListener("mouseup",V),window.removeEventListener("touchmove",T),window.removeEventListener("touchend",V)}),(r,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value)},[e.createElementVNode("div",{class:"track",onClick:u,onMousedown:i[0]||(i[0]=e.withModifiers(p=>h(p,0),["prevent"])),onTouchstart:i[1]||(i[1]=e.withModifiers(p=>h(p.touches[0],0),["prevent"]))},[e.createElementVNode("div",{class:"fill",style:e.normalizeStyle(S.value)},null,4)],32),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(p,M)=>(e.openBlock(),e.createElementBlock("div",{class:"thumb",key:M,style:e.normalizeStyle(D.value[M]),onMouseenter:v=>b(M),onMouseleave:v=>m(M),onFocus:v=>b(M),onBlur:v=>m(M),onMousedown:e.withModifiers(v=>h(v,M),["prevent"]),onTouchstart:e.withModifiers(v=>h(v.touches[0],M),["prevent"])},[e.renderSlot(r.$slots,"default",{index:M,value:p}),l.value[M]&&c.showValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["tooltip",{"tooltip-vertical":t.vertical}]),style:e.normalizeStyle(a())},e.toDisplayString(p),7)):e.createCommentVNode("",!0)],44,lt))),128))],2))}}},Symbol.toStringTag,{value:"Module"})),nt=["name","id","checked"],rt=["for","data-onlabel","data-offlabel"],st=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(c){const o=e.useModel(c,"modelValue"),t=c,l=e.computed(()=>{let d=["sw-switch"];return t.size.length>0&&d.push("sw-"+t.size),t.checkbox&&d.push("sw-checkbox"),t.class.length>0&&d.push(t.class),d}),n=d=>{o.value=d.target.checked};return(d,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,checked:o.value,onChange:n},null,40,nt),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,rt),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),at={style:{display:"none"}},Z={__name:"SwTableColumn",props:{prop:{type:String,required:!0},label:{type:String,default:""},width:{type:String,default:"auto"},height:{type:String,default:"auto"}},setup(c){return(o,t)=>(e.openBlock(),e.createElementBlock("div",at))}},it=Object.freeze(Object.defineProperty({__proto__:null,default:Z},Symbol.toStringTag,{value:"Module"})),ct={class:"sw-table"},dt=["colspan","rowspan"],pt=["colspan","rowspan"],ut=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTable",props:{data:{type:Array,required:!0}},setup(c){const o=c,t=e.useSlots(),l=e.ref([]);function n(u){const k=[];for(const y of u)if(y.type===Z){const w={...y.props,children:[]},h=y.children?.default?.();h&&h.length>0&&(w.children=n(h)),k.push(w)}return k}function d(u){if(!u||u.length===0)return 1;let k=1;for(const y of u)if(y.children&&y.children.length>0){const w=d(y.children);k=Math.max(k,1+w)}return k}function b(u,k){const y=Array.from({length:k},()=>[]);function w(h,T,V=""){for(let E=0;E<h.length;E++){const r=h[E],i=V?`${V}-${r.prop||E}`:r.prop||E;if(r.children&&r.children.length>0){const p=m(r.children);y[T].push({key:i,label:r.label,colspan:p,rowspan:1,width:r.width,height:r.height}),w(r.children,T+1,i)}else y[T].push({key:r.prop,label:r.label,colspan:1,rowspan:k-T,width:r.width,height:r.height,prop:r.prop})}}return w(u,0),y}function m(u){let k=0;function y(w){for(const h of w)h.children&&h.children.length>0?y(h.children):k++}return y(u),k}function a(u){const k=[];function y(w){for(const h of w)h.children&&h.children.length>0?y(h.children):k.push(h)}return y(u),k}function $(u,k){const y=[],w=new Map;return u.forEach((h,T)=>{const V=[];k.forEach((E,r)=>{const i=`${T}-${E.prop}`;if(w.has(i))return;const p=h[E.prop];let M=p,v=1,P=1,z={};p&&typeof p=="object"&&p!==null&&(M=p.label||p.value||"",v=p.colspan||1,P=p.rowspan||1,z=p.style||{});const x={key:i,label:M,prop:E.prop,colspan:v,rowspan:P,style:z,originalRow:h,rowIndex:T};V.push(x);for(let f=0;f<P;f++)for(let s=0;s<v;s++){if(f===0&&s===0)continue;const g=`${T+f}-${k[r+s]?.prop}`;g&&w.set(g,!0)}}),V.length>0&&y.push(V)}),y}e.onMounted(()=>{const u=t.default?.()||[];l.value=n(u)});const C=e.computed(()=>d(l.value)),_=e.computed(()=>b(l.value,C.value)),S=e.computed(()=>a(l.value)),D=e.computed(()=>$(o.data,S.value));return(u,k)=>(e.openBlock(),e.createElementBlock("table",ct,[e.createElementVNode("thead",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(_.value,(y,w)=>(e.openBlock(),e.createElementBlock("tr",{key:w},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y,h=>(e.openBlock(),e.createElementBlock("th",{key:h.key,colspan:h.colspan,rowspan:h.rowspan,style:e.normalizeStyle({minWidth:h.width,minHeight:h.height})},e.toDisplayString(h.label),13,dt))),128))]))),128))]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(D.value,(y,w)=>(e.openBlock(),e.createElementBlock("tr",{key:w},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y,h=>(e.openBlock(),e.createElementBlock("td",{key:h.key,colspan:h.colspan,rowspan:h.rowspan,style:e.normalizeStyle(h.style)},[e.renderSlot(u.$slots,h.prop,{row:h.originalRow,$index:h.rowIndex},()=>[e.createTextVNode(e.toDisplayString(h.label),1)])],12,pt))),128))]))),128))])]))}}},Symbol.toStringTag,{value:"Module"})),mt={key:0},ft=["onClick"],gt=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(c,{emit:o}){e.ref(0);const t=e.ref([]),l=c,n=e.useModel(c,"modelValue"),d=o;function b(a){t.value.push(a)}function m(a){t.value=t.value.filter($=>$!==a)}return e.provide("registerTab",b),e.provide("unregisterTab",m),e.provide("activeTab",n),e.provide("tabs",t),(a,$)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",mt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(C,_)=>(e.openBlock(),e.createElementBlock("span",{key:_,class:e.normalizeClass([{active:n.value===_}]),onClick:S=>{n.value=_,d("tab-click",_)}},e.toDisplayString(C.label||C.title),11,ft))),128))])):e.createCommentVNode("",!0),e.renderSlot(a.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),ht={key:0,class:"tab-content"},wt=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(c){const o=c,t=e.inject("registerTab"),l=e.inject("unregisterTab");e.onMounted(()=>{t({title:o.title,label:o.label})}),e.onUnmounted(()=>{l({title:o.title,label:o.label})});const n=e.inject("activeTab"),d=e.inject("tabs"),b=e.computed(()=>d.value.findIndex(a=>a.title===o.title)),m=e.computed(()=>n.value===b.value);return(a,$)=>m.value?(e.openBlock(),e.createElementBlock("div",ht,[e.renderSlot(a.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));R.Alert=U,R.Library=re,R.components=q,Object.defineProperty(R,Symbol.toStringTag,{value:"Module"})});
|
package/dist/index.js
CHANGED