@studio-west/component-sw 0.5.52 → 0.5.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{SwDatePicker-B_s8kkZl.js → SwDatePicker-BtPWbwWf.js} +1 -1
- package/dist/{SwDropdown-DF46L6wC.js → SwDropdown-81JUBcVU.js} +46 -43
- package/dist/{SwInput-BlaFiTGG.js → SwInput-C72HoPFB.js} +1 -1
- package/dist/{index-BRo94LCC.js → index-BJZdYzen.js} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref as D, computed as le, createElementBlock as v, openBlock as i, createElementVNode as r, createCommentVNode as N, withModifiers as c, renderSlot as M, createTextVNode as $, toDisplayString as k, unref as F, Fragment as T, renderList as E, normalizeClass as V } from "vue";
|
|
2
|
-
import { p as I } from "./index-
|
|
2
|
+
import { p as I } from "./index-BJZdYzen.js";
|
|
3
3
|
const ne = { class: "sw-data-picker" }, se = { class: "month_year" }, oe = { class: "text" }, ue = {
|
|
4
4
|
key: 0,
|
|
5
5
|
class: "week"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { mergeModels as P, useModel as
|
|
2
|
-
const
|
|
1
|
+
import { mergeModels as P, useModel as N, ref as v, computed as D, watchEffect as U, nextTick as $, onMounted as X, onUnmounted as Y, createElementBlock as M, openBlock as h, withModifiers as E, normalizeClass as S, renderSlot as z, createBlock as j, Teleport as q, createCommentVNode as A, normalizeStyle as F, unref as G } from "vue";
|
|
2
|
+
const I = ["id"], K = {
|
|
3
3
|
__name: "SwDropdown",
|
|
4
4
|
props: /* @__PURE__ */ P({
|
|
5
5
|
class: { type: String, default: "" },
|
|
@@ -13,28 +13,28 @@ const G = ["id"], K = {
|
|
|
13
13
|
modelModifiers: {}
|
|
14
14
|
}),
|
|
15
15
|
emits: ["update:modelValue"],
|
|
16
|
-
setup(y, { expose:
|
|
17
|
-
const l = y,
|
|
16
|
+
setup(y, { expose: C }) {
|
|
17
|
+
const l = y, s = N(y, "modelValue"), a = v(null), w = v(null), g = v({}), k = Math.ceil(Math.random() * 1e3), b = v(0), T = D(
|
|
18
18
|
() => {
|
|
19
19
|
let n = ["sw-dropdown"];
|
|
20
20
|
return l.size.length > 0 && n.push("sw-" + l.size), l.type.length > 0 && n.push("sw-" + l.type), n;
|
|
21
21
|
}
|
|
22
22
|
);
|
|
23
|
-
|
|
24
|
-
if (console.log("watchEffect"), !
|
|
25
|
-
|
|
23
|
+
U(async () => {
|
|
24
|
+
if (console.log("watchEffect"), !s.value) {
|
|
25
|
+
g.value = {};
|
|
26
26
|
return;
|
|
27
27
|
}
|
|
28
|
-
if (!
|
|
28
|
+
if (await $(), !w.value || !a.value) return;
|
|
29
29
|
b.value;
|
|
30
|
-
const n =
|
|
30
|
+
const n = w.value, d = a.value, i = window.pageYOffset || document.documentElement.scrollTop, f = window.pageXOffset || document.documentElement.scrollLeft;
|
|
31
31
|
document.body.style.cssText = `position:fixed;top:-${i}px;left:-${f}px;`;
|
|
32
|
-
const o =
|
|
32
|
+
const o = d.getBoundingClientRect(), H = window.innerWidth, B = window.innerHeight, u = n.offsetHeight, m = n.offsetWidth;
|
|
33
33
|
let e = o.left + o.width / 2 + f, t = o.top + o.height / 2 + i;
|
|
34
|
-
const r = o.height / 2 + 8, [
|
|
35
|
-
switch (
|
|
34
|
+
const r = o.height / 2 + 8, [V, O] = l.placement.split("-", 2);
|
|
35
|
+
switch (V) {
|
|
36
36
|
case "bottom":
|
|
37
|
-
t = i +
|
|
37
|
+
t = i + B - u - r - 8 < t ? t - r - u : t + r;
|
|
38
38
|
break;
|
|
39
39
|
case "top":
|
|
40
40
|
t = i + u + r + 8 > t ? t + r : t - r - u;
|
|
@@ -46,15 +46,15 @@ const G = ["id"], K = {
|
|
|
46
46
|
e = e + o.width / 2 + 8, t = t - u / 2;
|
|
47
47
|
break;
|
|
48
48
|
}
|
|
49
|
-
switch (
|
|
49
|
+
switch (O) {
|
|
50
50
|
case "left":
|
|
51
|
-
e = f +
|
|
51
|
+
e = f + H - 8 > e - o.width / 2 + m ? e - o.width / 2 : e - m + o.width / 2;
|
|
52
52
|
break;
|
|
53
53
|
case "right":
|
|
54
54
|
e = 8 < e + o.width / 2 - m ? e - m + o.width / 2 : e - o.width / 2;
|
|
55
55
|
break;
|
|
56
56
|
}
|
|
57
|
-
e < 0 && (e = 0), t < 0 && (t = 0),
|
|
57
|
+
e < 0 && (e = 0), t < 0 && (t = 0), g.value = {
|
|
58
58
|
position: "absolute",
|
|
59
59
|
top: `${t}px`,
|
|
60
60
|
left: `${e}px`,
|
|
@@ -62,45 +62,48 @@ const G = ["id"], K = {
|
|
|
62
62
|
}, document.body.style.position = "", document.body.style.top = "", document.body.style.left = "", document.documentElement.scrollTop = i, document.documentElement.scrollLeft = f;
|
|
63
63
|
}, {
|
|
64
64
|
flush: "post"
|
|
65
|
-
})
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
l.trigger === "
|
|
72
|
-
},
|
|
73
|
-
l.trigger === "
|
|
65
|
+
});
|
|
66
|
+
const x = async () => {
|
|
67
|
+
await $(), b.value++;
|
|
68
|
+
};
|
|
69
|
+
C({ positionPopup: x });
|
|
70
|
+
const W = () => {
|
|
71
|
+
l.trigger === "click" && (s.value = !s.value), console.log("click");
|
|
72
|
+
}, L = () => {
|
|
73
|
+
l.trigger === "hover" && (s.value = !s.value);
|
|
74
|
+
}, R = () => {
|
|
75
|
+
l.trigger === "context" && (s.value = !s.value);
|
|
74
76
|
}, c = () => {
|
|
77
|
+
s.value && x();
|
|
75
78
|
}, p = (n) => {
|
|
76
|
-
!n.target.closest(`[id="${k}"]`) && a.value && !a.value.contains(n.target) && (
|
|
79
|
+
!n.target.closest(`[id="${k}"]`) && a.value && !a.value.contains(n.target) && (s.value = !1);
|
|
77
80
|
};
|
|
78
|
-
return
|
|
81
|
+
return X(() => {
|
|
79
82
|
window.addEventListener("resize", c), document.documentElement.ontouchstart !== void 0 ? document.documentElement.addEventListener("touchstart", p) : document.documentElement.addEventListener("click", p), document.documentElement.onscrollend !== void 0 ? document.documentElement.addEventListener("scrollend", c) : document.documentElement.addEventListener("scroll", c);
|
|
80
|
-
}),
|
|
83
|
+
}), Y(() => {
|
|
81
84
|
window.removeEventListener("resize", c), document.documentElement.ontouchstart !== void 0 ? document.documentElement.removeEventListener("touchstart", p) : document.documentElement.removeEventListener("click", p), document.documentElement.onscrollend !== void 0 ? document.documentElement.removeEventListener("scrollend", c) : document.documentElement.removeEventListener("scroll", c);
|
|
82
|
-
}), (n,
|
|
83
|
-
class:
|
|
84
|
-
onClick:
|
|
85
|
-
onMouseover:
|
|
86
|
-
onMouseleave:
|
|
87
|
-
onContextmenu:
|
|
85
|
+
}), (n, d) => (h(), M("div", {
|
|
86
|
+
class: S(T.value),
|
|
87
|
+
onClick: d[0] || (d[0] = (i) => W()),
|
|
88
|
+
onMouseover: d[1] || (d[1] = E((i) => L(), ["stop"])),
|
|
89
|
+
onMouseleave: d[2] || (d[2] = E((i) => L(), ["stop"])),
|
|
90
|
+
onContextmenu: d[3] || (d[3] = E((i) => R(), ["stop"])),
|
|
88
91
|
ref_key: "dropdownRef",
|
|
89
92
|
ref: a
|
|
90
93
|
}, [
|
|
91
|
-
|
|
92
|
-
(
|
|
93
|
-
|
|
94
|
+
z(n.$slots, "default"),
|
|
95
|
+
(h(), j(q, { to: "body" }, [
|
|
96
|
+
s.value ? (h(), M("ul", {
|
|
94
97
|
key: 0,
|
|
95
98
|
ref_key: "popupRef",
|
|
96
|
-
ref:
|
|
97
|
-
id:
|
|
98
|
-
class:
|
|
99
|
-
style:
|
|
99
|
+
ref: w,
|
|
100
|
+
id: G(k),
|
|
101
|
+
class: S(["sw-dropdown-popup", l.class]),
|
|
102
|
+
style: F(g.value),
|
|
100
103
|
tabindex: "-1"
|
|
101
104
|
}, [
|
|
102
|
-
|
|
103
|
-
], 14,
|
|
105
|
+
z(n.$slots, "dropdown")
|
|
106
|
+
], 14, I)) : A("", !0)
|
|
104
107
|
]))
|
|
105
108
|
], 34));
|
|
106
109
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { mergeModels as y, useModel as D, ref as V, computed as C, watch as I, createElementBlock as d, openBlock as u, normalizeClass as M, createBlock as v, renderSlot as _, createCommentVNode as x, withDirectives as A, createTextVNode as E, toDisplayString as R, createElementVNode as T, vModelDynamic as F } from "vue";
|
|
2
|
-
import { S } from "./index-
|
|
2
|
+
import { S } from "./index-BJZdYzen.js";
|
|
3
3
|
const O = ["for"], U = {
|
|
4
4
|
key: 0,
|
|
5
5
|
title: "Это поле обязательно для заполнения."
|
|
@@ -144,7 +144,7 @@ function w(e = {}) {
|
|
|
144
144
|
}), t = n.mount(document.createElement("div"));
|
|
145
145
|
l.appendChild(t.$el);
|
|
146
146
|
}
|
|
147
|
-
const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-85-tKHA7.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CuN3EbT6.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-
|
|
147
|
+
const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-85-tKHA7.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CuN3EbT6.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-BtPWbwWf.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-81JUBcVU.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-wFMHwJJk.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CaA4jsoa.js"), "./components/SwInput.vue": () => import("./SwInput-C72HoPFB.js"), "./components/SwMessage.vue": () => import("./SwMessage-DgnLjLHt.js"), "./components/SwSection.vue": () => import("./SwSection-CQfw3-el.js"), "./components/SwSelect.vue": () => import("./SwSelect-C2RKinez.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-B7ysp8L9.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-FMwJbEH7.js"), "./components/SwTabs.vue": () => import("./SwTabs-DkSI4oAh.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-Dwtj8g7T.js") }), d = {};
|
|
148
148
|
for (const e in h) {
|
|
149
149
|
const n = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (t, o) => o.toUpperCase());
|
|
150
150
|
d[n] = P(() => h[e]());
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(z,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(z=typeof globalThis<"u"?globalThis:z||self,e(z["component-sw"]={},z.vue))})(this,function(z,e){"use strict";function ee(s){return/^(https?:|mailto:|tel:)/.test(s)}function I(s,o){if(arguments.length===0||!s)return null;const t=o||"{Y}-{m}-{d} {G}:{i}:{s}";let n;typeof s=="object"?n=s:(typeof s=="string"&&(/^[0-9]+$/.test(s)?s=parseInt(s):s=s.replace(new RegExp(/-/gm),"/")),typeof s=="number"&&s.toString().length===10&&(s=s*1e3),n=new Date(s));const l="ru-RU",d={Y:n.getFullYear(),m:(n.getMonth()+1).toString().padStart(2,"0"),d:n.getDate(),dd:n.getDate().toString().padStart(2,"0"),G:n.getHours(),H:n.getHours().toString().padStart(2,"0"),i:n.getMinutes().toString().padStart(2,"0"),s:n.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(l,{weekday:"short"}).format(n),F:new Intl.DateTimeFormat(l,{month:"long"}).format(n),M:new Intl.DateTimeFormat(l,{month:"short"}).format(n)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>d[p])}const te=(s,o)=>{const t=s.__vccOpts||s;for(const[n,l]of o)t[n]=l;return t},ne={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return ee(this.iconClass)}}},oe=["href"];function le(s,o,t,n,l,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},s.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},s.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,oe)],16))}const Y=te(ne,[["render",le]]),W={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:s=>["success","warning","error","info"].includes(s)}},emits:["closed"],setup(s,{emit:o}){const t=s,n=o,l=e.ref(!1);let d=null;const u=()=>{l.value=!0,M()},p=()=>{l.value=!1,n("closed")},c=()=>{d&&(clearTimeout(d),d=null)},g=()=>{M()},M=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const _=e.computed(()=>{const m=["sw-alert"];return t.size.length>0&&m.push(`sw-${t.size}`),t.type.length>0&&m.push(`sw-${t.type}`),t.class.length>0&&m.push(t.class),m});return(m,w)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(_.value),onMouseenter:c,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(Y,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),e.renderSlot(m.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(Y,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},ae=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"}));let L=document.querySelector("div.sw-alert-wrapper");function q(s={}){L||(L=document.createElement("div"),L.className="sw-alert-wrapper",document.body.appendChild(L));const o=e.createApp({setup(){return()=>e.h(W,{...s,onClose:()=>{L.removeChild(o._container),o.unmount()}})}}),t=o.mount(document.createElement("div"));L.appendChild(t.$el)}const G=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ae),"./components/SwButton.vue":()=>Promise.resolve().then(()=>re),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ie),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>$e),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>Me),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Ce),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Te),"./components/SwInput.vue":()=>Promise.resolve().then(()=>ze),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>je),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Oe),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Ae),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>He),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Re),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>We),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Je),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Ze)}),R={};for(const s in G){const o=s.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,n)=>n.toUpperCase());R[o]=e.defineAsyncComponent(()=>G[s]())}const se={install(s){Object.keys(R).forEach(o=>{s.component(o,R[o]),console.log(o)}),s.config.globalProperties.$Alert=q,s.provide("Alert",q)}},X={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(s){const o=s,t=()=>{if(o.href.length>0){const l=document.createElement("a");l.setAttribute("href",o.href),l.setAttribute("target","_blank"),l.click()}},n=e.computed(()=>{let l=["sw-button"];return o.size.length>0&&l.push("sw-"+o.size),o.type.length>0&&l.push("sw-"+o.type),o.round&&l.push("sw-round"),o.text&&l.push("sw-text"),o.link&&l.push("sw-link"),o.class.length>0&&l.push(o.class),l});return(l,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(n.value),onClick:t},[e.renderSlot(l.$slots,"default")],2))}},re=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"})),ie=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(s){e.onMounted(()=>{n.value="0px"});const o=e.ref(null),t=s;e.watch(()=>t.visual,()=>l());const n=e.ref("0px"),l=()=>{o.value&&(n.value=t.visual?o.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{l(),o.value&&(d=new ResizeObserver(l),d.observe(o.value))}),e.onBeforeUnmount(()=>{d&&d.disconnect()}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({maxHeight:n.value}),ref_key:"collapse",ref:o},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ce={class:"sw-data-picker"},de={class:"month_year"},pe={class:"text"},me={key:0,class:"week"},fe={key:1,class:"year"},ue=["onClick"],ge={key:2,class:"month"},he=["onClick"],ye={key:0},we={class:"month_year"},ke={class:"text"},Se={key:0,class:"week"},_e={key:1,class:"year"},be=["onClick"],Be={key:2,class:"month"},Ee=["onClick"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(s,{emit:o}){var H,Q,Z,K;const t=s,n=o,l=e.ref(3),d=e.ref(new Date),u=e.ref(new Date),p=e.ref(new Date().getFullYear()),c=e.ref(new Date().getMonth()),g=e.ref(new Date().getFullYear()),M=e.ref(new Date().getMonth()),_=e.ref(new Date(p.value,c.value+1,1).getMonth()),m=e.ref([]),w=e.ref(0),h=e.ref(-1),k=e.ref(-1),b=e.ref(navigator.language||"ru"),y=/en|zh|ja|he/.test(b.value)?0:1,C=e.computed(()=>Array.from({length:12},(r,a)=>{const i=new Date(2024,a);return new Intl.DateTimeFormat(b.value,{month:"long"}).format(i)})),E=r=>{let a=r.split(r.match(/\D.*?\D?/));return a[0].length>2?a.join("-")+"T00:00:01":a.reverse().join("-")+"T00:00:01"};(H=t.data)!=null&&H.startDate&&(d.value=new Date(E(t.data.startDate)),p.value=d.value.getFullYear(),c.value=d.value.getMonth()),(Q=t.data)!=null&&Q.endDate&&t.range==="range"&&(u.value=new Date(E(t.data.endDate)),g.value=u.value.getFullYear(),M.value=u.value.getMonth());const S=()=>{m.value=[],w.value=0;const r=new Date(p.value,c.value,0);for(let i=r.getDate()-r.getDay()+y;i<=r.getDate();i++)r.getDay()!==6+y&&(m.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]}),w.value++);const a=new Date(p.value,c.value+1,0).getDate();for(let i=1;i<=a;i++)m.value.push({day:i,month:c.value,year:p.value,class:[]}),w.value++;if(t.range==="range"){const i=new Date(p.value,c.value+1,1),f=new Date(p.value,c.value+2,0).getDate();for(let B=1;B<=f;B++)m.value.push({day:B,month:i.getMonth(),year:i.getFullYear(),class:[]})}P()},P=()=>{var a;if(!((a=t.data)!=null&&a.holiday))return;const r=(i,f)=>{i.forEach(B=>{const[x,V,O]=B.split("-").map(Number),A=m.value.findIndex(U=>U.year===x&&U.month+1===V&&U.day===O);A!==-1&&(m.value[A].class[0]=f)})};r(t.data.holiday.preholidays,"preholiday"),r(t.data.holiday.holidays,"weekend"),r(t.data.holiday.holiday,"holiday"),r(t.data.holiday.nowork,"nowork")},F=()=>{if(!t.limitation||t.limitation.length<2)return!1;const r=[...t.limitation].sort((a,i)=>new Date(E(a.startDate)).getTime()-new Date(E(i.startDate)).getTime());for(let a=1;a<r.length;a++){const i=new Date(E(r[a-1].endDate));if(new Date(E(r[a].startDate))<=i)return console.warn("Warning: Диапазоны пересекаются:",r[a-1],r[a]),!0}return!1},N=(r,a,i)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(r,a,i).getTime();for(let B of t.limitation){const{startDate:x,endDate:V}=B;if(!x&&V){const O=new Date(E(V)).getTime();if(f<=O)return!1}if(x&&!V){const O=new Date(E(x)).getTime();if(f>=O)return!1}if(x&&V){const O=new Date(E(x)).getTime(),A=new Date(E(V)).getTime();if(O<=A){if(f>=O&&f<=A)return!1}else if(f>=O||f<=A)return!1}}return!0},v=(r,a)=>{const i=I(new Date(r.year,r.month,r.day),"{dd}.{m}.{Y}");t.range==="range"?k.value!==-1?($(),h.value=a,m.value[a].class[1]="active"):h.value!==-1?(k.value=a,D(h.value,k.value,i)):(h.value=a,m.value[a].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=a,m.value[a].class[1]="active",n("input",{dateStart:i,count:1}))},$=()=>{m.value.forEach(r=>r.class[1]=""),h.value=-1,k.value=-1},D=(r,a,i)=>{let f=I(new Date(m.value[r].year,m.value[r].month,m.value[r].day),"{dd}.{m}.{Y}");if(a>=r){for(let B=r+1;B<a;B++)m.value[B].class[1]="select";n("input",{dateStart:f,dateEnd:i,count:j(r,a)})}else{for(let B=a+1;B<r;B++)m.value[B].class[1]="select";n("input",{dateStart:i,dateEnd:f,count:j(a,r)})}m.value[a].class[1]="active"},j=(r,a)=>{var x;let i=Math.abs(r-a)+1,[f,B]=[Math.min(r,a),Math.max(r,a)];for(let V=f;V<=B;V++)((x=m.value[V])==null?void 0:x.class[0])==="holiday"&&i--;return i},T=(r,a)=>{N(r,a)&&(d.value=new Date(r,a,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),_.value=new Date(r,a+1,1).getMonth(),t.range==="year"&&l.value===0?v({year:r,month:a,day:1},8):S())};if(S(),F(),(Z=t.data)!=null&&Z.startDate&&(h.value=m.value.findIndex(r=>r.day===d.value.getDate()&&r.month===c.value&&r.year===p.value),h.value!==-1&&(m.value[h.value].class[1]="active")),(K=t.data)!=null&&K.endDate&&t.range==="range"&&(k.value=m.value.findIndex(r=>r.day===u.value.getDate()&&r.month===M.value&&r.year===g.value),k.value!==-1)){m.value[k.value].class[1]="active";for(let r=h.value+1;r<k.value;r++)m.value[r].class[1]="select"}return(r,a)=>(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",null,[e.createElementVNode("p",de,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[0]||(a[0]=e.withModifiers(i=>T(p.value-1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[12]||(a[12]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[1]||(a[1]=e.withModifiers(i=>{l.value=0,T(p.value,c.value-1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[13]||(a[13]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",pe,[e.createElementVNode("button",{onClick:a[2]||(a[2]=e.withModifiers(i=>l.value=1,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:a[3]||(a[3]=e.withModifiers(i=>l.value=1,["prevent"]))},e.toDisplayString(e.unref(I)(d.value.setMonth(c.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[4]||(a[4]=e.withModifiers(i=>{l.value=0,T(p.value,c.value+1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[14]||(a[14]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[5]||(a[5]=e.withModifiers(i=>T(p.value+1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[15]||(a[15]=e.createTextVNode("«"))])])])]),t.range==="year"||l.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(i,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(I)(new Date(1970,1,i+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||l.value===1?(e.openBlock(),e.createElementBlock("div",fe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(i,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{l.value=0,T(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(i),11,ue))),128))])):(e.openBlock(),e.createElementBlock("div",ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(i,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f<w.value+(7-new Date(p.value,c.value+1,1).getDay()+e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(i.month===c.value&&N(i.year,i.month,i.day)?i.class:"disabled"),onClick:e.withModifiers(()=>{i.month===c.value&&v(i,f)},["prevent"])},e.toDisplayString(i.day),11,he)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ye,[e.createElementVNode("p",we,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[6]||(a[6]=e.withModifiers(i=>T(p.value-1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[16]||(a[16]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[7]||(a[7]=e.withModifiers(i=>{l.value=0,T(p.value,c.value-1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[17]||(a[17]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",ke,[e.createElementVNode("button",{onClick:a[8]||(a[8]=e.withModifiers(i=>l.value=2,["prevent"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:a[9]||(a[9]=e.withModifiers(i=>l.value=2,["prevent"]))},e.toDisplayString(e.unref(I)(d.value.setMonth(c.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[10]||(a[10]=e.withModifiers(i=>{l.value=0,T(p.value,c.value+1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[18]||(a[18]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[11]||(a[11]=e.withModifiers(i=>T(p.value+1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[19]||(a[19]=e.createTextVNode("«"))])])])]),l.value!==2?(e.openBlock(),e.createElementBlock("div",Se,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(i,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(I)(new Date(1970,1,i+e.unref(y)),"{D}")),1)),64))])):e.createCommentVNode("",!0),l.value===2?(e.openBlock(),e.createElementBlock("div",_e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(i,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{l.value=0,T(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(i),11,be))),128))])):(e.openBlock(),e.createElementBlock("div",Be,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(i,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f>=w.value-(7+new Date(p.value,c.value+1,1).getDay()-e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(i.month===_.value&&N(i.year,i.month,i.day)?i.class:"disabled"),onClick:e.withModifiers(()=>{i.month===_.value&&v(i,f)},["prevent"])},e.toDisplayString(i.day),11,Ee)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),De=["id"],Me=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s,{expose:o}){const t=s,n=e.useModel(s,"modelValue"),l=e.ref(null),d=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),c=e.ref(0),g=e.computed(()=>{let b=["sw-dropdown"];return t.size.length>0&&b.push("sw-"+t.size),t.type.length>0&&b.push("sw-"+t.type),b});e.watchEffect(()=>{if(console.log("watchEffect"),!n.value){u.value={};return}if(!d.value||!l.value)return;c.value;const b=d.value,y=l.value,C=window.pageYOffset||document.documentElement.scrollTop,E=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.cssText=`position:fixed;top:-${C}px;left:-${E}px;`;const S=y.getBoundingClientRect(),P=window.innerWidth,F=window.innerHeight,N=b.offsetHeight,v=b.offsetWidth;let $=S.left+S.width/2+E,D=S.top+S.height/2+C;const j=S.height/2+8,[T,H]=t.placement.split("-",2);switch(T){case"bottom":D=C+F-N-j-8<D?D-j-N:D+j;break;case"top":D=C+N+j+8>D?D+j:D-j-N;break;case"left":$=$-v-S.width/2-8,D=D-N/2;break;case"right":$=$+S.width/2+8,D=D-N/2;break}switch(H){case"left":$=E+P-8>$-S.width/2+v?$-S.width/2:$-v+S.width/2;break;case"right":$=8<$+S.width/2-v?$-v+S.width/2:$-S.width/2;break}$<0&&($=0),D<0&&(D=0),u.value={position:"absolute",top:`${D}px`,left:`${$}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""},document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=C,document.documentElement.scrollLeft=E},{flush:"post"}),o({positionPopup:async()=>{await e.nextTick(),c.value++}});const _=()=>{t.trigger==="click"&&(n.value=!n.value),console.log("click")},m=()=>{t.trigger==="hover"&&(n.value=!n.value)},w=()=>{t.trigger==="context"&&(n.value=!n.value)},h=()=>{},k=b=>{!b.target.closest(`[id="${p}"]`)&&l.value&&!l.value.contains(b.target)&&(n.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",k):document.documentElement.addEventListener("click",k),document.documentElement.onscrollend!==void 0?document.documentElement.addEventListener("scrollend",h):document.documentElement.addEventListener("scroll",h)}),e.onUnmounted(()=>{window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",k):document.documentElement.removeEventListener("click",k),document.documentElement.onscrollend!==void 0?document.documentElement.removeEventListener("scrollend",h):document.documentElement.removeEventListener("scroll",h)}),(b,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(g.value),onClick:y[0]||(y[0]=C=>_()),onMouseover:y[1]||(y[1]=e.withModifiers(C=>m(),["stop"])),onMouseleave:y[2]||(y[2]=e.withModifiers(C=>m(),["stop"])),onContextmenu:y[3]||(y[3]=e.withModifiers(C=>w(),["stop"])),ref_key:"dropdownRef",ref:l},[e.renderSlot(b.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[n.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:d,id:e.unref(p),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(b.$slots,"dropdown")],14,De)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(s){const o=s,t=e.computed(()=>{let n=["sw-dropdown-item"];return o.size.length>0&&n.push("sw-"+o.size),o.type.length>0&&n.push("sw-"+o.type),o.class.length>0&&n.push(o.class),n});return(n,l)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":s.iconBefore},null,8,["icon-class"]),e.renderSlot(n.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(s){const o=s,t=e.computed(()=>{let n=["sw-form-item"];return o.type.length>0&&n.push("sw-"+o.type),o.class.length>0&&n.push(o.class),n});return(n,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ve=["for"],Ne={key:0,title:"Это поле обязательно для заполнения."},xe=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus","readonly"],ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1},maxlength:{type:Number,default:128},minlength:{type:Number,default:1},inputSize:{type:Number,default:60},autofocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(s,{emit:o}){var m;const t=e.useModel(s,"modelValue"),n=s,l=e.ref(null),d=o,u=w=>{d("focusInput"),w.target.setSelectionRange(t.value.length,t.value.length),l.value!==null&&(l.value.style.top="-.6em")},p=w=>{var h;((h=t.value)==null?void 0:h.length)===0&&l.value!==null&&l.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&l.value!==null&&(l.value.style.top="-.6em");const c=()=>{d("suffix")},g=()=>{d("prefix")},M=e.computed(()=>{let w=["sw-input"];return n.size.length>0&&w.push("sw-"+n.size),n.class.length>0&&w.push(n.class),w});e.watch(t,(w,h)=>{n.type==="phone"&&(t.value=_(w,h))});const _=(w,h)=>{if(/^\+[0-9]\s/.test(h)&&w.length===2||/^\+0\s/.test(w))return"";const k=w;if(typeof k>"u"||k.length===0)return k;const b="+0 (___) ___-__-__";let y=0;const C=b.replace(/\D/g,""),E=k.replace(/\D/g,"");let S=b.replace(/[_\d]/g,F=>y<E.length?E.charAt(y++)||C.charAt(y):F);y=S.indexOf("_"),y!==-1&&(y=y<5?3:y,S=S.slice(0,y));let P=b.slice(0,k.length).replace(/_+/g,F=>`\\d{1,${F.length}}`).replace(/[+()]/g,"\\$&");if(P=new RegExp(`^${P}$`),S=S.replace(/[-—]$|(\) )$/g,""),!P.test(k)||k.length<5)return S};return(w,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[n.before.length>0?(e.openBlock(),e.createBlock(Y,{key:0,"icon-class":n.before,onClick:g},null,8,["icon-class"])):e.renderSlot(w.$slots,"prefix",{key:1}),n.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:n.name,ref_key:"lab",ref:l},[e.createTextVNode(e.toDisplayString(n.label),1),n.required?(e.openBlock(),e.createElementBlock("span",Ne,"*")):e.createCommentVNode("",!0)],8,Ve)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":h[0]||(h[0]=k=>t.value=k),required:n.required,placeholder:n.required&&n.label.length===0?n.placeholder+"*":n.placeholder,type:n.type,id:n.name,name:n.name,size:n.inputSize,onFocus:u,onBlur:p,maxlength:n.maxlength,minlength:n.minlength,autofocus:n.autofocus,readonly:n.readonly},null,40,xe),[[e.vModelDynamic,t.value]]),n.after.length>0?(e.openBlock(),e.createBlock(Y,{key:3,"icon-class":n.after,onClick:c},null,8,["icon-class"])):e.renderSlot(w.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ve={key:0},je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const o=e.useModel(s,"modelValue"),t=s,n=e.ref(null),l=e.useSlots(),d=u=>{n.value&&!n.value.contains(u.target)&&(o.value=!1)};return e.watch(()=>o.value,async u=>{u?(await e.nextTick(),window.addEventListener("click",d,!0)):window.removeEventListener("click",d)}),e.onUnmounted(()=>{window.removeEventListener("click",d)}),(u,p)=>{var g;const c=e.resolveComponent("svg-icon");return o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:n},[t.name.length>0||(g=e.unref(l))!=null&&g.header?(e.openBlock(),e.createElementBlock("header",ve,[e.renderSlot(u.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(X,{link:"",type:"primary",onClick:p[0]||(p[0]=M=>o.value=!1)},{default:e.withCtx(()=>[e.createVNode(c,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(u.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},emits:["header"],setup(s,{emit:o}){const t=s,n=o,l=()=>{n("header")};return(d,u)=>{const p=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(t.class)},[e.createElementVNode("header",{onClick:l},[e.renderSlot(d.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(p,{"icon-class":t.iconAfter},null,8,["icon-class"])])]),e.renderSlot(d.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(d.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),Pe={class:"popup"},Fe={class:"wrapper"},Ie={class:"scrollbar"},Le=["onClick"],Ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:"large"},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const o=e.ref({fullText:""}),t=e.ref(!1),n=e.ref([]),l=e.useModel(s,"modelValue"),d=s;e.watch(l.text,c=>{c.length>3&&(o.value.fullText=c)}),e.watch(o.value.fullText,(c,g)=>{t.value=c.length>3&&c.length>g.length,c.length>3&&u()});const u=()=>{let c="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(o.value.fullText),axios.post(c,{query:o.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(g=>{console.log(g.data.suggestions),n.value=g.data.suggestions,n.value.length===1&&p(n.value[0])}).catch(g=>{console.log(g)})},p=c=>{o.value.fullText=c.value,t.value=!1;const g={};g.text=c.value,g.coords=[Number(c.data.geo_lat),Number(c.data.geo_lon)],g.suggestion=c.data,l.value=g};return(c,g)=>{const M=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Pe,[e.createVNode(M,{size:d.size,modelValue:o.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=_=>o.value.fullText=_),placeholder:s.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Fe,[e.createElementVNode("ul",Ie,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(_,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:w=>p(_)},e.toDisplayString(_.value),9,Le))),128))])],512),[[e.vShow,t.value]])])}}}},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(s){const o=s,t=e.computed(()=>{let l=["sw-skeleton-item"];return o.size.length>0&&l.push("sw-"+o.size),o.animate&&l.push("sw-animate"),o.class.length>0&&l.push(o.class),l}),n=e.computed(()=>({width:o.width+"%"}));return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(n.value)},[o.animate?(e.openBlock(),e.createElementBlock("div",Ye)):e.createCommentVNode("",!0)],6))}},Re=Object.freeze(Object.defineProperty({__proto__:null,default:J},Symbol.toStringTag,{value:"Module"})),He=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(s){const o=s;return(t,n)=>o.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",o.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(J,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),qe=["name","id"],Ue=["for","data-onlabel","data-offlabel"],We=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const o=e.useModel(s,"modelValue"),t=s,n=e.computed(()=>{let l=["sw-switch"];return t.size.length>0&&l.push("sw-"+t.size),t.checkbox&&l.push("sw-checkbox"),t.class.length>0&&l.push(t.class),l});return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(n.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=u=>o.value=u)},null,8,qe),[[e.vModelCheckbox,o.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,Ue),e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ge={key:0},Xe=["onClick"],Je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(s,{emit:o}){e.ref(0);const t=e.ref([]),n=s,l=e.useModel(s,"modelValue"),d=o;function u(c){t.value.push(c)}function p(c){t.value=t.value.filter(g=>g!==c)}return e.provide("registerTab",u),e.provide("unregisterTab",p),e.provide("activeTab",l),e.provide("tabs",t),(c,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+n.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",Ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(M,_)=>(e.openBlock(),e.createElementBlock("span",{key:_,class:e.normalizeClass([{active:l.value===_}]),onClick:m=>{l.value=_,d("tab-click",_)}},e.toDisplayString(M.label||M.title),11,Xe))),128))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Qe={key:0,class:"tab-content"},Ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(s){const o=s,t=e.inject("registerTab"),n=e.inject("unregisterTab");e.onMounted(()=>{t({title:o.title,label:o.label})}),e.onUnmounted(()=>{n({title:o.title,label:o.label})});const l=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===o.title)),p=e.computed(()=>l.value===u.value);return(c,g)=>p.value?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));z.Alert=q,z.Library=se,z.components=R,Object.defineProperty(z,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
(function(z,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(z=typeof globalThis<"u"?globalThis:z||self,e(z["component-sw"]={},z.vue))})(this,function(z,e){"use strict";function ee(s){return/^(https?:|mailto:|tel:)/.test(s)}function I(s,l){if(arguments.length===0||!s)return null;const t=l||"{Y}-{m}-{d} {G}:{i}:{s}";let n;typeof s=="object"?n=s:(typeof s=="string"&&(/^[0-9]+$/.test(s)?s=parseInt(s):s=s.replace(new RegExp(/-/gm),"/")),typeof s=="number"&&s.toString().length===10&&(s=s*1e3),n=new Date(s));const o="ru-RU",d={Y:n.getFullYear(),m:(n.getMonth()+1).toString().padStart(2,"0"),d:n.getDate(),dd:n.getDate().toString().padStart(2,"0"),G:n.getHours(),H:n.getHours().toString().padStart(2,"0"),i:n.getMinutes().toString().padStart(2,"0"),s:n.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(o,{weekday:"short"}).format(n),F:new Intl.DateTimeFormat(o,{month:"long"}).format(n),M:new Intl.DateTimeFormat(o,{month:"short"}).format(n)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>d[p])}const te=(s,l)=>{const t=s.__vccOpts||s;for(const[n,o]of l)t[n]=o;return t},ne={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return ee(this.iconClass)}}},le=["href"];function oe(s,l,t,n,o,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},s.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+t.className,"aria-hidden":"true"},s.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,le)],16))}const Y=te(ne,[["render",oe]]),W={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:s=>["success","warning","error","info"].includes(s)}},emits:["closed"],setup(s,{emit:l}){const t=s,n=l,o=e.ref(!1);let d=null;const u=()=>{o.value=!0,M()},p=()=>{o.value=!1,n("closed")},c=()=>{d&&(clearTimeout(d),d=null)},g=()=>{M()},M=()=>{d=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{d&&clearTimeout(d)});const _=e.computed(()=>{const m=["sw-alert"];return t.size.length>0&&m.push(`sw-${t.size}`),t.type.length>0&&m.push(`sw-${t.type}`),t.class.length>0&&m.push(t.class),m});return(m,w)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(_.value),onMouseenter:c,onMouseleave:g},[t.before.length>0?(e.openBlock(),e.createBlock(Y,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),e.renderSlot(m.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(Y,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},ae=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"}));let L=document.querySelector("div.sw-alert-wrapper");function q(s={}){L||(L=document.createElement("div"),L.className="sw-alert-wrapper",document.body.appendChild(L));const l=e.createApp({setup(){return()=>e.h(W,{...s,onClose:()=>{L.removeChild(l._container),l.unmount()}})}}),t=l.mount(document.createElement("div"));L.appendChild(t.$el)}const G=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>ae),"./components/SwButton.vue":()=>Promise.resolve().then(()=>re),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ie),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>$e),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>Me),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>Ce),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Te),"./components/SwInput.vue":()=>Promise.resolve().then(()=>ze),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>je),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Oe),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Ae),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>He),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Re),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>We),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Je),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Ze)}),R={};for(const s in G){const l=s.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,n)=>n.toUpperCase());R[l]=e.defineAsyncComponent(()=>G[s]())}const se={install(s){Object.keys(R).forEach(l=>{s.component(l,R[l]),console.log(l)}),s.config.globalProperties.$Alert=q,s.provide("Alert",q)}},X={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(s){const l=s,t=()=>{if(l.href.length>0){const o=document.createElement("a");o.setAttribute("href",l.href),o.setAttribute("target","_blank"),o.click()}},n=e.computed(()=>{let o=["sw-button"];return l.size.length>0&&o.push("sw-"+l.size),l.type.length>0&&o.push("sw-"+l.type),l.round&&o.push("sw-round"),l.text&&o.push("sw-text"),l.link&&o.push("sw-link"),l.class.length>0&&o.push(l.class),o});return(o,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(n.value),onClick:t},[e.renderSlot(o.$slots,"default")],2))}},re=Object.freeze(Object.defineProperty({__proto__:null,default:X},Symbol.toStringTag,{value:"Module"})),ie=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(s){e.onMounted(()=>{n.value="0px"});const l=e.ref(null),t=s;e.watch(()=>t.visual,()=>o());const n=e.ref("0px"),o=()=>{l.value&&(n.value=t.visual?l.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{o(),l.value&&(d=new ResizeObserver(o),d.observe(l.value))}),e.onBeforeUnmount(()=>{d&&d.disconnect()}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({maxHeight:n.value}),ref_key:"collapse",ref:l},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),ce={class:"sw-data-picker"},de={class:"month_year"},pe={class:"text"},me={key:0,class:"week"},fe={key:1,class:"year"},ue=["onClick"],ge={key:2,class:"month"},he=["onClick"],ye={key:0},we={class:"month_year"},ke={class:"text"},Se={key:0,class:"week"},_e={key:1,class:"year"},be=["onClick"],Be={key:2,class:"month"},Ee=["onClick"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(s,{emit:l}){var H,Q,Z,K;const t=s,n=l,o=e.ref(3),d=e.ref(new Date),u=e.ref(new Date),p=e.ref(new Date().getFullYear()),c=e.ref(new Date().getMonth()),g=e.ref(new Date().getFullYear()),M=e.ref(new Date().getMonth()),_=e.ref(new Date(p.value,c.value+1,1).getMonth()),m=e.ref([]),w=e.ref(0),h=e.ref(-1),k=e.ref(-1),b=e.ref(navigator.language||"ru"),y=/en|zh|ja|he/.test(b.value)?0:1,C=e.computed(()=>Array.from({length:12},(r,a)=>{const i=new Date(2024,a);return new Intl.DateTimeFormat(b.value,{month:"long"}).format(i)})),E=r=>{let a=r.split(r.match(/\D.*?\D?/));return a[0].length>2?a.join("-")+"T00:00:01":a.reverse().join("-")+"T00:00:01"};(H=t.data)!=null&&H.startDate&&(d.value=new Date(E(t.data.startDate)),p.value=d.value.getFullYear(),c.value=d.value.getMonth()),(Q=t.data)!=null&&Q.endDate&&t.range==="range"&&(u.value=new Date(E(t.data.endDate)),g.value=u.value.getFullYear(),M.value=u.value.getMonth());const S=()=>{m.value=[],w.value=0;const r=new Date(p.value,c.value,0);for(let i=r.getDate()-r.getDay()+y;i<=r.getDate();i++)r.getDay()!==6+y&&(m.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]}),w.value++);const a=new Date(p.value,c.value+1,0).getDate();for(let i=1;i<=a;i++)m.value.push({day:i,month:c.value,year:p.value,class:[]}),w.value++;if(t.range==="range"){const i=new Date(p.value,c.value+1,1),f=new Date(p.value,c.value+2,0).getDate();for(let B=1;B<=f;B++)m.value.push({day:B,month:i.getMonth(),year:i.getFullYear(),class:[]})}P()},P=()=>{var a;if(!((a=t.data)!=null&&a.holiday))return;const r=(i,f)=>{i.forEach(B=>{const[N,V,O]=B.split("-").map(Number),A=m.value.findIndex(U=>U.year===N&&U.month+1===V&&U.day===O);A!==-1&&(m.value[A].class[0]=f)})};r(t.data.holiday.preholidays,"preholiday"),r(t.data.holiday.holidays,"weekend"),r(t.data.holiday.holiday,"holiday"),r(t.data.holiday.nowork,"nowork")},F=()=>{if(!t.limitation||t.limitation.length<2)return!1;const r=[...t.limitation].sort((a,i)=>new Date(E(a.startDate)).getTime()-new Date(E(i.startDate)).getTime());for(let a=1;a<r.length;a++){const i=new Date(E(r[a-1].endDate));if(new Date(E(r[a].startDate))<=i)return console.warn("Warning: Диапазоны пересекаются:",r[a-1],r[a]),!0}return!1},x=(r,a,i)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(r,a,i).getTime();for(let B of t.limitation){const{startDate:N,endDate:V}=B;if(!N&&V){const O=new Date(E(V)).getTime();if(f<=O)return!1}if(N&&!V){const O=new Date(E(N)).getTime();if(f>=O)return!1}if(N&&V){const O=new Date(E(N)).getTime(),A=new Date(E(V)).getTime();if(O<=A){if(f>=O&&f<=A)return!1}else if(f>=O||f<=A)return!1}}return!0},v=(r,a)=>{const i=I(new Date(r.year,r.month,r.day),"{dd}.{m}.{Y}");t.range==="range"?k.value!==-1?($(),h.value=a,m.value[a].class[1]="active"):h.value!==-1?(k.value=a,D(h.value,k.value,i)):(h.value=a,m.value[a].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=a,m.value[a].class[1]="active",n("input",{dateStart:i,count:1}))},$=()=>{m.value.forEach(r=>r.class[1]=""),h.value=-1,k.value=-1},D=(r,a,i)=>{let f=I(new Date(m.value[r].year,m.value[r].month,m.value[r].day),"{dd}.{m}.{Y}");if(a>=r){for(let B=r+1;B<a;B++)m.value[B].class[1]="select";n("input",{dateStart:f,dateEnd:i,count:j(r,a)})}else{for(let B=a+1;B<r;B++)m.value[B].class[1]="select";n("input",{dateStart:i,dateEnd:f,count:j(a,r)})}m.value[a].class[1]="active"},j=(r,a)=>{var N;let i=Math.abs(r-a)+1,[f,B]=[Math.min(r,a),Math.max(r,a)];for(let V=f;V<=B;V++)((N=m.value[V])==null?void 0:N.class[0])==="holiday"&&i--;return i},T=(r,a)=>{x(r,a)&&(d.value=new Date(r,a,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),_.value=new Date(r,a+1,1).getMonth(),t.range==="year"&&o.value===0?v({year:r,month:a,day:1},8):S())};if(S(),F(),(Z=t.data)!=null&&Z.startDate&&(h.value=m.value.findIndex(r=>r.day===d.value.getDate()&&r.month===c.value&&r.year===p.value),h.value!==-1&&(m.value[h.value].class[1]="active")),(K=t.data)!=null&&K.endDate&&t.range==="range"&&(k.value=m.value.findIndex(r=>r.day===u.value.getDate()&&r.month===M.value&&r.year===g.value),k.value!==-1)){m.value[k.value].class[1]="active";for(let r=h.value+1;r<k.value;r++)m.value[r].class[1]="select"}return(r,a)=>(e.openBlock(),e.createElementBlock("div",ce,[e.createElementVNode("div",null,[e.createElementVNode("p",de,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[0]||(a[0]=e.withModifiers(i=>T(p.value-1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[12]||(a[12]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[1]||(a[1]=e.withModifiers(i=>{o.value=0,T(p.value,c.value-1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[13]||(a[13]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",pe,[e.createElementVNode("button",{onClick:a[2]||(a[2]=e.withModifiers(i=>o.value=1,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:a[3]||(a[3]=e.withModifiers(i=>o.value=1,["prevent"]))},e.toDisplayString(e.unref(I)(d.value.setMonth(c.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[4]||(a[4]=e.withModifiers(i=>{o.value=0,T(p.value,c.value+1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[14]||(a[14]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[5]||(a[5]=e.withModifiers(i=>T(p.value+1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[15]||(a[15]=e.createTextVNode("«"))])])])]),t.range==="year"||o.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(i,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(I)(new Date(1970,1,i+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||o.value===1?(e.openBlock(),e.createElementBlock("div",fe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(i,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{o.value=0,T(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(i),11,ue))),128))])):(e.openBlock(),e.createElementBlock("div",ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(i,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f<w.value+(7-new Date(p.value,c.value+1,1).getDay()+e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(i.month===c.value&&x(i.year,i.month,i.day)?i.class:"disabled"),onClick:e.withModifiers(()=>{i.month===c.value&&v(i,f)},["prevent"])},e.toDisplayString(i.day),11,he)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ye,[e.createElementVNode("p",we,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:a[6]||(a[6]=e.withModifiers(i=>T(p.value-1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[16]||(a[16]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:a[7]||(a[7]=e.withModifiers(i=>{o.value=0,T(p.value,c.value-1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[17]||(a[17]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",ke,[e.createElementVNode("button",{onClick:a[8]||(a[8]=e.withModifiers(i=>o.value=2,["prevent"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:a[9]||(a[9]=e.withModifiers(i=>o.value=2,["prevent"]))},e.toDisplayString(e.unref(I)(d.value.setMonth(c.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{class:"sw-revers",onClick:a[10]||(a[10]=e.withModifiers(i=>{o.value=0,T(p.value,c.value+1)},["prevent"]))},[e.renderSlot(r.$slots,"arrow",{},()=>[a[18]||(a[18]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:a[11]||(a[11]=e.withModifiers(i=>T(p.value+1,c.value),["prevent"]))},[e.renderSlot(r.$slots,"double-arrow",{},()=>[a[19]||(a[19]=e.createTextVNode("«"))])])])]),o.value!==2?(e.openBlock(),e.createElementBlock("div",Se,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(i,f)=>e.createElementVNode("button",{key:f,class:"disabled"},e.toDisplayString(e.unref(I)(new Date(1970,1,i+e.unref(y)),"{D}")),1)),64))])):e.createCommentVNode("",!0),o.value===2?(e.openBlock(),e.createElementBlock("div",_e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,(i,f)=>(e.openBlock(),e.createElementBlock("button",{key:f,onClick:e.withModifiers(B=>{o.value=0,T(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(i),11,be))),128))])):(e.openBlock(),e.createElementBlock("div",Be,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(i,f)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f},[f>=w.value-(7+new Date(p.value,c.value+1,1).getDay()-e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(i.month===_.value&&x(i.year,i.month,i.day)?i.class:"disabled"),onClick:e.withModifiers(()=>{i.month===_.value&&v(i,f)},["prevent"])},e.toDisplayString(i.day),11,Ee)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),De=["id"],Me=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s,{expose:l}){const t=s,n=e.useModel(s,"modelValue"),o=e.ref(null),d=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),c=e.ref(0),g=e.computed(()=>{let b=["sw-dropdown"];return t.size.length>0&&b.push("sw-"+t.size),t.type.length>0&&b.push("sw-"+t.type),b});e.watchEffect(async()=>{if(console.log("watchEffect"),!n.value){u.value={};return}if(await e.nextTick(),!d.value||!o.value)return;c.value;const b=d.value,y=o.value,C=window.pageYOffset||document.documentElement.scrollTop,E=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.cssText=`position:fixed;top:-${C}px;left:-${E}px;`;const S=y.getBoundingClientRect(),P=window.innerWidth,F=window.innerHeight,x=b.offsetHeight,v=b.offsetWidth;let $=S.left+S.width/2+E,D=S.top+S.height/2+C;const j=S.height/2+8,[T,H]=t.placement.split("-",2);switch(T){case"bottom":D=C+F-x-j-8<D?D-j-x:D+j;break;case"top":D=C+x+j+8>D?D+j:D-j-x;break;case"left":$=$-v-S.width/2-8,D=D-x/2;break;case"right":$=$+S.width/2+8,D=D-x/2;break}switch(H){case"left":$=E+P-8>$-S.width/2+v?$-S.width/2:$-v+S.width/2;break;case"right":$=8<$+S.width/2-v?$-v+S.width/2:$-S.width/2;break}$<0&&($=0),D<0&&(D=0),u.value={position:"absolute",top:`${D}px`,left:`${$}px`,maxWidth:t.maxWidth>0?`${t.maxWidth}px`:""},document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=C,document.documentElement.scrollLeft=E},{flush:"post"});const M=async()=>{await e.nextTick(),c.value++};l({positionPopup:M});const _=()=>{t.trigger==="click"&&(n.value=!n.value),console.log("click")},m=()=>{t.trigger==="hover"&&(n.value=!n.value)},w=()=>{t.trigger==="context"&&(n.value=!n.value)},h=()=>{n.value&&M()},k=b=>{!b.target.closest(`[id="${p}"]`)&&o.value&&!o.value.contains(b.target)&&(n.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",k):document.documentElement.addEventListener("click",k),document.documentElement.onscrollend!==void 0?document.documentElement.addEventListener("scrollend",h):document.documentElement.addEventListener("scroll",h)}),e.onUnmounted(()=>{window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",k):document.documentElement.removeEventListener("click",k),document.documentElement.onscrollend!==void 0?document.documentElement.removeEventListener("scrollend",h):document.documentElement.removeEventListener("scroll",h)}),(b,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(g.value),onClick:y[0]||(y[0]=C=>_()),onMouseover:y[1]||(y[1]=e.withModifiers(C=>m(),["stop"])),onMouseleave:y[2]||(y[2]=e.withModifiers(C=>m(),["stop"])),onContextmenu:y[3]||(y[3]=e.withModifiers(C=>w(),["stop"])),ref_key:"dropdownRef",ref:o},[e.renderSlot(b.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[n.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:d,id:e.unref(p),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(b.$slots,"dropdown")],14,De)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),Ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(s){const l=s,t=e.computed(()=>{let n=["sw-dropdown-item"];return l.size.length>0&&n.push("sw-"+l.size),l.type.length>0&&n.push("sw-"+l.type),l.class.length>0&&n.push(l.class),n});return(n,o)=>{const d=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(d,{"icon-class":s.iconBefore},null,8,["icon-class"]),e.renderSlot(n.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(s){const l=s,t=e.computed(()=>{let n=["sw-form-item"];return l.type.length>0&&n.push("sw-"+l.type),l.class.length>0&&n.push(l.class),n});return(n,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ve=["for"],xe={key:0,title:"Это поле обязательно для заполнения."},Ne=["required","placeholder","type","id","name","size","maxlength","minlength","autofocus","readonly"],ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1},maxlength:{type:Number,default:128},minlength:{type:Number,default:1},inputSize:{type:Number,default:60},autofocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix","focusInput"],["update:modelValue"]),setup(s,{emit:l}){var m;const t=e.useModel(s,"modelValue"),n=s,o=e.ref(null),d=l,u=w=>{d("focusInput"),w.target.setSelectionRange(t.value.length,t.value.length),o.value!==null&&(o.value.style.top="-.6em")},p=w=>{var h;((h=t.value)==null?void 0:h.length)===0&&o.value!==null&&o.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&o.value!==null&&(o.value.style.top="-.6em");const c=()=>{d("suffix")},g=()=>{d("prefix")},M=e.computed(()=>{let w=["sw-input"];return n.size.length>0&&w.push("sw-"+n.size),n.class.length>0&&w.push(n.class),w});e.watch(t,(w,h)=>{n.type==="phone"&&(t.value=_(w,h))});const _=(w,h)=>{if(/^\+[0-9]\s/.test(h)&&w.length===2||/^\+0\s/.test(w))return"";const k=w;if(typeof k>"u"||k.length===0)return k;const b="+0 (___) ___-__-__";let y=0;const C=b.replace(/\D/g,""),E=k.replace(/\D/g,"");let S=b.replace(/[_\d]/g,F=>y<E.length?E.charAt(y++)||C.charAt(y):F);y=S.indexOf("_"),y!==-1&&(y=y<5?3:y,S=S.slice(0,y));let P=b.slice(0,k.length).replace(/_+/g,F=>`\\d{1,${F.length}}`).replace(/[+()]/g,"\\$&");if(P=new RegExp(`^${P}$`),S=S.replace(/[-—]$|(\) )$/g,""),!P.test(k)||k.length<5)return S};return(w,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[n.before.length>0?(e.openBlock(),e.createBlock(Y,{key:0,"icon-class":n.before,onClick:g},null,8,["icon-class"])):e.renderSlot(w.$slots,"prefix",{key:1}),n.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:n.name,ref_key:"lab",ref:o},[e.createTextVNode(e.toDisplayString(n.label),1),n.required?(e.openBlock(),e.createElementBlock("span",xe,"*")):e.createCommentVNode("",!0)],8,Ve)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":h[0]||(h[0]=k=>t.value=k),required:n.required,placeholder:n.required&&n.label.length===0?n.placeholder+"*":n.placeholder,type:n.type,id:n.name,name:n.name,size:n.inputSize,onFocus:u,onBlur:p,maxlength:n.maxlength,minlength:n.minlength,autofocus:n.autofocus,readonly:n.readonly},null,40,Ne),[[e.vModelDynamic,t.value]]),n.after.length>0?(e.openBlock(),e.createBlock(Y,{key:3,"icon-class":n.after,onClick:c},null,8,["icon-class"])):e.renderSlot(w.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ve={key:0},je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const l=e.useModel(s,"modelValue"),t=s,n=e.ref(null),o=e.useSlots(),d=u=>{n.value&&!n.value.contains(u.target)&&(l.value=!1)};return e.watch(()=>l.value,async u=>{u?(await e.nextTick(),window.addEventListener("click",d,!0)):window.removeEventListener("click",d)}),e.onUnmounted(()=>{window.removeEventListener("click",d)}),(u,p)=>{var g;const c=e.resolveComponent("svg-icon");return l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:n},[t.name.length>0||(g=e.unref(o))!=null&&g.header?(e.openBlock(),e.createElementBlock("header",ve,[e.renderSlot(u.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(X,{link:"",type:"primary",onClick:p[0]||(p[0]=M=>l.value=!1)},{default:e.withCtx(()=>[e.createVNode(c,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(u.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},emits:["header"],setup(s,{emit:l}){const t=s,n=l,o=()=>{n("header")};return(d,u)=>{const p=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(t.class)},[e.createElementVNode("header",{onClick:o},[e.renderSlot(d.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(p,{"icon-class":t.iconAfter},null,8,["icon-class"])])]),e.renderSlot(d.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(d.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),Pe={class:"popup"},Fe={class:"wrapper"},Ie={class:"scrollbar"},Le=["onClick"],Ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:"large"},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const l=e.ref({fullText:""}),t=e.ref(!1),n=e.ref([]),o=e.useModel(s,"modelValue"),d=s;e.watch(o.text,c=>{c.length>3&&(l.value.fullText=c)}),e.watch(l.value.fullText,(c,g)=>{t.value=c.length>3&&c.length>g.length,c.length>3&&u()});const u=()=>{let c="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(l.value.fullText),axios.post(c,{query:l.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+d.token}}).then(g=>{console.log(g.data.suggestions),n.value=g.data.suggestions,n.value.length===1&&p(n.value[0])}).catch(g=>{console.log(g)})},p=c=>{l.value.fullText=c.value,t.value=!1;const g={};g.text=c.value,g.coords=[Number(c.data.geo_lat),Number(c.data.geo_lon)],g.suggestion=c.data,o.value=g};return(c,g)=>{const M=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",Pe,[e.createVNode(M,{size:d.size,modelValue:l.value.fullText,"onUpdate:modelValue":g[0]||(g[0]=_=>l.value.fullText=_),placeholder:s.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Fe,[e.createElementVNode("ul",Ie,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(_,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:w=>p(_)},e.toDisplayString(_.value),9,Le))),128))])],512),[[e.vShow,t.value]])])}}}},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(s){const l=s,t=e.computed(()=>{let o=["sw-skeleton-item"];return l.size.length>0&&o.push("sw-"+l.size),l.animate&&o.push("sw-animate"),l.class.length>0&&o.push(l.class),o}),n=e.computed(()=>({width:l.width+"%"}));return(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(n.value)},[l.animate?(e.openBlock(),e.createElementBlock("div",Ye)):e.createCommentVNode("",!0)],6))}},Re=Object.freeze(Object.defineProperty({__proto__:null,default:J},Symbol.toStringTag,{value:"Module"})),He=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(s){const l=s;return(t,n)=>l.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",l.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(J,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),qe=["name","id"],Ue=["for","data-onlabel","data-offlabel"],We=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(s){const l=e.useModel(s,"modelValue"),t=s,n=e.computed(()=>{let o=["sw-switch"];return t.size.length>0&&o.push("sw-"+t.size),t.checkbox&&o.push("sw-checkbox"),t.class.length>0&&o.push(t.class),o});return(o,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(n.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=u=>l.value=u)},null,8,qe),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,Ue),e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ge={key:0},Xe=["onClick"],Je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(s,{emit:l}){e.ref(0);const t=e.ref([]),n=s,o=e.useModel(s,"modelValue"),d=l;function u(c){t.value.push(c)}function p(c){t.value=t.value.filter(g=>g!==c)}return e.provide("registerTab",u),e.provide("unregisterTab",p),e.provide("activeTab",o),e.provide("tabs",t),(c,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+n.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",Ge,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(M,_)=>(e.openBlock(),e.createElementBlock("span",{key:_,class:e.normalizeClass([{active:o.value===_}]),onClick:m=>{o.value=_,d("tab-click",_)}},e.toDisplayString(M.label||M.title),11,Xe))),128))])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Qe={key:0,class:"tab-content"},Ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0},label:{type:String,default:""}},setup(s){const l=s,t=e.inject("registerTab"),n=e.inject("unregisterTab");e.onMounted(()=>{t({title:l.title,label:l.label})}),e.onUnmounted(()=>{n({title:l.title,label:l.label})});const o=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===l.title)),p=e.computed(()=>o.value===u.value);return(c,g)=>p.value?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));z.Alert=q,z.Library=se,z.components=R,Object.defineProperty(z,Symbol.toStringTag,{value:"Module"})});
|
package/dist/index.js
CHANGED