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) 2.17 kB
"use strict";var e=require("primevue/icons/bars"),t=require("primevue/icons/thlarge"),r=require("primevue/basecomponent"),i=require("primevue/dataviewlayoutoptions/style"),o=require("vue");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=n(e),s=n(t),u={name:"DataViewLayoutOptions",extends:{name:"BaseDataViewLayoutOptions",extends:n(r).default,props:{modelValue:String},style:n(i).default,provide:function(){return{$parentInstance:this}}},emits:["update:modelValue"],data:function(){return{isListButtonPressed:!1,isGridButtonPressed:!1}},methods:{changeLayout:function(e){this.$emit("update:modelValue",e),"list"===e?(this.isListButtonPressed=!0,this.isGridButtonPressed=!1):"grid"===e&&(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:a.default,ThLargeIcon:s.default}},l=["aria-label","aria-pressed"],d=["aria-label","aria-pressed"];u.render=function(e,t,r,i,n,a){var s=o.resolveComponent("BarsIcon"),u=o.resolveComponent("ThLargeIcon");return o.openBlock(),o.createElementBlock("div",o.mergeProps({class:e.cx("root"),role:"group"},e.ptm("root")),[o.createElementVNode("button",o.mergeProps({"aria-label":a.listViewAriaLabel,class:e.cx("listButton"),onClick:t[0]||(t[0]=function(e){return a.changeLayout("list")}),type:"button","aria-pressed":n.isListButtonPressed},e.ptm("listButton")),[o.renderSlot(e.$slots,"listicon",{},(function(){return[o.createVNode(s,o.normalizeProps(o.guardReactiveProps(e.ptm("listIcon"))),null,16)]}))],16,l),o.createElementVNode("button",o.mergeProps({"aria-label":a.gridViewAriaLabel,class:e.cx("gridButton"),onClick:t[1]||(t[1]=function(e){return a.changeLayout("grid")}),type:"button","aria-pressed":n.isGridButtonPressed},e.ptm("gridButton")),[o.renderSlot(e.$slots,"gridicon",{},(function(){return[o.createVNode(u,o.normalizeProps(o.guardReactiveProps(e.ptm("gridIcon"))),null,16)]}))],16,d)],16)},module.exports=u;