@e-xode/vui 0.6.5
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/LICENSE +21 -0
- package/README.md +107 -0
- package/dist/_plugin-vue_export-helper-BSl1dQT6.js +83 -0
- package/dist/_plugin-vue_export-helper-DeDoBcDj.js +1 -0
- package/dist/alert-CL20mS-E.js +49 -0
- package/dist/alert-CbdNaLvd.js +1 -0
- package/dist/animable-ChJEXlsE.js +1 -0
- package/dist/animable-DnFaMPYA.js +34 -0
- package/dist/button-D5bD4vAv.js +1 -0
- package/dist/button-Dall4PZ6.js +82 -0
- package/dist/card-DK0Uhh_6.js +1 -0
- package/dist/card-ouJTJOLK.js +50 -0
- package/dist/checkbox-B9yl-GCS.js +1 -0
- package/dist/checkbox-C0XHmyOW.js +116 -0
- package/dist/doc/assets/alert-BUCYz3vD.js +25 -0
- package/dist/doc/assets/alert-CMx1jzV3.css +1 -0
- package/dist/doc/assets/alert-CfN-KK4X.js +1 -0
- package/dist/doc/assets/animable-S5zFcxd4.js +1 -0
- package/dist/doc/assets/button-B8AvTEGk.css +1 -0
- package/dist/doc/assets/button-C1U5-S3p.js +1 -0
- package/dist/doc/assets/button-CNMZ1GQO.js +36 -0
- package/dist/doc/assets/button-Df0zy3mn.css +1 -0
- package/dist/doc/assets/card-CUtpnLFS.js +1 -0
- package/dist/doc/assets/card-Cm7t5GnP.css +1 -0
- package/dist/doc/assets/card-CwQ070ao.js +27 -0
- package/dist/doc/assets/checkbox-DUY-WF86.js +1 -0
- package/dist/doc/assets/checkbox-DrJf8HyQ.js +14 -0
- package/dist/doc/assets/checkbox-Dtjrzcei.css +1 -0
- package/dist/doc/assets/component-CXumWSlt.js +1 -0
- package/dist/doc/assets/component-CXwRI3O4.css +1 -0
- package/dist/doc/assets/composable-CshUTKfl.js +1 -0
- package/dist/doc/assets/default-D8NjjGBi.css +1 -0
- package/dist/doc/assets/default-DHoZWdtn.js +1 -0
- package/dist/doc/assets/demonstrable-B5KAWPKX.js +9 -0
- package/dist/doc/assets/dropdown-BDltvOgD.css +1 -0
- package/dist/doc/assets/dropdown-D0xbQtqT.css +1 -0
- package/dist/doc/assets/dropdown-D3hwsYWo.js +32 -0
- package/dist/doc/assets/dropdown-EPlb5xOz.js +1 -0
- package/dist/doc/assets/fa-brands-400-Ch568Ea9.woff2 +0 -0
- package/dist/doc/assets/fa-brands-400-DHHcbFjz.ttf +0 -0
- package/dist/doc/assets/fa-regular-400-9VThgXHM.woff2 +0 -0
- package/dist/doc/assets/fa-regular-400-C54-fRIQ.ttf +0 -0
- package/dist/doc/assets/fa-solid-900-Cm9M9sZB.ttf +0 -0
- package/dist/doc/assets/fa-solid-900-QWY35r5r.woff2 +0 -0
- package/dist/doc/assets/fa-v4compatibility-BRdYr4HJ.woff2 +0 -0
- package/dist/doc/assets/fa-v4compatibility-DLBX5pNp.ttf +0 -0
- package/dist/doc/assets/footer-BgsenAcP.js +1 -0
- package/dist/doc/assets/footer-Bm8ssenm.js +5 -0
- package/dist/doc/assets/footer-DYUKfFU3.css +1 -0
- package/dist/doc/assets/form-DKLHmzJQ.js +47 -0
- package/dist/doc/assets/form-XmHKCPrj.css +1 -0
- package/dist/doc/assets/form-k50YoLDD.js +1 -0
- package/dist/doc/assets/grid-Bh0kbzz2.css +1 -0
- package/dist/doc/assets/grid-BlQLubGm.css +1 -0
- package/dist/doc/assets/grid-BqtXNrmN.js +1 -0
- package/dist/doc/assets/grid-TeUBpTW_.js +14 -0
- package/dist/doc/assets/header-BXnWOksC.js +1 -0
- package/dist/doc/assets/header-Bz_A9csZ.css +1 -0
- package/dist/doc/assets/header-eITS5i2z.js +5 -0
- package/dist/doc/assets/index-7pe20t8n.js +1 -0
- package/dist/doc/assets/index-9U_mVUKM.css +1 -0
- package/dist/doc/assets/index-BQmFywQ4.js +48 -0
- package/dist/doc/assets/index-BSpywUIE.css +14 -0
- package/dist/doc/assets/index-wi3jjcqb.js +1 -0
- package/dist/doc/assets/input-BKMua51x.js +1 -0
- package/dist/doc/assets/input-BOPqansB.js +15 -0
- package/dist/doc/assets/input-D3l35AS9.css +1 -0
- package/dist/doc/assets/input-DSlxLCcA.css +1 -0
- package/dist/doc/assets/list-BPEuENqV.css +1 -0
- package/dist/doc/assets/list-CGLoBn9q.js +1 -0
- package/dist/doc/assets/list-CLtQXRmR.css +1 -0
- package/dist/doc/assets/list-n45uFw2X.js +30 -0
- package/dist/doc/assets/loader-BV0MDdoZ.js +1 -0
- package/dist/doc/assets/loader-C4g8GuOD.css +1 -0
- package/dist/doc/assets/loader-kFszqXxd.js +21 -0
- package/dist/doc/assets/modal-BQbrtOh6.js +1 -0
- package/dist/doc/assets/modal-C8IiekXp.css +1 -0
- package/dist/doc/assets/modal-DLTSg2Rm.js +18 -0
- package/dist/doc/assets/nav-C_eRBUvm.css +1 -0
- package/dist/doc/assets/nav-DL_aupT5.js +1 -0
- package/dist/doc/assets/nav-DQFqqSlk.js +20 -0
- package/dist/doc/assets/page-5bIt8sIt.js +53 -0
- package/dist/doc/assets/page-DtSZOZ0a.css +1 -0
- package/dist/doc/assets/page-HHRlPnpS.js +1 -0
- package/dist/doc/assets/pager-BJfdjd6d.js +1 -0
- package/dist/doc/assets/pager-BSfAVnS5.css +1 -0
- package/dist/doc/assets/pager-lLWSRkXq.js +22 -0
- package/dist/doc/assets/progress-BGFPfOOr.js +14 -0
- package/dist/doc/assets/progress-DILkrPEU.css +1 -0
- package/dist/doc/assets/progress-agXYCgzm.js +1 -0
- package/dist/doc/assets/start-CD9tFbht.css +1 -0
- package/dist/doc/assets/start-CqupTQKQ.js +1 -0
- package/dist/doc/assets/table-BawB_9__.css +1 -0
- package/dist/doc/assets/table-CMUxQ9C6.js +75 -0
- package/dist/doc/assets/table-DX3maWwn.css +1 -0
- package/dist/doc/assets/table-No82fyed.js +1 -0
- package/dist/doc/assets/tabs-B3SGp8R7.css +1 -0
- package/dist/doc/assets/tabs-BO11EW27.js +1 -0
- package/dist/doc/assets/tabs-uU4Onuid.js +11 -0
- package/dist/doc/assets/tag-COrA8kV9.js +25 -0
- package/dist/doc/assets/tag-DAiyWNFY.css +1 -0
- package/dist/doc/assets/tag-Do20IKxB.js +1 -0
- package/dist/doc/assets/toggle-BOUyuSz0.js +9 -0
- package/dist/doc/assets/toggle-CweBCm3j.css +1 -0
- package/dist/doc/assets/toggle-DazanQqx.js +1 -0
- package/dist/doc/assets/tooltip-94laNPly.js +1 -0
- package/dist/doc/assets/tooltip-CB2SgOBq.css +1 -0
- package/dist/doc/assets/tooltip-CpdVg_-T.js +48 -0
- package/dist/doc/assets/translatable-DbFxNJLL.js +1 -0
- package/dist/doc/assets/unit-BBuvFoj-.js +18 -0
- package/dist/doc/assets/unit-BziEb5aB.css +1 -0
- package/dist/doc/assets/unit-CEWThaCv.css +1 -0
- package/dist/doc/assets/unit-CiQ7QHVC.js +1 -0
- package/dist/doc/index.html +31 -0
- package/dist/dropdown-94Qb68fE.js +188 -0
- package/dist/dropdown-BwSLrIif.js +1 -0
- package/dist/footer-51s_zdw3.js +29 -0
- package/dist/footer-BsenaW5N.js +1 -0
- package/dist/form-BZpgCWGA.js +29 -0
- package/dist/form-ZUVvCZyS.js +1 -0
- package/dist/grid-CurHW85o.js +66 -0
- package/dist/grid-DWWix5rK.js +1 -0
- package/dist/header-DcGPzeye.js +29 -0
- package/dist/header-ZYcWwRkh.js +1 -0
- package/dist/index-BYlXFZ1a.js +7 -0
- package/dist/index-CIHzWz8S.js +1 -0
- package/dist/input-Dy5fCJhT.js +103 -0
- package/dist/input-WjGQ7q1J.js +1 -0
- package/dist/list-BH719nj8.js +286 -0
- package/dist/list-BkZK3xVW.js +1 -0
- package/dist/loader-BfFCffVh.js +1 -0
- package/dist/loader-D-dknzvs.js +60 -0
- package/dist/modal-ClZY58iR.js +1 -0
- package/dist/modal-DkygZY00.js +126 -0
- package/dist/nav-BD6eV2wj.js +1 -0
- package/dist/nav-DdIBrD1b.js +142 -0
- package/dist/page-BIUh-VF2.js +1 -0
- package/dist/page-CM5kqSQi.js +60 -0
- package/dist/pager-C8iFmeo8.js +1 -0
- package/dist/pager-CBJ3CiCZ.js +172 -0
- package/dist/progress-DsA7oWSK.js +59 -0
- package/dist/progress-d0_3-GgJ.js +1 -0
- package/dist/style.css +1 -0
- package/dist/table-8qXMDkjH.js +1 -0
- package/dist/table-DuvV-g2p.js +95 -0
- package/dist/tabs-CHwXPZS8.js +1 -0
- package/dist/tabs-X0RMcNvq.js +113 -0
- package/dist/tag-D4iZf3-b.js +48 -0
- package/dist/tag-viNXw7N7.js +1 -0
- package/dist/toggle-BjGdBPSz.js +114 -0
- package/dist/toggle-gSEwsuRP.js +1 -0
- package/dist/tooltip--n3igWe7.js +1 -0
- package/dist/tooltip-CIoZoCZY.js +127 -0
- package/dist/unit-DGlQY07B.js +1 -0
- package/dist/unit-Xp1FHc7U.js +41 -0
- package/dist/vui.esm.js +272 -0
- package/dist/vui.js +1 -0
- package/dist/vui.umd.js +1 -0
- package/package.json +107 -0
package/dist/vui.umd.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(t,g){typeof exports=="object"&&typeof module<"u"?module.exports=g(require("vue"),require("mitt"),require("highlight.js"),require("vue-i18n")):typeof define=="function"&&define.amd?define(["vue","mitt","highlight.js","vue-i18n"],g):(t=typeof globalThis<"u"?globalThis:t||self,t.vui=g(t.vue,t.mitt,null,t.vueI18n))})(this,function(t,g,go,v){"use strict";const N=[{icon:"fa-brands fa-vuejs",label:"Alert",name:"vui-alert",path:"/components/ui/alert/alert.vue",type:"ui",doc:{name:"view-alert",path:"/views/component/ui/alert/alert.vue"}},{icon:"fa-brands fa-vuejs",label:"Button",name:"vui-button",path:"/components/html/button/button.vue",type:"html",doc:{name:"view-button",path:"/views/component/html/button/button.vue"}},{icon:"fa-brands fa-vuejs",label:"Card",name:"vui-card",path:"/components/ui/card/card.vue",type:"ui",doc:{name:"view-card",path:"/views/component/ui/card/card.vue"}},{icon:"fa-brands fa-vuejs",label:"Checkbox",name:"vui-checkbox",path:"/components/html/checkbox/checkbox.vue",type:"html",doc:{name:"view-checkbox",path:"/views/component/html/checkbox/checkbox.vue"}},{icon:"fa-brands fa-vuejs",label:"Dropdown",name:"vui-dropdown",path:"/components/ui/dropdown/dropdown.vue",type:"ui",doc:{name:"view-dropdown",path:"/views/component/ui/dropdown/dropdown.vue"}},{icon:"fa-brands fa-vuejs",label:"Footer",name:"vui-footer",path:"/components/html/footer/footer.vue",type:"html",doc:{name:"view-footer",path:"/views/component/html/footer/footer.vue"}},{icon:"fa-brands fa-vuejs",label:"Form",name:"vui-form",path:"/components/html/form/form.vue",type:"html",doc:{name:"view-form",path:"/views/component/html/form/form.vue"}},{icon:"fa-brands fa-vuejs",label:"Header",name:"vui-header",path:"/components/html/header/header.vue",type:"html",doc:{name:"view-header",path:"/views/component/html/header/header.vue"}},{icon:"fa-brands fa-vuejs",label:"Grid",name:"vui-grid",path:"/components/layout/grid/grid.vue",type:"layout",doc:{name:"view-grid",path:"/views/component/layout/grid/grid.vue"}},{icon:"fa-brands fa-vuejs",label:"Grid unit",name:"vui-grid-unit",path:"/components/layout/unit/unit.vue",type:"layout",doc:{name:"view-grid-unit",path:"/views/component/layout/unit/unit.vue"}},{icon:"fa-brands fa-vuejs",label:"Input",name:"vui-input",path:"/components/html/input/input.vue",type:"html",doc:{name:"view-input",path:"/views/component/html/input/input.vue"}},{icon:"fa-brands fa-vuejs",label:"List",name:"vui-list",path:"/components/ui/list/list.vue",type:"ui",doc:{name:"view-list",path:"/views/component/ui/list/list.vue"}},{icon:"fa-brands fa-vuejs",label:"Loader",name:"vui-loader",path:"/components/ui/loader/loader.vue",type:"ui",doc:{name:"view-loader",path:"/views/component/ui/loader/loader.vue"}},{icon:"fa-brands fa-vuejs",label:"Modal",name:"vui-modal",path:"/components/ui/modal/modal.vue",type:"ui",doc:{name:"view-modal",path:"/views/component/ui/modal/modal.vue"}},{icon:"fa-brands fa-vuejs",label:"Nav",name:"vui-nav",path:"/components/ui/nav/nav.vue",type:"ui",doc:{name:"view-nav",path:"/views/component/ui/nav/nav.vue"}},{icon:"fa-brands fa-vuejs",label:"Page",name:"vui-page",path:"/components/ui/page/page.vue",type:"ui",doc:{name:"view-page",path:"/views/component/ui/page/page.vue"}},{icon:"fa-brands fa-vuejs",label:"Pager",name:"vui-pager",path:"/components/ui/pager/pager.vue",type:"ui",doc:{name:"view-pager",path:"/views/component/ui/pager/pager.vue"}},{icon:"fa-brands fa-vuejs",label:"Progress",name:"vui-progress",path:"/components/ui/progress/progress.vue",type:"ui",doc:{name:"view-progress",path:"/views/component/ui/progress/progress.vue"}},{icon:"fa-brands fa-vuejs",label:"Table",name:"vui-table",path:"/components/html/table/table.vue",type:"html",doc:{name:"view-table",path:"/views/component/html/table/table.vue"}},{icon:"fa-brands fa-vuejs",label:"Tabs",name:"vui-tabs",path:"/components/ui/tabs/tabs.vue",type:"ui",doc:{name:"view-tabs",path:"/views/component/ui/tabs/tabs.vue"}},{icon:"fa-brands fa-vuejs",label:"Tag",name:"vui-tag",path:"/components/ui/tag/tag.vue",type:"ui",doc:{name:"view-tag",path:"/views/component/ui/tag/tag.vue"}},{icon:"fa-brands fa-vuejs",label:"Toggle",name:"vui-toggle",path:"/components/ui/toggle/toggle.vue",type:"ui",doc:{name:"view-toggle",path:"/views/component/ui/toggle/toggle.vue"}},{icon:"fa-brands fa-vuejs",label:"Tooltip",name:"vui-tooltip",path:"/components/ui/tooltip/tooltip.vue",type:"ui",doc:{name:"view-tooltip",path:"/views/component/ui/tooltip/tooltip.vue"}}],j={install(e){e.provide("$bus",g());const o=Object.assign({"/components/html/button/button.vue":()=>Promise.resolve().then(()=>M),"/components/html/checkbox/checkbox.vue":()=>Promise.resolve().then(()=>U),"/components/html/footer/footer.vue":()=>Promise.resolve().then(()=>J),"/components/html/form/form.vue":()=>Promise.resolve().then(()=>ee),"/components/html/header/header.vue":()=>Promise.resolve().then(()=>se),"/components/html/input/input.vue":()=>Promise.resolve().then(()=>pe),"/components/html/table/table.vue":()=>Promise.resolve().then(()=>$e),"/components/layout/grid/grid.vue":()=>Promise.resolve().then(()=>Be),"/components/layout/unit/unit.vue":()=>Promise.resolve().then(()=>Ne),"/components/ui/alert/alert.vue":()=>Promise.resolve().then(()=>Ie),"/components/ui/card/card.vue":()=>Promise.resolve().then(()=>Fe),"/components/ui/dropdown/dropdown.vue":()=>Promise.resolve().then(()=>lt),"/components/ui/list/list.vue":()=>Promise.resolve().then(()=>xe),"/components/ui/loader/loader.vue":()=>Promise.resolve().then(()=>rt),"/components/ui/modal/modal.vue":()=>Promise.resolve().then(()=>$t),"/components/ui/nav/nav.vue":()=>Promise.resolve().then(()=>Ct),"/components/ui/page/page.vue":()=>Promise.resolve().then(()=>It),"/components/ui/pager/pager.vue":()=>Promise.resolve().then(()=>At),"/components/ui/progress/progress.vue":()=>Promise.resolve().then(()=>Ht),"/components/ui/tabs/tabs.vue":()=>Promise.resolve().then(()=>Zt),"/components/ui/tag/tag.vue":()=>Promise.resolve().then(()=>lo),"/components/ui/toggle/toggle.vue":()=>Promise.resolve().then(()=>po),"/components/ui/tooltip/tooltip.vue":()=>Promise.resolve().then(()=>fo)});for(const n in o){const a=n.startsWith("..")?n.slice(2):n,s=N.find(l=>l.path===a);s&&e.component(s.name,t.defineAsyncComponent(o[n]))}}},E={en:{},fr:{}},P={duration:125},h={data(){return{toggled:!1,animating:!1}},created(){this.$bus.on("outclick",e=>{this.toggled&&this.componentGroupId!==e&&this.blur()})},methods:{animate(){this.animating||(this.animating=!0,setTimeout(()=>{this.animating=!1},P.duration))},blur(){this.toggled=!1},focus(){this.toggled=!0,this.$bus.emit("outclick",this.componentGroupId)},onAnimate(e=null){this.animate(),e||e===null&&!this.toggled?this.focus():this.blur()}}},c={inject:["$bus"],props:{class:{type:String},disabled:{type:Boolean,default:!1},id:{type:String,default:null},groupId:{type:String,default:null},layout:{type:String,default:"default"},loading:{type:Boolean,default:!1},name:{type:String}},deactivated(){this.$bus.off("outclick")},created(){this.uuid=this.newId()},data(){return{uuid:null}},computed:{componentId(){return this.id?this.id:this.uuid},componentGroupId(){return this.groupId?this.groupId:this.uuid},hasModelValue(){return typeof this.modelValue<"u"},hasValue(){return typeof this.value<"u"}},methods:{hasAttribute(e){return Object.keys(this.$attrs).find(o=>o===e)},hasProp(e){return typeof this[e]<"u"},newId(){return Math.random().toString(36).slice(-6)}}},p=e=>{const o=v.useI18n();return Object.keys(e).forEach(n=>{o.mergeLocaleMessage(n,e[n])}),o},z={icon:{type:String},route:{type:Object},text:{type:String},type:{type:String,default:"button"}},u=(e,o)=>{const n=e.__vccOpts||e;for(const[a,s]of o)n[a]=s;return n},I={name:"VuiButton",mixins:[h,c],props:z,computed:{hasLabel(){var e;return((e=this.text)==null?void 0:e.length)>0||this.$slots.default}},created(){p(E)},methods:{onClick(){this.disabled||(this.onAnimate(),this.route&&this.$router.push(this.route))}}},_=["id"],T=["disabled","type"],O=t.createElementVNode("div",{class:"vui-button-loader"},null,-1);function L(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-button",`vui-button--${e.layout}`,{"vui-button--flat":e.hasAttribute("flat")},{"vui-button--with-label":l.hasLabel},{"vui-button--with-icon":e.icon},{"vui-button--toggled":e.toggled},{"vui-button--animating":!e.disabled&&e.animating},{"vui-button--loading":!e.disabled&&e.loading},{"vui-button--disabled":e.disabled},e.$props.class]),onClick:o[0]||(o[0]=t.withModifiers((...i)=>l.onClick&&l.onClick(...i),["stop"]))},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("button",{class:"vui-button-holder",disabled:e.disabled,type:e.type},[e.icon?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["vui-button-icon",e.icon])},null,2)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(e.text),1)])],8,T),O,t.renderSlot(e.$slots,"append")],10,_)}const b=u(I,[["render",L]]),M=Object.freeze(Object.defineProperty({__proto__:null,default:b},Symbol.toStringTag,{value:"Module"})),A={en:{},fr:{}},F={name:"VuiCheckbox",mixins:[c],props:{checked:{default:void 0,type:Boolean},checkedValue:{default:void 0,types:[Boolean,String,Number,null]},modelValue:{default:void 0,types:[Boolean,String,Number,null]},name:{default:void 0,type:String},uncheckedValue:{default:void 0,types:[Boolean,String,Number,null]},value:{default:void 0,types:[Boolean,String,Number,null]}},emits:["update:model-value"],data(){return{toggled:!1}},computed:{isChecked(){return this.hasProp("checked")?this.checked:this.hasProp("checkedValue")?this.toggled===this.checkedValue:this.toggled}},watch:{modelValue(e){this.toggled=e},value(e){this.toggled=e}},created(){p(A),this.hasModelValue?this.toggled=this.modelValue:this.hasValue&&(this.toggled=this.value)},methods:{onToggle(){this.disabled||(this.hasProp("checkedValue")?this.toggled=this.isChecked?this.uncheckedValue:this.checkedValue:this.toggled=!this.isChecked,this.$emit("update:model-value",this.toggled))}}},G=["id"],q=["name","disabled","required"],D=["for"];function H(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-checkbox",{"vui-checkbox--checked":l.isChecked},{"vui-checkbox--disabled":e.disabled},e.$props.class]),onClick:o[0]||(o[0]=(...i)=>l.onToggle&&l.onToggle(...i))},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("input",{name:e.name,disabled:e.disabled,required:e.hasAttribute("required"),type:"checkbox"},null,8,q),e.$slots.default?(t.openBlock(),t.createElementBlock("label",{key:0,for:e.componentId},[t.renderSlot(e.$slots,"default")],8,D)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"append")],10,G)}const U=Object.freeze(Object.defineProperty({__proto__:null,default:u(F,[["render",H]])},Symbol.toStringTag,{value:"Module"})),X={en:{},fr:{}},K={name:"VuiFooter",mixins:[c],created(){p(X)}},R=["id"];function W(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("footer",{id:e.componentId,class:t.normalizeClass(["vui-footer",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.renderSlot(e.$slots,"default"),t.renderSlot(e.$slots,"append")],10,R)}const J=Object.freeze(Object.defineProperty({__proto__:null,default:u(K,[["render",W]])},Symbol.toStringTag,{value:"Module"})),Q={en:{},fr:{}},Y={name:"VuiForm",mixins:[c],created(){p(Q)}},Z=["id"];function x(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("form",{id:e.componentId,class:t.normalizeClass(["vui-form",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.renderSlot(e.$slots,"default"),t.renderSlot(e.$slots,"append")],10,Z)}const ee=Object.freeze(Object.defineProperty({__proto__:null,default:u(Y,[["render",x]])},Symbol.toStringTag,{value:"Module"})),te={en:{},fr:{}},oe={name:"VuiHeader",mixins:[c],created(){p(te)}},le=["id"];function ne(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("header",{id:e.componentId,class:t.normalizeClass(["vui-header",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.renderSlot(e.$slots,"default"),t.renderSlot(e.$slots,"append")],10,le)}const se=Object.freeze(Object.defineProperty({__proto__:null,default:u(oe,[["render",ne]])},Symbol.toStringTag,{value:"Module"})),ie={en:{"component.input.placeholder":"Type a value ..."},fr:{}},ae={name:"VuiInput",mixins:[c],props:{modelValue:{default:void 0,types:[Boolean,String,Number,null]},maxlength:{type:Number},name:{type:String},placeholder:{default:null,types:[Boolean,String,Number,null]},type:{type:String,default:"text"},value:{default:void 0,types:[Boolean,Number,String,null]}},emits:["input","update:model-value"],data(){return{typed:null}},computed:{placeholderValue(){return this.placeholder?this.placeholder:this.$t("component.input.placeholder")}},watch:{value(e){this.typed=e},modelValue(e){this.typed=e}},created(){p(ie),this.hasModelValue?this.typed=this.modelValue:this.hasValue&&(this.typed=this.value)},methods:{onInput(e){this.typed=this.type==="number"?e.target.valueAsNumber:e.target.value,this.$emit("input",e),this.$emit("update:model-value",this.typed)}}},re=["id"],de=["value","disabled","maxlength","name","placeholder","required","type"];function ce(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-input",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("input",{value:s.typed,disabled:e.disabled,maxlength:e.maxlength,name:e.name,placeholder:l.placeholderValue,required:e.hasAttribute("required"),type:e.type,onInput:o[0]||(o[0]=(...i)=>l.onInput&&l.onInput(...i))},null,40,de),t.renderSlot(e.$slots,"append")],10,re)}const S=u(ae,[["render",ce]]),pe=Object.freeze(Object.defineProperty({__proto__:null,default:S},Symbol.toStringTag,{value:"Module"})),ue={headers:{type:Array,default:()=>[]},itemLabel:{type:String,default:"label"},itemValue:{type:String,default:"value"},items:{type:Array,default:()=>[],required:!0}},me={en:{},fr:{}},he={name:"VuiTable",mixins:[h,c],props:ue,created(){p(me)},methods:{leaf(e,o){return o.split(".").reduce((n,a)=>n&&n[a]?n[a]:null,e)}}},fe=["id"],ge=["data-label"];function be(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-table",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("table",null,[t.createElementVNode("thead",null,[t.createElementVNode("tr",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.headers,(i,r)=>t.renderSlot(e.$slots,`header.${i[e.itemValue]}`,{key:`table-${e.componentId}-header--${r}`,item:i,itemLabel:e.itemLabel,itemValue:e.itemValue,index:r},()=>[t.createElementVNode("th",{class:t.normalizeClass(i.class)},t.toDisplayString(i[e.itemLabel]),3)])),128))])]),t.createElementVNode("tbody",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.items,(i,r)=>t.renderSlot(e.$slots,"default",{key:`table-${e.componentId}-item--${r}`,index:r,item:i,itemLabel:e.itemLabel,itemValue:e.itemValue},()=>[t.createElementVNode("tr",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.headers,(d,m)=>t.renderSlot(e.$slots,`item.${d[e.itemValue]}`,{key:`table-${e.componentId}-item-td--${m}`,index:m,item:i,itemLabel:e.itemLabel,itemValue:e.itemValue},()=>[t.createElementVNode("td",{"data-label":d.label,class:t.normalizeClass(d.class)},t.toDisplayString(l.leaf(i,d.value)),11,ge)])),128))])])),128))])]),t.renderSlot(e.$slots,"append")],10,fe)}const $e=Object.freeze(Object.defineProperty({__proto__:null,default:u(he,[["render",be]])},Symbol.toStringTag,{value:"Module"})),ye={en:{},fr:{}},ke={name:"VuiGrid",mixins:[c],props:{colXs:{default:void 0,types:[Number,String]},colSm:{default:void 0,types:[Number,String]},colMd:{default:void 0,types:[Number,String]},colXl:{default:void 0,types:[Number,String]}},created(){p(ye)}},Ve=["id"];function Se(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-grid",{[`vui-grid--col-xs--${e.colXs}`]:e.colXs},{[`vui-grid--col-sm--${e.colSm}`]:e.colSm},{[`vui-grid--col-md--${e.colMd}`]:e.colMd},{[`vui-grid--col-xl--${e.colXl}`]:e.colXl},e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.renderSlot(e.$slots,"default"),t.renderSlot(e.$slots,"append")],10,Ve)}const Be=Object.freeze(Object.defineProperty({__proto__:null,default:u(ke,[["render",Se]])},Symbol.toStringTag,{value:"Module"})),Ce={en:{},fr:{}},we={name:"VuiGridUnit",mixins:[c],props:{col:{default:void 0,types:[String,Number]}},created(){p(Ce)}};function ve(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vui-grid-unit",{[`vui-grid-unit-col--${e.col}`]:e.col},e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.renderSlot(e.$slots,"default"),t.renderSlot(e.$slots,"append")],2)}const Ne=Object.freeze(Object.defineProperty({__proto__:null,default:u(we,[["render",ve]])},Symbol.toStringTag,{value:"Module"})),je={en:{},fr:{}},Ee={name:"VuiAlert",mixins:[c],props:{icon:{type:String},text:{type:String}},created(){p(je)}},Pe=["id"];function ze(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-alert",`vui-alert--${e.layout}`,e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.renderSlot(e.$slots,"icon",{},()=>[e.icon?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["vui-alert-icon",e.icon])},null,2)):t.createCommentVNode("",!0)]),t.renderSlot(e.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(e.text),1)]),t.renderSlot(e.$slots,"append")],10,Pe)}const B=u(Ee,[["render",ze]]),Ie=Object.freeze(Object.defineProperty({__proto__:null,default:B},Symbol.toStringTag,{value:"Module"})),C={en:{},fr:{}},_e={name:"VuiCard",mixins:[c],created(){p(C)}},Te=["id"],Oe={key:0,class:"vui-card-header"},Le={key:1,class:"vui-card-body"},Me={key:2,class:"vui-card-footer"};function Ae(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-card",`vui-card--${e.layout}`,{"vui-card--flat":e.hasAttribute("flat")},e.$props.class])},[t.renderSlot(e.$slots,"prepend"),e.$slots.header?(t.openBlock(),t.createElementBlock("div",Oe,[t.renderSlot(e.$slots,"header")])):t.createCommentVNode("",!0),e.$slots.body||e.$slots.default?(t.openBlock(),t.createElementBlock("div",Le,[t.renderSlot(e.$slots,"body"),t.renderSlot(e.$slots,"default")])):t.createCommentVNode("",!0),e.$slots.footer?(t.openBlock(),t.createElementBlock("div",Me,[t.renderSlot(e.$slots,"footer")])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"append")],10,Te)}const Fe=Object.freeze(Object.defineProperty({__proto__:null,default:u(_e,[["render",Ae]])},Symbol.toStringTag,{value:"Module"})),Ge={en:{"component.dropdown.placeholder":"Select a value ..."},fr:{}},qe={disableFiltering:{type:Boolean,default:!1},items:{type:Array,required:!0},itemLabel:{type:String,default:"label"},itemValue:{type:String,default:"value"},modelValue:{default:void 0,types:[Boolean,Number,Object,String,null]},placeholder:{types:[Boolean,Number,String]},value:{default:void 0,types:[Boolean,Object,Number,String,null]}};function f(e){return e!=null&&typeof e=="object"&&e["@@functional/placeholder"]===!0}function $(e){return function o(n){return arguments.length===0||f(n)?o:e.apply(this,arguments)}}function De(e){return function o(n,a){switch(arguments.length){case 0:return o;case 1:return f(n)?o:$(function(s){return e(n,s)});default:return f(n)&&f(a)?o:f(n)?$(function(s){return e(s,a)}):f(a)?$(function(s){return e(n,s)}):e(n,a)}}}var He=De(function(o,n){for(var a={},s={},l=0,i=o.length;l<i;)s[o[l]]=1,l+=1;for(var r in n)s.hasOwnProperty(r)||(a[r]=n[r]);return a});const Ue={en:{},fr:{}},Xe={name:"VuiList",mixins:[h,c],props:{autoclose:{type:Boolean,default:!0},disableFiltering:{type:Boolean,default:!1},expanded:{type:Boolean,default:!1},keyword:{type:String},items:{type:Array,required:!0},itemLabel:{type:String,default:"label"},itemValue:{type:String,default:"value"},modelValue:{default:void 0,types:[Boolean,Number,Object,String]},selectable:{type:Boolean},title:{type:String},value:{default:void 0,types:[Boolean,Number,Object,String]}},emits:["update:model-value"],data(){return{last:null,open:{},selected:null}},computed:{hasKeyword(){var e;return!this.disableFiltering&&((e=this.keyword)==null?void 0:e.length)},list(){return this.items.reduce((e,o)=>(this.isGroup(o)?e.push({...o,$$id:this.newId(),value:o[this.itemValue].reduce((n,a)=>!this.hasKeyword||this.match(a)?[...n,this.mapItem(a,this.newId())]:n,[])}):(!this.hasKeyword||this.match(o))&&e.push(this.mapItem(o,this.newId())),e),[])}},watch:{items(){this.autoexpand()},modelValue(e){this.selected=this.mapItem(e)},value(e){this.selected=this.mapItem(e)}},created(){p(Ue),this.hasModelValue?this.selected=this.mapItem(this.modelValue):this.hasValue&&(this.selected=this.mapItem(this.value)),this.autoexpand()},methods:{autoexpand(){this.open=this.items.reduce((e,o,n)=>{if(this.isGroup(o)){const s=o[this.itemValue].findIndex(l=>this.isSelected(l));if(this.expanded||s>-1)return{...e,[n]:!0}}return e},{})},isAnimating(e){const{animating:o,last:n}=this;return n===e&&o},isGroup(e){return Array.isArray(e==null?void 0:e[this.itemValue])},isObject(e){const o=this.itemValue;return this.isGroup(e)?typeof e[o][0]=="object":typeof e=="object"},isSelected(e){return!e.disabled&&typeof this.selected<"u"?typeof e=="object"?this.selected&&this.selected[this.itemValue]===e[this.itemValue]:this.selected&&this.selected===e:!1},isToggled(e){const{last:o,open:n,toggled:a}=this;return o===e&&n[e]&&a},match(e){return typeof e=="object"?`${e[this.itemLabel]}`.includes(this.keyword):`${e}`.includes(this.keyword)},mapItem(e,o){const n=typeof e=="object"?e:{[this.itemLabel]:e,[this.itemValue]:e};return o?{...n,$$id:o}:n},onClick(e){if(!this.disabled&&this.selectable){const o=He(["$$id"],e),n=this.isObject(o)&&this.hasAttribute("return-object")?o:o[this.itemValue];this.selected=this.isSelected(o)?null:o,o.route&&this.$router.push(o.route),this.$emit("update:model-value",n)}},onToggle(e){this.disabled||(this.last=e,this.autoclose?this.open={[e]:!this.open[e]}:this.open[e]=!this.open[e],this.onAnimate(this.open[e]))}}},Ke=["id"],Re={key:0,class:"vui-list-title"},We={class:"vui-list-items"},Je=["onClick"],Qe=["onClick"],Ye=["onClick"];function Ze(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-list",{"vui-list--flat":e.hasAttribute("flat")},e.$props.class])},[t.renderSlot(e.$slots,"prepend"),e.title?(t.openBlock(),t.createElementBlock("div",Re,[t.renderSlot(e.$slots,"placeholder",{item:e.title},()=>[t.createTextVNode(t.toDisplayString(e.title),1)])])):t.createCommentVNode("",!0),t.createElementVNode("div",We,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.list,(i,r)=>(t.openBlock(),t.createElementBlock("div",{key:i.$$id,class:t.normalizeClass([{"vui-list-items-item":!l.isGroup(i)},{"vui-list-items-group-item":l.isGroup(i)}])},[l.isGroup(i)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass([{"vui-list-items-item-label":!l.isGroup(i)},{"vui-list-items-item-label--selectable":e.selectable},{"vui-list-items-item-label--selected":l.isSelected(i)}]),onClick:()=>l.onClick(i)},[i.icon?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["vui-list-items-item-label-icon",i.icon])},null,2)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"item",{index:r,item:i,itemLabel:e.itemLabel,itemValue:e.itemValue},()=>[t.createTextVNode(t.toDisplayString(i[e.itemLabel]),1)])],10,Je)),l.isGroup(i)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createElementVNode("div",{class:t.normalizeClass(["vui-list-items-item-group-label",{"vui-list-items-item-group-label--toggled":l.isToggled(r)},{"vui-list-items-item-group-label--animating":l.isAnimating(r)},{"vui-list-items-item-group-label--open":s.open[r]||l.hasKeyword}]),onClick:t.withModifiers(()=>l.onToggle(r),["stop"])},[t.renderSlot(e.$slots,"group-item",{index:r,item:i,itemLabel:e.itemLabel,itemValue:e.itemValue},()=>[t.createTextVNode(t.toDisplayString(i[e.itemLabel]),1)])],10,Qe),s.open[r]||l.hasKeyword?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(i[e.itemValue],(d,m)=>(t.openBlock(),t.createElementBlock("div",{key:d.$$id,class:t.normalizeClass(["vui-list-items-item-label",{"vui-list-items-item-label--selectable":e.selectable},{"vui-list-items-item-label--selected":l.isSelected(d)}]),onClick:()=>l.onClick(d)},[d.icon?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["vui-list-items-item-label-icon",d.icon])},null,2)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"item",{index:m,item:d,itemLabel:e.itemLabel,itemValue:e.itemValue},()=>[t.createTextVNode(t.toDisplayString(d[e.itemLabel]),1)])],10,Ye))),128)):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2))),128))]),t.renderSlot(e.$slots,"append")],10,Ke)}const y=u(Xe,[["render",Ze]]),xe=Object.freeze(Object.defineProperty({__proto__:null,default:y},Symbol.toStringTag,{value:"Module"})),et={name:"VuiDropdown",components:{VuiInput:S,VuiList:y},mixins:[h,c],props:qe,emits:["input","update:model-value"],data(){return{keyword:null,selected:null}},computed:{listTitle(){return this.selected?this.placeholderLabel:null},placeholderValue(){const{itemValue:e,selected:o}=this,n=typeof(o==null?void 0:o[e])<"u"?o[e]:o;return n===null?this.placeholderLabel:this.labelFromItem(n)},placeholderLabel(){return this.placeholder?this.placeholder:this.$t("component.dropdown.placeholder")}},watch:{modelValue(e){this.selected=e},value(e){this.selected=e}},created(){p(Ge),this.hasModelValue?this.selected=this.modelValue:this.hasValue&&(this.selected=this.value)},methods:{labelFromChild(e,o,n){const{itemValue:a,itemLabel:s}=this;return e[a].reduce((l,i)=>i[a]===n?i[s]:l,o)},labelFromItem(e){const{itemValue:o,itemLabel:n}=this;return this.items.reduce((a,s)=>Array.isArray(s[o])?this.labelFromChild(s,a,e):s[o]===e?s[n]:a,e)},onClick(){this.disabled||this.onAnimate()},onInput(e){this.$emit("input",e),this.onAnimate(!0),this.keyword=e.target.value?e.target.value:null},onToggle(e){this.keyword=null,this.blur(),this.hasProp("value")||(this.selected=e),this.$emit("update:model-value",e)}}},tt=["id"];function ot(e,o,n,a,s,l){const i=t.resolveComponent("vui-input"),r=t.resolveComponent("vui-list");return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-dropdown",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("div",{class:t.normalizeClass(["vui-dropdown-placeholder",{"vui-dropdown-placeholder--toggled":e.toggled},{"vui-dropdown-placeholder--animating":e.animating},{"vui-dropdown-placeholder--disabled":e.disabled}]),onClick:o[0]||(o[0]=t.withModifiers((...d)=>l.onClick&&l.onClick(...d),["stop"]))},[t.renderSlot(e.$slots,"keyword",{keyword:s.keyword},()=>[t.createVNode(i,{value:s.keyword,type:"text",class:"vui-dropdown-placeholder-label",placeholder:l.placeholderValue,onInput:l.onInput},null,8,["value","placeholder","onInput"])])],2),e.toggled?(t.openBlock(),t.createBlock(r,t.mergeProps({key:0,modelValue:s.selected,"onUpdate:modelValue":o[1]||(o[1]=d=>s.selected=d)},e.$attrs,{class:"vui-dropdown-list","group-id":e.componentGroupId,"disable-filtering":e.disableFiltering,disabled:e.disabled,items:e.items,"item-label":e.itemLabel,"item-value":e.itemValue,keyword:s.keyword,selectable:!0,title:l.listTitle,"onUpdate:modelValue":l.onToggle}),t.createSlots({_:2},[e.$slots.placeholder?{name:"placeholder",fn:t.withCtx(()=>[t.renderSlot(e.$slots,"placeholder")]),key:"0"}:void 0,e.$slots["group-item"]?{name:"group-item",fn:t.withCtx(()=>[t.renderSlot(e.$slots,"group-item")]),key:"1"}:void 0,e.$slots.item?{name:"item",fn:t.withCtx(()=>[t.renderSlot(e.$slots,"item")]),key:"2"}:void 0]),1040,["modelValue","group-id","disable-filtering","disabled","items","item-label","item-value","keyword","title","onUpdate:modelValue"])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"append")],10,tt)}const lt=Object.freeze(Object.defineProperty({__proto__:null,default:u(et,[["render",ot]])},Symbol.toStringTag,{value:"Module"})),nt={en:{"component.loader.text":"It's loading..."},fr:{}},st={name:"VuiLoader",components:{VuiAlert:B},mixins:[c],props:{icon:{type:String,default:"fa-sharp fa-solid fa-spinner"},text:{type:String}},created(){p(nt)}},it={class:"vui-loader-body"};function at(e,o,n,a,s,l){const i=t.resolveComponent("vui-alert");return t.openBlock(),t.createBlock(i,{id:e.componentId,class:t.normalizeClass(["vui-loader",`vui-loader--${e.layout}`,{"vui-loader--flat":e.hasAttribute("flat")},e.$props.class])},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"prepend"),t.renderSlot(e.$slots,"icon",{},()=>[t.createElementVNode("i",{class:t.normalizeClass(["vui-loader-icon",e.icon])},null,2)]),t.renderSlot(e.$slots,"default",{},()=>[t.createElementVNode("span",it,t.toDisplayString(e.text?e.text:e.$t("component.loader.text")),1)]),t.renderSlot(e.$slots,"append")]),_:3},8,["id","class"])}const rt=Object.freeze(Object.defineProperty({__proto__:null,default:u(st,[["render",at]])},Symbol.toStringTag,{value:"Module"})),dt={en:{"component.button.close":"Close"},fr:{}},ct={name:"VuiModal",components:{VuiButton:b},mixins:[c],props:{loading:{type:Boolean},modelValue:{default:void 0,type:Boolean},showFooter:{type:Boolean},showFooterClose:{type:Boolean},showHeader:{type:Boolean},showHeaderClose:{type:Boolean},title:{type:String},value:{default:void 0,type:Boolean}},emits:["update:model-value"],data(){return{isVisible:!1}},computed:{isHeaderVisible(){return this.$slots.header||this.showHeader||this.showHeaderClose},isFooterVisible(){return this.$slots.footer||this.showFooter||this.showFooterClose}},watch:{modelValue(e){this.isVisible=e},value(e){this.isVisible=e}},created(){p(dt),this.hasModelValue?this.isVisible=this.modelValue:this.hasValue&&(this.isVisible=this.value)},methods:{onToggle(){this.disabled||(this.isVisible=!this.isVisible,this.$emit("update:model-value",this.isVisible))}}},pt=["id"],ut={class:"vui-modal-content"},mt={key:0,class:"vui-modal-content-header"},ht={key:0,class:"vui-modal-content-header-title"},ft={key:1,class:"vui-modal-content-body"},gt={key:2,class:"vui-modal-content-footer"};function bt(e,o,n,a,s,l){const i=t.resolveComponent("vui-button");return s.isVisible?(t.openBlock(),t.createElementBlock("div",{key:0,id:e.componentId,class:t.normalizeClass(["vui-modal",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("div",ut,[l.isHeaderVisible?(t.openBlock(),t.createElementBlock("div",mt,[e.title?(t.openBlock(),t.createElementBlock("span",ht,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),e.showHeaderClose?(t.openBlock(),t.createElementBlock("i",{key:1,class:"fa-regular fa-circle-xmark",onClick:o[0]||(o[0]=(...r)=>l.onToggle&&l.onToggle(...r))})):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"header")])):t.createCommentVNode("",!0),e.$slots.body||e.$slots.default?(t.openBlock(),t.createElementBlock("div",ft,[t.renderSlot(e.$slots,"body"),t.renderSlot(e.$slots,"default")])):t.createCommentVNode("",!0),l.isFooterVisible?(t.openBlock(),t.createElementBlock("div",gt,[e.showHeaderClose?(t.openBlock(),t.createBlock(i,{key:0,text:e.$t("component.button.close"),onClick:l.onToggle},null,8,["text","onClick"])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"footer")])):t.createCommentVNode("",!0)]),t.renderSlot(e.$slots,"append")],10,pt)):t.createCommentVNode("",!0)}const $t=Object.freeze(Object.defineProperty({__proto__:null,default:u(ct,[["render",bt]])},Symbol.toStringTag,{value:"Module"})),yt={en:{},fr:{}},kt={name:"VuiNav",components:{VuiList:y},mixins:[c],props:{items:{type:Array,required:!0},itemLabel:{type:String},itemValue:{type:String},modelValue:{default:void 0,types:[Boolean,Number,Object,String]},showIcons:{type:Boolean,default:!0},value:{default:void 0,types:[Boolean,Number,Object,String]}},emits:["update:model-value"],data(){return{selected:null}},watch:{modelValue(e){this.selected=e},value(e){this.selected=e}},created(){p(yt),this.hasModelValue?this.selected=this.modelValue:this.hasValue&&(this.selected=this.value)},methods:{onClick(e){this.disabled||this.$emit("update:model-value",e)}}},Vt=["id"],St={key:1,class:"vui-list-items-item-label-text"};function Bt(e,o,n,a,s,l){const i=t.resolveComponent("router-link"),r=t.resolveComponent("vui-list");return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-nav",{"vui-nav--flat":e.hasAttribute("flat")},e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createVNode(r,{modelValue:s.selected,"onUpdate:modelValue":[o[0]||(o[0]=d=>s.selected=d),l.onClick],class:"vui-nav-list","group-id":e.componentGroupId,disabled:e.disabled,"item-label":e.itemLabel,"item-value":e.itemValue,items:e.items,selectable:!e.disabled},{item:t.withCtx(({index:d,item:m,itemValue:k,itemLabel:V})=>[t.renderSlot(e.$slots,"item",{index:d,item:m,itemLabel:V,itemValue:k},()=>[e.showIcons?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["fa-solid",{"fa-location-dot":!d},{"fa-chevron-right":d}])},null,2)):t.createCommentVNode("",!0),m.route?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("span",St,t.toDisplayString(k?m[V]:m),1)),m.route?(t.openBlock(),t.createBlock(i,{key:2,to:m.route,class:"vui-list-items-item-label-text"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(k?m[V]:m),1)]),_:2},1032,["to"])):t.createCommentVNode("",!0)])]),_:3},8,["modelValue","group-id","disabled","item-label","item-value","items","selectable","onUpdate:modelValue"]),t.renderSlot(e.$slots,"append")],10,Vt)}const w=u(kt,[["render",Bt]]),Ct=Object.freeze(Object.defineProperty({__proto__:null,default:w},Symbol.toStringTag,{value:"Module"})),wt={en:{},fr:{}},vt={name:"VuiPage",mixins:[h,c],created(){p(wt)},methods:{outclick(){this.$bus.emit("outclick",this.componentGroupId)}}},Nt=["id"],jt={key:0,class:"vui-page-header"},Et={key:1,class:"vui-page-body"},Pt={key:2,class:"vui-page-footer"};function zt(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-page",`vui-page--${e.layout}`,{"vui-page--flat":e.hasAttribute("flat")},e.$props.class]),onClick:o[0]||(o[0]=(...i)=>l.outclick&&l.outclick(...i))},[t.renderSlot(e.$slots,"prepend"),e.$slots.header?(t.openBlock(),t.createElementBlock("div",jt,[t.renderSlot(e.$slots,"header")])):t.createCommentVNode("",!0),e.$slots.body||e.$slots.default?(t.openBlock(),t.createElementBlock("div",Et,[t.renderSlot(e.$slots,"body"),t.renderSlot(e.$slots,"default")])):t.createCommentVNode("",!0),e.$slots.footer?(t.openBlock(),t.createElementBlock("div",Pt,[t.renderSlot(e.$slots,"footer")])):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"append")],10,Nt)}const It=Object.freeze(Object.defineProperty({__proto__:null,default:u(vt,[["render",zt]])},Symbol.toStringTag,{value:"Module"})),_t={en:{"page.component.pager.doc.prop.count":"Total number of paginated items","page.component.pager.doc.prop.disabled":"Binds the disabled state condition","page.component.pager.doc.prop.loading":"Binds the loading state","page.component.pager.doc.prop.size":"Number of paginated items per page","page.component.pager.doc.prop.value":"Selected item in the pager","page.component.pager.doc.prop.v-model":"Binds the model changes of pager","page.component.pager.doc.slot.first":"Slot for first page button","page.component.pager.doc.slot.last":"Slot for last page button","page.component.pager.doc.slot.previous":"Slot for previous page button","page.component.pager.doc.slot.next":"Slot for next page button"},fr:{}},Tt={name:"VuiPager",components:{VuiButton:b,VuiNav:w},mixins:[h,c],props:{count:{type:Number,default:0},modelValue:{default:void 0,type:Number},value:{default:void 0,type:Number},size:{type:Number,default:25}},emits:["update:model-value"],data(){return{page:1}},computed:{isLast(){return this.page===this.last},last(){return Math.ceil(this.count/this.size)},pages(){if(this.last){const e=[...Array.from({length:this.last},(a,s)=>s+1)],o=e.slice(0,this.page),n=e.slice(this.page,e.length);return[...o.slice(-(n.length>2?2:2+(2-n.length))),...n.slice(0,o.length>2?2:2+(2-o.length))]}return[]}},watch:{modelValue(e){this.page=e},value(e){this.page=e}},created(){p(_t),this.hasModelValue?this.page=this.modelValue:this.hasValue&&(this.page=this.value)},methods:{onFirst(){!this.disabled&&this.page>1&&(this.page=1,this.onPage())},onLast(){!this.disabled&&!this.isLast&&(this.page=this.last,this.onPage())},onNext(){!this.disabled&&!this.isLast&&(this.page++,this.onPage())},onPrevious(){!this.disabled&&this.page>1&&(this.page--,this.onPage())},onPage(){this.$emit("update:model-value",this.page)}}},Ot=["id"],Lt={class:"vui-pager-content"};function Mt(e,o,n,a,s,l){const i=t.resolveComponent("vui-button"),r=t.resolveComponent("vui-nav");return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-pager",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("div",Lt,[t.renderSlot(e.$slots,"first",{},()=>[t.createVNode(i,t.mergeProps(e.$attrs,{disabled:s.page===1,icon:"fa-solid fa-angles-left",class:"vui-button--first",onClick:l.onFirst}),null,16,["disabled","onClick"])]),t.renderSlot(e.$slots,"previous",{},()=>[t.createVNode(i,t.mergeProps(e.$attrs,{disabled:s.page===1,icon:"fa-solid fa-chevron-left",class:"vui-button--previous",onClick:l.onPrevious}),null,16,["disabled","onClick"])]),t.renderSlot(e.$slots,"pages",{},()=>[t.createElementVNode("div",{class:t.normalizeClass(["ellipse",{visible:l.last>4&&s.page+2>4}])}," ... ",2),t.createVNode(r,t.mergeProps({modelValue:s.page,"onUpdate:modelValue":o[0]||(o[0]=d=>s.page=d)},e.$attrs,{flat:e.hasAttribute("flat"),items:l.pages,"show-icons":!1,"onUpdate:modelValue":l.onPage}),null,16,["modelValue","flat","items","onUpdate:modelValue"]),t.createElementVNode("div",{class:t.normalizeClass(["ellipse",{visible:l.last>4&&s.page+2<l.last}])}," ... ",2)]),t.renderSlot(e.$slots,"next",{},()=>[t.createVNode(i,t.mergeProps(e.$attrs,{disabled:l.isLast,icon:"fa-solid fa-chevron-right",class:"vui-button--next",onClick:l.onNext}),null,16,["disabled","onClick"])]),t.renderSlot(e.$slots,"previous",{},()=>[t.createVNode(i,t.mergeProps(e.$attrs,{disabled:l.isLast,icon:"fa-solid fa-angles-right",class:"vui-button--last",onClick:l.onLast}),null,16,["disabled","onClick"])])]),t.renderSlot(e.$slots,"append")],10,Ot)}const At=Object.freeze(Object.defineProperty({__proto__:null,default:u(Tt,[["render",Mt]])},Symbol.toStringTag,{value:"Module"})),Ft={en:{},fr:{}},Gt={name:"VuiProgress",mixins:[c],props:{min:{type:Number,required:!0},max:{type:Number,required:!0},value:{type:Number,required:!0}},computed:{width(){const e=Math.abs(this.value),o=Math.abs(this.min),n=Math.abs(this.max);return`${Math.round(e/(o+n)*100)}%`}},created(){p(Ft)}},qt=["id"];function Dt(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-progress",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("div",{class:t.normalizeClass(["vui-progress-bar",`vui-progress-bar--${e.layout}`])},[t.createElementVNode("div",{class:"vui-progress-bar-cursor",style:t.normalizeStyle({width:l.width})},null,4)],2),t.renderSlot(e.$slots,"append")],10,qt)}const Ht=Object.freeze(Object.defineProperty({__proto__:null,default:u(Gt,[["render",Dt]])},Symbol.toStringTag,{value:"Module"})),Ut={en:{},fr:{}},Xt={name:"VuiTabs",mixins:[c],props:{icon:{type:String},items:{type:Array,required:!0},itemLabel:{type:String,default:"label"},itemValue:{type:String,default:"value"},modelValue:{type:String},value:{type:String}},emits:["update:model-value"],data(){return{active:null}},computed:{tabs(){return this.items.map(e=>({...e,$$id:this.newId()}))}},watch:{modelValue(e){this.active=e},value(e){this.active=e}},created(){var e;if(p(Ut),this.hasModelValue)this.active=this.modelValue;else if(this.hasValue)this.active=this.value;else if((e=this.items)!=null&&e.length){const o=this.items[0];this.active=o[this.itemValue]}},methods:{toggle(e){this.disabled||(this.active=e,this.$emit("update:model-value",this.active))}}},Kt=["id"],Rt={class:"vui-tabs-tabs"},Wt=["onClick"],Jt={class:"label"},Qt={class:"vui-tabs-slots"};function Yt(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-tabs",e.$props.class])},[t.renderSlot(e.$slots,"prepend"),t.createElementVNode("div",Rt,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.tabs,i=>(t.openBlock(),t.createElementBlock("div",{key:i.$$id,class:t.normalizeClass(["vui-tabs-tabs-tab",{"vui-tabs-tabs-tab--with-icon":e.icon},{"vui-tabs-tabs-tab--active":i[e.itemValue]===s.active}]),onClick:()=>l.toggle(i[e.itemValue])},[e.icon?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["vui-tabs-tabs-tab-icon",e.icon])},null,2)):t.createCommentVNode("",!0),t.createElementVNode("span",Jt,t.toDisplayString(i[e.itemLabel]),1)],10,Wt))),128))]),t.createElementVNode("div",Qt,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.items,(i,r)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:`slot-${i.$$id}`},[i[e.itemValue]===s.active?t.renderSlot(e.$slots,i[e.itemValue],{key:0,index:r}):t.createCommentVNode("",!0)],64))),128))]),t.renderSlot(e.$slots,"append")],10,Kt)}const Zt=Object.freeze(Object.defineProperty({__proto__:null,default:u(Xt,[["render",Yt]])},Symbol.toStringTag,{value:"Module"})),xt={en:{},fr:{}},eo={name:"VuiTag",mixins:[c],props:{icon:{type:String},text:{type:String}},created(){p(xt)}},to=["id"];function oo(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,class:t.normalizeClass(["vui-tag",`vui-tag--${e.layout}`,{"vui-tag--with-icon":e.icon},e.$props.class])},[t.renderSlot(e.$slots,"prepend"),e.icon?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["vui-tag-icon",e.icon])},null,2)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"default",{},()=>[t.createTextVNode(t.toDisplayString(e.text),1)]),t.renderSlot(e.$slots,"append")],10,to)}const lo=Object.freeze(Object.defineProperty({__proto__:null,default:u(eo,[["render",oo]])},Symbol.toStringTag,{value:"Module"})),no={en:{},fr:{}},so={name:"VuiToggle",mixins:[c],props:{checked:{default:void 0,type:Boolean},checkedValue:{default:void 0,types:[Boolean,String,Number,null]},modelValue:{default:void 0,types:[Boolean,String,Number,null]},name:{type:String},uncheckedValue:{default:void 0,types:[Boolean,String,Number,null]},value:{default:void 0,types:[Boolean,String,Number,null]}},emits:["update:model-value"],data(){return{toggled:!1}},computed:{isChecked(){return this.hasProp("checked")?this.checked:this.hasProp("checkedValue")?this.toggled===this.checkedValue:this.toggled}},watch:{modelValue(e){this.toggled=e},value(e){this.toggled=e}},created(){p(no),this.hasModelValue?this.toggled=this.modelValue:this.hasValue&&(this.toggled=this.value)},methods:{onToggle(){this.disabled||(this.hasProp("checkedValue")?this.toggled=this.isChecked?this.uncheckedValue:this.checkedValue:this.toggled=!this.isChecked,this.$emit("update:model-value",this.toggled))}}},io=["id","name"],ao=t.createElementVNode("div",{class:"vui-toggle-slider"},[t.createElementVNode("div",{class:"vui-toggle-slider-button"})],-1),ro=["for"];function co(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,name:e.componentId,class:t.normalizeClass(["vui-toggle",{"vui-toggle--checked":l.isChecked},{"vui-toggle--disabled":e.disabled},e.$props.class]),onClick:o[0]||(o[0]=t.withModifiers((...i)=>l.onToggle&&l.onToggle(...i),["stop"]))},[t.renderSlot(e.$slots,"prepend"),ao,e.$slots.default?(t.openBlock(),t.createElementBlock("label",{key:0,class:"vui-toggle-label",for:e.componentId},[t.renderSlot(e.$slots,"default")],8,ro)):t.createCommentVNode("",!0),t.renderSlot(e.$slots,"append")],10,io)}const po=Object.freeze(Object.defineProperty({__proto__:null,default:u(so,[["render",co]])},Symbol.toStringTag,{value:"Module"})),uo={name:"VuiTooltip",mixins:[c],props:{icon:{type:String},position:{type:String,default:"right"},text:{type:String},modelValue:{default:void 0,type:Boolean},value:{default:void 0,type:Boolean}},emits:["update:model-value"],data(){return{dimension:{content:{},holder:{}},show:!1}},computed:{display(){return this.show?"block":"none"},left(){const{content:e,holder:o}=this.dimension;switch(this.position){case"left":return o.left-(e.width+15);case"bottom":case"top":{const n=e.width-o.width;return o.left-n/2}case"right":default:return o.right+15}},top(){const{content:e,holder:o}=this.dimension;switch(this.position){case"bottom":return o.top+o.height+15;case"top":return o.top-e.height-15;case"left":case"right":default:return o.top-o.height/2}}},watch:{async modelValue(e){this.show=e,e&&(await this.$nextTick(),this.setPosition())},async value(e){this.show=e,e&&(await this.$nextTick(),this.setPosition())}},created(){p(C),this.hasModelValue&&(this.show=this.modelValue),this.hasValue&&(this.show=this.value),this.$bus.on("outclick",()=>{this.disabled||(this.show=!1,this.$emit("update:model-value",this.show))})},methods:{setPosition(){this.dimension.content=this.$refs.tooltip.getBoundingClientRect(),this.dimension.holder=this.$parent.$el.getBoundingClientRect()}}},mo=["id"];function ho(e,o,n,a,s,l){return t.openBlock(),t.createElementBlock("div",{id:e.componentId,ref:"tooltip",class:t.normalizeClass(["vui-tooltip",{"vui-tooltip--with-icon":e.icon},e.$props.class]),style:t.normalizeStyle({position:"fixed",display:l.display,top:`${l.top}px`,left:`${l.left}px`})},[t.createElementVNode("i",{class:t.normalizeClass(["vui-tooltip-pointer",`vui-tooltip-pointer--${e.position}`])},null,2),e.icon?(t.openBlock(),t.createElementBlock("i",{key:0,class:t.normalizeClass(["vui-tooltip-icon",e.icon])},null,2)):t.createCommentVNode("",!0),e.$slots.default?t.renderSlot(e.$slots,"default",{key:1}):t.createCommentVNode("",!0),e.text?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[t.createTextVNode(t.toDisplayString(e.text),1)],64)):t.createCommentVNode("",!0)],14,mo)}const fo=Object.freeze(Object.defineProperty({__proto__:null,default:u(uo,[["render",ho]])},Symbol.toStringTag,{value:"Module"}));return j});
|
package/package.json
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
{
|
|
2
|
+
"author": "Christophe BRAGARD",
|
|
3
|
+
"description": "Another yet Vue UI library",
|
|
4
|
+
"homepage": "https://github.com/e-xode/vui#readme",
|
|
5
|
+
"name": "@e-xode/vui",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist"
|
|
9
|
+
],
|
|
10
|
+
"main": "./dist/vui.js",
|
|
11
|
+
"module": "./dist/vui.esm.js",
|
|
12
|
+
".": {
|
|
13
|
+
"import": "./dist/vui.js",
|
|
14
|
+
"require": "./dist/vui.esm.js"
|
|
15
|
+
},
|
|
16
|
+
"./style.css": {
|
|
17
|
+
"import": "./dist/style.css",
|
|
18
|
+
"require": "./dist/style.css"
|
|
19
|
+
},
|
|
20
|
+
"version": "0.6.5",
|
|
21
|
+
"repository": {
|
|
22
|
+
"type": "git",
|
|
23
|
+
"url": "git+https://github.com/e-xode/vui.git"
|
|
24
|
+
},
|
|
25
|
+
"bugs": {
|
|
26
|
+
"url": "https://github.com/e-xode/vui/issues"
|
|
27
|
+
},
|
|
28
|
+
"scripts": {
|
|
29
|
+
"build": "npm run build:components && npm run build:doc",
|
|
30
|
+
"build:components": "vite --config vite.components.mjs build",
|
|
31
|
+
"build:doc": "vite --config vite.doc.mjs build src/doc",
|
|
32
|
+
"dev": "vite --host --config vite.doc.mjs src/doc",
|
|
33
|
+
"lint": "eslint --ext .js,.mjs,.vue src",
|
|
34
|
+
"lint:fix": "eslint --fix --ext .js,.mjs,.vue src",
|
|
35
|
+
"preview": "vite --config vite.doc.mjs preview src/doc",
|
|
36
|
+
"test:unit": "vitest --config vite.components.mjs run",
|
|
37
|
+
"test:unit:coverage": "vitest --config vite.components.mjs run --coverage",
|
|
38
|
+
"test:unit:watch": "vitest --config vite.components.mjs"
|
|
39
|
+
},
|
|
40
|
+
"babel": {
|
|
41
|
+
"presets": [
|
|
42
|
+
[
|
|
43
|
+
"@babel/preset-env"
|
|
44
|
+
]
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
"eslintConfig": {
|
|
48
|
+
"root": true,
|
|
49
|
+
"extends": [
|
|
50
|
+
"plugin:vue/vue3-recommended",
|
|
51
|
+
"eslint:recommended",
|
|
52
|
+
"prettier"
|
|
53
|
+
],
|
|
54
|
+
"parserOptions": {
|
|
55
|
+
"ecmaVersion": "latest"
|
|
56
|
+
},
|
|
57
|
+
"rules": {
|
|
58
|
+
"comma-dangle": ["error", "never"],
|
|
59
|
+
"indent": ["error", 4, { "SwitchCase": 1 }],
|
|
60
|
+
"no-console": ["error"],
|
|
61
|
+
"quotes": ["error", "single"],
|
|
62
|
+
"semi": ["error", "never"],
|
|
63
|
+
"vue/attributes-order": ["error"],
|
|
64
|
+
"vue/require-explicit-emits": ["error"],
|
|
65
|
+
"vue/html-closing-bracket-newline": ["error"],
|
|
66
|
+
"vue/html-indent": ["error", 4],
|
|
67
|
+
"vue/multi-word-component-names": "off",
|
|
68
|
+
"vue/no-v-html": "off",
|
|
69
|
+
"vue/order-in-components": ["error"],
|
|
70
|
+
"vue/require-default-prop": ["error"],
|
|
71
|
+
"vue/require-prop-types": ["error"],
|
|
72
|
+
"vue/v-on-event-hyphenation": ["error"]
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
"dependencies": {
|
|
76
|
+
"axios": "1.6.8",
|
|
77
|
+
"dayjs": "1.11.10",
|
|
78
|
+
"@fortawesome/fontawesome-free": "6.5.2",
|
|
79
|
+
"highlight.js": "11.9.0",
|
|
80
|
+
"mitt": "3.0.1",
|
|
81
|
+
"sass": "^1.72.0",
|
|
82
|
+
"vue": "^3.4.21",
|
|
83
|
+
"vue-i18n": "^9.10.2",
|
|
84
|
+
"vue-router": "^4.3.0",
|
|
85
|
+
"vuetify": "^3.5.13",
|
|
86
|
+
"vuex": "^4.1.0"
|
|
87
|
+
},
|
|
88
|
+
"devDependencies": {
|
|
89
|
+
"@babel/core": "^7.24.3",
|
|
90
|
+
"@babel/preset-env": "^7.24.3",
|
|
91
|
+
"@rushstack/eslint-patch": "^1.10.1",
|
|
92
|
+
"@types/jsdom": "^21.1.6",
|
|
93
|
+
"@types/node": "^20.12.2",
|
|
94
|
+
"@vitejs/plugin-vue": "^5.0.4",
|
|
95
|
+
"@vitest/coverage-istanbul": "^1.4.0",
|
|
96
|
+
"@vue/test-utils": "^2.4.5",
|
|
97
|
+
"eslint": "^8.57.0",
|
|
98
|
+
"eslint-config-prettier": "^9.1.0",
|
|
99
|
+
"eslint-plugin-vue": "^9.24.0",
|
|
100
|
+
"jsdom": "^24.0.0",
|
|
101
|
+
"msw": "2.2.13",
|
|
102
|
+
"prettier": "3.2.5",
|
|
103
|
+
"ramda": "^0.29.1",
|
|
104
|
+
"vite": "^5.2.7",
|
|
105
|
+
"vitest": "^1.4.0"
|
|
106
|
+
}
|
|
107
|
+
}
|