@studio-west/component-sw 0.3.2 → 0.3.3

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