@volverjs/ui-vue 0.0.10-beta.51 → 0.0.10-beta.52

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 { unref, computed, isRef, defineComponent, h, inject, mergeDefaults, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, useId, watch, useSlots, createElementBlock, normalizeClass, createTextVNode, toDisplayString, createElementVNode, renderSlot, normalizeProps, guardReactiveProps, withDirectives, vModelText, createVNode, createSlots, withCtx } from "vue";
1
+ import { unref, computed, isRef, defineComponent, h, inject, mergeDefaults, ref, toRefs, openBlock, createBlock, mergeProps, createCommentVNode, useId, watch, useSlots, createElementBlock, normalizeClass, toDisplayString, createElementVNode, renderSlot, normalizeProps, guardReactiveProps, withDirectives, vModelText, createTextVNode, createVNode, createSlots, withCtx } from "vue";
2
2
  import { iconExists, Icon, addIcon } from "@iconify/vue";
3
3
  import { useFocus, useElementVisibility } from "@vueuse/core";
4
4
  function isEmpty(value) {
@@ -917,19 +917,18 @@ function useTextCount(text, options) {
917
917
  };
918
918
  }
919
919
  const _hoisted_1 = ["for"];
920
- const _hoisted_2 = { key: 0 };
921
- const _hoisted_3 = { class: "vv-textarea__wrapper" };
922
- const _hoisted_4 = {
920
+ const _hoisted_2 = { class: "vv-textarea__wrapper" };
921
+ const _hoisted_3 = {
923
922
  key: 0,
924
923
  class: "vv-textarea__input-before"
925
924
  };
926
- const _hoisted_5 = { class: "vv-textarea__inner" };
927
- const _hoisted_6 = ["id"];
928
- const _hoisted_7 = {
925
+ const _hoisted_4 = { class: "vv-textarea__inner" };
926
+ const _hoisted_5 = ["id"];
927
+ const _hoisted_6 = {
929
928
  key: 1,
930
929
  class: "vv-textarea__input-after"
931
930
  };
932
- const _hoisted_8 = {
931
+ const _hoisted_7 = {
933
932
  key: 2,
934
933
  class: "vv-textarea__limit"
935
934
  };
@@ -1064,19 +1063,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1064
1063
  key: 0,
1065
1064
  for: unref(hasId),
1066
1065
  class: "vv-textarea__label"
1067
- }, [
1068
- createTextVNode(
1069
- toDisplayString(unref(label)) + " ",
1070
- 1
1071
- /* TEXT */
1072
- ),
1073
- _ctx.required ? (openBlock(), createElementBlock("span", _hoisted_2, "*")) : createCommentVNode("v-if", true)
1074
- ], 8, _hoisted_1)) : createCommentVNode("v-if", true),
1075
- createElementVNode("div", _hoisted_3, [
1076
- _ctx.$slots.before ? (openBlock(), createElementBlock("div", _hoisted_4, [
1066
+ }, toDisplayString(unref(label)), 9, _hoisted_1)) : createCommentVNode("v-if", true),
1067
+ createElementVNode("div", _hoisted_2, [
1068
+ _ctx.$slots.before ? (openBlock(), createElementBlock("div", _hoisted_3, [
1077
1069
  renderSlot(_ctx.$slots, "before", normalizeProps(guardReactiveProps(unref(slotProps))))
1078
1070
  ])) : createCommentVNode("v-if", true),
1079
- createElementVNode("div", _hoisted_5, [
1071
+ createElementVNode("div", _hoisted_4, [
1080
1072
  unref(hasIconBefore) ? (openBlock(), createBlock(
1081
1073
  _sfc_main$1,
1082
1074
  mergeProps({ key: 0 }, unref(hasIconBefore), { class: "vv-textarea__icon" }),
@@ -1091,7 +1083,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1091
1083
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(localModelValue) ? localModelValue.value = $event : null)
1092
1084
  }, unref(hasAttrs), {
1093
1085
  onKeyup: _cache[1] || (_cache[1] = ($event) => emit("keyup", $event))
1094
- }), null, 16, _hoisted_6), [
1086
+ }), null, 16, _hoisted_5), [
1095
1087
  [vModelText, unref(localModelValue)]
1096
1088
  ]),
1097
1089
  unref(hasIconAfter) ? (openBlock(), createBlock(
@@ -1102,10 +1094,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1102
1094
  /* FULL_PROPS */
1103
1095
  )) : createCommentVNode("v-if", true)
1104
1096
  ]),
1105
- _ctx.$slots.after ? (openBlock(), createElementBlock("div", _hoisted_7, [
1097
+ _ctx.$slots.after ? (openBlock(), createElementBlock("div", _hoisted_6, [
1106
1098
  renderSlot(_ctx.$slots, "after", normalizeProps(guardReactiveProps(unref(slotProps))))
1107
1099
  ])) : createCommentVNode("v-if", true),
1108
- unref(count) ? (openBlock(), createElementBlock("span", _hoisted_8, [
1100
+ unref(count) ? (openBlock(), createElementBlock("span", _hoisted_7, [
1109
1101
  renderSlot(_ctx.$slots, "count", normalizeProps(guardReactiveProps(unref(slotProps))), () => [
1110
1102
  createTextVNode(
1111
1103
  toDisplayString(unref(countFormatted)),
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("@iconify/vue"),require("@vueuse/core")):"function"==typeof define&&define.amd?define(["vue","@iconify/vue","@vueuse/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvTextarea=t(e.vue,e.vue$1,e.core)}(this,(function(e,t,l){"use strict";function o(t){return null==(l=e.unref(t))||""===l||Array.isArray(l)&&0===l.length||!(l instanceof Date)&&"object"==typeof l&&0===Object.keys(l).length;var l}function a(e){return Array.isArray(e)?e.filter((e=>{return"string"==typeof(t=e)||t instanceof String;var t})).join(" "):e}const i={prefix:"normal"};var n=(e=>(e.local="local",e.session="session",e))(n||{}),r=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(r||{}),u=(e=>(e.before="before",e.after="after",e))(u||{}),d=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(d||{}),s=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(s||{});const v=Symbol.for("volver");function c(){return e.inject(v)}function f(t,l,o){return e.computed((()=>{const a={[t]:!0},i="string"==typeof(null==l?void 0:l.value)?l.value.split(" "):null==l?void 0:l.value;return i&&Array.isArray(i)&&i.forEach((e=>{e&&(a[`${t}--${e}`]=!0)})),o&&Object.keys(o.value).forEach((l=>{a[`${t}--${l}`]=e.unref(o.value[l])})),a}))}const p=e.defineComponent({name:"VvIcon",props:e.mergeDefaults({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},i),setup(l){const o=l,a=e.computed((()=>"string"==typeof o.rotate?Number.parseFloat(o.rotate):o.rotate)),i=e.ref(!0),n=c(),{modifiers:r}=e.toRefs(o),u=f("vv-icon",r),d=e.computed((()=>o.provider||(null==n?void 0:n.iconsProvider))),s=e.computed((()=>{const e=o.name??"",l=`@${d.value}:${o.prefix}:${e}`;if(t.iconExists(l))return l;const a=null==n?void 0:n.iconsCollections.find((l=>{const o=`@${d.value}:${l.prefix}:${e}`;return t.iconExists(o)}));return a?`@${d.value}:${a.prefix}:${e}`:e}));function v(e){const l=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),a=(null==l?void 0:l.innerHTML.trim())||"";l&&a&&t.addIcon(`@${d.value}:${o.prefix}:${o.name}`,{body:a,height:l.viewBox.baseVal.height,width:l.viewBox.baseVal.width})}return n&&o.src&&!t.iconExists(`@${d.value}:${o.prefix}:${o.name}`)&&(i.value=!1,n.fetchIcon(o.src).then((e=>{e&&(v(e),i.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),o.svg&&v(o.svg),(l,o)=>e.unref(i)?(e.openBlock(),e.createBlock(e.unref(t.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:l.inline,width:l.width,height:l.height,horizontalFlip:l.horizontalFlip,verticalFlip:l.verticalFlip,flip:l.flip,rotate:e.unref(a),color:l.color,onLoad:l.onLoad,icon:e.unref(s)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}}),m={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},h={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},g={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},b={disabled:{type:Boolean,default:!1}},y={required:{type:Boolean,default:!1}},S=(Boolean,Boolean,Boolean,{label:{type:[String,Number],default:void 0}}),L={readonly:{type:Boolean,default:!1}},B={modifiers:{type:[String,Array],default:void 0}},x={hintLabel:{type:String,default:""}},$={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},k={debounce:{type:[Number,String],default:void 0}},w={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:u.before,validation:e=>Object.values(u).includes(e)}},V={tabindex:{type:[String,Number],default:0}},N={floating:{type:Boolean,default:!1}},O={id:[String,Number]};r.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const P={...{...O,name:{type:String,required:!0}},...{autofocus:{type:Boolean,default:!1}},...{autocomplete:{type:String,default:"off"}},...V,...b,...L,...m,...h,...x,...g,...B,...$,...k,...w,...N,...S,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...y};d.button,s.button,n.local;const _={...P,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:"soft"},spellcheck:{type:[Boolean,String],default:"default"},resizable:Boolean};const I=["for"],C={key:0},E={class:"vv-textarea__wrapper"},z={key:0,class:"vv-textarea__input-before"},A={class:"vv-textarea__inner"},j=["id"],R={key:1,class:"vv-textarea__input-after"},T={key:2,class:"vv-textarea__limit"};return e.defineComponent({name:"VvTextarea",props:_,emits:["update:modelValue","focus","blur","keyup"],setup(t,{emit:i}){const n=t,d=i,s=e.useSlots(),v=function(t,l,o){const a=c(),i=e.computed((()=>{var e;if(a&&(null==(e=a.defaults.value)?void 0:e[t]))return a.defaults.value[t]}));return e.computed((()=>{if(void 0===i.value)return o;const e=i.value,t=l,a=o;return Object.keys(t).reduce(((l,o)=>{const i=a[o];if(l[o]=i,o in e){if(Array.isArray(t[o])){const a=t[o];a.length&&a[0]===i&&(l[o]=e[o])}if("function"==typeof t[o]&&(0,t[o])()===i&&(l[o]=e[o]),"object"==typeof t[o]){let a=t[o].default;"function"==typeof a&&(a=a()),"object"==typeof a?JSON.stringify(a)===JSON.stringify(i)&&(l[o]=e[o]):a===i&&(l[o]=e[o])}}return l}),{})}))}("VvTextarea",_,n),m=e.ref(),{id:h,icon:g,iconPosition:b,label:y,modelValue:S,count:L,valid:B,invalid:x,loading:$,modifiers:k,debounce:w,minlength:V,maxlength:N}=e.toRefs(n),O=function(t){return e.computed((()=>String((null==t?void 0:t.value)||e.useId())))}(h),P=e.computed((()=>`${O.value}-hint`)),q=e.computed((()=>n.floating&&o(n.placeholder)?" ":n.placeholder)),F=function(t,l,o=0,{getter:a=e=>e,setter:i=e=>e}={}){let n;return"string"==typeof o&&(o=Number.parseInt(o)),e.computed({get:()=>a(null==t?void 0:t.value),set:e=>{n&&clearTimeout(n),n=setTimeout((()=>{l("update:modelValue",i(e))}),o)}})}(S,d,null==w?void 0:w.value),{hasIconBefore:D,hasIconAfter:H}=function(t,l){const o=e.computed((()=>"string"==typeof(null==t?void 0:t.value)?{name:null==t?void 0:t.value}:null==t?void 0:t.value)),a=e.computed((()=>(null==l?void 0:l.value)===u.before?o.value:void 0)),i=e.computed((()=>(null==l?void 0:l.value)===u.after?o.value:void 0)),n=e.computed((()=>(null==l?void 0:l.value)===r.left?o.value:void 0)),d=e.computed((()=>(null==l?void 0:l.value)===r.right?o.value:void 0)),s=e.computed((()=>(null==l?void 0:l.value)===r.top?o.value:void 0)),v=e.computed((()=>(null==l?void 0:l.value)===r.bottom?o.value:void 0));return{hasIcon:o,hasIconLeft:n,hasIconRight:d,hasIconTop:s,hasIconBottom:v,hasIconBefore:a,hasIconAfter:i}}(g,b),{focused:M}=function(t,o){const{focused:a}=l.useFocus(t);return e.watch(a,(l=>{o(l?"focus":"blur",e.unref(t))})),{focused:a}}(m,d),J=l.useElementVisibility(m);e.watch(J,(e=>{e&&n.autofocus&&(M.value=!0)}));const{formatted:K}=function(t,l){const o=e.computed((()=>(e.unref(t)??"").length)),a=e.computed((()=>void 0!==(null==l?void 0:l.lowerLimit)&&o.value<(null==l?void 0:l.lowerLimit)?o.value-l.lowerLimit:void 0!==(null==l?void 0:l.upperLimit)&&o.value<(null==l?void 0:l.upperLimit)?l.upperLimit-o.value:0)),i=e.computed((()=>{if(!1===(null==l?void 0:l.mode))return"";if("limit"===(null==l?void 0:l.mode)&&(null==l?void 0:l.upperLimit))return`${o.value} / ${l.lowerLimit?`${l.lowerLimit}-`:""}${l.upperLimit}`;if("countdown"===(null==l?void 0:l.mode)){if(0===a.value)return;return a}return o.value}));return{length:o,gap:a,formatted:i}}(F,{mode:null==L?void 0:L.value,upperLimit:Number(null==N?void 0:N.value),lowerLimit:Number(null==V?void 0:V.value)}),U=e.computed((()=>!n.disabled&&!n.readonly)),G=e.computed((()=>U.value?n.tabindex:-1)),Q=e.computed((()=>!o(S))),W=e.computed((()=>!0===n.invalid||!0!==n.valid&&void 0)),{HintSlot:X,hasHintLabelOrSlot:Y,hasInvalidLabelOrSlot:Z,hintSlotScope:ee}=function(t,l){const o=e.computed((()=>e.isRef(t)?t.value:t)),i=e.computed((()=>a(o.value.invalidLabel))),n=e.computed((()=>a(o.value.validLabel))),r=e.computed((()=>o.value.loadingLabel)),u=e.computed((()=>o.value.hintLabel)),d=e.computed((()=>Boolean(o.value.loading&&(l.loading||r.value)))),s=e.computed((()=>!d.value&&Boolean(o.value.invalid&&(l.invalid||i.value)))),v=e.computed((()=>!d.value&&!s.value&&Boolean(o.value.valid&&(l.valid||n.value)))),c=e.computed((()=>!d.value&&!s.value&&!v.value&&Boolean(l.hint||u.value))),f=e.computed((()=>s.value||v.value||d.value||c.value)),p=e.computed((()=>({modelValue:o.value.modelValue,valid:o.value.valid,invalid:o.value.invalid,loading:o.value.loading}))),m=e.defineComponent({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:f,invalidLabel:i,validLabel:n,loadingLabel:r,hintLabel:u,hasInvalidLabelOrSlot:s,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:d,hasHintLabelOrSlot:c}),render(){var t,l,o,a,i,n,r,u;if(this.isVisible){let d;return this.hasInvalidLabelOrSlot&&(d="alert"),this.hasValidLabelOrSlot&&(d="status"),this.hasLoadingLabelOrSlot?e.h(this.tag,{role:d},(null==(l=(t=this.$slots).loading)?void 0:l.call(t))??this.loadingLabel):this.hasInvalidLabelOrSlot?e.h(this.tag,{role:d},(null==(a=(o=this.$slots).invalid)?void 0:a.call(o))??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?e.h(this.tag,{role:d},(null==(n=(i=this.$slots).valid)?void 0:n.call(i))??this.validLabel):e.h(this.tag,{role:d},(null==(u=(r=this.$slots).hint)?void 0:u.call(r))??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:s,hasHintLabelOrSlot:c,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:d,hintSlotScope:p,HintSlot:m}}(v,s),te=f("vv-textarea",k,e.computed((()=>({valid:B.value,invalid:x.value,loading:$.value,disabled:n.disabled,readonly:n.readonly,"icon-before":void 0!==D.value,"icon-after":void 0!==H.value,floating:n.floating&&!o(n.label),dirty:Q.value,focus:M.value,resizable:n.resizable})))),le=e.computed((()=>({name:n.name,placeholder:q.value,tabindex:G.value,disabled:n.disabled,readonly:n.readonly,required:n.required,autocomplete:n.autocomplete,minlength:n.minlength,maxlength:n.maxlength,cols:n.cols,rows:n.rows,wrap:n.wrap,spellcheck:n.spellcheck,"aria-invalid":W.value,"aria-describedby":Y.value?P.value:void 0,"aria-errormessage":Z.value?P.value:void 0}))),oe=e.computed((()=>({valid:n.valid,invalid:n.invalid,modelValue:n.modelValue,hintLabel:n.hintLabel,maxlength:n.maxlength,minlength:n.minlength,clear:ae})));function ae(){F.value=void 0}return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(te))},[e.unref(y)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(O),class:"vv-textarea__label"},[e.createTextVNode(e.toDisplayString(e.unref(y))+" ",1),t.required?(e.openBlock(),e.createElementBlock("span",C,"*")):e.createCommentVNode("v-if",!0)],8,I)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",E,[t.$slots.before?(e.openBlock(),e.createElementBlock("div",z,[e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(oe))))])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",A,[e.unref(D)?(e.openBlock(),e.createBlock(p,e.mergeProps({key:0},e.unref(D),{class:"vv-textarea__icon"}),null,16)):e.createCommentVNode("v-if",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(O),ref_key:"textarea",ref:m,"onUpdate:modelValue":l[0]||(l[0]=t=>e.isRef(F)?F.value=t:null)},e.unref(le),{onKeyup:l[1]||(l[1]=e=>d("keyup",e))}),null,16,j),[[e.vModelText,e.unref(F)]]),e.unref(H)?(e.openBlock(),e.createBlock(p,e.mergeProps({key:1},e.unref(H),{class:"vv-textarea__icon vv-textarea__icon-after"}),null,16)):e.createCommentVNode("v-if",!0)]),t.$slots.after?(e.openBlock(),e.createElementBlock("div",R,[e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(oe))))])):e.createCommentVNode("v-if",!0),e.unref(L)?(e.openBlock(),e.createElementBlock("span",T,[e.renderSlot(t.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(oe))),(()=>[e.createTextVNode(e.toDisplayString(e.unref(K)),1)]))])):e.createCommentVNode("v-if",!0)]),e.createVNode(e.unref(X),{id:e.unref(P),class:"vv-textarea__hint"},e.createSlots({_:2},[t.$slots.hint?{name:"hint",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps(e.unref(ee))))])),key:"0"}:void 0,t.$slots.loading?{name:"loading",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"loading",e.normalizeProps(e.guardReactiveProps(e.unref(ee))))])),key:"1"}:void 0,t.$slots.valid?{name:"valid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"valid",e.normalizeProps(e.guardReactiveProps(e.unref(ee))))])),key:"2"}:void 0,t.$slots.invalid?{name:"invalid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"invalid",e.normalizeProps(e.guardReactiveProps(e.unref(ee))))])),key:"3"}:void 0]),1032,["id"])],2))}})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("@iconify/vue"),require("@vueuse/core")):"function"==typeof define&&define.amd?define(["vue","@iconify/vue","@vueuse/core"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvTextarea=t(e.vue,e.vue$1,e.core)}(this,(function(e,t,l){"use strict";function o(t){return null==(l=e.unref(t))||""===l||Array.isArray(l)&&0===l.length||!(l instanceof Date)&&"object"==typeof l&&0===Object.keys(l).length;var l}function a(e){return Array.isArray(e)?e.filter((e=>{return"string"==typeof(t=e)||t instanceof String;var t})).join(" "):e}const i={prefix:"normal"};var n=(e=>(e.local="local",e.session="session",e))(n||{}),r=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(r||{}),u=(e=>(e.before="before",e.after="after",e))(u||{}),d=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(d||{}),s=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(s||{});const v=Symbol.for("volver");function c(){return e.inject(v)}function f(t,l,o){return e.computed((()=>{const a={[t]:!0},i="string"==typeof(null==l?void 0:l.value)?l.value.split(" "):null==l?void 0:l.value;return i&&Array.isArray(i)&&i.forEach((e=>{e&&(a[`${t}--${e}`]=!0)})),o&&Object.keys(o.value).forEach((l=>{a[`${t}--${l}`]=e.unref(o.value[l])})),a}))}const p=e.defineComponent({name:"VvIcon",props:e.mergeDefaults({name:{},color:{},width:{},height:{},provider:{},prefix:{},src:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},flip:{},mode:{},inline:{type:Boolean},rotate:{},onLoad:{type:Function},svg:{},modifiers:{}},i),setup(l){const o=l,a=e.computed((()=>"string"==typeof o.rotate?Number.parseFloat(o.rotate):o.rotate)),i=e.ref(!0),n=c(),{modifiers:r}=e.toRefs(o),u=f("vv-icon",r),d=e.computed((()=>o.provider||(null==n?void 0:n.iconsProvider))),s=e.computed((()=>{const e=o.name??"",l=`@${d.value}:${o.prefix}:${e}`;if(t.iconExists(l))return l;const a=null==n?void 0:n.iconsCollections.find((l=>{const o=`@${d.value}:${l.prefix}:${e}`;return t.iconExists(o)}));return a?`@${d.value}:${a.prefix}:${e}`:e}));function v(e){const l=function(e){let t;if("undefined"==typeof window){const{JSDOM:e}=require("jsdom");t=(new e).window}return(t?new t.DOMParser:new window.DOMParser).parseFromString(e,"text/html").querySelector("svg")}(e),a=(null==l?void 0:l.innerHTML.trim())||"";l&&a&&t.addIcon(`@${d.value}:${o.prefix}:${o.name}`,{body:a,height:l.viewBox.baseVal.height,width:l.viewBox.baseVal.width})}return n&&o.src&&!t.iconExists(`@${d.value}:${o.prefix}:${o.name}`)&&(i.value=!1,n.fetchIcon(o.src).then((e=>{e&&(v(e),i.value=!0)})).catch((e=>{throw new Error(`Error during fetch icon: ${null==e?void 0:e.message}`)}))),o.svg&&v(o.svg),(l,o)=>e.unref(i)?(e.openBlock(),e.createBlock(e.unref(t.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:l.inline,width:l.width,height:l.height,horizontalFlip:l.horizontalFlip,verticalFlip:l.verticalFlip,flip:l.flip,rotate:e.unref(a),color:l.color,onLoad:l.onLoad,icon:e.unref(s)}),null,16,["class"])):e.createCommentVNode("v-if",!0)}}),m={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},h={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},g={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},b={disabled:{type:Boolean,default:!1}},y={required:{type:Boolean,default:!1}},S=(Boolean,Boolean,Boolean,{label:{type:[String,Number],default:void 0}}),L={readonly:{type:Boolean,default:!1}},B={modifiers:{type:[String,Array],default:void 0}},x={hintLabel:{type:String,default:""}},$={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},k={debounce:{type:[Number,String],default:void 0}},w={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:u.before,validation:e=>Object.values(u).includes(e)}},V={tabindex:{type:[String,Number],default:0}},N={floating:{type:Boolean,default:!1}},O={id:[String,Number]};r.bottom,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean,Boolean;const P={...{...O,name:{type:String,required:!0}},...{autofocus:{type:Boolean,default:!1}},...{autocomplete:{type:String,default:"off"}},...V,...b,...L,...m,...h,...x,...g,...B,...$,...k,...w,...N,...S,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...y};d.button,s.button,n.local;const _={...P,modelValue:String,cols:{type:[String,Number],default:20},rows:{type:[String,Number],default:2},wrap:{type:String,default:"soft"},spellcheck:{type:[Boolean,String],default:"default"},resizable:Boolean};const I=["for"],C={class:"vv-textarea__wrapper"},E={key:0,class:"vv-textarea__input-before"},z={class:"vv-textarea__inner"},A=["id"],j={key:1,class:"vv-textarea__input-after"},R={key:2,class:"vv-textarea__limit"};return e.defineComponent({name:"VvTextarea",props:_,emits:["update:modelValue","focus","blur","keyup"],setup(t,{emit:i}){const n=t,d=i,s=e.useSlots(),v=function(t,l,o){const a=c(),i=e.computed((()=>{var e;if(a&&(null==(e=a.defaults.value)?void 0:e[t]))return a.defaults.value[t]}));return e.computed((()=>{if(void 0===i.value)return o;const e=i.value,t=l,a=o;return Object.keys(t).reduce(((l,o)=>{const i=a[o];if(l[o]=i,o in e){if(Array.isArray(t[o])){const a=t[o];a.length&&a[0]===i&&(l[o]=e[o])}if("function"==typeof t[o]&&(0,t[o])()===i&&(l[o]=e[o]),"object"==typeof t[o]){let a=t[o].default;"function"==typeof a&&(a=a()),"object"==typeof a?JSON.stringify(a)===JSON.stringify(i)&&(l[o]=e[o]):a===i&&(l[o]=e[o])}}return l}),{})}))}("VvTextarea",_,n),m=e.ref(),{id:h,icon:g,iconPosition:b,label:y,modelValue:S,count:L,valid:B,invalid:x,loading:$,modifiers:k,debounce:w,minlength:V,maxlength:N}=e.toRefs(n),O=function(t){return e.computed((()=>String((null==t?void 0:t.value)||e.useId())))}(h),P=e.computed((()=>`${O.value}-hint`)),T=e.computed((()=>n.floating&&o(n.placeholder)?" ":n.placeholder)),F=function(t,l,o=0,{getter:a=e=>e,setter:i=e=>e}={}){let n;return"string"==typeof o&&(o=Number.parseInt(o)),e.computed({get:()=>a(null==t?void 0:t.value),set:e=>{n&&clearTimeout(n),n=setTimeout((()=>{l("update:modelValue",i(e))}),o)}})}(S,d,null==w?void 0:w.value),{hasIconBefore:q,hasIconAfter:D}=function(t,l){const o=e.computed((()=>"string"==typeof(null==t?void 0:t.value)?{name:null==t?void 0:t.value}:null==t?void 0:t.value)),a=e.computed((()=>(null==l?void 0:l.value)===u.before?o.value:void 0)),i=e.computed((()=>(null==l?void 0:l.value)===u.after?o.value:void 0)),n=e.computed((()=>(null==l?void 0:l.value)===r.left?o.value:void 0)),d=e.computed((()=>(null==l?void 0:l.value)===r.right?o.value:void 0)),s=e.computed((()=>(null==l?void 0:l.value)===r.top?o.value:void 0)),v=e.computed((()=>(null==l?void 0:l.value)===r.bottom?o.value:void 0));return{hasIcon:o,hasIconLeft:n,hasIconRight:d,hasIconTop:s,hasIconBottom:v,hasIconBefore:a,hasIconAfter:i}}(g,b),{focused:H}=function(t,o){const{focused:a}=l.useFocus(t);return e.watch(a,(l=>{o(l?"focus":"blur",e.unref(t))})),{focused:a}}(m,d),M=l.useElementVisibility(m);e.watch(M,(e=>{e&&n.autofocus&&(H.value=!0)}));const{formatted:J}=function(t,l){const o=e.computed((()=>(e.unref(t)??"").length)),a=e.computed((()=>void 0!==(null==l?void 0:l.lowerLimit)&&o.value<(null==l?void 0:l.lowerLimit)?o.value-l.lowerLimit:void 0!==(null==l?void 0:l.upperLimit)&&o.value<(null==l?void 0:l.upperLimit)?l.upperLimit-o.value:0)),i=e.computed((()=>{if(!1===(null==l?void 0:l.mode))return"";if("limit"===(null==l?void 0:l.mode)&&(null==l?void 0:l.upperLimit))return`${o.value} / ${l.lowerLimit?`${l.lowerLimit}-`:""}${l.upperLimit}`;if("countdown"===(null==l?void 0:l.mode)){if(0===a.value)return;return a}return o.value}));return{length:o,gap:a,formatted:i}}(F,{mode:null==L?void 0:L.value,upperLimit:Number(null==N?void 0:N.value),lowerLimit:Number(null==V?void 0:V.value)}),K=e.computed((()=>!n.disabled&&!n.readonly)),U=e.computed((()=>K.value?n.tabindex:-1)),G=e.computed((()=>!o(S))),Q=e.computed((()=>!0===n.invalid||!0!==n.valid&&void 0)),{HintSlot:W,hasHintLabelOrSlot:X,hasInvalidLabelOrSlot:Y,hintSlotScope:Z}=function(t,l){const o=e.computed((()=>e.isRef(t)?t.value:t)),i=e.computed((()=>a(o.value.invalidLabel))),n=e.computed((()=>a(o.value.validLabel))),r=e.computed((()=>o.value.loadingLabel)),u=e.computed((()=>o.value.hintLabel)),d=e.computed((()=>Boolean(o.value.loading&&(l.loading||r.value)))),s=e.computed((()=>!d.value&&Boolean(o.value.invalid&&(l.invalid||i.value)))),v=e.computed((()=>!d.value&&!s.value&&Boolean(o.value.valid&&(l.valid||n.value)))),c=e.computed((()=>!d.value&&!s.value&&!v.value&&Boolean(l.hint||u.value))),f=e.computed((()=>s.value||v.value||d.value||c.value)),p=e.computed((()=>({modelValue:o.value.modelValue,valid:o.value.valid,invalid:o.value.invalid,loading:o.value.loading}))),m=e.defineComponent({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:f,invalidLabel:i,validLabel:n,loadingLabel:r,hintLabel:u,hasInvalidLabelOrSlot:s,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:d,hasHintLabelOrSlot:c}),render(){var t,l,o,a,i,n,r,u;if(this.isVisible){let d;return this.hasInvalidLabelOrSlot&&(d="alert"),this.hasValidLabelOrSlot&&(d="status"),this.hasLoadingLabelOrSlot?e.h(this.tag,{role:d},(null==(l=(t=this.$slots).loading)?void 0:l.call(t))??this.loadingLabel):this.hasInvalidLabelOrSlot?e.h(this.tag,{role:d},(null==(a=(o=this.$slots).invalid)?void 0:a.call(o))??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?e.h(this.tag,{role:d},(null==(n=(i=this.$slots).valid)?void 0:n.call(i))??this.validLabel):e.h(this.tag,{role:d},(null==(u=(r=this.$slots).hint)?void 0:u.call(r))??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:s,hasHintLabelOrSlot:c,hasValidLabelOrSlot:v,hasLoadingLabelOrSlot:d,hintSlotScope:p,HintSlot:m}}(v,s),ee=f("vv-textarea",k,e.computed((()=>({valid:B.value,invalid:x.value,loading:$.value,disabled:n.disabled,readonly:n.readonly,"icon-before":void 0!==q.value,"icon-after":void 0!==D.value,floating:n.floating&&!o(n.label),dirty:G.value,focus:H.value,resizable:n.resizable})))),te=e.computed((()=>({name:n.name,placeholder:T.value,tabindex:U.value,disabled:n.disabled,readonly:n.readonly,required:n.required,autocomplete:n.autocomplete,minlength:n.minlength,maxlength:n.maxlength,cols:n.cols,rows:n.rows,wrap:n.wrap,spellcheck:n.spellcheck,"aria-invalid":Q.value,"aria-describedby":X.value?P.value:void 0,"aria-errormessage":Y.value?P.value:void 0}))),le=e.computed((()=>({valid:n.valid,invalid:n.invalid,modelValue:n.modelValue,hintLabel:n.hintLabel,maxlength:n.maxlength,minlength:n.minlength,clear:oe})));function oe(){F.value=void 0}return(t,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(ee))},[e.unref(y)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(O),class:"vv-textarea__label"},e.toDisplayString(e.unref(y)),9,I)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",C,[t.$slots.before?(e.openBlock(),e.createElementBlock("div",E,[e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(le))))])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",z,[e.unref(q)?(e.openBlock(),e.createBlock(p,e.mergeProps({key:0},e.unref(q),{class:"vv-textarea__icon"}),null,16)):e.createCommentVNode("v-if",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(O),ref_key:"textarea",ref:m,"onUpdate:modelValue":l[0]||(l[0]=t=>e.isRef(F)?F.value=t:null)},e.unref(te),{onKeyup:l[1]||(l[1]=e=>d("keyup",e))}),null,16,A),[[e.vModelText,e.unref(F)]]),e.unref(D)?(e.openBlock(),e.createBlock(p,e.mergeProps({key:1},e.unref(D),{class:"vv-textarea__icon vv-textarea__icon-after"}),null,16)):e.createCommentVNode("v-if",!0)]),t.$slots.after?(e.openBlock(),e.createElementBlock("div",j,[e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(le))))])):e.createCommentVNode("v-if",!0),e.unref(L)?(e.openBlock(),e.createElementBlock("span",R,[e.renderSlot(t.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(le))),(()=>[e.createTextVNode(e.toDisplayString(e.unref(J)),1)]))])):e.createCommentVNode("v-if",!0)]),e.createVNode(e.unref(W),{id:e.unref(P),class:"vv-textarea__hint"},e.createSlots({_:2},[t.$slots.hint?{name:"hint",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])),key:"0"}:void 0,t.$slots.loading?{name:"loading",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"loading",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])),key:"1"}:void 0,t.$slots.valid?{name:"valid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"valid",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])),key:"2"}:void 0,t.$slots.invalid?{name:"invalid",fn:e.withCtx((()=>[e.renderSlot(t.$slots,"invalid",e.normalizeProps(e.guardReactiveProps(e.unref(Z))))])),key:"3"}:void 0]),1032,["id"])],2))}})}));
@@ -4056,7 +4056,7 @@ const _hoisted_4$5 = { class: "vv-select__inner" };
4056
4056
  const _hoisted_5$4 = ["id"];
4057
4057
  const _hoisted_6$4 = ["disabled", "hidden"];
4058
4058
  const _hoisted_7$4 = ["disabled", "value"];
4059
- const _hoisted_8$4 = ["disabled", "label"];
4059
+ const _hoisted_8$3 = ["disabled", "label"];
4060
4060
  const _hoisted_9$2 = ["disabled", "value"];
4061
4061
  const _hoisted_10$1 = {
4062
4062
  key: 1,
@@ -4268,7 +4268,7 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
4268
4268
  128
4269
4269
  /* KEYED_FRAGMENT */
4270
4270
  ))
4271
- ], 8, _hoisted_8$4))
4271
+ ], 8, _hoisted_8$3))
4272
4272
  ],
4273
4273
  64
4274
4274
  /* STABLE_FRAGMENT */
@@ -4523,7 +4523,7 @@ const _hoisted_7$3 = {
4523
4523
  key: 0,
4524
4524
  class: "vv-select__value"
4525
4525
  };
4526
- const _hoisted_8$3 = ["aria-label", "onClick"];
4526
+ const _hoisted_8$2 = ["aria-label", "onClick"];
4527
4527
  const _hoisted_9$1 = {
4528
4528
  key: 1,
4529
4529
  class: "vv-select__input-after"
@@ -4945,7 +4945,7 @@ const _sfc_main$d = /* @__PURE__ */ defineComponent({
4945
4945
  onClick: withModifiers(($event) => onInput(option), ["stop"])
4946
4946
  }, [
4947
4947
  createVNode(_sfc_main$u, { name: "close" })
4948
- ], 8, _hoisted_8$3)) : createCommentVNode("v-if", true)
4948
+ ], 8, _hoisted_8$2)) : createCommentVNode("v-if", true)
4949
4949
  ]),
4950
4950
  _: 2
4951
4951
  /* DYNAMIC */
@@ -5584,7 +5584,7 @@ const _hoisted_4$2 = { class: "vv-input-file__wrapper" };
5584
5584
  const _hoisted_5$2 = ["id", "readonly", "disabled", "placeholder", "aria-describedby", "aria-invalid", "aria-errormessage", "multiple", "accept", "capture", "name"];
5585
5585
  const _hoisted_6$2 = ["value"];
5586
5586
  const _hoisted_7$2 = ["onClick"];
5587
- const _hoisted_8$2 = ["title", "onClick"];
5587
+ const _hoisted_8$1 = ["title", "onClick"];
5588
5588
  const _hoisted_9 = { class: "vv-input-file__item-name" };
5589
5589
  const _hoisted_10 = { class: "vv-input-file__item-info" };
5590
5590
  const _hoisted_11 = ["title", "disabled", "onClick"];
@@ -5941,7 +5941,7 @@ const _sfc_main$a = /* @__PURE__ */ defineComponent({
5941
5941
  16
5942
5942
  /* FULL_PROPS */
5943
5943
  )
5944
- ], 8, _hoisted_8$2)) : createCommentVNode("v-if", true),
5944
+ ], 8, _hoisted_8$1)) : createCommentVNode("v-if", true),
5945
5945
  createElementVNode(
5946
5946
  "div",
5947
5947
  _hoisted_9,
@@ -6525,7 +6525,7 @@ const _hoisted_6$1 = {
6525
6525
  class: "vv-input-text__limit"
6526
6526
  };
6527
6527
  const _hoisted_7$1 = { class: "flex-1" };
6528
- const _hoisted_8$1 = ["title", "onClick"];
6528
+ const _hoisted_8 = ["title", "onClick"];
6529
6529
  const __default__$8 = {
6530
6530
  name: "VvInputText"
6531
6531
  };
@@ -7132,7 +7132,7 @@ const _sfc_main$9 = /* @__PURE__ */ defineComponent({
7132
7132
  16
7133
7133
  /* FULL_PROPS */
7134
7134
  )
7135
- ], 8, _hoisted_8$1)) : createCommentVNode("v-if", true)
7135
+ ], 8, _hoisted_8)) : createCommentVNode("v-if", true)
7136
7136
  ]),
7137
7137
  _: 2
7138
7138
  /* DYNAMIC */
@@ -7794,19 +7794,18 @@ const VvTextareaProps = {
7794
7794
  resizable: Boolean
7795
7795
  };
7796
7796
  const _hoisted_1 = ["for"];
7797
- const _hoisted_2 = { key: 0 };
7798
- const _hoisted_3 = { class: "vv-textarea__wrapper" };
7799
- const _hoisted_4 = {
7797
+ const _hoisted_2 = { class: "vv-textarea__wrapper" };
7798
+ const _hoisted_3 = {
7800
7799
  key: 0,
7801
7800
  class: "vv-textarea__input-before"
7802
7801
  };
7803
- const _hoisted_5 = { class: "vv-textarea__inner" };
7804
- const _hoisted_6 = ["id"];
7805
- const _hoisted_7 = {
7802
+ const _hoisted_4 = { class: "vv-textarea__inner" };
7803
+ const _hoisted_5 = ["id"];
7804
+ const _hoisted_6 = {
7806
7805
  key: 1,
7807
7806
  class: "vv-textarea__input-after"
7808
7807
  };
7809
- const _hoisted_8 = {
7808
+ const _hoisted_7 = {
7810
7809
  key: 2,
7811
7810
  class: "vv-textarea__limit"
7812
7811
  };
@@ -7941,19 +7940,12 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
7941
7940
  key: 0,
7942
7941
  for: unref(hasId),
7943
7942
  class: "vv-textarea__label"
7944
- }, [
7945
- createTextVNode(
7946
- toDisplayString(unref(label)) + " ",
7947
- 1
7948
- /* TEXT */
7949
- ),
7950
- _ctx.required ? (openBlock(), createElementBlock("span", _hoisted_2, "*")) : createCommentVNode("v-if", true)
7951
- ], 8, _hoisted_1)) : createCommentVNode("v-if", true),
7952
- createElementVNode("div", _hoisted_3, [
7953
- _ctx.$slots.before ? (openBlock(), createElementBlock("div", _hoisted_4, [
7943
+ }, toDisplayString(unref(label)), 9, _hoisted_1)) : createCommentVNode("v-if", true),
7944
+ createElementVNode("div", _hoisted_2, [
7945
+ _ctx.$slots.before ? (openBlock(), createElementBlock("div", _hoisted_3, [
7954
7946
  renderSlot(_ctx.$slots, "before", normalizeProps(guardReactiveProps(unref(slotProps))))
7955
7947
  ])) : createCommentVNode("v-if", true),
7956
- createElementVNode("div", _hoisted_5, [
7948
+ createElementVNode("div", _hoisted_4, [
7957
7949
  unref(hasIconBefore) ? (openBlock(), createBlock(
7958
7950
  _sfc_main$u,
7959
7951
  mergeProps({ key: 0 }, unref(hasIconBefore), { class: "vv-textarea__icon" }),
@@ -7968,7 +7960,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
7968
7960
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(localModelValue) ? localModelValue.value = $event : null)
7969
7961
  }, unref(hasAttrs), {
7970
7962
  onKeyup: _cache[1] || (_cache[1] = ($event) => emit("keyup", $event))
7971
- }), null, 16, _hoisted_6), [
7963
+ }), null, 16, _hoisted_5), [
7972
7964
  [vModelText, unref(localModelValue)]
7973
7965
  ]),
7974
7966
  unref(hasIconAfter) ? (openBlock(), createBlock(
@@ -7979,10 +7971,10 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
7979
7971
  /* FULL_PROPS */
7980
7972
  )) : createCommentVNode("v-if", true)
7981
7973
  ]),
7982
- _ctx.$slots.after ? (openBlock(), createElementBlock("div", _hoisted_7, [
7974
+ _ctx.$slots.after ? (openBlock(), createElementBlock("div", _hoisted_6, [
7983
7975
  renderSlot(_ctx.$slots, "after", normalizeProps(guardReactiveProps(unref(slotProps))))
7984
7976
  ])) : createCommentVNode("v-if", true),
7985
- unref(count) ? (openBlock(), createElementBlock("span", _hoisted_8, [
7977
+ unref(count) ? (openBlock(), createElementBlock("span", _hoisted_7, [
7986
7978
  renderSlot(_ctx.$slots, "count", normalizeProps(guardReactiveProps(unref(slotProps))), () => [
7987
7979
  createTextVNode(
7988
7980
  toDisplayString(unref(countFormatted)),