UNPKG

primevue

Version:

PrimeVue is an open source UI library for Vue featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with PrimeBloc

2 lines (1 loc) 1.97 kB
import t from"primevue/icons/bars";import i from"primevue/icons/thlarge";import e from"primevue/basecomponent";import r from"primevue/dataviewlayoutoptions/style";import{resolveComponent as o,openBlock as s,createElementBlock as n,mergeProps as a,createElementVNode as u,renderSlot as l,createVNode as c,normalizeProps as d,guardReactiveProps as p}from"vue";var m={name:"DataViewLayoutOptions",extends:{name:"BaseDataViewLayoutOptions",extends:e,props:{modelValue:String},style:r,provide:function(){return{$parentInstance:this}}},emits:["update:modelValue"],data:function(){return{isListButtonPressed:!1,isGridButtonPressed:!1}},methods:{changeLayout:function(t){this.$emit("update:modelValue",t),"list"===t?(this.isListButtonPressed=!0,this.isGridButtonPressed=!1):"grid"===t&&(this.isGridButtonPressed=!0,this.isListButtonPressed=!1)}},computed:{listViewAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.listView:void 0},gridViewAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.gridView:void 0}},components:{BarsIcon:t,ThLargeIcon:i}},g=["aria-label","aria-pressed"],f=["aria-label","aria-pressed"];m.render=function(t,i,e,r,m,h){var v=o("BarsIcon"),B=o("ThLargeIcon");return s(),n("div",a({class:t.cx("root"),role:"group"},t.ptm("root")),[u("button",a({"aria-label":h.listViewAriaLabel,class:t.cx("listButton"),onClick:i[0]||(i[0]=function(t){return h.changeLayout("list")}),type:"button","aria-pressed":m.isListButtonPressed},t.ptm("listButton")),[l(t.$slots,"listicon",{},(function(){return[c(v,d(p(t.ptm("listIcon"))),null,16)]}))],16,g),u("button",a({"aria-label":h.gridViewAriaLabel,class:t.cx("gridButton"),onClick:i[1]||(i[1]=function(t){return h.changeLayout("grid")}),type:"button","aria-pressed":m.isGridButtonPressed},t.ptm("gridButton")),[l(t.$slots,"gridicon",{},(function(){return[c(B,d(p(t.ptm("gridIcon"))),null,16)]}))],16,f)],16)};export{m as default};