@studio-west/component-sw 0.5.54 → 0.5.55

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