@studio-west/component-sw 0.1.27 → 0.1.29

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,187 @@
1
+ import { ref as c, createElementBlock as g, openBlock as h, createElementVNode as o, createCommentVNode as k, withModifiers as Y, toDisplayString as y, unref as b, Fragment as x, renderList as F, normalizeClass as G } from "vue";
2
+ import { p as C } from "./index-gmNtBsqX.js";
3
+ const R = { class: "sw-data-picker" }, U = { class: "month_year" }, W = { class: "text" }, X = { class: "week" }, Z = { class: "month" }, ee = ["onClick"], te = { key: 0 }, ae = { class: "month_year" }, le = { class: "text" }, ne = { class: "week" }, ue = { class: "month" }, oe = ["onClick"], ve = {
4
+ __name: "SwDataPicker",
5
+ props: {
6
+ data: Object,
7
+ limitation: { type: [Boolean, Array], default: () => !1 },
8
+ // {endDate: '14-04-2025', startDate:'30-03-2025'}
9
+ range: { type: String, default: () => "solid" }
10
+ // range | solid
11
+ },
12
+ emits: ["input"],
13
+ setup(H, { emit: J }) {
14
+ var V, A, L, O, P, q;
15
+ const D = c(/* @__PURE__ */ new Date()), I = c(/* @__PURE__ */ new Date()), l = H, S = J, r = c((/* @__PURE__ */ new Date()).getFullYear()), T = c((/* @__PURE__ */ new Date()).getMonth()), $ = c((/* @__PURE__ */ new Date()).getFullYear()), i = c((/* @__PURE__ */ new Date()).getMonth()), u = c([]), E = c(0), M = c(0), v = c(-1), m = c(-1), K = c(navigator.languages || "ru"), p = /en|zh|ja|he/.test(K.value) ? 0 : 1, j = l.range === "range" ? 2 : 1, _ = (n) => {
16
+ const t = n.split(n.match(/\D.*?\D?/));
17
+ return t[0].length > 2 ? t.join("-") + "T00:00:01" : t.reverse().join("-") + "T00:00:01";
18
+ };
19
+ typeof ((V = l.data) == null ? void 0 : V.startDate) < "u" && ((A = l.data) == null ? void 0 : A.startDate) !== null && (D.value = new Date(_(l.data.startDate)), r.value = D.value.getFullYear(), i.value = D.value.getMonth()), typeof ((L = l.data) == null ? void 0 : L.endDate) < "u" && ((O = l.data) == null ? void 0 : O.endDate) !== null && (I.value = new Date(_(l.data.endDate)), $.value = I.value.getFullYear(), T.value = I.value.getMonth());
20
+ const B = () => {
21
+ var e;
22
+ let n = new Date(r.value, i.value, 0);
23
+ for (let a = n.getDate() - n.getDay() + p; a <= n.getDate() && n.getDay() !== 6 + p; a++)
24
+ E.value++, u.value.push({ day: a, month: n.getMonth(), year: n.getFullYear(), class: [] });
25
+ for (let a = 1; a <= new Date(r.value, i.value + 1, 0).getDate(); a++)
26
+ E.value++, u.value.push({ day: a, month: i.value, year: r.value, class: [] });
27
+ if (l.range === "range") {
28
+ M.value = new Date(r.value, i.value + 2, 0);
29
+ for (let a = 1; a <= M.value.getDate(); a++)
30
+ u.value.push({ day: a, month: M.value.getMonth(), year: M.value.getFullYear(), class: [] });
31
+ }
32
+ let t = new Date(r.value, i.value + j, 1);
33
+ console.log(t.getDay());
34
+ for (let a = 1; a <= (7 - t.getDay() + p) % 7 && t.getDay() !== p; a++)
35
+ u.value.push({ day: a, month: t.getMonth(), year: t.getFullYear(), class: [] });
36
+ typeof ((e = l.data) == null ? void 0 : e.holiday) < "u" && l.data.holiday.length !== 0 && (l.data.holiday.preholidays.forEach((a) => {
37
+ let s = a.split("-");
38
+ const f = u.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
39
+ f !== -1 && (u.value[f].class[0] = "preholiday");
40
+ }), l.data.holiday.holidays.forEach((a) => {
41
+ let s = a.split("-");
42
+ const f = u.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
43
+ f !== -1 && (u.value[f].class[0] = "weekend");
44
+ }), l.data.holiday.holiday.forEach((a) => {
45
+ let s = a.split("-");
46
+ const f = u.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
47
+ f !== -1 && (u.value[f].class[0] = "holiday");
48
+ }), l.data.holiday.nowork.forEach((a) => {
49
+ let s = a.split("-");
50
+ const f = u.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
51
+ f !== -1 && (u.value[f].class[0] = "nowork");
52
+ }));
53
+ }, z = (n, t) => {
54
+ let e = n - t + 1;
55
+ for (let a = 0; a <= n - t; a++)
56
+ u.value[a + t].class[0] === "holiday" && e--;
57
+ return e;
58
+ }, N = (n, t) => {
59
+ console.log(t);
60
+ const e = C(new Date(n.year, n.month, n.day), "{dd}.{m}.{Y}");
61
+ if (l.range === "range")
62
+ if (console.log(v.value), m.value !== -1) {
63
+ if (m.value <= v.value)
64
+ for (let a = m.value; a <= v.value; a++) u.value[a].class[1] = "";
65
+ else for (let a = v.value; a <= m.value; a++) u.value[a].class[1] = "";
66
+ v.value = t, m.value = -1, u.value[t].class[1] = "active";
67
+ } else if (v.value !== -1) {
68
+ if (m.value = t, m.value >= v.value)
69
+ for (let s = v.value + 1; s < t; s++) u.value[s].class[1] = "select";
70
+ else for (let s = t + 1; s < v.value; s++) u.value[s].class[1] = "select";
71
+ u.value[t].class[1] = "active";
72
+ let a = C(new Date(u.value[v.value].year, u.value[v.value].month, u.value[v.value].day), "{dd}.{m}.{Y}");
73
+ v.value > t ? S("input", { dateStart: e, dateEnd: a, count: z(v.value, t) }) : S("input", { dateStart: a, dateEnd: e, count: z(t, v.value) });
74
+ } else
75
+ v.value = t, u.value[t].class[1] = "active";
76
+ else
77
+ v.value !== -1 && (u.value[v.value].class[1] = ""), v.value = t, u.value[t].class[1] = "active", S("input", { dateStart: e, count: 1 });
78
+ };
79
+ if (B(), typeof ((P = l.data) == null ? void 0 : P.startDate) < "u" && (v.value = u.value.findIndex((n) => n.day === D.value.getDate() && n.month === i.value && n.year === r.value), u.value[v.value].class[1] = "active"), typeof ((q = l.data) == null ? void 0 : q.endDate) < "u" && l.range === "range") {
80
+ m.value = u.value.findIndex((n) => n.day === I.value.getDate() && n.month === T.value && n.year === $.value), u.value[m.value].class[1] = "active";
81
+ for (let n = v.value + 1; n < m.value; n++) u.value[n].class[1] = "select";
82
+ }
83
+ const w = (n, t) => {
84
+ Q(n, t) && (u.value = [], E.value = 0, D.value = new Date(n, t, 1), r.value = D.value.getFullYear(), i.value = D.value.getMonth(), B());
85
+ }, Q = (n, t) => {
86
+ if (!l.limitation) return !0;
87
+ if (l.limitation[0].dateStart) {
88
+ console.log(l.limitation[0].dateStart);
89
+ let e = l.limitation[0].dateStart.split(l.limitation[0].dateStart.match(/\D.*?\D?/));
90
+ if (e[0].length > 2 && e.reverse(), parseInt(e[2]) > n || parseInt(e[2]) === n && parseInt(e[1]) > t + 1) return !1;
91
+ }
92
+ if (l.limitation[l.limitation.length - 1].dateEnd) {
93
+ console.log(l.limitation[l.limitation.length - 1].dateEnd);
94
+ let e = l.limitation[l.limitation.length - 1].dateEnd.split(l.limitation[l.limitation.length - 1].dateEnd.match(/\D.*?\D?/));
95
+ if (e[0].length > 2 && e.reverse(), parseInt(e[2]) < n || parseInt(e[2]) === n && parseInt(e[1]) < t + j) return !1;
96
+ }
97
+ return !0;
98
+ };
99
+ return (n, t) => (h(), g("div", R, [
100
+ o("div", null, [
101
+ o("p", U, [
102
+ o("span", null, [
103
+ o("button", {
104
+ onClick: t[0] || (t[0] = Y((e) => w(r.value - 1, i.value), ["prevent"]))
105
+ }, "«"),
106
+ o("button", {
107
+ onClick: t[1] || (t[1] = Y((e) => w(r.value, i.value - 1), ["prevent"]))
108
+ }, "‹")
109
+ ]),
110
+ o("span", W, [
111
+ o("button", null, y(r.value), 1),
112
+ o("button", null, y(b(C)(D.value.setMonth(i.value), "{F}")), 1)
113
+ ]),
114
+ o("span", null, [
115
+ o("button", {
116
+ onClick: t[2] || (t[2] = Y((e) => w(r.value, i.value + 1), ["prevent"]))
117
+ }, "›"),
118
+ o("button", {
119
+ onClick: t[3] || (t[3] = Y((e) => w(r.value + 1, i.value), ["prevent"]))
120
+ }, "»")
121
+ ])
122
+ ]),
123
+ o("div", X, [
124
+ (h(), g(x, null, F(7, (e, a) => o("button", {
125
+ key: a,
126
+ class: "disabled"
127
+ }, y(b(C)(new Date(1970, 1, e + b(p)), "{D}")), 1)), 64))
128
+ ]),
129
+ o("div", Z, [
130
+ (h(!0), g(x, null, F(u.value, (e, a) => (h(), g(x, { key: a }, [
131
+ a < E.value + (7 - new Date(r.value, i.value + 1, 1).getDay() + b(p)) % 7 ? (h(), g("button", {
132
+ key: 0,
133
+ class: G(e.month === i.value && (!l.limitation || new Date(e.year, e.month, e.day + 1).getTime() > new Date(_(l.limitation[0].dateStart)).getTime() && new Date(e.year, e.month, e.day).getTime() < new Date(_(l.limitation[0].dateEnd)).getTime()) ? e.class : "disabled"),
134
+ onClick: () => {
135
+ e.month === i.value && N(e, a);
136
+ }
137
+ }, y(e.day), 11, ee)) : k("", !0)
138
+ ], 64))), 128))
139
+ ])
140
+ ]),
141
+ l.range === "range" ? (h(), g("div", te, [
142
+ o("p", ae, [
143
+ o("span", null, [
144
+ o("button", {
145
+ onClick: t[4] || (t[4] = (e) => w(r.value - 1, i.value))
146
+ }, "«"),
147
+ o("button", {
148
+ onClick: t[5] || (t[5] = (e) => w(r.value, i.value - 1))
149
+ }, "‹")
150
+ ]),
151
+ o("span", le, [
152
+ o("button", null, y(new Date(r.value, i.value + 1).getFullYear()), 1),
153
+ o("button", null, y(b(C)(D.value.setMonth(i.value + 1), "{F}")), 1)
154
+ ]),
155
+ o("span", null, [
156
+ o("button", {
157
+ onClick: t[6] || (t[6] = (e) => w(r.value, i.value + 1))
158
+ }, "›"),
159
+ o("button", {
160
+ onClick: t[7] || (t[7] = (e) => w(r.value + 1, i.value))
161
+ }, "»")
162
+ ])
163
+ ]),
164
+ o("div", ne, [
165
+ (h(), g(x, null, F(7, (e, a) => o("button", {
166
+ key: a,
167
+ class: "disabled"
168
+ }, y(b(C)(new Date(1970, 1, e + b(p)), "{D}")), 1)), 64))
169
+ ]),
170
+ o("div", ue, [
171
+ (h(!0), g(x, null, F(u.value, (e, a) => (h(), g(x, { key: a }, [
172
+ a >= E.value - (7 + new Date(r.value, i.value + 1, 1).getDay() - b(p)) % 7 ? (h(), g("button", {
173
+ key: 0,
174
+ class: G(e.month === M.value.getMonth() && (!l.limitation || new Date(e.year, e.month, e.day + 1).getTime() > new Date(_(l.limitation[0].dateStart)).getTime() && new Date(e.year, e.month, e.day).getTime() < new Date(_(l.limitation[0].dateEnd)).getTime()) ? e.class : "disabled"),
175
+ onClick: () => {
176
+ e.month === M.value.getMonth() && N(e, a);
177
+ }
178
+ }, y(e.day), 11, oe)) : k("", !0)
179
+ ], 64))), 128))
180
+ ])
181
+ ])) : k("", !0)
182
+ ]));
183
+ }
184
+ };
185
+ export {
186
+ ve as default
187
+ };
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- (function(B,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(B=typeof globalThis<"u"?globalThis:B||self,e(B["component-sw"]={},B.vue))})(this,function(B,e){"use strict";const z=Object.assign({"./components/SwButton.vue":()=>Promise.resolve().then(()=>A),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>H),"./components/SwDataPicker.vue":()=>Promise.resolve().then(()=>oe),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>se),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>re),"./components/SwInput.vue":()=>Promise.resolve().then(()=>ue),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>he),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Se),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>we),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>_e),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Be),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Te),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Ce)}),T={};for(const a in z){const n=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(o,l)=>l.toUpperCase());T[n]=e.defineAsyncComponent(()=>z[a]())}const R={install(a){Object.keys(T).forEach(n=>{a.component(n,T[n]),console.log(n)})}},v={__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 n=a,o=()=>{if(n.href.length>0){const t=document.createElement("a");t.setAttribute("href",n.href),t.setAttribute("target","_blank"),t.click()}},l=e.computed(()=>{let t=["sw-button"];return n.size.length>0&&t.push("sw-"+n.size),n.type.length>0&&t.push("sw-"+n.type),n.round&&t.push("sw-round"),n.text&&t.push("sw-text"),n.link&&t.push("sw-link"),n.class.length>0&&t.push(n.class),t});return(t,u)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:o},[e.renderSlot(t.$slots,"default")],2))}},A=Object.freeze(Object.defineProperty({__proto__:null,default:v},Symbol.toStringTag,{value:"Module"})),H=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{l.value="0px"});const n=e.ref("0px"),o=a,l=e.computed(()=>o.visual?`${n.value.scrollHeight}px`:"0px");return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:o.visual}]),style:e.normalizeStyle({height:l.value}),ref_key:"collapse",ref:n},[e.renderSlot(t.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"}));function q(a){return/^(https?:|mailto:|tel:)/.test(a)}function M(a,n){if(arguments.length===0||!a)return null;const o=n||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof a=="object"?l=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),l=new Date(a));const t="ru-RU",u={Y:l.getFullYear(),m:(l.getMonth()+1).toString().padStart(2,"0"),d:l.getDate(),dd:l.getDate().toString().padStart(2,"0"),G:l.getHours(),H:l.getHours().toString().padStart(2,"0"),i:l.getMinutes().toString().padStart(2,"0"),s:l.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(t,{weekday:"short"}).format(l),F:new Intl.DateTimeFormat(t,{month:"long"}).format(l),M:new Intl.DateTimeFormat(t,{month:"short"}).format(l)};return o.replace(/{(dd|[YmdGHisDFM])+}/g,(d,k)=>u[k])}const W={class:"sw-data-picker"},U={class:"month_year"},G={class:"text"},X={class:"week"},J={class:"month"},K=["onClick"],Q={key:0},Z={class:"month_year"},ee={class:"text"},te={class:"week"},le={class:"month"},ne=["onClick"],oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDataPicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:()=>"solid"}},emits:["input"],setup(a,{emit:n}){var I,F,Y,L;const o=e.ref(new Date),l=e.ref(new Date),t=a,u=n,d=e.ref(new Date().getFullYear()),k=e.ref(new Date().getMonth()),E=e.ref(new Date().getFullYear()),p=e.ref(new Date().getMonth()),c=e.ref([]),m=e.ref(0),y=e.ref(0),g=e.ref(-1),w=e.ref(-1),N=e.ref(navigator.languages||"ru"),S=/en|zh|ja|he/.test(N.value)?0:1,b=t.range==="range"?2:1,$=f=>{const r=f.split(f.match(/\D.*?\D?/));return r[0].length>2?r.join("-")+"T00:00:01":r.reverse().join("-")+"T00:00:01"};typeof((I=t.data)==null?void 0:I.startDate)<"u"&&(o.value=new Date($(t.data.startDate)),d.value=o.value.getFullYear(),p.value=o.value.getMonth()),typeof((F=t.data)==null?void 0:F.endDate)<"u"&&(l.value=new Date($(t.data.endDate)),E.value=l.value.getFullYear(),k.value=l.value.getMonth());const C=()=>{var s;let f=new Date(d.value,p.value,0);for(let i=f.getDate()-f.getDay()+S;i<=f.getDate()&&f.getDay()!==6+S;i++)m.value++,c.value.push({day:i,month:f.getMonth(),year:f.getFullYear(),class:[]});for(let i=1;i<=new Date(d.value,p.value+1,0).getDate();i++)m.value++,c.value.push({day:i,month:p.value,year:d.value,class:[]});if(t.range==="range"){y.value=new Date(d.value,p.value+2,0);for(let i=1;i<=y.value.getDate();i++)c.value.push({day:i,month:y.value.getMonth(),year:y.value.getFullYear(),class:[]})}let r=new Date(d.value,p.value+b,1);console.log(r.getDay());for(let i=1;i<=(7-r.getDay()+S)%7&&r.getDay()!==S;i++)c.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]});typeof((s=t.data)==null?void 0:s.holiday)<"u"&&t.data.holiday.length!==0&&(t.data.holiday.preholidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="preholiday")}),t.data.holiday.holidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="weekend")}),t.data.holiday.holiday.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="holiday")}),t.data.holiday.nowork.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="nowork")}))},x=(f,r)=>{let s=f-r+1;for(let i=0;i<=f-r;i++)c.value[i+r].class[0]==="holiday"&&s--;return s},O=(f,r)=>{console.log(r);const s=M(new Date(f.year,f.month,f.day),"{dd}.{m}.{Y}");if(t.range==="range")if(console.log(g.value),w.value!==-1){if(w.value<=g.value)for(let i=w.value;i<=g.value;i++)c.value[i].class[1]="";else for(let i=g.value;i<=w.value;i++)c.value[i].class[1]="";g.value=r,w.value=-1,c.value[r].class[1]="active"}else if(g.value!==-1){if(w.value=r,w.value>=g.value)for(let h=g.value+1;h<r;h++)c.value[h].class[1]="select";else for(let h=r+1;h<g.value;h++)c.value[h].class[1]="select";c.value[r].class[1]="active";let i=M(new Date(c.value[g.value].year,c.value[g.value].month,c.value[g.value].day),"{dd}.{m}.{Y}");g.value>r?u("input",{dateStart:s,dateEnd:i,count:x(g.value,r)}):u("input",{dateStart:i,dateEnd:s,count:x(r,g.value)})}else g.value=r,c.value[r].class[1]="active";else g.value!==-1&&(c.value[g.value].class[1]=""),g.value=r,c.value[r].class[1]="active",u("input",{dateStart:s,count:1})};if(C(),typeof((Y=t.data)==null?void 0:Y.startDate)<"u"&&(g.value=c.value.findIndex(f=>f.day===o.value.getDate()&&f.month===p.value&&f.year===d.value),c.value[g.value].class[1]="active"),typeof((L=t.data)==null?void 0:L.endDate)<"u"&&t.range==="range"){w.value=c.value.findIndex(f=>f.day===l.value.getDate()&&f.month===k.value&&f.year===E.value),c.value[w.value].class[1]="active";for(let f=g.value+1;f<w.value;f++)c.value[f].class[1]="select"}const V=(f,r)=>{ze(f,r)&&(c.value=[],m.value=0,o.value=new Date(f,r,1),d.value=o.value.getFullYear(),p.value=o.value.getMonth(),C())},ze=(f,r)=>{if(!t.limitation)return!0;if(t.limitation[0].dateStart){console.log(t.limitation[0].dateStart);let s=t.limitation[0].dateStart.split(t.limitation[0].dateStart.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])>f||parseInt(s[2])===f&&parseInt(s[1])>r+1)return!1}if(t.limitation[t.limitation.length-1].dateEnd){console.log(t.limitation[t.limitation.length-1].dateEnd);let s=t.limitation[t.limitation.length-1].dateEnd.split(t.limitation[t.limitation.length-1].dateEnd.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])<f||parseInt(s[2])===f&&parseInt(s[1])<r+b)return!1}return!0};return(f,r)=>(e.openBlock(),e.createElementBlock("div",W,[e.createElementVNode("div",null,[e.createElementVNode("p",U,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[0]||(r[0]=e.withModifiers(s=>V(d.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:r[1]||(r[1]=e.withModifiers(s=>V(d.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",G,[e.createElementVNode("button",null,e.toDisplayString(d.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[2]||(r[2]=e.withModifiers(s=>V(d.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:r[3]||(r[3]=e.withModifiers(s=>V(d.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",X,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",J,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i<m.value+(7-new Date(d.value,p.value+1,1).getDay()+e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===p.value&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(t.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(t.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===p.value&&O(s,i)}},e.toDisplayString(s.day),11,K)):e.createCommentVNode("",!0)],64))),128))])]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",Q,[e.createElementVNode("p",Z,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[4]||(r[4]=s=>V(d.value-1,p.value))},"«"),e.createElementVNode("button",{onClick:r[5]||(r[5]=s=>V(d.value,p.value-1))},"‹")]),e.createElementVNode("span",ee,[e.createElementVNode("button",null,e.toDisplayString(new Date(d.value,p.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[6]||(r[6]=s=>V(d.value,p.value+1))},"›"),e.createElementVNode("button",{onClick:r[7]||(r[7]=s=>V(d.value+1,p.value))},"»")])]),e.createElementVNode("div",te,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",le,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i>=m.value-(7+new Date(d.value,p.value+1,1).getDay()-e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===y.value.getMonth()&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(t.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(t.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===y.value.getMonth()&&O(s,i)}},e.toDisplayString(s.day),11,ne)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),ae=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}},setup(a){const n=a,o=e.ref(!1),l=e.ref(null),t=e.ref(null),u=e.ref({}),d=e.computed(()=>{let m=["sw-dropdown"];return n.size.length>0&&m.push("sw-"+n.size),n.type.length>0&&m.push("sw-"+n.type),m}),k=async()=>{if(await e.nextTick(),!t.value)return;l.value.focus(),l.value.addEventListener("blur",()=>o.value=!1);const m=l.value.getBoundingClientRect(),y=window.pageYOffset||document.documentElement.scrollTop,g=window.pageXOffset||document.documentElement.scrollLeft,w=t.value.offsetHeight,N=t.value.offsetWidth;let S=m.left+m.width/2+g,b=m.bottom-m.height/2+y;const[$,C]=n.placement.split("-",2);switch(console.log(n.placement),$){case"bottom":b=b+m.height/2+8;break;case"top":b=b-m.height/2-8-w;break;case"left":S=S-N-m.width/2-10,b=b-w/2;break;case"right":S=S+m.width/2+8,b=b-w/2;break}switch(C){case"left":S=S-N+m.width/2;break;case"right":S=S-m.width/2;break}S<0&&(S=0),b<0&&(b=0),u.value={position:"absolute",top:`${b}px`,left:`${S}px`,maxWidth:n.maxWidth===0?"":`${n.maxWidth}px`}},E=async()=>{o.value=!o.value,o.value&&await k()},p=()=>{o.value&&k()},c=m=>{t.value&&t.value.contains(m.target),console.log(t.value&&!t.value.contains(m.target)),console.log(l.value&&!l.value.contains(m.target))};return e.onMounted(()=>{l.value.addEventListener("click",c,!0),window.addEventListener("resize",p)}),e.onUnmounted(()=>{l.value.removeEventListener("click",c,!0),window.removeEventListener("resize",p)}),(m,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value),onClick:y[0]||(y[0]=e.withModifiers(g=>E(),["stop"])),ref_key:"dropdownRef",ref:l},[e.renderSlot(m.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:t,class:e.normalizeClass(["sw-dropdown-popup",n.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(m.$slots,"dropdown")],6)):e.createCommentVNode("",!0)]))],2))}}},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 n=a,o=e.computed(()=>{let l=["sw-dropdown-item"];return n.size.length>0&&l.push("sw-"+n.size),n.type.length>0&&l.push("sw-"+n.type),n.class.length>0&&l.push(n.class),l});return(l,t)=>{const u=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(o.value)},[e.createVNode(u,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(l.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let l=["sw-form-item"];return n.type.length>0&&l.push("sw-"+n.type),n.class.length>0&&l.push(n.class),l});return(l,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),ie=(a,n)=>{const o=a.__vccOpts||a;for(const[l,t]of n)o[l]=t;return o},ce={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return q(this.iconClass)}}},de=["href"];function pe(a,n,o,l,t,u){return u.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+o.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 "+o.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+o.prefix+"-"+o.iconClass},null,8,de)],16))}const P=ie(ce,[["render",pe]]),me=["for"],fe=["placeholder","type","id","name"],ue=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"}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix"],["update:modelValue"]),setup(a,{emit:n}){var c;const o=e.useModel(a,"modelValue"),l=a,t=e.ref(null),u=n,d=()=>{t.value!==null&&(t.value.style.top="-.6em")},k=()=>{var m;((m=o.value)==null?void 0:m.length)==0&&t.value!==null&&t.value.removeAttribute("style")};((c=o.value)==null?void 0:c.length)>0&&t.value!==null&&(t.value.style.top="-.6em");const E=()=>{u("suffix")},p=e.computed(()=>{let m=["sw-input"];return l.size.length>0&&m.push("sw-"+l.size),l.class.length>0&&m.push(l.class),m});return(m,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value)},[l.before.length>0?(e.openBlock(),e.createBlock(P,{key:0,"icon-class":l.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),l.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:l.name,ref_key:"lab",ref:t},[e.createTextVNode(e.toDisplayString(l.label),1),y[1]||(y[1]=e.createElementVNode("span",{title:"Это поле обязательно для заполнения."},"*",-1))],8,me)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":y[0]||(y[0]=g=>o.value=g),required:"required",placeholder:l.placeholder,type:l.type,id:l.name,name:l.name,size:"60",onFocus:d,onBlur:k,maxlength:"128"},null,40,fe),[[e.vModelDynamic,o.value]]),l.after.length>0?(e.openBlock(),e.createBlock(P,{key:3,"icon-class":l.after,onClick:E},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ge={key:0},he=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 n=e.useModel(a,"modelValue"),o=a,l=e.ref(null);return(t,u)=>{const d=e.resolveComponent("svg-icon");return n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",o.class]),ref_key:"messageRef",ref:l},[o.name.length>0?(e.openBlock(),e.createElementBlock("header",ge,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(o.name)+" ",1),e.createVNode(v,{link:"",type:"primary",onClick:u[0]||(u[0]=k=>n.value=!1)},{default:e.withCtx(()=>[e.createVNode(d,{"icon-class":o.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"default",{},()=>[u[1]||(u[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Se=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 n=a;return(o,l)=>{const t=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(n.class)},[e.createElementVNode("header",null,[e.renderSlot(o.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(n.name)+" ",1),e.createVNode(t,{"icon-class":n.iconAfter},null,8,["icon-class"])])]),e.renderSlot(o.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(o.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),ye={key:0},j={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let t=["sw-skeleton-item"];return n.size.length>0&&t.push("sw-"+n.size),n.animate&&t.push("sw-animate"),n.class.length>0&&t.push(n.class),t}),l=e.computed(()=>({width:n.width+"%"}));return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),style:e.normalizeStyle(l.value)},[n.animate?(e.openBlock(),e.createElementBlock("div",ye)):e.createCommentVNode("",!0)],6))}},_e=Object.freeze(Object.defineProperty({__proto__:null,default:j},Symbol.toStringTag,{value:"Module"})),we=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const n=a;return(o,l)=>n.visual?e.renderSlot(o.$slots,"default",{key:0},()=>[l[0]||(l[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",n.class])},[e.renderSlot(o.$slots,"skeleton",{},()=>[e.createVNode(j,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),be=["name","id"],ke=["for","data-onlabel","data-offlabel"],Ee=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:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const n=e.useModel(a,"modelValue"),o=a;return(l,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-switch",o.class])},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:o.name,class:"sw-control",id:o.id,"onUpdate:modelValue":t[0]||(t[0]=u=>n.value=u)},null,8,be),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{for:o.id,class:"sw-label","data-onlabel":o.on,"data-offlabel":o.off},null,8,ke),e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),De=["onClick"],Be=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:n}){e.ref(0);const o=e.ref([]),l=a,t=e.useModel(a,"modelValue"),u=n;return o.value=e.useSlots().default().filter(d=>d.type.__name==="SwTabsPane"),e.provide("activeTab",t),e.provide("tabs",o),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:t.value===p}]),onClick:c=>{t.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,De))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),$e=["onClick"],Ve=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:n}){e.ref(0);const o=e.ref([]),l=a,t=e.useModel(a,"modelValue"),u=n;return e.provide("activeTab",t),e.provide("tabs",o),e.provide("registerTab",d=>{o.value.push(d)}),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:t.value===p}]),onClick:c=>{t.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,$e))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Me={key:0,class:"tab-content"},Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const n=a,o=e.inject("activeTab"),l=e.inject("tabs"),t=e.computed(()=>{const u=l.value.findIndex(d=>d.props.title===n.title);return o.value===u});return(u,d)=>t.value?(e.openBlock(),e.createElementBlock("div",Me,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Ne={key:0,class:"tab-content"},Ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const n=a,o=e.inject("registerTab");if(!o)throw new Error("SwTabsPane must be used inside SwTabs");o({props:n});const l=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const u=e.inject("tabs").value.length-1;return(d,k)=>e.unref(l)===u?(e.openBlock(),e.createElementBlock("div",Ne,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));B.components=T,B.default=R,Object.defineProperties(B,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(B,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(B=typeof globalThis<"u"?globalThis:B||self,e(B["component-sw"]={},B.vue))})(this,function(B,e){"use strict";const z=Object.assign({"./components/SwButton.vue":()=>Promise.resolve().then(()=>q),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>W),"./components/SwDataPicker.vue":()=>Promise.resolve().then(()=>se),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>re),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>ie),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>ce),"./components/SwInput.vue":()=>Promise.resolve().then(()=>he),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>ye),"./components/SwSection.vue":()=>Promise.resolve().then(()=>_e),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>ke),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>be),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Be),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Te),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Ce),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>ve)}),T={};for(const a in z){const n=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(o,l)=>l.toUpperCase());T[n]=e.defineAsyncComponent(()=>z[a]())}const H={install(a){Object.keys(T).forEach(n=>{a.component(n,T[n]),console.log(n)})}},v={__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 n=a,o=()=>{if(n.href.length>0){const t=document.createElement("a");t.setAttribute("href",n.href),t.setAttribute("target","_blank"),t.click()}},l=e.computed(()=>{let t=["sw-button"];return n.size.length>0&&t.push("sw-"+n.size),n.type.length>0&&t.push("sw-"+n.type),n.round&&t.push("sw-round"),n.text&&t.push("sw-text"),n.link&&t.push("sw-link"),n.class.length>0&&t.push(n.class),t});return(t,u)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:o},[e.renderSlot(t.$slots,"default")],2))}},q=Object.freeze(Object.defineProperty({__proto__:null,default:v},Symbol.toStringTag,{value:"Module"})),W=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{l.value="0px"});const n=e.ref("0px"),o=a,l=e.computed(()=>o.visual?`${n.value.scrollHeight}px`:"0px");return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:o.visual}]),style:e.normalizeStyle({height:l.value}),ref_key:"collapse",ref:n},[e.renderSlot(t.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"}));function U(a){return/^(https?:|mailto:|tel:)/.test(a)}function M(a,n){if(arguments.length===0||!a)return null;const o=n||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof a=="object"?l=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),l=new Date(a));const t="ru-RU",u={Y:l.getFullYear(),m:(l.getMonth()+1).toString().padStart(2,"0"),d:l.getDate(),dd:l.getDate().toString().padStart(2,"0"),G:l.getHours(),H:l.getHours().toString().padStart(2,"0"),i:l.getMinutes().toString().padStart(2,"0"),s:l.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(t,{weekday:"short"}).format(l),F:new Intl.DateTimeFormat(t,{month:"long"}).format(l),M:new Intl.DateTimeFormat(t,{month:"short"}).format(l)};return o.replace(/{(dd|[YmdGHisDFM])+}/g,(d,k)=>u[k])}const G={class:"sw-data-picker"},X={class:"month_year"},J={class:"text"},K={class:"week"},Q={class:"month"},Z=["onClick"],ee={key:0},te={class:"month_year"},le={class:"text"},ne={class:"week"},oe={class:"month"},ae=["onClick"],se=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDataPicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:()=>"solid"}},emits:["input"],setup(a,{emit:n}){var I,F,Y,L,R,A;const o=e.ref(new Date),l=e.ref(new Date),t=a,u=n,d=e.ref(new Date().getFullYear()),k=e.ref(new Date().getMonth()),E=e.ref(new Date().getFullYear()),p=e.ref(new Date().getMonth()),c=e.ref([]),m=e.ref(0),y=e.ref(0),g=e.ref(-1),w=e.ref(-1),N=e.ref(navigator.languages||"ru"),S=/en|zh|ja|he/.test(N.value)?0:1,b=t.range==="range"?2:1,$=f=>{const r=f.split(f.match(/\D.*?\D?/));return r[0].length>2?r.join("-")+"T00:00:01":r.reverse().join("-")+"T00:00:01"};typeof((I=t.data)==null?void 0:I.startDate)<"u"&&((F=t.data)==null?void 0:F.startDate)!==null&&(o.value=new Date($(t.data.startDate)),d.value=o.value.getFullYear(),p.value=o.value.getMonth()),typeof((Y=t.data)==null?void 0:Y.endDate)<"u"&&((L=t.data)==null?void 0:L.endDate)!==null&&(l.value=new Date($(t.data.endDate)),E.value=l.value.getFullYear(),k.value=l.value.getMonth());const C=()=>{var s;let f=new Date(d.value,p.value,0);for(let i=f.getDate()-f.getDay()+S;i<=f.getDate()&&f.getDay()!==6+S;i++)m.value++,c.value.push({day:i,month:f.getMonth(),year:f.getFullYear(),class:[]});for(let i=1;i<=new Date(d.value,p.value+1,0).getDate();i++)m.value++,c.value.push({day:i,month:p.value,year:d.value,class:[]});if(t.range==="range"){y.value=new Date(d.value,p.value+2,0);for(let i=1;i<=y.value.getDate();i++)c.value.push({day:i,month:y.value.getMonth(),year:y.value.getFullYear(),class:[]})}let r=new Date(d.value,p.value+b,1);console.log(r.getDay());for(let i=1;i<=(7-r.getDay()+S)%7&&r.getDay()!==S;i++)c.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]});typeof((s=t.data)==null?void 0:s.holiday)<"u"&&t.data.holiday.length!==0&&(t.data.holiday.preholidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="preholiday")}),t.data.holiday.holidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="weekend")}),t.data.holiday.holiday.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="holiday")}),t.data.holiday.nowork.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="nowork")}))},x=(f,r)=>{let s=f-r+1;for(let i=0;i<=f-r;i++)c.value[i+r].class[0]==="holiday"&&s--;return s},O=(f,r)=>{console.log(r);const s=M(new Date(f.year,f.month,f.day),"{dd}.{m}.{Y}");if(t.range==="range")if(console.log(g.value),w.value!==-1){if(w.value<=g.value)for(let i=w.value;i<=g.value;i++)c.value[i].class[1]="";else for(let i=g.value;i<=w.value;i++)c.value[i].class[1]="";g.value=r,w.value=-1,c.value[r].class[1]="active"}else if(g.value!==-1){if(w.value=r,w.value>=g.value)for(let h=g.value+1;h<r;h++)c.value[h].class[1]="select";else for(let h=r+1;h<g.value;h++)c.value[h].class[1]="select";c.value[r].class[1]="active";let i=M(new Date(c.value[g.value].year,c.value[g.value].month,c.value[g.value].day),"{dd}.{m}.{Y}");g.value>r?u("input",{dateStart:s,dateEnd:i,count:x(g.value,r)}):u("input",{dateStart:i,dateEnd:s,count:x(r,g.value)})}else g.value=r,c.value[r].class[1]="active";else g.value!==-1&&(c.value[g.value].class[1]=""),g.value=r,c.value[r].class[1]="active",u("input",{dateStart:s,count:1})};if(C(),typeof((R=t.data)==null?void 0:R.startDate)<"u"&&(g.value=c.value.findIndex(f=>f.day===o.value.getDate()&&f.month===p.value&&f.year===d.value),c.value[g.value].class[1]="active"),typeof((A=t.data)==null?void 0:A.endDate)<"u"&&t.range==="range"){w.value=c.value.findIndex(f=>f.day===l.value.getDate()&&f.month===k.value&&f.year===E.value),c.value[w.value].class[1]="active";for(let f=g.value+1;f<w.value;f++)c.value[f].class[1]="select"}const V=(f,r)=>{Pe(f,r)&&(c.value=[],m.value=0,o.value=new Date(f,r,1),d.value=o.value.getFullYear(),p.value=o.value.getMonth(),C())},Pe=(f,r)=>{if(!t.limitation)return!0;if(t.limitation[0].dateStart){console.log(t.limitation[0].dateStart);let s=t.limitation[0].dateStart.split(t.limitation[0].dateStart.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])>f||parseInt(s[2])===f&&parseInt(s[1])>r+1)return!1}if(t.limitation[t.limitation.length-1].dateEnd){console.log(t.limitation[t.limitation.length-1].dateEnd);let s=t.limitation[t.limitation.length-1].dateEnd.split(t.limitation[t.limitation.length-1].dateEnd.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])<f||parseInt(s[2])===f&&parseInt(s[1])<r+b)return!1}return!0};return(f,r)=>(e.openBlock(),e.createElementBlock("div",G,[e.createElementVNode("div",null,[e.createElementVNode("p",X,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[0]||(r[0]=e.withModifiers(s=>V(d.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:r[1]||(r[1]=e.withModifiers(s=>V(d.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",J,[e.createElementVNode("button",null,e.toDisplayString(d.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[2]||(r[2]=e.withModifiers(s=>V(d.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:r[3]||(r[3]=e.withModifiers(s=>V(d.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",K,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",Q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i<m.value+(7-new Date(d.value,p.value+1,1).getDay()+e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===p.value&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(t.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(t.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===p.value&&O(s,i)}},e.toDisplayString(s.day),11,Z)):e.createCommentVNode("",!0)],64))),128))])]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ee,[e.createElementVNode("p",te,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[4]||(r[4]=s=>V(d.value-1,p.value))},"«"),e.createElementVNode("button",{onClick:r[5]||(r[5]=s=>V(d.value,p.value-1))},"‹")]),e.createElementVNode("span",le,[e.createElementVNode("button",null,e.toDisplayString(new Date(d.value,p.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[6]||(r[6]=s=>V(d.value,p.value+1))},"›"),e.createElementVNode("button",{onClick:r[7]||(r[7]=s=>V(d.value+1,p.value))},"»")])]),e.createElementVNode("div",ne,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",oe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i>=m.value-(7+new Date(d.value,p.value+1,1).getDay()-e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===y.value.getMonth()&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(t.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(t.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===y.value.getMonth()&&O(s,i)}},e.toDisplayString(s.day),11,ae)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),re=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}},setup(a){const n=a,o=e.ref(!1),l=e.ref(null),t=e.ref(null),u=e.ref({}),d=e.computed(()=>{let m=["sw-dropdown"];return n.size.length>0&&m.push("sw-"+n.size),n.type.length>0&&m.push("sw-"+n.type),m}),k=async()=>{if(await e.nextTick(),!t.value)return;l.value.focus(),l.value.addEventListener("blur",()=>o.value=!1);const m=l.value.getBoundingClientRect(),y=window.pageYOffset||document.documentElement.scrollTop,g=window.pageXOffset||document.documentElement.scrollLeft,w=t.value.offsetHeight,N=t.value.offsetWidth;let S=m.left+m.width/2+g,b=m.bottom-m.height/2+y;const[$,C]=n.placement.split("-",2);switch(console.log(n.placement),$){case"bottom":b=b+m.height/2+8;break;case"top":b=b-m.height/2-8-w;break;case"left":S=S-N-m.width/2-10,b=b-w/2;break;case"right":S=S+m.width/2+8,b=b-w/2;break}switch(C){case"left":S=S-N+m.width/2;break;case"right":S=S-m.width/2;break}S<0&&(S=0),b<0&&(b=0),u.value={position:"absolute",top:`${b}px`,left:`${S}px`,maxWidth:n.maxWidth===0?"":`${n.maxWidth}px`}},E=async()=>{o.value=!o.value,o.value&&await k()},p=()=>{o.value&&k()},c=m=>{t.value&&t.value.contains(m.target),console.log(t.value&&!t.value.contains(m.target)),console.log(l.value&&!l.value.contains(m.target))};return e.onMounted(()=>{l.value.addEventListener("click",c,!0),window.addEventListener("resize",p)}),e.onUnmounted(()=>{l.value.removeEventListener("click",c,!0),window.removeEventListener("resize",p)}),(m,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value),onClick:y[0]||(y[0]=e.withModifiers(g=>E(),["stop"])),ref_key:"dropdownRef",ref:l},[e.renderSlot(m.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:t,class:e.normalizeClass(["sw-dropdown-popup",n.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(m.$slots,"dropdown")],6)):e.createCommentVNode("",!0)]))],2))}}},Symbol.toStringTag,{value:"Module"})),ie=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 n=a,o=e.computed(()=>{let l=["sw-dropdown-item"];return n.size.length>0&&l.push("sw-"+n.size),n.type.length>0&&l.push("sw-"+n.type),n.class.length>0&&l.push(n.class),l});return(l,t)=>{const u=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(o.value)},[e.createVNode(u,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(l.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let l=["sw-form-item"];return n.type.length>0&&l.push("sw-"+n.type),n.class.length>0&&l.push(n.class),l});return(l,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),de=(a,n)=>{const o=a.__vccOpts||a;for(const[l,t]of n)o[l]=t;return o},pe={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return U(this.iconClass)}}},me=["href"];function fe(a,n,o,l,t,u){return u.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+o.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 "+o.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+o.prefix+"-"+o.iconClass},null,8,me)],16))}const P=de(pe,[["render",fe]]),ue=["for"],ge=["placeholder","type","id","name"],he=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix"],["update:modelValue"]),setup(a,{emit:n}){var c;const o=e.useModel(a,"modelValue"),l=a,t=e.ref(null),u=n,d=()=>{t.value!==null&&(t.value.style.top="-.6em")},k=()=>{var m;((m=o.value)==null?void 0:m.length)==0&&t.value!==null&&t.value.removeAttribute("style")};((c=o.value)==null?void 0:c.length)>0&&t.value!==null&&(t.value.style.top="-.6em");const E=()=>{u("suffix")},p=e.computed(()=>{let m=["sw-input"];return l.size.length>0&&m.push("sw-"+l.size),l.class.length>0&&m.push(l.class),m});return(m,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value)},[l.before.length>0?(e.openBlock(),e.createBlock(P,{key:0,"icon-class":l.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),l.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:l.name,ref_key:"lab",ref:t},[e.createTextVNode(e.toDisplayString(l.label),1),y[1]||(y[1]=e.createElementVNode("span",{title:"Это поле обязательно для заполнения."},"*",-1))],8,ue)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":y[0]||(y[0]=g=>o.value=g),required:"required",placeholder:l.placeholder,type:l.type,id:l.name,name:l.name,size:"60",onFocus:d,onBlur:k,maxlength:"128"},null,40,ge),[[e.vModelDynamic,o.value]]),l.after.length>0?(e.openBlock(),e.createBlock(P,{key:3,"icon-class":l.after,onClick:E},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),Se={key:0},ye=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 n=e.useModel(a,"modelValue"),o=a,l=e.ref(null);return(t,u)=>{const d=e.resolveComponent("svg-icon");return n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",o.class]),ref_key:"messageRef",ref:l},[o.name.length>0?(e.openBlock(),e.createElementBlock("header",Se,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(o.name)+" ",1),e.createVNode(v,{link:"",type:"primary",onClick:u[0]||(u[0]=k=>n.value=!1)},{default:e.withCtx(()=>[e.createVNode(d,{"icon-class":o.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"default",{},()=>[u[1]||(u[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),_e=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 n=a;return(o,l)=>{const t=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(n.class)},[e.createElementVNode("header",null,[e.renderSlot(o.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(n.name)+" ",1),e.createVNode(t,{"icon-class":n.iconAfter},null,8,["icon-class"])])]),e.renderSlot(o.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(o.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),we={key:0},j={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let t=["sw-skeleton-item"];return n.size.length>0&&t.push("sw-"+n.size),n.animate&&t.push("sw-animate"),n.class.length>0&&t.push(n.class),t}),l=e.computed(()=>({width:n.width+"%"}));return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),style:e.normalizeStyle(l.value)},[n.animate?(e.openBlock(),e.createElementBlock("div",we)):e.createCommentVNode("",!0)],6))}},be=Object.freeze(Object.defineProperty({__proto__:null,default:j},Symbol.toStringTag,{value:"Module"})),ke=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const n=a;return(o,l)=>n.visual?e.renderSlot(o.$slots,"default",{key:0},()=>[l[0]||(l[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",n.class])},[e.renderSlot(o.$slots,"skeleton",{},()=>[e.createVNode(j,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ee=["name","id"],De=["for","data-onlabel","data-offlabel"],Be=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:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const n=e.useModel(a,"modelValue"),o=a;return(l,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-switch",o.class])},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:o.name,class:"sw-control",id:o.id,"onUpdate:modelValue":t[0]||(t[0]=u=>n.value=u)},null,8,Ee),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{for:o.id,class:"sw-label","data-onlabel":o.on,"data-offlabel":o.off},null,8,De),e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),$e=["onClick"],Ve=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:n}){e.ref(0);const o=e.ref([]),l=a,t=e.useModel(a,"modelValue"),u=n;return o.value=e.useSlots().default().filter(d=>d.type.__name==="SwTabsPane"),e.provide("activeTab",t),e.provide("tabs",o),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:t.value===p}]),onClick:c=>{t.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,$e))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Me=["onClick"],Te=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:n}){e.ref(0);const o=e.ref([]),l=a,t=e.useModel(a,"modelValue"),u=n;return e.provide("activeTab",t),e.provide("tabs",o),e.provide("registerTab",d=>{o.value.push(d)}),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:t.value===p}]),onClick:c=>{t.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,Me))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ne={key:0,class:"tab-content"},Ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const n=a,o=e.inject("activeTab"),l=e.inject("tabs"),t=e.computed(()=>{const u=l.value.findIndex(d=>d.props.title===n.title);return o.value===u});return(u,d)=>t.value?(e.openBlock(),e.createElementBlock("div",Ne,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),ze={key:0,class:"tab-content"},ve=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const n=a,o=e.inject("registerTab");if(!o)throw new Error("SwTabsPane must be used inside SwTabs");o({props:n});const l=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const u=e.inject("tabs").value.length-1;return(d,k)=>e.unref(l)===u?(e.openBlock(),e.createElementBlock("div",ze,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));B.components=T,B.default=H,Object.defineProperties(B,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineAsyncComponent as m } from "vue";
2
- const n = /* @__PURE__ */ Object.assign({ "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CjL9dpO-.js"), "./components/SwDataPicker.vue": () => import("./SwDataPicker-BxHS2kRb.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-B-MCzAkv.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CgahR93o.js"), "./components/SwInput.vue": () => import("./SwInput-BjacwiyF.js"), "./components/SwMessage.vue": () => import("./SwMessage-BB2yKYsR.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-375THfdW.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") }), t = {};
2
+ const n = /* @__PURE__ */ Object.assign({ "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CjL9dpO-.js"), "./components/SwDataPicker.vue": () => import("./SwDataPicker-BoYQOOZ_.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-B-MCzAkv.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CgahR93o.js"), "./components/SwInput.vue": () => import("./SwInput-BjacwiyF.js"), "./components/SwMessage.vue": () => import("./SwMessage-BB2yKYsR.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-375THfdW.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") }), t = {};
3
3
  for (const e in n) {
4
4
  const o = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (s, p) => p.toUpperCase());
5
5
  t[o] = m(() => n[e]());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/component-sw",
3
- "version": "0.1.27",
3
+ "version": "0.1.29",
4
4
  "description": "Vue components of Component SW collection.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -1,187 +0,0 @@
1
- import { ref as c, createElementBlock as g, openBlock as h, createElementVNode as u, createCommentVNode as k, withModifiers as Y, toDisplayString as y, unref as b, Fragment as x, renderList as F, normalizeClass as P } from "vue";
2
- import { p as C } from "./index-gmNtBsqX.js";
3
- const K = { class: "sw-data-picker" }, Q = { class: "month_year" }, R = { class: "text" }, U = { class: "week" }, W = { class: "month" }, X = ["onClick"], Z = { key: 0 }, ee = { class: "month_year" }, te = { class: "text" }, ae = { class: "week" }, le = { class: "month" }, ne = ["onClick"], ie = {
4
- __name: "SwDataPicker",
5
- props: {
6
- data: Object,
7
- limitation: { type: [Boolean, Array], default: () => !1 },
8
- // {dateEnd:"30.12.2024",dateStart:"30.11.2024"}
9
- range: { type: String, default: () => "solid" }
10
- // range | solid
11
- },
12
- emits: ["input"],
13
- setup(q, { emit: G }) {
14
- var V, A, L, O;
15
- const D = c(/* @__PURE__ */ new Date()), I = c(/* @__PURE__ */ new Date()), n = q, S = G, r = c((/* @__PURE__ */ new Date()).getFullYear()), T = c((/* @__PURE__ */ new Date()).getMonth()), $ = c((/* @__PURE__ */ new Date()).getFullYear()), i = c((/* @__PURE__ */ new Date()).getMonth()), o = c([]), E = c(0), M = c(0), v = c(-1), m = c(-1), H = c(navigator.languages || "ru"), p = /en|zh|ja|he/.test(H.value) ? 0 : 1, j = n.range === "range" ? 2 : 1, _ = (l) => {
16
- const t = l.split(l.match(/\D.*?\D?/));
17
- return t[0].length > 2 ? t.join("-") + "T00:00:01" : t.reverse().join("-") + "T00:00:01";
18
- };
19
- typeof ((V = n.data) == null ? void 0 : V.startDate) < "u" && (D.value = new Date(_(n.data.startDate)), r.value = D.value.getFullYear(), i.value = D.value.getMonth()), typeof ((A = n.data) == null ? void 0 : A.endDate) < "u" && (I.value = new Date(_(n.data.endDate)), $.value = I.value.getFullYear(), T.value = I.value.getMonth());
20
- const B = () => {
21
- var e;
22
- let l = new Date(r.value, i.value, 0);
23
- for (let a = l.getDate() - l.getDay() + p; a <= l.getDate() && l.getDay() !== 6 + p; a++)
24
- E.value++, o.value.push({ day: a, month: l.getMonth(), year: l.getFullYear(), class: [] });
25
- for (let a = 1; a <= new Date(r.value, i.value + 1, 0).getDate(); a++)
26
- E.value++, o.value.push({ day: a, month: i.value, year: r.value, class: [] });
27
- if (n.range === "range") {
28
- M.value = new Date(r.value, i.value + 2, 0);
29
- for (let a = 1; a <= M.value.getDate(); a++)
30
- o.value.push({ day: a, month: M.value.getMonth(), year: M.value.getFullYear(), class: [] });
31
- }
32
- let t = new Date(r.value, i.value + j, 1);
33
- console.log(t.getDay());
34
- for (let a = 1; a <= (7 - t.getDay() + p) % 7 && t.getDay() !== p; a++)
35
- o.value.push({ day: a, month: t.getMonth(), year: t.getFullYear(), class: [] });
36
- typeof ((e = n.data) == null ? void 0 : e.holiday) < "u" && n.data.holiday.length !== 0 && (n.data.holiday.preholidays.forEach((a) => {
37
- let s = a.split("-");
38
- const f = o.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
39
- f !== -1 && (o.value[f].class[0] = "preholiday");
40
- }), n.data.holiday.holidays.forEach((a) => {
41
- let s = a.split("-");
42
- const f = o.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
43
- f !== -1 && (o.value[f].class[0] = "weekend");
44
- }), n.data.holiday.holiday.forEach((a) => {
45
- let s = a.split("-");
46
- const f = o.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
47
- f !== -1 && (o.value[f].class[0] = "holiday");
48
- }), n.data.holiday.nowork.forEach((a) => {
49
- let s = a.split("-");
50
- const f = o.value.findIndex((d) => d.year == s[0] && d.month + 1 == s[1] && d.day == s[2]);
51
- f !== -1 && (o.value[f].class[0] = "nowork");
52
- }));
53
- }, z = (l, t) => {
54
- let e = l - t + 1;
55
- for (let a = 0; a <= l - t; a++)
56
- o.value[a + t].class[0] === "holiday" && e--;
57
- return e;
58
- }, N = (l, t) => {
59
- console.log(t);
60
- const e = C(new Date(l.year, l.month, l.day), "{dd}.{m}.{Y}");
61
- if (n.range === "range")
62
- if (console.log(v.value), m.value !== -1) {
63
- if (m.value <= v.value)
64
- for (let a = m.value; a <= v.value; a++) o.value[a].class[1] = "";
65
- else for (let a = v.value; a <= m.value; a++) o.value[a].class[1] = "";
66
- v.value = t, m.value = -1, o.value[t].class[1] = "active";
67
- } else if (v.value !== -1) {
68
- if (m.value = t, m.value >= v.value)
69
- for (let s = v.value + 1; s < t; s++) o.value[s].class[1] = "select";
70
- else for (let s = t + 1; s < v.value; s++) o.value[s].class[1] = "select";
71
- o.value[t].class[1] = "active";
72
- let a = C(new Date(o.value[v.value].year, o.value[v.value].month, o.value[v.value].day), "{dd}.{m}.{Y}");
73
- v.value > t ? S("input", { dateStart: e, dateEnd: a, count: z(v.value, t) }) : S("input", { dateStart: a, dateEnd: e, count: z(t, v.value) });
74
- } else
75
- v.value = t, o.value[t].class[1] = "active";
76
- else
77
- v.value !== -1 && (o.value[v.value].class[1] = ""), v.value = t, o.value[t].class[1] = "active", S("input", { dateStart: e, count: 1 });
78
- };
79
- if (B(), typeof ((L = n.data) == null ? void 0 : L.startDate) < "u" && (v.value = o.value.findIndex((l) => l.day === D.value.getDate() && l.month === i.value && l.year === r.value), o.value[v.value].class[1] = "active"), typeof ((O = n.data) == null ? void 0 : O.endDate) < "u" && n.range === "range") {
80
- m.value = o.value.findIndex((l) => l.day === I.value.getDate() && l.month === T.value && l.year === $.value), o.value[m.value].class[1] = "active";
81
- for (let l = v.value + 1; l < m.value; l++) o.value[l].class[1] = "select";
82
- }
83
- const w = (l, t) => {
84
- J(l, t) && (o.value = [], E.value = 0, D.value = new Date(l, t, 1), r.value = D.value.getFullYear(), i.value = D.value.getMonth(), B());
85
- }, J = (l, t) => {
86
- if (!n.limitation) return !0;
87
- if (n.limitation[0].dateStart) {
88
- console.log(n.limitation[0].dateStart);
89
- let e = n.limitation[0].dateStart.split(n.limitation[0].dateStart.match(/\D.*?\D?/));
90
- if (e[0].length > 2 && e.reverse(), parseInt(e[2]) > l || parseInt(e[2]) === l && parseInt(e[1]) > t + 1) return !1;
91
- }
92
- if (n.limitation[n.limitation.length - 1].dateEnd) {
93
- console.log(n.limitation[n.limitation.length - 1].dateEnd);
94
- let e = n.limitation[n.limitation.length - 1].dateEnd.split(n.limitation[n.limitation.length - 1].dateEnd.match(/\D.*?\D?/));
95
- if (e[0].length > 2 && e.reverse(), parseInt(e[2]) < l || parseInt(e[2]) === l && parseInt(e[1]) < t + j) return !1;
96
- }
97
- return !0;
98
- };
99
- return (l, t) => (h(), g("div", K, [
100
- u("div", null, [
101
- u("p", Q, [
102
- u("span", null, [
103
- u("button", {
104
- onClick: t[0] || (t[0] = Y((e) => w(r.value - 1, i.value), ["prevent"]))
105
- }, "«"),
106
- u("button", {
107
- onClick: t[1] || (t[1] = Y((e) => w(r.value, i.value - 1), ["prevent"]))
108
- }, "‹")
109
- ]),
110
- u("span", R, [
111
- u("button", null, y(r.value), 1),
112
- u("button", null, y(b(C)(D.value.setMonth(i.value), "{F}")), 1)
113
- ]),
114
- u("span", null, [
115
- u("button", {
116
- onClick: t[2] || (t[2] = Y((e) => w(r.value, i.value + 1), ["prevent"]))
117
- }, "›"),
118
- u("button", {
119
- onClick: t[3] || (t[3] = Y((e) => w(r.value + 1, i.value), ["prevent"]))
120
- }, "»")
121
- ])
122
- ]),
123
- u("div", U, [
124
- (h(), g(x, null, F(7, (e, a) => u("button", {
125
- key: a,
126
- class: "disabled"
127
- }, y(b(C)(new Date(1970, 1, e + b(p)), "{D}")), 1)), 64))
128
- ]),
129
- u("div", W, [
130
- (h(!0), g(x, null, F(o.value, (e, a) => (h(), g(x, { key: a }, [
131
- a < E.value + (7 - new Date(r.value, i.value + 1, 1).getDay() + b(p)) % 7 ? (h(), g("button", {
132
- key: 0,
133
- class: P(e.month === i.value && (!n.limitation || new Date(e.year, e.month, e.day + 1).getTime() > new Date(_(n.limitation[0].dateStart)).getTime() && new Date(e.year, e.month, e.day).getTime() < new Date(_(n.limitation[0].dateEnd)).getTime()) ? e.class : "disabled"),
134
- onClick: () => {
135
- e.month === i.value && N(e, a);
136
- }
137
- }, y(e.day), 11, X)) : k("", !0)
138
- ], 64))), 128))
139
- ])
140
- ]),
141
- n.range === "range" ? (h(), g("div", Z, [
142
- u("p", ee, [
143
- u("span", null, [
144
- u("button", {
145
- onClick: t[4] || (t[4] = (e) => w(r.value - 1, i.value))
146
- }, "«"),
147
- u("button", {
148
- onClick: t[5] || (t[5] = (e) => w(r.value, i.value - 1))
149
- }, "‹")
150
- ]),
151
- u("span", te, [
152
- u("button", null, y(new Date(r.value, i.value + 1).getFullYear()), 1),
153
- u("button", null, y(b(C)(D.value.setMonth(i.value + 1), "{F}")), 1)
154
- ]),
155
- u("span", null, [
156
- u("button", {
157
- onClick: t[6] || (t[6] = (e) => w(r.value, i.value + 1))
158
- }, "›"),
159
- u("button", {
160
- onClick: t[7] || (t[7] = (e) => w(r.value + 1, i.value))
161
- }, "»")
162
- ])
163
- ]),
164
- u("div", ae, [
165
- (h(), g(x, null, F(7, (e, a) => u("button", {
166
- key: a,
167
- class: "disabled"
168
- }, y(b(C)(new Date(1970, 1, e + b(p)), "{D}")), 1)), 64))
169
- ]),
170
- u("div", le, [
171
- (h(!0), g(x, null, F(o.value, (e, a) => (h(), g(x, { key: a }, [
172
- a >= E.value - (7 + new Date(r.value, i.value + 1, 1).getDay() - b(p)) % 7 ? (h(), g("button", {
173
- key: 0,
174
- class: P(e.month === M.value.getMonth() && (!n.limitation || new Date(e.year, e.month, e.day + 1).getTime() > new Date(_(n.limitation[0].dateStart)).getTime() && new Date(e.year, e.month, e.day).getTime() < new Date(_(n.limitation[0].dateEnd)).getTime()) ? e.class : "disabled"),
175
- onClick: () => {
176
- e.month === M.value.getMonth() && N(e, a);
177
- }
178
- }, y(e.day), 11, ne)) : k("", !0)
179
- ], 64))), 128))
180
- ])
181
- ])) : k("", !0)
182
- ]));
183
- }
184
- };
185
- export {
186
- ie as default
187
- };