Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

@progress/kendo-react-layout

Package Overview
Dependencies
Maintainers
1
Versions
1507
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@progress/kendo-react-layout - npm Package Compare versions

Comparing version
14.2.0-develop.1
to
14.2.0
+0
-1
menu/BaseMenuItemInternalProps.d.ts

@@ -23,3 +23,2 @@ /**

onMouseLeave: any;
onMouseDown: any;
onFocus: any;

@@ -26,0 +25,0 @@ onClick: any;

+1
-1

@@ -110,6 +110,6 @@ /**

reset: () => void;
private handleClickOutside;
private onKeyDown;
private onItemMouseOver;
private onItemMouseLeave;
private onItemMouseDown;
private onItemFocus;

@@ -116,0 +116,0 @@ private onItemClick;

@@ -8,2 +8,2 @@ /**

*/
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("react"),o=require("prop-types"),a=require("@progress/kendo-react-common"),i=require("../utils/itemsIdsUtils.js"),f=require("../utils/prepareInputItemsForInternalWork.js"),h=require("../utils/getNewItemIdUponKeyboardNavigation.js"),u=require("../utils/hoverDelay.js"),g=require("./MenuItemInternal.js"),b=require("../utils/DirectionHolder.js"),D=require("../utils/MouseOverHandler.js");function y(n){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const e in n)if(e!=="default"){const t=Object.getOwnPropertyDescriptor(n,e);Object.defineProperty(s,e,t.get?t:{enumerable:!0,get:()=>n[e]})}}return s.default=n,Object.freeze(s)}const d=y(v),c={focusedItemId:i.EMPTY_ID,hoveredItemId:i.EMPTY_ID,tabbableItemId:i.ZERO_LEVEL_ZERO_ITEM_ID},l=class l extends d.Component{constructor(s){super(s),this.menuWrapperEl=null,this.directionHolder=new b.DirectionHolder,this.inputItems=[],this.items=[],this.reset=()=>{this.clearItemHoverAndLeaveRequestsIfApplicable(),this.setState(c)},this.onKeyDown=e=>{if(this.state.focusedItemId!==i.EMPTY_ID){const t=i.getItemById(this.state.focusedItemId,this.items);let r=h.getNewItemIdUponKeyboardNavigation(this.items,t.id,e.keyCode,e.key,this.props.vertical,this.directionHolder.getIsDirectionRightToLeft());const I=i.getItemById(r,this.items);if(I&&I.separator&&(r=h.getNewItemIdUponKeyboardNavigation(this.items,r,e.keyCode,e.key,this.props.vertical,this.directionHolder.getIsDirectionRightToLeft())),t.id!==r&&(e.preventDefault(),this.setFocusedItemId(r)),(e.keyCode===a.Keys.enter||e.keyCode===a.Keys.space)&&!t.disabled&&(this.mouseOverHandler.handleItemSelectedViaKeyboard(),this.dispatchSelectEventIfWired(e,t.id),!e.isDefaultPrevented()&&t.items.length===0&&t.url&&window.location.assign(t.url)),e.keyCode===a.Keys.esc&&i.isIdZeroLevel(t.id)&&this.props.onClose){const p=this.getInputItem(t.id);this.props.onClose({target:this,item:p,itemId:t.id})}}},this.onItemMouseOver=e=>{this.mouseOverHandler.IsMouseOverEnabled&&(this.clearItemHoverAndLeaveRequestsIfApplicable(),this.itemHoverRequest=window.setTimeout(()=>{this.setHoveredItemId(e),this.itemHoverRequest=null},u.getHoverOpenDelay(this.props)))},this.onItemMouseLeave=e=>{this.mouseOverHandler.IsMouseOverEnabled&&this.isItemWithDefaultClose(e)&&(this.clearItemHoverAndLeaveRequestsIfApplicable(),this.itemLeaveRequest=window.setTimeout(()=>{this.setHoveredItemId(i.EMPTY_ID),this.itemLeaveRequest=null},u.getHoverCloseDelay(this.props)))},this.onItemMouseDown=()=>{this.mouseOverHandler.handleItemMouseDown()},this.onItemFocus=e=>{this.setFocusedItemId(e),this.mouseOverHandler.handleItemFocus()},this.onItemClick=(e,t)=>{const r=i.getItemById(t,this.items);r.disabled||(this.setFocusedItemId(t),this.mouseOverHandler.handleItemClick(t,this.isItemWithDefaultClose(t)),this.dispatchSelectEventIfWired(e,t),!e.isDefaultPrevented()&&r.url&&window.location.assign(r.url))},this.onPopupClose=(e,t)=>{this.props.onClose&&this.props.onClose({target:this,item:this.getInputItem(e),itemId:e,popupCloseEvent:t})},this.onItemBlur=(e,t)=>{if(this.isItemWithDefaultClose(e)&&this.setFocusedItemId(i.EMPTY_ID),t.relatedTarget&&t.relatedTarget.nodeName==="LI"){const r=t.relatedTarget.getAttribute("id");if(r&&r.includes(this.menuItemId))return}if(i.isIdZeroLevel(e)&&this.props.onClose){const r=this.getInputItem(e);this.props.onClose({target:this,item:r,itemId:e})}},this.getInputItem=e=>i.getItemById(e,this.inputItems),this.mouseOverHandler=new D.MouseOverHandler(this.props.openOnClick,this.reset,this.onItemMouseOver),this.state=Object.assign({},c,{isFirstRender:!0})}get menuItemId(){return this.props.id}get element(){return this.menuWrapperEl}get animate(){return this.props.animate!==void 0?this.props.animate:l.defaultProps.animate}render(){this.prepareItems(),this.state.isFirstRender||this.directionHolder.setIsDirectionRightToLeft(this.checkIsDirectionRightToLeft());const s=this.state.hoveredItemId?this.state.hoveredItemId:this.state.focusedItemId?i.getDirectParentId(this.state.focusedItemId):i.EMPTY_ID;return d.createElement("div",{id:this.props.id,onKeyDown:this.onKeyDown,style:this.props.style,className:this.directionHolder.getIsDirectionRightToLeft()?"k-rtl":void 0,ref:e=>{this.menuWrapperEl=e}},d.createElement(g.MenuItemInternalsList,{className:this.getMenuClassName(),"aria-orientation":this.props.vertical?"vertical":void 0,items:this.items,animate:this.animate,isMenuVertical:this.props.vertical,isDirectionRightToLeft:this.directionHolder.getIsDirectionRightToLeft(),focusedItemId:this.state.focusedItemId,lastItemIdToBeOpened:s,tabbableItemId:this.state.tabbableItemId,itemRender:this.props.itemRender,linkRender:this.props.linkRender,menuGuid:this.menuItemId,onMouseLeave:this.onItemMouseLeave,onMouseOver:this.onItemMouseOver,onMouseDown:this.onItemMouseDown,onFocus:this.onItemFocus,onClick:this.onItemClick,onBlur:this.onItemBlur,onOriginalItemNeeded:this.getInputItem,onPopupClose:this.onPopupClose,role:this.props.role}))}componentDidMount(){this.setState({isFirstRender:!1})}componentDidUpdate(s){(!!s.vertical!=!!this.props.vertical||this.directionHolder.hasDirectionChanged())&&this.reset(),this.mouseOverHandler.OpenOnClick=this.props.openOnClick}componentWillUnmount(){this.clearItemHoverAndLeaveRequestsIfApplicable()}setFocusedItemId(s){this.setState(e=>{const t=s===i.EMPTY_ID?e.tabbableItemId:i.getRootParentId(s);return{hoveredItemId:s===i.EMPTY_ID||i.isIdEmptyOrZeroLevel(e.hoveredItemId)&&i.isIdEmptyOrZeroLevel(s)?e.hoveredItemId:i.EMPTY_ID,focusedItemId:s,tabbableItemId:t}})}setHoveredItemId(s){this.setState(e=>i.isIdEmptyOrZeroLevel(s)&&i.isIdEmptyOrZeroLevel(e.focusedItemId)?{hoveredItemId:s,focusedItemId:e.focusedItemId,tabbableItemId:e.tabbableItemId}:{hoveredItemId:s,focusedItemId:i.EMPTY_ID,tabbableItemId:i.ZERO_LEVEL_ZERO_ITEM_ID})}getMenuClassName(){return a.classNames("k-reset","k-header","k-menu",{"k-menu-horizontal":!this.props.vertical},{"k-menu-vertical":this.props.vertical},this.props.className)}clearItemHoverAndLeaveRequestsIfApplicable(){this.itemHoverRequest&&(clearTimeout(this.itemHoverRequest),this.itemHoverRequest=null),this.itemLeaveRequest&&(clearTimeout(this.itemLeaveRequest),this.itemLeaveRequest=null)}isItemWithDefaultClose(s){return!this.props.customCloseItemIds||this.props.customCloseItemIds.indexOf(s)===-1}checkIsDirectionRightToLeft(){return!!(this.props.dir!==void 0?this.props.dir==="rtl":this.menuWrapperEl&&getComputedStyle(this.menuWrapperEl).direction==="rtl")}prepareItems(){const{items:s,inputItems:e}=f.prepareInputItemsForInternalWork(this.props.items,this.props.children);this.items=s,this.inputItems=e}dispatchSelectEventIfWired(s,e){a.dispatchEvent(this.props.onSelect,s,this,{item:this.getInputItem(e),itemId:e})}};l.propTypes={vertical:o.bool,items:o.arrayOf(o.object),style:o.object,animate:o.oneOfType([o.bool,o.shape({openDuration:o.number,closeDuration:o.number})]),dir:o.string,hoverOpenDelay:o.number,hoverCloseDelay:o.number,openOnClick:o.bool,itemRender:o.any,linkRender:o.any,customCloseItemIds:o.arrayOf(o.string),onSelect:o.func,onClose:o.func,role:o.string},l.defaultProps={vertical:!1,animate:!0};let m=l;exports.Menu=m;
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("react"),r=require("prop-types"),a=require("@progress/kendo-react-common"),s=require("../utils/itemsIdsUtils.js"),f=require("../utils/prepareInputItemsForInternalWork.js"),c=require("../utils/getNewItemIdUponKeyboardNavigation.js"),u=require("../utils/hoverDelay.js"),g=require("./MenuItemInternal.js"),b=require("../utils/DirectionHolder.js"),D=require("../utils/MouseOverHandler.js");function E(n){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const e in n)if(e!=="default"){const t=Object.getOwnPropertyDescriptor(n,e);Object.defineProperty(i,e,t.get?t:{enumerable:!0,get:()=>n[e]})}}return i.default=n,Object.freeze(i)}const h=E(v),p={focusedItemId:s.EMPTY_ID,hoveredItemId:s.EMPTY_ID,tabbableItemId:s.ZERO_LEVEL_ZERO_ITEM_ID},l=class l extends h.Component{constructor(i){super(i),this.menuWrapperEl=null,this.directionHolder=new b.DirectionHolder,this.inputItems=[],this.items=[],this.reset=()=>{this.clearItemHoverAndLeaveRequestsIfApplicable(),this.setState(p)},this.handleClickOutside=e=>{var t;if(this.props.openOnClick&&this.state.hoveredItemId!==s.EMPTY_ID){const o=e.target;this.menuWrapperEl&&!this.menuWrapperEl.contains(o)&&(this.menuItemId&&((t=o.closest)!=null&&t.call(o,`[id^="${this.menuItemId}_"]`))||this.setHoveredItemId(s.EMPTY_ID))}},this.onKeyDown=e=>{if(this.state.focusedItemId!==s.EMPTY_ID){const t=s.getItemById(this.state.focusedItemId,this.items);let o=c.getNewItemIdUponKeyboardNavigation(this.items,t.id,e.keyCode,e.key,this.props.vertical,this.directionHolder.getIsDirectionRightToLeft());const d=s.getItemById(o,this.items);if(d&&d.separator&&(o=c.getNewItemIdUponKeyboardNavigation(this.items,o,e.keyCode,e.key,this.props.vertical,this.directionHolder.getIsDirectionRightToLeft())),t.id!==o&&(e.preventDefault(),this.setFocusedItemId(o)),(e.keyCode===a.Keys.enter||e.keyCode===a.Keys.space)&&!t.disabled&&(this.mouseOverHandler.handleItemSelectedViaKeyboard(),this.dispatchSelectEventIfWired(e,t.id),!e.isDefaultPrevented()&&t.items.length===0&&t.url&&window.location.assign(t.url)),e.keyCode===a.Keys.esc&&s.isIdZeroLevel(t.id)&&this.props.onClose){const I=this.getInputItem(t.id);this.props.onClose({target:this,item:I,itemId:t.id})}}},this.onItemMouseOver=e=>{const t=this.props.openOnClick&&!s.isIdZeroLevel(e)&&this.state.hoveredItemId!==s.EMPTY_ID;(this.mouseOverHandler.IsMouseOverEnabled||t)&&(this.clearItemHoverAndLeaveRequestsIfApplicable(),this.itemHoverRequest=window.setTimeout(()=>{this.setHoveredItemId(e),this.itemHoverRequest=null},u.getHoverOpenDelay(this.props)))},this.onItemMouseLeave=e=>{const t=this.props.openOnClick&&!s.isIdZeroLevel(e)&&this.state.hoveredItemId!==s.EMPTY_ID;(this.mouseOverHandler.IsMouseOverEnabled||t)&&this.isItemWithDefaultClose(e)&&(this.clearItemHoverAndLeaveRequestsIfApplicable(),this.itemLeaveRequest=window.setTimeout(()=>{t?this.setHoveredItemId(s.getDirectParentId(e)):this.setHoveredItemId(s.EMPTY_ID),this.itemLeaveRequest=null},u.getHoverCloseDelay(this.props)))},this.onItemFocus=e=>{this.state.hoveredItemId===s.EMPTY_ID?this.setFocusedItemId(e):this.setState(t=>({focusedItemId:e,hoveredItemId:t.hoveredItemId,tabbableItemId:s.getRootParentId(e)}))},this.onItemClick=(e,t)=>{const o=s.getItemById(t,this.items);if(!o.disabled){const d=s.isIdZeroLevel(t),I=!o.items||o.items.length===0;d?(this.setFocusedItemId(t),I?this.setHoveredItemId(s.EMPTY_ID):this.props.openOnClick&&this.state.hoveredItemId!==s.EMPTY_ID&&s.getRootParentId(this.state.hoveredItemId)===t?this.setHoveredItemId(s.EMPTY_ID):this.setHoveredItemId(t)):I&&(this.setFocusedItemId(t),this.setHoveredItemId(s.EMPTY_ID)),this.dispatchSelectEventIfWired(e,t),!e.isDefaultPrevented()&&o.url&&window.location.assign(o.url)}},this.onPopupClose=(e,t)=>{this.props.onClose&&this.props.onClose({target:this,item:this.getInputItem(e),itemId:e,popupCloseEvent:t})},this.onItemBlur=(e,t)=>{if(this.isItemWithDefaultClose(e)&&this.setFocusedItemId(s.EMPTY_ID),t.relatedTarget&&t.relatedTarget.nodeName==="LI"){const o=t.relatedTarget.getAttribute("id");if(o&&o.includes(this.menuItemId))return}if(s.isIdZeroLevel(e)&&this.props.onClose){const o=this.getInputItem(e);this.props.onClose({target:this,item:o,itemId:e})}},this.getInputItem=e=>s.getItemById(e,this.inputItems),this.mouseOverHandler=new D.MouseOverHandler(this.props.openOnClick,this.reset),this.state=Object.assign({},p,{isFirstRender:!0})}get menuItemId(){return this.props.id}get element(){return this.menuWrapperEl}get animate(){return this.props.animate!==void 0?this.props.animate:l.defaultProps.animate}render(){this.prepareItems(),this.state.isFirstRender||this.directionHolder.setIsDirectionRightToLeft(this.checkIsDirectionRightToLeft());const i=this.state.hoveredItemId?this.state.hoveredItemId:this.state.focusedItemId?s.getDirectParentId(this.state.focusedItemId):s.EMPTY_ID;return h.createElement("div",{id:this.props.id,onKeyDown:this.onKeyDown,style:this.props.style,className:this.directionHolder.getIsDirectionRightToLeft()?"k-rtl":void 0,ref:e=>{this.menuWrapperEl=e}},h.createElement(g.MenuItemInternalsList,{className:this.getMenuClassName(),"aria-orientation":this.props.vertical?"vertical":void 0,items:this.items,animate:this.animate,isMenuVertical:this.props.vertical,isDirectionRightToLeft:this.directionHolder.getIsDirectionRightToLeft(),focusedItemId:this.state.focusedItemId,lastItemIdToBeOpened:i,tabbableItemId:this.state.tabbableItemId,itemRender:this.props.itemRender,linkRender:this.props.linkRender,menuGuid:this.menuItemId,onMouseLeave:this.onItemMouseLeave,onMouseOver:this.onItemMouseOver,onFocus:this.onItemFocus,onClick:this.onItemClick,onBlur:this.onItemBlur,onOriginalItemNeeded:this.getInputItem,onPopupClose:this.onPopupClose,role:this.props.role}))}componentDidMount(){this.setState({isFirstRender:!1}),this.props.openOnClick&&document.addEventListener("mousedown",this.handleClickOutside)}componentDidUpdate(i){(!!i.vertical!=!!this.props.vertical||this.directionHolder.hasDirectionChanged())&&this.reset(),this.mouseOverHandler.OpenOnClick=this.props.openOnClick,i.openOnClick!==this.props.openOnClick&&(this.props.openOnClick?document.addEventListener("mousedown",this.handleClickOutside):document.removeEventListener("mousedown",this.handleClickOutside))}componentWillUnmount(){this.clearItemHoverAndLeaveRequestsIfApplicable(),document.removeEventListener("mousedown",this.handleClickOutside)}setFocusedItemId(i){this.setState(e=>{const t=i===s.EMPTY_ID?e.tabbableItemId:s.getRootParentId(i);return{hoveredItemId:i===s.EMPTY_ID||s.isIdEmptyOrZeroLevel(e.hoveredItemId)&&s.isIdEmptyOrZeroLevel(i)?e.hoveredItemId:s.EMPTY_ID,focusedItemId:i,tabbableItemId:t}})}setHoveredItemId(i){this.setState(e=>s.isIdEmptyOrZeroLevel(i)&&s.isIdEmptyOrZeroLevel(e.focusedItemId)?{hoveredItemId:i,focusedItemId:e.focusedItemId,tabbableItemId:e.tabbableItemId}:{hoveredItemId:i,focusedItemId:s.EMPTY_ID,tabbableItemId:s.ZERO_LEVEL_ZERO_ITEM_ID})}getMenuClassName(){return a.classNames("k-reset","k-header","k-menu",{"k-menu-horizontal":!this.props.vertical},{"k-menu-vertical":this.props.vertical},this.props.className)}clearItemHoverAndLeaveRequestsIfApplicable(){this.itemHoverRequest&&(clearTimeout(this.itemHoverRequest),this.itemHoverRequest=null),this.itemLeaveRequest&&(clearTimeout(this.itemLeaveRequest),this.itemLeaveRequest=null)}isItemWithDefaultClose(i){return!this.props.customCloseItemIds||this.props.customCloseItemIds.indexOf(i)===-1}checkIsDirectionRightToLeft(){return!!(this.props.dir!==void 0?this.props.dir==="rtl":this.menuWrapperEl&&getComputedStyle(this.menuWrapperEl).direction==="rtl")}prepareItems(){const{items:i,inputItems:e}=f.prepareInputItemsForInternalWork(this.props.items,this.props.children);this.items=i,this.inputItems=e}dispatchSelectEventIfWired(i,e){a.dispatchEvent(this.props.onSelect,i,this,{item:this.getInputItem(e),itemId:e})}};l.propTypes={vertical:r.bool,items:r.arrayOf(r.object),style:r.object,animate:r.oneOfType([r.bool,r.shape({openDuration:r.number,closeDuration:r.number})]),dir:r.string,hoverOpenDelay:r.number,hoverCloseDelay:r.number,openOnClick:r.bool,itemRender:r.any,linkRender:r.any,customCloseItemIds:r.arrayOf(r.string),onSelect:r.func,onClose:r.func,role:r.string},l.defaultProps={vertical:!1,animate:!0};let m=l;exports.Menu=m;

@@ -8,24 +8,30 @@ /**

*/
import * as m from "react";
import i from "prop-types";
import { Keys as h, classNames as g, dispatchEvent as b } from "@progress/kendo-react-common";
import { ZERO_LEVEL_ZERO_ITEM_ID as f, EMPTY_ID as r, getItemById as a, isIdZeroLevel as p, getDirectParentId as C, getRootParentId as R, isIdEmptyOrZeroLevel as l } from "../utils/itemsIdsUtils.mjs";
import { prepareInputItemsForInternalWork as D } from "../utils/prepareInputItemsForInternalWork.mjs";
import { getNewItemIdUponKeyboardNavigation as I } from "../utils/getNewItemIdUponKeyboardNavigation.mjs";
import { getHoverOpenDelay as H, getHoverCloseDelay as O } from "../utils/hoverDelay.mjs";
import { MenuItemInternalsList as y } from "./MenuItemInternal.mjs";
import { DirectionHolder as k } from "../utils/DirectionHolder.mjs";
import { MouseOverHandler as L } from "../utils/MouseOverHandler.mjs";
const u = {
import * as p from "react";
import o from "prop-types";
import { Keys as I, classNames as C, dispatchEvent as k } from "@progress/kendo-react-common";
import { ZERO_LEVEL_ZERO_ITEM_ID as g, EMPTY_ID as r, getItemById as l, isIdZeroLevel as d, getDirectParentId as c, getRootParentId as u, isIdEmptyOrZeroLevel as m } from "../utils/itemsIdsUtils.mjs";
import { prepareInputItemsForInternalWork as O } from "../utils/prepareInputItemsForInternalWork.mjs";
import { getNewItemIdUponKeyboardNavigation as f } from "../utils/getNewItemIdUponKeyboardNavigation.mjs";
import { getHoverOpenDelay as H, getHoverCloseDelay as R } from "../utils/hoverDelay.mjs";
import { MenuItemInternalsList as L } from "./MenuItemInternal.mjs";
import { DirectionHolder as y } from "../utils/DirectionHolder.mjs";
import { MouseOverHandler as D } from "../utils/MouseOverHandler.mjs";
const v = {
focusedItemId: r,
hoveredItemId: r,
tabbableItemId: f
}, n = class n extends m.Component {
tabbableItemId: g
}, h = class h extends p.Component {
constructor(s) {
super(s), this.menuWrapperEl = null, this.directionHolder = new k(), this.inputItems = [], this.items = [], this.reset = () => {
this.clearItemHoverAndLeaveRequestsIfApplicable(), this.setState(u);
super(s), this.menuWrapperEl = null, this.directionHolder = new y(), this.inputItems = [], this.items = [], this.reset = () => {
this.clearItemHoverAndLeaveRequestsIfApplicable(), this.setState(v);
}, this.handleClickOutside = (e) => {
var t;
if (this.props.openOnClick && this.state.hoveredItemId !== r) {
const i = e.target;
this.menuWrapperEl && !this.menuWrapperEl.contains(i) && (this.menuItemId && ((t = i.closest) != null && t.call(i, `[id^="${this.menuItemId}_"]`)) || this.setHoveredItemId(r));
}
}, this.onKeyDown = (e) => {
if (this.state.focusedItemId !== r) {
const t = a(this.state.focusedItemId, this.items);
let o = I(
const t = l(this.state.focusedItemId, this.items);
let i = f(
this.items,

@@ -38,6 +44,6 @@ t.id,

);
const d = a(o, this.items);
if (d && d.separator && (o = I(
const n = l(i, this.items);
if (n && n.separator && (i = f(
this.items,
o,
i,
e.keyCode,

@@ -47,7 +53,7 @@ e.key,

this.directionHolder.getIsDirectionRightToLeft()
)), t.id !== o && (e.preventDefault(), this.setFocusedItemId(o)), (e.keyCode === h.enter || e.keyCode === h.space) && !t.disabled && (this.mouseOverHandler.handleItemSelectedViaKeyboard(), this.dispatchSelectEventIfWired(e, t.id), !e.isDefaultPrevented() && t.items.length === 0 && t.url && window.location.assign(t.url)), e.keyCode === h.esc && p(t.id) && this.props.onClose) {
const v = this.getInputItem(t.id);
)), t.id !== i && (e.preventDefault(), this.setFocusedItemId(i)), (e.keyCode === I.enter || e.keyCode === I.space) && !t.disabled && (this.mouseOverHandler.handleItemSelectedViaKeyboard(), this.dispatchSelectEventIfWired(e, t.id), !e.isDefaultPrevented() && t.items.length === 0 && t.url && window.location.assign(t.url)), e.keyCode === I.esc && d(t.id) && this.props.onClose) {
const a = this.getInputItem(t.id);
this.props.onClose({
target: this,
item: v,
item: a,
itemId: t.id

@@ -58,16 +64,23 @@ });

}, this.onItemMouseOver = (e) => {
this.mouseOverHandler.IsMouseOverEnabled && (this.clearItemHoverAndLeaveRequestsIfApplicable(), this.itemHoverRequest = window.setTimeout(() => {
const t = this.props.openOnClick && !d(e) && this.state.hoveredItemId !== r;
(this.mouseOverHandler.IsMouseOverEnabled || t) && (this.clearItemHoverAndLeaveRequestsIfApplicable(), this.itemHoverRequest = window.setTimeout(() => {
this.setHoveredItemId(e), this.itemHoverRequest = null;
}, H(this.props)));
}, this.onItemMouseLeave = (e) => {
this.mouseOverHandler.IsMouseOverEnabled && this.isItemWithDefaultClose(e) && (this.clearItemHoverAndLeaveRequestsIfApplicable(), this.itemLeaveRequest = window.setTimeout(() => {
this.setHoveredItemId(r), this.itemLeaveRequest = null;
}, O(this.props)));
}, this.onItemMouseDown = () => {
this.mouseOverHandler.handleItemMouseDown();
const t = this.props.openOnClick && !d(e) && this.state.hoveredItemId !== r;
(this.mouseOverHandler.IsMouseOverEnabled || t) && this.isItemWithDefaultClose(e) && (this.clearItemHoverAndLeaveRequestsIfApplicable(), this.itemLeaveRequest = window.setTimeout(() => {
t ? this.setHoveredItemId(c(e)) : this.setHoveredItemId(r), this.itemLeaveRequest = null;
}, R(this.props)));
}, this.onItemFocus = (e) => {
this.setFocusedItemId(e), this.mouseOverHandler.handleItemFocus();
this.state.hoveredItemId === r ? this.setFocusedItemId(e) : this.setState((t) => ({
focusedItemId: e,
hoveredItemId: t.hoveredItemId,
tabbableItemId: u(e)
}));
}, this.onItemClick = (e, t) => {
const o = a(t, this.items);
o.disabled || (this.setFocusedItemId(t), this.mouseOverHandler.handleItemClick(t, this.isItemWithDefaultClose(t)), this.dispatchSelectEventIfWired(e, t), !e.isDefaultPrevented() && o.url && window.location.assign(o.url));
const i = l(t, this.items);
if (!i.disabled) {
const n = d(t), a = !i.items || i.items.length === 0;
n ? (this.setFocusedItemId(t), a ? this.setHoveredItemId(r) : this.props.openOnClick && this.state.hoveredItemId !== r && u(this.state.hoveredItemId) === t ? this.setHoveredItemId(r) : this.setHoveredItemId(t)) : a && (this.setFocusedItemId(t), this.setHoveredItemId(r)), this.dispatchSelectEventIfWired(e, t), !e.isDefaultPrevented() && i.url && window.location.assign(i.url);
}
}, this.onPopupClose = (e, t) => {

@@ -82,15 +95,15 @@ this.props.onClose && this.props.onClose({

if (this.isItemWithDefaultClose(e) && this.setFocusedItemId(r), t.relatedTarget && t.relatedTarget.nodeName === "LI") {
const o = t.relatedTarget.getAttribute("id");
if (o && o.includes(this.menuItemId))
const i = t.relatedTarget.getAttribute("id");
if (i && i.includes(this.menuItemId))
return;
}
if (p(e) && this.props.onClose) {
const o = this.getInputItem(e);
if (d(e) && this.props.onClose) {
const i = this.getInputItem(e);
this.props.onClose({
target: this,
item: o,
item: i,
itemId: e
});
}
}, this.getInputItem = (e) => a(e, this.inputItems), this.mouseOverHandler = new L(this.props.openOnClick, this.reset, this.onItemMouseOver), this.state = Object.assign({}, u, { isFirstRender: !0 });
}, this.getInputItem = (e) => l(e, this.inputItems), this.mouseOverHandler = new D(this.props.openOnClick, this.reset), this.state = Object.assign({}, v, { isFirstRender: !0 });
}

@@ -107,3 +120,3 @@ get menuItemId() {

get animate() {
return this.props.animate !== void 0 ? this.props.animate : n.defaultProps.animate;
return this.props.animate !== void 0 ? this.props.animate : h.defaultProps.animate;
}

@@ -115,4 +128,4 @@ /**

this.prepareItems(), this.state.isFirstRender || this.directionHolder.setIsDirectionRightToLeft(this.checkIsDirectionRightToLeft());
const s = this.state.hoveredItemId ? this.state.hoveredItemId : this.state.focusedItemId ? C(this.state.focusedItemId) : r;
return /* @__PURE__ */ m.createElement(
const s = this.state.hoveredItemId ? this.state.hoveredItemId : this.state.focusedItemId ? c(this.state.focusedItemId) : r;
return /* @__PURE__ */ p.createElement(
"div",

@@ -128,4 +141,4 @@ {

},
/* @__PURE__ */ m.createElement(
y,
/* @__PURE__ */ p.createElement(
L,
{

@@ -146,3 +159,2 @@ className: this.getMenuClassName(),

onMouseOver: this.onItemMouseOver,
onMouseDown: this.onItemMouseDown,
onFocus: this.onItemFocus,

@@ -162,3 +174,3 @@ onClick: this.onItemClick,

componentDidMount() {
this.setState({ isFirstRender: !1 });
this.setState({ isFirstRender: !1 }), this.props.openOnClick && document.addEventListener("mousedown", this.handleClickOutside);
}

@@ -169,3 +181,3 @@ /**

componentDidUpdate(s) {
(!!s.vertical != !!this.props.vertical || this.directionHolder.hasDirectionChanged()) && this.reset(), this.mouseOverHandler.OpenOnClick = this.props.openOnClick;
(!!s.vertical != !!this.props.vertical || this.directionHolder.hasDirectionChanged()) && this.reset(), this.mouseOverHandler.OpenOnClick = this.props.openOnClick, s.openOnClick !== this.props.openOnClick && (this.props.openOnClick ? document.addEventListener("mousedown", this.handleClickOutside) : document.removeEventListener("mousedown", this.handleClickOutside));
}

@@ -176,19 +188,19 @@ /**

componentWillUnmount() {
this.clearItemHoverAndLeaveRequestsIfApplicable();
this.clearItemHoverAndLeaveRequestsIfApplicable(), document.removeEventListener("mousedown", this.handleClickOutside);
}
setFocusedItemId(s) {
this.setState((e) => {
const t = s === r ? e.tabbableItemId : R(s);
return { hoveredItemId: s === r || l(e.hoveredItemId) && l(s) ? e.hoveredItemId : r, focusedItemId: s, tabbableItemId: t };
const t = s === r ? e.tabbableItemId : u(s);
return { hoveredItemId: s === r || m(e.hoveredItemId) && m(s) ? e.hoveredItemId : r, focusedItemId: s, tabbableItemId: t };
});
}
setHoveredItemId(s) {
this.setState((e) => l(s) && l(e.focusedItemId) ? {
this.setState((e) => m(s) && m(e.focusedItemId) ? {
hoveredItemId: s,
focusedItemId: e.focusedItemId,
tabbableItemId: e.tabbableItemId
} : { hoveredItemId: s, focusedItemId: r, tabbableItemId: f });
} : { hoveredItemId: s, focusedItemId: r, tabbableItemId: g });
}
getMenuClassName() {
return g(
return C(
"k-reset",

@@ -212,34 +224,34 @@ "k-header",

prepareItems() {
const { items: s, inputItems: e } = D(this.props.items, this.props.children);
const { items: s, inputItems: e } = O(this.props.items, this.props.children);
this.items = s, this.inputItems = e;
}
dispatchSelectEventIfWired(s, e) {
b(this.props.onSelect, s, this, { item: this.getInputItem(e), itemId: e });
k(this.props.onSelect, s, this, { item: this.getInputItem(e), itemId: e });
}
};
n.propTypes = {
vertical: i.bool,
items: i.arrayOf(i.object),
style: i.object,
animate: i.oneOfType([
i.bool,
i.shape({
openDuration: i.number,
closeDuration: i.number
h.propTypes = {
vertical: o.bool,
items: o.arrayOf(o.object),
style: o.object,
animate: o.oneOfType([
o.bool,
o.shape({
openDuration: o.number,
closeDuration: o.number
})
]),
dir: i.string,
hoverOpenDelay: i.number,
hoverCloseDelay: i.number,
openOnClick: i.bool,
itemRender: i.any,
linkRender: i.any,
customCloseItemIds: i.arrayOf(i.string),
onSelect: i.func,
onClose: i.func,
role: i.string
}, n.defaultProps = { vertical: !1, animate: !0 };
let c = n;
dir: o.string,
hoverOpenDelay: o.number,
hoverCloseDelay: o.number,
openOnClick: o.bool,
itemRender: o.any,
linkRender: o.any,
customCloseItemIds: o.arrayOf(o.string),
onSelect: o.func,
onClose: o.func,
role: o.string
}, h.defaultProps = { vertical: !1, animate: !0 };
let b = h;
export {
c as Menu
b as Menu
};

@@ -8,2 +8,2 @@ /**

*/
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("react"),a=require("@progress/kendo-react-common"),I=require("@progress/kendo-react-popup"),m=require("../utils/itemsIdsUtils.js"),p=require("../utils/misc.js"),g=require("./MenuItemLink.js"),M=require("./MenuItemArrow.js");function f(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const t in n)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,o.get?o:{enumerable:!0,get:()=>n[t]})}}return e.default=n,Object.freeze(e)}const s=f(h);class u extends s.Component{constructor(){super(...arguments),this.onMouseOver=e=>{this.props.onMouseOver(this.props.parentItemId),e.stopPropagation()},this.onMouseLeave=e=>{this.props.onMouseLeave(this.props.parentItemId),e.stopPropagation()}}render(){const e=this.props.parentItemId;return s.createElement("ul",{className:this.props.className,role:this.props.role?this.props.role:e!==void 0?"menu":"menubar",id:e!==void 0?p.getDOMElementId(this.props.menuGuid,e):void 0,onMouseOver:e!==void 0?this.onMouseOver:void 0,onMouseLeave:e!==void 0?this.onMouseLeave:void 0,"aria-orientation":this.props["aria-orientation"]},this.renderChildItems())}renderChildItems(){return this.props.items.length>0?this.props.items.map((e,t)=>s.createElement(l,{item:e,animate:this.props.animate,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.props.onMouseOver,onMouseLeave:this.props.onMouseLeave,onMouseDown:this.props.onMouseDown,onBlur:this.props.onBlur,onFocus:this.props.onFocus,onClick:this.props.onClick,onOriginalItemNeeded:this.props.onOriginalItemNeeded,onPopupClose:this.props.onPopupClose,key:t})):null}}class l extends s.Component{constructor(e){super(e),this.isFirstRender=!0,this.onMouseOver=t=>{this.props.onMouseOver(this.props.item.id),t.stopPropagation()},this.onMouseLeave=t=>{this.props.onMouseLeave(this.props.item.id),t.stopPropagation()},this.onPopupClose=t=>{this.props.onPopupClose(this.props.item.id,t)},this.state={opened:!1}}componentDidMount(){const e=this.props.focusedItemId,t=this.props.item.id;e&&e===t&&this.itemElement.focus({preventScroll:!0}),this.isFirstRender=!1}componentDidUpdate(e){const t=this.props.focusedItemId,o=this.props.item.id;if(t){const r=a.getActiveElement(document);e.focusedItemId!==t&&t===o&&!this.itemElement.contains(r)&&this.itemElement.focus({preventScroll:!0})}}render(){const e=this.props.item,t=e.id,o=p.getDOMElementId(this.props.menuGuid,t),r=e.separator;return s.createElement(s.Fragment,null,r?s.createElement("li",{className:"k-separator k-item","aria-hidden":!0,key:o,id:o,ref:i=>{this.itemElement=i}}):s.createElement("li",{id:o,className:this.getMenuItemClassName(e),style:e.cssStyle,tabIndex:t===this.props.tabbableItemId?0:-1,onMouseOver:this.onMouseOver,onMouseLeave:this.onMouseLeave,onMouseDown:i=>this.props.onMouseDown(i),onBlur:i=>this.props.onBlur(t,i),onFocus:()=>this.props.onFocus(t),onClick:i=>this.props.onClick(i,t),role:"menuitem","aria-disabled":e.disabled?!0:void 0,"aria-haspopup":e.items.length>0?!0:void 0,"aria-expanded":e.items.length>0?this.Opened:void 0,"aria-label":e.text,"aria-owns":this.Opened?o:void 0,ref:i=>{this.itemElement=i},key:o},this.contentRender?this.renderContent():this.renderMenuItemLink()),this.renderPopupIfOpened())}renderContent(){const e=this.props.item.contentParentItemId;return s.createElement("div",{className:"k-content",role:"presentation"},s.createElement(this.contentRender,{item:this.props.onOriginalItemNeeded(e),itemId:e}))}renderMenuItemLink(){const e=this.props.item;if(this.linkRender)return s.createElement(this.linkRender,{item:this.props.onOriginalItemNeeded(e.id),itemId:e.id,opened:this.Opened,dir:p.convertBoolDirectionToString(this.props.isDirectionRightToLeft)});const t=this.itemRender?s.createElement(this.itemRender,{item:this.props.onOriginalItemNeeded(e.id),itemId:e.id,key:"1"}):s.createElement("span",{className:"k-menu-link-text"},e.text);return s.createElement(g.MenuItemLink,{url:e.url,opened:this.Opened},this.renderMenuIconIfApplicable(),t,this.renderArrowIfApplicable())}renderPopupIfOpened(){const e=this.props.item.id,t=this.props.animate,{anchorAlign:o,popupAlign:r,collision:i,animationDirection:d}=p.getPopupSettings(e,this.props.isMenuVertical,this.props.isDirectionRightToLeft),c=t===!0?{openDuration:300,closeDuration:300,direction:d}:t===!1?!1:{openDuration:(t==null?void 0:t.openDuration)||300,closeDuration:(t==null?void 0:t.closeDuration)||300,direction:(t==null?void 0:t.direction)||d};return s.createElement(I.Popup,{anchor:this.itemElement,show:this.Opened,popupClass:this.getPopupClassName(),anchorAlign:o,popupAlign:r,collision:i,animate:c,onClose:this.onPopupClose,key:"1"},s.createElement(u,{parentItemId:e,animate:this.props.animate,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,className:"k-group k-menu-group k-reset k-menu-group-md",onMouseOver:this.props.onMouseOver,onMouseLeave:this.props.onMouseLeave,onMouseDown:this.props.onMouseDown,onBlur:this.props.onBlur,onFocus:this.props.onFocus,onClick:this.props.onClick,onOriginalItemNeeded:this.props.onOriginalItemNeeded,onPopupClose:this.props.onPopupClose}))}renderMenuIconIfApplicable(){const{icon:e,svgIcon:t}=this.props.item;return e||t?s.createElement(a.IconWrap,{name:e,icon:t,key:"0"}):null}renderArrowIfApplicable(){return this.props.item.items.length>0?s.createElement("span",{className:"k-menu-expand-arrow","aria-hidden":!0},s.createElement(M.MenuItemArrow,{itemId:this.props.item.id,verticalMenu:this.props.isMenuVertical,dir:p.convertBoolDirectionToString(this.props.isDirectionRightToLeft),key:"2"})):null}get itemRender(){return this.props.item.render||this.props.itemRender}get linkRender(){return this.props.item.linkRender||this.props.linkRender}get contentRender(){return this.props.item.contentParentItemId?this.props.item.contentRender:null}get Opened(){const e=this.props;return e.item.items.length>0&&m.shouldOpenItem(e.item.id,e.lastItemIdToBeOpened)&&!this.isFirstRender}getPopupClassName(){return a.classNames("k-menu-popup",{"k-rtl":this.props.isDirectionRightToLeft})}getMenuItemClassName(e){return a.classNames("k-item","k-menu-item",{"k-first":m.isFirstItemFromSiblings(e.id),"k-last":e.isLastFromSiblings,"k-disabled":e.disabled},e.cssClass)}}exports.MenuItemInternal=l;exports.MenuItemInternalsList=u;
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("react"),a=require("@progress/kendo-react-common"),I=require("@progress/kendo-react-popup"),m=require("../utils/itemsIdsUtils.js"),p=require("../utils/misc.js"),g=require("./MenuItemLink.js"),M=require("./MenuItemArrow.js");function f(n){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const t in n)if(t!=="default"){const i=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,i.get?i:{enumerable:!0,get:()=>n[t]})}}return e.default=n,Object.freeze(e)}const s=f(h);class l extends s.Component{constructor(){super(...arguments),this.onMouseOver=e=>{this.props.onMouseOver(this.props.parentItemId),e.stopPropagation()},this.onMouseLeave=e=>{this.props.onMouseLeave(this.props.parentItemId),e.stopPropagation()}}render(){const e=this.props.parentItemId;return s.createElement("ul",{className:this.props.className,role:this.props.role?this.props.role:e!==void 0?"menu":"menubar",id:e!==void 0?p.getDOMElementId(this.props.menuGuid,e):void 0,onMouseOver:e!==void 0?this.onMouseOver:void 0,onMouseLeave:e!==void 0?this.onMouseLeave:void 0,"aria-orientation":this.props["aria-orientation"]},this.renderChildItems())}renderChildItems(){return this.props.items.length>0?this.props.items.map((e,t)=>s.createElement(u,{item:e,animate:this.props.animate,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.props.onMouseOver,onMouseLeave:this.props.onMouseLeave,onBlur:this.props.onBlur,onFocus:this.props.onFocus,onClick:this.props.onClick,onOriginalItemNeeded:this.props.onOriginalItemNeeded,onPopupClose:this.props.onPopupClose,key:t})):null}}class u extends s.Component{constructor(e){super(e),this.isFirstRender=!0,this.onMouseOver=t=>{this.props.onMouseOver(this.props.item.id),t.stopPropagation()},this.onMouseLeave=t=>{this.props.onMouseLeave(this.props.item.id),t.stopPropagation()},this.onPopupClose=t=>{this.props.onPopupClose(this.props.item.id,t)},this.state={opened:!1}}componentDidMount(){const e=this.props.focusedItemId,t=this.props.item.id;e&&e===t&&this.itemElement.focus({preventScroll:!0}),this.isFirstRender=!1}componentDidUpdate(e){const t=this.props.focusedItemId,i=this.props.item.id;if(t){const r=a.getActiveElement(document);e.focusedItemId!==t&&t===i&&!this.itemElement.contains(r)&&this.itemElement.focus({preventScroll:!0})}}render(){const e=this.props.item,t=e.id,i=p.getDOMElementId(this.props.menuGuid,t),r=e.separator;return s.createElement(s.Fragment,null,r?s.createElement("li",{className:"k-separator k-item","aria-hidden":!0,key:i,id:i,ref:o=>{this.itemElement=o}}):s.createElement("li",{id:i,className:this.getMenuItemClassName(e),style:e.cssStyle,tabIndex:t===this.props.tabbableItemId?0:-1,onMouseOver:this.onMouseOver,onMouseLeave:this.onMouseLeave,onBlur:o=>this.props.onBlur(t,o),onFocus:()=>this.props.onFocus(t),onClick:o=>this.props.onClick(o,t),role:"menuitem","aria-disabled":e.disabled?!0:void 0,"aria-haspopup":e.items.length>0?!0:void 0,"aria-expanded":e.items.length>0?this.Opened:void 0,"aria-label":e.text,"aria-owns":this.Opened?i:void 0,ref:o=>{this.itemElement=o},key:i},this.contentRender?this.renderContent():this.renderMenuItemLink()),this.renderPopupIfOpened())}renderContent(){const e=this.props.item.contentParentItemId;return s.createElement("div",{className:"k-content",role:"presentation"},s.createElement(this.contentRender,{item:this.props.onOriginalItemNeeded(e),itemId:e}))}renderMenuItemLink(){const e=this.props.item;if(this.linkRender)return s.createElement(this.linkRender,{item:this.props.onOriginalItemNeeded(e.id),itemId:e.id,opened:this.Opened,dir:p.convertBoolDirectionToString(this.props.isDirectionRightToLeft)});const t=this.itemRender?s.createElement(this.itemRender,{item:this.props.onOriginalItemNeeded(e.id),itemId:e.id,key:"1"}):s.createElement("span",{className:"k-menu-link-text"},e.text);return s.createElement(g.MenuItemLink,{url:e.url,opened:this.Opened},this.renderMenuIconIfApplicable(),t,this.renderArrowIfApplicable())}renderPopupIfOpened(){const e=this.props.item.id,t=this.props.animate,{anchorAlign:i,popupAlign:r,collision:o,animationDirection:d}=p.getPopupSettings(e,this.props.isMenuVertical,this.props.isDirectionRightToLeft),c=t===!0?{openDuration:300,closeDuration:300,direction:d}:t===!1?!1:{openDuration:(t==null?void 0:t.openDuration)||300,closeDuration:(t==null?void 0:t.closeDuration)||300,direction:(t==null?void 0:t.direction)||d};return s.createElement(I.Popup,{anchor:this.itemElement,show:this.Opened,popupClass:this.getPopupClassName(),anchorAlign:i,popupAlign:r,collision:o,animate:c,onClose:this.onPopupClose,key:"1"},s.createElement(l,{parentItemId:e,animate:this.props.animate,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,className:"k-group k-menu-group k-reset k-menu-group-md",onMouseOver:this.props.onMouseOver,onMouseLeave:this.props.onMouseLeave,onBlur:this.props.onBlur,onFocus:this.props.onFocus,onClick:this.props.onClick,onOriginalItemNeeded:this.props.onOriginalItemNeeded,onPopupClose:this.props.onPopupClose}))}renderMenuIconIfApplicable(){const{icon:e,svgIcon:t}=this.props.item;return e||t?s.createElement(a.IconWrap,{name:e,icon:t,key:"0"}):null}renderArrowIfApplicable(){return this.props.item.items.length>0?s.createElement("span",{className:"k-menu-expand-arrow","aria-hidden":!0},s.createElement(M.MenuItemArrow,{itemId:this.props.item.id,verticalMenu:this.props.isMenuVertical,dir:p.convertBoolDirectionToString(this.props.isDirectionRightToLeft),key:"2"})):null}get itemRender(){return this.props.item.render||this.props.itemRender}get linkRender(){return this.props.item.linkRender||this.props.linkRender}get contentRender(){return this.props.item.contentParentItemId?this.props.item.contentRender:null}get Opened(){const e=this.props;return e.item.items.length>0&&m.shouldOpenItem(e.item.id,e.lastItemIdToBeOpened)&&!this.isFirstRender}getPopupClassName(){return a.classNames("k-menu-popup",{"k-rtl":this.props.isDirectionRightToLeft})}getMenuItemClassName(e){return a.classNames("k-item","k-menu-item",{"k-first":m.isFirstItemFromSiblings(e.id),"k-last":e.isLastFromSiblings,"k-disabled":e.disabled},e.cssClass)}}exports.MenuItemInternal=u;exports.MenuItemInternalsList=l;

@@ -11,6 +11,6 @@ /**

import { Popup as c } from "@progress/kendo-react-popup";
import { shouldOpenItem as I, isFirstItemFromSiblings as M } from "../utils/itemsIdsUtils.mjs";
import { getDOMElementId as d, convertBoolDirectionToString as m, getPopupSettings as g } from "../utils/misc.mjs";
import { MenuItemLink as f } from "./MenuItemLink.mjs";
import { MenuItemArrow as v } from "./MenuItemArrow.mjs";
import { shouldOpenItem as I, isFirstItemFromSiblings as g } from "../utils/itemsIdsUtils.mjs";
import { getDOMElementId as d, convertBoolDirectionToString as m, getPopupSettings as f } from "../utils/misc.mjs";
import { MenuItemLink as v } from "./MenuItemLink.mjs";
import { MenuItemArrow as M } from "./MenuItemArrow.mjs";
class k extends s.Component {

@@ -55,3 +55,2 @@ constructor() {

onMouseLeave: this.props.onMouseLeave,
onMouseDown: this.props.onMouseDown,
onBlur: this.props.onBlur,

@@ -113,3 +112,2 @@ onFocus: this.props.onFocus,

onMouseLeave: this.onMouseLeave,
onMouseDown: (o) => this.props.onMouseDown(o),
onBlur: (o) => this.props.onBlur(t, o),

@@ -149,6 +147,6 @@ onFocus: () => this.props.onFocus(t),

const t = this.itemRender ? /* @__PURE__ */ s.createElement(this.itemRender, { item: this.props.onOriginalItemNeeded(e.id), itemId: e.id, key: "1" }) : /* @__PURE__ */ s.createElement("span", { className: "k-menu-link-text" }, e.text);
return /* @__PURE__ */ s.createElement(f, { url: e.url, opened: this.Opened }, this.renderMenuIconIfApplicable(), t, this.renderArrowIfApplicable());
return /* @__PURE__ */ s.createElement(v, { url: e.url, opened: this.Opened }, this.renderMenuIconIfApplicable(), t, this.renderArrowIfApplicable());
}
renderPopupIfOpened() {
const e = this.props.item.id, t = this.props.animate, { anchorAlign: i, popupAlign: n, collision: o, animationDirection: r } = g(
const e = this.props.item.id, t = this.props.animate, { anchorAlign: i, popupAlign: n, collision: o, animationDirection: r } = f(
e,

@@ -192,3 +190,2 @@ this.props.isMenuVertical,

onMouseLeave: this.props.onMouseLeave,
onMouseDown: this.props.onMouseDown,
onBlur: this.props.onBlur,

@@ -209,3 +206,3 @@ onFocus: this.props.onFocus,

return this.props.item.items.length > 0 ? /* @__PURE__ */ s.createElement("span", { className: "k-menu-expand-arrow", "aria-hidden": !0 }, /* @__PURE__ */ s.createElement(
v,
M,
{

@@ -242,3 +239,3 @@ itemId: this.props.item.id,

{
"k-first": M(e.id),
"k-first": g(e.id),
"k-last": e.isLastFromSiblings,

@@ -245,0 +242,0 @@ "k-disabled": e.disabled

@@ -14,12 +14,7 @@ /**

private resetMenu;
private openItem;
private isMouseOverEnabled;
private mouseDown;
constructor(openOnClick: boolean | undefined, resetMenu: any, openItem: any);
constructor(openOnClick: boolean | undefined, resetMenu: any);
set OpenOnClick(value: boolean | undefined);
handleItemSelectedViaKeyboard(): void;
get IsMouseOverEnabled(): boolean;
handleItemMouseDown(): void;
handleItemFocus(): void;
handleItemClick(itemId: string, clickedItemIsWithDefaultClose: boolean): void;
}

@@ -8,2 +8,2 @@ /**

*/
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class i{constructor(e,s,t){this.openOnClick=e,this.resetMenu=s,this.openItem=t,this.mouseDown=!1,this.openOnClick=e,this.isMouseOverEnabled=!e}set OpenOnClick(e){!!e!=!!this.openOnClick&&(this.mouseDown=!1,this.isMouseOverEnabled=!e),this.openOnClick=e}handleItemSelectedViaKeyboard(){this.openOnClick&&(this.isMouseOverEnabled=!1,this.resetMenu())}get IsMouseOverEnabled(){return this.isMouseOverEnabled}handleItemMouseDown(){this.mouseDown=!0}handleItemFocus(){this.openOnClick&&!this.mouseDown&&(this.isMouseOverEnabled=!0),this.mouseDown=!1}handleItemClick(e,s){this.openOnClick&&(this.isMouseOverEnabled?s&&(this.isMouseOverEnabled=!1,this.resetMenu()):(this.isMouseOverEnabled=!0,this.openItem(e)))}}exports.MouseOverHandler=i;
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});class t{constructor(e,s){this.openOnClick=e,this.resetMenu=s,this.isMouseOverEnabled=!e}set OpenOnClick(e){!!e!=!!this.openOnClick&&(this.isMouseOverEnabled=!e),this.openOnClick=e}handleItemSelectedViaKeyboard(){this.openOnClick&&(this.isMouseOverEnabled=!1,this.resetMenu())}get IsMouseOverEnabled(){return this.isMouseOverEnabled}}exports.MouseOverHandler=t;

@@ -8,8 +8,8 @@ /**

*/
class n {
constructor(e, s, i) {
this.openOnClick = e, this.resetMenu = s, this.openItem = i, this.mouseDown = !1, this.openOnClick = e, this.isMouseOverEnabled = !e;
class i {
constructor(e, s) {
this.openOnClick = e, this.resetMenu = s, this.isMouseOverEnabled = !e;
}
set OpenOnClick(e) {
!!e != !!this.openOnClick && (this.mouseDown = !1, this.isMouseOverEnabled = !e), this.openOnClick = e;
!!e != !!this.openOnClick && (this.isMouseOverEnabled = !e), this.openOnClick = e;
}

@@ -22,14 +22,5 @@ handleItemSelectedViaKeyboard() {

}
handleItemMouseDown() {
this.mouseDown = !0;
}
handleItemFocus() {
this.openOnClick && !this.mouseDown && (this.isMouseOverEnabled = !0), this.mouseDown = !1;
}
handleItemClick(e, s) {
this.openOnClick && (this.isMouseOverEnabled ? s && (this.isMouseOverEnabled = !1, this.resetMenu()) : (this.isMouseOverEnabled = !0, this.openItem(e)));
}
}
export {
n as MouseOverHandler
i as MouseOverHandler
};

@@ -8,2 +8,2 @@ /**

*/
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=Object.freeze({name:"@progress/kendo-react-layout",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate: 1771495833,version:"14.2.0-develop.1",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"});exports.packageMetadata=e;
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=Object.freeze({name:"@progress/kendo-react-layout",productName:"KendoReact",productCode:"KENDOUIREACT",productCodes:["KENDOUIREACT"],publishDate: 1771509878,version:"14.2.0",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"});exports.packageMetadata=e;

@@ -11,4 +11,4 @@ // Generated file. DO NOT EDIT.

publishDate: 0,
version: '14.2.0-develop.1',
version: '14.2.0',
licensingDocsUrl: 'https://www.telerik.com/kendo-react-ui/components/my-license/'
});
{
"name": "@progress/kendo-react-layout",
"version": "14.2.0-develop.1",
"version": "14.2.0",
"description": "React Layout components enable you to create a perceptive and intuitive layout of web projects. KendoReact Layout package",

@@ -29,8 +29,8 @@ "author": "Progress",

"@progress/kendo-licensing": "^1.7.2",
"@progress/kendo-react-animation": "14.2.0-develop.1",
"@progress/kendo-react-buttons": "14.2.0-develop.1",
"@progress/kendo-react-common": "14.2.0-develop.1",
"@progress/kendo-react-intl": "14.2.0-develop.1",
"@progress/kendo-react-popup": "14.2.0-develop.1",
"@progress/kendo-react-progressbars": "14.2.0-develop.1",
"@progress/kendo-react-animation": "14.2.0",
"@progress/kendo-react-buttons": "14.2.0",
"@progress/kendo-react-common": "14.2.0",
"@progress/kendo-react-intl": "14.2.0",
"@progress/kendo-react-popup": "14.2.0",
"@progress/kendo-react-progressbars": "14.2.0",
"@progress/kendo-svg-icons": "^4.0.0",

@@ -80,3 +80,3 @@ "react": "^18.0.0 || ^19.0.0",

"productCode": "KENDOUIREACT",
"publishDate": 1771495833,
"publishDate": 1771509878,
"licensingDocsUrl": "https://www.telerik.com/kendo-react-ui/components/my-license/"

@@ -83,0 +83,0 @@ }

Sorry, the diff of this file is too big to display