@studio-west/component-sw 0.1.12 → 0.1.14

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,4 +1,4 @@
1
- import { ref as c, computed as E, onMounted as R, onUnmounted as L, createElementBlock as g, openBlock as p, normalizeClass as v, renderSlot as y, createBlock as W, Teleport as $, createCommentVNode as C, normalizeStyle as B, nextTick as T } from "vue";
1
+ import { ref as c, computed as E, onMounted as R, onUnmounted as L, createElementBlock as g, openBlock as r, normalizeClass as v, renderSlot as y, createBlock as W, Teleport as $, createCommentVNode as C, normalizeStyle as B, nextTick as T } from "vue";
2
2
  const O = {
3
3
  __name: "SwDropdown",
4
4
  props: {
@@ -10,28 +10,28 @@ const O = {
10
10
  maxWidth: { type: Number, default: 0 }
11
11
  },
12
12
  setup(k) {
13
- const n = k, l = c(!1), s = c(null), a = c(null), u = c({}), b = E(
13
+ const l = k, n = c(!1), s = c(null), a = c(null), u = c({}), b = E(
14
14
  () => {
15
15
  let e = ["sw-dropdown"];
16
- return n.size.length > 0 && e.push("sw-" + n.size), n.type.length > 0 && e.push("sw-" + n.type), e;
16
+ return l.size.length > 0 && e.push("sw-" + l.size), l.type.length > 0 && e.push("sw-" + l.type), e;
17
17
  }
18
18
  ), d = async () => {
19
19
  if (await T(), !a.value) return;
20
- const e = s.value.getBoundingClientRect(), i = window.pageYOffset || document.documentElement.scrollTop, w = window.pageXOffset || document.documentElement.scrollLeft, r = a.value.offsetHeight, h = a.value.offsetWidth;
20
+ const e = s.value.getBoundingClientRect(), i = window.pageYOffset || document.documentElement.scrollTop, w = window.pageXOffset || document.documentElement.scrollLeft, p = a.value.offsetHeight, h = a.value.offsetWidth;
21
21
  let t = e.left + e.width / 2 + w, o = e.bottom - e.height / 2 + i;
22
- const [x, z] = n.placement.split("-", 2);
23
- switch (console.log(n.placement), x) {
22
+ const [x, z] = l.placement.split("-", 2);
23
+ switch (console.log(l.placement), x) {
24
24
  case "bottom":
25
25
  o = o + e.height / 2 + 8;
26
26
  break;
27
27
  case "top":
28
- o = o - e.height / 2 - 8 - r;
28
+ o = o - e.height / 2 - 8 - p;
29
29
  break;
30
30
  case "left":
31
- t = t - h - e.width / 2 - 10, o = o - r / 2;
31
+ t = t - h - e.width / 2 - 10, o = o - p / 2;
32
32
  break;
33
33
  case "right":
34
- t = t + e.width / 2 + 8, o = o - r / 2;
34
+ t = t + e.width / 2 + 8, o = o - p / 2;
35
35
  break;
36
36
  }
37
37
  switch (z) {
@@ -46,32 +46,32 @@ const O = {
46
46
  position: "absolute",
47
47
  top: `${o}px`,
48
48
  left: `${t}px`,
49
- maxWidth: n.maxWidth === 0 ? "" : `${n.maxWidth}px`
49
+ maxWidth: l.maxWidth === 0 ? "" : `${l.maxWidth}px`
50
50
  };
51
51
  }, S = async () => {
52
- l.value = !l.value, l.value && await d();
52
+ n.value = !n.value, n.value && await d();
53
53
  }, f = () => {
54
- l.value && d();
54
+ n.value && d();
55
55
  }, m = (e) => {
56
- console.log(e.target), s.value && !s.value.contains(e.target) && (l.value = !1);
56
+ s.value && !s.value.contains(e.target) && n.value && (n.value = !1), console.log(s.value.contains(e.target));
57
57
  };
58
58
  return R(() => {
59
- document.addEventListener("click", m, !0), window.addEventListener("resize", f);
59
+ document.addEventListener("click", m, !1), window.addEventListener("resize", f);
60
60
  }), L(() => {
61
61
  document.removeEventListener("click", m), window.removeEventListener("resize", f);
62
- }), (e, i) => (p(), g("div", {
62
+ }), (e, i) => (r(), g("div", {
63
63
  class: v(b.value),
64
64
  onClick: i[0] || (i[0] = (w) => S()),
65
65
  ref_key: "dropdownRef",
66
66
  ref: s
67
67
  }, [
68
68
  y(e.$slots, "default"),
69
- (p(), W($, { to: "body" }, [
70
- l.value ? (p(), g("ul", {
69
+ (r(), W($, { to: "body" }, [
70
+ n.value ? (r(), g("ul", {
71
71
  key: 0,
72
72
  ref_key: "popupRef",
73
73
  ref: a,
74
- class: v(["sw-dropdown-popup", n.class]),
74
+ class: v(["sw-dropdown-popup", l.class]),
75
75
  style: B(u.value)
76
76
  }, [
77
77
  y(e.$slots, "dropdown")
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- (function(B,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(B=typeof globalThis<"u"?globalThis:B||self,e(B["component-sw"]={},B.vue))})(this,function(B,e){"use strict";const z=Object.assign({"./components/SwButton.vue":()=>Promise.resolve().then(()=>A),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>H),"./components/SwDataPicker.vue":()=>Promise.resolve().then(()=>oe),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>se),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>re),"./components/SwInput.vue":()=>Promise.resolve().then(()=>ue),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>he),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Se),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>we),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>_e),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Be),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Te),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Ce)}),T={};for(const a in z){const n=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(o,t)=>t.toUpperCase());T[n]=e.defineAsyncComponent(()=>z[a]())}const R={install(a){Object.keys(T).forEach(n=>{a.component(n,T[n]),console.log(n)})}},v={__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}},setup(a){const n=a,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,l)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value)},[e.renderSlot(t.$slots,"default")],2))}},A=Object.freeze(Object.defineProperty({__proto__:null,default:v},Symbol.toStringTag,{value:"Module"})),H=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{t.value="0px"});const n=e.ref("0px"),o=a,t=e.computed(()=>o.visual?`${n.value.scrollHeight}px`:"0px");return(l,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:o.visual}]),style:e.normalizeStyle({height:t.value}),ref_key:"collapse",ref:n},[e.renderSlot(l.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"}));function q(a){return/^(https?:|mailto:|tel:)/.test(a)}function M(a,n){if(arguments.length===0||!a)return null;const o=n||"{Y}-{m}-{d} {G}:{i}:{s}";let t;typeof a=="object"?t=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),t=new Date(a));const l="ru-RU",u={Y:t.getFullYear(),m:(t.getMonth()+1).toString().padStart(2,"0"),d:t.getDate(),dd:t.getDate().toString().padStart(2,"0"),G:t.getHours(),H:t.getHours().toString().padStart(2,"0"),i:t.getMinutes().toString().padStart(2,"0"),s:t.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(l,{weekday:"short"}).format(t),F:new Intl.DateTimeFormat(l,{month:"long"}).format(t),M:new Intl.DateTimeFormat(l,{month:"short"}).format(t)};return o.replace(/{(dd|[YmdGHisDFM])+}/g,(d,k)=>u[k])}const W={class:"sw-data-picker"},U={class:"month_year"},G={class:"text"},X={class:"week"},J={class:"month"},K=["onClick"],Q={key:0},Z={class:"month_year"},ee={class:"text"},te={class:"week"},le={class:"month"},ne=["onClick"],oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDataPicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:()=>"solid"}},emits:["init"],setup(a,{emit:n}){var I,F,Y,L;const o=e.ref(new Date),t=e.ref(new Date),l=a,u=n,d=e.ref(new Date().getFullYear()),k=e.ref(new Date().getMonth()),E=e.ref(new Date().getFullYear()),p=e.ref(new Date().getMonth()),c=e.ref([]),f=e.ref(0),y=e.ref(0),g=e.ref(-1),w=e.ref(-1),N=e.ref(navigator.languages||"ru"),S=/en|zh|ja|he/.test(N.value)?0:1,b=l.range==="range"?2:1,$=m=>{const r=m.split(m.match(/\D.*?\D?/));return r[0].length>2?r.join("-")+"T00:00:01":r.reverse().join("-")+"T00:00:01"};typeof((I=l.data)==null?void 0:I.startDate)<"u"&&(o.value=new Date($(l.data.startDate)),d.value=o.value.getFullYear(),p.value=o.value.getMonth()),typeof((F=l.data)==null?void 0:F.endDate)<"u"&&(t.value=new Date($(l.data.endDate)),E.value=t.value.getFullYear(),k.value=t.value.getMonth());const C=()=>{var s;let m=new Date(d.value,p.value,0);for(let i=m.getDate()-m.getDay()+S;i<=m.getDate()&&m.getDay()!==6+S;i++)f.value++,c.value.push({day:i,month:m.getMonth(),year:m.getFullYear(),class:[]});for(let i=1;i<=new Date(d.value,p.value+1,0).getDate();i++)f.value++,c.value.push({day:i,month:p.value,year:d.value,class:[]});if(l.range==="range"){y.value=new Date(d.value,p.value+2,0);for(let i=1;i<=y.value.getDate();i++)c.value.push({day:i,month:y.value.getMonth(),year:y.value.getFullYear(),class:[]})}let r=new Date(d.value,p.value+b,1);console.log(r.getDay());for(let i=1;i<=(7-r.getDay()+S)%7&&r.getDay()!==S;i++)c.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]});typeof((s=l.data)==null?void 0:s.holiday)<"u"&&l.data.holiday.length!==0&&(l.data.holiday.preholidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="preholiday")}),l.data.holiday.holidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="weekend")}),l.data.holiday.holiday.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="holiday")}),l.data.holiday.nowork.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="nowork")}))},x=(m,r)=>{let s=m-r+1;for(let i=0;i<=m-r;i++)c.value[i+r].class[0]==="holiday"&&s--;return s},O=(m,r)=>{const s=M(new Date(m.year,m.month,m.day),"{dd}.{m}.{Y}");if(l.range==="range")if(console.log(g.value),w.value!==-1){if(w.value<=g.value)for(let i=w.value;i<=g.value;i++)c.value[i].class[1]="";else for(let i=g.value;i<=w.value;i++)c.value[i].class[1]="";g.value=r,w.value=-1,c.value[r].class[1]="active"}else if(g.value!==-1){if(w.value=r,w.value>=g.value)for(let h=g.value+1;h<r;h++)c.value[h].class[1]="select";else for(let h=r+1;h<g.value;h++)c.value[h].class[1]="select";c.value[r].class[1]="active";let i=M(new Date(c.value[g.value].year,c.value[g.value].month,c.value[g.value].day),"{dd}.{m}.{Y}");g.value>r?u("input",{dateStart:s,dateEnd:i,count:x(g.value,r)}):u("input",{dateStart:i,dateEnd:s,count:x(r,g.value)})}else g.value=r,c.value[r].class[1]="active";else g.value!==-1&&(c.value[g.value].class[1]=""),g.value=r,c.value[r].class[1]="active",u("input",{dateStart:s,count:1})};if(C(),typeof((Y=l.data)==null?void 0:Y.startDate)<"u"&&(g.value=c.value.findIndex(m=>m.day===o.value.getDate()&&m.month===p.value&&m.year===d.value),c.value[g.value].class[1]="active"),typeof((L=l.data)==null?void 0:L.endDate)<"u"&&l.range==="range"){w.value=c.value.findIndex(m=>m.day===t.value.getDate()&&m.month===k.value&&m.year===E.value),c.value[w.value].class[1]="active";for(let m=g.value+1;m<w.value;m++)c.value[m].class[1]="select"}const V=(m,r)=>{ze(m,r)&&(c.value=[],f.value=0,o.value=new Date(m,r,1),d.value=o.value.getFullYear(),p.value=o.value.getMonth(),C())},ze=(m,r)=>{if(!l.limitation)return!0;if(l.limitation[0].dateStart){console.log(l.limitation[0].dateStart);let s=l.limitation[0].dateStart.split(l.limitation[0].dateStart.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])>m||parseInt(s[2])===m&&parseInt(s[1])>r+1)return!1}if(l.limitation[l.limitation.length-1].dateEnd){console.log(l.limitation[l.limitation.length-1].dateEnd);let s=l.limitation[l.limitation.length-1].dateEnd.split(l.limitation[l.limitation.length-1].dateEnd.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])<m||parseInt(s[2])===m&&parseInt(s[1])<r+b)return!1}return!0};return(m,r)=>(e.openBlock(),e.createElementBlock("div",W,[e.createElementVNode("div",null,[e.createElementVNode("p",U,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[0]||(r[0]=e.withModifiers(s=>V(d.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:r[1]||(r[1]=e.withModifiers(s=>V(d.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",G,[e.createElementVNode("button",null,e.toDisplayString(d.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[2]||(r[2]=e.withModifiers(s=>V(d.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:r[3]||(r[3]=e.withModifiers(s=>V(d.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",X,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",J,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i<f.value+(7-new Date(d.value,p.value+1,1).getDay()+e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===p.value&&(!l.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(l.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(l.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===p.value&&O(s,i)}},e.toDisplayString(s.day),11,K)):e.createCommentVNode("",!0)],64))),128))])]),l.range==="range"?(e.openBlock(),e.createElementBlock("div",Q,[e.createElementVNode("p",Z,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[4]||(r[4]=s=>V(d.value-1,p.value))},"«"),e.createElementVNode("button",{onClick:r[5]||(r[5]=s=>V(d.value,p.value-1))},"‹")]),e.createElementVNode("span",ee,[e.createElementVNode("button",null,e.toDisplayString(new Date(d.value,p.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[6]||(r[6]=s=>V(d.value,p.value+1))},"›"),e.createElementVNode("button",{onClick:r[7]||(r[7]=s=>V(d.value+1,p.value))},"»")])]),e.createElementVNode("div",te,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",le,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i>=f.value-(7+new Date(d.value,p.value+1,1).getDay()-e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===y.value.getMonth()&&(!l.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(l.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(l.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===y.value.getMonth()&&O(s,i)}},e.toDisplayString(s.day),11,ne)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),ae=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}},setup(a){const n=a,o=e.ref(!1),t=e.ref(null),l=e.ref(null),u=e.ref({}),d=e.computed(()=>{let f=["sw-dropdown"];return n.size.length>0&&f.push("sw-"+n.size),n.type.length>0&&f.push("sw-"+n.type),f}),k=async()=>{if(await e.nextTick(),!l.value)return;const f=t.value.getBoundingClientRect(),y=window.pageYOffset||document.documentElement.scrollTop,g=window.pageXOffset||document.documentElement.scrollLeft,w=l.value.offsetHeight,N=l.value.offsetWidth;let S=f.left+f.width/2+g,b=f.bottom-f.height/2+y;const[$,C]=n.placement.split("-",2);switch(console.log(n.placement),$){case"bottom":b=b+f.height/2+8;break;case"top":b=b-f.height/2-8-w;break;case"left":S=S-N-f.width/2-10,b=b-w/2;break;case"right":S=S+f.width/2+8,b=b-w/2;break}switch(C){case"left":S=S-N+f.width/2;break;case"right":S=S-f.width/2;break}S<0&&(S=0),b<0&&(b=0),u.value={position:"absolute",top:`${b}px`,left:`${S}px`,maxWidth:n.maxWidth===0?"":`${n.maxWidth}px`}},E=async()=>{o.value=!o.value,o.value&&await k()},p=()=>{o.value&&k()},c=f=>{console.log(f.target),t.value&&!t.value.contains(f.target)&&(o.value=!1)};return e.onMounted(()=>{document.addEventListener("click",c,!0),window.addEventListener("resize",p)}),e.onUnmounted(()=>{document.removeEventListener("click",c),window.removeEventListener("resize",p)}),(f,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value),onClick:y[0]||(y[0]=g=>E()),ref_key:"dropdownRef",ref:t},[e.renderSlot(f.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:l,class:e.normalizeClass(["sw-dropdown-popup",n.class]),style:e.normalizeStyle(u.value)},[e.renderSlot(f.$slots,"dropdown")],6)):e.createCommentVNode("",!0)]))],2))}}},Symbol.toStringTag,{value:"Module"})),se=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,o=e.computed(()=>{let t=["sw-dropdown-item"];return n.size.length>0&&t.push("sw-"+n.size),n.type.length>0&&t.push("sw-"+n.type),n.class.length>0&&t.push(n.class),t});return(t,l)=>{const u=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(o.value)},[e.createVNode(u,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(t.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let t=["sw-form-item"];return n.type.length>0&&t.push("sw-"+n.type),n.class.length>0&&t.push(n.class),t});return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(t.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),ie=(a,n)=>{const o=a.__vccOpts||a;for(const[t,l]of n)o[t]=l;return o},ce={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return q(this.iconClass)}}},de=["href"];function pe(a,n,o,t,l,u){return u.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+o.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 "+o.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+o.prefix+"-"+o.iconClass},null,8,de)],16))}const P=ie(ce,[["render",pe]]),me=["for"],fe=["placeholder","type","id","name"],ue=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"}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix"],["update:modelValue"]),setup(a,{emit:n}){var c;const o=e.useModel(a,"modelValue"),t=a,l=e.ref(null),u=n,d=()=>{l.value!==null&&(l.value.style.top="-.6em")},k=()=>{var f;((f=o.value)==null?void 0:f.length)==0&&l.value!==null&&l.value.removeAttribute("style")};((c=o.value)==null?void 0:c.length)>0&&l.value!==null&&(l.value.style.top="-.6em");const E=()=>{u("suffix")},p=e.computed(()=>{let f=["sw-input"];return t.size.length>0&&f.push("sw-"+t.size),t.class.length>0&&f.push(t.class),f});return(f,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value)},[t.before.length>0?(e.openBlock(),e.createBlock(P,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(f.$slots,"prefix",{key:1}),t.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:t.name,ref_key:"lab",ref:l},[e.createTextVNode(e.toDisplayString(t.label),1),y[1]||(y[1]=e.createElementVNode("span",{title:"Это поле обязательно для заполнения."},"*",-1))],8,me)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":y[0]||(y[0]=g=>o.value=g),required:"required",placeholder:t.placeholder,type:t.type,id:t.name,name:t.name,size:"60",onFocus:d,onBlur:k,maxlength:"128"},null,40,fe),[[e.vModelDynamic,o.value]]),t.after.length>0?(e.openBlock(),e.createBlock(P,{key:3,"icon-class":t.after,onClick:E},null,8,["icon-class"])):e.renderSlot(f.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ge={key:0},he=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"),o=a,t=e.ref(null);return(l,u)=>{const d=e.resolveComponent("svg-icon");return n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",o.class]),ref_key:"messageRef",ref:t},[o.name.length>0?(e.openBlock(),e.createElementBlock("header",ge,[e.renderSlot(l.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(o.name)+" ",1),e.createVNode(v,{link:"",type:"primary",onClick:u[0]||(u[0]=k=>n.value=!1)},{default:e.withCtx(()=>[e.createVNode(d,{"icon-class":o.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},()=>[u[1]||(u[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(l.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Se=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(o,t)=>{const l=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(n.class)},[e.createElementVNode("header",null,[e.renderSlot(o.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(n.name)+" ",1),e.createVNode(l,{"icon-class":n.iconAfter},null,8,["icon-class"])])]),e.renderSlot(o.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(o.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),ye={key:0},j={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let l=["sw-skeleton-item"];return n.size.length>0&&l.push("sw-"+n.size),n.animate&&l.push("sw-animate"),n.class.length>0&&l.push(n.class),l}),t=e.computed(()=>({width:n.width+"%"}));return(l,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),style:e.normalizeStyle(t.value)},[n.animate?(e.openBlock(),e.createElementBlock("div",ye)):e.createCommentVNode("",!0)],6))}},_e=Object.freeze(Object.defineProperty({__proto__:null,default:j},Symbol.toStringTag,{value:"Module"})),we=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(o,t)=>n.visual?e.renderSlot(o.$slots,"default",{key:0},()=>[t[0]||(t[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",n.class])},[e.renderSlot(o.$slots,"skeleton",{},()=>[e.createVNode(j,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),be=["name","id"],ke=["for","data-onlabel","data-offlabel"],Ee=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:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const n=e.useModel(a,"modelValue"),o=a;return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-switch",o.class])},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:o.name,class:"sw-control",id:o.id,"onUpdate:modelValue":l[0]||(l[0]=u=>n.value=u)},null,8,be),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{for:o.id,class:"sw-label","data-onlabel":o.on,"data-offlabel":o.off},null,8,ke),e.renderSlot(t.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),De=["onClick"],Be=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 o=e.ref([]),t=a,l=e.useModel(a,"modelValue"),u=n;return o.value=e.useSlots().default().filter(d=>d.type.__name==="SwTabsPane"),e.provide("activeTab",l),e.provide("tabs",o),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+t.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:l.value===p}]),onClick:c=>{l.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,De))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),$e=["onClick"],Ve=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 o=e.ref([]),t=a,l=e.useModel(a,"modelValue"),u=n;return e.provide("activeTab",l),e.provide("tabs",o),e.provide("registerTab",d=>{o.value.push(d)}),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+t.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:l.value===p}]),onClick:c=>{l.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,$e))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Me={key:0,class:"tab-content"},Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const n=a,o=e.inject("activeTab"),t=e.inject("tabs"),l=e.computed(()=>{const u=t.value.findIndex(d=>d.props.title===n.title);return o.value===u});return(u,d)=>l.value?(e.openBlock(),e.createElementBlock("div",Me,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Ne={key:0,class:"tab-content"},Ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const n=a,o=e.inject("registerTab");if(!o)throw new Error("SwTabsPane must be used inside SwTabs");o({props:n});const t=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const u=e.inject("tabs").value.length-1;return(d,k)=>e.unref(t)===u?(e.openBlock(),e.createElementBlock("div",Ne,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));B.components=T,B.default=R,Object.defineProperties(B,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(B,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(B=typeof globalThis<"u"?globalThis:B||self,e(B["component-sw"]={},B.vue))})(this,function(B,e){"use strict";const z=Object.assign({"./components/SwButton.vue":()=>Promise.resolve().then(()=>A),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>H),"./components/SwDataPicker.vue":()=>Promise.resolve().then(()=>oe),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>se),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>re),"./components/SwInput.vue":()=>Promise.resolve().then(()=>ue),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>he),"./components/SwSection.vue":()=>Promise.resolve().then(()=>Se),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>we),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>_e),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Be),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Te),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Ce)}),T={};for(const a in z){const n=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(o,t)=>t.toUpperCase());T[n]=e.defineAsyncComponent(()=>z[a]())}const R={install(a){Object.keys(T).forEach(n=>{a.component(n,T[n]),console.log(n)})}},v={__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}},setup(a){const n=a,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,l)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value)},[e.renderSlot(t.$slots,"default")],2))}},A=Object.freeze(Object.defineProperty({__proto__:null,default:v},Symbol.toStringTag,{value:"Module"})),H=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{t.value="0px"});const n=e.ref("0px"),o=a,t=e.computed(()=>o.visual?`${n.value.scrollHeight}px`:"0px");return(l,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:o.visual}]),style:e.normalizeStyle({height:t.value}),ref_key:"collapse",ref:n},[e.renderSlot(l.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"}));function q(a){return/^(https?:|mailto:|tel:)/.test(a)}function M(a,n){if(arguments.length===0||!a)return null;const o=n||"{Y}-{m}-{d} {G}:{i}:{s}";let t;typeof a=="object"?t=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),t=new Date(a));const l="ru-RU",u={Y:t.getFullYear(),m:(t.getMonth()+1).toString().padStart(2,"0"),d:t.getDate(),dd:t.getDate().toString().padStart(2,"0"),G:t.getHours(),H:t.getHours().toString().padStart(2,"0"),i:t.getMinutes().toString().padStart(2,"0"),s:t.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(l,{weekday:"short"}).format(t),F:new Intl.DateTimeFormat(l,{month:"long"}).format(t),M:new Intl.DateTimeFormat(l,{month:"short"}).format(t)};return o.replace(/{(dd|[YmdGHisDFM])+}/g,(d,k)=>u[k])}const W={class:"sw-data-picker"},U={class:"month_year"},G={class:"text"},X={class:"week"},J={class:"month"},K=["onClick"],Q={key:0},Z={class:"month_year"},ee={class:"text"},te={class:"week"},le={class:"month"},ne=["onClick"],oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDataPicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:()=>"solid"}},emits:["init"],setup(a,{emit:n}){var I,F,Y,L;const o=e.ref(new Date),t=e.ref(new Date),l=a,u=n,d=e.ref(new Date().getFullYear()),k=e.ref(new Date().getMonth()),E=e.ref(new Date().getFullYear()),p=e.ref(new Date().getMonth()),c=e.ref([]),f=e.ref(0),y=e.ref(0),g=e.ref(-1),w=e.ref(-1),N=e.ref(navigator.languages||"ru"),S=/en|zh|ja|he/.test(N.value)?0:1,b=l.range==="range"?2:1,$=m=>{const r=m.split(m.match(/\D.*?\D?/));return r[0].length>2?r.join("-")+"T00:00:01":r.reverse().join("-")+"T00:00:01"};typeof((I=l.data)==null?void 0:I.startDate)<"u"&&(o.value=new Date($(l.data.startDate)),d.value=o.value.getFullYear(),p.value=o.value.getMonth()),typeof((F=l.data)==null?void 0:F.endDate)<"u"&&(t.value=new Date($(l.data.endDate)),E.value=t.value.getFullYear(),k.value=t.value.getMonth());const C=()=>{var s;let m=new Date(d.value,p.value,0);for(let i=m.getDate()-m.getDay()+S;i<=m.getDate()&&m.getDay()!==6+S;i++)f.value++,c.value.push({day:i,month:m.getMonth(),year:m.getFullYear(),class:[]});for(let i=1;i<=new Date(d.value,p.value+1,0).getDate();i++)f.value++,c.value.push({day:i,month:p.value,year:d.value,class:[]});if(l.range==="range"){y.value=new Date(d.value,p.value+2,0);for(let i=1;i<=y.value.getDate();i++)c.value.push({day:i,month:y.value.getMonth(),year:y.value.getFullYear(),class:[]})}let r=new Date(d.value,p.value+b,1);console.log(r.getDay());for(let i=1;i<=(7-r.getDay()+S)%7&&r.getDay()!==S;i++)c.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]});typeof((s=l.data)==null?void 0:s.holiday)<"u"&&l.data.holiday.length!==0&&(l.data.holiday.preholidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="preholiday")}),l.data.holiday.holidays.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="weekend")}),l.data.holiday.holiday.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="holiday")}),l.data.holiday.nowork.forEach(i=>{let h=i.split("-");const D=c.value.findIndex(_=>_.year==h[0]&&_.month+1==h[1]&&_.day==h[2]);D!==-1&&(c.value[D].class[0]="nowork")}))},x=(m,r)=>{let s=m-r+1;for(let i=0;i<=m-r;i++)c.value[i+r].class[0]==="holiday"&&s--;return s},O=(m,r)=>{const s=M(new Date(m.year,m.month,m.day),"{dd}.{m}.{Y}");if(l.range==="range")if(console.log(g.value),w.value!==-1){if(w.value<=g.value)for(let i=w.value;i<=g.value;i++)c.value[i].class[1]="";else for(let i=g.value;i<=w.value;i++)c.value[i].class[1]="";g.value=r,w.value=-1,c.value[r].class[1]="active"}else if(g.value!==-1){if(w.value=r,w.value>=g.value)for(let h=g.value+1;h<r;h++)c.value[h].class[1]="select";else for(let h=r+1;h<g.value;h++)c.value[h].class[1]="select";c.value[r].class[1]="active";let i=M(new Date(c.value[g.value].year,c.value[g.value].month,c.value[g.value].day),"{dd}.{m}.{Y}");g.value>r?u("input",{dateStart:s,dateEnd:i,count:x(g.value,r)}):u("input",{dateStart:i,dateEnd:s,count:x(r,g.value)})}else g.value=r,c.value[r].class[1]="active";else g.value!==-1&&(c.value[g.value].class[1]=""),g.value=r,c.value[r].class[1]="active",u("input",{dateStart:s,count:1})};if(C(),typeof((Y=l.data)==null?void 0:Y.startDate)<"u"&&(g.value=c.value.findIndex(m=>m.day===o.value.getDate()&&m.month===p.value&&m.year===d.value),c.value[g.value].class[1]="active"),typeof((L=l.data)==null?void 0:L.endDate)<"u"&&l.range==="range"){w.value=c.value.findIndex(m=>m.day===t.value.getDate()&&m.month===k.value&&m.year===E.value),c.value[w.value].class[1]="active";for(let m=g.value+1;m<w.value;m++)c.value[m].class[1]="select"}const V=(m,r)=>{ze(m,r)&&(c.value=[],f.value=0,o.value=new Date(m,r,1),d.value=o.value.getFullYear(),p.value=o.value.getMonth(),C())},ze=(m,r)=>{if(!l.limitation)return!0;if(l.limitation[0].dateStart){console.log(l.limitation[0].dateStart);let s=l.limitation[0].dateStart.split(l.limitation[0].dateStart.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])>m||parseInt(s[2])===m&&parseInt(s[1])>r+1)return!1}if(l.limitation[l.limitation.length-1].dateEnd){console.log(l.limitation[l.limitation.length-1].dateEnd);let s=l.limitation[l.limitation.length-1].dateEnd.split(l.limitation[l.limitation.length-1].dateEnd.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])<m||parseInt(s[2])===m&&parseInt(s[1])<r+b)return!1}return!0};return(m,r)=>(e.openBlock(),e.createElementBlock("div",W,[e.createElementVNode("div",null,[e.createElementVNode("p",U,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[0]||(r[0]=e.withModifiers(s=>V(d.value-1,p.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:r[1]||(r[1]=e.withModifiers(s=>V(d.value,p.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",G,[e.createElementVNode("button",null,e.toDisplayString(d.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[2]||(r[2]=e.withModifiers(s=>V(d.value,p.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:r[3]||(r[3]=e.withModifiers(s=>V(d.value+1,p.value),["prevent"]))},"»")])]),e.createElementVNode("div",X,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",J,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i<f.value+(7-new Date(d.value,p.value+1,1).getDay()+e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===p.value&&(!l.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(l.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(l.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===p.value&&O(s,i)}},e.toDisplayString(s.day),11,K)):e.createCommentVNode("",!0)],64))),128))])]),l.range==="range"?(e.openBlock(),e.createElementBlock("div",Q,[e.createElementVNode("p",Z,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[4]||(r[4]=s=>V(d.value-1,p.value))},"«"),e.createElementVNode("button",{onClick:r[5]||(r[5]=s=>V(d.value,p.value-1))},"‹")]),e.createElementVNode("span",ee,[e.createElementVNode("button",null,e.toDisplayString(new Date(d.value,p.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(M)(o.value.setMonth(p.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[6]||(r[6]=s=>V(d.value,p.value+1))},"›"),e.createElementVNode("button",{onClick:r[7]||(r[7]=s=>V(d.value+1,p.value))},"»")])]),e.createElementVNode("div",te,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(M)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",le,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i>=f.value-(7+new Date(d.value,p.value+1,1).getDay()-e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===y.value.getMonth()&&(!l.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date($(l.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date($(l.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===y.value.getMonth()&&O(s,i)}},e.toDisplayString(s.day),11,ne)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),ae=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}},setup(a){const n=a,o=e.ref(!1),t=e.ref(null),l=e.ref(null),u=e.ref({}),d=e.computed(()=>{let f=["sw-dropdown"];return n.size.length>0&&f.push("sw-"+n.size),n.type.length>0&&f.push("sw-"+n.type),f}),k=async()=>{if(await e.nextTick(),!l.value)return;const f=t.value.getBoundingClientRect(),y=window.pageYOffset||document.documentElement.scrollTop,g=window.pageXOffset||document.documentElement.scrollLeft,w=l.value.offsetHeight,N=l.value.offsetWidth;let S=f.left+f.width/2+g,b=f.bottom-f.height/2+y;const[$,C]=n.placement.split("-",2);switch(console.log(n.placement),$){case"bottom":b=b+f.height/2+8;break;case"top":b=b-f.height/2-8-w;break;case"left":S=S-N-f.width/2-10,b=b-w/2;break;case"right":S=S+f.width/2+8,b=b-w/2;break}switch(C){case"left":S=S-N+f.width/2;break;case"right":S=S-f.width/2;break}S<0&&(S=0),b<0&&(b=0),u.value={position:"absolute",top:`${b}px`,left:`${S}px`,maxWidth:n.maxWidth===0?"":`${n.maxWidth}px`}},E=async()=>{o.value=!o.value,o.value&&await k()},p=()=>{o.value&&k()},c=f=>{t.value&&!t.value.contains(f.target)&&o.value&&(o.value=!1),console.log(t.value.contains(f.target))};return e.onMounted(()=>{document.addEventListener("click",c,!1),window.addEventListener("resize",p)}),e.onUnmounted(()=>{document.removeEventListener("click",c),window.removeEventListener("resize",p)}),(f,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value),onClick:y[0]||(y[0]=g=>E()),ref_key:"dropdownRef",ref:t},[e.renderSlot(f.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:l,class:e.normalizeClass(["sw-dropdown-popup",n.class]),style:e.normalizeStyle(u.value)},[e.renderSlot(f.$slots,"dropdown")],6)):e.createCommentVNode("",!0)]))],2))}}},Symbol.toStringTag,{value:"Module"})),se=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,o=e.computed(()=>{let t=["sw-dropdown-item"];return n.size.length>0&&t.push("sw-"+n.size),n.type.length>0&&t.push("sw-"+n.type),n.class.length>0&&t.push(n.class),t});return(t,l)=>{const u=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(o.value)},[e.createVNode(u,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(t.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let t=["sw-form-item"];return n.type.length>0&&t.push("sw-"+n.type),n.class.length>0&&t.push(n.class),t});return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(t.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),ie=(a,n)=>{const o=a.__vccOpts||a;for(const[t,l]of n)o[t]=l;return o},ce={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return q(this.iconClass)}}},de=["href"];function pe(a,n,o,t,l,u){return u.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+o.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 "+o.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+o.prefix+"-"+o.iconClass},null,8,de)],16))}const P=ie(ce,[["render",pe]]),me=["for"],fe=["placeholder","type","id","name"],ue=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"}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix"],["update:modelValue"]),setup(a,{emit:n}){var c;const o=e.useModel(a,"modelValue"),t=a,l=e.ref(null),u=n,d=()=>{l.value!==null&&(l.value.style.top="-.6em")},k=()=>{var f;((f=o.value)==null?void 0:f.length)==0&&l.value!==null&&l.value.removeAttribute("style")};((c=o.value)==null?void 0:c.length)>0&&l.value!==null&&(l.value.style.top="-.6em");const E=()=>{u("suffix")},p=e.computed(()=>{let f=["sw-input"];return t.size.length>0&&f.push("sw-"+t.size),t.class.length>0&&f.push(t.class),f});return(f,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value)},[t.before.length>0?(e.openBlock(),e.createBlock(P,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(f.$slots,"prefix",{key:1}),t.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:t.name,ref_key:"lab",ref:l},[e.createTextVNode(e.toDisplayString(t.label),1),y[1]||(y[1]=e.createElementVNode("span",{title:"Это поле обязательно для заполнения."},"*",-1))],8,me)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":y[0]||(y[0]=g=>o.value=g),required:"required",placeholder:t.placeholder,type:t.type,id:t.name,name:t.name,size:"60",onFocus:d,onBlur:k,maxlength:"128"},null,40,fe),[[e.vModelDynamic,o.value]]),t.after.length>0?(e.openBlock(),e.createBlock(P,{key:3,"icon-class":t.after,onClick:E},null,8,["icon-class"])):e.renderSlot(f.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ge={key:0},he=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"),o=a,t=e.ref(null);return(l,u)=>{const d=e.resolveComponent("svg-icon");return n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",o.class]),ref_key:"messageRef",ref:t},[o.name.length>0?(e.openBlock(),e.createElementBlock("header",ge,[e.renderSlot(l.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(o.name)+" ",1),e.createVNode(v,{link:"",type:"primary",onClick:u[0]||(u[0]=k=>n.value=!1)},{default:e.withCtx(()=>[e.createVNode(d,{"icon-class":o.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},()=>[u[1]||(u[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(l.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),Se=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(o,t)=>{const l=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(n.class)},[e.createElementVNode("header",null,[e.renderSlot(o.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(n.name)+" ",1),e.createVNode(l,{"icon-class":n.iconAfter},null,8,["icon-class"])])]),e.renderSlot(o.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(o.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),ye={key:0},j={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const n=a,o=e.computed(()=>{let l=["sw-skeleton-item"];return n.size.length>0&&l.push("sw-"+n.size),n.animate&&l.push("sw-animate"),n.class.length>0&&l.push(n.class),l}),t=e.computed(()=>({width:n.width+"%"}));return(l,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),style:e.normalizeStyle(t.value)},[n.animate?(e.openBlock(),e.createElementBlock("div",ye)):e.createCommentVNode("",!0)],6))}},_e=Object.freeze(Object.defineProperty({__proto__:null,default:j},Symbol.toStringTag,{value:"Module"})),we=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(o,t)=>n.visual?e.renderSlot(o.$slots,"default",{key:0},()=>[t[0]||(t[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",n.class])},[e.renderSlot(o.$slots,"skeleton",{},()=>[e.createVNode(j,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),be=["name","id"],ke=["for","data-onlabel","data-offlabel"],Ee=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:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const n=e.useModel(a,"modelValue"),o=a;return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-switch",o.class])},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:o.name,class:"sw-control",id:o.id,"onUpdate:modelValue":l[0]||(l[0]=u=>n.value=u)},null,8,be),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{for:o.id,class:"sw-label","data-onlabel":o.on,"data-offlabel":o.off},null,8,ke),e.renderSlot(t.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),De=["onClick"],Be=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 o=e.ref([]),t=a,l=e.useModel(a,"modelValue"),u=n;return o.value=e.useSlots().default().filter(d=>d.type.__name==="SwTabsPane"),e.provide("activeTab",l),e.provide("tabs",o),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+t.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:l.value===p}]),onClick:c=>{l.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,De))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),$e=["onClick"],Ve=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 o=e.ref([]),t=a,l=e.useModel(a,"modelValue"),u=n;return e.provide("activeTab",l),e.provide("tabs",o),e.provide("registerTab",d=>{o.value.push(d)}),(d,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+t.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(E,p)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:e.normalizeClass([{active:l.value===p}]),onClick:c=>{l.value=p,u("tab-click",p)}},e.toDisplayString(E.props.label||E.props.title),11,$e))),128))]),e.renderSlot(d.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Me={key:0,class:"tab-content"},Te=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const n=a,o=e.inject("activeTab"),t=e.inject("tabs"),l=e.computed(()=>{const u=t.value.findIndex(d=>d.props.title===n.title);return o.value===u});return(u,d)=>l.value?(e.openBlock(),e.createElementBlock("div",Me,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Ne={key:0,class:"tab-content"},Ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const n=a,o=e.inject("registerTab");if(!o)throw new Error("SwTabsPane must be used inside SwTabs");o({props:n});const t=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const u=e.inject("tabs").value.length-1;return(d,k)=>e.unref(t)===u?(e.openBlock(),e.createElementBlock("div",Ne,[e.renderSlot(d.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));B.components=T,B.default=R,Object.defineProperties(B,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineAsyncComponent as m } from "vue";
2
- const n = /* @__PURE__ */ Object.assign({ "./components/SwButton.vue": () => import("./SwButton-CQh1Mtze.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CjL9dpO-.js"), "./components/SwDataPicker.vue": () => import("./SwDataPicker-Cp_ggtdj.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-wqiMBxVs.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CgahR93o.js"), "./components/SwInput.vue": () => import("./SwInput-BjacwiyF.js"), "./components/SwMessage.vue": () => import("./SwMessage-BGIOC-zp.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-375THfdW.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") }), t = {};
2
+ const n = /* @__PURE__ */ Object.assign({ "./components/SwButton.vue": () => import("./SwButton-CQh1Mtze.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-CjL9dpO-.js"), "./components/SwDataPicker.vue": () => import("./SwDataPicker-Cp_ggtdj.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-BeDf6J2r.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CgahR93o.js"), "./components/SwInput.vue": () => import("./SwInput-BjacwiyF.js"), "./components/SwMessage.vue": () => import("./SwMessage-BGIOC-zp.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-375THfdW.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") }), t = {};
3
3
  for (const e in n) {
4
4
  const o = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (s, p) => p.toUpperCase());
5
5
  t[o] = m(() => n[e]());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studio-west/component-sw",
3
- "version": "0.1.12",
3
+ "version": "0.1.14",
4
4
  "description": "Vue components of Component SW collection.",
5
5
  "type": "module",
6
6
  "keywords": [