@progress/kendo-vue-layout 6.0.0-develop.3 → 6.0.0-develop.4
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/dist/cdn/js/kendo-vue-layout.js +1 -1
- package/index.d.mts +36 -4
- package/index.d.ts +36 -4
- package/menu/components/MenuItemInternal.js +1 -1
- package/menu/components/MenuItemInternal.mjs +52 -46
- package/menu/utils/prepareInputItemsForInternalWork.js +1 -1
- package/menu/utils/prepareInputItemsForInternalWork.mjs +27 -26
- package/package-metadata.mjs +1 -1
- package/package.json +6 -6
- package/tabstrip/TabStrip.js +1 -1
- package/tabstrip/TabStrip.mjs +44 -38
- package/tabstrip/TabStripNavigation.js +1 -1
- package/tabstrip/TabStripNavigation.mjs +19 -14
package/index.d.mts
CHANGED
|
@@ -729,6 +729,10 @@ declare interface BaseMenuItem {
|
|
|
729
729
|
* Represents any additional data that is associated with the Menu item.
|
|
730
730
|
*/
|
|
731
731
|
data?: any;
|
|
732
|
+
/**
|
|
733
|
+
* Specifies if this is a separator item. If set to true only the `cssClass` and `cssStyle` props should be rendered along.
|
|
734
|
+
*/
|
|
735
|
+
separator?: boolean;
|
|
732
736
|
}
|
|
733
737
|
|
|
734
738
|
/**
|
|
@@ -3606,6 +3610,10 @@ tabPosition: {
|
|
|
3606
3610
|
type: PropType<string>;
|
|
3607
3611
|
default: string;
|
|
3608
3612
|
};
|
|
3613
|
+
tabAlignment: {
|
|
3614
|
+
type: PropType<string>;
|
|
3615
|
+
default: string;
|
|
3616
|
+
};
|
|
3609
3617
|
tabs: {
|
|
3610
3618
|
type: PropType<TabStripTabProperties[]>;
|
|
3611
3619
|
default: any;
|
|
@@ -3641,6 +3649,10 @@ tabPosition: {
|
|
|
3641
3649
|
type: PropType<string>;
|
|
3642
3650
|
default: string;
|
|
3643
3651
|
};
|
|
3652
|
+
tabAlignment: {
|
|
3653
|
+
type: PropType<string>;
|
|
3654
|
+
default: string;
|
|
3655
|
+
};
|
|
3644
3656
|
tabs: {
|
|
3645
3657
|
type: PropType<TabStripTabProperties[]>;
|
|
3646
3658
|
default: any;
|
|
@@ -3652,6 +3664,7 @@ onSelect?: (...args: any[] | unknown[]) => any;
|
|
|
3652
3664
|
}>, {
|
|
3653
3665
|
tabs: TabStripTabProperties[];
|
|
3654
3666
|
tabPosition: string;
|
|
3667
|
+
tabAlignment: string;
|
|
3655
3668
|
animation: boolean;
|
|
3656
3669
|
}, {}, {}, {}, string, () => {
|
|
3657
3670
|
addRenderTitle: any;
|
|
@@ -3742,6 +3755,7 @@ tabs: PropType<any[]>;
|
|
|
3742
3755
|
selected: PropType<number>;
|
|
3743
3756
|
tabIndex: PropType<number>;
|
|
3744
3757
|
tabPosition: PropType<string>;
|
|
3758
|
+
tabAlignment: PropType<string>;
|
|
3745
3759
|
onSelect: PropType<(e: number) => void>;
|
|
3746
3760
|
onKeydown: PropType<(e: number) => void>;
|
|
3747
3761
|
}>, {}, {}, {
|
|
@@ -3750,10 +3764,7 @@ wrapperNavClasses(): {
|
|
|
3750
3764
|
'k-hstack': boolean;
|
|
3751
3765
|
'k-vstack': boolean;
|
|
3752
3766
|
};
|
|
3753
|
-
navClasses():
|
|
3754
|
-
'k-tabstrip-items': boolean;
|
|
3755
|
-
'k-reset': boolean;
|
|
3756
|
-
};
|
|
3767
|
+
navClasses(): string;
|
|
3757
3768
|
}, {
|
|
3758
3769
|
onKeyDown(e: any): void;
|
|
3759
3770
|
onNavigationItemSelect(idx: number): void;
|
|
@@ -3765,6 +3776,7 @@ tabs: PropType<any[]>;
|
|
|
3765
3776
|
selected: PropType<number>;
|
|
3766
3777
|
tabIndex: PropType<number>;
|
|
3767
3778
|
tabPosition: PropType<string>;
|
|
3779
|
+
tabAlignment: PropType<string>;
|
|
3768
3780
|
onSelect: PropType<(e: number) => void>;
|
|
3769
3781
|
onKeydown: PropType<(e: number) => void>;
|
|
3770
3782
|
}>> & Readonly<{
|
|
@@ -3938,6 +3950,10 @@ export declare interface TabStripNavigationProps {
|
|
|
3938
3950
|
* @hidden
|
|
3939
3951
|
*/
|
|
3940
3952
|
tabPosition?: string;
|
|
3953
|
+
/**
|
|
3954
|
+
* @hidden
|
|
3955
|
+
*/
|
|
3956
|
+
tabAlignment?: string;
|
|
3941
3957
|
}
|
|
3942
3958
|
|
|
3943
3959
|
/**
|
|
@@ -3961,8 +3977,24 @@ export declare interface TabStripProps extends TabStripEmits {
|
|
|
3961
3977
|
* - `"bottom"`—Renders the `TabStripNavigation` components to the bottom of the TabStrip.
|
|
3962
3978
|
* - `"left"`—Renders the `TabStripNavigation` components to the left of the TabStrip.
|
|
3963
3979
|
* - `"right"`—Renders the `TabStripNavigation` components to the right of the TabStrip.
|
|
3980
|
+
*
|
|
3981
|
+
* @default 'top'.
|
|
3964
3982
|
*/
|
|
3965
3983
|
tabPosition?: string;
|
|
3984
|
+
/**
|
|
3985
|
+
* Sets the alignment of the tabs.
|
|
3986
|
+
*
|
|
3987
|
+
*
|
|
3988
|
+
* The available options are:
|
|
3989
|
+
* - `"start"`—Aligns the tabs at the start of the `TabStripNavigation`.
|
|
3990
|
+
* - `"center"`—Aligns the tabs in the center of the `TabStripNavigation`.
|
|
3991
|
+
* - `"end"`—Aligns the tabs at the end of the `TabStripNavigation`.
|
|
3992
|
+
* - `"justify"`—Justifies the tabs inside the `TabStripNavigation`.
|
|
3993
|
+
* - `"stretched"`—Stretches the tabs inside the `TabStripNavigation`.
|
|
3994
|
+
*
|
|
3995
|
+
* @default 'start'.
|
|
3996
|
+
*/
|
|
3997
|
+
tabAlignment?: string;
|
|
3966
3998
|
/**
|
|
3967
3999
|
* Sets the array of tabs.
|
|
3968
4000
|
*/
|
package/index.d.ts
CHANGED
|
@@ -729,6 +729,10 @@ declare interface BaseMenuItem {
|
|
|
729
729
|
* Represents any additional data that is associated with the Menu item.
|
|
730
730
|
*/
|
|
731
731
|
data?: any;
|
|
732
|
+
/**
|
|
733
|
+
* Specifies if this is a separator item. If set to true only the `cssClass` and `cssStyle` props should be rendered along.
|
|
734
|
+
*/
|
|
735
|
+
separator?: boolean;
|
|
732
736
|
}
|
|
733
737
|
|
|
734
738
|
/**
|
|
@@ -3606,6 +3610,10 @@ tabPosition: {
|
|
|
3606
3610
|
type: PropType<string>;
|
|
3607
3611
|
default: string;
|
|
3608
3612
|
};
|
|
3613
|
+
tabAlignment: {
|
|
3614
|
+
type: PropType<string>;
|
|
3615
|
+
default: string;
|
|
3616
|
+
};
|
|
3609
3617
|
tabs: {
|
|
3610
3618
|
type: PropType<TabStripTabProperties[]>;
|
|
3611
3619
|
default: any;
|
|
@@ -3641,6 +3649,10 @@ tabPosition: {
|
|
|
3641
3649
|
type: PropType<string>;
|
|
3642
3650
|
default: string;
|
|
3643
3651
|
};
|
|
3652
|
+
tabAlignment: {
|
|
3653
|
+
type: PropType<string>;
|
|
3654
|
+
default: string;
|
|
3655
|
+
};
|
|
3644
3656
|
tabs: {
|
|
3645
3657
|
type: PropType<TabStripTabProperties[]>;
|
|
3646
3658
|
default: any;
|
|
@@ -3652,6 +3664,7 @@ onSelect?: (...args: any[] | unknown[]) => any;
|
|
|
3652
3664
|
}>, {
|
|
3653
3665
|
tabs: TabStripTabProperties[];
|
|
3654
3666
|
tabPosition: string;
|
|
3667
|
+
tabAlignment: string;
|
|
3655
3668
|
animation: boolean;
|
|
3656
3669
|
}, {}, {}, {}, string, () => {
|
|
3657
3670
|
addRenderTitle: any;
|
|
@@ -3742,6 +3755,7 @@ tabs: PropType<any[]>;
|
|
|
3742
3755
|
selected: PropType<number>;
|
|
3743
3756
|
tabIndex: PropType<number>;
|
|
3744
3757
|
tabPosition: PropType<string>;
|
|
3758
|
+
tabAlignment: PropType<string>;
|
|
3745
3759
|
onSelect: PropType<(e: number) => void>;
|
|
3746
3760
|
onKeydown: PropType<(e: number) => void>;
|
|
3747
3761
|
}>, {}, {}, {
|
|
@@ -3750,10 +3764,7 @@ wrapperNavClasses(): {
|
|
|
3750
3764
|
'k-hstack': boolean;
|
|
3751
3765
|
'k-vstack': boolean;
|
|
3752
3766
|
};
|
|
3753
|
-
navClasses():
|
|
3754
|
-
'k-tabstrip-items': boolean;
|
|
3755
|
-
'k-reset': boolean;
|
|
3756
|
-
};
|
|
3767
|
+
navClasses(): string;
|
|
3757
3768
|
}, {
|
|
3758
3769
|
onKeyDown(e: any): void;
|
|
3759
3770
|
onNavigationItemSelect(idx: number): void;
|
|
@@ -3765,6 +3776,7 @@ tabs: PropType<any[]>;
|
|
|
3765
3776
|
selected: PropType<number>;
|
|
3766
3777
|
tabIndex: PropType<number>;
|
|
3767
3778
|
tabPosition: PropType<string>;
|
|
3779
|
+
tabAlignment: PropType<string>;
|
|
3768
3780
|
onSelect: PropType<(e: number) => void>;
|
|
3769
3781
|
onKeydown: PropType<(e: number) => void>;
|
|
3770
3782
|
}>> & Readonly<{
|
|
@@ -3938,6 +3950,10 @@ export declare interface TabStripNavigationProps {
|
|
|
3938
3950
|
* @hidden
|
|
3939
3951
|
*/
|
|
3940
3952
|
tabPosition?: string;
|
|
3953
|
+
/**
|
|
3954
|
+
* @hidden
|
|
3955
|
+
*/
|
|
3956
|
+
tabAlignment?: string;
|
|
3941
3957
|
}
|
|
3942
3958
|
|
|
3943
3959
|
/**
|
|
@@ -3961,8 +3977,24 @@ export declare interface TabStripProps extends TabStripEmits {
|
|
|
3961
3977
|
* - `"bottom"`—Renders the `TabStripNavigation` components to the bottom of the TabStrip.
|
|
3962
3978
|
* - `"left"`—Renders the `TabStripNavigation` components to the left of the TabStrip.
|
|
3963
3979
|
* - `"right"`—Renders the `TabStripNavigation` components to the right of the TabStrip.
|
|
3980
|
+
*
|
|
3981
|
+
* @default 'top'.
|
|
3964
3982
|
*/
|
|
3965
3983
|
tabPosition?: string;
|
|
3984
|
+
/**
|
|
3985
|
+
* Sets the alignment of the tabs.
|
|
3986
|
+
*
|
|
3987
|
+
*
|
|
3988
|
+
* The available options are:
|
|
3989
|
+
* - `"start"`—Aligns the tabs at the start of the `TabStripNavigation`.
|
|
3990
|
+
* - `"center"`—Aligns the tabs in the center of the `TabStripNavigation`.
|
|
3991
|
+
* - `"end"`—Aligns the tabs at the end of the `TabStripNavigation`.
|
|
3992
|
+
* - `"justify"`—Justifies the tabs inside the `TabStripNavigation`.
|
|
3993
|
+
* - `"stretched"`—Stretches the tabs inside the `TabStripNavigation`.
|
|
3994
|
+
*
|
|
3995
|
+
* @default 'start'.
|
|
3996
|
+
*/
|
|
3997
|
+
tabAlignment?: string;
|
|
3966
3998
|
/**
|
|
3967
3999
|
* Sets the array of tabs.
|
|
3968
4000
|
*/
|
|
@@ -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"),
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),s=require("@progress/kendo-vue-common"),N=require("@progress/kendo-vue-popup"),p=require("../utils/itemsIdsUtils.js"),l=require("../utils/misc.js"),F=require("./MenuItemLink.js"),L=require("./MenuItemArrow.js"),c=n.defineComponent({name:"KendoMenuItemInternal",emits:{keydown:null,mouseover:null,mouseleave:null,blur:null,focus:null,click:null,mousedown:null},props:{item:Object,focusedItemId:String,lastItemIdToBeOpened:String,tabbableItemId:String,itemRender:[String,Object,Function],linkRender:[String,Object,Function],isMenuVertical:Boolean,isDirectionRightToLeft:Boolean,menuGuid:String,originalItemNeeded:Function},created(){this.itemElement=null,this.prevFocusedItemId=this.$props.focusedItemId,this.isFirstRender=!0,this._anchor=s.guid()},data(){return{opened:!1}},mounted(){this.itemElement=s.getRef(this,"kendoAnchor");const e=this.$props.focusedItemId,t=this.$props.item.id;e&&e===t&&this.itemElement&&this.itemElement.focus(),this.isFirstRender=!1},watch:{focusedItemId:function(e,t){this.prevFocusedItemId=t}},updated(){const e=this.$props.focusedItemId,t=this.$props.item.id;e?this.prevFocusedItemId!==e&&e===t&&!this.itemElement.contains(document.activeElement)&&this.itemElement.focus():document.activeElement===this.itemElement&&this.itemElement.blur()},computed:{hasItems(){return this.$props.item.items.length>0},currentItemRender(){return this.$props.item.render||this.$props.itemRender},currentLinkRender(){return this.$props.item.linkRender||this.$props.linkRender},contentRender(){return this.$props.item.contentParentItemId?this.$props.item.contentRender:null},currentOpened(){const e=this.$props;return this.hasItems&&p.shouldOpenItem(e.item.id,e.lastItemIdToBeOpened)&&!this.isFirstRender},currentFocused(){const e=this.$props.focusedItemId,t=this.$props.item.id;return e===t},popupClassName(){return s.classNames({"k-menu-popup":!0,"k-overflow-visible":!0,"k-rtl":this.$props.isDirectionRightToLeft,[this.item.popupClass]:this.item.popupClass})},menuItemClassName(){const e=this.$props.item;return{"k-item":!0,"k-menu-item":!0,"k-first":p.isFirstItemFromSiblings(e.id),"k-last":e.isLastFromSiblings,"k-disabled":e.disabled,[e.cssClass?e.cssClass:""]:e.cssClass}}},render(){const{icon:e,svgIcon:t,id:o,contentParentItemId:m,items:y,text:a,cssStyle:f,disabled:$,url:g,separator:M}=this.$props.item,r=o,k=function(){const i=m,d=function(u){return s.getTemplate.call(this,{h:n.h,template:this.contentRender,additionalProps:u})};return n.createVNode("div",{class:"k-content",role:"presentation"},[d.call(this,{item:this.handleOriginalItemNeeded(i),itemId:i})])},b=function(){return e||t?n.createVNode(s.Icon,{name:s.getIconName(e),icon:t},null):null},v=function(){return this.hasItems?n.createVNode(L.MenuItemArrow,{itemId:o,verticalMenu:this.$props.isMenuVertical,dir:l.convertBoolDirectionToString(this.$props.isDirectionRightToLeft),key:"2"},null):null},h=this.$props.originalItemNeeded(o),R=function(){const i=n.createVNode("span",{class:"k-menu-link-text"},[a]),d=s.getTemplate.call(this,{h:n.h,template:this.currentItemRender,defaultRendering:i,additionalProps:{item:h,itemId:o,key:"1"}}),u=n.createVNode(F.MenuItemLink,{url:g,opened:this.currentOpened,focused:this.currentFocused},{default:()=>[[b.call(this),d,v.call(this)]]});return s.getTemplate.call(this,{h:n.h,template:this.currentLinkRender,defaultRendering:u,additionalProps:{item:h,itemId:o,opened:this.currentOpened,dir:l.convertBoolDirectionToString(this.$props.isDirectionRightToLeft)}})},O=function(){const{anchorAlign:i,popupAlign:d,collision:u}=l.getPopupSettings(r,this.$props.isMenuVertical,this.$props.isDirectionRightToLeft);return n.createVNode(N.Popup,{anchor:this._anchor,show:this.currentOpened,popupClass:this.popupClassName,anchorAlign:i,popupAlign:d,collision:u,animate:!1,key:"1"},{default:()=>[n.createVNode(I,{parentItemId:r,items:this.$props.item.items,menuGuid:this.$props.menuGuid,focusedItemId:this.$props.focusedItemId,lastItemIdToBeOpened:this.$props.lastItemIdToBeOpened,tabbableItemId:this.$props.tabbableItemId,itemRender:this.$props.itemRender,linkRender:this.$props.linkRender,isMenuVertical:this.$props.isMenuVertical,isDirectionRightToLeft:this.$props.isDirectionRightToLeft,class:"k-group k-menu-group k-menu-group-md k-reset",onMouseover:this.handleItemMouseOver,onMouseleave:this.handleItemMouseLeave,onMousedown:this.handleMouseDown,onBlur:this.handleItemMouseBlur,onFocus:this.handleItemMouseFocus,onClick:this.handleClick,onKeydown:this.handleKeyDown,originalItemNeeded:this.handleOriginalItemNeeded},null)]})},w=n.createVNode("li",{class:"k-separator k-item","aria-hidden":!0,key:this.id},null);return M?w:n.createVNode("li",{class:this.menuItemClassName,style:f,tabindex:r===this.$props.tabbableItemId?0:-1,onMouseover:this.onMouseOver,onMouseleave:this.onMouseLeave,onMousedown:i=>this.handleMouseDown(i),onFocusout:()=>this.handleBlur(r),onFocusin:()=>this.handleFocus(r),onClick:i=>this.handleClick(i,r),onKeydown:this.handleKeyDown,role:"menuitem","aria-disabled":$?!0:void 0,"aria-haspopup":this.hasItems?!0:void 0,"aria-expanded":this.hasItems?this.currentOpened:void 0,"aria-label":a,"aria-owns":this.currentOpened?l.getDOMElementId(this.$props.menuGuid,r):void 0,ref:s.setRef(this,"kendoAnchor"),key:"0"},[this.contentRender?k.call(this):R.call(this),O.call(this)])},methods:{handleKeyDown(e){this.$emit("keydown",e)},handleItemMouseOver(e){this.$emit("mouseover",e)},handleItemMouseLeave(e){this.$emit("mouseleave",e)},handleItemMouseBlur(e){this.$emit("blur",e)},handleItemMouseFocus(e){this.$emit("focus",e)},handleClick(e,t){this.$emit("click",e,t)},handleBlur(e){this.$emit("blur",e)},handleFocus(e){this.$emit("focus",e)},handleMouseDown(e){this.$emit("mousedown",e)},handleOriginalItemNeeded(e){return this.$props.originalItemNeeded(e)},onMouseOver(e){this.$emit("mouseover",this.$props.item.id),e.stopPropagation()},onMouseLeave(e){this.$emit("mouseleave",this.$props.item.id),e.stopPropagation()}}}),I=n.defineComponent({name:"KendoMenuItemInternalsList",emits:{keydown:null,mouseover:null,mouseleave:null,blur:null,focus:null,click:null,mousedown:null},props:{items:Array,parentItemId:{type:String,default:void 0},focusedItemId:String,lastItemIdToBeOpened:String,tabbableItemId:String,itemRender:[String,Object,Function],linkRender:[String,Object,Function],isMenuVertical:Boolean,isDirectionRightToLeft:Boolean,menuGuid:String,originalItemNeeded:Function},render(){const e=this.$props.parentItemId,t=function(){return this.$props.items.length>0?this.$props.items.map(function(o,m){return n.createVNode(c,{item:o,isMenuVertical:this.$props.isMenuVertical,isDirectionRightToLeft:this.$props.isDirectionRightToLeft,focusedItemId:this.$props.focusedItemId,lastItemIdToBeOpened:this.$props.lastItemIdToBeOpened,tabbableItemId:this.$props.tabbableItemId,itemRender:this.$props.itemRender,linkRender:this.$props.linkRender,menuGuid:this.$props.menuGuid,onMouseover:this.handleItemMouseOver,onMouseleave:this.handleItemMouseLeave,onMousedown:this.handleItemMouseDown,onKeydown:this.handleKeyDown,onBlur:this.handleItemMouseBlur,onFocus:this.handleItemMouseFocus,onClick:this.handleItemMouseClick,originalItemNeeded:this.handleOriginalItemNeeded,key:m},null)},this):null};return n.createVNode("ul",{role:e!==void 0?"menu":"menubar",id:e!==void 0?l.getDOMElementId(this.$props.menuGuid,e):void 0},[t.call(this)])},methods:{handleKeyDown(e){this.$emit("keydown",e)},handleOriginalItemNeeded(e){return this.$props.originalItemNeeded(e)},handleItemMouseOver(e){this.$emit("mouseover",e)},handleItemMouseLeave(e){this.$emit("mouseleave",e)},handleItemMouseDown(e){this.$emit("mousedown",e)},handleItemMouseBlur(e){this.$emit("blur",e)},handleItemMouseFocus(e){this.$emit("focus",e)},handleItemMouseClick(e,t){this.$emit("click",e,t)},onMouseOver(e){this.$props.parentItemId!==void 0&&(this.$emit("mouseover",this.$props.parentItemId),e.stopPropagation())},onMouseLeave(e){this.$props.parentItemId!==void 0&&(this.$emit("mouseleave",this.$props.parentItemId),e.stopPropagation())}}});exports.MenuItemInternal=c;exports.MenuItemInternalsList=I;
|
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
import { defineComponent as c, createVNode as
|
|
9
|
-
import { guid as
|
|
10
|
-
import { Popup as
|
|
11
|
-
import { shouldOpenItem as
|
|
12
|
-
import { getDOMElementId as I, convertBoolDirectionToString as p, getPopupSettings as
|
|
13
|
-
import { MenuItemLink as
|
|
14
|
-
import { MenuItemArrow as
|
|
15
|
-
const
|
|
8
|
+
import { defineComponent as c, createVNode as n, h as u } from "vue";
|
|
9
|
+
import { guid as F, getRef as L, classNames as y, setRef as D, getTemplate as m, Icon as C, getIconName as B } from "@progress/kendo-vue-common";
|
|
10
|
+
import { Popup as N } from "@progress/kendo-vue-popup";
|
|
11
|
+
import { shouldOpenItem as T, isFirstItemFromSiblings as S } from "../utils/itemsIdsUtils.mjs";
|
|
12
|
+
import { getDOMElementId as I, convertBoolDirectionToString as p, getPopupSettings as P } from "../utils/misc.mjs";
|
|
13
|
+
import { MenuItemLink as A } from "./MenuItemLink.mjs";
|
|
14
|
+
import { MenuItemArrow as E } from "./MenuItemArrow.mjs";
|
|
15
|
+
const K = /* @__PURE__ */ c({
|
|
16
16
|
name: "KendoMenuItemInternal",
|
|
17
17
|
emits: {
|
|
18
18
|
keydown: null,
|
|
@@ -36,7 +36,7 @@ const A = /* @__PURE__ */ c({
|
|
|
36
36
|
originalItemNeeded: Function
|
|
37
37
|
},
|
|
38
38
|
created() {
|
|
39
|
-
this.itemElement = null, this.prevFocusedItemId = this.$props.focusedItemId, this.isFirstRender = !0, this._anchor =
|
|
39
|
+
this.itemElement = null, this.prevFocusedItemId = this.$props.focusedItemId, this.isFirstRender = !0, this._anchor = F();
|
|
40
40
|
},
|
|
41
41
|
data() {
|
|
42
42
|
return {
|
|
@@ -44,7 +44,7 @@ const A = /* @__PURE__ */ c({
|
|
|
44
44
|
};
|
|
45
45
|
},
|
|
46
46
|
mounted() {
|
|
47
|
-
this.itemElement =
|
|
47
|
+
this.itemElement = L(this, "kendoAnchor");
|
|
48
48
|
const e = this.$props.focusedItemId, t = this.$props.item.id;
|
|
49
49
|
e && e === t && this.itemElement && this.itemElement.focus(), this.isFirstRender = !1;
|
|
50
50
|
},
|
|
@@ -72,7 +72,7 @@ const A = /* @__PURE__ */ c({
|
|
|
72
72
|
},
|
|
73
73
|
currentOpened() {
|
|
74
74
|
const e = this.$props;
|
|
75
|
-
return this.hasItems &&
|
|
75
|
+
return this.hasItems && T(e.item.id, e.lastItemIdToBeOpened) && // HACK: Wait for the second render because otherwise the scenario of
|
|
76
76
|
// popup inside popup throws an error (for example, hover of item with id '0_0').
|
|
77
77
|
!this.isFirstRender;
|
|
78
78
|
},
|
|
@@ -81,8 +81,9 @@ const A = /* @__PURE__ */ c({
|
|
|
81
81
|
return e === t;
|
|
82
82
|
},
|
|
83
83
|
popupClassName() {
|
|
84
|
-
return
|
|
84
|
+
return y({
|
|
85
85
|
"k-menu-popup": !0,
|
|
86
|
+
"k-overflow-visible": !0,
|
|
86
87
|
"k-rtl": this.$props.isDirectionRightToLeft,
|
|
87
88
|
[this.item.popupClass]: this.item.popupClass
|
|
88
89
|
});
|
|
@@ -92,7 +93,7 @@ const A = /* @__PURE__ */ c({
|
|
|
92
93
|
return {
|
|
93
94
|
"k-item": !0,
|
|
94
95
|
"k-menu-item": !0,
|
|
95
|
-
"k-first":
|
|
96
|
+
"k-first": S(e.id),
|
|
96
97
|
"k-last": e.isLastFromSiblings,
|
|
97
98
|
"k-disabled": e.disabled,
|
|
98
99
|
[e.cssClass ? e.cssClass : ""]: e.cssClass
|
|
@@ -105,14 +106,15 @@ const A = /* @__PURE__ */ c({
|
|
|
105
106
|
svgIcon: t,
|
|
106
107
|
id: s,
|
|
107
108
|
contentParentItemId: l,
|
|
108
|
-
items:
|
|
109
|
+
items: G,
|
|
109
110
|
text: a,
|
|
110
111
|
cssStyle: f,
|
|
111
112
|
disabled: $,
|
|
112
|
-
url: g
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
113
|
+
url: g,
|
|
114
|
+
separator: M
|
|
115
|
+
} = this.$props.item, o = s, k = function() {
|
|
116
|
+
const i = l;
|
|
117
|
+
return n("div", {
|
|
116
118
|
class: "k-content",
|
|
117
119
|
role: "presentation"
|
|
118
120
|
}, [function(r) {
|
|
@@ -122,39 +124,39 @@ const A = /* @__PURE__ */ c({
|
|
|
122
124
|
additionalProps: r
|
|
123
125
|
});
|
|
124
126
|
}.call(this, {
|
|
125
|
-
item: this.handleOriginalItemNeeded(
|
|
126
|
-
itemId:
|
|
127
|
+
item: this.handleOriginalItemNeeded(i),
|
|
128
|
+
itemId: i
|
|
127
129
|
})]);
|
|
128
|
-
},
|
|
129
|
-
return e || t ?
|
|
130
|
-
name:
|
|
130
|
+
}, b = function() {
|
|
131
|
+
return e || t ? n(C, {
|
|
132
|
+
name: B(e),
|
|
131
133
|
icon: t
|
|
132
134
|
}, null) : null;
|
|
133
135
|
}, R = function() {
|
|
134
|
-
return this.hasItems ?
|
|
136
|
+
return this.hasItems ? n(E, {
|
|
135
137
|
itemId: s,
|
|
136
138
|
verticalMenu: this.$props.isMenuVertical,
|
|
137
139
|
dir: p(this.$props.isDirectionRightToLeft),
|
|
138
140
|
key: "2"
|
|
139
141
|
}, null) : null;
|
|
140
|
-
}, h = this.$props.originalItemNeeded(s),
|
|
141
|
-
const
|
|
142
|
+
}, h = this.$props.originalItemNeeded(s), v = function() {
|
|
143
|
+
const i = n("span", {
|
|
142
144
|
class: "k-menu-link-text"
|
|
143
145
|
}, [a]), d = m.call(this, {
|
|
144
146
|
h: u,
|
|
145
147
|
template: this.currentItemRender,
|
|
146
|
-
defaultRendering:
|
|
148
|
+
defaultRendering: i,
|
|
147
149
|
additionalProps: {
|
|
148
150
|
item: h,
|
|
149
151
|
itemId: s,
|
|
150
152
|
key: "1"
|
|
151
153
|
}
|
|
152
|
-
}), r =
|
|
154
|
+
}), r = n(A, {
|
|
153
155
|
url: g,
|
|
154
156
|
opened: this.currentOpened,
|
|
155
157
|
focused: this.currentFocused
|
|
156
158
|
}, {
|
|
157
|
-
default: () => [[
|
|
159
|
+
default: () => [[b.call(this), d, R.call(this)]]
|
|
158
160
|
});
|
|
159
161
|
return m.call(this, {
|
|
160
162
|
h: u,
|
|
@@ -167,23 +169,23 @@ const A = /* @__PURE__ */ c({
|
|
|
167
169
|
dir: p(this.$props.isDirectionRightToLeft)
|
|
168
170
|
}
|
|
169
171
|
});
|
|
170
|
-
},
|
|
172
|
+
}, O = function() {
|
|
171
173
|
const {
|
|
172
|
-
anchorAlign:
|
|
174
|
+
anchorAlign: i,
|
|
173
175
|
popupAlign: d,
|
|
174
176
|
collision: r
|
|
175
|
-
} =
|
|
176
|
-
return
|
|
177
|
+
} = P(o, this.$props.isMenuVertical, this.$props.isDirectionRightToLeft);
|
|
178
|
+
return n(N, {
|
|
177
179
|
anchor: this._anchor,
|
|
178
180
|
show: this.currentOpened,
|
|
179
181
|
popupClass: this.popupClassName,
|
|
180
|
-
anchorAlign:
|
|
182
|
+
anchorAlign: i,
|
|
181
183
|
popupAlign: d,
|
|
182
184
|
collision: r,
|
|
183
185
|
animate: !1,
|
|
184
186
|
key: "1"
|
|
185
187
|
}, {
|
|
186
|
-
default: () => [
|
|
188
|
+
default: () => [n(V, {
|
|
187
189
|
parentItemId: o,
|
|
188
190
|
items: this.$props.item.items,
|
|
189
191
|
menuGuid: this.$props.menuGuid,
|
|
@@ -205,17 +207,21 @@ const A = /* @__PURE__ */ c({
|
|
|
205
207
|
originalItemNeeded: this.handleOriginalItemNeeded
|
|
206
208
|
}, null)]
|
|
207
209
|
});
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
+
}, w = n("li", {
|
|
211
|
+
class: "k-separator k-item",
|
|
212
|
+
"aria-hidden": !0,
|
|
213
|
+
key: this.id
|
|
214
|
+
}, null);
|
|
215
|
+
return M ? w : n("li", {
|
|
210
216
|
class: this.menuItemClassName,
|
|
211
217
|
style: f,
|
|
212
218
|
tabindex: o === this.$props.tabbableItemId ? 0 : -1,
|
|
213
219
|
onMouseover: this.onMouseOver,
|
|
214
220
|
onMouseleave: this.onMouseLeave,
|
|
215
|
-
onMousedown: (
|
|
221
|
+
onMousedown: (i) => this.handleMouseDown(i),
|
|
216
222
|
onFocusout: () => this.handleBlur(o),
|
|
217
223
|
onFocusin: () => this.handleFocus(o),
|
|
218
|
-
onClick: (
|
|
224
|
+
onClick: (i) => this.handleClick(i, o),
|
|
219
225
|
onKeydown: this.handleKeyDown,
|
|
220
226
|
role: "menuitem",
|
|
221
227
|
"aria-disabled": $ ? !0 : void 0,
|
|
@@ -223,9 +229,9 @@ const A = /* @__PURE__ */ c({
|
|
|
223
229
|
"aria-expanded": this.hasItems ? this.currentOpened : void 0,
|
|
224
230
|
"aria-label": a,
|
|
225
231
|
"aria-owns": this.currentOpened ? I(this.$props.menuGuid, o) : void 0,
|
|
226
|
-
ref:
|
|
232
|
+
ref: D(this, "kendoAnchor"),
|
|
227
233
|
key: "0"
|
|
228
|
-
}, [this.contentRender ?
|
|
234
|
+
}, [this.contentRender ? k.call(this) : v.call(this), O.call(this)]);
|
|
229
235
|
},
|
|
230
236
|
methods: {
|
|
231
237
|
handleKeyDown(e) {
|
|
@@ -265,7 +271,7 @@ const A = /* @__PURE__ */ c({
|
|
|
265
271
|
this.$emit("mouseleave", this.$props.item.id), e.stopPropagation();
|
|
266
272
|
}
|
|
267
273
|
}
|
|
268
|
-
}),
|
|
274
|
+
}), V = /* @__PURE__ */ c({
|
|
269
275
|
name: "KendoMenuItemInternalsList",
|
|
270
276
|
emits: {
|
|
271
277
|
keydown: null,
|
|
@@ -295,7 +301,7 @@ const A = /* @__PURE__ */ c({
|
|
|
295
301
|
render() {
|
|
296
302
|
const e = this.$props.parentItemId, t = function() {
|
|
297
303
|
return this.$props.items.length > 0 ? this.$props.items.map(function(s, l) {
|
|
298
|
-
return
|
|
304
|
+
return n(K, {
|
|
299
305
|
item: s,
|
|
300
306
|
isMenuVertical: this.$props.isMenuVertical,
|
|
301
307
|
isDirectionRightToLeft: this.$props.isDirectionRightToLeft,
|
|
@@ -317,7 +323,7 @@ const A = /* @__PURE__ */ c({
|
|
|
317
323
|
}, null);
|
|
318
324
|
}, this) : null;
|
|
319
325
|
};
|
|
320
|
-
return
|
|
326
|
+
return n("ul", {
|
|
321
327
|
role: e !== void 0 ? "menu" : "menubar",
|
|
322
328
|
id: e !== void 0 ? I(this.$props.menuGuid, e) : void 0
|
|
323
329
|
}, [t.call(this)]);
|
|
@@ -356,6 +362,6 @@ const A = /* @__PURE__ */ c({
|
|
|
356
362
|
}
|
|
357
363
|
});
|
|
358
364
|
export {
|
|
359
|
-
|
|
360
|
-
|
|
365
|
+
K as MenuItemInternal,
|
|
366
|
+
V as MenuItemInternalsList
|
|
361
367
|
};
|
|
@@ -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
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("@progress/kendo-vue-common"),o=require("./itemsIdsUtils.js");function v(t){return t&&t.length>0?{items:g.call(this,t),inputItems:t}:{items:[],inputItems:[]}}function R(t){let e={};const{text:s,url:i,icon:l,svgIcon:n,disabled:c,cssClass:a,popupClass:d,cssStyle:u,separator:p,render:f,linkRender:I,contentRender:h,data:m}=t;return s!==void 0&&(e.text=s),i!==void 0&&(e.url=i),l!==void 0&&(e.icon=l),n!==void 0&&(e.svgIcon=n),c!==void 0&&(e.disabled=c),a!==void 0&&(e.cssClass=a),d!==void 0&&(e.popupClass=d),u!==void 0&&(e.cssStyle=u),p!==void 0&&(e.separator=p),f!==void 0&&(e.render=r.templateRendering.call(this,f,r.getListeners.call(this))),I!==void 0&&(e.linkRender=r.templateRendering.call(this,I,r.getListeners.call(this))),h!==void 0&&(e.contentRender=r.templateRendering.call(this,h,r.getListeners.call(this))),m!==void 0&&(e.data=m),e}function g(t,e){const s=[];for(let i=0;i<t.length;i++){const l=t[i],n=R.call(this,l);n.id=o.createId(i.toString(),e),n.isLastFromSiblings=i===t.length-1,n.items=C.call(this,l,n),s.push(n)}return s}function C(t,e){return t.contentRender?[{contentParentItemId:e.id,id:o.createId(o.ZERO_LEVEL_ZERO_ITEM_ID,e.id),isLastFromSiblings:!0,contentRender:r.templateRendering.call(this,t.contentRender,r.getListeners.call(this)),items:[]}]:t.items?g.call(this,t.items,e.id):[]}exports.prepareInputItemsForInternalWork=v;
|
|
@@ -6,55 +6,56 @@
|
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
8
|
import { templateRendering as l, getListeners as o } from "@progress/kendo-vue-common";
|
|
9
|
-
import { createId as m, ZERO_LEVEL_ZERO_ITEM_ID as
|
|
10
|
-
function
|
|
9
|
+
import { createId as m, ZERO_LEVEL_ZERO_ITEM_ID as R } from "./itemsIdsUtils.mjs";
|
|
10
|
+
function b(e) {
|
|
11
11
|
return e && e.length > 0 ? {
|
|
12
|
-
items:
|
|
12
|
+
items: g.call(this, e),
|
|
13
13
|
inputItems: e
|
|
14
14
|
} : { items: [], inputItems: [] };
|
|
15
15
|
}
|
|
16
|
-
function
|
|
16
|
+
function C(e) {
|
|
17
17
|
let t = {};
|
|
18
18
|
const {
|
|
19
|
-
text:
|
|
19
|
+
text: r,
|
|
20
20
|
url: i,
|
|
21
|
-
icon:
|
|
21
|
+
icon: s,
|
|
22
22
|
svgIcon: n,
|
|
23
23
|
disabled: c,
|
|
24
|
-
cssClass:
|
|
25
|
-
popupClass:
|
|
24
|
+
cssClass: a,
|
|
25
|
+
popupClass: d,
|
|
26
26
|
cssStyle: f,
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
separator: u,
|
|
28
|
+
render: h,
|
|
29
|
+
linkRender: p,
|
|
30
|
+
contentRender: v,
|
|
30
31
|
data: I
|
|
31
32
|
} = e;
|
|
32
|
-
return
|
|
33
|
-
this,
|
|
34
|
-
u,
|
|
35
|
-
o.call(this)
|
|
36
|
-
)), h !== void 0 && (t.linkRender = l.call(
|
|
33
|
+
return r !== void 0 && (t.text = r), i !== void 0 && (t.url = i), s !== void 0 && (t.icon = s), n !== void 0 && (t.svgIcon = n), c !== void 0 && (t.disabled = c), a !== void 0 && (t.cssClass = a), d !== void 0 && (t.popupClass = d), f !== void 0 && (t.cssStyle = f), u !== void 0 && (t.separator = u), h !== void 0 && (t.render = l.call(
|
|
37
34
|
this,
|
|
38
35
|
h,
|
|
39
36
|
o.call(this)
|
|
40
|
-
)), p !== void 0 && (t.
|
|
37
|
+
)), p !== void 0 && (t.linkRender = l.call(
|
|
41
38
|
this,
|
|
42
39
|
p,
|
|
43
40
|
o.call(this)
|
|
41
|
+
)), v !== void 0 && (t.contentRender = l.call(
|
|
42
|
+
this,
|
|
43
|
+
v,
|
|
44
|
+
o.call(this)
|
|
44
45
|
)), I !== void 0 && (t.data = I), t;
|
|
45
46
|
}
|
|
46
|
-
function
|
|
47
|
-
const
|
|
47
|
+
function g(e, t) {
|
|
48
|
+
const r = [];
|
|
48
49
|
for (let i = 0; i < e.length; i++) {
|
|
49
|
-
const
|
|
50
|
-
n.id = m(i.toString(), t), n.isLastFromSiblings = i === e.length - 1, n.items =
|
|
50
|
+
const s = e[i], n = C.call(this, s);
|
|
51
|
+
n.id = m(i.toString(), t), n.isLastFromSiblings = i === e.length - 1, n.items = E.call(this, s, n), r.push(n);
|
|
51
52
|
}
|
|
52
|
-
return
|
|
53
|
+
return r;
|
|
53
54
|
}
|
|
54
|
-
function
|
|
55
|
+
function E(e, t) {
|
|
55
56
|
return e.contentRender ? [{
|
|
56
57
|
contentParentItemId: t.id,
|
|
57
|
-
id: m(
|
|
58
|
+
id: m(R, t.id),
|
|
58
59
|
isLastFromSiblings: !0,
|
|
59
60
|
contentRender: l.call(
|
|
60
61
|
this,
|
|
@@ -62,8 +63,8 @@ function C(e, t) {
|
|
|
62
63
|
o.call(this)
|
|
63
64
|
),
|
|
64
65
|
items: []
|
|
65
|
-
}] : e.items ?
|
|
66
|
+
}] : e.items ? g.call(this, e.items, t.id) : [];
|
|
66
67
|
}
|
|
67
68
|
export {
|
|
68
|
-
|
|
69
|
+
b as prepareInputItemsForInternalWork
|
|
69
70
|
};
|
package/package-metadata.mjs
CHANGED
|
@@ -9,7 +9,7 @@ const e = {
|
|
|
9
9
|
name: "@progress/kendo-vue-layout",
|
|
10
10
|
productName: "Kendo UI for Vue",
|
|
11
11
|
productCodes: ["KENDOUIVUE", "KENDOUICOMPLETE"],
|
|
12
|
-
publishDate:
|
|
12
|
+
publishDate: 1731424337,
|
|
13
13
|
version: "",
|
|
14
14
|
licensingDocsUrl: "https://www.telerik.com/kendo-vue-ui/components/my-license/?utm_medium=product&utm_source=vue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning"
|
|
15
15
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@progress/kendo-vue-layout",
|
|
3
|
-
"version": "6.0.0-develop.
|
|
3
|
+
"version": "6.0.0-develop.4",
|
|
4
4
|
"description": "TODO",
|
|
5
5
|
"author": "Progress",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
@@ -16,11 +16,11 @@
|
|
|
16
16
|
"sideEffects": false,
|
|
17
17
|
"peerDependencies": {
|
|
18
18
|
"@progress/kendo-licensing": "^1.3.4",
|
|
19
|
-
"@progress/kendo-vue-common": "6.0.0-develop.
|
|
20
|
-
"@progress/kendo-vue-animation": "6.0.0-develop.
|
|
21
|
-
"@progress/kendo-vue-intl": "6.0.0-develop.
|
|
22
|
-
"@progress/kendo-vue-popup": "6.0.0-develop.
|
|
23
|
-
"@progress/kendo-vue-progressbars": "6.0.0-develop.
|
|
19
|
+
"@progress/kendo-vue-common": "6.0.0-develop.4",
|
|
20
|
+
"@progress/kendo-vue-animation": "6.0.0-develop.4",
|
|
21
|
+
"@progress/kendo-vue-intl": "6.0.0-develop.4",
|
|
22
|
+
"@progress/kendo-vue-popup": "6.0.0-develop.4",
|
|
23
|
+
"@progress/kendo-vue-progressbars": "6.0.0-develop.4",
|
|
24
24
|
"@progress/kendo-svg-icons": "^3.0.0",
|
|
25
25
|
"vue": "^3.0.2"
|
|
26
26
|
},
|
package/tabstrip/TabStrip.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"),o=require("./TabStripNavigation.js"),u=require("./TabStripContent.js"),s=require("@progress/kendo-vue-common"),l=require("../package-metadata.js"),
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),o=require("./TabStripNavigation.js"),u=require("./TabStripContent.js"),s=require("@progress/kendo-vue-common"),l=require("../package-metadata.js"),g=n.defineComponent({name:"KendoTabStrip",emits:{select:null},props:{animation:{type:Boolean,default:!0},selected:Number,tabPosition:{type:String,default:"top"},tabAlignment:{type:String,default:"start"},tabs:{type:Array,default:void 0},tabIndex:Number,dir:String},data(){return{currentShowAll:!0,currentTabs:[],showLicenseWatermark:!1}},computed:{compTabs(){return this.tabs!==void 0?this.tabs.map(function(t){const e=s.templateRendering.call(this,t.content,s.getListeners.call(this)),i=s.templateRendering.call(this,t.titleRender,s.getListeners.call(this));return{...t,content:e,titleRender:i}},this):this.currentTabs}},provide(){return{addRenderTitle:this.addRenderTitle,addTab:this.addTab,removeTab:this.removeTab}},created(){this.keyBinding={[s.Keys.left]:()=>this.prevNavigatableTab(),[s.Keys.right]:()=>this.nextNavigatableTab(),[s.Keys.down]:()=>this.nextNavigatableTab(),[s.Keys.up]:()=>this.prevNavigatableTab(),[s.Keys.home]:()=>0,[s.Keys.end]:()=>this.compTabs.length-1},s.validatePackage(l.packageMetadata),this.showLicenseWatermark=s.shouldShowValidationUI(l.packageMetadata)},watch:{selected(t,e){this.$props.animation&&(this.currentShowAll=!1,this.$nextTick(function(){this.currentShowAll=!0}))}},methods:{addRenderTitle(t,e){const i=this.compTabs.findIndex(a=>a.tabId===t);this.compTabs[i].titleRender=e},addTab(t){this.currentTabs.push(t)},removeTab(t){const e=this.currentTabs.findIndex(i=>i.tabId===t);this.currentTabs.splice(e,1)},onSelect(t){this.$props.selected!==t&&this.$emit("select",{selected:t})},onKeyDown(t){let e;switch(t.keyCode){case s.Keys.left:e=this.keyBinding[this.invertKeys(s.Keys.left,s.Keys.right)];break;case s.Keys.right:e=this.keyBinding[this.invertKeys(s.Keys.right,s.Keys.left)];break;case s.Keys.up:e=this.keyBinding[s.Keys.up];break;case s.Keys.down:e=this.keyBinding[s.Keys.down];break;case s.Keys.home:e=this.keyBinding[s.Keys.home];break;case s.Keys.end:e=this.keyBinding[s.Keys.end];break}e&&(t.preventDefault(),this.onSelect(e()))},invertKeys(t,e){return this.$el&&getComputedStyle(this.$el).direction==="rtl"||!1?e:t},firstNavigatableTab(){const t=this.compTabs.length;if(t){for(let e=0;e<t;e++)if(!this.compTabs[e].disabled)return e}},lastNavigatableTab(){const t=this.compTabs.length;if(t){for(let e=t-1;e>0;e--)if(!this.compTabs[e].disabled)return e}},prevNavigatableTab(){const t=this.compTabs.length,{selected:e}=this.$props,i=e?e-1:-1;if(i<0)return this.lastNavigatableTab();if(t)for(let a=i;a>-1;a--){if(!this.compTabs[a].disabled)return a;if(a===0)return this.lastNavigatableTab()}},nextNavigatableTab(){const t=this.compTabs.length,{selected:e}=this.$props,i=e?e+1:1;if(i>=t)return this.firstNavigatableTab();if(t)for(let a=i;a<t;a++){if(!this.compTabs[a].disabled)return a;if(a+1===t)return this.firstNavigatableTab()}}},render(){const{tabPosition:t,tabIndex:e=0}=this.$props,i=t==="bottom",a=s.classNames("k-widget","k-pos-relative","k-tabstrip",{"k-tabstrip-left":t==="left","k-tabstrip-right":t==="right","k-tabstrip-bottom":t==="bottom","k-tabstrip-top":t==="top"}),d=this.showLicenseWatermark?n.createVNode(s.WatermarkOverlay,null,null):null,c=function(h){const{selected:r}=h,b=s.getDefaultSlots(this),p={index:r,animation:this.$props.animation,tabs:this.compTabs,hasTabs:this.tabs!==void 0,selected:r,showAll:this.currentShowAll};return n.h(u.TabStripContent,{...p},b)};return n.createVNode("div",{dir:this.$props.dir,class:a},[!i&&n.createVNode(o.TabStripNavigation,{tabs:this.compTabs,selected:this.$props.selected,tabAlignment:this.$props.tabAlignment,onSelect:this.onSelect,onKeydown:this.onKeyDown,tabIndex:e},null),c.call(this,this.$props),i&&n.createVNode(o.TabStripNavigation,{tabs:this.compTabs,tabAlignment:this.$props.tabAlignment,selected:this.$props.selected,onSelect:this.onSelect,onKeydown:this.onKeyDown,tabIndex:e},null),d])}});exports.TabStrip=g;
|