@progress/kendo-vue-grid
Version:
9 lines (8 loc) • 2.2 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2026 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"),n=require("@progress/kendo-vue-common"),o=require("@progress/kendo-svg-icons"),s=t.defineComponent({props:{title:String,dir:String,onRemove:Function,onSortChange:Function,onPress:Function,onDrag:Function,onRelease:Function},mounted(){this.element=n.getRef(this,"indicatorContainer"),this.element&&(this.draggable=this.$refs.draggable)},methods:{press(e){this.element&&this.$emit("press",e,this.element)},drag(e){this.element&&this.$emit("drag",e,this.element)},release(e){this.element&&this.$emit("release",e,this.element)},sortChange(e){e.preventDefault();const i=this.$props.dir==="asc"?"desc":"asc";this.$emit("sortChange",e,i)},handleKeyDown(e){(e.keyCode===n.Keys.delete||e.keyCode===n.Keys.backspace)&&(e.preventDefault(),e.stopPropagation(),this.$emit("remove",e))},groupRemove(e){e.preventDefault(),this.$emit("remove",e)}},setup(){return{indicatorContainerRef:t.ref(null)}},render(){return t.createVNode(n.Draggable,{onPress:this.press,onDrag:this.drag,onRelease:this.release,ref:"draggable"},{default:()=>[t.createVNode("div",{class:"k-chip",ref:n.setRef(this,"indicatorContainer"),tabindex:"0",role:"button",onClick:this.sortChange,onKeydown:this.handleKeyDown,style:{touchAction:"none"}},[t.createVNode(n.Icon,{name:"sort-"+this.$props.dir+"-small",class:"k-chip-icon",icon:this.$props.dir==="asc"?o.sortAscSmallIcon:o.sortDescSmallIcon},null),t.createVNode("span",{class:"k-chip-content"},[t.createVNode("span",{class:"k-chip-label"},[this.$props.title])]),t.createVNode("span",{class:"k-chip-actions"},[t.createVNode("span",{class:"k-chip-action k-chip-remove-action",tabindex:-1,onClick:this.groupRemove},[t.createVNode(n.Icon,{name:"x-circle",icon:o.xCircleIcon},null)])])])]})}});exports.GroupingIndicator=s;