@studio-west/component-sw 0.6.25 → 0.6.27

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