@studio-west/component-sw 0.6.17 → 0.6.19

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 s, 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-C9XY0sk9.js";
2
+ import { p as A } from "./index-Ch3gz5i4.js";
3
3
  const oe = { class: "sw-data-picker" }, ue = {
4
4
  key: 0,
5
5
  class: "month_year"
@@ -195,7 +195,7 @@ const oe = { class: "sw-data-picker" }, ue = {
195
195
  ]),
196
196
  s("span", ie, [
197
197
  s("button", {
198
- onClick: e[4] || (e[4] = c((t) => d.value = 3, ["prevent"]))
198
+ onClick: e[4] || (e[4] = c((t) => d.value = 3, ["stop"]))
199
199
  }, D(u.value), 1),
200
200
  s("button", {
201
201
  onClick: e[5] || (e[5] = c((t) => d.value = 1, ["prevent"]))
@@ -303,7 +303,7 @@ const oe = { class: "sw-data-picker" }, ue = {
303
303
  ]),
304
304
  s("span", be, [
305
305
  s("button", {
306
- onClick: e[12] || (e[12] = c((t) => d.value = 4, ["prevent"]))
306
+ onClick: e[12] || (e[12] = c((t) => d.value = 4, ["stop"]))
307
307
  }, D(new Date(u.value, n.value + 1).getFullYear()), 1),
308
308
  s("button", {
309
309
  onClick: e[13] || (e[13] = c((t) => d.value = 2, ["prevent"]))
@@ -77,7 +77,7 @@ const A = ["id"], G = {
77
77
  !e.target.closest(`[id="${b}"]`) && r.value && !r.value.contains(e.target) && (o.value = !1), o.value || console.log("Outside", r.value.contains(e.target));
78
78
  };
79
79
  return P(() => {
80
- console.log("onMounted"), window.addEventListener("resize", u), document.documentElement.ontouchstart !== void 0 ? document.documentElement.addEventListener("touchstart", f) : document.documentElement.addEventListener("click", f), window.onscrollend !== void 0 ? window.addEventListener("scrollend", u) : window.addEventListener("scroll", u);
80
+ console.log("onMounted"), window.addEventListener("resize", u), document.documentElement.ontouchstart !== void 0 ? document.documentElement.addEventListener("touchstart", f, !0) : document.documentElement.addEventListener("click", f, !0), window.onscrollend !== void 0 ? window.addEventListener("scrollend", u) : window.addEventListener("scroll", u);
81
81
  }), U(() => {
82
82
  console.log("onUnmounted"), E.disconnect(), window.removeEventListener("resize", u), document.documentElement.ontouchstart !== void 0 ? document.documentElement.removeEventListener("touchstart", f) : document.documentElement.removeEventListener("click", f), window.onscrollend !== void 0 ? window.removeEventListener("scrollend", u) : window.removeEventListener("scroll", u);
83
83
  }), (e, i) => (g(), x("div", {
@@ -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-C9XY0sk9.js";
2
+ import { S } from "./index-Ch3gz5i4.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-X-J_x0t8.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-Cwoq6mFS.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-wFMHwJJk.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CaA4jsoa.js"), "./components/SwInput.vue": () => import("./SwInput-C6qfMX8m.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-FMwJbEH7.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-DjdpcSXk.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-BuLH4UZ1.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-wFMHwJJk.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CaA4jsoa.js"), "./components/SwInput.vue": () => import("./SwInput-BINWUOSk.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-FMwJbEH7.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(O,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(O=typeof globalThis<"u"?globalThis:O||self,e(O["component-sw"]={},O.vue))})(this,function(O,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 l;typeof r=="object"?l=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),l=new Date(r));const n="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(n,{weekday:"short"}).format(l),F:new Intl.DateTimeFormat(n,{month:"long"}).format(l),M:new Intl.DateTimeFormat(n,{month:"short"}).format(l)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>d[p])}const le=(r,a)=>{const t=r.__vccOpts||r;for(const[l,n]of a)t[l]=n;return t},oe={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return te(this.iconClass)}}},ne=["href"];function ae(r,a,t,l,n,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},r.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+(t.className||t.iconClass),"aria-hidden":"true"},r.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ne)],16))}const A=le(oe,[["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,l=a,n=e.ref(!1);let d=null;const u=()=>{n.value=!0,M()},p=()=>{n.value=!1,l("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(()=>[n.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(()=>je),"./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(()=>ot),"./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,l)=>l.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 n=document.createElement("a");n.setAttribute("href",a.href),n.setAttribute("target","_blank"),n.click()}},l=e.computed(()=>{let n=["sw-button"];return a.size.length>0&&n.push("sw-"+a.size),a.type.length>0&&n.push("sw-"+a.type),a.round&&n.push("sw-round"),a.text&&n.push("sw-text"),a.link&&n.push("sw-link"),a.class.length>0&&n.push(a.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:t},[e.renderSlot(n.$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(()=>{l.value="0px"});const a=e.ref(null),t=r;e.watch(()=>t.visual,()=>n());const l=e.ref("0px"),n=()=>{a.value&&(l.value=t.visual?a.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{n(),a.value&&(d=new ResizeObserver(n),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:l.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,l=a,n=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),S=e.ref(-1),w=e.ref(navigator.language||"ru"),y=/en|zh|ja|he/.test(w.value)?0:1,_=e.computed(()=>Array.from({length:12},(i,o)=>{const s=new Date(2024,o);return new Intl.DateTimeFormat(w.value,{month:"long"}).format(s)})),T=e.ref(Math.floor(p.value/10)*10),V=e.computed(()=>Array.from({length:12},(i,o)=>T.value+o-1)),b=i=>{let o=i.split(i.match(/\D.*?\D?/));return o[0].length>2?o.join("-")+"T00:00:01":o.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 o=new Date(p.value,c.value+1,0).getDate();for(let s=1;s<=o;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 o;if(!((o=t.data)!=null&&o.holiday))return;const i=(s,f)=>{s.forEach(B=>{const[v,z,j]=B.split("-").map(Number),L=m.value.findIndex(q=>q.year===v&&q.month+1===z&&q.day===j);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((o,s)=>new Date(b(o.startDate)).getTime()-new Date(b(s.startDate)).getTime());for(let o=1;o<i.length;o++){const s=new Date(b(i[o-1].endDate));if(new Date(b(i[o].startDate))<=s)return console.warn("Warning: Диапазоны пересекаются:",i[o-1],i[o]),!0}return!1},x=(i,o,s)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(i,o,s).getTime();for(let B of t.limitation){const{startDate:v,endDate:z}=B;if(!v&&z){const j=new Date(b(z)).getTime();if(f<=j)return!1}if(v&&!z){const j=new Date(b(v)).getTime();if(f>=j)return!1}if(v&&z){const j=new Date(b(v)).getTime(),L=new Date(b(z)).getTime();if(j<=L){if(f>=j&&f<=L)return!1}else if(f>=j||f<=L)return!1}}return!0},I=(i,o)=>{const s=P(new Date(i.year,i.month,i.day),"{dd}.{m}.{Y}");t.range==="range"?S.value!==-1?(H(),h.value=o,m.value[o].class[1]="active"):h.value!==-1?(S.value=o,ct(h.value,S.value,s)):(h.value=o,m.value[o].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=o,m.value[o].class[1]="active",l("input",{dateStart:s,count:1}))},H=()=>{m.value.forEach(i=>i.class[1]=""),h.value=-1,S.value=-1},ct=(i,o,s)=>{let f=P(new Date(m.value[i].year,m.value[i].month,m.value[i].day),"{dd}.{m}.{Y}");if(o>=i){for(let B=i+1;B<o;B++)m.value[B].class[1]="select";l("input",{dateStart:f,dateEnd:s,count:J(i,o)})}else{for(let B=o+1;B<i;B++)m.value[B].class[1]="select";l("input",{dateStart:s,dateEnd:f,count:J(o,i)})}m.value[o].class[1]="active"},J=(i,o)=>{var v;let s=Math.abs(i-o)+1,[f,B]=[Math.min(i,o),Math.max(i,o)];for(let z=f;z<=B;z++)((v=m.value[z])==null?void 0:v.class[0])==="holiday"&&s--;return s},C=(i,o)=>{x(i,o)&&(d.value=new Date(i,o,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),E.value=new Date(i,o+1,1).getMonth(),(t.range==="year"||t.range==="decades")&&n.value===0?I({year:i,month:o,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"&&(S.value=m.value.findIndex(i=>i.day===u.value.getDate()&&i.month===M.value&&i.year===g.value),S.value!==-1)){m.value[S.value].class[1]="active";for(let i=h.value+1;i<S.value;i++)m.value[i].class[1]="select"}return(i,o)=>(e.openBlock(),e.createElementBlock("div",de,[e.createElementVNode("div",null,[t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[0]||(o[0]=e.withModifiers(s=>{T.value-=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[16]||(o[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:o[1]||(o[1]=e.withModifiers(s=>{T.value+=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[17]||(o[17]=e.createTextVNode("«"))])])])])):(e.openBlock(),e.createElementBlock("p",fe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[2]||(o[2]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[18]||(o[18]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:o[3]||(o[3]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[19]||(o[19]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",ue,[e.createElementVNode("button",{onClick:o[4]||(o[4]=e.withModifiers(s=>n.value=3,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:o[5]||(o[5]=e.withModifiers(s=>n.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:o[6]||(o[6]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[20]||(o[20]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:o[7]||(o[7]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[21]||(o[21]=e.createTextVNode("«"))])])])])),t.range==="year"||t.range==="decades"||n.value===1||n.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))])),t.range==="year"||n.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=>{n.value=0,C(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(s),11,ye))),128))])):t.range==="decades"||n.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=>{n.value=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"||n.value===4?(e.openBlock(),e.createElementBlock("p",Be,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[8]||(o[8]=e.withModifiers(s=>{T.value-=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[22]||(o[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:o[9]||(o[9]=e.withModifiers(s=>{T.value+=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[23]||(o[23]=e.createTextVNode("«"))])])])])):(e.openBlock(),e.createElementBlock("p",$e,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[10]||(o[10]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[24]||(o[24]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:o[11]||(o[11]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[25]||(o[25]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",De,[e.createElementVNode("button",{onClick:o[12]||(o[12]=e.withModifiers(s=>n.value=4,["prevent"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:o[13]||(o[13]=e.withModifiers(s=>n.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:o[14]||(o[14]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[26]||(o[26]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:o[15]||(o[15]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[27]||(o[27]=e.createTextVNode("«"))])])])])),n.value===2||n.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))])),n.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=>{n.value=0,C(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(s),11,Ve))),128))])):n.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=>{n.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"})),Oe=["id"],je=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,l=e.useModel(r,"modelValue"),n=e.ref(null),d=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),c=e.ref(0),g=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}),M=new ResizeObserver(w=>{l.value&&c.value++,c.value>99&&(c.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!n.value)return;c.value<2&&M.observe(d.value);let w=window.pageYOffset||document.documentElement.scrollTop,y=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${w}px`,document.body.style.left=`-${y}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=w,document.documentElement.scrollLeft=y;const _=n.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+w,x=_.height/2+8;const[I,H]=t.placement.split("-",2);switch(I){case"bottom":D=w+V-b-x-8<D?D-x-b:D+x;break;case"top":D=w+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"&&(l.value=!l.value),l.value||console.log("toggleClick")},m=()=>{t.trigger==="hover"&&(l.value=!l.value),l.value||console.log("toggleHover")},k=()=>{t.trigger==="context"&&(l.value=!l.value),l.value||console.log("toggleContext")},h=()=>{l.value&&c.value++,c.value>99&&(c.value=1)};a({handleResize:h});const S=w=>{!w.target.closest(`[id="${p}"]`)&&n.value&&!n.value.contains(w.target)&&(l.value=!1),l.value||console.log("Outside",n.value.contains(w.target))};return e.onMounted(()=>{console.log("onMounted"),window.addEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",S):document.documentElement.addEventListener("click",S),window.onscrollend!==void 0?window.addEventListener("scrollend",h):window.addEventListener("scroll",h)}),e.onUnmounted(()=>{console.log("onUnmounted"),M.disconnect(),window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",S):document.documentElement.removeEventListener("click",S),window.onscrollend!==void 0?window.removeEventListener("scrollend",h):window.removeEventListener("scroll",h)}),(w,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:n},[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(u.value),tabindex:"-1"},[e.renderSlot(w.$slots,"dropdown")],14,Oe)):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 l=["sw-dropdown-item"];return a.size.length>0&&l.push("sw-"+a.size),a.type.length>0&&l.push("sw-"+a.type),a.class.length>0&&l.push(a.class),l});return(l,n)=>{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(l.$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 l=["sw-form-item"];return a.type.length>0&&l.push("sw-"+a.type),a.class.length>0&&l.push(a.class),l});return(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(l.$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"),l=r,n=e.ref(null),d=a,u=k=>{d("focusInput"),k.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},p=k=>{var h;((h=t.value)==null?void 0:h.length)===0&&n.value!==null&&n.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&n.value!==null&&(n.value.style.top="-.6em");const c=()=>{d("suffix")},g=()=>{d("prefix")},M=e.computed(()=>{let k=["sw-input"];return l.size.length>0&&k.push("sw-"+l.size),l.class.length>0&&k.push(l.class),k});e.watch(t,(k,h)=>{l.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 S=k;if(typeof S>"u"||S.length===0)return S;const w="+0 (___) ___-__-__";let y=0;const _=w.replace(/\D/g,""),T=S.replace(/\D/g,"");let V=w.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=w.slice(0,S.length).replace(/_+/g,N=>`\\d{1,${N.length}}`).replace(/[+()]/g,"\\$&");if(b=new RegExp(`^${b}$`),V=V.replace(/[-—]$|(\) )$/g,""),!b.test(S)||S.length<5)return V};return(k,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[l.before.length>0?(e.openBlock(),e.createBlock(A,{key:0,"icon-class":l.before,onClick:g},null,8,["icon-class"])):e.renderSlot(k.$slots,"prefix",{key:1}),l.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:l.name,ref_key:"lab",ref:n},[e.createTextVNode(e.toDisplayString(l.label),1),l.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]=S=>t.value=S),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:u,onBlur:p,maxlength:l.maxlength,minlength:l.minlength,autofocus:l.autofocus,readonly:l.readonly,inputmode:l.inputMode},null,40,Ae),[[e.vModelDynamic,t.value]]),l.after.length>0?(e.openBlock(),e.createBlock(A,{key:3,"icon-class":l.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,l=e.ref(null),n=e.useSlots(),d=u=>{l.value&&!l.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:l},[t.name.length>0||(g=e.unref(n))!=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,l=a,n=()=>{l("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:n},[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),l=e.ref([]),n=e.useModel(r,"modelValue"),d=r;e.watch(n.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),l.value=g.data.suggestions,l.value.length===1&&p(l.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,n.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(l.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 n=["sw-skeleton-item"];return a.size.length>0&&n.push("sw-"+a.size),a.animate&&n.push("sw-animate"),a.class.length>0&&n.push(a.class),n}),l=e.computed(()=>({width:a.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(l.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,l)=>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"],lt=["for","data-onlabel","data-offlabel"],ot=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,l=e.computed(()=>{let n=["sw-switch"];return t.size.length>0&&n.push("sw-"+t.size),t.checkbox&&n.push("sw-checkbox"),t.class.length>0&&n.push(t.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=u=>a.value=u)},null,8,tt),[[e.vModelCheckbox,a.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,lt),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),nt={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([]),l=r,n=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",n),e.provide("tabs",t),(c,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",nt,[(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:n.value===E}]),onClick:m=>{n.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"),l=e.inject("unregisterTab");e.onMounted(()=>{t({title:a.title,label:a.label})}),e.onUnmounted(()=>{l({title:a.title,label:a.label})});const n=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===a.title)),p=e.computed(()=>n.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"}));O.Alert=R,O.Library=re,O.components=Y,Object.defineProperty(O,Symbol.toStringTag,{value:"Module"})});
1
+ (function(O,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(O=typeof globalThis<"u"?globalThis:O||self,e(O["component-sw"]={},O.vue))})(this,function(O,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 l;typeof r=="object"?l=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),l=new Date(r));const n="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(n,{weekday:"short"}).format(l),F:new Intl.DateTimeFormat(n,{month:"long"}).format(l),M:new Intl.DateTimeFormat(n,{month:"short"}).format(l)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>d[p])}const le=(r,a)=>{const t=r.__vccOpts||r;for(const[l,n]of a)t[l]=n;return t},oe={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return te(this.iconClass)}}},ne=["href"];function ae(r,a,t,l,n,d){return d.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},r.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+(t.className||t.iconClass),"aria-hidden":"true"},r.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ne)],16))}const A=le(oe,[["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,l=a,n=e.ref(!1);let d=null;const u=()=>{n.value=!0,M()},p=()=>{n.value=!1,l("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(()=>[n.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(()=>je),"./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(()=>ot),"./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,l)=>l.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 n=document.createElement("a");n.setAttribute("href",a.href),n.setAttribute("target","_blank"),n.click()}},l=e.computed(()=>{let n=["sw-button"];return a.size.length>0&&n.push("sw-"+a.size),a.type.length>0&&n.push("sw-"+a.type),a.round&&n.push("sw-round"),a.text&&n.push("sw-text"),a.link&&n.push("sw-link"),a.class.length>0&&n.push(a.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:t},[e.renderSlot(n.$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(()=>{l.value="0px"});const a=e.ref(null),t=r;e.watch(()=>t.visual,()=>n());const l=e.ref("0px"),n=()=>{a.value&&(l.value=t.visual?a.value.scrollHeight+"px":"0px")};let d;return e.onMounted(()=>{n(),a.value&&(d=new ResizeObserver(n),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:l.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,l=a,n=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),S=e.ref(-1),w=e.ref(navigator.language||"ru"),y=/en|zh|ja|he/.test(w.value)?0:1,_=e.computed(()=>Array.from({length:12},(i,o)=>{const s=new Date(2024,o);return new Intl.DateTimeFormat(w.value,{month:"long"}).format(s)})),T=e.ref(Math.floor(p.value/10)*10),V=e.computed(()=>Array.from({length:12},(i,o)=>T.value+o-1)),b=i=>{let o=i.split(i.match(/\D.*?\D?/));return o[0].length>2?o.join("-")+"T00:00:01":o.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 o=new Date(p.value,c.value+1,0).getDate();for(let s=1;s<=o;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 o;if(!((o=t.data)!=null&&o.holiday))return;const i=(s,f)=>{s.forEach(B=>{const[v,z,j]=B.split("-").map(Number),L=m.value.findIndex(q=>q.year===v&&q.month+1===z&&q.day===j);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((o,s)=>new Date(b(o.startDate)).getTime()-new Date(b(s.startDate)).getTime());for(let o=1;o<i.length;o++){const s=new Date(b(i[o-1].endDate));if(new Date(b(i[o].startDate))<=s)return console.warn("Warning: Диапазоны пересекаются:",i[o-1],i[o]),!0}return!1},x=(i,o,s)=>{if(!t.limitation||t.limitation.length===0)return!0;const f=new Date(i,o,s).getTime();for(let B of t.limitation){const{startDate:v,endDate:z}=B;if(!v&&z){const j=new Date(b(z)).getTime();if(f<=j)return!1}if(v&&!z){const j=new Date(b(v)).getTime();if(f>=j)return!1}if(v&&z){const j=new Date(b(v)).getTime(),L=new Date(b(z)).getTime();if(j<=L){if(f>=j&&f<=L)return!1}else if(f>=j||f<=L)return!1}}return!0},I=(i,o)=>{const s=P(new Date(i.year,i.month,i.day),"{dd}.{m}.{Y}");t.range==="range"?S.value!==-1?(H(),h.value=o,m.value[o].class[1]="active"):h.value!==-1?(S.value=o,ct(h.value,S.value,s)):(h.value=o,m.value[o].class[1]="active"):(h.value!==-1&&(m.value[h.value].class[1]=""),h.value=o,m.value[o].class[1]="active",l("input",{dateStart:s,count:1}))},H=()=>{m.value.forEach(i=>i.class[1]=""),h.value=-1,S.value=-1},ct=(i,o,s)=>{let f=P(new Date(m.value[i].year,m.value[i].month,m.value[i].day),"{dd}.{m}.{Y}");if(o>=i){for(let B=i+1;B<o;B++)m.value[B].class[1]="select";l("input",{dateStart:f,dateEnd:s,count:J(i,o)})}else{for(let B=o+1;B<i;B++)m.value[B].class[1]="select";l("input",{dateStart:s,dateEnd:f,count:J(o,i)})}m.value[o].class[1]="active"},J=(i,o)=>{var v;let s=Math.abs(i-o)+1,[f,B]=[Math.min(i,o),Math.max(i,o)];for(let z=f;z<=B;z++)((v=m.value[z])==null?void 0:v.class[0])==="holiday"&&s--;return s},C=(i,o)=>{x(i,o)&&(d.value=new Date(i,o,1),p.value=d.value.getFullYear(),c.value=d.value.getMonth(),E.value=new Date(i,o+1,1).getMonth(),(t.range==="year"||t.range==="decades")&&n.value===0?I({year:i,month:o,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"&&(S.value=m.value.findIndex(i=>i.day===u.value.getDate()&&i.month===M.value&&i.year===g.value),S.value!==-1)){m.value[S.value].class[1]="active";for(let i=h.value+1;i<S.value;i++)m.value[i].class[1]="select"}return(i,o)=>(e.openBlock(),e.createElementBlock("div",de,[e.createElementVNode("div",null,[t.range==="decades"||n.value===3?(e.openBlock(),e.createElementBlock("p",pe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[0]||(o[0]=e.withModifiers(s=>{T.value-=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[16]||(o[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:o[1]||(o[1]=e.withModifiers(s=>{T.value+=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[17]||(o[17]=e.createTextVNode("«"))])])])])):(e.openBlock(),e.createElementBlock("p",fe,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[2]||(o[2]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[18]||(o[18]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:o[3]||(o[3]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[19]||(o[19]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",ue,[e.createElementVNode("button",{onClick:o[4]||(o[4]=e.withModifiers(s=>n.value=3,["stop"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:o[5]||(o[5]=e.withModifiers(s=>n.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:o[6]||(o[6]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[20]||(o[20]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:o[7]||(o[7]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[21]||(o[21]=e.createTextVNode("«"))])])])])),t.range==="year"||t.range==="decades"||n.value===1||n.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))])),t.range==="year"||n.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=>{n.value=0,C(p.value,f)},["prevent"]),class:e.normalizeClass(f===c.value?"active":"")},e.toDisplayString(s),11,ye))),128))])):t.range==="decades"||n.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=>{n.value=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"||n.value===4?(e.openBlock(),e.createElementBlock("p",Be,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[8]||(o[8]=e.withModifiers(s=>{T.value-=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[22]||(o[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:o[9]||(o[9]=e.withModifiers(s=>{T.value+=10,C(p.value,c.value)},["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[23]||(o[23]=e.createTextVNode("«"))])])])])):(e.openBlock(),e.createElementBlock("p",$e,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:o[10]||(o[10]=e.withModifiers(s=>C(p.value-1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[24]||(o[24]=e.createTextVNode("«"))])]),e.createElementVNode("button",{onClick:o[11]||(o[11]=e.withModifiers(s=>{n.value=0,C(p.value,c.value-1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[25]||(o[25]=e.createTextVNode("‹"))])])]),e.createElementVNode("span",De,[e.createElementVNode("button",{onClick:o[12]||(o[12]=e.withModifiers(s=>n.value=4,["stop"]))},e.toDisplayString(new Date(p.value,c.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:o[13]||(o[13]=e.withModifiers(s=>n.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:o[14]||(o[14]=e.withModifiers(s=>{n.value=0,C(p.value,c.value+1)},["prevent"]))},[e.renderSlot(i.$slots,"arrow",{},()=>[o[26]||(o[26]=e.createTextVNode("‹"))])]),e.createElementVNode("button",{class:"sw-revers",onClick:o[15]||(o[15]=e.withModifiers(s=>C(p.value+1,c.value),["prevent"]))},[e.renderSlot(i.$slots,"double-arrow",{},()=>[o[27]||(o[27]=e.createTextVNode("«"))])])])])),n.value===2||n.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))])),n.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=>{n.value=0,C(p.value,f-1)},["prevent"]),class:e.normalizeClass(f===(c.value+1)%12?"active":"")},e.toDisplayString(s),11,Ve))),128))])):n.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=>{n.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"})),Oe=["id"],je=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,l=e.useModel(r,"modelValue"),n=e.ref(null),d=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),c=e.ref(0),g=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}),M=new ResizeObserver(w=>{l.value&&c.value++,c.value>99&&(c.value=1)});e.watchEffect(()=>{if(!l.value||!d.value||!n.value)return;c.value<2&&M.observe(d.value);let w=window.pageYOffset||document.documentElement.scrollTop,y=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${w}px`,document.body.style.left=`-${y}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=w,document.documentElement.scrollLeft=y;const _=n.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+w,x=_.height/2+8;const[I,H]=t.placement.split("-",2);switch(I){case"bottom":D=w+V-b-x-8<D?D-x-b:D+x;break;case"top":D=w+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"&&(l.value=!l.value),l.value||console.log("toggleClick")},m=()=>{t.trigger==="hover"&&(l.value=!l.value),l.value||console.log("toggleHover")},k=()=>{t.trigger==="context"&&(l.value=!l.value),l.value||console.log("toggleContext")},h=()=>{l.value&&c.value++,c.value>99&&(c.value=1)};a({handleResize:h});const S=w=>{!w.target.closest(`[id="${p}"]`)&&n.value&&!n.value.contains(w.target)&&(l.value=!1),l.value||console.log("Outside",n.value.contains(w.target))};return e.onMounted(()=>{console.log("onMounted"),window.addEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.addEventListener("touchstart",S,!0):document.documentElement.addEventListener("click",S,!0),window.onscrollend!==void 0?window.addEventListener("scrollend",h):window.addEventListener("scroll",h)}),e.onUnmounted(()=>{console.log("onUnmounted"),M.disconnect(),window.removeEventListener("resize",h),document.documentElement.ontouchstart!==void 0?document.documentElement.removeEventListener("touchstart",S):document.documentElement.removeEventListener("click",S),window.onscrollend!==void 0?window.removeEventListener("scrollend",h):window.removeEventListener("scroll",h)}),(w,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:n},[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(u.value),tabindex:"-1"},[e.renderSlot(w.$slots,"dropdown")],14,Oe)):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 l=["sw-dropdown-item"];return a.size.length>0&&l.push("sw-"+a.size),a.type.length>0&&l.push("sw-"+a.type),a.class.length>0&&l.push(a.class),l});return(l,n)=>{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(l.$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 l=["sw-form-item"];return a.type.length>0&&l.push("sw-"+a.type),a.class.length>0&&l.push(a.class),l});return(l,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(l.$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"),l=r,n=e.ref(null),d=a,u=k=>{d("focusInput"),k.target.setSelectionRange(t.value.length,t.value.length),n.value!==null&&(n.value.style.top="-.6em")},p=k=>{var h;((h=t.value)==null?void 0:h.length)===0&&n.value!==null&&n.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&n.value!==null&&(n.value.style.top="-.6em");const c=()=>{d("suffix")},g=()=>{d("prefix")},M=e.computed(()=>{let k=["sw-input"];return l.size.length>0&&k.push("sw-"+l.size),l.class.length>0&&k.push(l.class),k});e.watch(t,(k,h)=>{l.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 S=k;if(typeof S>"u"||S.length===0)return S;const w="+0 (___) ___-__-__";let y=0;const _=w.replace(/\D/g,""),T=S.replace(/\D/g,"");let V=w.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=w.slice(0,S.length).replace(/_+/g,N=>`\\d{1,${N.length}}`).replace(/[+()]/g,"\\$&");if(b=new RegExp(`^${b}$`),V=V.replace(/[-—]$|(\) )$/g,""),!b.test(S)||S.length<5)return V};return(k,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(M.value)},[l.before.length>0?(e.openBlock(),e.createBlock(A,{key:0,"icon-class":l.before,onClick:g},null,8,["icon-class"])):e.renderSlot(k.$slots,"prefix",{key:1}),l.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:l.name,ref_key:"lab",ref:n},[e.createTextVNode(e.toDisplayString(l.label),1),l.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]=S=>t.value=S),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:u,onBlur:p,maxlength:l.maxlength,minlength:l.minlength,autofocus:l.autofocus,readonly:l.readonly,inputmode:l.inputMode},null,40,Ae),[[e.vModelDynamic,t.value]]),l.after.length>0?(e.openBlock(),e.createBlock(A,{key:3,"icon-class":l.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,l=e.ref(null),n=e.useSlots(),d=u=>{l.value&&!l.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:l},[t.name.length>0||(g=e.unref(n))!=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,l=a,n=()=>{l("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:n},[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),l=e.ref([]),n=e.useModel(r,"modelValue"),d=r;e.watch(n.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),l.value=g.data.suggestions,l.value.length===1&&p(l.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,n.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(l.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 n=["sw-skeleton-item"];return a.size.length>0&&n.push("sw-"+a.size),a.animate&&n.push("sw-animate"),a.class.length>0&&n.push(a.class),n}),l=e.computed(()=>({width:a.width+"%"}));return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(l.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,l)=>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"],lt=["for","data-onlabel","data-offlabel"],ot=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,l=e.computed(()=>{let n=["sw-switch"];return t.size.length>0&&n.push("sw-"+t.size),t.checkbox&&n.push("sw-checkbox"),t.class.length>0&&n.push(t.class),n});return(n,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":d[0]||(d[0]=u=>a.value=u)},null,8,tt),[[e.vModelCheckbox,a.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,lt),e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),nt={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([]),l=r,n=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",n),e.provide("tabs",t),(c,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[t.value.length!==0?(e.openBlock(),e.createElementBlock("header",nt,[(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:n.value===E}]),onClick:m=>{n.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"),l=e.inject("unregisterTab");e.onMounted(()=>{t({title:a.title,label:a.label})}),e.onUnmounted(()=>{l({title:a.title,label:a.label})});const n=e.inject("activeTab"),d=e.inject("tabs"),u=e.computed(()=>d.value.findIndex(c=>c.title===a.title)),p=e.computed(()=>n.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"}));O.Alert=R,O.Library=re,O.components=Y,Object.defineProperty(O,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-C9XY0sk9.js";
2
+ import { A as s, L as t, c as e } from "./index-Ch3gz5i4.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.17",
3
+ "version": "0.6.19",
4
4
  "description": "Vue components of Component SW collection.",
5
5
  "type": "module",
6
6
  "keywords": [