@volverjs/ui-vue 0.0.10 → 0.0.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/icons.js +1 -93
- package/dist/components/VvAccordion/VvAccordion.es.js +1 -366
- package/dist/components/VvAccordion/VvAccordion.vue.d.ts +2 -1
- package/dist/components/VvAccordionGroup/VvAccordionGroup.es.js +2 -702
- package/dist/components/VvAccordionGroup/VvAccordionGroup.vue.d.ts +3 -2
- package/dist/components/VvAction/VvAction.es.js +1 -302
- package/dist/components/VvAction/VvAction.vue.d.ts +2 -1
- package/dist/components/VvAlert/VvAlert.es.js +1 -527
- package/dist/components/VvAlert/VvAlert.umd.js +1 -1
- package/dist/components/VvAlert/VvAlert.vue.d.ts +2 -1
- package/dist/components/VvAlertGroup/VvAlertGroup.es.js +1 -730
- package/dist/components/VvAlertGroup/VvAlertGroup.umd.js +1 -1
- package/dist/components/VvAlertGroup/VvAlertGroup.vue.d.ts +2 -1
- package/dist/components/VvAvatar/VvAvatar.es.js +1 -132
- package/dist/components/VvAvatar/VvAvatar.vue.d.ts +2 -1
- package/dist/components/VvAvatarGroup/VvAvatarGroup.es.js +1 -250
- package/dist/components/VvAvatarGroup/VvAvatarGroup.vue.d.ts +2 -1
- package/dist/components/VvBadge/VvBadge.es.js +1 -131
- package/dist/components/VvBadge/VvBadge.vue.d.ts +2 -1
- package/dist/components/VvBreadcrumb/VvBreadcrumb.es.js +1 -410
- package/dist/components/VvBreadcrumb/VvBreadcrumb.vue.d.ts +2 -1
- package/dist/components/VvButton/VvButton.es.js +1 -882
- package/dist/components/VvButton/VvButton.umd.js +1 -1
- package/dist/components/VvButton/VvButton.vue.d.ts +2 -1
- package/dist/components/VvButtonGroup/VvButtonGroup.es.js +1 -214
- package/dist/components/VvButtonGroup/VvButtonGroup.vue.d.ts +2 -1
- package/dist/components/VvCard/VvCard.es.js +1 -152
- package/dist/components/VvCard/VvCard.vue.d.ts +2 -1
- package/dist/components/VvCheckbox/VvCheckbox.es.js +1 -741
- package/dist/components/VvCheckbox/VvCheckbox.vue.d.ts +3 -2
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.es.js +1 -981
- package/dist/components/VvCheckboxGroup/VvCheckboxGroup.vue.d.ts +2 -1
- package/dist/components/VvCombobox/VvCombobox.es.js +1 -3463
- package/dist/components/VvCombobox/VvCombobox.umd.js +1 -1
- package/dist/components/VvCombobox/VvCombobox.vue.d.ts +263 -317
- package/dist/components/VvDialog/VvDialog.es.js +1 -317
- package/dist/components/VvDialog/VvDialog.vue.d.ts +2 -1
- package/dist/components/VvDropdown/VvDropdown.es.js +1 -750
- package/dist/components/VvDropdown/VvDropdown.vue.d.ts +2 -1
- package/dist/components/VvDropdown/VvDropdownAction.vue.d.ts +5 -4
- package/dist/components/VvDropdown/VvDropdownItem.vue.d.ts +2 -1
- package/dist/components/VvDropdown/VvDropdownOptgroup.vue.d.ts +10 -2
- package/dist/components/VvDropdown/VvDropdownOption.vue.d.ts +2 -1
- package/dist/components/VvDropdownAction/VvDropdownAction.es.js +1 -448
- package/dist/components/VvDropdownItem/VvDropdownItem.es.js +1 -149
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.es.js +1 -104
- package/dist/components/VvDropdownOptgroup/VvDropdownOptgroup.umd.js +1 -1
- package/dist/components/VvDropdownOption/VvDropdownOption.es.js +1 -281
- package/dist/components/VvIcon/VvIcon.es.js +1 -143
- package/dist/components/VvIcon/VvIcon.umd.js +1 -1
- package/dist/components/VvIcon/VvIcon.vue.d.ts +2 -1
- package/dist/components/VvInputFile/VvInputFile.es.js +1 -1704
- package/dist/components/VvInputFile/VvInputFile.umd.js +1 -1
- package/dist/components/VvInputFile/VvInputFile.vue.d.ts +2 -1
- package/dist/components/VvInputText/VvInputText.es.js +4 -2790
- package/dist/components/VvInputText/VvInputText.umd.js +1 -1
- package/dist/components/VvInputText/VvInputText.vue.d.ts +2 -1
- package/dist/components/VvNav/VvNav.es.js +1 -438
- package/dist/components/VvNav/VvNav.vue.d.ts +2 -1
- package/dist/components/VvNav/VvNavItem.vue.d.ts +2 -1
- package/dist/components/VvNav/VvNavSeparator.vue.d.ts +2 -1
- package/dist/components/VvNavItem/VvNavItem.es.js +1 -337
- package/dist/components/VvNavSeparator/VvNavSeparator.es.js +1 -24
- package/dist/components/VvProgress/VvProgress.es.js +1 -163
- package/dist/components/VvProgress/VvProgress.vue.d.ts +2 -1
- package/dist/components/VvRadio/VvRadio.es.js +1 -661
- package/dist/components/VvRadio/VvRadio.vue.d.ts +3 -2
- package/dist/components/VvRadioGroup/VvRadioGroup.es.js +1 -901
- package/dist/components/VvRadioGroup/VvRadioGroup.vue.d.ts +2 -1
- package/dist/components/VvSelect/VvSelect.es.js +1 -1103
- package/dist/components/VvSelect/VvSelect.umd.js +1 -1
- package/dist/components/VvSelect/VvSelect.vue.d.ts +130 -71
- package/dist/components/VvTab/VvTab.es.js +1 -558
- package/dist/components/VvTab/VvTab.vue.d.ts +2 -1
- package/dist/components/VvTextarea/VvTextarea.es.js +2 -1989
- package/dist/components/VvTextarea/VvTextarea.umd.js +1 -1
- package/dist/components/VvTextarea/VvTextarea.vue.d.ts +2 -1
- package/dist/components/VvTooltip/VvTooltip.es.js +1 -154
- package/dist/components/VvTooltip/VvTooltip.vue.d.ts +2 -1
- package/dist/components/index.es.js +6 -8558
- package/dist/components/index.umd.js +1 -1
- package/dist/composables/index.es.js +2 -247
- package/dist/composables/index.umd.js +1 -1
- package/dist/directives/index.es.js +2 -311
- package/dist/directives/index.umd.js +1 -1
- package/dist/directives/v-contextmenu.es.js +2 -142
- package/dist/directives/v-contextmenu.umd.js +1 -1
- package/dist/directives/v-tooltip.es.js +1 -172
- package/dist/icons.es.js +1 -39
- package/dist/icons.umd.js +1 -1
- package/dist/index.es.js +1 -219
- package/dist/resolvers/unplugin.es.js +1 -187
- package/dist/stories/AccordionGroup/AccordionGroupSlots.stories.d.ts +14 -14
- package/package.json +37 -37
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("@floating-ui/vue"),require("@vueuse/core"),require("mitt"),require("@iconify/vue")):"function"==typeof define&&define.amd?define(["vue","@floating-ui/vue","@vueuse/core","mitt","@iconify/vue"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvTextarea=t(e.vue,e.vue$1,e.core,e.mitt,e.vue$2)}(this,function(e,t,o,a,l){"use strict";const n={prefix:"normal"};var r=(e=>(e.local="local",e.session="session",e))(r||{}),i=(e=>(e.absolute="absolute",e.fixed="fixed",e))(i||{}),u=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(u||{}),s=(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(s||{}),d=(e=>(e.before="before",e.after="after",e))(d||{}),c=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(c||{}),f=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(f||{}),v=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(v||{}),p=(e=>(e.listbox="listbox",e.menu="menu",e))(p||{}),m=(e=>(e.option="option",e.presentation="presentation",e))(m||{});const g=Symbol.for("volver"),h=Symbol.for("dropdownTrigger"),b=Symbol.for("dropdownItem"),y=Symbol.for("dropdownAction"),S={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},x={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},w={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},k={disabled:{type:Boolean,default:!1}},L={required:{type:Boolean,default:!1}},B={selected:{type:Boolean,default:!1}},$={label:{type:[String,Number],default:void 0}},V={readonly:{type:Boolean,default:!1}},E={modifiers:{type:[String,Array],default:void 0}},O={hintLabel:{type:String,default:""}},P={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},C={debounce:{type:[Number,String],default:void 0}},N={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:d.before,validation:e=>Object.values(d).includes(e)}},_={tabindex:{type:[String,Number],default:0}},z={floating:{type:Boolean,default:!1}},R={unselectable:{type:Boolean,default:!0}},F={id:[String,Number]},I={placement:{type:String,default:u.bottom,validator:e=>Object.values(u).includes(e)||Object.values(s).includes(e)},strategy:{type:String,default:void 0,validator:e=>Object.values(i).includes(e)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},j={...{...F,name:{type:String,required:!0}},...{autofocus:{type:Boolean,default:!1}},...{autocomplete:{type:String,default:"off"}},..._,...k,...V,...S,...x,...O,...w,...E,...P,...C,...N,...z,...$,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...L};c.button,f.button;const A={...j,...{storageType:{type:String,default:r.local,validator:e=>Object.values(r).includes(e)},storageKey:String},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"},iconRemoveSuggestion:{type:[String,Object],default:"trash"},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},maxSuggestions:{type:Number,default:5},selectOnFocus:{type:Boolean,default:!1},resizable:Boolean};function H(t){return null==(o=e.unref(t))||""===o||Array.isArray(o)&&0===o.length||!(o instanceof Date)&&"object"==typeof o&&0===Object.keys(o).length;var o}function T(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).join(" "):e}const D={...F,...I,...E,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:p.menu,validator:e=>Object.values(p).includes(e)}},q={focusOnHover:{type:Boolean,default:!1}},M={...k,...B,...R,...E,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};function W(t){return e.computed(()=>String(t?.value||e.useId()))}function K(t,o,a){return e.computed(()=>{const l={[t]:!0},n="string"==typeof o?.value?o.value.split(" "):o?.value;return n&&Array.isArray(n)&&n.forEach(e=>{e&&(l[`${t}--${e}`]=!0)}),a&&Object.keys(a.value).forEach(o=>{l[`${t}--${o}`]=e.unref(a.value[o])}),l})}const J=["id","tabindex","role","aria-labelledby"],U=e.defineComponent({name:"VvDropdown",inheritAttrs:!1,props:D,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(l,{expose:n,emit:r}){const s=l,d=r,{id:c}=e.toRefs(s),f=W(c),v=e.useAttrs(),g=e.ref("auto"),y=e.ref("auto"),S=e.ref(),x=e.ref(),w=e.ref(),k=e.ref(),L=e.computed({get:()=>s.reference??S.value,set:e=>{S.value=e}}),B=e.ref(!1);e.onMounted(()=>{o.useMutationObserver(x.value,()=>{B.value="true"===window.getComputedStyle(x.value).getPropertyValue("--dropdown-custom-position")?.trim()},{attributeFilter:["style"],window:window})});const $=e.computed(()=>{const e=[];if(s.autoPlacement?"boolean"==typeof s.autoPlacement?e.push(t.autoPlacement()):e.push(t.autoPlacement(s.autoPlacement)):s.flip&&("boolean"==typeof s.flip?e.push(t.flip({fallbackStrategy:"initialPlacement"})):e.push(t.flip(s.flip))),s.shift&&("boolean"==typeof s.shift?e.push(t.shift()):e.push(t.shift(s.shift))),s.size){const o=({availableWidth:e,availableHeight:t})=>{g.value=`${e}px`,y.value=`${t}px`};"boolean"==typeof s.size?e.push(t.size({apply:o})):e.push(t.size({...s.size,apply:o}))}return s.offset&&(e.push(t.offset(Number(s.offset))),["string","number"].includes(typeof s.offset)?e.push(t.offset(Number(s.offset))):e.push(t.offset(s.offset))),s.arrow&&e.push(t.arrow({element:w})),e}),{x:V,y:E,middlewareData:O,placement:P,strategy:C}=t.useFloating(L,x,{whileElementsMounted:(...e)=>t.autoUpdate(...e,{animationFrame:s.strategy===i.fixed}),placement:e.computed(()=>s.placement),strategy:e.computed(()=>s.strategy),middleware:$}),N=e.computed(()=>{if(B.value)return;const e=s.triggerWidth&&L.value?`${L.value?.offsetWidth}px`:void 0;return{position:C.value,top:`${E.value??0}px`,left:`${V.value??0}px`,maxWidth:e?void 0:g.value,maxHeight:y.value,width:e}}),_=e.computed(()=>P.value.split("-")[0]),z=e.computed(()=>{if(B.value)return;const e={[u.top]:u.bottom,[u.right]:u.left,[u.bottom]:u.top,[u.left]:u.right}[_.value];return{left:void 0!==O.value.arrow?.x?`${O.value.arrow?.x}px`:void 0,top:void 0!==O.value.arrow?.y?`${O.value.arrow?.y}px`:void 0,[e]:-(w.value?.offsetWidth??0)/2+"px"}}),R=o.useVModel(s,"modelValue",d),F=e.ref(!1),I=e.computed({get:()=>R.value??F.value,set:e=>{void 0!==R.value?R.value=e:F.value=e}});function j(){I.value=!0}function A(){I.value=!1}function H(){I.value=!I.value}function T(e){L.value=e}o.onClickOutside(x,()=>{!s.keepOpen&&I.value&&(I.value=!1)},{ignore:[L]});const D=e.computed(()=>L.value?.getAttribute?.("id")??void 0),q=e.computed(()=>({"aria-controls":f.value,"aria-haspopup":!0,"aria-expanded":I.value})),{component:M,bus:U}=function({reference:t,id:o,expanded:l,aria:n}){const r=a(),i=e.defineComponent({name:"VvDropdownTriggerProvider",setup(){e.provide(h,{reference:t,id:o,expanded:l,aria:n,bus:r})},render(){return e.h(e.Fragment,{},this.$slots.default?.())}});return{bus:r,component:i}}({reference:L,id:f,expanded:I,aria:q});U.on("click",H);const{role:G,modifiers:Q}=e.toRefs(s),X=K("vv-dropdown",Q,e.computed(()=>({arrow:s.arrow}))),{focused:Y}=o.useFocusWithin(x);function Z(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden")):[]}function ee(){e.nextTick(()=>{const e=Z(x.value);e.length>0&&e[0].focus({preventScroll:!0})})}function te(){e.nextTick(()=>{if(Y.value){const e=Z(x.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus({preventScroll:!0}):e[0].focus({preventScroll:!0})}})}function oe(){e.nextTick(()=>{if(Y.value){const e=Z(x.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus({preventScroll:!0}):e[e.length-1].focus({preventScroll:!0})}})}e.watch(I,e=>{e&&s.autofocusFirst&&ee()}),n({toggle:H,show:j,hide:A,init:T,focusFirst:ee,focusFirstListElement:function(){e.nextTick(()=>{const e=Z(k.value);e.length>0&&e[0].focus({preventScroll:!0})})},focusNext:te,focusPrev:oe,customPosition:B});const ae=o.useElementHover(x),{itemRole:le}=function({role:t,...o}){const a=e.computed(()=>t.value===p.listbox?m.option:m.presentation);return e.provide(b,{role:a,...o}),{itemRole:a}}({role:G,expanded:I,focused:Y,hovered:ae});o.onKeyStroke("Escape",e=>{I.value&&(e.preventDefault(),A())}),o.onKeyStroke("ArrowDown",e=>{I.value&&Y.value&&(e.preventDefault(),te())}),o.onKeyStroke("ArrowUp",e=>{I.value&&Y.value&&(e.preventDefault(),oe())}),o.onKeyStroke([" ","Enter"],e=>{const t=e.target;I.value&&Y.value&&t&&t?.click()});const ne={"before-enter":()=>{d(I.value?"beforeExpand":"beforeCollapse"),d("beforeEnter")},"after-leave":()=>{d(I.value?"afterExpand":"afterCollapse"),d("afterLeave")},enter:()=>{d("enter")},"after-enter":()=>{d("afterEnter")},"enter-cancelled":()=>{d("enterCancelled")},"before-leave":()=>{d("beforeLeave")},leave:()=>{d("leave")},"leave-cancelled":()=>{d("leaveCancelled")}};return(t,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(M),null,{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default",e.normalizeProps(e.guardReactiveProps({init:T,show:j,hide:A,toggle:H,expanded:e.unref(I),aria:e.unref(q)})))]),_:3}),e.createVNode(e.Transition,e.mergeProps({name:t.transitionName},e.toHandlers(ne),{persisted:""}),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"floatingEl",ref:x,style:e.normalizeStyle(e.unref(N)),class:e.normalizeClass(e.unref(X))},[s.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowEl",ref:w,style:e.normalizeStyle(e.unref(z)),class:"vv-dropdown__arrow"},null,4)):e.createCommentVNode("v-if",!0),e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(I)}))),e.createElementVNode("div",e.mergeProps(e.unref(v),{id:e.unref(f),ref_key:"listEl",ref:k,tabindex:e.unref(I)?void 0:-1,role:e.unref(G),"aria-labelledby":e.unref(D),class:"vv-dropdown__list"}),[e.renderSlot(t.$slots,"items",e.normalizeProps(e.guardReactiveProps({role:e.unref(le)})))],16,J),e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(I)})))],6),[[e.vShow,e.unref(I)]])]),_:3},16,["name"])],64))}});const G=e.defineComponent({name:"VvDropdownItem",props:q,setup(t){const a=t,{role:l,expanded:n}=e.inject(b,{}),r=e.ref(null);!function({expanded:t}){e.provide(y,{role:e.ref(v.menuitem),expanded:t})}({expanded:n});const i=o.useElementHover(r),{focused:u}=o.useFocus(r),{focused:s}=o.useFocusWithin(r);return e.watch(i,e=>{e&&a.focusOnHover&&(u.value=!0)}),(t,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({role:e.unref(l)},{ref_key:"element",ref:r,class:["vv-dropdown__item",{"focus-visible":e.unref(u)||e.unref(s)}]}),[e.renderSlot(t.$slots,"default")],16))}}),Q=["title"],X=e.defineComponent({name:"VvDropdownOption",props:M,setup(t){const o=t,{modifiers:a}=e.toRefs(o),l=K("vv-dropdown-option",a,e.computed(()=>({disabled:o.disabled,selected:o.selected,unselectable:o.unselectable&&o.selected}))),n=e.computed(()=>o.selected?o.unselectable?o.deselectHintLabel:o.selectedHintLabel:o.disabled?"":o.selectHintLabel);return(t,o)=>(e.openBlock(),e.createBlock(G,{class:e.normalizeClass(e.unref(l)),tabindex:t.disabled?-1:0,"aria-selected":t.selected,"aria-disabled":t.disabled,"focus-on-hover":t.focusOnHover},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default"),e.createElementVNode("span",{class:"vv-dropdown-option__hint",title:e.unref(n)},[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps({disabled:t.disabled,selected:t.selected,unselectable:t.unselectable})),()=>[e.createTextVNode(e.toDisplayString(e.unref(n)),1)])],8,Q)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}});function Y(){return e.inject(g,void 0)}const Z=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:{}},n),setup(t){const o=t,a=e.computed(()=>"string"==typeof o.rotate?Number.parseFloat(o.rotate):o.rotate),n=e.ref(!0),r=Y(),{modifiers:i}=e.toRefs(o),u=K("vv-icon",i),s=e.computed(()=>o.provider||r?.iconsProvider),d=e.computed(()=>{const e=o.name??"",t=`@${s.value}:${o.prefix}:${e}`;if(l.iconLoaded(t))return t;const a=r?.iconsCollections.find(t=>{const o=`@${s.value}:${t.prefix}:${e}`;return l.iconLoaded(o)});return a?`@${s.value}:${a.prefix}:${e}`:e});function c(e){const t=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=t?.innerHTML.trim()||"";t&&a&&l.addIcon(`@${s.value}:${o.prefix}:${o.name}`,{body:a,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return r&&o.src&&!l.iconLoaded(`@${s.value}:${o.prefix}:${o.name}`)&&(n.value=!1,r.fetchIcon(o.src).then(e=>{e&&(c(e),n.value=!0)}).catch(e=>{throw new Error(`Error during fetch icon: ${e?.message}`)})),o.svg&&c(o.svg),(t,o)=>e.unref(n)?(e.openBlock(),e.createBlock(e.unref(l.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:t.inline,width:t.width,height:t.height,horizontalFlip:t.horizontalFlip,verticalFlip:t.verticalFlip,flip:t.flip,rotate:e.unref(a),color:t.color,icon:e.unref(d)},{onLoad:t.onLoad}),null,16,["class","onLoad"])):e.createCommentVNode("v-if",!0)}});function ee(t,o){const a=e.computed(()=>"string"==typeof t?.value?{name:t?.value}:t?.value),l=e.computed(()=>o?.value===d.before?a.value:void 0),n=e.computed(()=>o?.value===d.after?a.value:void 0),r=e.computed(()=>o?.value===u.left?a.value:void 0),i=e.computed(()=>o?.value===u.right?a.value:void 0),s=e.computed(()=>o?.value===u.top?a.value:void 0),c=e.computed(()=>o?.value===u.bottom?a.value:void 0);return{hasIcon:a,hasIconLeft:r,hasIconRight:i,hasIconTop:s,hasIconBottom:c,hasIconBefore:l,hasIconAfter:n}}const te=["for"],oe={key:0,class:"vv-textarea__input-before"},ae={class:"vv-textarea__inner"},le=["id"],ne={key:1,class:"vv-textarea__input-after"},re={key:2,class:"vv-textarea__limit"},ie={class:"flex-1"},ue=["title","onClick"];return e.defineComponent({name:"VvTextarea",props:A,emits:["update:modelValue","focus","blur","keyup","suggestion:selected","suggestion:removed"],setup(t,{emit:a}){const l=t,n=a,i=e.useSlots(),u=Y(),s=function(t,o,a){const l=Y(),n=e.computed(()=>{if(l&&l.defaults.value?.[t])return l.defaults.value[t]});return e.computed(()=>{if(void 0===n.value)return a;const e=n.value,t=o,l=a;return Object.keys(t).reduce((o,a)=>{const n=l[a];if(o[a]=n,a in e){if(Array.isArray(t[a])){const l=t[a];l.length&&l[0]===n&&(o[a]=e[a])}if("function"==typeof t[a]&&(0,t[a])()===n&&(o[a]=e[a]),"object"==typeof t[a]){let l=t[a].default;"function"==typeof l&&(l=l()),"object"==typeof l?JSON.stringify(l)===JSON.stringify(n)&&(o[a]=e[a]):l===n&&(o[a]=e[a])}}return o},{})})}("VvTextarea",A,l),d=e.ref(),c=e.ref(),f=e.ref(),{id:v,icon:p,iconPosition:m,iconRemoveSuggestion:g,labelRemoveSuggestion:h,label:b,modelValue:y,count:S,valid:x,invalid:w,loading:k,modifiers:L,debounce:B,minlength:$,maxlength:V,storageType:E}=e.toRefs(l),O=W(v),P=e.computed(()=>`${O.value}-hint`),C=e.computed(()=>l.floating&&H(l.placeholder)?" ":l.placeholder),N=function(t,o,a=0,{getter:l=e=>e,setter:n=e=>e}={}){let r;return"string"==typeof a&&(a=Number.parseInt(a)),e.computed({get:()=>l(t?.value),set:e=>{r&&clearTimeout(r),r=setTimeout(()=>{o("update:modelValue",n(e))},a)}})}(y,n,B?.value),{hasIconBefore:_,hasIconAfter:z}=ee(p,m),{hasIcon:R}=ee(g),{focused:F}=function(t,a){const{focused:l}=o.useFocus(t);return e.watch(l,o=>{a(o?"focus":"blur",e.unref(t))}),{focused:l}}(d,n),I=e.computed(()=>F.value&&!l.disabled&&!l.readonly);e.watch(I,e=>{if(e&&s.value.selectOnFocus&&d.value&&d.value.select(),e&&se.value?.size)f.value?.show();else if(J.value&&se.value){const e=l.maxSuggestions;se.value.size>=e&&!se.value.has(N.value)&&(se.value=new Set([...se.value].slice(se.value.size-e+1))),se.value.add(N.value)}});const j=o.useElementVisibility(d);e.watch(j,e=>{e&&l.autofocus&&(F.value=!0)});const{formatted:D}=function(t,o){const a=e.computed(()=>(e.unref(t)??"").length),l=e.computed(()=>void 0!==o?.lowerLimit&&a.value<o?.lowerLimit?a.value-o.lowerLimit:void 0!==o?.upperLimit&&a.value<o?.upperLimit?o.upperLimit-a.value:0),n=e.computed(()=>{if(!1===o?.mode)return"";if("limit"===o?.mode&&o?.upperLimit)return`${a.value} / ${o.lowerLimit?`${o.lowerLimit}-`:""}${o.upperLimit}`;if("countdown"===o?.mode){if(0===l.value)return;return l}return a.value});return{length:a,gap:l,formatted:n}}(N,{mode:S?.value,upperLimit:Number(V?.value),lowerLimit:Number($?.value)}),q=e.computed(()=>!l.disabled&&!l.readonly),M=e.computed(()=>q.value?l.tabindex:-1),J=e.computed(()=>!H(y)),G=e.computed(()=>!0===l.invalid||!0!==l.valid&&void 0),Q=e.computed(()=>l.storageKey??(u?.experimentalFeatures.forceInputSuggestions?l.name:void 0)),se=function(t,a=r.local,l){const n=e.ref();let i;return l&&(n.value=l),e.onMounted(()=>{t&&e.watch(t,(t,l)=>{const u=e.unref(a)===r.session?sessionStorage:localStorage;if(l&&l!==t&&u.removeItem(l),t)return i=o.useStorage(t,i?.value??n.value,u),void(i.value&&(n.value=i.value));i=void 0},{immediate:!0}),e.isRef(a)&&e.watch(a,(e,a)=>{if(t?.value){if(e){const a=e===r.session?sessionStorage:localStorage;i=o.useStorage(t.value,i?.value??n.value,a)}a&&a!==e&&(a===r.session?sessionStorage:localStorage).removeItem(t.value)}})}),e.watch(n,e=>{i&&(i.value=e)},{deep:!0,immediate:!0}),n}(Q,E,new Set),de=e.computed(()=>se.value?[...se.value].filter(e=>H(N.value)||`${e}`.toLowerCase().includes(`${N.value}`.toLowerCase())&&e!==N.value).reverse():[]),ce=e.computed(()=>Q?.value&&se.value&&se.value.size>0);const{HintSlot:fe,hasHintLabelOrSlot:ve,hasInvalidLabelOrSlot:pe,hintSlotScope:me}=function(t,o){const a=e.computed(()=>e.isRef(t)?t.value:t),l=e.computed(()=>T(a.value.invalidLabel)),n=e.computed(()=>T(a.value.validLabel)),r=e.computed(()=>a.value.loadingLabel),i=e.computed(()=>a.value.hintLabel),u=e.computed(()=>Boolean(a.value.loading&&(o.loading||r.value))),s=e.computed(()=>!u.value&&Boolean(a.value.invalid&&(o.invalid||l.value))),d=e.computed(()=>!u.value&&!s.value&&Boolean(a.value.valid&&(o.valid||n.value))),c=e.computed(()=>!u.value&&!s.value&&!d.value&&Boolean(o.hint||i.value)),f=e.computed(()=>s.value||d.value||u.value||c.value),v=e.computed(()=>({modelValue:a.value.modelValue,valid:a.value.valid,invalid:a.value.invalid,loading:a.value.loading})),p=e.defineComponent({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:f,invalidLabel:l,validLabel:n,loadingLabel:r,hintLabel:i,hasInvalidLabelOrSlot:s,hasValidLabelOrSlot:d,hasLoadingLabelOrSlot:u,hasHintLabelOrSlot:c}),render(){if(this.isVisible){let t;return this.hasInvalidLabelOrSlot&&(t="alert"),this.hasValidLabelOrSlot&&(t="status"),this.hasLoadingLabelOrSlot?e.h(this.tag,{role:t},this.$slots.loading?.()??this.loadingLabel):this.hasInvalidLabelOrSlot?e.h(this.tag,{role:t},this.$slots.invalid?.()??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?e.h(this.tag,{role:t},this.$slots.valid?.()??this.validLabel):e.h(this.tag,{role:t},this.$slots.hint?.()??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:s,hasHintLabelOrSlot:c,hasValidLabelOrSlot:d,hasLoadingLabelOrSlot:u,hintSlotScope:v,HintSlot:p}}(s,i),ge=K("vv-textarea",L,e.computed(()=>({valid:x.value,invalid:w.value,loading:k.value,disabled:l.disabled,readonly:l.readonly,required:l.required,"icon-before":void 0!==_.value,"icon-after":void 0!==z.value,floating:l.floating&&!H(l.label),dirty:J.value,focus:F.value,resizable:l.resizable}))),he=e.computed(()=>({name:l.name,placeholder:C.value,tabindex:M.value,disabled:l.disabled,readonly:l.readonly,required:l.required,autocomplete:l.autocomplete,minlength:l.minlength,maxlength:l.maxlength,cols:l.cols,rows:l.rows,wrap:l.wrap,spellcheck:l.spellcheck,"aria-invalid":G.value,"aria-describedby":ve.value?P.value:void 0,"aria-errormessage":pe.value?P.value:void 0})),be=e.computed(()=>({valid:l.valid,invalid:l.invalid,modelValue:l.modelValue,hintLabel:l.hintLabel,maxlength:l.maxlength,minlength:l.minlength,clear:ye}));function ye(){N.value=void 0}return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(ge))},[e.unref(b)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(O),class:"vv-textarea__label"},e.toDisplayString(e.unref(b)),9,te)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{ref_key:"wrapperEl",ref:c,class:"vv-textarea__wrapper"},[t.$slots.before?(e.openBlock(),e.createElementBlock("div",oe,[e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(be))))])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ae,[e.unref(_)?(e.openBlock(),e.createBlock(Z,e.mergeProps({key:0},e.unref(_),{class:"vv-textarea__icon"}),null,16)):e.createCommentVNode("v-if",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(O),ref_key:"textareaEl",ref:d,"onUpdate:modelValue":o[0]||(o[0]=t=>e.isRef(N)?N.value=t:null)},e.unref(he),{onKeyup:o[1]||(o[1]=e=>n("keyup",e))}),null,16,le),[[e.vModelText,e.unref(N)]]),e.unref(z)?(e.openBlock(),e.createBlock(Z,e.mergeProps({key:1},e.unref(z),{class:"vv-textarea__icon vv-textarea__icon-after"}),null,16)):e.createCommentVNode("v-if",!0)]),t.$slots.after?(e.openBlock(),e.createElementBlock("div",ne,[e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(be))))])):e.createCommentVNode("v-if",!0),e.unref(S)?(e.openBlock(),e.createElementBlock("span",re,[e.renderSlot(t.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(be))),()=>[e.createTextVNode(e.toDisplayString(e.unref(D)),1)])])):e.createCommentVNode("v-if",!0)],512),e.createVNode(e.unref(fe),{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(me))))]),key:"0"}:void 0,t.$slots.loading?{name:"loading",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"loading",e.normalizeProps(e.guardReactiveProps(e.unref(me))))]),key:"1"}:void 0,t.$slots.valid?{name:"valid",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"valid",e.normalizeProps(e.guardReactiveProps(e.unref(me))))]),key:"2"}:void 0,t.$slots.invalid?{name:"invalid",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"invalid",e.normalizeProps(e.guardReactiveProps(e.unref(me))))]),key:"3"}:void 0]),1032,["id"]),e.unref(ce)?(e.openBlock(),e.createBlock(U,{key:1,ref_key:"suggestionsDropdownEl",ref:f,reference:e.unref(c),"autofocus-first":!1,"trigger-width":!0},{items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(de),o=>(e.openBlock(),e.createBlock(X,{key:o,onClick:e.withModifiers(e=>{return t=o,N.value=t,f.value?.hide(),void n("suggestion:selected",t);var t},["stop"])},{default:e.withCtx(()=>[e.createElementVNode("div",ie,[e.renderSlot(t.$slots,"suggestion",e.mergeProps({ref_for:!0},{value:o}),()=>[e.createTextVNode(e.toDisplayString(o),1)])]),e.unref(se)&&e.unref(R)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",tabindex:"-1",class:"cursor-pointer",title:e.unref(h),onClick:e.withModifiers(e=>{return t=o,se.value?.delete(t),void n("suggestion:removed",t);var t},["stop"])},[e.createVNode(Z,e.mergeProps({ref_for:!0},e.unref(R)),null,16)],8,ue)):e.createCommentVNode("v-if",!0)]),_:2},1032,["onClick"]))),128))]),_:3},8,["reference"])):e.createCommentVNode("v-if",!0)],2))}})});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("vue"),require("@floating-ui/vue"),require("@vueuse/core"),require("mitt"),require("@iconify/vue")):"function"==typeof define&&define.amd?define(["vue","@floating-ui/vue","@vueuse/core","mitt","@iconify/vue"],t):(e="undefined"!=typeof globalThis?globalThis:e||self).VvTextarea=t(e.vue,e.vue$1,e.core,e.mitt,e.vue$2)}(this,function(e,t,o,a,l){"use strict";const n={prefix:"normal"};var r=(e=>(e.local="local",e.session="session",e))(r||{}),i=(e=>(e.absolute="absolute",e.fixed="fixed",e))(i||{}),u=(e=>(e.left="left",e.right="right",e.top="top",e.bottom="bottom",e))(u||{}),s=(e=>(e.topStart="top-start",e.topEnd="top-end",e.bottomStart="bottom-start",e.bottomEnd="bottom-end",e.leftStart="left-start",e.leftEnd="left-end",e.rightStart="right-start",e.rightEnd="right-end",e))(s||{}),d=(e=>(e.before="before",e.after="after",e))(d||{}),c=(e=>(e.button="button",e.submit="submit",e.reset="reset",e))(c||{}),f=(e=>(e.nuxtLink="nuxt-link",e.routerLink="router-link",e.a="a",e.button="button",e))(f||{}),v=(e=>(e.button="button",e.link="link",e.menuitem="menuitem",e))(v||{}),p=(e=>(e.listbox="listbox",e.menu="menu",e))(p||{}),m=(e=>(e.option="option",e.presentation="presentation",e))(m||{});const g=Symbol.for("volver"),h=Symbol.for("dropdownTrigger"),b=Symbol.for("dropdownItem"),y=Symbol.for("dropdownAction"),S={valid:{type:Boolean,default:!1},validLabel:{type:[String,Array],default:void 0}},x={invalid:{type:Boolean,default:!1},invalidLabel:{type:[String,Array],default:void 0}},w={loading:{type:Boolean,default:!1},loadingLabel:{type:String,default:"Loading..."}},k={disabled:{type:Boolean,default:!1}},L={required:{type:Boolean,default:!1}},B={selected:{type:Boolean,default:!1}},$={label:{type:[String,Number],default:void 0}},V={readonly:{type:Boolean,default:!1}},E={modifiers:{type:[String,Array],default:void 0}},O={hintLabel:{type:String,default:""}},P={count:{type:[Boolean,String],default:!1,validator:e=>[!0,!1,"limit","countdown"].includes(e)}},C={debounce:{type:[Number,String],default:void 0}},N={icon:{type:[String,Object],default:void 0},iconPosition:{type:String,default:d.before,validation:e=>Object.values(d).includes(e)}},_={tabindex:{type:[String,Number],default:0}},z={floating:{type:Boolean,default:!1}},R={unselectable:{type:Boolean,default:!0}},F={id:[String,Number]},I={placement:{type:String,default:u.bottom,validator:e=>Object.values(u).includes(e)||Object.values(s).includes(e)},strategy:{type:String,default:void 0,validator:e=>Object.values(i).includes(e)},transitionName:{type:String,default:void 0},offset:{type:[Number,String,Object],default:0},shift:{type:[Boolean,Object],default:!1},flip:{type:[Boolean,Object],default:!0},size:{type:[Boolean,Object],default:()=>({padding:10})},autoPlacement:{type:[Boolean,Object],default:!1},arrow:{type:Boolean,default:!1},keepOpen:{type:Boolean,default:!1},autofocusFirst:{type:Boolean,default:!0},triggerWidth:{type:Boolean,default:!1}},j={...{...F,name:{type:String,required:!0}},...{autofocus:{type:Boolean,default:!1}},...{autocomplete:{type:String,default:"off"}},..._,...k,...V,...S,...x,...O,...w,...E,...P,...C,...N,...z,...$,minlength:{type:[String,Number],default:void 0},maxlength:{type:[String,Number],default:void 0},placeholder:{type:String,default:void 0},...L};c.button,f.button;const A={...j,...{storageType:{type:String,default:r.local,validator:e=>Object.values(r).includes(e)},storageKey:String},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"},iconRemoveSuggestion:{type:[String,Object],default:"trash"},labelRemoveSuggestion:{type:String,default:"Remove suggestion"},maxSuggestions:{type:Number,default:5},selectOnFocus:{type:Boolean,default:!1},resizable:Boolean};function H(t){return null==(o=e.unref(t))||""===o||Array.isArray(o)&&0===o.length||!(o instanceof Date)&&"object"==typeof o&&0===Object.keys(o).length;var o}function T(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).join(" "):e}const D={...F,...I,...E,modelValue:{type:Boolean,default:void 0},reference:{type:Object,default:null},role:{type:String,default:p.menu,validator:e=>Object.values(p).includes(e)}},q={focusOnHover:{type:Boolean,default:!1}},M={...k,...B,...R,...E,deselectHintLabel:{type:String},selectHintLabel:{type:String},selectedHintLabel:{type:String},focusOnHover:{type:Boolean,default:!1}};function W(t){return e.computed(()=>String(t?.value||e.useId()))}function K(t,o,a){return e.computed(()=>{const l={[t]:!0},n="string"==typeof o?.value?o.value.split(" "):o?.value;return n&&Array.isArray(n)&&n.forEach(e=>{e&&(l[`${t}--${e}`]=!0)}),a&&Object.keys(a.value).forEach(o=>{l[`${t}--${o}`]=e.unref(a.value[o])}),l})}const J=["id","tabindex","role","aria-labelledby"],U=e.defineComponent({name:"VvDropdown",inheritAttrs:!1,props:D,emits:["update:modelValue","beforeEnter","afterLeave","beforeExpand","beforeCollapse","afterExpand","afterCollapse","before-enter","after-leave","enter","afterEnter","enterCancelled","beforeLeave","leave","leaveCancelled"],setup(l,{expose:n,emit:r}){const s=l,d=r,{id:c}=e.toRefs(s),f=W(c),v=e.useAttrs(),g=e.ref("auto"),y=e.ref("auto"),S=e.ref(),x=e.ref(),w=e.ref(),k=e.ref(),L=e.computed({get:()=>s.reference??S.value,set:e=>{S.value=e}}),B=e.ref(!1);e.onMounted(()=>{o.useMutationObserver(x.value,()=>{B.value="true"===window.getComputedStyle(x.value).getPropertyValue("--dropdown-custom-position")?.trim()},{attributeFilter:["style"],window:window})});const $=e.computed(()=>{const e=[];if(s.autoPlacement?"boolean"==typeof s.autoPlacement?e.push(t.autoPlacement()):e.push(t.autoPlacement(s.autoPlacement)):s.flip&&("boolean"==typeof s.flip?e.push(t.flip({fallbackStrategy:"initialPlacement"})):e.push(t.flip(s.flip))),s.shift&&("boolean"==typeof s.shift?e.push(t.shift()):e.push(t.shift(s.shift))),s.size){const o=({availableWidth:e,availableHeight:t})=>{g.value=`${e}px`,y.value=`${t}px`};"boolean"==typeof s.size?e.push(t.size({apply:o})):e.push(t.size({...s.size,apply:o}))}return s.offset&&(e.push(t.offset(Number(s.offset))),["string","number"].includes(typeof s.offset)?e.push(t.offset(Number(s.offset))):e.push(t.offset(s.offset))),s.arrow&&e.push(t.arrow({element:w})),e}),{x:V,y:E,middlewareData:O,placement:P,strategy:C}=t.useFloating(L,x,{whileElementsMounted:(...e)=>t.autoUpdate(...e,{animationFrame:s.strategy===i.fixed}),placement:e.computed(()=>s.placement),strategy:e.computed(()=>s.strategy),middleware:$}),N=e.computed(()=>{if(B.value)return;const e=s.triggerWidth&&L.value?`${L.value?.offsetWidth}px`:void 0;return{position:C.value,top:`${E.value??0}px`,left:`${V.value??0}px`,maxWidth:e?void 0:g.value,maxHeight:y.value,width:e}}),_=e.computed(()=>P.value.split("-")[0]),z=e.computed(()=>{if(B.value)return;const e={[u.top]:u.bottom,[u.right]:u.left,[u.bottom]:u.top,[u.left]:u.right}[_.value];return{left:void 0!==O.value.arrow?.x?`${O.value.arrow?.x}px`:void 0,top:void 0!==O.value.arrow?.y?`${O.value.arrow?.y}px`:void 0,[e]:-(w.value?.offsetWidth??0)/2+"px"}}),R=o.useVModel(s,"modelValue",d),F=e.ref(!1),I=e.computed({get:()=>R.value??F.value,set:e=>{void 0!==R.value?R.value=e:F.value=e}});function j(){I.value=!0}function A(){I.value=!1}function H(){I.value=!I.value}function T(e){L.value=e}o.onClickOutside(x,()=>{!s.keepOpen&&I.value&&(I.value=!1)},{ignore:[L]});const D=e.computed(()=>L.value?.getAttribute?.("id")??void 0),q=e.computed(()=>({"aria-controls":f.value,"aria-haspopup":!0,"aria-expanded":I.value})),{component:M,bus:U}=function({reference:t,id:o,expanded:l,aria:n}){const r=a(),i=e.defineComponent({name:"VvDropdownTriggerProvider",setup(){e.provide(h,{reference:t,id:o,expanded:l,aria:n,bus:r})},render(){return e.h(e.Fragment,{},this.$slots.default?.())}});return{bus:r,component:i}}({reference:L,id:f,expanded:I,aria:q});U.on("click",H);const{role:G,modifiers:Q}=e.toRefs(s),X=K("vv-dropdown",Q,e.computed(()=>({arrow:s.arrow}))),{focused:Y}=o.useFocusWithin(x);function Z(e){return e?[...e.querySelectorAll('a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"])')].filter(e=>!e.hasAttribute("disabled")&&!e.getAttribute("aria-hidden")):[]}function ee(){e.nextTick(()=>{const e=Z(x.value);e.length>0&&e[0].focus({preventScroll:!0})})}function te(){e.nextTick(()=>{if(Y.value){const e=Z(x.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t<e.length-1?e[t+1].focus({preventScroll:!0}):e[0].focus({preventScroll:!0})}})}function oe(){e.nextTick(()=>{if(Y.value){const e=Z(x.value);if(0===e.length||!document.activeElement)return;const t=e.indexOf(document.activeElement);t>0?e[t-1].focus({preventScroll:!0}):e[e.length-1].focus({preventScroll:!0})}})}e.watch(I,e=>{e&&s.autofocusFirst&&ee()}),n({toggle:H,show:j,hide:A,init:T,focusFirst:ee,focusFirstListElement:function(){e.nextTick(()=>{const e=Z(k.value);e.length>0&&e[0].focus({preventScroll:!0})})},focusNext:te,focusPrev:oe,customPosition:B});const ae=o.useElementHover(x),{itemRole:le}=function({role:t,...o}){const a=e.computed(()=>t.value===p.listbox?m.option:m.presentation);return e.provide(b,{role:a,...o}),{itemRole:a}}({role:G,expanded:I,focused:Y,hovered:ae});o.onKeyStroke("Escape",e=>{I.value&&(e.preventDefault(),A())}),o.onKeyStroke("ArrowDown",e=>{I.value&&Y.value&&(e.preventDefault(),te())}),o.onKeyStroke("ArrowUp",e=>{I.value&&Y.value&&(e.preventDefault(),oe())}),o.onKeyStroke([" ","Enter"],e=>{const t=e.target;I.value&&Y.value&&t&&t?.click()});const ne={"before-enter":()=>{d(I.value?"beforeExpand":"beforeCollapse"),d("beforeEnter")},"after-leave":()=>{d(I.value?"afterExpand":"afterCollapse"),d("afterLeave")},enter:()=>{d("enter")},"after-enter":()=>{d("afterEnter")},"enter-cancelled":()=>{d("enterCancelled")},"before-leave":()=>{d("beforeLeave")},leave:()=>{d("leave")},"leave-cancelled":()=>{d("leaveCancelled")}};return(t,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(M),null,{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default",e.normalizeProps(e.guardReactiveProps({init:T,show:j,hide:A,toggle:H,expanded:e.unref(I),aria:e.unref(q)})))]),_:3}),e.createVNode(e.Transition,e.mergeProps({name:t.transitionName},e.toHandlers(ne),{persisted:""}),{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",{ref_key:"floatingEl",ref:x,style:e.normalizeStyle(e.unref(N)),class:e.normalizeClass(e.unref(X))},[s.arrow?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"arrowEl",ref:w,style:e.normalizeStyle(e.unref(z)),class:"vv-dropdown__arrow"},null,4)):e.createCommentVNode("v-if",!0),e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(I)}))),e.createElementVNode("div",e.mergeProps(e.unref(v),{id:e.unref(f),ref_key:"listEl",ref:k,tabindex:e.unref(I)?void 0:-1,role:e.unref(G),"aria-labelledby":e.unref(D),class:"vv-dropdown__list"}),[e.renderSlot(t.$slots,"items",e.normalizeProps(e.guardReactiveProps({role:e.unref(le)})))],16,J),e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps({expanded:e.unref(I)})))],6),[[e.vShow,e.unref(I)]])]),_:3},16,["name"])],64))}});const G=e.defineComponent({name:"VvDropdownItem",props:q,setup(t){const a=t,{role:l,expanded:n}=e.inject(b,{}),r=e.ref(null);!function({expanded:t}){e.provide(y,{role:e.ref(v.menuitem),expanded:t})}({expanded:n});const i=o.useElementHover(r),{focused:u}=o.useFocus(r),{focused:s}=o.useFocusWithin(r);return e.watch(i,e=>{e&&a.focusOnHover&&(u.value=!0)}),(t,o)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({role:e.unref(l)},{ref_key:"element",ref:r,class:["vv-dropdown__item",{"focus-visible":e.unref(u)||e.unref(s)}]}),[e.renderSlot(t.$slots,"default")],16))}}),Q=["title"],X=e.defineComponent({name:"VvDropdownOption",props:M,setup(t){const o=t,{modifiers:a}=e.toRefs(o),l=K("vv-dropdown-option",a,e.computed(()=>({disabled:o.disabled,selected:o.selected,unselectable:o.unselectable&&o.selected}))),n=e.computed(()=>o.selected?o.unselectable?o.deselectHintLabel:o.selectedHintLabel:o.disabled?"":o.selectHintLabel);return(t,o)=>(e.openBlock(),e.createBlock(G,{class:e.normalizeClass(e.unref(l)),tabindex:t.disabled?-1:0,"aria-selected":t.selected,"aria-disabled":t.disabled,"focus-on-hover":t.focusOnHover},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default"),e.createElementVNode("span",{class:"vv-dropdown-option__hint",title:e.unref(n)},[e.renderSlot(t.$slots,"hint",e.normalizeProps(e.guardReactiveProps({disabled:t.disabled,selected:t.selected,unselectable:t.unselectable})),()=>[e.createTextVNode(e.toDisplayString(e.unref(n)),1)])],8,Q)]),_:3},8,["class","tabindex","aria-selected","aria-disabled","focus-on-hover"]))}});function Y(){return e.inject(g,void 0)}const Z=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:{}},n),setup(t){const o=t,a=e.computed(()=>"string"==typeof o.rotate?Number.parseFloat(o.rotate):o.rotate),n=e.ref(!0),r=Y(),{modifiers:i}=e.toRefs(o),u=K("vv-icon",i),s=e.computed(()=>o.provider||r?.iconsProvider),d=e.computed(()=>{const e=o.name??"",t=`@${s.value}:${o.prefix}:${e}`;if(l.iconLoaded(t))return t;const a=r?.iconsCollections.find(t=>{const o=`@${s.value}:${t.prefix}:${e}`;return l.iconLoaded(o)});return a?`@${s.value}:${a.prefix}:${e}`:e});function c(e){const t=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=t?.innerHTML.trim()||"";t&&a&&l.addIcon(`@${s.value}:${o.prefix}:${o.name}`,{body:a,height:t.viewBox.baseVal.height,width:t.viewBox.baseVal.width})}return r&&o.src&&!l.iconLoaded(`@${s.value}:${o.prefix}:${o.name}`)&&(n.value=!1,r.fetchIcon(o.src).then(e=>{e&&(c(e),n.value=!0)}).catch(e=>{throw new Error(`Error during fetch icon: ${e?.message}`)})),o.svg&&c(o.svg),(o,r)=>e.unref(n)?(e.openBlock(),e.createBlock(e.unref(l.Icon),e.mergeProps({key:0,class:e.unref(u)},{inline:t.inline,width:t.width,height:t.height,horizontalFlip:t.horizontalFlip,verticalFlip:t.verticalFlip,flip:t.flip,rotate:e.unref(a),color:t.color,icon:e.unref(d)},{onLoad:t.onLoad}),null,16,["class","onLoad"])):e.createCommentVNode("v-if",!0)}});function ee(t,o){const a=e.computed(()=>"string"==typeof t?.value?{name:t?.value}:t?.value),l=e.computed(()=>o?.value===d.before?a.value:void 0),n=e.computed(()=>o?.value===d.after?a.value:void 0),r=e.computed(()=>o?.value===u.left?a.value:void 0),i=e.computed(()=>o?.value===u.right?a.value:void 0),s=e.computed(()=>o?.value===u.top?a.value:void 0),c=e.computed(()=>o?.value===u.bottom?a.value:void 0);return{hasIcon:a,hasIconLeft:r,hasIconRight:i,hasIconTop:s,hasIconBottom:c,hasIconBefore:l,hasIconAfter:n}}const te=["for"],oe={key:0,class:"vv-textarea__input-before"},ae={class:"vv-textarea__inner"},le=["id"],ne={key:1,class:"vv-textarea__input-after"},re={key:2,class:"vv-textarea__limit"},ie={class:"flex-1"},ue=["title","onClick"];return e.defineComponent({name:"VvTextarea",props:A,emits:["update:modelValue","focus","blur","keyup","suggestion:selected","suggestion:removed"],setup(t,{emit:a}){const l=t,n=a,i=e.useSlots(),u=Y(),s=function(t,o,a){const l=Y(),n=e.computed(()=>{if(l&&l.defaults.value?.[t])return l.defaults.value[t]});return e.computed(()=>{if(void 0===n.value)return a;const e=n.value,t=o,l=a;return Object.keys(t).reduce((o,a)=>{const n=l[a];if(o[a]=n,a in e){if(Array.isArray(t[a])){const l=t[a];l.length&&l[0]===n&&(o[a]=e[a])}if("function"==typeof t[a]&&(0,t[a])()===n&&(o[a]=e[a]),"object"==typeof t[a]){let l=t[a].default;"function"==typeof l&&(l=l()),"object"==typeof l?JSON.stringify(l)===JSON.stringify(n)&&(o[a]=e[a]):l===n&&(o[a]=e[a])}}return o},{})})}("VvTextarea",A,l),d=e.ref(),c=e.ref(),f=e.ref(),{id:v,icon:p,iconPosition:m,iconRemoveSuggestion:g,labelRemoveSuggestion:h,label:b,modelValue:y,count:S,valid:x,invalid:w,loading:k,modifiers:L,debounce:B,minlength:$,maxlength:V,storageType:E}=e.toRefs(l),O=W(v),P=e.computed(()=>`${O.value}-hint`),C=e.computed(()=>l.floating&&H(l.placeholder)?" ":l.placeholder),N=function(t,o,a=0,{getter:l=e=>e,setter:n=e=>e}={}){let r;return"string"==typeof a&&(a=Number.parseInt(a)),e.computed({get:()=>l(t?.value),set:e=>{r&&clearTimeout(r),r=setTimeout(()=>{o("update:modelValue",n(e))},a)}})}(y,n,B?.value),{hasIconBefore:_,hasIconAfter:z}=ee(p,m),{hasIcon:R}=ee(g),{focused:F}=function(t,a){const{focused:l}=o.useFocus(t);return e.watch(l,o=>{a(o?"focus":"blur",e.unref(t))}),{focused:l}}(d,n),I=e.computed(()=>F.value&&!l.disabled&&!l.readonly);e.watch(I,e=>{if(e&&s.value.selectOnFocus&&d.value&&d.value.select(),e&&se.value?.size)f.value?.show();else if(J.value&&se.value){const e=l.maxSuggestions;se.value.size>=e&&!se.value.has(N.value)&&(se.value=new Set([...se.value].slice(se.value.size-e+1))),se.value.add(N.value)}});const j=o.useElementVisibility(d);e.watch(j,e=>{e&&l.autofocus&&(F.value=!0)});const{formatted:D}=function(t,o){const a=e.computed(()=>(e.unref(t)??"").length),l=e.computed(()=>void 0!==o?.lowerLimit&&a.value<o?.lowerLimit?a.value-o.lowerLimit:void 0!==o?.upperLimit&&a.value<o?.upperLimit?o.upperLimit-a.value:0),n=e.computed(()=>{if(!1===o?.mode)return"";if("limit"===o?.mode&&o?.upperLimit)return`${a.value} / ${o.lowerLimit?`${o.lowerLimit}-`:""}${o.upperLimit}`;if("countdown"===o?.mode){if(0===l.value)return;return l}return a.value});return{length:a,gap:l,formatted:n}}(N,{mode:S?.value,upperLimit:Number(V?.value),lowerLimit:Number($?.value)}),q=e.computed(()=>!l.disabled&&!l.readonly),M=e.computed(()=>q.value?l.tabindex:-1),J=e.computed(()=>!H(y)),G=e.computed(()=>!0===l.invalid||!0!==l.valid&&void 0),Q=e.computed(()=>l.storageKey??(u?.experimentalFeatures.forceInputSuggestions?l.name:void 0)),se=function(t,a=r.local,l){const n=e.ref();let i;return l&&(n.value=l),e.onMounted(()=>{t&&e.watch(t,(t,l)=>{const u=e.unref(a)===r.session?sessionStorage:localStorage;if(l&&l!==t&&u.removeItem(l),t)return i=o.useStorage(t,i?.value??n.value,u),void(i.value&&(n.value=i.value));i=void 0},{immediate:!0}),e.isRef(a)&&e.watch(a,(e,a)=>{if(t?.value){if(e){const a=e===r.session?sessionStorage:localStorage;i=o.useStorage(t.value,i?.value??n.value,a)}a&&a!==e&&(a===r.session?sessionStorage:localStorage).removeItem(t.value)}})}),e.watch(n,e=>{i&&(i.value=e)},{deep:!0,immediate:!0}),n}(Q,E,new Set),de=e.computed(()=>se.value?[...se.value].filter(e=>H(N.value)||`${e}`.toLowerCase().includes(`${N.value}`.toLowerCase())&&e!==N.value).reverse():[]),ce=e.computed(()=>Q?.value&&se.value&&se.value.size>0);const{HintSlot:fe,hasHintLabelOrSlot:ve,hasInvalidLabelOrSlot:pe,hintSlotScope:me}=function(t,o){const a=e.computed(()=>e.isRef(t)?t.value:t),l=e.computed(()=>T(a.value.invalidLabel)),n=e.computed(()=>T(a.value.validLabel)),r=e.computed(()=>a.value.loadingLabel),i=e.computed(()=>a.value.hintLabel),u=e.computed(()=>Boolean(a.value.loading&&(o.loading||r.value))),s=e.computed(()=>!u.value&&Boolean(a.value.invalid&&(o.invalid||l.value))),d=e.computed(()=>!u.value&&!s.value&&Boolean(a.value.valid&&(o.valid||n.value))),c=e.computed(()=>!u.value&&!s.value&&!d.value&&Boolean(o.hint||i.value)),f=e.computed(()=>s.value||d.value||u.value||c.value),v=e.computed(()=>({modelValue:a.value.modelValue,valid:a.value.valid,invalid:a.value.invalid,loading:a.value.loading})),p=e.defineComponent({name:"HintSlot",props:{tag:{type:String,default:"small"}},setup:()=>({isVisible:f,invalidLabel:l,validLabel:n,loadingLabel:r,hintLabel:i,hasInvalidLabelOrSlot:s,hasValidLabelOrSlot:d,hasLoadingLabelOrSlot:u,hasHintLabelOrSlot:c}),render(){if(this.isVisible){let t;return this.hasInvalidLabelOrSlot&&(t="alert"),this.hasValidLabelOrSlot&&(t="status"),this.hasLoadingLabelOrSlot?e.h(this.tag,{role:t},this.$slots.loading?.()??this.loadingLabel):this.hasInvalidLabelOrSlot?e.h(this.tag,{role:t},this.$slots.invalid?.()??this.$slots.invalid??this.invalidLabel):this.hasValidLabelOrSlot?e.h(this.tag,{role:t},this.$slots.valid?.()??this.validLabel):e.h(this.tag,{role:t},this.$slots.hint?.()??this.$slots.hint??this.hintLabel)}return null}});return{hasInvalidLabelOrSlot:s,hasHintLabelOrSlot:c,hasValidLabelOrSlot:d,hasLoadingLabelOrSlot:u,hintSlotScope:v,HintSlot:p}}(s,i),ge=K("vv-textarea",L,e.computed(()=>({valid:x.value,invalid:w.value,loading:k.value,disabled:l.disabled,readonly:l.readonly,required:l.required,"icon-before":void 0!==_.value,"icon-after":void 0!==z.value,floating:l.floating&&!H(l.label),dirty:J.value,focus:F.value,resizable:l.resizable}))),he=e.computed(()=>({name:l.name,placeholder:C.value,tabindex:M.value,disabled:l.disabled,readonly:l.readonly,required:l.required,autocomplete:l.autocomplete,minlength:l.minlength,maxlength:l.maxlength,cols:l.cols,rows:l.rows,wrap:l.wrap,spellcheck:l.spellcheck,"aria-invalid":G.value,"aria-describedby":ve.value?P.value:void 0,"aria-errormessage":pe.value?P.value:void 0})),be=e.computed(()=>({valid:l.valid,invalid:l.invalid,modelValue:l.modelValue,hintLabel:l.hintLabel,maxlength:l.maxlength,minlength:l.minlength,clear:ye}));function ye(){N.value=void 0}return(t,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(e.unref(ge))},[e.unref(b)?(e.openBlock(),e.createElementBlock("label",{key:0,for:e.unref(O),class:"vv-textarea__label"},e.toDisplayString(e.unref(b)),9,te)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",{ref_key:"wrapperEl",ref:c,class:"vv-textarea__wrapper"},[t.$slots.before?(e.openBlock(),e.createElementBlock("div",oe,[e.renderSlot(t.$slots,"before",e.normalizeProps(e.guardReactiveProps(e.unref(be))))])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",ae,[e.unref(_)?(e.openBlock(),e.createBlock(Z,e.mergeProps({key:0},e.unref(_),{class:"vv-textarea__icon"}),null,16)):e.createCommentVNode("v-if",!0),e.withDirectives(e.createElementVNode("textarea",e.mergeProps({id:e.unref(O),ref_key:"textareaEl",ref:d,"onUpdate:modelValue":o[0]||(o[0]=t=>e.isRef(N)?N.value=t:null)},e.unref(he),{onKeyup:o[1]||(o[1]=e=>n("keyup",e))}),null,16,le),[[e.vModelText,e.unref(N)]]),e.unref(z)?(e.openBlock(),e.createBlock(Z,e.mergeProps({key:1},e.unref(z),{class:"vv-textarea__icon vv-textarea__icon-after"}),null,16)):e.createCommentVNode("v-if",!0)]),t.$slots.after?(e.openBlock(),e.createElementBlock("div",ne,[e.renderSlot(t.$slots,"after",e.normalizeProps(e.guardReactiveProps(e.unref(be))))])):e.createCommentVNode("v-if",!0),e.unref(S)?(e.openBlock(),e.createElementBlock("span",re,[e.renderSlot(t.$slots,"count",e.normalizeProps(e.guardReactiveProps(e.unref(be))),()=>[e.createTextVNode(e.toDisplayString(e.unref(D)),1)])])):e.createCommentVNode("v-if",!0)],512),e.createVNode(e.unref(fe),{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(me))))]),key:"0"}:void 0,t.$slots.loading?{name:"loading",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"loading",e.normalizeProps(e.guardReactiveProps(e.unref(me))))]),key:"1"}:void 0,t.$slots.valid?{name:"valid",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"valid",e.normalizeProps(e.guardReactiveProps(e.unref(me))))]),key:"2"}:void 0,t.$slots.invalid?{name:"invalid",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"invalid",e.normalizeProps(e.guardReactiveProps(e.unref(me))))]),key:"3"}:void 0]),1032,["id"]),e.unref(ce)?(e.openBlock(),e.createBlock(U,{key:1,ref_key:"suggestionsDropdownEl",ref:f,reference:e.unref(c),"autofocus-first":!1,"trigger-width":!0},{items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(de),o=>(e.openBlock(),e.createBlock(X,{key:o,onClick:e.withModifiers(e=>{return t=o,N.value=t,f.value?.hide(),void n("suggestion:selected",t);var t},["stop"])},{default:e.withCtx(()=>[e.createElementVNode("div",ie,[e.renderSlot(t.$slots,"suggestion",e.mergeProps({ref_for:!0},{value:o}),()=>[e.createTextVNode(e.toDisplayString(o),1)])]),e.unref(se)&&e.unref(R)?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",tabindex:"-1",class:"cursor-pointer",title:e.unref(h),onClick:e.withModifiers(e=>{return t=o,se.value?.delete(t),void n("suggestion:removed",t);var t},["stop"])},[e.createVNode(Z,e.mergeProps({ref_for:!0},e.unref(R)),null,16)],8,ue)):e.createCommentVNode("v-if",!0)]),_:2},1032,["onClick"]))),128))]),_:3},8,["reference"])):e.createCommentVNode("v-if",!0)],2))}})});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const
|
|
1
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<globalThis.ExtractPropTypes<{
|
|
2
2
|
modelValue: StringConstructor;
|
|
3
3
|
cols: {
|
|
4
4
|
type: (StringConstructor | NumberConstructor)[];
|
|
@@ -375,6 +375,7 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<globalThis
|
|
|
375
375
|
value: string;
|
|
376
376
|
}) => any;
|
|
377
377
|
}>;
|
|
378
|
+
declare const _default: typeof __VLS_export;
|
|
378
379
|
export default _default;
|
|
379
380
|
type __VLS_WithSlots<T, S> = T & {
|
|
380
381
|
new (): {
|
|
@@ -1,154 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
var StorageType = /* @__PURE__ */ ((StorageType2) => {
|
|
3
|
-
StorageType2["local"] = "local";
|
|
4
|
-
StorageType2["session"] = "session";
|
|
5
|
-
return StorageType2;
|
|
6
|
-
})(StorageType || {});
|
|
7
|
-
var Side = /* @__PURE__ */ ((Side2) => {
|
|
8
|
-
Side2["left"] = "left";
|
|
9
|
-
Side2["right"] = "right";
|
|
10
|
-
Side2["top"] = "top";
|
|
11
|
-
Side2["bottom"] = "bottom";
|
|
12
|
-
return Side2;
|
|
13
|
-
})(Side || {});
|
|
14
|
-
var Position = /* @__PURE__ */ ((Position2) => {
|
|
15
|
-
Position2["before"] = "before";
|
|
16
|
-
Position2["after"] = "after";
|
|
17
|
-
return Position2;
|
|
18
|
-
})(Position || {});
|
|
19
|
-
var ButtonType = /* @__PURE__ */ ((ButtonType2) => {
|
|
20
|
-
ButtonType2["button"] = "button";
|
|
21
|
-
ButtonType2["submit"] = "submit";
|
|
22
|
-
ButtonType2["reset"] = "reset";
|
|
23
|
-
return ButtonType2;
|
|
24
|
-
})(ButtonType || {});
|
|
25
|
-
var ActionTag = /* @__PURE__ */ ((ActionTag2) => {
|
|
26
|
-
ActionTag2["nuxtLink"] = "nuxt-link";
|
|
27
|
-
ActionTag2["routerLink"] = "router-link";
|
|
28
|
-
ActionTag2["a"] = "a";
|
|
29
|
-
ActionTag2["button"] = "button";
|
|
30
|
-
return ActionTag2;
|
|
31
|
-
})(ActionTag || {});
|
|
32
|
-
const ModifiersProps = {
|
|
33
|
-
/**
|
|
34
|
-
* Component BEM modifiers
|
|
35
|
-
*/
|
|
36
|
-
modifiers: {
|
|
37
|
-
type: [String, Array],
|
|
38
|
-
default: void 0
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
({
|
|
42
|
-
/**
|
|
43
|
-
* VvIcon position
|
|
44
|
-
*/
|
|
45
|
-
iconPosition: {
|
|
46
|
-
default: Position.before
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
({
|
|
50
|
-
/**
|
|
51
|
-
* Dropdown placement
|
|
52
|
-
*/
|
|
53
|
-
placement: {
|
|
54
|
-
default: Side.bottom
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
({
|
|
58
|
-
/**
|
|
59
|
-
* Button type
|
|
60
|
-
*/
|
|
61
|
-
type: {
|
|
62
|
-
default: ButtonType.button
|
|
63
|
-
},
|
|
64
|
-
/**
|
|
65
|
-
* Default tag for the action
|
|
66
|
-
*/
|
|
67
|
-
defaultTag: {
|
|
68
|
-
default: ActionTag.button
|
|
69
|
-
}
|
|
70
|
-
});
|
|
71
|
-
({
|
|
72
|
-
storageType: {
|
|
73
|
-
default: StorageType.local
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
const VvTooltipProps = {
|
|
77
|
-
...ModifiersProps,
|
|
78
|
-
/**
|
|
79
|
-
* Define the tooltip position
|
|
80
|
-
* @default Side.bottom
|
|
81
|
-
*/
|
|
82
|
-
position: {
|
|
83
|
-
type: String,
|
|
84
|
-
default: Side.bottom
|
|
85
|
-
},
|
|
86
|
-
value: {
|
|
87
|
-
type: String
|
|
88
|
-
}
|
|
89
|
-
};
|
|
90
|
-
function useModifiers(prefix, modifiers, others) {
|
|
91
|
-
return computed(() => {
|
|
92
|
-
const toReturn = {
|
|
93
|
-
[prefix]: true
|
|
94
|
-
};
|
|
95
|
-
const modifiersArray = typeof modifiers?.value === "string" ? modifiers.value.split(" ") : modifiers?.value;
|
|
96
|
-
if (modifiersArray) {
|
|
97
|
-
if (Array.isArray(modifiersArray)) {
|
|
98
|
-
modifiersArray.forEach((modifier) => {
|
|
99
|
-
if (modifier) {
|
|
100
|
-
toReturn[`${prefix}--${modifier}`] = true;
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
if (others) {
|
|
106
|
-
Object.keys(others.value).forEach((key) => {
|
|
107
|
-
toReturn[`${prefix}--${key}`] = unref(others.value[key]);
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
return toReturn;
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
const __default__ = {
|
|
114
|
-
name: "VvTooltip"
|
|
115
|
-
};
|
|
116
|
-
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
117
|
-
...__default__,
|
|
118
|
-
props: VvTooltipProps,
|
|
119
|
-
setup(__props) {
|
|
120
|
-
const props = __props;
|
|
121
|
-
const { modifiers } = toRefs(props);
|
|
122
|
-
const bemCssClasses = useModifiers(
|
|
123
|
-
"vv-tooltip",
|
|
124
|
-
modifiers,
|
|
125
|
-
computed(() => ({
|
|
126
|
-
[props.position]: true
|
|
127
|
-
}))
|
|
128
|
-
);
|
|
129
|
-
return (_ctx, _cache) => {
|
|
130
|
-
return openBlock(), createElementBlock(
|
|
131
|
-
"span",
|
|
132
|
-
{
|
|
133
|
-
class: normalizeClass(unref(bemCssClasses)),
|
|
134
|
-
role: "tooltip",
|
|
135
|
-
inert: ""
|
|
136
|
-
},
|
|
137
|
-
[
|
|
138
|
-
renderSlot(_ctx.$slots, "default", {}, () => [
|
|
139
|
-
createTextVNode(
|
|
140
|
-
toDisplayString(_ctx.value),
|
|
141
|
-
1
|
|
142
|
-
/* TEXT */
|
|
143
|
-
)
|
|
144
|
-
])
|
|
145
|
-
],
|
|
146
|
-
2
|
|
147
|
-
/* CLASS */
|
|
148
|
-
);
|
|
149
|
-
};
|
|
150
|
-
}
|
|
151
|
-
});
|
|
152
|
-
export {
|
|
153
|
-
_sfc_main as default
|
|
154
|
-
};
|
|
1
|
+
import{computed as t,unref as o,defineComponent as e,toRefs as r,createElementBlock as n,openBlock as i,normalizeClass as s,renderSlot as u,createTextVNode as a,toDisplayString as l}from"vue";var f=/* @__PURE__ */(t=>(t.local="local",t.session="session",t))(f||{}),p=/* @__PURE__ */(t=>(t.left="left",t.right="right",t.top="top",t.bottom="bottom",t))(p||{}),b=/* @__PURE__ */(t=>(t.before="before",t.after="after",t))(b||{}),v=/* @__PURE__ */(t=>(t.button="button",t.submit="submit",t.reset="reset",t))(v||{}),c=/* @__PURE__ */(t=>(t.nuxtLink="nuxt-link",t.routerLink="router-link",t.a="a",t.button="button",t))(c||{});const m={modifiers:{type:[String,Array],default:void 0}};b.before,p.bottom,v.button,c.button,f.local;const y=/* @__PURE__ */e({name:"VvTooltip",props:{...m,position:{type:String,default:p.bottom},value:{type:String}},setup(e){const f=e,{modifiers:p}=r(f),b=function(e,r,n){return t(()=>{const t={[e]:!0},i="string"==typeof r?.value?r.value.split(" "):r?.value;return i&&Array.isArray(i)&&i.forEach(o=>{o&&(t[`${e}--${o}`]=!0)}),n&&Object.keys(n.value).forEach(r=>{t[`${e}--${r}`]=o(n.value[r])}),t})}("vv-tooltip",p,t(()=>({[f.position]:!0})));return(t,e)=>(i(),n("span",{class:s(o(b)),role:"tooltip",inert:""},[u(t.$slots,"default",{},()=>[a(l(t.value),1)])],2))}});export{y as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const
|
|
1
|
+
declare const __VLS_export: __VLS_WithSlots<import("vue").DefineComponent<globalThis.ExtractPropTypes<{
|
|
2
2
|
position: {
|
|
3
3
|
type: PropType<`${import("../../constants").Side}`>;
|
|
4
4
|
default: import("../../constants").Side;
|
|
@@ -28,6 +28,7 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<globalThis
|
|
|
28
28
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
|
|
29
29
|
default?: (props: {}) => any;
|
|
30
30
|
}>;
|
|
31
|
+
declare const _default: typeof __VLS_export;
|
|
31
32
|
export default _default;
|
|
32
33
|
type __VLS_WithSlots<T, S> = T & {
|
|
33
34
|
new (): {
|