@progress/kendo-vue-data-tools
Version:
9 lines (8 loc) • 1.8 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
*-------------------------------------------------------------------------------------------
*/
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),o=require("@progress/kendo-vue-common"),r=require("../navigation/constants.js"),b=t.defineComponent({name:"KendoHeaderThElement",emits:{keydown:null},props:{ariaSort:{type:String,validator:function(e){return["none","ascending","descending"].includes(e)}},ariaLabel:String,ariaColumnIndex:Number,ariaSelected:Boolean,ariaHaspopup:String,colSpan:Number,rowSpan:Number,role:String,columnId:String,navigatable:Boolean},computed:{thClass(){const{className:e}=this.$props;return{"k-table-th":!0,[e]:e}}},inject:{getKeyboardNavigationAttributes:{default:o.noop}},setup(){const e=t.inject("kendoIntlService",{}),a=t.inject("kendoLocalizationService",{});return{kendoIntlService:e,kendoLocalizationService:a}},render(){const{ariaSort:e,colSpan:a,rowSpan:i,columnId:s,navigatable:l,ariaColumnIndex:d,ariaLabel:c,ariaHaspopup:u,role:p,ariaSelected:S}=this.$props,n=this.getKeyboardNavigationAttributes(s,l),m=o.getDefaultSlots(this);return t.createVNode("th",{style:{top:"0px"},"aria-sort":e,"aria-label":c,"aria-colindex":d,"aria-selected":S,"aria-haspopup":u,colspan:a,rowspan:i,class:this.thClass,onKeydown:this.onKeyDown,role:p,tabindex:n.tabIndex,"data-keyboardnavlevel":n[r.KEYBOARD_NAV_DATA_LEVEL],"data-keyboardnavid":n[r.KEYBOARD_NAV_DATA_ID]},[m])},methods:{onKeyDown(e){this.$emit("keydown",e)}}});exports.HeaderThElement=b;