accessibleprimevue
Version:
Note: This is the forked version of the Primefaces/PrimeVue repository. Since V3 has reached its EOL this is use to fix identified accessibility bugs in the v3 version of primevue. PrimeVue is an open source UI library for Vue featuring a rich set of 80+
2 lines (1 loc) • 3.04 kB
JavaScript
this.primevue=this.primevue||{},this.primevue.button=function(e,t,n,l,o,a){"use strict";function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=i(e),r=i(t),d=i(n),c={name:"Button",extends:{name:"BaseButton",extends:i(l).default,props:{label:{type:String,default:null},icon:{type:String,default:null},iconPos:{type:String,default:"left"},iconClass:{type:String,default:null},badge:{type:String,default:null},badgeClass:{type:String,default:null},badgeSeverity:{type:String,default:null},loading:{type:Boolean,default:!1},loadingIcon:{type:String,default:void 0},link:{type:Boolean,default:!1},severity:{type:String,default:null},raised:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},text:{type:Boolean,default:!1},outlined:{type:Boolean,default:!1},size:{type:String,default:null},plain:{type:Boolean,default:!1}},style:i(o).default,provide:function(){return{$parentInstance:this}}},inheritAttrs:!1,methods:{getPTOptions:function(e){return("root"===e?this.ptmi:this.ptm)(e,{context:{disabled:this.disabled}})}},computed:{disabled:function(){return this.$attrs.disabled||""===this.$attrs.disabled||this.loading},defaultAriaLabel:function(){return this.label?this.label+(this.badge?" "+this.badge:""):this.$attrs.ariaLabel},hasIcon:function(){return this.icon||this.$slots.icon}},components:{SpinnerIcon:r.default,Badge:s.default},directives:{ripple:d.default}},u=["aria-label","disabled","data-p-severity"];return c.render=function(e,t,n,l,o,i){var s=a.resolveComponent("SpinnerIcon"),r=a.resolveComponent("Badge"),d=a.resolveDirective("ripple");return a.withDirectives((a.openBlock(),a.createElementBlock("button",a.mergeProps({class:e.cx("root"),type:"button","aria-label":i.defaultAriaLabel,disabled:i.disabled},i.getPTOptions("root"),{"data-p-severity":e.severity}),[a.renderSlot(e.$slots,"default",{},(function(){return[e.loading?a.renderSlot(e.$slots,"loadingicon",{key:0,class:a.normalizeClass([e.cx("loadingIcon"),e.cx("icon")])},(function(){return[e.loadingIcon?(a.openBlock(),a.createElementBlock("span",a.mergeProps({key:0,class:[e.cx("loadingIcon"),e.cx("icon"),e.loadingIcon]},e.ptm("loadingIcon")),null,16)):(a.openBlock(),a.createBlock(s,a.mergeProps({key:1,class:[e.cx("loadingIcon"),e.cx("icon")],spin:""},e.ptm("loadingIcon")),null,16,["class"]))]})):a.renderSlot(e.$slots,"icon",{key:1,class:a.normalizeClass([e.cx("icon")])},(function(){return[e.icon?(a.openBlock(),a.createElementBlock("span",a.mergeProps({key:0,class:[e.cx("icon"),e.icon,e.iconClass]},e.ptm("icon")),null,16)):a.createCommentVNode("",!0)]})),a.createElementVNode("span",a.mergeProps({class:e.cx("label")},e.ptm("label")),a.toDisplayString(e.label||" "),17),e.badge?(a.openBlock(),a.createBlock(r,a.mergeProps({key:2,value:e.badge,class:e.badgeClass,severity:e.badgeSeverity,unstyled:e.unstyled},e.ptm("badge")),null,16,["value","class","severity","unstyled"])):a.createCommentVNode("",!0)]}))],16,u)),[[d]])},c}(primevue.badge,primevue.icons.spinner,primevue.ripple,primevue.basecomponent,primevue.button.style,Vue);