@studio-west/component-sw 0.3.42 → 0.3.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,196 @@
1
+ import { ref as c, createElementBlock as g, openBlock as m, createElementVNode as l, createCommentVNode as E, withModifiers as M, toDisplayString as y, unref as k, Fragment as x, renderList as S, normalizeClass as W } from "vue";
2
+ import { p as Y } from "./index-DVBROBVH.js";
3
+ const K = { class: "sw-data-picker" }, ee = { class: "month_year" }, te = { class: "text" }, ae = { class: "week" }, ne = { class: "month" }, le = ["onClick"], se = { key: 0 }, oe = { class: "month_year" }, ue = { class: "text" }, re = { class: "week" }, ie = { class: "month" }, ve = ["onClick"], he = {
4
+ __name: "SwDatePicker",
5
+ props: {
6
+ data: Object,
7
+ limitation: {
8
+ type: [Boolean, Array],
9
+ default: () => !1
10
+ },
11
+ range: {
12
+ type: String,
13
+ default: "solid"
14
+ }
15
+ },
16
+ emits: ["input"],
17
+ setup(q, { emit: G }) {
18
+ var V, A, P, R;
19
+ const u = q, I = G, f = c(/* @__PURE__ */ new Date()), T = c(/* @__PURE__ */ new Date()), r = c(Number((/* @__PURE__ */ new Date()).getFullYear())), o = c(Number((/* @__PURE__ */ new Date()).getMonth())), j = c(Number((/* @__PURE__ */ new Date()).getFullYear())), B = c(Number((/* @__PURE__ */ new Date()).getMonth())), z = c(Number((/* @__PURE__ */ new Date()).getMonth()) + 1), s = c([]), F = c(0), v = c(-1), w = c(-1), H = c(navigator.languages || "ru"), _ = /en|zh|ja|he/.test(H.value) ? 0 : 1, D = (t) => {
20
+ let e = t.split(t.match(/\D.*?\D?/));
21
+ return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
22
+ };
23
+ (V = u.data) != null && V.startDate && (f.value = new Date(D(u.data.startDate)), r.value = f.value.getFullYear(), o.value = f.value.getMonth()), (A = u.data) != null && A.endDate && u.range === "range" && (T.value = new Date(D(u.data.endDate)), j.value = T.value.getFullYear(), B.value = T.value.getMonth());
24
+ const L = () => {
25
+ s.value = [], F.value = 0;
26
+ const t = new Date(r.value, o.value, 0);
27
+ for (let a = t.getDate() - t.getDay() + _; a <= t.getDate(); a++)
28
+ t.getDay() !== 6 + _ && (s.value.push({ day: a, month: t.getMonth(), year: t.getFullYear(), class: [] }), F.value++);
29
+ const e = new Date(r.value, o.value + 1, 0).getDate();
30
+ for (let a = 1; a <= e; a++)
31
+ s.value.push({ day: a, month: o.value, year: r.value, class: [] }), F.value++;
32
+ if (u.range === "range") {
33
+ const a = new Date(r.value, o.value + 1, 1), n = new Date(r.value, o.value + 2, 0).getDate();
34
+ for (let d = 1; d <= n; d++)
35
+ s.value.push({ day: d, month: a.getMonth(), year: a.getFullYear(), class: [] });
36
+ }
37
+ J();
38
+ }, J = () => {
39
+ var e;
40
+ if (!((e = u.data) != null && e.holiday)) return;
41
+ const t = (a, n) => {
42
+ a.forEach((d) => {
43
+ const [i, h, p] = d.split("-").map(Number), C = s.value.findIndex(($) => $.year === i && $.month + 1 === h && $.day === p);
44
+ C !== -1 && (s.value[C].class[0] = n);
45
+ });
46
+ };
47
+ t(u.data.holiday.preholidays, "preholiday"), t(u.data.holiday.holidays, "weekend"), t(u.data.holiday.holiday, "holiday"), t(u.data.holiday.nowork, "nowork");
48
+ }, Q = () => {
49
+ if (!u.limitation || u.limitation.length < 2) return !1;
50
+ const t = [...u.limitation].sort(
51
+ (e, a) => new Date(D(e.startDate)).getTime() - new Date(D(a.startDate)).getTime()
52
+ );
53
+ for (let e = 1; e < t.length; e++) {
54
+ const a = new Date(D(t[e - 1].endDate));
55
+ if (new Date(D(t[e].startDate)) <= a)
56
+ return console.warn("Warning: Диапазоны пересекаются:", t[e - 1], t[e]), !0;
57
+ }
58
+ return !1;
59
+ }, N = (t, e, a) => {
60
+ if (!u.limitation || u.limitation.length === 0) return !0;
61
+ const n = new Date(t, e, a).getTime();
62
+ for (let d of u.limitation) {
63
+ const { startDate: i, endDate: h } = d;
64
+ if (!i && h) {
65
+ const p = new Date(D(h)).getTime();
66
+ if (n <= p) return !1;
67
+ }
68
+ if (i && !h) {
69
+ const p = new Date(D(i)).getTime();
70
+ if (n >= p) return !1;
71
+ }
72
+ if (i && h) {
73
+ const p = new Date(D(i)).getTime(), C = new Date(D(h)).getTime();
74
+ if (p <= C) {
75
+ if (n >= p && n <= C) return !1;
76
+ } else if (n >= p || n <= C) return !1;
77
+ }
78
+ }
79
+ return !0;
80
+ }, O = (t, e) => {
81
+ const a = Y(new Date(t.year, t.month, t.day), "{dd}.{m}.{Y}");
82
+ u.range === "range" ? w.value !== -1 ? (U(), v.value = e, s.value[e].class[1] = "active") : v.value !== -1 ? (w.value = e, X(v.value, w.value, a)) : (v.value = e, s.value[e].class[1] = "active") : (v.value !== -1 && (s.value[v.value].class[1] = ""), v.value = e, s.value[e].class[1] = "active", I("input", { dateStart: a, count: 1 }));
83
+ }, U = () => {
84
+ s.value.forEach((t) => t.class[1] = ""), v.value = -1, w.value = -1;
85
+ }, X = (t, e, a) => {
86
+ let n = Y(new Date(s.value[t].year, s.value[t].month, s.value[t].day), "{dd}.{m}.{Y}"), d = Z(t, e);
87
+ if (e >= t)
88
+ for (let i = t + 1; i < e; i++)
89
+ s.value[i].class[1] = "select";
90
+ else
91
+ for (let i = e + 1; i < t; i++)
92
+ s.value[i].class[1] = "select";
93
+ s.value[e].class[1] = "active", I("input", { dateStart: n, dateEnd: a, count: d });
94
+ }, Z = (t, e) => {
95
+ var i;
96
+ let a = Math.abs(t - e) + 1, [n, d] = [Math.min(t, e), Math.max(t, e)];
97
+ for (let h = n; h <= d; h++)
98
+ ((i = s.value[h]) == null ? void 0 : i.class[0]) === "holiday" && a--;
99
+ return a;
100
+ }, b = (t, e) => {
101
+ N(t, e) && (f.value = new Date(t, e, 1), r.value = f.value.getFullYear(), o.value = f.value.getMonth(), L());
102
+ };
103
+ if (L(), Q() && console.error("Ошибка: Найдены пересекающиеся диапазоны!"), (P = u.data) != null && P.startDate && (v.value = s.value.findIndex((t) => t.day === f.value.getDate() && t.month === o.value && t.year === r.value), v.value !== -1 && (s.value[v.value].class[1] = "active")), (R = u.data) != null && R.endDate && u.range === "range" && (w.value = s.value.findIndex((t) => t.day === T.value.getDate() && t.month === B.value && t.year === j.value), w.value !== -1)) {
104
+ s.value[w.value].class[1] = "active";
105
+ for (let t = v.value + 1; t < w.value; t++)
106
+ s.value[t].class[1] = "select";
107
+ }
108
+ return (t, e) => (m(), g("div", K, [
109
+ l("div", null, [
110
+ l("p", ee, [
111
+ l("span", null, [
112
+ l("button", {
113
+ onClick: e[0] || (e[0] = M((a) => b(r.value - 1, o.value), ["prevent"]))
114
+ }, "«"),
115
+ l("button", {
116
+ onClick: e[1] || (e[1] = M((a) => b(r.value, o.value - 1), ["prevent"]))
117
+ }, "‹")
118
+ ]),
119
+ l("span", te, [
120
+ l("button", null, y(r.value), 1),
121
+ l("button", null, y(k(Y)(f.value.setMonth(o.value), "{F}")), 1)
122
+ ]),
123
+ l("span", null, [
124
+ l("button", {
125
+ onClick: e[2] || (e[2] = M((a) => b(r.value, o.value + 1), ["prevent"]))
126
+ }, "›"),
127
+ l("button", {
128
+ onClick: e[3] || (e[3] = M((a) => b(r.value + 1, o.value), ["prevent"]))
129
+ }, "»")
130
+ ])
131
+ ]),
132
+ l("div", ae, [
133
+ (m(), g(x, null, S(7, (a, n) => l("button", {
134
+ key: n,
135
+ class: "disabled"
136
+ }, y(k(Y)(new Date(1970, 1, a + k(_)), "{D}")), 1)), 64))
137
+ ]),
138
+ l("div", ne, [
139
+ (m(!0), g(x, null, S(s.value, (a, n) => (m(), g(x, { key: n }, [
140
+ n < F.value + (7 - new Date(r.value, o.value + 1, 1).getDay() + k(_)) % 7 ? (m(), g("button", {
141
+ key: 0,
142
+ class: W(a.month === o.value && N(a.year, a.month, a.day) ? a.class : "disabled"),
143
+ onClick: () => {
144
+ a.month === o.value && O(a, n);
145
+ }
146
+ }, y(a.day), 11, le)) : E("", !0)
147
+ ], 64))), 128))
148
+ ])
149
+ ]),
150
+ u.range === "range" ? (m(), g("div", se, [
151
+ l("p", oe, [
152
+ l("span", null, [
153
+ l("button", {
154
+ onClick: e[4] || (e[4] = M((a) => b(r.value - 1, o.value), ["prevent"]))
155
+ }, "«"),
156
+ l("button", {
157
+ onClick: e[5] || (e[5] = M((a) => b(r.value, o.value - 1), ["prevent"]))
158
+ }, "‹")
159
+ ]),
160
+ l("span", ue, [
161
+ l("button", null, y(new Date(r.value, o.value + 1).getFullYear()), 1),
162
+ l("button", null, y(k(Y)(f.value.setMonth(o.value + 1), "{F}")), 1)
163
+ ]),
164
+ l("span", null, [
165
+ l("button", {
166
+ onClick: e[6] || (e[6] = M((a) => b(r.value, o.value + 1), ["prevent"]))
167
+ }, "›"),
168
+ l("button", {
169
+ onClick: e[7] || (e[7] = M((a) => b(r.value + 1, o.value), ["prevent"]))
170
+ }, "»")
171
+ ])
172
+ ]),
173
+ l("div", re, [
174
+ (m(), g(x, null, S(7, (a, n) => l("button", {
175
+ key: n,
176
+ class: "disabled"
177
+ }, y(k(Y)(new Date(1970, 1, a + k(_)), "{D}")), 1)), 64))
178
+ ]),
179
+ l("div", ie, [
180
+ (m(!0), g(x, null, S(s.value, (a, n) => (m(), g(x, { key: n }, [
181
+ n >= F.value - (7 + new Date(r.value, o.value + 1, 1).getDay() - k(_)) % 7 ? (m(), g("button", {
182
+ key: 0,
183
+ class: W(a.month === z.value.getMonth() && N(a.year, a.month, a.day) ? a.class : "disabled"),
184
+ onClick: () => {
185
+ a.month === z.value.getMonth() && O(a, n);
186
+ }
187
+ }, y(a.day), 11, ve)) : E("", !0)
188
+ ], 64))), 128))
189
+ ])
190
+ ])) : E("", !0)
191
+ ]));
192
+ }
193
+ };
194
+ export {
195
+ he as default
196
+ };
@@ -1,5 +1,5 @@
1
1
  import { mergeModels as y, useModel as V, ref as C, computed as I, watch as M, createElementBlock as d, openBlock as i, normalizeClass as A, createBlock as v, renderSlot as _, createCommentVNode as x, withDirectives as E, createTextVNode as N, toDisplayString as R, createElementVNode as T, vModelDynamic as F } from "vue";
2
- import { S } from "./index-CUv3Avr3.js";
2
+ import { S } from "./index-DVBROBVH.js";
3
3
  const O = ["for"], U = {
4
4
  key: 0,
5
5
  title: "Это поле обязательно для заполнения."
@@ -1 +1 @@
1
- @charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #FFE603;--sw-color-info: #C0C0C0;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-preholiday: #FFE78070;--sw-color-weekend: #ff808070;--sw-color-select: #007bff70;--sw-color-holiday: #ff0000;--sw-color-nowork: #ff0000;--sw-color-active: #007bff;--sw-text-color-primary: #333333;--sw-text-color-secondary: #4C4C4C;--sw-text-color-third: #818181;--sw-text-color-revers: white;--sw-bg-color: #f4f4f4;--sw-bg-color-page: white;--sw-bg-color-second: #FAFAFA;--sw-border-color: #D6D6D6;--sw-border-color-input: #CECECE;--sw-font-size: 1rem;--sw-font-size-small: .875rem;--sw-font-size-large: 1.125rem;--sw-font-size-big: 2.8rem;--sw-border-radius: .625rem;--sw-border-radius-small: .25rem;--sw-border-round: 3.625rem;--sw-component-size-base: 3rem;--sw-component-size-small: 1.625rem;--sw-component-size-large: 3.5rem;--sw-component-size-big: 10.5rem;font-family:Montserrat,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--sw-text-color-primary);background-color:var(--sw-bg-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root.dark{--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}@media (prefers-color-scheme: dark){:root:not(.light){--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}}.sw-alert-wrapper{position:fixed;z-index:1;top:0}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin-top:1rem;border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers)}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.sw-tabs{-webkit-user-select:none;user-select:none}.sw-tabs>header{display:flex;border-bottom:2px solid var(--sw-color-info);color:var(--sw-color-info);-webkit-user-select:none;user-select:none;font-size:var(--sw-font-size-small);font-weight:400;margin-bottom:1.25rem;transition:all .6s ease-out}.sw-tabs>header span{position:relative;top:2px;border-radius:0;padding:5px;cursor:pointer;border:none;background:none;outline:none}.sw-tabs>header span.active{border-bottom:2px solid var(--sw-color-primary);color:var(--sw-color-primary);font-weight:700}.sw-tabs>header span:hover:not(.active){color:var(--sw-border-color)}.sw-input{display:flex;align-items:center;position:relative;gap:0 1.75rem;padding:0 1.2em;border:1px solid var(--sw-border-color-input);border-radius:var(--sw-border-radius)}.sw-input label{text-align:left;transition:all .2s .2s linear;position:absolute;font-size:var(--sw-font-size-large);line-height:1;top:1.1rem;background:var(--sw-bg-color-page)}.sw-input label:hover{top:.8rem}.sw-input label+input::placeholder{opacity:0}.sw-input input{line-height:var(--sw-component-size-base);border:none;width:100%;font-size:var(--sw-font-size-large);background:none;outline:none}.sw-input input::placeholder{color:var(--sw-text-color-secondary);opacity:1;transition:opacity .2s .2s linear}.sw-input input:focus::placeholder{opacity:1}.sw-input .svg-icon{font-size:20px;color:var(--sw-text-color-third)}.sw-input>svg+label{left:4rem}.sw-input.sw-small label{top:.3rem}.sw-input.sw-small label:hover{top:0}.sw-input.sw-small input{line-height:var(--sw-component-size-small)}.sw-input.sw-large label{top:1.22rem}.sw-input.sw-large label:hover{top:1rem}.sw-input.sw-large input{line-height:var(--sw-component-size-large)}.sw-button{border-radius:1rem;border:1px solid var(--sw-color-default);padding:0 1.2em;min-height:var(--sw-component-size-base);font-size:var(--sw-font-size);font-weight:500;cursor:pointer;transition:border-color .25s;background-color:var(--sw-color-default);color:var(--sw-text-color-revers)}.sw-form-item{display:flex;justify-content:space-between;font-size:var(--sw-font-size-small);color:var(--sw-text-color-secondary);gap:1rem}.sw-form-item.sw-start{justify-content:flex-start}.sw-form-item.sw-end{justify-content:flex-end}.sw-form-item.sw-around{justify-content:space-around}.sw-form-item.sw-center{justify-content:center}.sw-dropdown{position:relative;display:inline-block;outline:none}.sw-dropdown-popup{z-index:3;padding:8px;min-width:200px;margin:0;-webkit-user-select:none;user-select:none;background-color:var(--sw-bg-color-second);border:1px solid var(--sw-border-color);border-radius:4px;box-shadow:0 2px 8px #0000001a}.sw-dropdown-item{display:block;outline:none;-webkit-user-select:none;user-select:none}.sw-dropdown-item svg{margin-right:.5rem}.sw-dropdown-item:hover{color:var(--sw-color-primary)}.sw-collapse{transition:all .3s ease-out;overflow:hidden;box-sizing:border-box;margin:0}.sw-switch{display:inline-flex;align-items:center;box-sizing:border-box;-webkit-user-select:none;user-select:none}.sw-switch>input{display:none}.sw-switch>input:checked+label{background-color:var(--sw-color-primary)}.sw-switch>input:checked+label:before{color:var(--sw-text-color-revers);content:attr(data-onlabel);left:.5rem;right:auto}.sw-switch>input:checked+label:after{background:#f7f7f7;left:2.125rem}.sw-switch>label{background-color:var(--sw-color-info);border-radius:1rem;cursor:pointer;flex:0 0 4rem;height:1.75rem;margin:.5rem;position:relative;transition:all .3s;width:4rem}.sw-switch>label:before{color:var(--sw-text-color-revers);content:attr(data-offlabel);display:block;font-size:1rem;position:absolute;right:.5rem;transition:all .3s}.sw-switch>label:after{background:var(--sw-text-color-revers);border:1px solid var(--sw-color-info);border-radius:50%;content:"";height:2rem;left:-.125rem;position:absolute;top:-.125rem;transition:all .3s;width:2rem}.sw-switch.sw-small>label{width:3.125rem;flex:0 0 3.125rem}.sw-switch.sw-small>label:before{content:""}.sw-switch.sw-small>label:after{content:"";left:.15rem;top:.125rem;width:1.375rem;height:1.375rem}.sw-switch.sw-small>input:checked+label:before{content:""}.sw-switch.sw-small>input:checked+label:after{left:1.475rem}.sw-switch.sw-checkbox label{border-radius:var(--sw-border-radius-small);background:var(--sw-bg-color-pag);border:1px solid var(--sw-border-color-input);height:.875rem;flex:0 0 .875rem}.sw-switch.sw-checkbox label:after{content:none}.sw-switch.sw-checkbox>input:checked+label{background:var(--sw-bg-color-page)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";color:var(--sw-color-primary);top:-.9rem;left:0;font-size:1.6rem}.sw-skeleton{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-end}.sw-skeleton-item{min-height:var(--sw-component-size-base);width:100%;background:var(--sw-bg-color-second);border-radius:var(--sw-border-radius);border:1px solid var(--sw-bg-color);box-sizing:border-box;overflow:hidden;position:relative}.sw-skeleton-item>div{height:100%;width:10px;background:var(--sw-border-color-input);display:inline-block;animation:sw-skeleton 3s linear infinite normal;position:absolute;transform:skew(-20deg);box-shadow:0 0 20px 20px var(--sw-border-color-input)}.sw-message{position:fixed;z-index:3;background-color:var(--sw-bg-color-page);border:1px solid var(--sw-border-color);border-radius:var(--sw-border-radius);padding:1.875rem;box-sizing:border-box;top:50%;left:50%;transform:translateY(-50%) translate(-50%);min-width:20rem;max-width:95%;max-height:95%}.sw-message>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.sw-message>footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sw-modal-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}.sw-data-picker{display:flex}.sw-data-picker .month_year{display:flex;justify-content:space-around;align-items:center}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker>div:not(:first-child){margin-left:2rem}.sw-data-picker button{height:30px;text-align:center;line-height:30px;cursor:pointer;background:none;border:none;border-radius:.2rem;transition:all .3s ease}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--el-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-text{color:var(--sw-color-default);background:none}.sw-text.sw-primary{color:var(--sw-color-primary)}.sw-text.sw-success{color:var(--sw-color-success)}.sw-text.sw-info{color:var(--sw-color-info)}.sw-text.sw-warning{color:var(--sw-color-warning)}.sw-text.sw-danger{color:var(--sw-color-danger)}.sw-link{background:none;border:none;padding:0;color:var(--sw-text-color-secondary);min-height:1em}.sw-link:hover.sw-primary{color:var(--sw-color-primary)}.sw-link:hover.sw-success{color:var(--sw-color-success)}.sw-link:hover.sw-info{color:var(--sw-color-info)}.sw-link:hover.sw-warning{color:var(--sw-color-warning)}.sw-link:hover.sw-danger{color:var(--sw-color-danger)}.sw-wrapper-alert{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}@keyframes sw-skeleton{0%{left:-50px}to{left:calc(50px + 100%)}}.popup{position:relative}.popup .wrapper{position:absolute;z-index:1;list-style:none;font-size:.8rem;line-height:1.2;word-break:break-word;padding:0;margin:10px 0 0}.popup .wrapper :before{content:"";border-bottom-color:transparent!important;border-left-color:transparent!important;border:1px solid var(--el-border-color-light);background:var(--el-bg-color-overlay);right:50%;top:-6px;position:absolute;width:10px;height:10px;z-index:1;transform:rotate(-45deg)}.popup .scrollbar{box-shadow:0 0 0 1px var(--el-border-color);border-radius:var(--el-border-radius-base);background:#fff;padding:.5rem 0;margin:0}.popup .scrollbar li{display:flex;align-items:start;white-space:nowrap;list-style:none;line-height:22px;padding:5px 16px;margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);cursor:pointer;outline:none}.popup .scrollbar li:not(.is-disabled):focus{background:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}
1
+ @charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #8d800d;--sw-color-info: #C0C0C0;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-preholiday: #FFE78070;--sw-color-weekend: #ff808070;--sw-color-select: #007bff70;--sw-color-holiday: #ff0000;--sw-color-nowork: #ff0000;--sw-color-active: #007bff;--sw-text-color-primary: #333333;--sw-text-color-secondary: #4C4C4C;--sw-text-color-third: #818181;--sw-text-color-revers: white;--sw-bg-color: #f4f4f4;--sw-bg-color-page: white;--sw-bg-color-second: #FAFAFA;--sw-border-color: #D6D6D6;--sw-border-color-input: #CECECE;--sw-font-size: 1rem;--sw-font-size-small: .875rem;--sw-font-size-large: 1.125rem;--sw-font-size-big: 2.8rem;--sw-border-radius: .625rem;--sw-border-radius-small: .25rem;--sw-border-round: 3.625rem;--sw-component-size-base: 3rem;--sw-component-size-small: 1.625rem;--sw-component-size-large: 3.5rem;--sw-component-size-big: 10.5rem;font-family:Montserrat,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--sw-text-color-primary);background-color:var(--sw-bg-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root.dark{--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}@media (prefers-color-scheme: dark){:root:not(.light){--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}}.sw-alert-wrapper{position:fixed;z-index:1;top:0}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin-top:1rem;border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers)}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.sw-tabs{-webkit-user-select:none;user-select:none}.sw-tabs>header{display:flex;border-bottom:2px solid var(--sw-color-info);color:var(--sw-color-info);-webkit-user-select:none;user-select:none;font-size:var(--sw-font-size-small);font-weight:400;margin-bottom:1.25rem;transition:all .6s ease-out}.sw-tabs>header span{position:relative;top:2px;border-radius:0;padding:5px;cursor:pointer;border:none;background:none;outline:none}.sw-tabs>header span.active{border-bottom:2px solid var(--sw-color-primary);color:var(--sw-color-primary);font-weight:700}.sw-tabs>header span:hover:not(.active){color:var(--sw-border-color)}.sw-input{display:flex;align-items:center;position:relative;gap:0 1.75rem;padding:0 1.2em;border:1px solid var(--sw-border-color-input);border-radius:var(--sw-border-radius)}.sw-input label{text-align:left;transition:all .2s .2s linear;position:absolute;font-size:var(--sw-font-size-large);line-height:1;top:1.1rem;background:var(--sw-bg-color-page)}.sw-input label:hover{top:.8rem}.sw-input label+input::placeholder{opacity:0}.sw-input input{line-height:var(--sw-component-size-base);border:none;width:100%;font-size:var(--sw-font-size-large);background:none;outline:none}.sw-input input::placeholder{color:var(--sw-text-color-secondary);opacity:1;transition:opacity .2s .2s linear}.sw-input input:focus::placeholder{opacity:1}.sw-input .svg-icon{font-size:20px;color:var(--sw-text-color-third)}.sw-input>svg+label{left:4rem}.sw-input.sw-small label{top:.3rem}.sw-input.sw-small label:hover{top:0}.sw-input.sw-small input{line-height:var(--sw-component-size-small)}.sw-input.sw-large label{top:1.22rem}.sw-input.sw-large label:hover{top:1rem}.sw-input.sw-large input{line-height:var(--sw-component-size-large)}.sw-button{border-radius:1rem;border:1px solid var(--sw-color-default);padding:0 1.2em;min-height:var(--sw-component-size-base);font-size:var(--sw-font-size);font-weight:500;cursor:pointer;transition:border-color .25s;background-color:var(--sw-color-default);color:var(--sw-text-color-revers)}.sw-form-item{display:flex;justify-content:space-between;font-size:var(--sw-font-size-small);color:var(--sw-text-color-secondary);gap:1rem}.sw-form-item.sw-start{justify-content:flex-start}.sw-form-item.sw-end{justify-content:flex-end}.sw-form-item.sw-around{justify-content:space-around}.sw-form-item.sw-center{justify-content:center}.sw-dropdown{position:relative;display:inline-block;outline:none}.sw-dropdown-popup{z-index:3;padding:8px;min-width:200px;margin:0;-webkit-user-select:none;user-select:none;background-color:var(--sw-bg-color-second);border:1px solid var(--sw-border-color);border-radius:4px;box-shadow:0 2px 8px #0000001a}.sw-dropdown-item{display:block;outline:none;-webkit-user-select:none;user-select:none}.sw-dropdown-item svg{margin-right:.5rem}.sw-dropdown-item:hover{color:var(--sw-color-primary)}.sw-collapse{transition:all .3s ease-out;overflow:hidden;box-sizing:border-box;margin:0}.sw-switch{display:inline-flex;align-items:center;box-sizing:border-box;-webkit-user-select:none;user-select:none}.sw-switch>input{display:none}.sw-switch>input:checked+label{background-color:var(--sw-color-primary)}.sw-switch>input:checked+label:before{color:var(--sw-text-color-revers);content:attr(data-onlabel);left:.5rem;right:auto}.sw-switch>input:checked+label:after{background:#f7f7f7;left:2.125rem}.sw-switch>label{background-color:var(--sw-color-info);border-radius:1rem;cursor:pointer;flex:0 0 4rem;height:1.75rem;margin:.5rem;position:relative;transition:all .3s;width:4rem}.sw-switch>label:before{color:var(--sw-text-color-revers);content:attr(data-offlabel);display:block;font-size:1rem;position:absolute;right:.5rem;transition:all .3s}.sw-switch>label:after{background:var(--sw-text-color-revers);border:1px solid var(--sw-color-info);border-radius:50%;content:"";height:2rem;left:-.125rem;position:absolute;top:-.125rem;transition:all .3s;width:2rem}.sw-switch.sw-small>label{width:3.125rem;flex:0 0 3.125rem}.sw-switch.sw-small>label:before{content:""}.sw-switch.sw-small>label:after{content:"";left:.15rem;top:.125rem;width:1.375rem;height:1.375rem}.sw-switch.sw-small>input:checked+label:before{content:""}.sw-switch.sw-small>input:checked+label:after{left:1.475rem}.sw-switch.sw-checkbox label{border-radius:var(--sw-border-radius-small);background:var(--sw-bg-color-pag);border:1px solid var(--sw-border-color-input);height:.875rem;flex:0 0 .875rem}.sw-switch.sw-checkbox label:after{content:none}.sw-switch.sw-checkbox>input:checked+label{background:var(--sw-bg-color-page)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";color:var(--sw-color-primary);top:-.9rem;left:0;font-size:1.6rem}.sw-skeleton{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-end}.sw-skeleton-item{min-height:var(--sw-component-size-base);width:100%;background:var(--sw-bg-color-second);border-radius:var(--sw-border-radius);border:1px solid var(--sw-bg-color);box-sizing:border-box;overflow:hidden;position:relative}.sw-skeleton-item>div{height:100%;width:10px;background:var(--sw-border-color-input);display:inline-block;animation:sw-skeleton 3s linear infinite normal;position:absolute;transform:skew(-20deg);box-shadow:0 0 20px 20px var(--sw-border-color-input)}.sw-message{position:fixed;z-index:3;background-color:var(--sw-bg-color-page);border:1px solid var(--sw-border-color);border-radius:var(--sw-border-radius);padding:1.875rem;box-sizing:border-box;top:50%;left:50%;transform:translateY(-50%) translate(-50%);min-width:20rem;max-width:95%;max-height:95%}.sw-message>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.sw-message>footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sw-modal-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}.sw-data-picker{display:flex}.sw-data-picker .month_year{display:flex;justify-content:space-around;align-items:center}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker>div:not(:first-child){margin-left:2rem}.sw-data-picker button{height:30px;text-align:center;line-height:30px;cursor:pointer;background:none;border:none;border-radius:.2rem;transition:all .3s ease}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--el-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-text{color:var(--sw-color-default);background:none}.sw-text.sw-primary{color:var(--sw-color-primary)}.sw-text.sw-success{color:var(--sw-color-success)}.sw-text.sw-info{color:var(--sw-color-info)}.sw-text.sw-warning{color:var(--sw-color-warning)}.sw-text.sw-danger{color:var(--sw-color-danger)}.sw-link{background:none;border:none;padding:0;color:var(--sw-text-color-secondary);min-height:1em}.sw-link:hover.sw-primary{color:var(--sw-color-primary)}.sw-link:hover.sw-success{color:var(--sw-color-success)}.sw-link:hover.sw-info{color:var(--sw-color-info)}.sw-link:hover.sw-warning{color:var(--sw-color-warning)}.sw-link:hover.sw-danger{color:var(--sw-color-danger)}.sw-wrapper-alert{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}@keyframes sw-skeleton{0%{left:-50px}to{left:calc(50px + 100%)}}.popup{position:relative}.popup .wrapper{position:absolute;z-index:1;list-style:none;font-size:.8rem;line-height:1.2;word-break:break-word;padding:0;margin:10px 0 0}.popup .wrapper :before{content:"";border-bottom-color:transparent!important;border-left-color:transparent!important;border:1px solid var(--el-border-color-light);background:var(--el-bg-color-overlay);right:50%;top:-6px;position:absolute;width:10px;height:10px;z-index:1;transform:rotate(-45deg)}.popup .scrollbar{box-shadow:0 0 0 1px var(--el-border-color);border-radius:var(--el-border-radius-base);background:#fff;padding:.5rem 0;margin:0}.popup .scrollbar li{display:flex;align-items:start;white-space:nowrap;list-style:none;line-height:22px;padding:5px 16px;margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);cursor:pointer;outline:none}.popup .scrollbar li:not(.is-disabled):focus{background:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}
@@ -148,7 +148,7 @@ function w(e = {}) {
148
148
  }), t = n.mount(document.createElement("div"));
149
149
  l.appendChild(t.$el);
150
150
  }
151
- const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-DxAVOWF1.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-oQvC3PAS.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-HVAlEbEM.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CfnEis1u.js"), "./components/SwInput.vue": () => import("./SwInput-Knaf5sYo.js"), "./components/SwMessage.vue": () => import("./SwMessage-BB2yKYsR.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSelect.vue": () => import("./SwSelect-0vcmQ8qv.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-BxSLWRTx.js"), "./components/SwTabs.vue": () => import("./SwTabs-DgvDpw7u.js"), "./components/SwTabsNew.vue": () => import("./SwTabsNew-Dr5Vyz6M.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-BUUmFjh7.js"), "./components/SwTabsPaneNew.vue": () => import("./SwTabsPaneNew-DFPu-sRT.js") }), d = {};
151
+ const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-DxAVOWF1.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-DxDM0h5b.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-HVAlEbEM.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CfnEis1u.js"), "./components/SwInput.vue": () => import("./SwInput-DUCowmhB.js"), "./components/SwMessage.vue": () => import("./SwMessage-BB2yKYsR.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSelect.vue": () => import("./SwSelect-0vcmQ8qv.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-BxSLWRTx.js"), "./components/SwTabs.vue": () => import("./SwTabs-DgvDpw7u.js"), "./components/SwTabsNew.vue": () => import("./SwTabsNew-Dr5Vyz6M.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-BUUmFjh7.js"), "./components/SwTabsPaneNew.vue": () => import("./SwTabsPaneNew-DFPu-sRT.js") }), d = {};
152
152
  for (const e in h) {
153
153
  const n = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (t, o) => o.toUpperCase());
154
154
  d[n] = O(() => h[e]());
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- (function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T["component-sw"]={},T.vue))})(this,function(T,e){"use strict";function X(a){return/^(https?:|mailto:|tel:)/.test(a)}function j(a,l){if(arguments.length===0||!a)return null;const t=l||"{Y}-{m}-{d} {G}:{i}:{s}";let o;typeof a=="object"?o=a:(typeof a=="string"&&(/^[0-9]+$/.test(a)?a=parseInt(a):a=a.replace(new RegExp(/-/gm),"/")),typeof a=="number"&&a.toString().length===10&&(a=a*1e3),o=new Date(a));const n="ru-RU",d={Y:o.getFullYear(),m:(o.getMonth()+1).toString().padStart(2,"0"),d:o.getDate(),dd:o.getDate().toString().padStart(2,"0"),G:o.getHours(),H:o.getHours().toString().padStart(2,"0"),i:o.getMinutes().toString().padStart(2,"0"),s:o.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(n,{weekday:"short"}).format(o),F:new Intl.DateTimeFormat(n,{month:"long"}).format(o),M:new Intl.DateTimeFormat(n,{month:"short"}).format(o)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(i,p)=>d[p])}const J=(a,l)=>{const t=a.__vccOpts||a;for(const[o,n]of l)t[o]=n;return t},Q={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return X(this.iconClass)}}},Z=["href"];function K(a,l,t,o,n,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},a.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,Z)],16))}const v=J(Q,[["render",K]]),L={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:a=>["success","warning","error","info"].includes(a)}},emits:["closed"],setup(a,{emit:l}){const t=a,o=l,n=e.ref(!1);let d=null;const i=()=>{n.value=!0,D()},p=()=>{n.value=!1,o("closed")},f=()=>{d&&(clearTimeout(d),d=null)},g=()=>{D()},D=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{i()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const m=e.computed(()=>{const k=["sw-alert"];return t.size.length>0&&k.push(`sw-${t.size}`),t.type.length>0&&k.push(`sw-${t.type}`),t.class.length>0&&k.push(t.class),k});return(k,h)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(m.value),onMouseenter:f,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(v,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(k.$slots,"prefix",{key:1}),e.renderSlot(k.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(v,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(k.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},ee=Object.freeze(Object.defineProperty({__proto__:null,default:L},Symbol.toStringTag,{value:"Module"}));let P=document.querySelector("div.sw-alert-wrapper");function I(a={}){P||(P=document.createElement("div"),P.className="sw-alert-wrapper",document.body.appendChild(P));const l=e.createApp({setup(){return()=>e.h(L,{...a,onClose:()=>{P.removeChild(l._container),l.unmount()}})}}),t=l.mount(document.createElement("div"));P.appendChild(t.$el)}const Y=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ee),"./components/SwButton.vue":()=>Promise.resolve().then(()=>le),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>oe),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>he),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>_e),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Se),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>we),"./components/SwInput.vue":()=>Promise.resolve().then(()=>$e),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Me),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>xe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Pe),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>je),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Ae),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ye),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Re),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>We)}),F={};for(const a in Y){const l=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,o)=>o.toUpperCase());F[l]=e.defineAsyncComponent(()=>Y[a]())}const te={install(a){Object.keys(F).forEach(l=>{a.component(l,F[l]),console.log(l)}),a.config.globalProperties.$Alert=I,a.provide("Alert",I)}},q={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(a){const l=a,t=()=>{if(l.href.length>0){const n=document.createElement("a");n.setAttribute("href",l.href),n.setAttribute("target","_blank"),n.click()}},o=e.computed(()=>{let n=["sw-button"];return l.size.length>0&&n.push("sw-"+l.size),l.type.length>0&&n.push("sw-"+l.type),l.round&&n.push("sw-round"),l.text&&n.push("sw-text"),l.link&&n.push("sw-link"),l.class.length>0&&n.push(l.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},le=Object.freeze(Object.defineProperty({__proto__:null,default:q},Symbol.toStringTag,{value:"Module"})),oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{o.value="0px"});const l=e.ref(null),t=a,o=e.computed(()=>{var n;return t.visual?((n=l.value)==null?void 0:n.scrollHeight)+"px":"0px"});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({height:o.value}),ref_key:"collapse",ref:l},[e.renderSlot(n.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ne={class:"sw-data-picker"},ae={class:"month_year"},se={class:"text"},re={class:"week"},ce={class:"month"},ie=["onClick"],de={key:0},pe={class:"month_year"},me={class:"text"},fe={class:"week"},ue={class:"month"},ge=["onClick"],he=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(a,{emit:l}){var H,W,U,G;const t=a,o=l,n=e.ref(new Date),d=e.ref(new Date),i=e.ref(new Date().getFullYear()),p=e.ref(new Date().getMonth()),f=e.ref(new Date().getFullYear()),g=e.ref(new Date().getMonth()),D=e.ref(new Date().getMonth()+1),m=e.ref([]),k=e.ref(0),h=e.ref(-1),u=e.ref(-1),w=e.ref(navigator.languages||"ru"),_=/en|zh|ja|he/.test(w.value)?0:1;e.computed(()=>t.range==="range"?2:1);const S=r=>{let s=r.split(r.match(/\D.*?\D?/));return s[0].length>2?s.join("-")+"T00:00:01":s.reverse().join("-")+"T00:00:01"};(H=t.data)!=null&&H.startDate&&(n.value=new Date(S(t.data.startDate)),i.value=n.value.getFullYear(),p.value=n.value.getMonth()),(W=t.data)!=null&&W.endDate&&t.range==="range"&&(d.value=new Date(S(t.data.endDate)),f.value=d.value.getFullYear(),g.value=d.value.getMonth());const N=()=>{m.value=[],k.value=0;const r=new Date(i.value,p.value,0);for(let c=r.getDate()-r.getDay()+_;c<=r.getDate();c++)r.getDay()!==6+_&&(m.value.push({day:c,month:r.getMonth(),year:r.getFullYear(),class:[]}),k.value++);const s=new Date(i.value,p.value+1,0).getDate();for(let c=1;c<=s;c++)m.value.push({day:c,month:p.value,year:i.value,class:[]}),k.value++;if(t.range==="range"){const c=new Date(i.value,p.value+1,1),y=new Date(i.value,p.value+2,0).getDate();for(let E=1;E<=y;E++)m.value.push({day:E,month:c.getMonth(),year:c.getFullYear(),class:[]})}$()},$=()=>{var s;if(!((s=t.data)!=null&&s.holiday))return;const r=(c,y)=>{c.forEach(E=>{const[B,M,V]=E.split("-").map(Number),O=m.value.findIndex(A=>A.year===B&&A.month+1===M&&A.day===V);O!==-1&&(m.value[O].class[0]=y)})};r(t.data.holiday.preholidays,"preholiday"),r(t.data.holiday.holidays,"weekend"),r(t.data.holiday.holiday,"holiday"),r(t.data.holiday.nowork,"nowork")},b=()=>{if(!t.limitation||t.limitation.length<2)return!1;const r=[...t.limitation].sort((s,c)=>new Date(S(s.startDate)).getTime()-new Date(S(c.startDate)).getTime());for(let s=1;s<r.length;s++){const c=new Date(S(r[s-1].endDate));if(new Date(S(r[s].startDate))<=c)return console.warn("Warning: Диапазоны пересекаются:",r[s-1],r[s]),!0}return!1},C=(r,s,c)=>{if(!t.limitation||t.limitation.length===0)return!0;const y=new Date(r,s,c).getTime();for(let E of t.limitation){const{startDate:B,endDate:M}=E;if(!B&&M){const V=new Date(S(M)).getTime();if(y<=V)return!1}if(B&&!M){const V=new Date(S(B)).getTime();if(y>=V)return!1}if(B&&M){const V=new Date(S(B)).getTime(),O=new Date(S(M)).getTime();if(V<=O){if(y>=V&&y<=O)return!1}else if(y>=V||y<=O)return!1}}return!0},x=(r,s)=>{const c=j(new Date(r.year,r.month,r.day),"{dd}.{m}.{Y}");t.range==="range"?u.value!==-1?(Ue(),h.value=s,m.value[s].class[1]="active"):h.value!==-1?(u.value=s,Ge(h.value,u.value,c)):(h.value=s,m.value[s].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=s,m.value[s].class[1]="active",o("input",{dateStart:c,count:1}))},Ue=()=>{m.value.forEach(r=>r.class[1]=""),h.value=-1,u.value=-1},Ge=(r,s,c)=>{let y=j(new Date(m.value[r].year,m.value[r].month,m.value[r].day),"{dd}.{m}.{Y}"),E=Xe(r,s);if(s>=r)for(let B=r+1;B<s;B++)m.value[B].class[1]="select";else for(let B=s+1;B<r;B++)m.value[B].class[1]="select";m.value[s].class[1]="active",o("input",{dateStart:y,dateEnd:c,count:E})},Xe=(r,s)=>{var B;let c=Math.abs(r-s)+1,[y,E]=[Math.min(r,s),Math.max(r,s)];for(let M=y;M<=E;M++)((B=m.value[M])==null?void 0:B.class[0])==="holiday"&&c--;return c},z=(r,s)=>{C(r,s)&&(n.value=new Date(r,s,1),i.value=n.value.getFullYear(),p.value=n.value.getMonth(),N())};if(N(),b()&&console.error("Ошибка: Найдены пересекающиеся диапазоны!"),(U=t.data)!=null&&U.startDate&&(h.value=m.value.findIndex(r=>r.day===n.value.getDate()&&r.month===p.value&&r.year===i.value),h.value!==-1&&(m.value[h.value].class[1]="active")),(G=t.data)!=null&&G.endDate&&t.range==="range"&&(u.value=m.value.findIndex(r=>r.day===d.value.getDate()&&r.month===g.value&&r.year===f.value),u.value!==-1)){m.value[u.value].class[1]="active";for(let r=h.value+1;r<u.value;r++)m.value[r].class[1]="select"}return(r,s)=>(e.openBlock(),e.createElementBlock("div",ne,[e.createElementVNode("div",null,[e.createElementVNode("p",ae,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(c=>z(i.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[1]||(s[1]=e.withModifiers(c=>z(i.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",se,[e.createElementVNode("button",null,e.toDisplayString(i.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(j)(n.value.setMonth(p.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(c=>z(i.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(c=>z(i.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",re,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(c,y)=>e.createElementVNode("button",{key:y,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,c+e.unref(_)),"{D}")),1)),64))]),e.createElementVNode("div",ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(c,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:y},[y<k.value+(7-new Date(i.value,p.value+1,1).getDay()+e.unref(_))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(c.month===p.value&&C(c.year,c.month,c.day)?c.class:"disabled"),onClick:()=>{c.month===p.value&&x(c,y)}},e.toDisplayString(c.day),11,ie)):e.createCommentVNode("",!0)],64))),128))])]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",de,[e.createElementVNode("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(c=>z(i.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(c=>z(i.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",me,[e.createElementVNode("button",null,e.toDisplayString(new Date(i.value,p.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(j)(n.value.setMonth(p.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[6]||(s[6]=e.withModifiers(c=>z(i.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[7]||(s[7]=e.withModifiers(c=>z(i.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",fe,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(c,y)=>e.createElementVNode("button",{key:y,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,c+e.unref(_)),"{D}")),1)),64))]),e.createElementVNode("div",ue,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(c,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:y},[y>=k.value-(7+new Date(i.value,p.value+1,1).getDay()-e.unref(_))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(c.month===D.value.getMonth()&&C(c.year,c.month,c.day)?c.class:"disabled"),onClick:()=>{c.month===D.value.getMonth()&&x(c,y)}},e.toDisplayString(c.day),11,ge)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),ye=["id"],_e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0},manual:{type:Boolean,default:!1}},setup(a){const l=a;e.computed(()=>"dropdown"+Array.from(document.body.children).indexOf(document.querySelector("ul")));const t=e.ref(!1),o=e.ref(null),n=e.ref(null),d=e.ref({}),i=Math.ceil(Math.random()*1e3),p=e.computed(()=>{let u=["sw-dropdown"];return l.size.length>0&&u.push("sw-"+l.size),l.type.length>0&&u.push("sw-"+l.type),u});e.watch(()=>l.manual,u=>{t.value=u,console.log("watch",t.value),t.value&&f()});const f=async()=>{if(await e.nextTick(),!n.value)return;const u=window.pageYOffset||document.documentElement.scrollTop,w=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${u}px`,document.body.style.left=`-${w}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=u,document.documentElement.scrollLeft=w;const _=o.value.getBoundingClientRect(),S=n.value.offsetHeight,N=n.value.offsetWidth;console.log("popupHeight",S),console.log("popupWidth",N);let $=_.left+_.width/2+w,b=_.top+_.height/2+u;const[C,x]=l.placement.split("-",2);switch(console.log(l.placement),C){case"bottom":b=b+_.height/2+8;break;case"top":b=b-_.height/2-8-S;break;case"left":$=$-N-_.width/2-8,b=b-S/2;break;case"right":$=$+_.width/2+8,b=b-S/2;break}switch(x){case"left":$=$-_.width/2;break;case"right":$=$-N+_.width/2;break}$<0&&($=0),b<0&&(b=0),d.value={position:"absolute",top:`${b}px`,left:`${$}px`,maxWidth:l.maxWidth===0?"":`${l.maxWidth}px`}},g=()=>{l.trigger==="click"&&(t.value=!t.value),t.value&&f()},D=()=>{l.trigger==="hover"&&(t.value=!t.value),t.value&&f()},m=()=>{l.trigger==="context"&&(t.value=!t.value),t.value&&f()},k=()=>{t.value&&f()},h=u=>{console.log(i),!u.target.closest(`[id="${i}"]`)&&o.value&&!o.value.contains(u.target)&&(t.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",k),window.addEventListener("click",h)}),e.onUnmounted(()=>{window.removeEventListener("resize",k),window.removeEventListener("click",h)}),(u,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value),onClick:w[0]||(w[0]=_=>g()),onMouseover:w[1]||(w[1]=e.withModifiers(_=>D(),["stop"])),onMouseleave:w[2]||(w[2]=e.withModifiers(_=>D(),["stop"])),onContextmenu:w[3]||(w[3]=e.withModifiers(_=>m(),["stop"])),ref_key:"dropdownRef",ref:o},[e.renderSlot(u.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:n,id:e.unref(i),class:e.normalizeClass(["sw-dropdown-popup",l.class]),style:e.normalizeStyle(d.value),tabindex:"-1"},[e.renderSlot(u.$slots,"dropdown")],14,ye)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Se=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let o=["sw-dropdown-item"];return l.size.length>0&&o.push("sw-"+l.size),l.type.length>0&&o.push("sw-"+l.type),l.class.length>0&&o.push(l.class),o});return(o,n)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(o.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),we=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let o=["sw-form-item"];return l.type.length>0&&o.push("sw-"+l.type),l.class.length>0&&o.push(l.class),o});return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),ke=["for"],be={key:0,title:"Это поле обязательно для заполнения."},Be=["required","placeholder","type","id","name"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(a,{emit:l}){var k;const t=e.useModel(a,"modelValue"),o=a,n=e.ref(null),d=l,i=h=>{d("focusInput"),h.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},p=h=>{var u;((u=t.value)==null?void 0:u.length)===0&&n.value!==null&&n.value.removeAttribute("style")};((k=t.value)==null?void 0:k.length)>0&&n.value!==null&&(n.value.style.top="-.6em");const f=()=>{d("suffix")},g=()=>{d("prefix")},D=e.computed(()=>{let h=["sw-input"];return o.size.length>0&&h.push("sw-"+o.size),o.class.length>0&&h.push(o.class),h});e.watch(t,(h,u)=>{o.type==="phone"&&(t.value=m(h,u))});const m=(h,u)=>{if(/^\+[0-9]\s/.test(u)&&h.length===2||/^\+0\s/.test(h))return"";const w=h;if(typeof w>"u"||w.length===0)return w;const _="+0 (___) ___-__-__";let S=0;const N=_.replace(/\D/g,""),$=w.replace(/\D/g,"");let b=_.replace(/[_\d]/g,x=>S<$.length?$.charAt(S++)||N.charAt(S):x);S=b.indexOf("_"),S!==-1&&(S=S<5?3:S,b=b.slice(0,S));let C=_.slice(0,w.length).replace(/_+/g,x=>`\\d{1,${x.length}}`).replace(/[+()]/g,"\\$&");if(C=new RegExp(`^${C}$`),b=b.replace(/[-—]$|(\) )$/g,""),!C.test(w)||w.length<5)return b};return(h,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(D.value)},[o.before.length>0?(e.openBlock(),e.createBlock(v,{key:0,"icon-class":o.before,onClick:g},null,8,["icon-class"])):e.renderSlot(h.$slots,"prefix",{key:1}),o.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:o.name,ref_key:"lab",ref:n},[e.createTextVNode(e.toDisplayString(o.label),1),o.required?(e.openBlock(),e.createElementBlock("span",be,"*")):e.createCommentVNode("",!0)],8,ke)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[0]||(u[0]=w=>t.value=w),required:o.required,placeholder:o.required&&o.label.length===0?o.placeholder+"*":o.placeholder,type:o.type,id:o.name,name:o.name,size:"60",onFocus:i,onBlur:p,maxlength:"128"},null,40,Be),[[e.vModelDynamic,t.value]]),o.after.length>0?(e.openBlock(),e.createBlock(v,{key:3,"icon-class":o.after,onClick:f},null,8,["icon-class"])):e.renderSlot(h.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),De={key:0},Ee=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,o=e.ref(null);return(n,d)=>{const i=e.resolveComponent("svg-icon");return l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:o},[t.name.length>0?(e.openBlock(),e.createElementBlock("header",De,[e.renderSlot(n.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(q,{link:"",type:"primary",onClick:d[0]||(d[0]=p=>l.value=!1)},{default:e.withCtx(()=>[e.createVNode(i,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default",{},()=>[d[1]||(d[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(n.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Me=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},setup(a){const l=a;return(t,o)=>{const n=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(l.class)},[e.createElementVNode("header",null,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.name)+" ",1),e.createVNode(n,{"icon-class":l.iconAfter},null,8,["icon-class"])])]),e.renderSlot(t.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),Te={class:"popup"},Ce={class:"wrapper"},Ve={class:"scrollbar"},Ne=["onClick"],xe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.ref({fullText:""}),t=e.ref(!1),o=e.ref([]),n=e.useModel(a,"modelValue"),d=a;e.watch(n.text,f=>{f.length>3&&(l.value.fullText=f)}),e.watch(l.value.fullText,(f,g)=>{t.value=f.length>3&&f.length>g.length,f.length>3&&i()});const i=()=>{let f="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(l.value.fullText),axios.post(f,{query:l.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(g=>{console.log(g.data.suggestions),o.value=g.data.suggestions,o.value.length===1&&p(o.value[0])}).catch(g=>{console.log(g)})},p=f=>{l.value.fullText=f.value,t.value=!1;const g={};g.text=f.value,g.coords=[Number(f.data.geo_lat),Number(f.data.geo_lon)],g.suggestion=f.data,n.value=g};return(f,g)=>{const D=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Te,[e.createVNode(D,{size:"large",modelValue:l.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=m=>l.value.fullText=m),placeholder:a.placeholder},null,8,["modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ce,[e.createElementVNode("ul",Ve,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(m,k)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:k,onClick:h=>p(m)},e.toDisplayString(m.value),9,Ne))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),ze={key:0},R={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let n=["sw-skeleton-item"];return l.size.length>0&&n.push("sw-"+l.size),l.animate&&n.push("sw-animate"),l.class.length>0&&n.push(l.class),n}),o=e.computed(()=>({width:l.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(o.value)},[l.animate?(e.openBlock(),e.createElementBlock("div",ze)):e.createCommentVNode("",!0)],6))}},je=Object.freeze(Object.defineProperty({__proto__:null,default:R},Symbol.toStringTag,{value:"Module"})),Pe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const l=a;return(t,o)=>l.visual?e.renderSlot(t.$slots,"default",{key:0},()=>[o[0]||(o[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",l.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(R,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Oe=["name","id"],ve=["for","data-onlabel","data-offlabel"],Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,o=e.computed(()=>{let n=["sw-switch"];return t.size.length>0&&n.push("sw-"+t.size),t.checkbox&&n.push("sw-checkbox"),t.class.length>0&&n.push(t.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=i=>l.value=i)},null,8,Oe),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,ve),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ie=["onClick"],Ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),o=a,n=e.useModel(a,"modelValue"),d=l;return t.value=e.useSlots().default().filter(i=>i.type.__name==="SwTabsPane"),e.provide("activeTab",n),e.provide("tabs",t),(i,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(f,g)=>(e.openBlock(),e.createElementBlock("span",{key:g,class:e.normalizeClass([{active:n.value===g}]),onClick:D=>{n.value=g,d("tab-click",g)}},e.toDisplayString(f.props.label||f.props.title),11,Ie))),128))]),e.renderSlot(i.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Le=["onClick"],Ye=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsNew",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),o=a,n=e.useModel(a,"modelValue"),d=l;return e.provide("activeTab",n),e.provide("tabs",t),e.provide("registerTab",i=>{t.value.push(i)}),(i,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(f,g)=>(e.openBlock(),e.createElementBlock("span",{key:g,class:e.normalizeClass([{active:n.value===g}]),onClick:D=>{n.value=g,d("tab-click",g)}},e.toDisplayString(f.props.label||f.props.title),11,Le))),128))]),e.renderSlot(i.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),qe={key:0,class:"tab-content"},Re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const l=a,t=e.inject("activeTab"),o=e.inject("tabs"),n=e.computed(()=>{const d=o.value.findIndex(i=>i.props.title===l.title);return t.value===d});return(d,i)=>n.value?(e.openBlock(),e.createElementBlock("div",qe,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),He={key:0,class:"tab-content"},We=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const l=a,t=e.inject("registerTab");if(!t)throw new Error("SwTabsPane must be used inside SwTabs");t({props:l});const o=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const d=e.inject("tabs").value.length-1;return(i,p)=>e.unref(o)===d?(e.openBlock(),e.createElementBlock("div",He,[e.renderSlot(i.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));T.Alert=I,T.Library=te,T.components=F,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
1
+ (function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T["component-sw"]={},T.vue))})(this,function(T,e){"use strict";function X(a){return/^(https?:|mailto:|tel:)/.test(a)}function j(a,l){if(arguments.length===0||!a)return null;const t=l||"{Y}-{m}-{d} {G}:{i}:{s}";let o;typeof a=="object"?o=a:(typeof a=="string"&&(/^[0-9]+$/.test(a)?a=parseInt(a):a=a.replace(new RegExp(/-/gm),"/")),typeof a=="number"&&a.toString().length===10&&(a=a*1e3),o=new Date(a));const n="ru-RU",d={Y:o.getFullYear(),m:(o.getMonth()+1).toString().padStart(2,"0"),d:o.getDate(),dd:o.getDate().toString().padStart(2,"0"),G:o.getHours(),H:o.getHours().toString().padStart(2,"0"),i:o.getMinutes().toString().padStart(2,"0"),s:o.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(n,{weekday:"short"}).format(o),F:new Intl.DateTimeFormat(n,{month:"long"}).format(o),M:new Intl.DateTimeFormat(n,{month:"short"}).format(o)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(i,p)=>d[p])}const J=(a,l)=>{const t=a.__vccOpts||a;for(const[o,n]of l)t[o]=n;return t},Q={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return X(this.iconClass)}}},Z=["href"];function K(a,l,t,o,n,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},a.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,Z)],16))}const v=J(Q,[["render",K]]),L={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:a=>["success","warning","error","info"].includes(a)}},emits:["closed"],setup(a,{emit:l}){const t=a,o=l,n=e.ref(!1);let d=null;const i=()=>{n.value=!0,D()},p=()=>{n.value=!1,o("closed")},f=()=>{d&&(clearTimeout(d),d=null)},g=()=>{D()},D=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{i()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const m=e.computed(()=>{const b=["sw-alert"];return t.size.length>0&&b.push(`sw-${t.size}`),t.type.length>0&&b.push(`sw-${t.type}`),t.class.length>0&&b.push(t.class),b});return(b,h)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(m.value),onMouseenter:f,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(v,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(b.$slots,"prefix",{key:1}),e.renderSlot(b.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(v,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(b.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},ee=Object.freeze(Object.defineProperty({__proto__:null,default:L},Symbol.toStringTag,{value:"Module"}));let P=document.querySelector("div.sw-alert-wrapper");function I(a={}){P||(P=document.createElement("div"),P.className="sw-alert-wrapper",document.body.appendChild(P));const l=e.createApp({setup(){return()=>e.h(L,{...a,onClose:()=>{P.removeChild(l._container),l.unmount()}})}}),t=l.mount(document.createElement("div"));P.appendChild(t.$el)}const Y=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ee),"./components/SwButton.vue":()=>Promise.resolve().then(()=>le),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>oe),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>he),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>_e),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Se),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>we),"./components/SwInput.vue":()=>Promise.resolve().then(()=>$e),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Me),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>xe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Pe),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>je),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Ae),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ye),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Re),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>We)}),F={};for(const a in Y){const l=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,o)=>o.toUpperCase());F[l]=e.defineAsyncComponent(()=>Y[a]())}const te={install(a){Object.keys(F).forEach(l=>{a.component(l,F[l]),console.log(l)}),a.config.globalProperties.$Alert=I,a.provide("Alert",I)}},q={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(a){const l=a,t=()=>{if(l.href.length>0){const n=document.createElement("a");n.setAttribute("href",l.href),n.setAttribute("target","_blank"),n.click()}},o=e.computed(()=>{let n=["sw-button"];return l.size.length>0&&n.push("sw-"+l.size),l.type.length>0&&n.push("sw-"+l.type),l.round&&n.push("sw-round"),l.text&&n.push("sw-text"),l.link&&n.push("sw-link"),l.class.length>0&&n.push(l.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value),onClick:t},[e.renderSlot(n.$slots,"default")],2))}},le=Object.freeze(Object.defineProperty({__proto__:null,default:q},Symbol.toStringTag,{value:"Module"})),oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{o.value="0px"});const l=e.ref(null),t=a,o=e.computed(()=>{var n;return t.visual?((n=l.value)==null?void 0:n.scrollHeight)+"px":"0px"});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({height:o.value}),ref_key:"collapse",ref:l},[e.renderSlot(n.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ne={class:"sw-data-picker"},ae={class:"month_year"},se={class:"text"},re={class:"week"},ce={class:"month"},ie=["onClick"],de={key:0},pe={class:"month_year"},me={class:"text"},fe={class:"week"},ue={class:"month"},ge=["onClick"],he=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(a,{emit:l}){var H,W,U,G;const t=a,o=l,n=e.ref(new Date),d=e.ref(new Date),i=e.ref(Number(new Date().getFullYear())),p=e.ref(Number(new Date().getMonth())),f=e.ref(Number(new Date().getFullYear())),g=e.ref(Number(new Date().getMonth())),D=e.ref(Number(new Date().getMonth())+1),m=e.ref([]),b=e.ref(0),h=e.ref(-1),u=e.ref(-1),w=e.ref(navigator.languages||"ru"),_=/en|zh|ja|he/.test(w.value)?0:1,S=r=>{let s=r.split(r.match(/\D.*?\D?/));return s[0].length>2?s.join("-")+"T00:00:01":s.reverse().join("-")+"T00:00:01"};(H=t.data)!=null&&H.startDate&&(n.value=new Date(S(t.data.startDate)),i.value=n.value.getFullYear(),p.value=n.value.getMonth()),(W=t.data)!=null&&W.endDate&&t.range==="range"&&(d.value=new Date(S(t.data.endDate)),f.value=d.value.getFullYear(),g.value=d.value.getMonth());const V=()=>{m.value=[],b.value=0;const r=new Date(i.value,p.value,0);for(let c=r.getDate()-r.getDay()+_;c<=r.getDate();c++)r.getDay()!==6+_&&(m.value.push({day:c,month:r.getMonth(),year:r.getFullYear(),class:[]}),b.value++);const s=new Date(i.value,p.value+1,0).getDate();for(let c=1;c<=s;c++)m.value.push({day:c,month:p.value,year:i.value,class:[]}),b.value++;if(t.range==="range"){const c=new Date(i.value,p.value+1,1),y=new Date(i.value,p.value+2,0).getDate();for(let E=1;E<=y;E++)m.value.push({day:E,month:c.getMonth(),year:c.getFullYear(),class:[]})}$()},$=()=>{var s;if(!((s=t.data)!=null&&s.holiday))return;const r=(c,y)=>{c.forEach(E=>{const[B,M,N]=E.split("-").map(Number),O=m.value.findIndex(A=>A.year===B&&A.month+1===M&&A.day===N);O!==-1&&(m.value[O].class[0]=y)})};r(t.data.holiday.preholidays,"preholiday"),r(t.data.holiday.holidays,"weekend"),r(t.data.holiday.holiday,"holiday"),r(t.data.holiday.nowork,"nowork")},k=()=>{if(!t.limitation||t.limitation.length<2)return!1;const r=[...t.limitation].sort((s,c)=>new Date(S(s.startDate)).getTime()-new Date(S(c.startDate)).getTime());for(let s=1;s<r.length;s++){const c=new Date(S(r[s-1].endDate));if(new Date(S(r[s].startDate))<=c)return console.warn("Warning: Диапазоны пересекаются:",r[s-1],r[s]),!0}return!1},C=(r,s,c)=>{if(!t.limitation||t.limitation.length===0)return!0;const y=new Date(r,s,c).getTime();for(let E of t.limitation){const{startDate:B,endDate:M}=E;if(!B&&M){const N=new Date(S(M)).getTime();if(y<=N)return!1}if(B&&!M){const N=new Date(S(B)).getTime();if(y>=N)return!1}if(B&&M){const N=new Date(S(B)).getTime(),O=new Date(S(M)).getTime();if(N<=O){if(y>=N&&y<=O)return!1}else if(y>=N||y<=O)return!1}}return!0},x=(r,s)=>{const c=j(new Date(r.year,r.month,r.day),"{dd}.{m}.{Y}");t.range==="range"?u.value!==-1?(Ue(),h.value=s,m.value[s].class[1]="active"):h.value!==-1?(u.value=s,Ge(h.value,u.value,c)):(h.value=s,m.value[s].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=s,m.value[s].class[1]="active",o("input",{dateStart:c,count:1}))},Ue=()=>{m.value.forEach(r=>r.class[1]=""),h.value=-1,u.value=-1},Ge=(r,s,c)=>{let y=j(new Date(m.value[r].year,m.value[r].month,m.value[r].day),"{dd}.{m}.{Y}"),E=Xe(r,s);if(s>=r)for(let B=r+1;B<s;B++)m.value[B].class[1]="select";else for(let B=s+1;B<r;B++)m.value[B].class[1]="select";m.value[s].class[1]="active",o("input",{dateStart:y,dateEnd:c,count:E})},Xe=(r,s)=>{var B;let c=Math.abs(r-s)+1,[y,E]=[Math.min(r,s),Math.max(r,s)];for(let M=y;M<=E;M++)((B=m.value[M])==null?void 0:B.class[0])==="holiday"&&c--;return c},z=(r,s)=>{C(r,s)&&(n.value=new Date(r,s,1),i.value=n.value.getFullYear(),p.value=n.value.getMonth(),V())};if(V(),k()&&console.error("Ошибка: Найдены пересекающиеся диапазоны!"),(U=t.data)!=null&&U.startDate&&(h.value=m.value.findIndex(r=>r.day===n.value.getDate()&&r.month===p.value&&r.year===i.value),h.value!==-1&&(m.value[h.value].class[1]="active")),(G=t.data)!=null&&G.endDate&&t.range==="range"&&(u.value=m.value.findIndex(r=>r.day===d.value.getDate()&&r.month===g.value&&r.year===f.value),u.value!==-1)){m.value[u.value].class[1]="active";for(let r=h.value+1;r<u.value;r++)m.value[r].class[1]="select"}return(r,s)=>(e.openBlock(),e.createElementBlock("div",ne,[e.createElementVNode("div",null,[e.createElementVNode("p",ae,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(c=>z(i.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[1]||(s[1]=e.withModifiers(c=>z(i.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",se,[e.createElementVNode("button",null,e.toDisplayString(i.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(j)(n.value.setMonth(p.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(c=>z(i.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(c=>z(i.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",re,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(c,y)=>e.createElementVNode("button",{key:y,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,c+e.unref(_)),"{D}")),1)),64))]),e.createElementVNode("div",ce,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(c,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:y},[y<b.value+(7-new Date(i.value,p.value+1,1).getDay()+e.unref(_))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(c.month===p.value&&C(c.year,c.month,c.day)?c.class:"disabled"),onClick:()=>{c.month===p.value&&x(c,y)}},e.toDisplayString(c.day),11,ie)):e.createCommentVNode("",!0)],64))),128))])]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",de,[e.createElementVNode("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(c=>z(i.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(c=>z(i.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",me,[e.createElementVNode("button",null,e.toDisplayString(new Date(i.value,p.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(j)(n.value.setMonth(p.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[6]||(s[6]=e.withModifiers(c=>z(i.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[7]||(s[7]=e.withModifiers(c=>z(i.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",fe,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(c,y)=>e.createElementVNode("button",{key:y,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,c+e.unref(_)),"{D}")),1)),64))]),e.createElementVNode("div",ue,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(c,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:y},[y>=b.value-(7+new Date(i.value,p.value+1,1).getDay()-e.unref(_))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(c.month===D.value.getMonth()&&C(c.year,c.month,c.day)?c.class:"disabled"),onClick:()=>{c.month===D.value.getMonth()&&x(c,y)}},e.toDisplayString(c.day),11,ge)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),ye=["id"],_e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0},manual:{type:Boolean,default:!1}},setup(a){const l=a;e.computed(()=>"dropdown"+Array.from(document.body.children).indexOf(document.querySelector("ul")));const t=e.ref(!1),o=e.ref(null),n=e.ref(null),d=e.ref({}),i=Math.ceil(Math.random()*1e3),p=e.computed(()=>{let u=["sw-dropdown"];return l.size.length>0&&u.push("sw-"+l.size),l.type.length>0&&u.push("sw-"+l.type),u});e.watch(()=>l.manual,u=>{t.value=u,console.log("watch",t.value),t.value&&f()});const f=async()=>{if(await e.nextTick(),!n.value)return;const u=window.pageYOffset||document.documentElement.scrollTop,w=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${u}px`,document.body.style.left=`-${w}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=u,document.documentElement.scrollLeft=w;const _=o.value.getBoundingClientRect(),S=n.value.offsetHeight,V=n.value.offsetWidth;console.log("popupHeight",S),console.log("popupWidth",V);let $=_.left+_.width/2+w,k=_.top+_.height/2+u;const[C,x]=l.placement.split("-",2);switch(console.log(l.placement),C){case"bottom":k=k+_.height/2+8;break;case"top":k=k-_.height/2-8-S;break;case"left":$=$-V-_.width/2-8,k=k-S/2;break;case"right":$=$+_.width/2+8,k=k-S/2;break}switch(x){case"left":$=$-_.width/2;break;case"right":$=$-V+_.width/2;break}$<0&&($=0),k<0&&(k=0),d.value={position:"absolute",top:`${k}px`,left:`${$}px`,maxWidth:l.maxWidth===0?"":`${l.maxWidth}px`}},g=()=>{l.trigger==="click"&&(t.value=!t.value),t.value&&f()},D=()=>{l.trigger==="hover"&&(t.value=!t.value),t.value&&f()},m=()=>{l.trigger==="context"&&(t.value=!t.value),t.value&&f()},b=()=>{t.value&&f()},h=u=>{console.log(i),!u.target.closest(`[id="${i}"]`)&&o.value&&!o.value.contains(u.target)&&(t.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",b),window.addEventListener("click",h)}),e.onUnmounted(()=>{window.removeEventListener("resize",b),window.removeEventListener("click",h)}),(u,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value),onClick:w[0]||(w[0]=_=>g()),onMouseover:w[1]||(w[1]=e.withModifiers(_=>D(),["stop"])),onMouseleave:w[2]||(w[2]=e.withModifiers(_=>D(),["stop"])),onContextmenu:w[3]||(w[3]=e.withModifiers(_=>m(),["stop"])),ref_key:"dropdownRef",ref:o},[e.renderSlot(u.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:n,id:e.unref(i),class:e.normalizeClass(["sw-dropdown-popup",l.class]),style:e.normalizeStyle(d.value),tabindex:"-1"},[e.renderSlot(u.$slots,"dropdown")],14,ye)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Se=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let o=["sw-dropdown-item"];return l.size.length>0&&o.push("sw-"+l.size),l.type.length>0&&o.push("sw-"+l.type),l.class.length>0&&o.push(l.class),o});return(o,n)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(o.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),we=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let o=["sw-form-item"];return l.type.length>0&&o.push("sw-"+l.type),l.class.length>0&&o.push(l.class),o});return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),be=["for"],ke={key:0,title:"Это поле обязательно для заполнения."},Be=["required","placeholder","type","id","name"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(a,{emit:l}){var b;const t=e.useModel(a,"modelValue"),o=a,n=e.ref(null),d=l,i=h=>{d("focusInput"),h.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},p=h=>{var u;((u=t.value)==null?void 0:u.length)===0&&n.value!==null&&n.value.removeAttribute("style")};((b=t.value)==null?void 0:b.length)>0&&n.value!==null&&(n.value.style.top="-.6em");const f=()=>{d("suffix")},g=()=>{d("prefix")},D=e.computed(()=>{let h=["sw-input"];return o.size.length>0&&h.push("sw-"+o.size),o.class.length>0&&h.push(o.class),h});e.watch(t,(h,u)=>{o.type==="phone"&&(t.value=m(h,u))});const m=(h,u)=>{if(/^\+[0-9]\s/.test(u)&&h.length===2||/^\+0\s/.test(h))return"";const w=h;if(typeof w>"u"||w.length===0)return w;const _="+0 (___) ___-__-__";let S=0;const V=_.replace(/\D/g,""),$=w.replace(/\D/g,"");let k=_.replace(/[_\d]/g,x=>S<$.length?$.charAt(S++)||V.charAt(S):x);S=k.indexOf("_"),S!==-1&&(S=S<5?3:S,k=k.slice(0,S));let C=_.slice(0,w.length).replace(/_+/g,x=>`\\d{1,${x.length}}`).replace(/[+()]/g,"\\$&");if(C=new RegExp(`^${C}$`),k=k.replace(/[-—]$|(\) )$/g,""),!C.test(w)||w.length<5)return k};return(h,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(D.value)},[o.before.length>0?(e.openBlock(),e.createBlock(v,{key:0,"icon-class":o.before,onClick:g},null,8,["icon-class"])):e.renderSlot(h.$slots,"prefix",{key:1}),o.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:o.name,ref_key:"lab",ref:n},[e.createTextVNode(e.toDisplayString(o.label),1),o.required?(e.openBlock(),e.createElementBlock("span",ke,"*")):e.createCommentVNode("",!0)],8,be)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":u[0]||(u[0]=w=>t.value=w),required:o.required,placeholder:o.required&&o.label.length===0?o.placeholder+"*":o.placeholder,type:o.type,id:o.name,name:o.name,size:"60",onFocus:i,onBlur:p,maxlength:"128"},null,40,Be),[[e.vModelDynamic,t.value]]),o.after.length>0?(e.openBlock(),e.createBlock(v,{key:3,"icon-class":o.after,onClick:f},null,8,["icon-class"])):e.renderSlot(h.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),De={key:0},Ee=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,o=e.ref(null);return(n,d)=>{const i=e.resolveComponent("svg-icon");return l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:o},[t.name.length>0?(e.openBlock(),e.createElementBlock("header",De,[e.renderSlot(n.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(q,{link:"",type:"primary",onClick:d[0]||(d[0]=p=>l.value=!1)},{default:e.withCtx(()=>[e.createVNode(i,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default",{},()=>[d[1]||(d[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(n.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Me=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},setup(a){const l=a;return(t,o)=>{const n=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(l.class)},[e.createElementVNode("header",null,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.name)+" ",1),e.createVNode(n,{"icon-class":l.iconAfter},null,8,["icon-class"])])]),e.renderSlot(t.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),Te={class:"popup"},Ce={class:"wrapper"},Ne={class:"scrollbar"},Ve=["onClick"],xe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.ref({fullText:""}),t=e.ref(!1),o=e.ref([]),n=e.useModel(a,"modelValue"),d=a;e.watch(n.text,f=>{f.length>3&&(l.value.fullText=f)}),e.watch(l.value.fullText,(f,g)=>{t.value=f.length>3&&f.length>g.length,f.length>3&&i()});const i=()=>{let f="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(l.value.fullText),axios.post(f,{query:l.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(g=>{console.log(g.data.suggestions),o.value=g.data.suggestions,o.value.length===1&&p(o.value[0])}).catch(g=>{console.log(g)})},p=f=>{l.value.fullText=f.value,t.value=!1;const g={};g.text=f.value,g.coords=[Number(f.data.geo_lat),Number(f.data.geo_lon)],g.suggestion=f.data,n.value=g};return(f,g)=>{const D=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Te,[e.createVNode(D,{size:"large",modelValue:l.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=m=>l.value.fullText=m),placeholder:a.placeholder},null,8,["modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Ce,[e.createElementVNode("ul",Ne,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(m,b)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:b,onClick:h=>p(m)},e.toDisplayString(m.value),9,Ve))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),ze={key:0},R={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const l=a,t=e.computed(()=>{let n=["sw-skeleton-item"];return l.size.length>0&&n.push("sw-"+l.size),l.animate&&n.push("sw-animate"),l.class.length>0&&n.push(l.class),n}),o=e.computed(()=>({width:l.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(o.value)},[l.animate?(e.openBlock(),e.createElementBlock("div",ze)):e.createCommentVNode("",!0)],6))}},je=Object.freeze(Object.defineProperty({__proto__:null,default:R},Symbol.toStringTag,{value:"Module"})),Pe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const l=a;return(t,o)=>l.visual?e.renderSlot(t.$slots,"default",{key:0},()=>[o[0]||(o[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",l.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(R,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Oe=["name","id"],ve=["for","data-onlabel","data-offlabel"],Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),t=a,o=e.computed(()=>{let n=["sw-switch"];return t.size.length>0&&n.push("sw-"+t.size),t.checkbox&&n.push("sw-checkbox"),t.class.length>0&&n.push(t.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=i=>l.value=i)},null,8,Oe),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,ve),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ie=["onClick"],Ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),o=a,n=e.useModel(a,"modelValue"),d=l;return t.value=e.useSlots().default().filter(i=>i.type.__name==="SwTabsPane"),e.provide("activeTab",n),e.provide("tabs",t),(i,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(f,g)=>(e.openBlock(),e.createElementBlock("span",{key:g,class:e.normalizeClass([{active:n.value===g}]),onClick:D=>{n.value=g,d("tab-click",g)}},e.toDisplayString(f.props.label||f.props.title),11,Ie))),128))]),e.renderSlot(i.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Le=["onClick"],Ye=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsNew",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const t=e.ref([]),o=a,n=e.useModel(a,"modelValue"),d=l;return e.provide("activeTab",n),e.provide("tabs",t),e.provide("registerTab",i=>{t.value.push(i)}),(i,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(f,g)=>(e.openBlock(),e.createElementBlock("span",{key:g,class:e.normalizeClass([{active:n.value===g}]),onClick:D=>{n.value=g,d("tab-click",g)}},e.toDisplayString(f.props.label||f.props.title),11,Le))),128))]),e.renderSlot(i.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),qe={key:0,class:"tab-content"},Re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const l=a,t=e.inject("activeTab"),o=e.inject("tabs"),n=e.computed(()=>{const d=o.value.findIndex(i=>i.props.title===l.title);return t.value===d});return(d,i)=>n.value?(e.openBlock(),e.createElementBlock("div",qe,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),He={key:0,class:"tab-content"},We=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const l=a,t=e.inject("registerTab");if(!t)throw new Error("SwTabsPane must be used inside SwTabs");t({props:l});const o=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const d=e.inject("tabs").value.length-1;return(i,p)=>e.unref(o)===d?(e.openBlock(),e.createElementBlock("div",He,[e.renderSlot(i.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));T.Alert=I,T.Library=te,T.components=F,Object.defineProperty(T,Symbol.toStringTag,{value:"Module"})});
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "vue";
2
- import { A as s, L as t, c as e } from "./index-CUv3Avr3.js";
2
+ import { A as s, L as t, c as e } from "./index-DVBROBVH.js";
3
3
  export {
4
4
  s as Alert,
5
5
  t as Library,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/component-sw",
3
- "version": "0.3.42",
3
+ "version": "0.3.44",
4
4
  "description": "Vue components of Component SW collection.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -1,198 +0,0 @@
1
- import { ref as c, computed as K, createElementBlock as D, openBlock as f, createElementVNode as l, createCommentVNode as I, withModifiers as b, toDisplayString as y, unref as k, Fragment as x, renderList as S, normalizeClass as W } from "vue";
2
- import { p as Y } from "./index-CUv3Avr3.js";
3
- const ee = { class: "sw-data-picker" }, te = { class: "month_year" }, ae = { class: "text" }, ne = { class: "week" }, le = { class: "month" }, se = ["onClick"], oe = { key: 0 }, ue = { class: "month_year" }, re = { class: "text" }, ie = { class: "week" }, ve = { class: "month" }, ce = ["onClick"], ge = {
4
- __name: "SwDatePicker",
5
- props: {
6
- data: Object,
7
- limitation: {
8
- type: [Boolean, Array],
9
- default: () => !1
10
- },
11
- range: {
12
- type: String,
13
- default: "solid"
14
- }
15
- },
16
- emits: ["input"],
17
- setup(q, { emit: G }) {
18
- var V, A, P, R;
19
- const o = q, j = G, m = c(/* @__PURE__ */ new Date()), T = c(/* @__PURE__ */ new Date()), r = c((/* @__PURE__ */ new Date()).getFullYear()), u = c((/* @__PURE__ */ new Date()).getMonth()), B = c((/* @__PURE__ */ new Date()).getFullYear()), N = c((/* @__PURE__ */ new Date()).getMonth()), z = c((/* @__PURE__ */ new Date()).getMonth() + 1), s = c([]), F = c(0), v = c(-1), w = c(-1), H = c(navigator.languages || "ru"), _ = /en|zh|ja|he/.test(H.value) ? 0 : 1;
20
- K(() => o.range === "range" ? 2 : 1);
21
- const g = (t) => {
22
- let e = t.split(t.match(/\D.*?\D?/));
23
- return e[0].length > 2 ? e.join("-") + "T00:00:01" : e.reverse().join("-") + "T00:00:01";
24
- };
25
- (V = o.data) != null && V.startDate && (m.value = new Date(g(o.data.startDate)), r.value = m.value.getFullYear(), u.value = m.value.getMonth()), (A = o.data) != null && A.endDate && o.range === "range" && (T.value = new Date(g(o.data.endDate)), B.value = T.value.getFullYear(), N.value = T.value.getMonth());
26
- const L = () => {
27
- s.value = [], F.value = 0;
28
- const t = new Date(r.value, u.value, 0);
29
- for (let a = t.getDate() - t.getDay() + _; a <= t.getDate(); a++)
30
- t.getDay() !== 6 + _ && (s.value.push({ day: a, month: t.getMonth(), year: t.getFullYear(), class: [] }), F.value++);
31
- const e = new Date(r.value, u.value + 1, 0).getDate();
32
- for (let a = 1; a <= e; a++)
33
- s.value.push({ day: a, month: u.value, year: r.value, class: [] }), F.value++;
34
- if (o.range === "range") {
35
- const a = new Date(r.value, u.value + 1, 1), n = new Date(r.value, u.value + 2, 0).getDate();
36
- for (let d = 1; d <= n; d++)
37
- s.value.push({ day: d, month: a.getMonth(), year: a.getFullYear(), class: [] });
38
- }
39
- J();
40
- }, J = () => {
41
- var e;
42
- if (!((e = o.data) != null && e.holiday)) return;
43
- const t = (a, n) => {
44
- a.forEach((d) => {
45
- const [i, h, p] = d.split("-").map(Number), C = s.value.findIndex((E) => E.year === i && E.month + 1 === h && E.day === p);
46
- C !== -1 && (s.value[C].class[0] = n);
47
- });
48
- };
49
- t(o.data.holiday.preholidays, "preholiday"), t(o.data.holiday.holidays, "weekend"), t(o.data.holiday.holiday, "holiday"), t(o.data.holiday.nowork, "nowork");
50
- }, Q = () => {
51
- if (!o.limitation || o.limitation.length < 2) return !1;
52
- const t = [...o.limitation].sort(
53
- (e, a) => new Date(g(e.startDate)).getTime() - new Date(g(a.startDate)).getTime()
54
- );
55
- for (let e = 1; e < t.length; e++) {
56
- const a = new Date(g(t[e - 1].endDate));
57
- if (new Date(g(t[e].startDate)) <= a)
58
- return console.warn("Warning: Диапазоны пересекаются:", t[e - 1], t[e]), !0;
59
- }
60
- return !1;
61
- }, $ = (t, e, a) => {
62
- if (!o.limitation || o.limitation.length === 0) return !0;
63
- const n = new Date(t, e, a).getTime();
64
- for (let d of o.limitation) {
65
- const { startDate: i, endDate: h } = d;
66
- if (!i && h) {
67
- const p = new Date(g(h)).getTime();
68
- if (n <= p) return !1;
69
- }
70
- if (i && !h) {
71
- const p = new Date(g(i)).getTime();
72
- if (n >= p) return !1;
73
- }
74
- if (i && h) {
75
- const p = new Date(g(i)).getTime(), C = new Date(g(h)).getTime();
76
- if (p <= C) {
77
- if (n >= p && n <= C) return !1;
78
- } else if (n >= p || n <= C) return !1;
79
- }
80
- }
81
- return !0;
82
- }, O = (t, e) => {
83
- const a = Y(new Date(t.year, t.month, t.day), "{dd}.{m}.{Y}");
84
- o.range === "range" ? w.value !== -1 ? (U(), v.value = e, s.value[e].class[1] = "active") : v.value !== -1 ? (w.value = e, X(v.value, w.value, a)) : (v.value = e, s.value[e].class[1] = "active") : (v.value !== -1 && (s.value[v.value].class[1] = ""), v.value = e, s.value[e].class[1] = "active", j("input", { dateStart: a, count: 1 }));
85
- }, U = () => {
86
- s.value.forEach((t) => t.class[1] = ""), v.value = -1, w.value = -1;
87
- }, X = (t, e, a) => {
88
- let n = Y(new Date(s.value[t].year, s.value[t].month, s.value[t].day), "{dd}.{m}.{Y}"), d = Z(t, e);
89
- if (e >= t)
90
- for (let i = t + 1; i < e; i++)
91
- s.value[i].class[1] = "select";
92
- else
93
- for (let i = e + 1; i < t; i++)
94
- s.value[i].class[1] = "select";
95
- s.value[e].class[1] = "active", j("input", { dateStart: n, dateEnd: a, count: d });
96
- }, Z = (t, e) => {
97
- var i;
98
- let a = Math.abs(t - e) + 1, [n, d] = [Math.min(t, e), Math.max(t, e)];
99
- for (let h = n; h <= d; h++)
100
- ((i = s.value[h]) == null ? void 0 : i.class[0]) === "holiday" && a--;
101
- return a;
102
- }, M = (t, e) => {
103
- $(t, e) && (m.value = new Date(t, e, 1), r.value = m.value.getFullYear(), u.value = m.value.getMonth(), L());
104
- };
105
- if (L(), Q() && console.error("Ошибка: Найдены пересекающиеся диапазоны!"), (P = o.data) != null && P.startDate && (v.value = s.value.findIndex((t) => t.day === m.value.getDate() && t.month === u.value && t.year === r.value), v.value !== -1 && (s.value[v.value].class[1] = "active")), (R = o.data) != null && R.endDate && o.range === "range" && (w.value = s.value.findIndex((t) => t.day === T.value.getDate() && t.month === N.value && t.year === B.value), w.value !== -1)) {
106
- s.value[w.value].class[1] = "active";
107
- for (let t = v.value + 1; t < w.value; t++)
108
- s.value[t].class[1] = "select";
109
- }
110
- return (t, e) => (f(), D("div", ee, [
111
- l("div", null, [
112
- l("p", te, [
113
- l("span", null, [
114
- l("button", {
115
- onClick: e[0] || (e[0] = b((a) => M(r.value - 1, u.value), ["prevent"]))
116
- }, "«"),
117
- l("button", {
118
- onClick: e[1] || (e[1] = b((a) => M(r.value, u.value - 1), ["prevent"]))
119
- }, "‹")
120
- ]),
121
- l("span", ae, [
122
- l("button", null, y(r.value), 1),
123
- l("button", null, y(k(Y)(m.value.setMonth(u.value), "{F}")), 1)
124
- ]),
125
- l("span", null, [
126
- l("button", {
127
- onClick: e[2] || (e[2] = b((a) => M(r.value, u.value + 1), ["prevent"]))
128
- }, "›"),
129
- l("button", {
130
- onClick: e[3] || (e[3] = b((a) => M(r.value + 1, u.value), ["prevent"]))
131
- }, "»")
132
- ])
133
- ]),
134
- l("div", ne, [
135
- (f(), D(x, null, S(7, (a, n) => l("button", {
136
- key: n,
137
- class: "disabled"
138
- }, y(k(Y)(new Date(1970, 1, a + k(_)), "{D}")), 1)), 64))
139
- ]),
140
- l("div", le, [
141
- (f(!0), D(x, null, S(s.value, (a, n) => (f(), D(x, { key: n }, [
142
- n < F.value + (7 - new Date(r.value, u.value + 1, 1).getDay() + k(_)) % 7 ? (f(), D("button", {
143
- key: 0,
144
- class: W(a.month === u.value && $(a.year, a.month, a.day) ? a.class : "disabled"),
145
- onClick: () => {
146
- a.month === u.value && O(a, n);
147
- }
148
- }, y(a.day), 11, se)) : I("", !0)
149
- ], 64))), 128))
150
- ])
151
- ]),
152
- o.range === "range" ? (f(), D("div", oe, [
153
- l("p", ue, [
154
- l("span", null, [
155
- l("button", {
156
- onClick: e[4] || (e[4] = b((a) => M(r.value - 1, u.value), ["prevent"]))
157
- }, "«"),
158
- l("button", {
159
- onClick: e[5] || (e[5] = b((a) => M(r.value, u.value - 1), ["prevent"]))
160
- }, "‹")
161
- ]),
162
- l("span", re, [
163
- l("button", null, y(new Date(r.value, u.value + 1).getFullYear()), 1),
164
- l("button", null, y(k(Y)(m.value.setMonth(u.value + 1), "{F}")), 1)
165
- ]),
166
- l("span", null, [
167
- l("button", {
168
- onClick: e[6] || (e[6] = b((a) => M(r.value, u.value + 1), ["prevent"]))
169
- }, "›"),
170
- l("button", {
171
- onClick: e[7] || (e[7] = b((a) => M(r.value + 1, u.value), ["prevent"]))
172
- }, "»")
173
- ])
174
- ]),
175
- l("div", ie, [
176
- (f(), D(x, null, S(7, (a, n) => l("button", {
177
- key: n,
178
- class: "disabled"
179
- }, y(k(Y)(new Date(1970, 1, a + k(_)), "{D}")), 1)), 64))
180
- ]),
181
- l("div", ve, [
182
- (f(!0), D(x, null, S(s.value, (a, n) => (f(), D(x, { key: n }, [
183
- n >= F.value - (7 + new Date(r.value, u.value + 1, 1).getDay() - k(_)) % 7 ? (f(), D("button", {
184
- key: 0,
185
- class: W(a.month === z.value.getMonth() && $(a.year, a.month, a.day) ? a.class : "disabled"),
186
- onClick: () => {
187
- a.month === z.value.getMonth() && O(a, n);
188
- }
189
- }, y(a.day), 11, ce)) : I("", !0)
190
- ], 64))), 128))
191
- ])
192
- ])) : I("", !0)
193
- ]));
194
- }
195
- };
196
- export {
197
- ge as default
198
- };