@progress/kendo-vue-treeview 7.1.0-develop.5 → 7.1.0-develop.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/TreeView.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),s=require("@progress/kendo-vue-common"),u=require("./utils/getItemIdUponKeyboardNavigation.js"),r=require("./utils/itemUtils.js"),I=require("./TreeViewItem.js"),h=require("./utils/itemIdUtils.js"),m=require("./utils/FieldsService.js"),p=require("./package-metadata.js"),d=require("./utils/consts.js"),{sizeMap:f}=s.kendoThemeMaps,g=n.defineComponent({name:"KendoTreeView",emits:{blur:null,focus:null,itemdragstart:null,itemdragover:null,itemdragend:null,keydown:null,itemclick:null,expandchange:null,checkchange:null},props:{dataItems:Array,animate:{type:Boolean,default:!0},id:String,draggable:Boolean,tabIndex:Number,focusIdField:String,getFocusHierarchicalIndex:Function,expandField:{type:String,default:d.EXPAND_FIELD},selectField:{type:String,default:d.SELECT_FIELD},childrenField:{type:String,default:d.CHILDREN_FIELD},hasChildrenField:{type:String,default:d.HAS_CHILDREN_FIELD},expandIcons:Boolean,checkboxes:Boolean,textField:{type:String,default:d.TEXT_FIELD},disableField:{type:String,default:d.DISABLED_FIELD},checkField:{type:String,default:d.CHECK_FIELD},checkIndeterminateField:{type:String,default:d.CHECK_INDETERMINATE_FIELD},item:[Object,String,Function],ariaMultiSelectable:[String,Boolean],ariaLabel:String,ariaLabelledby:String,size:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large"].includes(e)}}},data(){return{currentRtl:!1,focusedItemId:void 0,focusedItemPublicId:void 0,tabbableItemId:h.ZERO_LEVEL_ZERO_NODE_ID}},mounted(){this.currentRtl=s.isRtl(this.$el)},computed:{treeGuid(){return this.id||this.innerId}},created(){s.validatePackage(p.packageMetadata),this.allowExplicitFocus=!1,this.innerId=s.guid()},updated(){this.allowExplicitFocus=!1,this.refocusDueToFocusIdField()},render(){this.fieldsSvc=new m(this.$props);const{size:e}=this.$props;return n.createVNode("div",{class:s.classNames("k-treeview",{[`k-treeview-${f[e]||e}`]:e,"k-user-select-none":this.draggable,"k-rtl":this.currentRtl}),onKeydown:this.onKeyDown,onFocusin:this.onFocus,onFocusout:this.onBlur,"aria-multiselectable":this.ariaMultiSelectable?!0:void 0,"aria-label":this.$props["aria-label"],"aria-labelledby":this.$props["aria-labelledby"],tabindex:this.$props.tabIndex,style:{userSelect:this.draggable?"none":void 0}},[n.createVNode("ul",{class:"k-treeview-lines k-treeview-group",role:"tree"},[this.dataItems.map(function(t,i){const a=s.templateRendering.call(this,this.item,s.getListeners.call(this));return n.createVNode(I.TreeViewItem,{item:t,itemId:i.toString(),treeGuid:this.treeGuid,animate:this.$props.animate,focusedItemId:this.focusedItemId,tabbableItemId:this.tabbableItemId,fieldsService:this.fieldsSvc,itemUI:a,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.ariaMultiSelectable,onItemClick:this.onItemClick,onFocusdomelneeded:this.onFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.onExpandChange,onCheckChange:this.onCheckChange,key:i,size:e,ariaLevel:1,isRtl:this.currentRtl},null)},this)])])},methods:{onFocusDomElNeeded(e){this.allowExplicitFocus&&this.focusDomItem(e)},onCheckChange(e,t,i){this.setFocus(i),this.dispatchCheckChange(e,t,i)},onExpandChange(e,t,i){this.setFocus(i),this.dispatchExpandChange(e,t,i)},onPress(e,t,i){this.$emit("itemdragstart",{target:this,item:t,itemHierarchicalIndex:i})},onDrag(e,t,i){const{pageX:a,pageY:l,clientX:c,clientY:o}=e;this.$emit("itemdragover",{target:this,item:t,itemHierarchicalIndex:i,pageX:a,pageY:l,clientX:c,clientY:o})},onRelease(e,t,i){const{pageX:a,pageY:l,clientX:c,clientY:o}=e;this.$emit("itemdragend",{target:this,item:t,itemHierarchicalIndex:i,pageX:a,pageY:l,clientX:c,clientY:o})},onItemClick(e,t,i){this.setFocus(i),this.dispatchItemClick(e,t,i)},onFocus(e){clearTimeout(this.blurRequest),this.focusedItemId===void 0&&this.dataItems.length&&this.setFocus(this.tabbableItemId),this.$emit("focus",e)},onBlur(e){clearTimeout(this.blurRequest),s.canUseDOM&&(this.blurRequest=window.setTimeout(()=>this.setFocus(void 0),0)),this.$emit("blur",e)},onKeyDown(e){const t=this.getFocusedItem();if(t){const i=u(t,this.focusedItemId,this.dataItems,e.keyCode,this.fieldsSvc);i!==this.focusedItemId&&(e.preventDefault(),this.allowExplicitFocus=!0,this.setFocus(i)),this.dispatchEventsOnKeyDown(e,t)}this.$emit("keydown",e)},dispatchEventsOnKeyDown(e,t){const i=()=>r.isEnabledAndAllParentsEnabled(this.focusedItemId,this.dataItems,this.fieldsSvc),a=this.fieldsSvc.disabled(t);e.keyCode===s.Keys.left&&this.fieldsSvc.expanded(t)&&i()?this.dispatchExpandChange(e,t,this.focusedItemId):e.keyCode===s.Keys.right&&!this.fieldsSvc.expanded(t)&&(this.fieldsSvc.hasChildren(t)||r.hasChildren(t,this.$props.childrenField))&&i()?this.dispatchExpandChange(e,t,this.focusedItemId):e.keyCode===s.Keys.enter&&!a?this.dispatchItemClick(e,t,this.focusedItemId):e.keyCode===s.Keys.space&&!a&&(e.preventDefault(),this.dispatchCheckChange(e,t,this.focusedItemId))},setFocus(e){if(e)if(this.fieldsSvc.focusIdField){const t=this.getItemById(e);this.focusedItemId=e,this.focusedItemPublicId=this.fieldsSvc.focusId(t)}else this.focusedItemId=e;else{const t=this.focusedItemId;this.focusedItemId=void 0,this.focusedItemPublicId=void 0,this.tabbableItemId=t}},getFocusedItem(){return this.focusedItemId?this.getItemById(this.focusedItemId):void 0},getItemById(e){return h.getItemById(e,this.dataItems,this.$props.childrenField||d.CHILDREN_FIELD)},dispatchCheckChange(e,t,i){this.$emit("checkchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchExpandChange(e,t,i){this.$emit("expandchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchItemClick(e,t,i){this.$emit("itemclick",{item:t,itemHierarchicalIndex:i,event:e})},refocusDueToFocusIdField(){if(this.fieldsSvc.focusIdField){const e=this.focusedItemPublicId;if(e){const t=this.$props.getFocusHierarchicalIndex?this.$props.getFocusHierarchicalIndex(e):r.resolveItemId(e,this.fieldsSvc.focusIdField,this.dataItems,this.$props.childrenField);t!==this.focusedItemId&&(this.allowExplicitFocus=!0,this.focusedItemId=t)}}},focusDomItem(e){e.focus()},guid(){return this.treeGuid}}});exports.TreeView=g;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),s=require("@progress/kendo-vue-common"),u=require("./utils/getItemIdUponKeyboardNavigation.js"),r=require("./utils/itemUtils.js"),I=require("./TreeViewItem.js"),h=require("./utils/itemIdUtils.js"),m=require("./utils/FieldsService.js"),p=require("./package-metadata.js"),d=require("./utils/consts.js"),{sizeMap:g}=s.kendoThemeMaps,f=n.defineComponent({name:"KendoTreeView",emits:{blur:null,focus:null,itemdragstart:null,itemdragover:null,itemdragend:null,keydown:null,itemclick:null,expandchange:null,checkchange:null},props:{dataItems:Array,animate:{type:Boolean,default:!0},id:String,draggable:Boolean,tabIndex:Number,focusIdField:String,getFocusHierarchicalIndex:Function,expandField:{type:String,default:d.EXPAND_FIELD},selectField:{type:String,default:d.SELECT_FIELD},childrenField:{type:String,default:d.CHILDREN_FIELD},hasChildrenField:{type:String,default:d.HAS_CHILDREN_FIELD},expandIcons:Boolean,checkboxes:Boolean,textField:{type:String,default:d.TEXT_FIELD},disableField:{type:String,default:d.DISABLED_FIELD},checkField:{type:String,default:d.CHECK_FIELD},checkIndeterminateField:{type:String,default:d.CHECK_INDETERMINATE_FIELD},item:[Object,String,Function],ariaMultiSelectable:[String,Boolean],ariaLabel:String,ariaLabelledby:String,size:{type:String,validator:function(e){return["small","medium","large"].includes(e)}}},data(){return{currentRtl:!1,focusedItemId:void 0,focusedItemPublicId:void 0,tabbableItemId:h.ZERO_LEVEL_ZERO_NODE_ID}},mounted(){this.currentRtl=s.isRtl(this.$el)},computed:{treeGuid(){return this.id||this.innerId}},created(){s.validatePackage(p.packageMetadata),this.allowExplicitFocus=!1,this.innerId=s.guid()},updated(){this.allowExplicitFocus=!1,this.refocusDueToFocusIdField()},render(){this.fieldsSvc=new m(this.$props);const{size:e}=this.$props;return n.createVNode("div",{class:s.classNames("k-treeview",{[`k-treeview-${g[e]||e}`]:e,"k-user-select-none":this.draggable,"k-rtl":this.currentRtl}),onKeydown:this.onKeyDown,onFocusin:this.onFocus,onFocusout:this.onBlur,"aria-multiselectable":this.ariaMultiSelectable?!0:void 0,"aria-label":this.$props["aria-label"],"aria-labelledby":this.$props["aria-labelledby"],tabindex:this.$props.tabIndex,style:{userSelect:this.draggable?"none":void 0}},[n.createVNode("ul",{class:"k-treeview-lines k-treeview-group",role:"tree"},[this.dataItems.map(function(t,i){const a=s.templateRendering.call(this,this.item,s.getListeners.call(this));return n.createVNode(I.TreeViewItem,{item:t,itemId:i.toString(),treeGuid:this.treeGuid,animate:this.$props.animate,focusedItemId:this.focusedItemId,tabbableItemId:this.tabbableItemId,fieldsService:this.fieldsSvc,itemUI:a,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.ariaMultiSelectable,onItemClick:this.onItemClick,onFocusdomelneeded:this.onFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.onExpandChange,onCheckChange:this.onCheckChange,key:i,size:e,ariaLevel:1,isRtl:this.currentRtl},null)},this)])])},methods:{onFocusDomElNeeded(e){this.allowExplicitFocus&&this.focusDomItem(e)},onCheckChange(e,t,i){this.setFocus(i),this.dispatchCheckChange(e,t,i)},onExpandChange(e,t,i){this.setFocus(i),this.dispatchExpandChange(e,t,i)},onPress(e,t,i){this.$emit("itemdragstart",{target:this,item:t,itemHierarchicalIndex:i})},onDrag(e,t,i){const{pageX:a,pageY:l,clientX:c,clientY:o}=e;this.$emit("itemdragover",{target:this,item:t,itemHierarchicalIndex:i,pageX:a,pageY:l,clientX:c,clientY:o})},onRelease(e,t,i){const{pageX:a,pageY:l,clientX:c,clientY:o}=e;this.$emit("itemdragend",{target:this,item:t,itemHierarchicalIndex:i,pageX:a,pageY:l,clientX:c,clientY:o})},onItemClick(e,t,i){this.setFocus(i),this.dispatchItemClick(e,t,i)},onFocus(e){clearTimeout(this.blurRequest),this.focusedItemId===void 0&&this.dataItems.length&&this.setFocus(this.tabbableItemId),this.$emit("focus",e)},onBlur(e){clearTimeout(this.blurRequest),s.canUseDOM&&(this.blurRequest=window.setTimeout(()=>this.setFocus(void 0),0)),this.$emit("blur",e)},onKeyDown(e){const t=this.getFocusedItem();if(t){const i=u(t,this.focusedItemId,this.dataItems,e.keyCode,this.fieldsSvc);i!==this.focusedItemId&&(e.preventDefault(),this.allowExplicitFocus=!0,this.setFocus(i)),this.dispatchEventsOnKeyDown(e,t)}this.$emit("keydown",e)},dispatchEventsOnKeyDown(e,t){const i=()=>r.isEnabledAndAllParentsEnabled(this.focusedItemId,this.dataItems,this.fieldsSvc),a=this.fieldsSvc.disabled(t);e.keyCode===s.Keys.left&&this.fieldsSvc.expanded(t)&&i()?this.dispatchExpandChange(e,t,this.focusedItemId):e.keyCode===s.Keys.right&&!this.fieldsSvc.expanded(t)&&(this.fieldsSvc.hasChildren(t)||r.hasChildren(t,this.$props.childrenField))&&i()?this.dispatchExpandChange(e,t,this.focusedItemId):e.keyCode===s.Keys.enter&&!a?this.dispatchItemClick(e,t,this.focusedItemId):e.keyCode===s.Keys.space&&!a&&(e.preventDefault(),this.dispatchCheckChange(e,t,this.focusedItemId))},setFocus(e){if(e)if(this.fieldsSvc.focusIdField){const t=this.getItemById(e);this.focusedItemId=e,this.focusedItemPublicId=this.fieldsSvc.focusId(t)}else this.focusedItemId=e;else{const t=this.focusedItemId;this.focusedItemId=void 0,this.focusedItemPublicId=void 0,this.tabbableItemId=t}},getFocusedItem(){return this.focusedItemId?this.getItemById(this.focusedItemId):void 0},getItemById(e){return h.getItemById(e,this.dataItems,this.$props.childrenField||d.CHILDREN_FIELD)},dispatchCheckChange(e,t,i){this.$emit("checkchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchExpandChange(e,t,i){this.$emit("expandchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchItemClick(e,t,i){this.$emit("itemclick",{item:t,itemHierarchicalIndex:i,event:e})},refocusDueToFocusIdField(){if(this.fieldsSvc.focusIdField){const e=this.focusedItemPublicId;if(e){const t=this.$props.getFocusHierarchicalIndex?this.$props.getFocusHierarchicalIndex(e):r.resolveItemId(e,this.fieldsSvc.focusIdField,this.dataItems,this.$props.childrenField);t!==this.focusedItemId&&(this.allowExplicitFocus=!0,this.focusedItemId=t)}}},focusDomItem(e){e.focus()},guid(){return this.treeGuid}}});exports.TreeView=f;
package/TreeView.mjs CHANGED
@@ -80,9 +80,8 @@ const {
80
80
  ariaLabelledby: String,
81
81
  size: {
82
82
  type: String,
83
- default: "medium",
84
83
  validator: function(e) {
85
- return [null, "small", "medium", "large"].includes(e);
84
+ return ["small", "medium", "large"].includes(e);
86
85
  }
87
86
  }
88
87
  },
@@ -182,8 +181,8 @@ const {
182
181
  const {
183
182
  pageX: s,
184
183
  pageY: a,
185
- clientX: l,
186
- clientY: n
184
+ clientX: n,
185
+ clientY: l
187
186
  } = e;
188
187
  this.$emit("itemdragover", {
189
188
  target: this,
@@ -191,16 +190,16 @@ const {
191
190
  itemHierarchicalIndex: i,
192
191
  pageX: s,
193
192
  pageY: a,
194
- clientX: l,
195
- clientY: n
193
+ clientX: n,
194
+ clientY: l
196
195
  });
197
196
  },
198
197
  onRelease(e, t, i) {
199
198
  const {
200
199
  pageX: s,
201
200
  pageY: a,
202
- clientX: l,
203
- clientY: n
201
+ clientX: n,
202
+ clientY: l
204
203
  } = e;
205
204
  this.$emit("itemdragend", {
206
205
  target: this,
@@ -208,8 +207,8 @@ const {
208
207
  itemHierarchicalIndex: i,
209
208
  pageX: s,
210
209
  pageY: a,
211
- clientX: l,
212
- clientY: n
210
+ clientX: n,
211
+ clientY: l
213
212
  });
214
213
  },
215
214
  onItemClick(e, t, i) {
package/TreeViewItem.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("vue"),d=require("@progress/kendo-vue-common"),f=require("./utils/itemIdUtils.js"),a=require("./utils/itemUtils.js"),b=require("@progress/kendo-vue-animation"),r=require("./utils/consts.js"),h=require("@progress/kendo-svg-icons");function o(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!i.isVNode(e)}const{sizeMap:g}=d.kendoThemeMaps,m=i.defineComponent({name:"KendoTreeViewItem",props:{item:Object,itemId:String,treeGuid:String,animate:Boolean,focusedItemId:String,tabbableItemId:String,fieldsService:Object,itemUI:Object,ariaMultiSelectable:Boolean,expandIcons:Boolean,checkboxes:Boolean,onFocusDomElNeeded:Object,draggable:Boolean,isRtl:Boolean,size:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large"].includes(e)}},disabled:Boolean,ariaLevel:Number,onItemClick:Function,onExpandChange:Function,onCheckChange:Function,onPress:Function,onDrag:Function,onRelease:Function,onFocusdomelneeded:Function},computed:{fieldsSvc(){return this.$props.fieldsService},currentTabIndex(){return(this.$props.focusedItemId||this.$props.tabbableItemId)===this.itemId?0:-1},ariaExpanded(){return this.fieldsSvc.hasChildren(this.item)||a.hasChildren(this.item,this.fieldsSvc.getChildrenField())?!!this.fieldsSvc.expanded(this.item):void 0},ariaChecked(){if(this.$props.checkboxes)return this.fieldsSvc.checked(this.item)?"true":this.fieldsSvc.checkIndeterminate(this.item)?"mixed":"false"},ariaSelected(){return this.fieldsSvc.selected(this.item)?!0:this.$props.ariaMultiSelectable?this.computedDisabled?void 0:!1:void 0},computedDisabled(){const e=this.fieldsSvc.disabled(this.item);return e!==void 0?e:this.disabled}},created(){this.itemGuid=d.guid(),this.prevFocusedItemId=this.focusedItemId,this.prevFieldsService=this.fieldsService,this.prevItem=this.item},data(){return{isMounted:!1}},watch:{focusedItemId:function(e,t){this.prevFocusedItemId=t},fieldsService:function(e,t){this.prevFieldsService=t},item:function(e,t){this.prevItem=t}},mounted(){const e=this.$props.focusedItemId,t=this.itemId;e&&e===t&&this.$emit("focusDomElNeeded",this.$el),this.checkboxElement=d.getRef(this,"checkboxElement"),this.checkboxElement&&(this.checkboxElement.indeterminate=this.fieldsSvc.checkIndeterminate(this.item)),this.assignDraggableMeta(this.$refs.treemid),this.isMounted=!0},updated(){const e=this.$props.focusedItemId;if(e&&e!==this.prevFocusedItemId&&e===this.itemId&&this.$emit("focusdomelneeded",this.$el),this.checkboxElement=d.getRef(this,"checkboxElement"),this.checkboxElement){const t=this.fieldsSvc.checkIndeterminate(this.item);t!==this.prevFieldsService.checkIndeterminate(this.prevItem)&&(this.checkboxElement.indeterminate=t)}this.assignDraggableMeta(this.$refs.treemid)},render(){let e,t;const s=function(){return a.isItemExpandedAndWithChildren(this.item,this.fieldsSvc)?i.createVNode("ul",{class:"k-treeview-group",role:"group"},[this.fieldsSvc.children(this.item).map(function(n,l){return i.createVNode(m,{item:n,itemId:f.createId(l,this.itemId),treeGuid:this.$props.treeGuid,animate:this.$props.animate,focusedItemId:this.$props.focusedItemId,tabbableItemId:this.$props.tabbableItemId,fieldsService:this.$props.fieldsService,itemUI:this.$props.itemUI,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.$props.ariaMultiSelectable,ariaLevel:this.$props.ariaLevel+1,onItemClick:this.handleItemClick,onFocusdomelneeded:this.handleFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.handlePress,onDrag:this.handleDrag,onRelease:this.handleRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.handleExpandChange,onCheckChange:this.handleCheckChange,key:l,size:this.$props.size,disabled:this.computedDisabled,isRtl:this.$props.isRtl},null)},this)]):void 0},u=function(){return this.$props.expandIcons&&(this.fieldsSvc.hasChildren(this.item)||a.hasChildren(this.item,this.fieldsSvc.getChildrenField()))&&i.createVNode("span",{class:d.classNames("k-treeview-toggle",{"k-disabled":this.computedDisabled})},[i.createVNode(d.Icon,{name:this.getIconClassName(),icon:this.getIconSVG(),onClick:this.handleExpandChange},null)])},p=function(){if(this.$props.checkboxes){const n=this.$props.size;return i.createVNode("div",{class:"k-checkbox-wrap",role:"presentation"},[i.createVNode("input",{type:"checkbox",class:d.classNames("k-checkbox k-rounded-md",{[`k-checkbox-${g[n]||n}`]:n,"k-disabled":this.computedDisabled}),"aria-label":this.item.text,checked:!!this.fieldsSvc.checked(this.item),id:this.itemGuid,tabindex:-1,onChange:this.handleCheckChange,ref:d.setRef(this,"checkboxElement")},null),i.createVNode("label",{class:"k-checkbox-label",for:this.itemGuid},null)])}else return},I=d.getTemplate.call(this,{h:i.h,template:this.$props.itemUI,defaultRendering:this.fieldsSvc.text(this.item),additionalProps:{item:this.item,itemHierarchicalIndex:this.itemId}}),c=function(){return i.createVNode("span",{class:this.getContentClassName(),style:{touchAction:"none"},onClick:this.handleItemClick},[i.createVNode("span",{class:"k-treeview-leaf-text"},[I])])};return i.createVNode("li",{class:d.classNames("k-treeview-item"),tabindex:this.currentTabIndex,role:"treeitem","aria-level":this.$props.ariaLevel,"aria-expanded":this.ariaExpanded,"aria-selected":this.ariaSelected,"aria-checked":this.ariaChecked,"aria-disabled":this.computedDisabled?!0:void 0},[i.createVNode("div",{class:"k-treeview-mid",ref:"treemid"},[u.call(this),p.call(this),this.$props.draggable?i.createVNode(d.Draggable,{onPress:n=>this.handlePress(n),onDrag:n=>this.handleDrag(n),onRelease:n=>this.handleRelease(n)},o(e=c.call(this))?e:{default:()=>[e]}):c.call(this)]),this.$props.animate&&this.isMounted?i.createVNode(b.Reveal,{appear:this.ariaExpanded,transitionEnterDuration:200,transitionExitDuration:200,key:this.itemGuid+"_animation",style:{display:"block"}},o(t=s.call(this))?t:{default:()=>[t]}):s.call(this)])},methods:{handleCheckChange(e,t,s){this.$emit("checkChange",e,t||this.item,s||this.itemId)},handleExpandChange(e,t,s){this.$emit("expandChange",e,t||this.item,s||this.itemId)},handleItemClick(e,t,s){this.$emit("itemClick",e,t||this.item,s||this.itemId)},handlePress(e,t,s){this.$emit("press",e,t||{...this.item},s||this.itemId)},handleDrag(e,t,s){this.$emit("drag",e,t||this.item,s||this.itemId)},handleRelease(e,t,s){this.$emit("release",e,t||this.item,s||this.itemId)},handleFocusDomElNeeded(e){this.$emit("focusdomelneeded",e)},getIconClassName(){const e=this.fieldsSvc.expanded(this.item);return e&&!a.hasChildren(this.item,this.fieldsSvc.getChildrenField())?"loading":e?"caret-alt-down":this.$props.isRtl?"caret-alt-left":"caret-alt-right"},getIconSVG(){return this.fieldsSvc.expanded(this.item)?h.caretAltDownIcon:this.$props.isRtl?h.caretAltLeftIcon:h.caretAltRightIcon},getContentClassName(){return d.classNames("k-treeview-leaf",{"k-focus":this.$props.focusedItemId===this.itemId,"k-selected":this.fieldsSvc.selected(this.item),"k-disabled":this.computedDisabled})},assignDraggableMeta(e){e&&!e[r.DOM_KENDO_ITEM_ID_FIELD]&&(e[r.DOM_KENDO_ITEM_ID_FIELD]=this.$props.itemId,e[r.DOM_KENDO_TREEVIEW_GUID_FIELD]=this.$props.treeGuid)}}});exports.TreeViewItem=m;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("vue"),d=require("@progress/kendo-vue-common"),b=require("./utils/itemIdUtils.js"),r=require("./utils/itemUtils.js"),g=require("@progress/kendo-vue-animation"),h=require("./utils/consts.js"),c=require("@progress/kendo-svg-icons");function l(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!i.isVNode(e)}const{sizeMap:k}=d.kendoThemeMaps,m=i.defineComponent({name:"KendoTreeViewItem",props:{item:Object,itemId:String,treeGuid:String,animate:Boolean,focusedItemId:String,tabbableItemId:String,fieldsService:Object,itemUI:Object,ariaMultiSelectable:Boolean,expandIcons:Boolean,checkboxes:Boolean,onFocusDomElNeeded:Object,draggable:Boolean,isRtl:Boolean,size:{type:String,validator:function(e){return["small","medium","large"].includes(e)}},disabled:Boolean,ariaLevel:Number,onItemClick:Function,onExpandChange:Function,onCheckChange:Function,onPress:Function,onDrag:Function,onRelease:Function,onFocusdomelneeded:Function},computed:{fieldsSvc(){return this.$props.fieldsService},currentTabIndex(){return(this.$props.focusedItemId||this.$props.tabbableItemId)===this.itemId?0:-1},ariaExpanded(){return this.fieldsSvc.hasChildren(this.item)||r.hasChildren(this.item,this.fieldsSvc.getChildrenField())?!!this.fieldsSvc.expanded(this.item):void 0},ariaChecked(){if(this.$props.checkboxes)return this.fieldsSvc.checked(this.item)?"true":this.fieldsSvc.checkIndeterminate(this.item)?"mixed":"false"},ariaSelected(){return this.fieldsSvc.selected(this.item)?!0:this.$props.ariaMultiSelectable?this.computedDisabled?void 0:!1:void 0},computedDisabled(){const e=this.fieldsSvc.disabled(this.item);return e!==void 0?e:this.disabled}},created(){this.itemGuid=d.guid(),this.prevFocusedItemId=this.focusedItemId,this.prevFieldsService=this.fieldsService,this.prevItem=this.item},data(){return{isMounted:!1}},watch:{focusedItemId:function(e,t){this.prevFocusedItemId=t},fieldsService:function(e,t){this.prevFieldsService=t},item:function(e,t){this.prevItem=t}},mounted(){const e=this.$props.focusedItemId,t=this.itemId;e&&e===t&&this.$emit("focusDomElNeeded",this.$el),this.checkboxElement=d.getRef(this,"checkboxElement"),this.checkboxElement&&(this.checkboxElement.indeterminate=this.fieldsSvc.checkIndeterminate(this.item)),this.assignDraggableMeta(this.$refs.treeviewitemcontent),this.isMounted=!0},updated(){const e=this.$props.focusedItemId;if(e&&e!==this.prevFocusedItemId&&e===this.itemId&&this.$emit("focusdomelneeded",this.$el),this.checkboxElement=d.getRef(this,"checkboxElement"),this.checkboxElement){const t=this.fieldsSvc.checkIndeterminate(this.item);t!==this.prevFieldsService.checkIndeterminate(this.prevItem)&&(this.checkboxElement.indeterminate=t)}this.assignDraggableMeta(this.$refs.treeviewitemcontent)},render(){let e,t;const s=function(){return r.isItemExpandedAndWithChildren(this.item,this.fieldsSvc)?i.createVNode("ul",{class:"k-treeview-group",role:"group"},[this.fieldsSvc.children(this.item).map(function(n,a){return i.createVNode(m,{item:n,itemId:b.createId(a,this.itemId),treeGuid:this.$props.treeGuid,animate:this.$props.animate,focusedItemId:this.$props.focusedItemId,tabbableItemId:this.$props.tabbableItemId,fieldsService:this.$props.fieldsService,itemUI:this.$props.itemUI,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.$props.ariaMultiSelectable,ariaLevel:this.$props.ariaLevel+1,onItemClick:this.handleItemClick,onFocusdomelneeded:this.handleFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.handlePress,onDrag:this.handleDrag,onRelease:this.handleRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.handleExpandChange,onCheckChange:this.handleCheckChange,key:a,size:this.$props.size,disabled:this.computedDisabled,isRtl:this.$props.isRtl},null)},this)]):void 0},u=function(){return this.$props.expandIcons&&(this.fieldsSvc.hasChildren(this.item)||r.hasChildren(this.item,this.fieldsSvc.getChildrenField()))&&i.createVNode("span",{class:d.classNames("k-treeview-toggle",{"k-disabled":this.computedDisabled})},[i.createVNode(d.Icon,{name:this.getIconClassName(),icon:this.getIconSVG(),onClick:this.handleExpandChange},null)])},p=function(){if(this.$props.checkboxes){const n=this.$props.size,a=!!this.fieldsSvc.checked(this.item);return i.createVNode("span",{class:"k-checkbox-wrap",role:"presentation"},[i.createVNode("input",{type:"checkbox",class:d.classNames("k-checkbox",{[`k-checkbox-${k[n]||n}`]:n,"k-disabled":this.computedDisabled,"k-checked":a}),"aria-label":this.item.text,checked:a,id:this.itemGuid,tabindex:-1,onChange:this.handleCheckChange,ref:d.setRef(this,"checkboxElement")},null),i.createVNode("label",{class:"k-checkbox-label",for:this.itemGuid},null)])}else return},I=d.getTemplate.call(this,{h:i.h,template:this.$props.itemUI,defaultRendering:this.fieldsSvc.text(this.item),additionalProps:{item:this.item,itemHierarchicalIndex:this.itemId}}),o=function(){return i.createVNode("span",{class:"k-treeview-leaf",style:{touchAction:"none"},onClick:this.handleItemClick},[i.createVNode("span",{class:"k-treeview-leaf-text"},[I])])},f=this.itemId.split("_").length;return i.createVNode("li",{class:d.classNames("k-treeview-item"),style:{"--kendo-treeview-level":f},tabindex:this.currentTabIndex,role:"treeitem","aria-level":this.$props.ariaLevel,"aria-expanded":this.ariaExpanded,"aria-selected":this.ariaSelected,"aria-checked":this.ariaChecked,"aria-disabled":this.computedDisabled?!0:void 0},[i.createVNode("span",{class:this.getContentClassName(),ref:"treeviewitemcontent"},[u.call(this),p.call(this),this.$props.draggable?i.createVNode(d.Draggable,{onPress:n=>this.handlePress(n),onDrag:n=>this.handleDrag(n),onRelease:n=>this.handleRelease(n)},l(e=o.call(this))?e:{default:()=>[e]}):o.call(this)]),this.$props.animate&&this.isMounted?i.createVNode(g.Reveal,{appear:this.ariaExpanded,transitionEnterDuration:200,transitionExitDuration:200,key:this.itemGuid+"_animation",style:{display:"block"}},l(t=s.call(this))?t:{default:()=>[t]}):s.call(this)])},methods:{handleCheckChange(e,t,s){this.$emit("checkChange",e,t||this.item,s||this.itemId)},handleExpandChange(e,t,s){this.$emit("expandChange",e,t||this.item,s||this.itemId)},handleItemClick(e,t,s){this.$emit("itemClick",e,t||this.item,s||this.itemId)},handlePress(e,t,s){this.$emit("press",e,t||{...this.item},s||this.itemId)},handleDrag(e,t,s){this.$emit("drag",e,t||this.item,s||this.itemId)},handleRelease(e,t,s){this.$emit("release",e,t||this.item,s||this.itemId)},handleFocusDomElNeeded(e){this.$emit("focusdomelneeded",e)},getIconClassName(){const e=this.fieldsSvc.expanded(this.item);return e&&!r.hasChildren(this.item,this.fieldsSvc.getChildrenField())?"loading":e?"chevron-down":this.$props.isRtl?"chevron-left":"chevron-right"},getIconSVG(){return this.fieldsSvc.expanded(this.item)?c.chevronDownIcon:this.$props.isRtl?c.chevronLeftIcon:c.chevronRightIcon},getContentClassName(){return d.classNames("k-treeview-item-content",{"k-focus":this.$props.focusedItemId===this.itemId,"k-selected":this.fieldsSvc.selected(this.item),"k-disabled":this.computedDisabled})},assignDraggableMeta(e){e&&!e[h.DOM_KENDO_ITEM_ID_FIELD]&&(e[h.DOM_KENDO_ITEM_ID_FIELD]=this.$props.itemId,e[h.DOM_KENDO_TREEVIEW_GUID_FIELD]=this.$props.treeGuid)}}});exports.TreeViewItem=m;
package/TreeViewItem.mjs CHANGED
@@ -5,19 +5,19 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- import { defineComponent as f, h as I, createVNode as s, isVNode as b } from "vue";
9
- import { kendoThemeMaps as g, classNames as d, getTemplate as k, Draggable as x, getRef as l, guid as v, Icon as $, setRef as S } from "@progress/kendo-vue-common";
10
- import { createId as C } from "./utils/itemIdUtils.mjs";
11
- import { hasChildren as a, isItemExpandedAndWithChildren as E } from "./utils/itemUtils.mjs";
12
- import { Reveal as D } from "@progress/kendo-vue-animation";
13
- import { DOM_KENDO_ITEM_ID_FIELD as o, DOM_KENDO_TREEVIEW_GUID_FIELD as F } from "./utils/consts.mjs";
14
- import { caretAltDownIcon as R, caretAltLeftIcon as M, caretAltRightIcon as _ } from "@progress/kendo-svg-icons";
8
+ import { defineComponent as I, h as b, createVNode as s, isVNode as g } from "vue";
9
+ import { kendoThemeMaps as k, classNames as a, getTemplate as v, Draggable as x, getRef as o, guid as $, Icon as C, setRef as S } from "@progress/kendo-vue-common";
10
+ import { createId as E } from "./utils/itemIdUtils.mjs";
11
+ import { hasChildren as h, isItemExpandedAndWithChildren as D } from "./utils/itemUtils.mjs";
12
+ import { Reveal as F } from "@progress/kendo-vue-animation";
13
+ import { DOM_KENDO_ITEM_ID_FIELD as l, DOM_KENDO_TREEVIEW_GUID_FIELD as R } from "./utils/consts.mjs";
14
+ import { chevronDownIcon as w, chevronLeftIcon as _, chevronRightIcon as M } from "@progress/kendo-svg-icons";
15
15
  function c(e) {
16
- return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !b(e);
16
+ return typeof e == "function" || Object.prototype.toString.call(e) === "[object Object]" && !g(e);
17
17
  }
18
18
  const {
19
19
  sizeMap: N
20
- } = g, w = /* @__PURE__ */ f({
20
+ } = k, G = /* @__PURE__ */ I({
21
21
  name: "KendoTreeViewItem",
22
22
  props: {
23
23
  item: Object,
@@ -36,9 +36,8 @@ const {
36
36
  isRtl: Boolean,
37
37
  size: {
38
38
  type: String,
39
- default: "medium",
40
39
  validator: function(e) {
41
- return [null, "small", "medium", "large"].includes(e);
40
+ return ["small", "medium", "large"].includes(e);
42
41
  }
43
42
  },
44
43
  disabled: Boolean,
@@ -59,7 +58,7 @@ const {
59
58
  return (this.$props.focusedItemId || this.$props.tabbableItemId) === this.itemId ? 0 : -1;
60
59
  },
61
60
  ariaExpanded() {
62
- return this.fieldsSvc.hasChildren(this.item) || a(this.item, this.fieldsSvc.getChildrenField()) ? !!this.fieldsSvc.expanded(this.item) : void 0;
61
+ return this.fieldsSvc.hasChildren(this.item) || h(this.item, this.fieldsSvc.getChildrenField()) ? !!this.fieldsSvc.expanded(this.item) : void 0;
63
62
  },
64
63
  ariaChecked() {
65
64
  if (this.$props.checkboxes)
@@ -74,7 +73,7 @@ const {
74
73
  }
75
74
  },
76
75
  created() {
77
- this.itemGuid = v(), this.prevFocusedItemId = this.focusedItemId, this.prevFieldsService = this.fieldsService, this.prevItem = this.item;
76
+ this.itemGuid = $(), this.prevFocusedItemId = this.focusedItemId, this.prevFieldsService = this.fieldsService, this.prevItem = this.item;
78
77
  },
79
78
  data() {
80
79
  return {
@@ -94,26 +93,26 @@ const {
94
93
  },
95
94
  mounted() {
96
95
  const e = this.$props.focusedItemId, t = this.itemId;
97
- e && e === t && this.$emit("focusDomElNeeded", this.$el), this.checkboxElement = l(this, "checkboxElement"), this.checkboxElement && (this.checkboxElement.indeterminate = this.fieldsSvc.checkIndeterminate(this.item)), this.assignDraggableMeta(this.$refs.treemid), this.isMounted = !0;
96
+ e && e === t && this.$emit("focusDomElNeeded", this.$el), this.checkboxElement = o(this, "checkboxElement"), this.checkboxElement && (this.checkboxElement.indeterminate = this.fieldsSvc.checkIndeterminate(this.item)), this.assignDraggableMeta(this.$refs.treeviewitemcontent), this.isMounted = !0;
98
97
  },
99
98
  updated() {
100
99
  const e = this.$props.focusedItemId;
101
- if (e && e !== this.prevFocusedItemId && e === this.itemId && this.$emit("focusdomelneeded", this.$el), this.checkboxElement = l(this, "checkboxElement"), this.checkboxElement) {
100
+ if (e && e !== this.prevFocusedItemId && e === this.itemId && this.$emit("focusdomelneeded", this.$el), this.checkboxElement = o(this, "checkboxElement"), this.checkboxElement) {
102
101
  const t = this.fieldsSvc.checkIndeterminate(this.item);
103
102
  t !== this.prevFieldsService.checkIndeterminate(this.prevItem) && (this.checkboxElement.indeterminate = t);
104
103
  }
105
- this.assignDraggableMeta(this.$refs.treemid);
104
+ this.assignDraggableMeta(this.$refs.treeviewitemcontent);
106
105
  },
107
106
  render() {
108
107
  let e, t;
109
108
  const i = function() {
110
- return E(this.item, this.fieldsSvc) ? s("ul", {
109
+ return D(this.item, this.fieldsSvc) ? s("ul", {
111
110
  class: "k-treeview-group",
112
111
  role: "group"
113
- }, [this.fieldsSvc.children(this.item).map(function(n, r) {
114
- return s(w, {
112
+ }, [this.fieldsSvc.children(this.item).map(function(n, d) {
113
+ return s(G, {
115
114
  item: n,
116
- itemId: C(r, this.itemId),
115
+ itemId: E(d, this.itemId),
117
116
  treeGuid: this.$props.treeGuid,
118
117
  animate: this.$props.animate,
119
118
  focusedItemId: this.$props.focusedItemId,
@@ -132,7 +131,7 @@ const {
132
131
  expandIcons: this.$props.expandIcons,
133
132
  onExpandChange: this.handleExpandChange,
134
133
  onCheckChange: this.handleCheckChange,
135
- key: r,
134
+ key: d,
136
135
  size: this.$props.size,
137
136
  disabled: this.computedDisabled,
138
137
  isRtl: this.$props.isRtl
@@ -141,29 +140,30 @@ const {
141
140
  }, m = function() {
142
141
  return this.$props.expandIcons && // If it is explicitly said that the item has children (even not loaded yet)
143
142
  // or if the item actually has children, then render the icon.
144
- (this.fieldsSvc.hasChildren(this.item) || a(this.item, this.fieldsSvc.getChildrenField())) && s("span", {
145
- class: d("k-treeview-toggle", {
143
+ (this.fieldsSvc.hasChildren(this.item) || h(this.item, this.fieldsSvc.getChildrenField())) && s("span", {
144
+ class: a("k-treeview-toggle", {
146
145
  "k-disabled": this.computedDisabled
147
146
  })
148
- }, [s($, {
147
+ }, [s(C, {
149
148
  name: this.getIconClassName(),
150
149
  icon: this.getIconSVG(),
151
150
  onClick: this.handleExpandChange
152
151
  }, null)]);
153
152
  }, p = function() {
154
153
  if (this.$props.checkboxes) {
155
- const n = this.$props.size;
156
- return s("div", {
154
+ const n = this.$props.size, d = !!this.fieldsSvc.checked(this.item);
155
+ return s("span", {
157
156
  class: "k-checkbox-wrap",
158
157
  role: "presentation"
159
158
  }, [s("input", {
160
159
  type: "checkbox",
161
- class: d("k-checkbox k-rounded-md", {
160
+ class: a("k-checkbox", {
162
161
  [`k-checkbox-${N[n] || n}`]: n,
163
- "k-disabled": this.computedDisabled
162
+ "k-disabled": this.computedDisabled,
163
+ "k-checked": d
164
164
  }),
165
165
  "aria-label": this.item.text,
166
- checked: !!this.fieldsSvc.checked(this.item),
166
+ checked: d,
167
167
  id: this.itemGuid,
168
168
  tabindex: -1,
169
169
  onChange: this.handleCheckChange,
@@ -174,17 +174,17 @@ const {
174
174
  }, null)]);
175
175
  } else
176
176
  return;
177
- }, u = k.call(this, {
178
- h: I,
177
+ }, u = v.call(this, {
178
+ h: b,
179
179
  template: this.$props.itemUI,
180
180
  defaultRendering: this.fieldsSvc.text(this.item),
181
181
  additionalProps: {
182
182
  item: this.item,
183
183
  itemHierarchicalIndex: this.itemId
184
184
  }
185
- }), h = function() {
185
+ }), r = function() {
186
186
  return s("span", {
187
- class: this.getContentClassName(),
187
+ class: "k-treeview-leaf",
188
188
  style: {
189
189
  touchAction: "none"
190
190
  },
@@ -192,9 +192,12 @@ const {
192
192
  }, [s("span", {
193
193
  class: "k-treeview-leaf-text"
194
194
  }, [u])]);
195
- };
195
+ }, f = this.itemId.split("_").length;
196
196
  return s("li", {
197
- class: d("k-treeview-item"),
197
+ class: a("k-treeview-item"),
198
+ style: {
199
+ "--kendo-treeview-level": f
200
+ },
198
201
  tabindex: this.currentTabIndex,
199
202
  role: "treeitem",
200
203
  "aria-level": this.$props.ariaLevel,
@@ -202,16 +205,16 @@ const {
202
205
  "aria-selected": this.ariaSelected,
203
206
  "aria-checked": this.ariaChecked,
204
207
  "aria-disabled": this.computedDisabled ? !0 : void 0
205
- }, [s("div", {
206
- class: "k-treeview-mid",
207
- ref: "treemid"
208
+ }, [s("span", {
209
+ class: this.getContentClassName(),
210
+ ref: "treeviewitemcontent"
208
211
  }, [m.call(this), p.call(this), this.$props.draggable ? s(x, {
209
212
  onPress: (n) => this.handlePress(n),
210
213
  onDrag: (n) => this.handleDrag(n),
211
214
  onRelease: (n) => this.handleRelease(n)
212
- }, c(e = h.call(this)) ? e : {
215
+ }, c(e = r.call(this)) ? e : {
213
216
  default: () => [e]
214
- }) : h.call(this)]), this.$props.animate && this.isMounted ? s(D, {
217
+ }) : r.call(this)]), this.$props.animate && this.isMounted ? s(F, {
215
218
  appear: this.ariaExpanded,
216
219
  transitionEnterDuration: 200,
217
220
  transitionExitDuration: 200,
@@ -249,23 +252,23 @@ const {
249
252
  },
250
253
  getIconClassName() {
251
254
  const e = this.fieldsSvc.expanded(this.item);
252
- return e && !a(this.item, this.fieldsSvc.getChildrenField()) ? "loading" : e ? "caret-alt-down" : this.$props.isRtl ? "caret-alt-left" : "caret-alt-right";
255
+ return e && !h(this.item, this.fieldsSvc.getChildrenField()) ? "loading" : e ? "chevron-down" : this.$props.isRtl ? "chevron-left" : "chevron-right";
253
256
  },
254
257
  getIconSVG() {
255
- return this.fieldsSvc.expanded(this.item) ? R : this.$props.isRtl ? M : _;
258
+ return this.fieldsSvc.expanded(this.item) ? w : this.$props.isRtl ? _ : M;
256
259
  },
257
260
  getContentClassName() {
258
- return d("k-treeview-leaf", {
261
+ return a("k-treeview-item-content", {
259
262
  "k-focus": this.$props.focusedItemId === this.itemId,
260
263
  "k-selected": this.fieldsSvc.selected(this.item),
261
264
  "k-disabled": this.computedDisabled
262
265
  });
263
266
  },
264
267
  assignDraggableMeta(e) {
265
- e && !e[o] && (e[o] = this.$props.itemId, e[F] = this.$props.treeGuid);
268
+ e && !e[l] && (e[l] = this.$props.itemId, e[R] = this.$props.treeGuid);
266
269
  }
267
270
  }
268
271
  });
269
272
  export {
270
- w as TreeViewItem
273
+ G as TreeViewItem
271
274
  };
@@ -12,4 +12,4 @@
12
12
  * Licensed under commercial license. See LICENSE.md in the package root for more information
13
13
  *-------------------------------------------------------------------------------------------
14
14
  */
15
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("@progress/kendo-vue-common"),require("@progress/kendo-vue-animation"),require("@progress/kendo-svg-icons")):"function"==typeof define&&define.amd?define(["exports","vue","@progress/kendo-vue-common","@progress/kendo-vue-animation","@progress/kendo-svg-icons"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoVueTreeview={},e.Vue,e.KendoVueCommon,e.KendoVueAnimation,e.KendoSVGIcons)}(this,(function(e,t,i,s,n){"use strict";const d="",r="_";function l(e,t,i){if(p(e))return t[Number(e)];{const s=t[Number(c(e))],n=s&&s[i]||[];return n.length?l(o(e),n,i):void 0}}function c(e){return m(e)?e:e.split(r)[0]}function o(e){if(m(e))return e;{const t=e.indexOf(r);return e.substring(t+1)}}function a(e){return h("0",e)}function h(e,t){return e=e.toString(),t?t+r+e:e}function u(e){const t=e.lastIndexOf(r);return t<0?d:e.substring(0,t)}function m(e){return e===d||e.indexOf(r)<0}function p(e){return e!==d&&e.indexOf(r)<0}function f(e){return e.split(r)}function g(e){const t=e.lastIndexOf(r);return t<0?e:e.substring(t+1)}function I(e,t){const i=t;t="r"+r+t;const s=u(e="r"+r+e)+r;if(t.startsWith(s)){const i=t.substring(s.length);if(i){const t=c(i);if(Number(g(e))<Number(t)){return o(s+(Number(t)-1).toString()+i.substring(t.length))}}}return i}var b=Object.defineProperty,v=(e,t,i)=>((e,t,i)=>t in e?b(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,t+"",i);class k{constructor(){v(this,"objects",[])}init(e){let t;for(let i=0;i<e.length;i++)i%5e4==0&&(t={},this.objects.push(t)),t[e[i]]=!0}hasId(e){return this.objects.some((t=>t[e]))}}function x(e,t){const i=(e||"").split(".");let s=t;return i.forEach((e=>{s=s?s[e]:void 0})),s}function F(e){return void 0!==e.length}function C(e,t){const i=x(t,e);return!(!i||!i.length)}function S(e,t){return t.expanded(e)&&C(e,t.getChildrenField())}function $(e,t,i,s){const n=[],r=new k;return r.init(e),E(r,t,i,d,n,s),n}function y(e,t,i,s,n){const d=Number(c(t));if(d>=e.length)return e;let r=e,l=e[d];return l[s]||(r=e.slice(),l=r[d]=Object.assign({},l,{[s]:!0})),p(t)?i(l):l[n]&&(l[n]=y(l[n],o(t),i,s,n)),r}function w(e,t,i){const s=f(e);let n=t;for(let e=0;e<s.length;e++){const t=n[Number(s[e])];if(i.disabled(t))return!1;n=t[i.getChildrenField()]}return!0}function N(e,t,i,s,n){return(e[s]||[]).every(((e,s)=>n.indexOf(i?x(i,e):h(s,t))>-1))}function D(e,t,i){const s=i.slice();if(p(e))s.splice(Number(e),1);else{const i=Number(c(e)),n=s[i]={...s[i]};n[t]=D(o(e),t,n[t])}return s}function V(e,t,i,s,n){const d=n.slice();if(p(s))if("child"===t){const t=d[Number(s)]={...d[Number(s)]};t[i]?(t[i]=t[i].slice(),t[i].push(e)):t[i]=[e]}else d.splice(Number(s)+("after"===t?1:0),0,e);else{const n=Number(c(s)),r=d[n]={...d[n]};r[i]=V(e,t,i,o(s),r[i])}return d}function E(e,t,i,s,n,d){for(let r=0;r<i.length;r++){const l=i[r],c=h(r,s);e.hasId(x(t,l))&&n.push(c),C(l,d)&&E(e,t,x(d,l),c,n,d)}}function R(e,t,s,n,d){switch(n){case i.Keys.left:return p(t)||d.expanded(e)&&w(t,s,d)?t:u(t);case i.Keys.right:return S(e,d)?a(t):t;case i.Keys.up:return function(){const e=Number(g(t)),i=u(t);return e?T(h(e-1,i),s,d):p(t)?t:i}();case i.Keys.down:return S(e,d)?a(t):O(t,s,d)||t;case i.Keys.home:return"0";case i.Keys.end:return function(){let e,t=(s.length-1).toString(),i=s[s.length-1];for(;S(i,d);)e=i[d.getChildrenField()],t=h(e.length-1,t),i=e[e.length-1];return t}();default:return t}}function O(e,t,i){const s=u(e),n=s?l(s,t,i.getChildrenField()):void 0,d=n?n[i.getChildrenField()]:t,r=Number(g(e));return r<d.length-1?h(r+1,s):n?O(s,t,i):void 0}function T(e,t,i){const s=l(e,t,i.getChildrenField());return S(s,i)?T(h(s[i.getChildrenField()].length-1,e),t,i):e}const M="expanded",G="items",K="selected",P="checked",B="checkIndeterminate",j="_kendoItemId",z="_kendoTreeViewGuid";function H(e){return"function"==typeof e||"[object Object]"===Object.prototype.toString.call(e)&&!t.isVNode(e)}const{sizeMap:_}=i.kendoThemeMaps,U=t.defineComponent({name:"KendoTreeViewItem",props:{item:Object,itemId:String,treeGuid:String,animate:Boolean,focusedItemId:String,tabbableItemId:String,fieldsService:Object,itemUI:Object,ariaMultiSelectable:Boolean,expandIcons:Boolean,checkboxes:Boolean,onFocusDomElNeeded:Object,draggable:Boolean,isRtl:Boolean,size:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large"].includes(e)}},disabled:Boolean,ariaLevel:Number,onItemClick:Function,onExpandChange:Function,onCheckChange:Function,onPress:Function,onDrag:Function,onRelease:Function,onFocusdomelneeded:Function},computed:{fieldsSvc(){return this.$props.fieldsService},currentTabIndex(){return(this.$props.focusedItemId||this.$props.tabbableItemId)===this.itemId?0:-1},ariaExpanded(){return this.fieldsSvc.hasChildren(this.item)||C(this.item,this.fieldsSvc.getChildrenField())?!!this.fieldsSvc.expanded(this.item):void 0},ariaChecked(){if(this.$props.checkboxes)return this.fieldsSvc.checked(this.item)?"true":this.fieldsSvc.checkIndeterminate(this.item)?"mixed":"false"},ariaSelected(){return!!this.fieldsSvc.selected(this.item)||(this.$props.ariaMultiSelectable?!!this.computedDisabled&&void 0:void 0)},computedDisabled(){const e=this.fieldsSvc.disabled(this.item);return void 0!==e?e:this.disabled}},created(){this.itemGuid=i.guid(),this.prevFocusedItemId=this.focusedItemId,this.prevFieldsService=this.fieldsService,this.prevItem=this.item},data:()=>({isMounted:!1}),watch:{focusedItemId:function(e,t){this.prevFocusedItemId=t},fieldsService:function(e,t){this.prevFieldsService=t},item:function(e,t){this.prevItem=t}},mounted(){const e=this.$props.focusedItemId,t=this.itemId;e&&e===t&&this.$emit("focusDomElNeeded",this.$el),this.checkboxElement=i.getRef(this,"checkboxElement"),this.checkboxElement&&(this.checkboxElement.indeterminate=this.fieldsSvc.checkIndeterminate(this.item)),this.assignDraggableMeta(this.$refs.treemid),this.isMounted=!0},updated(){const e=this.$props.focusedItemId;if(e&&e!==this.prevFocusedItemId&&e===this.itemId&&this.$emit("focusdomelneeded",this.$el),this.checkboxElement=i.getRef(this,"checkboxElement"),this.checkboxElement){const e=this.fieldsSvc.checkIndeterminate(this.item);e!==this.prevFieldsService.checkIndeterminate(this.prevItem)&&(this.checkboxElement.indeterminate=e)}this.assignDraggableMeta(this.$refs.treemid)},render(){let e,n;const d=function(){return S(this.item,this.fieldsSvc)?t.createVNode("ul",{class:"k-treeview-group",role:"group"},[this.fieldsSvc.children(this.item).map((function(e,i){return t.createVNode(U,{item:e,itemId:h(i,this.itemId),treeGuid:this.$props.treeGuid,animate:this.$props.animate,focusedItemId:this.$props.focusedItemId,tabbableItemId:this.$props.tabbableItemId,fieldsService:this.$props.fieldsService,itemUI:this.$props.itemUI,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.$props.ariaMultiSelectable,ariaLevel:this.$props.ariaLevel+1,onItemClick:this.handleItemClick,onFocusdomelneeded:this.handleFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.handlePress,onDrag:this.handleDrag,onRelease:this.handleRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.handleExpandChange,onCheckChange:this.handleCheckChange,key:i,size:this.$props.size,disabled:this.computedDisabled,isRtl:this.$props.isRtl},null)}),this)]):void 0},r=i.getTemplate.call(this,{h:t.h,template:this.$props.itemUI,defaultRendering:this.fieldsSvc.text(this.item),additionalProps:{item:this.item,itemHierarchicalIndex:this.itemId}}),l=function(){return t.createVNode("span",{class:this.getContentClassName(),style:{touchAction:"none"},onClick:this.handleItemClick},[t.createVNode("span",{class:"k-treeview-leaf-text"},[r])])};return t.createVNode("li",{class:i.classNames("k-treeview-item"),tabindex:this.currentTabIndex,role:"treeitem","aria-level":this.$props.ariaLevel,"aria-expanded":this.ariaExpanded,"aria-selected":this.ariaSelected,"aria-checked":this.ariaChecked,"aria-disabled":!!this.computedDisabled||void 0},[t.createVNode("div",{class:"k-treeview-mid",ref:"treemid"},[function(){return this.$props.expandIcons&&(this.fieldsSvc.hasChildren(this.item)||C(this.item,this.fieldsSvc.getChildrenField()))&&t.createVNode("span",{class:i.classNames("k-treeview-toggle",{"k-disabled":this.computedDisabled})},[t.createVNode(i.Icon,{name:this.getIconClassName(),icon:this.getIconSVG(),onClick:this.handleExpandChange},null)])}.call(this),function(){if(this.$props.checkboxes){const e=this.$props.size;return t.createVNode("div",{class:"k-checkbox-wrap",role:"presentation"},[t.createVNode("input",{type:"checkbox",class:i.classNames("k-checkbox k-rounded-md",{[`k-checkbox-${_[e]||e}`]:e,"k-disabled":this.computedDisabled}),"aria-label":this.item.text,checked:!!this.fieldsSvc.checked(this.item),id:this.itemGuid,tabindex:-1,onChange:this.handleCheckChange,ref:i.setRef(this,"checkboxElement")},null),t.createVNode("label",{class:"k-checkbox-label",for:this.itemGuid},null)])}}.call(this),this.$props.draggable?t.createVNode(i.Draggable,{onPress:e=>this.handlePress(e),onDrag:e=>this.handleDrag(e),onRelease:e=>this.handleRelease(e)},H(e=l.call(this))?e:{default:()=>[e]}):l.call(this)]),this.$props.animate&&this.isMounted?t.createVNode(s.Reveal,{appear:this.ariaExpanded,transitionEnterDuration:200,transitionExitDuration:200,key:this.itemGuid+"_animation",style:{display:"block"}},H(n=d.call(this))?n:{default:()=>[n]}):d.call(this)])},methods:{handleCheckChange(e,t,i){this.$emit("checkChange",e,t||this.item,i||this.itemId)},handleExpandChange(e,t,i){this.$emit("expandChange",e,t||this.item,i||this.itemId)},handleItemClick(e,t,i){this.$emit("itemClick",e,t||this.item,i||this.itemId)},handlePress(e,t,i){this.$emit("press",e,t||{...this.item},i||this.itemId)},handleDrag(e,t,i){this.$emit("drag",e,t||this.item,i||this.itemId)},handleRelease(e,t,i){this.$emit("release",e,t||this.item,i||this.itemId)},handleFocusDomElNeeded(e){this.$emit("focusdomelneeded",e)},getIconClassName(){const e=this.fieldsSvc.expanded(this.item);return e&&!C(this.item,this.fieldsSvc.getChildrenField())?"loading":e?"caret-alt-down":this.$props.isRtl?"caret-alt-left":"caret-alt-right"},getIconSVG(){return this.fieldsSvc.expanded(this.item)?n.caretAltDownIcon:this.$props.isRtl?n.caretAltLeftIcon:n.caretAltRightIcon},getContentClassName(){return i.classNames("k-treeview-leaf",{"k-focus":this.$props.focusedItemId===this.itemId,"k-selected":this.fieldsSvc.selected(this.item),"k-disabled":this.computedDisabled})},assignDraggableMeta(e){e&&!e[j]&&(e[j]=this.$props.itemId,e[z]=this.$props.treeGuid)}}});var Y=Object.defineProperty,A=(e,t,i)=>((e,t,i)=>t in e?Y(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,"symbol"!=typeof t?t+"":t,i);let L=class{constructor(e){A(this,"focusIdField"),A(this,"expandField"),A(this,"selectField"),A(this,"childrenField"),A(this,"hasChildrenField"),A(this,"textField"),A(this,"disableField"),A(this,"checkField"),A(this,"checkIndeterminateField"),this.expandField=e.expandField,this.selectField=e.selectField,this.hasChildrenField=e.hasChildrenField,this.childrenField=e.childrenField,this.textField=e.textField,this.disableField=e.disableField,this.checkField=e.checkField,this.checkIndeterminateField=e.checkIndeterminateField,this.focusIdField=e.focusIdField}expanded(e){return x(this.expandField,e)}selected(e){return x(this.selectField,e)}text(e){return x(this.textField,e)}disabled(e){return x(this.disableField,e)}hasChildren(e){return x(this.hasChildrenField,e)}children(e){return x(this.childrenField,e)||[]}checked(e){return x(this.checkField,e)}checkIndeterminate(e){return x(this.checkIndeterminateField,e)}focusId(e){return this.focusIdField&&x(this.focusIdField,e)}getChildrenField(){return this.childrenField}};const X={name:"@progress/kendo-vue-treeview",productName:"Kendo UI for Vue",productCode:"KENDOUIVUE",productCodes:["KENDOUIVUE"],publishDate:1650203065,version:"7.1.0-develop.5",licensingDocsUrl:"https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"},{sizeMap:q}=i.kendoThemeMaps,W=t.defineComponent({name:"KendoTreeView",emits:{blur:null,focus:null,itemdragstart:null,itemdragover:null,itemdragend:null,keydown:null,itemclick:null,expandchange:null,checkchange:null},props:{dataItems:Array,animate:{type:Boolean,default:!0},id:String,draggable:Boolean,tabIndex:Number,focusIdField:String,getFocusHierarchicalIndex:Function,expandField:{type:String,default:M},selectField:{type:String,default:K},childrenField:{type:String,default:G},hasChildrenField:{type:String,default:"hasChildren"},expandIcons:Boolean,checkboxes:Boolean,textField:{type:String,default:"text"},disableField:{type:String,default:"disabled"},checkField:{type:String,default:P},checkIndeterminateField:{type:String,default:B},item:[Object,String,Function],ariaMultiSelectable:[String,Boolean],ariaLabel:String,ariaLabelledby:String,size:{type:String,default:"medium",validator:function(e){return[null,"small","medium","large"].includes(e)}}},data:()=>({currentRtl:!1,focusedItemId:void 0,focusedItemPublicId:void 0,tabbableItemId:"0"}),mounted(){this.currentRtl=i.isRtl(this.$el)},computed:{treeGuid(){return this.id||this.innerId}},created(){i.validatePackage(X),this.allowExplicitFocus=!1,this.innerId=i.guid()},updated(){this.allowExplicitFocus=!1,this.refocusDueToFocusIdField()},render(){this.fieldsSvc=new L(this.$props);const{size:e}=this.$props;return t.createVNode("div",{class:i.classNames("k-treeview",{[`k-treeview-${q[e]||e}`]:e,"k-user-select-none":this.draggable,"k-rtl":this.currentRtl}),onKeydown:this.onKeyDown,onFocusin:this.onFocus,onFocusout:this.onBlur,"aria-multiselectable":!!this.ariaMultiSelectable||void 0,"aria-label":this.$props["aria-label"],"aria-labelledby":this.$props["aria-labelledby"],tabindex:this.$props.tabIndex,style:{userSelect:this.draggable?"none":void 0}},[t.createVNode("ul",{class:"k-treeview-lines k-treeview-group",role:"tree"},[this.dataItems.map((function(s,n){const d=i.templateRendering.call(this,this.item,i.getListeners.call(this));return t.createVNode(U,{item:s,itemId:n.toString(),treeGuid:this.treeGuid,animate:this.$props.animate,focusedItemId:this.focusedItemId,tabbableItemId:this.tabbableItemId,fieldsService:this.fieldsSvc,itemUI:d,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.ariaMultiSelectable,onItemClick:this.onItemClick,onFocusdomelneeded:this.onFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.onExpandChange,onCheckChange:this.onCheckChange,key:n,size:e,ariaLevel:1,isRtl:this.currentRtl},null)}),this)])])},methods:{onFocusDomElNeeded(e){this.allowExplicitFocus&&this.focusDomItem(e)},onCheckChange(e,t,i){this.setFocus(i),this.dispatchCheckChange(e,t,i)},onExpandChange(e,t,i){this.setFocus(i),this.dispatchExpandChange(e,t,i)},onPress(e,t,i){this.$emit("itemdragstart",{target:this,item:t,itemHierarchicalIndex:i})},onDrag(e,t,i){const{pageX:s,pageY:n,clientX:d,clientY:r}=e;this.$emit("itemdragover",{target:this,item:t,itemHierarchicalIndex:i,pageX:s,pageY:n,clientX:d,clientY:r})},onRelease(e,t,i){const{pageX:s,pageY:n,clientX:d,clientY:r}=e;this.$emit("itemdragend",{target:this,item:t,itemHierarchicalIndex:i,pageX:s,pageY:n,clientX:d,clientY:r})},onItemClick(e,t,i){this.setFocus(i),this.dispatchItemClick(e,t,i)},onFocus(e){clearTimeout(this.blurRequest),void 0===this.focusedItemId&&this.dataItems.length&&this.setFocus(this.tabbableItemId),this.$emit("focus",e)},onBlur(e){clearTimeout(this.blurRequest),i.canUseDOM&&(this.blurRequest=window.setTimeout((()=>this.setFocus(void 0)),0)),this.$emit("blur",e)},onKeyDown(e){const t=this.getFocusedItem();if(t){const i=R(t,this.focusedItemId,this.dataItems,e.keyCode,this.fieldsSvc);i!==this.focusedItemId&&(e.preventDefault(),this.allowExplicitFocus=!0,this.setFocus(i)),this.dispatchEventsOnKeyDown(e,t)}this.$emit("keydown",e)},dispatchEventsOnKeyDown(e,t){const s=()=>w(this.focusedItemId,this.dataItems,this.fieldsSvc),n=this.fieldsSvc.disabled(t);e.keyCode===i.Keys.left&&this.fieldsSvc.expanded(t)&&s()||e.keyCode===i.Keys.right&&!this.fieldsSvc.expanded(t)&&(this.fieldsSvc.hasChildren(t)||C(t,this.$props.childrenField))&&s()?this.dispatchExpandChange(e,t,this.focusedItemId):e.keyCode!==i.Keys.enter||n?e.keyCode===i.Keys.space&&!n&&(e.preventDefault(),this.dispatchCheckChange(e,t,this.focusedItemId)):this.dispatchItemClick(e,t,this.focusedItemId)},setFocus(e){if(e)if(this.fieldsSvc.focusIdField){const t=this.getItemById(e);this.focusedItemId=e,this.focusedItemPublicId=this.fieldsSvc.focusId(t)}else this.focusedItemId=e;else{const e=this.focusedItemId;this.focusedItemId=void 0,this.focusedItemPublicId=void 0,this.tabbableItemId=e}},getFocusedItem(){return this.focusedItemId?this.getItemById(this.focusedItemId):void 0},getItemById(e){return l(e,this.dataItems,this.$props.childrenField||G)},dispatchCheckChange(e,t,i){this.$emit("checkchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchExpandChange(e,t,i){this.$emit("expandchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchItemClick(e,t,i){this.$emit("itemclick",{item:t,itemHierarchicalIndex:i,event:e})},refocusDueToFocusIdField(){if(this.fieldsSvc.focusIdField){const e=this.focusedItemPublicId;if(e){const t=this.$props.getFocusHierarchicalIndex?this.$props.getFocusHierarchicalIndex(e):function(e,t,i,s){const n=$([e],t,i,s);return n.length?n[0]:void 0}(e,this.fieldsSvc.focusIdField,this.dataItems,this.$props.childrenField);t!==this.focusedItemId&&(this.allowExplicitFocus=!0,this.focusedItemId=t)}}},focusDomItem(e){e.focus()},guid(){return this.treeGuid}}});function J(e,t,i,s,n){if(i){let{ids:d,field:r}=Q(i,t);return function(e,t,i,s,n){let d=e;return t.forEach((e=>{d=y(d,e,(e=>Z(i,e)),s,n)})),d}(e,!F(i)&&i.idField?$(d,i.idField,e,n):d,r,s,n)}return e}function Q(e,t){let i,s;return F(e)?(i=e,s=t):(i=e.ids||[],s=e.operationField||t),{ids:i,field:s}}function Z(e,t){const i=(e||"").split(".");let s=t;for(let e=0;e<i.length;e++){const t=i[e];if(e===i.length-1)s[t]=!0;else{if(void 0===s[t])return;s[t]={...s[t]},s=s[t]}}}function ee(e,t,i,s,n){let d=!1;for(let r=0;r<e.length;r++){const l=e[r];if(x(s,l)){if(!d)for(let e=0;e<t.length;e++)Z(n,t[e]);d=!0,l[i]&&ee(l[i],[],i,s,n)}else l[i]&&ee(l[i],d?[l]:t.concat([l]),i,s,n)}}const te=t.defineComponent({name:"KendoTreeViewDragClue",data:()=>({visible:!1,top:0,left:0,text:"",operationIconName:"cancel",operationSvg:n.cancelIcon}),render(){const e={top:this.top+"px",left:this.left+"px"};return this.visible&&t.createVNode("div",{class:"k-header k-drag-clue",style:{display:"block",position:"absolute",zIndex:2e4,padding:"4px 6px",...e}},[t.createVNode(i.Icon,{name:i.getIconName(this.operationIconName),icon:this.operationSvg,class:"k-drag-status"},null),this.text])},methods:{show(e,t,i,s){this.visible=!0,this.top=e,this.left=t,this.text=i,"string"==typeof s?this.operationIconName=s:this.operationSvg=s},hide(){this.visible=!1}}});var ie=Object.defineProperty,se=(e,t,i)=>((e,t,i)=>t in e?ie(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,"symbol"!=typeof t?t+"":t,i);e.TreeView=W,e.TreeViewDragAnalyzer=class{constructor(e){se(this,"itemId"),se(this,"treeViewGuid"),se(this,"initialized",!1),se(this,"destDomNodeWithMeta"),se(this,"destItemId"),se(this,"destTreeViewGuid"),this.event=e,this.itemId=e.itemHierarchicalIndex,this.treeViewGuid=e.target.guid()}init(){return this.initialized||(this.setDestimationMeta(document.elementFromPoint(this.event.clientX,this.event.clientY)),this.initialized=!0),this}get isDropAllowed(){return!!(this.initialized&&this.destItemId&&this.destTreeViewGuid)&&!`${this.destTreeViewGuid}_${this.destItemId}_`.startsWith(`${this.treeViewGuid}_${this.itemId}_`)}get destinationMeta(){return{itemHierarchicalIndex:this.destItemId,treeViewGuid:this.destTreeViewGuid}}getDropOperation(){if(this.initialized&&this.isDropAllowed){const{top:e,height:t}=this.destDomNodeWithMeta.getBoundingClientRect();return e+t-this.event.clientY<6?"after":this.event.clientY-e<6?"before":"child"}}setDestimationMeta(e){let t=e;for(;t&&!t[j];)t=t.parentNode;t&&t[j]&&(this.destDomNodeWithMeta=t,this.destItemId=t[j],this.destTreeViewGuid=t[z])}},e.TreeViewDragClue=te,e.TreeViewItem=U,e.handleTreeViewCheckChange=function(e,t,i,s={},n){if(!i||!i.length)return[];const{ids:d,idField:r}=function(e){let t,i;return F(e)?t=e:(t=e.ids||[],i=e.idField),{ids:t,idField:i}}(t),c=r?x(r,e.item):e.itemHierarchicalIndex,o=d.indexOf(c),a=-1===o,m=n||G;let p;return s.singleMode?p=a?[c]:[]:(p=d.slice(),a?p.push(c):p.splice(o,1),s.checkChildren&&function(e,t,i,s,n,d){(function(e,t,i,s){return s?function e(t){let n=[];const d=t[i]||[];for(let t=0;t<d.length;t++)n.push(x(s,d[t])),n=n.concat(e(d[t]));return n}(e):function e(t,s){let n=[];const d=t[i]||[];for(let t=0;t<d.length;t++){const i=h(t,s);n.push(i),n=n.concat(e(d[t],i))}return n}(e,t)})(e,t,n,s).forEach((e=>{i&&-1===d.indexOf(e)?d.push(e):!i&&d.indexOf(e)>-1&&d.splice(d.indexOf(e),1)}))}(e.item,e.itemHierarchicalIndex,a,r,m,p),s.checkParents&&function(e,t,i,s,n,d){const r=h();let c=r.next();function o(){for(;!c.done;){const{id:e,item:t}=c.value;if(-1!==n.indexOf(e)||!N(t,e,i,s,n))break;n.push(e),c=r.next()}}function a(){for(;!c.done;){const{id:e}=c.value,t=n.indexOf(e);if(!(t>-1))break;n.splice(t,1),c=r.next()}}function*h(){if(i){const n=function(e,t,i){const s=[],n=f(e);let d=i;for(let e=0;e<n.length-1&&d;e++){const i=d[Number(n[e])];s.push(i),d=i[t]}return s}(e,s,d);for(let e=n.length-1;e>-1;e--)yield{id:x(i,n[e]),item:t?n[e]:void 0}}else{let i=u(e);for(;i;)yield{id:i,item:t?l(i,d,s):void 0},i=u(i)}}t?o():a()}(e.itemHierarchicalIndex,a,r,m,p,i)),F(t)?p:Object.assign({},t,{ids:p})},e.moveTreeViewItem=function(e,t,i,s,n,d){const r=d||G;if(!(t&&t.length&&e&&s)||n&&!n.length||!l(s,n&&n!==t?n:t,r))return o();const c=l(e,t,r);if(!c)return o();if(n&&n!==t){return{sourceData:D(e,r,t),targetData:V(c,i,r,s,n)}}{if(`${s}_`.startsWith(`${e}_`))return o();const d=D(e,r,t),l=V(c,i,r,I(e,s),d);return n?{sourceData:l,targetData:l}:l}function o(){return n?{sourceData:t,targetData:n}:t}},e.processTreeViewItems=function(e,t){if(!e||!e.length)return[];let i=e;const s=t.cloneField||"cloned",n=t.expandField||M,d=t.selectField||K,r=t.checkField||P,l=t.childrenField||G;return i=J(i,n,t.expand,s,l),i=J(i,d,t.select,s,l),i=J(i,r,t.check,s,l),function(e,t,i){if(i&&!F(i)&&i.applyCheckIndeterminate){const{field:s}=Q(i,P),n=i.checkIndeterminateField||B;for(let i=0;i<e.length;i++){const d=e[i],r=d[t];r&&ee(r,x(s,d)?[]:[d],t,s,n)}}}(i,l,t.check),i}}));
15
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue"),require("@progress/kendo-vue-common"),require("@progress/kendo-vue-animation"),require("@progress/kendo-svg-icons")):"function"==typeof define&&define.amd?define(["exports","vue","@progress/kendo-vue-common","@progress/kendo-vue-animation","@progress/kendo-svg-icons"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoVueTreeview={},e.Vue,e.KendoVueCommon,e.KendoVueAnimation,e.KendoSVGIcons)}(this,(function(e,t,i,s,n){"use strict";const d="",r="_";function o(e,t,i){if(p(e))return t[Number(e)];{const s=t[Number(c(e))],n=s&&s[i]||[];return n.length?o(l(e),n,i):void 0}}function c(e){return m(e)?e:e.split(r)[0]}function l(e){if(m(e))return e;{const t=e.indexOf(r);return e.substring(t+1)}}function a(e){return h("0",e)}function h(e,t){return e=e.toString(),t?t+r+e:e}function u(e){const t=e.lastIndexOf(r);return t<0?d:e.substring(0,t)}function m(e){return e===d||e.indexOf(r)<0}function p(e){return e!==d&&e.indexOf(r)<0}function f(e){return e.split(r)}function g(e){const t=e.lastIndexOf(r);return t<0?e:e.substring(t+1)}function I(e,t){const i=t;t="r"+r+t;const s=u(e="r"+r+e)+r;if(t.startsWith(s)){const i=t.substring(s.length);if(i){const t=c(i);if(Number(g(e))<Number(t)){return l(s+(Number(t)-1).toString()+i.substring(t.length))}}}return i}var b=Object.defineProperty,v=(e,t,i)=>((e,t,i)=>t in e?b(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,t+"",i);class k{constructor(){v(this,"objects",[])}init(e){let t;for(let i=0;i<e.length;i++)i%5e4==0&&(t={},this.objects.push(t)),t[e[i]]=!0}hasId(e){return this.objects.some((t=>t[e]))}}function x(e,t){const i=(e||"").split(".");let s=t;return i.forEach((e=>{s=s?s[e]:void 0})),s}function F(e){return void 0!==e.length}function C(e,t){const i=x(t,e);return!(!i||!i.length)}function S(e,t){return t.expanded(e)&&C(e,t.getChildrenField())}function $(e,t,i,s){const n=[],r=new k;return r.init(e),E(r,t,i,d,n,s),n}function y(e,t,i,s,n){const d=Number(c(t));if(d>=e.length)return e;let r=e,o=e[d];return o[s]||(r=e.slice(),o=r[d]=Object.assign({},o,{[s]:!0})),p(t)?i(o):o[n]&&(o[n]=y(o[n],l(t),i,s,n)),r}function w(e,t,i){const s=f(e);let n=t;for(let e=0;e<s.length;e++){const t=n[Number(s[e])];if(i.disabled(t))return!1;n=t[i.getChildrenField()]}return!0}function N(e,t,i,s,n){return(e[s]||[]).every(((e,s)=>n.indexOf(i?x(i,e):h(s,t))>-1))}function D(e,t,i){const s=i.slice();if(p(e))s.splice(Number(e),1);else{const i=Number(c(e)),n=s[i]={...s[i]};n[t]=D(l(e),t,n[t])}return s}function V(e,t,i,s,n){const d=n.slice();if(p(s))if("child"===t){const t=d[Number(s)]={...d[Number(s)]};t[i]?(t[i]=t[i].slice(),t[i].push(e)):t[i]=[e]}else d.splice(Number(s)+("after"===t?1:0),0,e);else{const n=Number(c(s)),r=d[n]={...d[n]};r[i]=V(e,t,i,l(s),r[i])}return d}function E(e,t,i,s,n,d){for(let r=0;r<i.length;r++){const o=i[r],c=h(r,s);e.hasId(x(t,o))&&n.push(c),C(o,d)&&E(e,t,x(d,o),c,n,d)}}function R(e,t,s,n,d){switch(n){case i.Keys.left:return p(t)||d.expanded(e)&&w(t,s,d)?t:u(t);case i.Keys.right:return S(e,d)?a(t):t;case i.Keys.up:return function(){const e=Number(g(t)),i=u(t);return e?T(h(e-1,i),s,d):p(t)?t:i}();case i.Keys.down:return S(e,d)?a(t):O(t,s,d)||t;case i.Keys.home:return"0";case i.Keys.end:return function(){let e,t=(s.length-1).toString(),i=s[s.length-1];for(;S(i,d);)e=i[d.getChildrenField()],t=h(e.length-1,t),i=e[e.length-1];return t}();default:return t}}function O(e,t,i){const s=u(e),n=s?o(s,t,i.getChildrenField()):void 0,d=n?n[i.getChildrenField()]:t,r=Number(g(e));return r<d.length-1?h(r+1,s):n?O(s,t,i):void 0}function T(e,t,i){const s=o(e,t,i.getChildrenField());return S(s,i)?T(h(s[i.getChildrenField()].length-1,e),t,i):e}const M="expanded",G="items",K="selected",P="checked",B="checkIndeterminate",j="_kendoItemId",z="_kendoTreeViewGuid";function H(e){return"function"==typeof e||"[object Object]"===Object.prototype.toString.call(e)&&!t.isVNode(e)}const{sizeMap:_}=i.kendoThemeMaps,U=t.defineComponent({name:"KendoTreeViewItem",props:{item:Object,itemId:String,treeGuid:String,animate:Boolean,focusedItemId:String,tabbableItemId:String,fieldsService:Object,itemUI:Object,ariaMultiSelectable:Boolean,expandIcons:Boolean,checkboxes:Boolean,onFocusDomElNeeded:Object,draggable:Boolean,isRtl:Boolean,size:{type:String,validator:function(e){return["small","medium","large"].includes(e)}},disabled:Boolean,ariaLevel:Number,onItemClick:Function,onExpandChange:Function,onCheckChange:Function,onPress:Function,onDrag:Function,onRelease:Function,onFocusdomelneeded:Function},computed:{fieldsSvc(){return this.$props.fieldsService},currentTabIndex(){return(this.$props.focusedItemId||this.$props.tabbableItemId)===this.itemId?0:-1},ariaExpanded(){return this.fieldsSvc.hasChildren(this.item)||C(this.item,this.fieldsSvc.getChildrenField())?!!this.fieldsSvc.expanded(this.item):void 0},ariaChecked(){if(this.$props.checkboxes)return this.fieldsSvc.checked(this.item)?"true":this.fieldsSvc.checkIndeterminate(this.item)?"mixed":"false"},ariaSelected(){return!!this.fieldsSvc.selected(this.item)||(this.$props.ariaMultiSelectable?!!this.computedDisabled&&void 0:void 0)},computedDisabled(){const e=this.fieldsSvc.disabled(this.item);return void 0!==e?e:this.disabled}},created(){this.itemGuid=i.guid(),this.prevFocusedItemId=this.focusedItemId,this.prevFieldsService=this.fieldsService,this.prevItem=this.item},data:()=>({isMounted:!1}),watch:{focusedItemId:function(e,t){this.prevFocusedItemId=t},fieldsService:function(e,t){this.prevFieldsService=t},item:function(e,t){this.prevItem=t}},mounted(){const e=this.$props.focusedItemId,t=this.itemId;e&&e===t&&this.$emit("focusDomElNeeded",this.$el),this.checkboxElement=i.getRef(this,"checkboxElement"),this.checkboxElement&&(this.checkboxElement.indeterminate=this.fieldsSvc.checkIndeterminate(this.item)),this.assignDraggableMeta(this.$refs.treeviewitemcontent),this.isMounted=!0},updated(){const e=this.$props.focusedItemId;if(e&&e!==this.prevFocusedItemId&&e===this.itemId&&this.$emit("focusdomelneeded",this.$el),this.checkboxElement=i.getRef(this,"checkboxElement"),this.checkboxElement){const e=this.fieldsSvc.checkIndeterminate(this.item);e!==this.prevFieldsService.checkIndeterminate(this.prevItem)&&(this.checkboxElement.indeterminate=e)}this.assignDraggableMeta(this.$refs.treeviewitemcontent)},render(){let e,n;const d=function(){return S(this.item,this.fieldsSvc)?t.createVNode("ul",{class:"k-treeview-group",role:"group"},[this.fieldsSvc.children(this.item).map((function(e,i){return t.createVNode(U,{item:e,itemId:h(i,this.itemId),treeGuid:this.$props.treeGuid,animate:this.$props.animate,focusedItemId:this.$props.focusedItemId,tabbableItemId:this.$props.tabbableItemId,fieldsService:this.$props.fieldsService,itemUI:this.$props.itemUI,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.$props.ariaMultiSelectable,ariaLevel:this.$props.ariaLevel+1,onItemClick:this.handleItemClick,onFocusdomelneeded:this.handleFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.handlePress,onDrag:this.handleDrag,onRelease:this.handleRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.handleExpandChange,onCheckChange:this.handleCheckChange,key:i,size:this.$props.size,disabled:this.computedDisabled,isRtl:this.$props.isRtl},null)}),this)]):void 0},r=i.getTemplate.call(this,{h:t.h,template:this.$props.itemUI,defaultRendering:this.fieldsSvc.text(this.item),additionalProps:{item:this.item,itemHierarchicalIndex:this.itemId}}),o=function(){return t.createVNode("span",{class:"k-treeview-leaf",style:{touchAction:"none"},onClick:this.handleItemClick},[t.createVNode("span",{class:"k-treeview-leaf-text"},[r])])},c=this.itemId.split("_").length;return t.createVNode("li",{class:i.classNames("k-treeview-item"),style:{"--kendo-treeview-level":c},tabindex:this.currentTabIndex,role:"treeitem","aria-level":this.$props.ariaLevel,"aria-expanded":this.ariaExpanded,"aria-selected":this.ariaSelected,"aria-checked":this.ariaChecked,"aria-disabled":!!this.computedDisabled||void 0},[t.createVNode("span",{class:this.getContentClassName(),ref:"treeviewitemcontent"},[function(){return this.$props.expandIcons&&(this.fieldsSvc.hasChildren(this.item)||C(this.item,this.fieldsSvc.getChildrenField()))&&t.createVNode("span",{class:i.classNames("k-treeview-toggle",{"k-disabled":this.computedDisabled})},[t.createVNode(i.Icon,{name:this.getIconClassName(),icon:this.getIconSVG(),onClick:this.handleExpandChange},null)])}.call(this),function(){if(this.$props.checkboxes){const e=this.$props.size,s=!!this.fieldsSvc.checked(this.item);return t.createVNode("span",{class:"k-checkbox-wrap",role:"presentation"},[t.createVNode("input",{type:"checkbox",class:i.classNames("k-checkbox",{[`k-checkbox-${_[e]||e}`]:e,"k-disabled":this.computedDisabled,"k-checked":s}),"aria-label":this.item.text,checked:s,id:this.itemGuid,tabindex:-1,onChange:this.handleCheckChange,ref:i.setRef(this,"checkboxElement")},null),t.createVNode("label",{class:"k-checkbox-label",for:this.itemGuid},null)])}}.call(this),this.$props.draggable?t.createVNode(i.Draggable,{onPress:e=>this.handlePress(e),onDrag:e=>this.handleDrag(e),onRelease:e=>this.handleRelease(e)},H(e=o.call(this))?e:{default:()=>[e]}):o.call(this)]),this.$props.animate&&this.isMounted?t.createVNode(s.Reveal,{appear:this.ariaExpanded,transitionEnterDuration:200,transitionExitDuration:200,key:this.itemGuid+"_animation",style:{display:"block"}},H(n=d.call(this))?n:{default:()=>[n]}):d.call(this)])},methods:{handleCheckChange(e,t,i){this.$emit("checkChange",e,t||this.item,i||this.itemId)},handleExpandChange(e,t,i){this.$emit("expandChange",e,t||this.item,i||this.itemId)},handleItemClick(e,t,i){this.$emit("itemClick",e,t||this.item,i||this.itemId)},handlePress(e,t,i){this.$emit("press",e,t||{...this.item},i||this.itemId)},handleDrag(e,t,i){this.$emit("drag",e,t||this.item,i||this.itemId)},handleRelease(e,t,i){this.$emit("release",e,t||this.item,i||this.itemId)},handleFocusDomElNeeded(e){this.$emit("focusdomelneeded",e)},getIconClassName(){const e=this.fieldsSvc.expanded(this.item);return e&&!C(this.item,this.fieldsSvc.getChildrenField())?"loading":e?"chevron-down":this.$props.isRtl?"chevron-left":"chevron-right"},getIconSVG(){return this.fieldsSvc.expanded(this.item)?n.chevronDownIcon:this.$props.isRtl?n.chevronLeftIcon:n.chevronRightIcon},getContentClassName(){return i.classNames("k-treeview-item-content",{"k-focus":this.$props.focusedItemId===this.itemId,"k-selected":this.fieldsSvc.selected(this.item),"k-disabled":this.computedDisabled})},assignDraggableMeta(e){e&&!e[j]&&(e[j]=this.$props.itemId,e[z]=this.$props.treeGuid)}}});var Y=Object.defineProperty,L=(e,t,i)=>((e,t,i)=>t in e?Y(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,"symbol"!=typeof t?t+"":t,i);let X=class{constructor(e){L(this,"focusIdField"),L(this,"expandField"),L(this,"selectField"),L(this,"childrenField"),L(this,"hasChildrenField"),L(this,"textField"),L(this,"disableField"),L(this,"checkField"),L(this,"checkIndeterminateField"),this.expandField=e.expandField,this.selectField=e.selectField,this.hasChildrenField=e.hasChildrenField,this.childrenField=e.childrenField,this.textField=e.textField,this.disableField=e.disableField,this.checkField=e.checkField,this.checkIndeterminateField=e.checkIndeterminateField,this.focusIdField=e.focusIdField}expanded(e){return x(this.expandField,e)}selected(e){return x(this.selectField,e)}text(e){return x(this.textField,e)}disabled(e){return x(this.disableField,e)}hasChildren(e){return x(this.hasChildrenField,e)}children(e){return x(this.childrenField,e)||[]}checked(e){return x(this.checkField,e)}checkIndeterminate(e){return x(this.checkIndeterminateField,e)}focusId(e){return this.focusIdField&&x(this.focusIdField,e)}getChildrenField(){return this.childrenField}};const q={name:"@progress/kendo-vue-treeview",productName:"Kendo UI for Vue",productCode:"KENDOUIVUE",productCodes:["KENDOUIVUE"],publishDate:1650203065,version:"7.1.0-develop.7",licensingDocsUrl:"https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"},{sizeMap:A}=i.kendoThemeMaps,W=t.defineComponent({name:"KendoTreeView",emits:{blur:null,focus:null,itemdragstart:null,itemdragover:null,itemdragend:null,keydown:null,itemclick:null,expandchange:null,checkchange:null},props:{dataItems:Array,animate:{type:Boolean,default:!0},id:String,draggable:Boolean,tabIndex:Number,focusIdField:String,getFocusHierarchicalIndex:Function,expandField:{type:String,default:M},selectField:{type:String,default:K},childrenField:{type:String,default:G},hasChildrenField:{type:String,default:"hasChildren"},expandIcons:Boolean,checkboxes:Boolean,textField:{type:String,default:"text"},disableField:{type:String,default:"disabled"},checkField:{type:String,default:P},checkIndeterminateField:{type:String,default:B},item:[Object,String,Function],ariaMultiSelectable:[String,Boolean],ariaLabel:String,ariaLabelledby:String,size:{type:String,validator:function(e){return["small","medium","large"].includes(e)}}},data:()=>({currentRtl:!1,focusedItemId:void 0,focusedItemPublicId:void 0,tabbableItemId:"0"}),mounted(){this.currentRtl=i.isRtl(this.$el)},computed:{treeGuid(){return this.id||this.innerId}},created(){i.validatePackage(q),this.allowExplicitFocus=!1,this.innerId=i.guid()},updated(){this.allowExplicitFocus=!1,this.refocusDueToFocusIdField()},render(){this.fieldsSvc=new X(this.$props);const{size:e}=this.$props;return t.createVNode("div",{class:i.classNames("k-treeview",{[`k-treeview-${A[e]||e}`]:e,"k-user-select-none":this.draggable,"k-rtl":this.currentRtl}),onKeydown:this.onKeyDown,onFocusin:this.onFocus,onFocusout:this.onBlur,"aria-multiselectable":!!this.ariaMultiSelectable||void 0,"aria-label":this.$props["aria-label"],"aria-labelledby":this.$props["aria-labelledby"],tabindex:this.$props.tabIndex,style:{userSelect:this.draggable?"none":void 0}},[t.createVNode("ul",{class:"k-treeview-lines k-treeview-group",role:"tree"},[this.dataItems.map((function(s,n){const d=i.templateRendering.call(this,this.item,i.getListeners.call(this));return t.createVNode(U,{item:s,itemId:n.toString(),treeGuid:this.treeGuid,animate:this.$props.animate,focusedItemId:this.focusedItemId,tabbableItemId:this.tabbableItemId,fieldsService:this.fieldsSvc,itemUI:d,checkboxes:this.$props.checkboxes,ariaMultiSelectable:this.ariaMultiSelectable,onItemClick:this.onItemClick,onFocusdomelneeded:this.onFocusDomElNeeded,draggable:this.$props.draggable,onPress:this.onPress,onDrag:this.onDrag,onRelease:this.onRelease,expandIcons:this.$props.expandIcons,onExpandChange:this.onExpandChange,onCheckChange:this.onCheckChange,key:n,size:e,ariaLevel:1,isRtl:this.currentRtl},null)}),this)])])},methods:{onFocusDomElNeeded(e){this.allowExplicitFocus&&this.focusDomItem(e)},onCheckChange(e,t,i){this.setFocus(i),this.dispatchCheckChange(e,t,i)},onExpandChange(e,t,i){this.setFocus(i),this.dispatchExpandChange(e,t,i)},onPress(e,t,i){this.$emit("itemdragstart",{target:this,item:t,itemHierarchicalIndex:i})},onDrag(e,t,i){const{pageX:s,pageY:n,clientX:d,clientY:r}=e;this.$emit("itemdragover",{target:this,item:t,itemHierarchicalIndex:i,pageX:s,pageY:n,clientX:d,clientY:r})},onRelease(e,t,i){const{pageX:s,pageY:n,clientX:d,clientY:r}=e;this.$emit("itemdragend",{target:this,item:t,itemHierarchicalIndex:i,pageX:s,pageY:n,clientX:d,clientY:r})},onItemClick(e,t,i){this.setFocus(i),this.dispatchItemClick(e,t,i)},onFocus(e){clearTimeout(this.blurRequest),void 0===this.focusedItemId&&this.dataItems.length&&this.setFocus(this.tabbableItemId),this.$emit("focus",e)},onBlur(e){clearTimeout(this.blurRequest),i.canUseDOM&&(this.blurRequest=window.setTimeout((()=>this.setFocus(void 0)),0)),this.$emit("blur",e)},onKeyDown(e){const t=this.getFocusedItem();if(t){const i=R(t,this.focusedItemId,this.dataItems,e.keyCode,this.fieldsSvc);i!==this.focusedItemId&&(e.preventDefault(),this.allowExplicitFocus=!0,this.setFocus(i)),this.dispatchEventsOnKeyDown(e,t)}this.$emit("keydown",e)},dispatchEventsOnKeyDown(e,t){const s=()=>w(this.focusedItemId,this.dataItems,this.fieldsSvc),n=this.fieldsSvc.disabled(t);e.keyCode===i.Keys.left&&this.fieldsSvc.expanded(t)&&s()||e.keyCode===i.Keys.right&&!this.fieldsSvc.expanded(t)&&(this.fieldsSvc.hasChildren(t)||C(t,this.$props.childrenField))&&s()?this.dispatchExpandChange(e,t,this.focusedItemId):e.keyCode!==i.Keys.enter||n?e.keyCode===i.Keys.space&&!n&&(e.preventDefault(),this.dispatchCheckChange(e,t,this.focusedItemId)):this.dispatchItemClick(e,t,this.focusedItemId)},setFocus(e){if(e)if(this.fieldsSvc.focusIdField){const t=this.getItemById(e);this.focusedItemId=e,this.focusedItemPublicId=this.fieldsSvc.focusId(t)}else this.focusedItemId=e;else{const e=this.focusedItemId;this.focusedItemId=void 0,this.focusedItemPublicId=void 0,this.tabbableItemId=e}},getFocusedItem(){return this.focusedItemId?this.getItemById(this.focusedItemId):void 0},getItemById(e){return o(e,this.dataItems,this.$props.childrenField||G)},dispatchCheckChange(e,t,i){this.$emit("checkchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchExpandChange(e,t,i){this.$emit("expandchange",{item:t,itemHierarchicalIndex:i,event:e})},dispatchItemClick(e,t,i){this.$emit("itemclick",{item:t,itemHierarchicalIndex:i,event:e})},refocusDueToFocusIdField(){if(this.fieldsSvc.focusIdField){const e=this.focusedItemPublicId;if(e){const t=this.$props.getFocusHierarchicalIndex?this.$props.getFocusHierarchicalIndex(e):function(e,t,i,s){const n=$([e],t,i,s);return n.length?n[0]:void 0}(e,this.fieldsSvc.focusIdField,this.dataItems,this.$props.childrenField);t!==this.focusedItemId&&(this.allowExplicitFocus=!0,this.focusedItemId=t)}}},focusDomItem(e){e.focus()},guid(){return this.treeGuid}}});function J(e,t,i,s,n){if(i){let{ids:d,field:r}=Q(i,t);return function(e,t,i,s,n){let d=e;return t.forEach((e=>{d=y(d,e,(e=>Z(i,e)),s,n)})),d}(e,!F(i)&&i.idField?$(d,i.idField,e,n):d,r,s,n)}return e}function Q(e,t){let i,s;return F(e)?(i=e,s=t):(i=e.ids||[],s=e.operationField||t),{ids:i,field:s}}function Z(e,t){const i=(e||"").split(".");let s=t;for(let e=0;e<i.length;e++){const t=i[e];if(e===i.length-1)s[t]=!0;else{if(void 0===s[t])return;s[t]={...s[t]},s=s[t]}}}function ee(e,t,i,s,n){let d=!1;for(let r=0;r<e.length;r++){const o=e[r];if(x(s,o)){if(!d)for(let e=0;e<t.length;e++)Z(n,t[e]);d=!0,o[i]&&ee(o[i],[],i,s,n)}else o[i]&&ee(o[i],d?[o]:t.concat([o]),i,s,n)}}const te=t.defineComponent({name:"KendoTreeViewDragClue",data:()=>({visible:!1,top:0,left:0,text:"",operationIconName:"cancel",operationSvg:n.cancelIcon}),render(){const e={top:this.top+"px",left:this.left+"px"};return this.visible&&t.createVNode("div",{class:"k-header k-drag-clue",style:{display:"block",position:"absolute",zIndex:2e4,padding:"4px 6px",...e}},[t.createVNode(i.Icon,{name:i.getIconName(this.operationIconName),icon:this.operationSvg,class:"k-drag-status"},null),this.text])},methods:{show(e,t,i,s){this.visible=!0,this.top=e,this.left=t,this.text=i,"string"==typeof s?this.operationIconName=s:this.operationSvg=s},hide(){this.visible=!1}}});var ie=Object.defineProperty,se=(e,t,i)=>((e,t,i)=>t in e?ie(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,"symbol"!=typeof t?t+"":t,i);e.TreeView=W,e.TreeViewDragAnalyzer=class{constructor(e){se(this,"itemId"),se(this,"treeViewGuid"),se(this,"initialized",!1),se(this,"destDomNodeWithMeta"),se(this,"destItemId"),se(this,"destTreeViewGuid"),this.event=e,this.itemId=e.itemHierarchicalIndex,this.treeViewGuid=e.target.guid()}init(){return this.initialized||(this.setDestimationMeta(document.elementFromPoint(this.event.clientX,this.event.clientY)),this.initialized=!0),this}get isDropAllowed(){return!!(this.initialized&&this.destItemId&&this.destTreeViewGuid)&&!`${this.destTreeViewGuid}_${this.destItemId}_`.startsWith(`${this.treeViewGuid}_${this.itemId}_`)}get destinationMeta(){return{itemHierarchicalIndex:this.destItemId,treeViewGuid:this.destTreeViewGuid}}getDropOperation(){if(this.initialized&&this.isDropAllowed){const{top:e,height:t}=this.destDomNodeWithMeta.getBoundingClientRect();return e+t-this.event.clientY<6?"after":this.event.clientY-e<6?"before":"child"}}setDestimationMeta(e){let t=e;for(;t&&!t[j];)t=t.parentNode;t&&t[j]&&(this.destDomNodeWithMeta=t,this.destItemId=t[j],this.destTreeViewGuid=t[z])}},e.TreeViewDragClue=te,e.TreeViewItem=U,e.handleTreeViewCheckChange=function(e,t,i,s={},n){if(!i||!i.length)return[];const{ids:d,idField:r}=function(e){let t,i;return F(e)?t=e:(t=e.ids||[],i=e.idField),{ids:t,idField:i}}(t),c=r?x(r,e.item):e.itemHierarchicalIndex,l=d.indexOf(c),a=-1===l,m=n||G;let p;return s.singleMode?p=a?[c]:[]:(p=d.slice(),a?p.push(c):p.splice(l,1),s.checkChildren&&function(e,t,i,s,n,d){(function(e,t,i,s){return s?function e(t){let n=[];const d=t[i]||[];for(let t=0;t<d.length;t++)n.push(x(s,d[t])),n=n.concat(e(d[t]));return n}(e):function e(t,s){let n=[];const d=t[i]||[];for(let t=0;t<d.length;t++){const i=h(t,s);n.push(i),n=n.concat(e(d[t],i))}return n}(e,t)})(e,t,n,s).forEach((e=>{i&&-1===d.indexOf(e)?d.push(e):!i&&d.indexOf(e)>-1&&d.splice(d.indexOf(e),1)}))}(e.item,e.itemHierarchicalIndex,a,r,m,p),s.checkParents&&function(e,t,i,s,n,d){const r=h();let c=r.next();function l(){for(;!c.done;){const{id:e,item:t}=c.value;if(-1!==n.indexOf(e)||!N(t,e,i,s,n))break;n.push(e),c=r.next()}}function a(){for(;!c.done;){const{id:e}=c.value,t=n.indexOf(e);if(!(t>-1))break;n.splice(t,1),c=r.next()}}function*h(){if(i){const n=function(e,t,i){const s=[],n=f(e);let d=i;for(let e=0;e<n.length-1&&d;e++){const i=d[Number(n[e])];s.push(i),d=i[t]}return s}(e,s,d);for(let e=n.length-1;e>-1;e--)yield{id:x(i,n[e]),item:t?n[e]:void 0}}else{let i=u(e);for(;i;)yield{id:i,item:t?o(i,d,s):void 0},i=u(i)}}t?l():a()}(e.itemHierarchicalIndex,a,r,m,p,i)),F(t)?p:Object.assign({},t,{ids:p})},e.moveTreeViewItem=function(e,t,i,s,n,d){const r=d||G;if(!(t&&t.length&&e&&s)||n&&!n.length||!o(s,n&&n!==t?n:t,r))return l();const c=o(e,t,r);if(!c)return l();if(n&&n!==t){return{sourceData:D(e,r,t),targetData:V(c,i,r,s,n)}}{if(`${s}_`.startsWith(`${e}_`))return l();const d=D(e,r,t),o=V(c,i,r,I(e,s),d);return n?{sourceData:o,targetData:o}:o}function l(){return n?{sourceData:t,targetData:n}:t}},e.processTreeViewItems=function(e,t){if(!e||!e.length)return[];let i=e;const s=t.cloneField||"cloned",n=t.expandField||M,d=t.selectField||K,r=t.checkField||P,o=t.childrenField||G;return i=J(i,n,t.expand,s,o),i=J(i,d,t.select,s,o),i=J(i,r,t.check,s,o),function(e,t,i){if(i&&!F(i)&&i.applyCheckIndeterminate){const{field:s}=Q(i,P),n=i.checkIndeterminateField||B;for(let i=0;i<e.length;i++){const d=e[i],r=d[t];r&&ee(r,x(s,d)?[]:[d],t,s,n)}}}(i,o,t.check),i}}));
package/index.d.mts CHANGED
@@ -268,8 +268,7 @@ ariaLabel: PropType<string>;
268
268
  ariaLabelledby: PropType<string>;
269
269
  size: {
270
270
  type: PropType<"small" | "medium" | "large">;
271
- default: string;
272
- validator: (value: any) => any;
271
+ validator: (value: string) => boolean;
273
272
  };
274
273
  }>, {}, {
275
274
  currentRtl: boolean;
@@ -360,8 +359,7 @@ ariaLabel: PropType<string>;
360
359
  ariaLabelledby: PropType<string>;
361
360
  size: {
362
361
  type: PropType<"small" | "medium" | "large">;
363
- default: string;
364
- validator: (value: any) => any;
362
+ validator: (value: string) => boolean;
365
363
  };
366
364
  }>> & Readonly<{
367
365
  onBlur?: (...args: any[] | unknown[]) => any;
@@ -374,7 +372,6 @@ onItemclick?: (...args: any[] | unknown[]) => any;
374
372
  onExpandchange?: (...args: any[] | unknown[]) => any;
375
373
  onCheckchange?: (...args: any[] | unknown[]) => any;
376
374
  }>, {
377
- size: "small" | "medium" | "large";
378
375
  animate: boolean;
379
376
  checkIndeterminateField: string;
380
377
  expandField: string;
@@ -575,8 +572,7 @@ draggable: PropType<boolean>;
575
572
  isRtl: PropType<boolean>;
576
573
  size: {
577
574
  type: PropType<"small" | "medium" | "large">;
578
- default: string;
579
- validator: (value: any) => any;
575
+ validator: (value: string) => boolean;
580
576
  };
581
577
  disabled: PropType<boolean>;
582
578
  ariaLevel: PropType<number>;
@@ -604,7 +600,7 @@ handlePress(e: any, subItem: any, subItemId: string): void;
604
600
  handleDrag(e: any, subItem: any, subItemId: string): void;
605
601
  handleRelease(e: any, subItem: any, subItemId: string): void;
606
602
  handleFocusDomElNeeded(e: any): void;
607
- getIconClassName(): "loading" | "caret-alt-down" | "caret-alt-left" | "caret-alt-right";
603
+ getIconClassName(): "loading" | "chevron-down" | "chevron-left" | "chevron-right";
608
604
  getIconSVG(): SVGIcon;
609
605
  getContentClassName(): string;
610
606
  assignDraggableMeta(element: any): void;
@@ -625,8 +621,7 @@ draggable: PropType<boolean>;
625
621
  isRtl: PropType<boolean>;
626
622
  size: {
627
623
  type: PropType<"small" | "medium" | "large">;
628
- default: string;
629
- validator: (value: any) => any;
624
+ validator: (value: string) => boolean;
630
625
  };
631
626
  disabled: PropType<boolean>;
632
627
  ariaLevel: PropType<number>;
@@ -637,9 +632,7 @@ onPress: PropType<any>;
637
632
  onDrag: PropType<any>;
638
633
  onRelease: PropType<any>;
639
634
  onFocusdomelneeded: PropType<any>;
640
- }>> & Readonly<{}>, {
641
- size: "small" | "medium" | "large";
642
- }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
635
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
643
636
 
644
637
  /**
645
638
  * Represents the object of the `onItemClick` event ([see example]({% slug overview_treeview %})).
@@ -940,11 +933,11 @@ export declare interface TreeViewProps {
940
933
  * - small
941
934
  * - medium
942
935
  * - large
943
- * - null&mdash;Does not set a size `className`.
936
+ * - undefined&mdash;Does not set a size `className`.
944
937
  *
945
- * @default `medium`
938
+ * @default `undefined`
946
939
  */
947
- size?: null | 'small' | 'medium' | 'large';
940
+ size?: 'small' | 'medium' | 'large';
948
941
  }
949
942
 
950
943
  export { }
package/index.d.ts CHANGED
@@ -268,8 +268,7 @@ ariaLabel: PropType<string>;
268
268
  ariaLabelledby: PropType<string>;
269
269
  size: {
270
270
  type: PropType<"small" | "medium" | "large">;
271
- default: string;
272
- validator: (value: any) => any;
271
+ validator: (value: string) => boolean;
273
272
  };
274
273
  }>, {}, {
275
274
  currentRtl: boolean;
@@ -360,8 +359,7 @@ ariaLabel: PropType<string>;
360
359
  ariaLabelledby: PropType<string>;
361
360
  size: {
362
361
  type: PropType<"small" | "medium" | "large">;
363
- default: string;
364
- validator: (value: any) => any;
362
+ validator: (value: string) => boolean;
365
363
  };
366
364
  }>> & Readonly<{
367
365
  onBlur?: (...args: any[] | unknown[]) => any;
@@ -374,7 +372,6 @@ onItemclick?: (...args: any[] | unknown[]) => any;
374
372
  onExpandchange?: (...args: any[] | unknown[]) => any;
375
373
  onCheckchange?: (...args: any[] | unknown[]) => any;
376
374
  }>, {
377
- size: "small" | "medium" | "large";
378
375
  animate: boolean;
379
376
  checkIndeterminateField: string;
380
377
  expandField: string;
@@ -575,8 +572,7 @@ draggable: PropType<boolean>;
575
572
  isRtl: PropType<boolean>;
576
573
  size: {
577
574
  type: PropType<"small" | "medium" | "large">;
578
- default: string;
579
- validator: (value: any) => any;
575
+ validator: (value: string) => boolean;
580
576
  };
581
577
  disabled: PropType<boolean>;
582
578
  ariaLevel: PropType<number>;
@@ -604,7 +600,7 @@ handlePress(e: any, subItem: any, subItemId: string): void;
604
600
  handleDrag(e: any, subItem: any, subItemId: string): void;
605
601
  handleRelease(e: any, subItem: any, subItemId: string): void;
606
602
  handleFocusDomElNeeded(e: any): void;
607
- getIconClassName(): "loading" | "caret-alt-down" | "caret-alt-left" | "caret-alt-right";
603
+ getIconClassName(): "loading" | "chevron-down" | "chevron-left" | "chevron-right";
608
604
  getIconSVG(): SVGIcon;
609
605
  getContentClassName(): string;
610
606
  assignDraggableMeta(element: any): void;
@@ -625,8 +621,7 @@ draggable: PropType<boolean>;
625
621
  isRtl: PropType<boolean>;
626
622
  size: {
627
623
  type: PropType<"small" | "medium" | "large">;
628
- default: string;
629
- validator: (value: any) => any;
624
+ validator: (value: string) => boolean;
630
625
  };
631
626
  disabled: PropType<boolean>;
632
627
  ariaLevel: PropType<number>;
@@ -637,9 +632,7 @@ onPress: PropType<any>;
637
632
  onDrag: PropType<any>;
638
633
  onRelease: PropType<any>;
639
634
  onFocusdomelneeded: PropType<any>;
640
- }>> & Readonly<{}>, {
641
- size: "small" | "medium" | "large";
642
- }, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
635
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, any>;
643
636
 
644
637
  /**
645
638
  * Represents the object of the `onItemClick` event ([see example]({% slug overview_treeview %})).
@@ -940,11 +933,11 @@ export declare interface TreeViewProps {
940
933
  * - small
941
934
  * - medium
942
935
  * - large
943
- * - null&mdash;Does not set a size `className`.
936
+ * - undefined&mdash;Does not set a size `className`.
944
937
  *
945
- * @default `medium`
938
+ * @default `undefined`
946
939
  */
947
- size?: null | 'small' | 'medium' | 'large';
940
+ size?: 'small' | 'medium' | 'large';
948
941
  }
949
942
 
950
943
  export { }
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={name:"@progress/kendo-vue-treeview",productName:"Kendo UI for Vue",productCode:"KENDOUIVUE",productCodes:["KENDOUIVUE"],publishDate: 1769424407,version:"7.1.0-develop.5",licensingDocsUrl:"https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"};exports.packageMetadata=e;
8
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={name:"@progress/kendo-vue-treeview",productName:"Kendo UI for Vue",productCode:"KENDOUIVUE",productCodes:["KENDOUIVUE"],publishDate: 1770355175,version:"7.1.0-develop.7",licensingDocsUrl:"https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"};exports.packageMetadata=e;
@@ -10,8 +10,8 @@ const e = {
10
10
  productName: "Kendo UI for Vue",
11
11
  productCode: "KENDOUIVUE",
12
12
  productCodes: ["KENDOUIVUE"],
13
- publishDate: 1769424407,
14
- version: "7.1.0-develop.5",
13
+ publishDate: 1770355175,
14
+ version: "7.1.0-develop.7",
15
15
  licensingDocsUrl: "https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"
16
16
  };
17
17
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-vue-treeview",
3
- "version": "7.1.0-develop.5",
3
+ "version": "7.1.0-develop.7",
4
4
  "description": "TODO",
5
5
  "author": "Progress",
6
6
  "license": "SEE LICENSE IN LICENSE.md",
@@ -19,8 +19,8 @@
19
19
  "sideEffects": false,
20
20
  "peerDependencies": {
21
21
  "@progress/kendo-licensing": "^1.7.2",
22
- "@progress/kendo-vue-animation": "7.1.0-develop.5",
23
- "@progress/kendo-vue-common": "7.1.0-develop.5",
22
+ "@progress/kendo-vue-animation": "7.1.0-develop.7",
23
+ "@progress/kendo-vue-common": "7.1.0-develop.7",
24
24
  "@progress/kendo-svg-icons": "^4.4.0",
25
25
  "vue": "^3.0.2"
26
26
  },
@@ -41,7 +41,7 @@
41
41
  "package": {
42
42
  "productName": "Kendo UI for Vue",
43
43
  "productCode": "KENDOUIVUE",
44
- "publishDate": 1769424407,
44
+ "publishDate": 1770355175,
45
45
  "licensingDocsUrl": "https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"
46
46
  }
47
47
  },