@progress/kendo-vue-layout
Version:
9 lines (8 loc) • 1.81 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),h=require("../package-metadata.js"),n=require("@progress/kendo-vue-common"),b=t.defineComponent({name:"KendoBottomNavigationItem",emits:{keydown:null,select:null},props:{id:String,disabled:Boolean,selected:Boolean,icon:String,item:[String,Object,Function],text:String,dataItem:Object,index:Number,tabIndex:{type:Number,default:0}},created(){n.validatePackage(h.packageMetadata)},computed:{itemClasses(){const{selected:e,disabled:i}=this.$props;return{"k-bottom-nav-item":!0,"k-selected":e,"k-disabled":i}}},render(){const{selected:e,disabled:i,item:l,dataItem:a,id:c,index:m,tabIndex:r}=this.$props,{icon:o,text:d,svgIcon:s}=a,u=n.getTemplate.call(this,{h:t.h,template:l,defaultRendering:null,additionalProps:{itemIndex:m,item:a}});return t.createVNode("span",{class:this.itemClasses,role:"link",id:c,tabindex:r,onClick:this.handleClick,onKeydown:this.handleKeyDown,"aria-current":e,"aria-disabled":i},[this.$props.item?u:[(s||o)&&t.createVNode(n.Icon,{name:o,icon:s,size:"xlarge",class:"k-bottom-nav-item-icon"},null),d&&t.createVNode("span",{class:"k-bottom-nav-item-text",style:{userSelect:"none"}},[d])]])},methods:{handleClick(e){this.index!==void 0&&!this.disabled&&this.$emit("select",e,this.index)},handleKeyDown(e){this.index!==void 0&&!this.disabled&&this.$emit("keydown",e,this.index)}}});exports.BottomNavigationItem=b;