UNPKG

primevue

Version:

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![npm version](https://badge.fury.io/js/primevue.svg)](https://badge.fury.io/js/primevue) [![Discord Chat](https://img.shields.io/discord/55794023

2 lines (1 loc) 21.6 kB
this.primevue=this.primevue||{},this.primevue.contextmenu=function(e,t,i,n,s,o){"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=r(e),l=r(t),c=r(n),m=r(s),d={name:"ContextMenuSub",extends:a.default,emits:["item-click","item-mouseenter"],props:{items:{type:Array,default:null},menuId:{type:String,default:null},focusedItemId:{type:String,default:null},root:{type:Boolean,default:!1},visible:{type:Boolean,default:!1},level:{type:Number,default:0},templates:{type:Object,default:null},exact:{type:Boolean,default:!0},activeItemPath:{type:Object,default:null}},methods:{getItemId(e){return`${this.menuId}_${e.key}`},getItemKey(e){return this.getItemId(e)},getItemProp:(e,t,n)=>e&&e.item?i.ObjectUtils.getItemValue(e.item[t],n):void 0,getItemLabel(e){return this.getItemProp(e,"label")},getPTOptions(e,t){return this.ptm(t,{context:{active:this.isItemActive(e),focused:this.isItemFocused(e)}})},isItemActive(e){return this.activeItemPath.some((t=>t.key===e.key))},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemFocused(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:e=>i.ObjectUtils.isNotEmpty(e.items),onItemClick(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemActionClick(e,t){t&&t(e)},getAriaSetSize(){return this.items.filter((e=>this.isItemVisible(e)&&!this.getItemProp(e,"separator"))).length},getAriaPosInset(e){return e-this.items.slice(0,e).filter((e=>this.isItemVisible(e)&&this.getItemProp(e,"separator"))).length+1},onEnter(){this.position()},position(){const e=this.$refs.container.parentElement,t=i.DomHandler.getOffset(this.$refs.container.parentElement),n=i.DomHandler.getViewport(),s=this.$refs.container.offsetParent?this.$refs.container.offsetWidth:i.DomHandler.getHiddenElementOuterWidth(this.$refs.container),o=i.DomHandler.getOuterWidth(e.children[0]);this.$refs.container.style.top="0px",parseInt(t.left,10)+o+s>n.width-i.DomHandler.calculateScrollbarWidth()?this.$refs.container.style.left=-1*s+"px":this.$refs.container.style.left=o+"px"},getItemClass(e){return["p-menuitem",this.getItemProp(e,"class"),{"p-menuitem-active p-highlight":this.isItemActive(e),"p-focus":this.isItemFocused(e),"p-disabled":this.isItemDisabled(e)}]},getItemActionClass(e,t){return["p-menuitem-link",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getItemIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]},getSeparatorItemClass(e){return["p-menuitem-separator",this.getItemProp(e,"class")]}},components:{AngleRightIcon:c.default},directives:{ripple:m.default}};const u=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset"],h=["onClick","onMouseenter"],I=["href","onClick"],p=["href","target"],f=["id"];d.render=function(e,t,i,n,s,r){const a=o.resolveComponent("router-link"),l=o.resolveComponent("AngleRightIcon"),c=o.resolveComponent("ContextMenuSub",!0),m=o.resolveDirective("ripple");return o.openBlock(),o.createBlock(o.Transition,{name:"p-contextmenusub",onEnter:r.onEnter},{default:o.withCtx((()=>[i.root||i.visible?(o.openBlock(),o.createElementBlock("ul",o.mergeProps({key:0,ref:"container"},e.ptm("menu")),[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(i.items,((n,s)=>(o.openBlock(),o.createElementBlock(o.Fragment,{key:r.getItemKey(n)},[r.isItemVisible(n)&&!r.getItemProp(n,"separator")?(o.openBlock(),o.createElementBlock("li",o.mergeProps({key:0,id:r.getItemId(n),style:r.getItemProp(n,"style"),class:r.getItemClass(n),role:"menuitem","aria-label":r.getItemLabel(n),"aria-disabled":r.isItemDisabled(n)||void 0,"aria-expanded":r.isItemGroup(n)?r.isItemActive(n):void 0,"aria-haspopup":r.isItemGroup(n)&&!r.getItemProp(n,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":r.getAriaSetSize(),"aria-posinset":r.getAriaPosInset(s)},r.getPTOptions(n,"menuitem")),[o.createElementVNode("div",o.mergeProps({class:"p-menuitem-content",onClick:e=>r.onItemClick(e,n),onMouseenter:e=>r.onItemMouseEnter(e,n)},r.getPTOptions(n,"content")),[i.templates.item?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.item),{key:1,item:n.item},null,8,["item"])):(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[r.getItemProp(n,"to")&&!r.isItemDisabled(n)?(o.openBlock(),o.createBlock(a,{key:0,to:r.getItemProp(n,"to"),custom:""},{default:o.withCtx((({navigate:e,href:t,isActive:s,isExactActive:a})=>[o.withDirectives((o.openBlock(),o.createElementBlock("a",o.mergeProps({href:t,class:r.getItemActionClass(n,{isActive:s,isExactActive:a}),tabindex:"-1","aria-hidden":"true",onClick:t=>r.onItemActionClick(t,e)},r.getPTOptions(n,"action")),[i.templates.itemicon?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.itemicon),{key:0,item:n.item,class:o.normalizeClass(r.getItemIconClass(n))},null,8,["item","class"])):r.getItemProp(n,"icon")?(o.openBlock(),o.createElementBlock("span",o.mergeProps({key:1,class:r.getItemIconClass(n)},r.getPTOptions(n,"icon")),null,16)):o.createCommentVNode("",!0),o.createElementVNode("span",o.mergeProps({class:"p-menuitem-text"},r.getPTOptions(n,"label")),o.toDisplayString(r.getItemLabel(n)),17)],16,I)),[[m]])])),_:2},1032,["to"])):o.withDirectives((o.openBlock(),o.createElementBlock("a",o.mergeProps({key:1,href:r.getItemProp(n,"url"),class:r.getItemActionClass(n),target:r.getItemProp(n,"target"),tabindex:"-1","aria-hidden":"true"},r.getPTOptions(n,"action")),[i.templates.itemicon?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.itemicon),{key:0,item:n.item,class:o.normalizeClass(r.getItemIconClass(n))},null,8,["item","class"])):r.getItemProp(n,"icon")?(o.openBlock(),o.createElementBlock("span",o.mergeProps({key:1,class:r.getItemIconClass(n)},r.getPTOptions(n,"icon")),null,16)):o.createCommentVNode("",!0),o.createElementVNode("span",o.mergeProps({class:"p-menuitem-text"},r.getPTOptions(n,"label")),o.toDisplayString(r.getItemLabel(n)),17),r.getItemProp(n,"items")?(o.openBlock(),o.createElementBlock(o.Fragment,{key:2},[i.templates.submenuicon?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.submenuicon),{key:0,active:r.isItemActive(n),class:"p-submenu-icon"},null,8,["active"])):(o.openBlock(),o.createBlock(l,o.mergeProps({key:1,class:"p-submenu-icon"},r.getPTOptions(n,"submenuicon")),null,16))],64)):o.createCommentVNode("",!0)],16,p)),[[m]])],64))],16,h),r.isItemVisible(n)&&r.isItemGroup(n)?(o.openBlock(),o.createBlock(c,{key:0,id:r.getItemId(n)+"_list",role:"menu",class:"p-submenu-list",menuId:i.menuId,focusedItemId:i.focusedItemId,items:n.items,templates:i.templates,activeItemPath:i.activeItemPath,exact:i.exact,level:i.level+1,pt:e.pt,visible:r.isItemActive(n)&&r.isItemGroup(n),onItemClick:t[0]||(t[0]=t=>e.$emit("item-click",t)),onItemMouseenter:t[1]||(t[1]=t=>e.$emit("item-mouseenter",t))},null,8,["id","menuId","focusedItemId","items","templates","activeItemPath","exact","level","pt","visible"])):o.createCommentVNode("",!0)],16,u)):o.createCommentVNode("",!0),r.isItemVisible(n)&&r.getItemProp(n,"separator")?(o.openBlock(),o.createElementBlock("li",o.mergeProps({key:1,id:r.getItemId(n),style:r.getItemProp(n,"style"),class:r.getSeparatorItemClass(n),role:"separator"},e.ptm("separator")),null,16,f)):o.createCommentVNode("",!0)],64)))),128))],16)):o.createCommentVNode("",!0)])),_:1},8,["onEnter"])};var b={name:"ContextMenu",extends:a.default,inheritAttrs:!1,emits:["focus","blur","show","hide"],props:{model:{type:Array,default:null},appendTo:{type:String,default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},target:null,outsideClickListener:null,resizeListener:null,documentContextMenuListener:null,pageX:null,pageY:null,container:null,list:null,data(){return{id:this.$attrs.id,focused:!1,focusedItemInfo:{index:-1,level:0,parentKey:""},activeItemPath:[],visible:!1,submenuVisible:!1}},watch:{"$attrs.id":function(e){this.id=e||i.UniqueComponentId()},activeItemPath(e){i.ObjectUtils.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener(),this.bindDocumentContextMenuListener()):this.visible||(this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindDocumentContextMenuListener())}},beforeUnmount(){this.unbindResizeListener(),this.unbindOutsideClickListener(),this.unbindDocumentContextMenuListener(),this.container&&this.autoZIndex&&i.ZIndexUtils.clear(this.container),this.target=null,this.container=null},mounted(){this.id=this.id||i.UniqueComponentId(),this.global&&this.bindDocumentContextMenuListener()},methods:{getItemProp:(e,t)=>e?i.ObjectUtils.getItemValue(e[t]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemGroup(e){return i.ObjectUtils.isNotEmpty(this.getItemProp(e,"items"))},isItemSeparator(e){return this.getItemProp(e,"separator")},getProccessedItemLabel(e){return e?this.getItemLabel(e.item):void 0},isProccessedItemGroup:e=>e&&i.ObjectUtils.isNotEmpty(e.items),toggle(e){this.visible?this.hide():this.show(e)},show(e){this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""},i.DomHandler.focus(this.list),this.pageX=e.pageX,this.pageY=e.pageY,this.visible?this.position():this.visible=!0,e.stopPropagation(),e.preventDefault()},hide(){this.visible=!1,this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""}},onFocus(e){this.focused=!0,this.focusedItemInfo=-1!==this.focusedItemInfo.index?this.focusedItemInfo:{index:-1,level:0,parentKey:""},this.$emit("focus",e)},onBlur(e){this.focused=!1,this.focusedItemInfo={index:-1,level:0,parentKey:""},this.searchValue="",this.$emit("blur",e)},onKeyDown(e){const t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e);break;case"Escape":this.onEscapeKey(e);break;case"Tab":this.onTabKey(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&i.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange(e){const{processedItem:t,isFocus:n}=e;if(i.ObjectUtils.isEmpty(t))return;const{index:s,key:o,level:r,parentKey:a,items:l}=t,c=i.ObjectUtils.isNotEmpty(l),m=this.activeItemPath.filter((e=>e.parentKey!==a&&e.parentKey!==o));c&&(m.push(t),this.submenuVisible=!0),this.focusedItemInfo={index:s,level:r,parentKey:a},this.activeItemPath=m,n&&i.DomHandler.focus(this.list)},onItemClick(e){const{processedItem:t}=e,n=this.isProccessedItemGroup(t);if(this.isSelected(t)){const{index:e,key:n,level:s,parentKey:o}=t;this.activeItemPath=this.activeItemPath.filter((e=>n!==e.key&&n.startsWith(e.key))),this.focusedItemInfo={index:e,level:s,parentKey:o},i.DomHandler.focus(this.list)}else n?this.onItemChange(e):this.hide()},onItemMouseEnter(e){this.onItemChange(e)},onArrowDownKey(e){const t=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()},onArrowUpKey(e){if(e.altKey){if(-1!==this.focusedItemInfo.index){const t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.popup&&this.hide(),e.preventDefault()}else{const t=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()}},onArrowLeftKey(e){const t=this.visibleItems[this.focusedItemInfo.index],n=this.activeItemPath.find((e=>e.key===t.parentKey));i.ObjectUtils.isEmpty(t.parent)||(this.focusedItemInfo={index:-1,parentKey:n?n.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==this.focusedItemInfo.parentKey)),e.preventDefault()},onArrowRightKey(e){const t=this.visibleItems[this.focusedItemInfo.index];this.isProccessedItemGroup(t)&&(this.onItemChange({originalEvent:e,processedItem:t}),this.focusedItemInfo={index:-1,parentKey:t.key},this.searchValue="",this.onArrowDownKey(e)),e.preventDefault()},onHomeKey(e){this.changeFocusedItemIndex(e,this.findFirstItemIndex()),e.preventDefault()},onEndKey(e){this.changeFocusedItemIndex(e,this.findLastItemIndex()),e.preventDefault()},onEnterKey(e){if(-1!==this.focusedItemInfo.index){const e=i.DomHandler.findSingle(this.list,`li[id="${this.focusedItemId}"]`),t=e&&i.DomHandler.findSingle(e,".p-menuitem-link");t?t.click():e&&e.click();const n=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(n)&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex())}e.preventDefault()},onSpaceKey(e){this.onEnterKey(e)},onEscapeKey(e){this.hide(),!this.popup&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex()),e.preventDefault()},onTabKey(e){if(-1!==this.focusedItemInfo.index){const t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.hide()},onEnter(e){this.position(),this.autoZIndex&&i.ZIndexUtils.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu)},onAfterEnter(){this.bindOutsideClickListener(),this.bindResizeListener(),this.bindDocumentContextMenuListener(),this.$emit("show"),i.DomHandler.focus(this.list)},onLeave(){this.$emit("hide"),this.container=null},onAfterLeave(e){this.autoZIndex&&i.ZIndexUtils.clear(e),this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindDocumentContextMenuListener()},position(){let e=this.pageX+1,t=this.pageY+1,n=this.container.offsetParent?this.container.offsetWidth:i.DomHandler.getHiddenElementOuterWidth(this.container),s=this.container.offsetParent?this.container.offsetHeight:i.DomHandler.getHiddenElementOuterHeight(this.container),o=i.DomHandler.getViewport();e+n-document.body.scrollLeft>o.width&&(e-=n),t+s-document.body.scrollTop>o.height&&(t-=s),e<document.body.scrollLeft&&(e=document.body.scrollLeft),t<document.body.scrollTop&&(t=document.body.scrollTop),this.container.style.left=e+"px",this.container.style.top=t+"px"},bindOutsideClickListener(){this.outsideClickListener||(this.outsideClickListener=e=>{const t=this.container&&!this.container.contains(e.target),i=!this.visible||!(this.target&&(this.target===e.target||this.target.contains(e.target)));t&&i&&this.hide()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindResizeListener(){this.resizeListener||(this.resizeListener=()=>{this.visible&&!i.DomHandler.isTouchDevice()&&this.hide()},window.addEventListener("resize",this.resizeListener))},unbindResizeListener(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},bindDocumentContextMenuListener(){this.documentContextMenuListener||(this.documentContextMenuListener=e=>{2!==e.button?this.show(e):this.hide()},document.addEventListener("contextmenu",this.documentContextMenuListener))},unbindDocumentContextMenuListener(){this.documentContextMenuListener&&(document.removeEventListener("contextmenu",this.documentContextMenuListener),this.documentContextMenuListener=null)},isItemMatched(e){return this.isValidItem(e)&&this.getProccessedItemLabel(e).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase())},isValidItem(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)},isValidSelectedItem(e){return this.isValidItem(e)&&this.isSelected(e)},isSelected(e){return this.activeItemPath.some((t=>t.key===e.key))},findFirstItemIndex(){return this.visibleItems.findIndex((e=>this.isValidItem(e)))},findLastItemIndex(){return i.ObjectUtils.findLastIndex(this.visibleItems,(e=>this.isValidItem(e)))},findNextItemIndex(e){const t=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((e=>this.isValidItem(e))):-1;return t>-1?t+e+1:e},findPrevItemIndex(e){const t=e>0?i.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(e=>this.isValidItem(e))):-1;return t>-1?t:e},findSelectedItemIndex(){return this.visibleItems.findIndex((e=>this.isValidSelectedItem(e)))},findFirstFocusedItemIndex(){const e=this.findSelectedItemIndex();return e<0?this.findFirstItemIndex():e},findLastFocusedItemIndex(){const e=this.findSelectedItemIndex();return e<0?this.findLastItemIndex():e},searchItems(e,t){this.searchValue=(this.searchValue||"")+t;let i=-1,n=!1;return-1!==this.focusedItemInfo.index?(i=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((e=>this.isItemMatched(e))),i=-1===i?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((e=>this.isItemMatched(e))):i+this.focusedItemInfo.index):i=this.visibleItems.findIndex((e=>this.isItemMatched(e))),-1!==i&&(n=!0),-1===i&&-1===this.focusedItemInfo.index&&(i=this.findFirstFocusedItemIndex()),-1!==i&&this.changeFocusedItemIndex(e,i),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((()=>{this.searchValue="",this.searchTimeout=null}),500),n},changeFocusedItemIndex(e,t){this.focusedItemInfo.index!==t&&(this.focusedItemInfo.index=t,this.scrollInView())},scrollInView(e=-1){const t=-1!==e?`${this.id}_${e}`:this.focusedItemId,n=i.DomHandler.findSingle(this.list,`li[id="${t}"]`);n&&n.scrollIntoView&&n.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems(e,t=0,i={},n=""){const s=[];return e&&e.forEach(((e,o)=>{const r=(""!==n?n+"_":"")+o,a={item:e,index:o,level:t,key:r,parent:i,parentKey:n};a.items=this.createProcessedItems(e.items,t+1,a,r),s.push(a)})),s},containerRef(e){this.container=e},listRef(e){this.list=e?e.$el:void 0}},computed:{containerClass(){return["p-contextmenu p-component",{"p-input-filled":"filled"===this.$primevue.config.inputStyle,"p-ripple-disabled":!1===this.$primevue.config.ripple}]},processedItems(){return this.createProcessedItems(this.model||[])},visibleItems(){const e=this.activeItemPath.find((e=>e.key===this.focusedItemInfo.parentKey));return e?e.items:this.processedItems},focusedItemId(){return-1!==this.focusedItemInfo.index?`${this.id}${i.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:""}_${this.focusedItemInfo.index}`:null}},components:{ContextMenuSub:d,Portal:l.default}};return function(e,t){void 0===t&&(t={});var i=t.insertAt;if(e&&"undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css","top"===i&&n.firstChild?n.insertBefore(s,n.firstChild):n.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e))}}("\n.p-contextmenu {\n position: absolute;\n}\n.p-contextmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.p-contextmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n}\n.p-contextmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n}\n.p-contextmenu .p-menuitem-text {\n line-height: 1;\n}\n.p-contextmenu .p-menuitem {\n position: relative;\n}\n.p-contextmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n.p-contextmenu-enter-from {\n opacity: 0;\n}\n.p-contextmenu-enter-active {\n transition: opacity 250ms;\n}\n"),b.render=function(e,t,i,n,s,r){const a=o.resolveComponent("ContextMenuSub"),l=o.resolveComponent("Portal");return o.openBlock(),o.createBlock(l,{appendTo:i.appendTo},{default:o.withCtx((()=>[o.createVNode(o.Transition,{name:"p-contextmenu",onEnter:r.onEnter,onAfterEnter:r.onAfterEnter,onLeave:r.onLeave,onAfterLeave:r.onAfterLeave},{default:o.withCtx((()=>[s.visible?(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:0,ref:r.containerRef,class:r.containerClass},{...e.$attrs,...e.ptm("root")}),[o.createVNode(a,{ref:r.listRef,id:s.id+"_list",class:"p-contextmenu-root-list",role:"menubar",root:!0,tabindex:i.tabindex,"aria-orientation":"vertical","aria-activedescendant":s.focused?r.focusedItemId:void 0,menuId:s.id,focusedItemId:s.focused?r.focusedItemId:void 0,items:r.processedItems,templates:e.$slots,activeItemPath:s.activeItemPath,exact:i.exact,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,level:0,visible:s.submenuVisible,pt:e.pt,onFocus:r.onFocus,onBlur:r.onBlur,onKeydown:r.onKeyDown,onItemClick:r.onItemClick,onItemMouseenter:r.onItemMouseEnter},null,8,["id","tabindex","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","exact","aria-labelledby","aria-label","visible","pt","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter"])],16)):o.createCommentVNode("",!0)])),_:1},8,["onEnter","onAfterEnter","onLeave","onAfterLeave"])])),_:1},8,["appendTo"])},b}(primevue.basecomponent,primevue.portal,primevue.utils,primevue.icons.angleright,primevue.ripple,Vue);