primevue 3.30.2 → 3.31.0
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/breadcrumb/Breadcrumb.d.ts +15 -0
- package/breadcrumb/BreadcrumbItem.vue +18 -8
- package/breadcrumb/breadcrumb.cjs.js +18 -8
- package/breadcrumb/breadcrumb.cjs.min.js +1 -1
- package/breadcrumb/breadcrumb.esm.js +18 -8
- package/breadcrumb/breadcrumb.esm.min.js +1 -1
- package/breadcrumb/breadcrumb.js +18 -8
- package/breadcrumb/breadcrumb.min.js +1 -1
- package/cascadeselect/CascadeSelect.vue +1 -0
- package/cascadeselect/CascadeSelectSub.vue +1 -0
- package/cascadeselect/cascadeselect.cjs.js +6 -4
- package/cascadeselect/cascadeselect.cjs.min.js +1 -1
- package/cascadeselect/cascadeselect.esm.js +6 -4
- package/cascadeselect/cascadeselect.esm.min.js +1 -1
- package/cascadeselect/cascadeselect.js +6 -4
- package/cascadeselect/cascadeselect.min.js +1 -1
- package/config/PrimeVue.d.ts +14 -0
- package/contextmenu/ContextMenu.d.ts +8 -0
- package/contextmenu/ContextMenuSub.vue +13 -11
- package/contextmenu/contextmenu.cjs.js +13 -11
- package/contextmenu/contextmenu.cjs.min.js +1 -1
- package/contextmenu/contextmenu.esm.js +13 -11
- package/contextmenu/contextmenu.esm.min.js +1 -1
- package/contextmenu/contextmenu.js +13 -11
- package/contextmenu/contextmenu.min.js +1 -1
- package/core/core.js +3417 -18
- package/core/core.min.js +5 -3
- package/dock/Dock.d.ts +4 -0
- package/dock/DockSub.vue +8 -7
- package/dock/dock.cjs.js +8 -7
- package/dock/dock.cjs.min.js +1 -1
- package/dock/dock.esm.js +8 -7
- package/dock/dock.esm.min.js +1 -1
- package/dock/dock.js +8 -7
- package/dock/dock.min.js +1 -1
- package/dropdown/BaseDropdown.vue +5 -5
- package/dropdown/dropdown.cjs.js +5 -5
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.esm.js +5 -5
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +5 -5
- package/dropdown/dropdown.min.js +1 -1
- package/image/Image.vue +2 -2
- package/image/image.cjs.js +2 -2
- package/image/image.cjs.min.js +1 -1
- package/image/image.esm.js +2 -2
- package/image/image.esm.min.js +1 -1
- package/image/image.js +2 -2
- package/image/image.min.js +1 -1
- package/inputswitch/InputSwitch.d.ts +2 -2
- package/megamenu/MegaMenu.d.ts +8 -0
- package/megamenu/MegaMenuSub.vue +13 -11
- package/megamenu/megamenu.cjs.js +13 -11
- package/megamenu/megamenu.cjs.min.js +1 -1
- package/megamenu/megamenu.esm.js +13 -11
- package/megamenu/megamenu.esm.min.js +1 -1
- package/megamenu/megamenu.js +13 -11
- package/megamenu/megamenu.min.js +1 -1
- package/menu/Menu.d.ts +8 -0
- package/menu/Menu.vue +1 -1
- package/menu/Menuitem.vue +4 -1
- package/menu/menu.cjs.js +6 -2
- package/menu/menu.cjs.min.js +1 -1
- package/menu/menu.esm.js +6 -2
- package/menu/menu.esm.min.js +1 -1
- package/menu/menu.js +6 -2
- package/menu/menu.min.js +1 -1
- package/menubar/Menubar.d.ts +8 -0
- package/menubar/MenubarSub.vue +12 -10
- package/menubar/menubar.cjs.js +12 -10
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.esm.js +12 -10
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +12 -10
- package/menubar/menubar.min.js +1 -1
- package/package.json +1 -1
- package/panelmenu/PanelMenu.d.ts +8 -0
- package/panelmenu/PanelMenu.vue +12 -11
- package/panelmenu/PanelMenuSub.vue +13 -11
- package/panelmenu/panelmenu.cjs.js +25 -22
- package/panelmenu/panelmenu.cjs.min.js +1 -1
- package/panelmenu/panelmenu.esm.js +25 -22
- package/panelmenu/panelmenu.esm.min.js +1 -1
- package/panelmenu/panelmenu.js +25 -22
- package/panelmenu/panelmenu.min.js +1 -1
- package/resources/themes/bootstrap4-dark-blue/theme.css +0 -7
- package/resources/themes/bootstrap4-dark-purple/theme.css +0 -7
- package/resources/themes/bootstrap4-light-blue/theme.css +0 -7
- package/resources/themes/bootstrap4-light-purple/theme.css +0 -7
- package/splitterpanel/SplitterPanel.d.ts +11 -0
- package/splitterpanel/SplitterPanel.vue +7 -0
- package/splitterpanel/splitterpanel.cjs.js +7 -0
- package/splitterpanel/splitterpanel.cjs.min.js +1 -1
- package/splitterpanel/splitterpanel.esm.js +7 -0
- package/splitterpanel/splitterpanel.esm.min.js +1 -1
- package/splitterpanel/splitterpanel.js +7 -0
- package/splitterpanel/splitterpanel.min.js +1 -1
- package/steps/BaseSteps.vue +1 -1
- package/steps/Steps.d.ts +25 -0
- package/steps/Steps.vue +17 -7
- package/steps/steps.cjs.js +19 -9
- package/steps/steps.cjs.min.js +1 -1
- package/steps/steps.esm.js +19 -9
- package/steps/steps.esm.min.js +1 -1
- package/steps/steps.js +19 -9
- package/steps/steps.min.js +1 -1
- package/tabmenu/TabMenu.d.ts +6 -2
- package/tabmenu/TabMenu.vue +11 -10
- package/tabmenu/tabmenu.cjs.js +11 -10
- package/tabmenu/tabmenu.cjs.min.js +1 -1
- package/tabmenu/tabmenu.esm.js +11 -10
- package/tabmenu/tabmenu.esm.min.js +1 -1
- package/tabmenu/tabmenu.js +11 -10
- package/tabmenu/tabmenu.min.js +1 -1
- package/tabview/TabView.vue +1 -0
- package/tabview/tabview.cjs.js +2 -1
- package/tabview/tabview.cjs.min.js +1 -1
- package/tabview/tabview.esm.js +2 -1
- package/tabview/tabview.esm.min.js +1 -1
- package/tabview/tabview.js +2 -1
- package/tabview/tabview.min.js +1 -1
- package/tailwind/Tailwind.d.ts +5 -0
- package/tailwind/package.json +6 -0
- package/tailwind/tailwind.cjs.js +3388 -0
- package/tailwind/tailwind.cjs.min.js +1 -0
- package/tailwind/tailwind.esm.js +3386 -0
- package/tailwind/tailwind.esm.min.js +1 -0
- package/tailwind/tailwind.js +3392 -0
- package/tailwind/tailwind.min.js +1 -0
- package/tieredmenu/TieredMenu.d.ts +8 -0
- package/tieredmenu/TieredMenuSub.vue +13 -11
- package/tieredmenu/tieredmenu.cjs.js +13 -11
- package/tieredmenu/tieredmenu.cjs.min.js +1 -1
- package/tieredmenu/tieredmenu.esm.js +13 -11
- package/tieredmenu/tieredmenu.esm.min.js +1 -1
- package/tieredmenu/tieredmenu.js +13 -11
- package/tieredmenu/tieredmenu.min.js +1 -1
- package/web-types.json +1 -1
package/menubar/menubar.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
this.primevue=this.primevue||{},this.primevue.menubar=function(e,t,n,i,s,o,r,c){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=a(e),u=a(n),l=a(s),d=a(o),I=a(r),p=i.useStyle("\n.p-menubar {\n display: flex;\n align-items: center;\n}\n\n.p-menubar ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.p-menubar .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\n.p-menubar .p-menuitem-text {\n line-height: 1;\n}\n\n.p-menubar .p-menuitem {\n position: relative;\n}\n\n.p-menubar-root-list {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n}\n\n.p-menubar-root-list > li ul {\n display: none;\n z-index: 1;\n}\n\n.p-menubar-root-list > .p-menuitem-active > .p-submenu-list {\n display: block;\n}\n\n.p-menubar .p-submenu-list {\n display: none;\n position: absolute;\n z-index: 1;\n}\n\n.p-menubar .p-submenu-list > .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n}\n\n.p-menubar .p-submenu-list .p-menuitem .p-menuitem-content .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n\n.p-menubar .p-menubar-end {\n margin-left: auto;\n align-self: center;\n}\n\n.p-menubar-button {\n display: none;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n text-decoration: none;\n}\n",{name:"menubar",manual:!0}),f={name:"BaseMenubar",extends:u.default,props:{model:{type:Array,default:null},exact:{type:Boolean,default:!0},buttonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:function(e){return["p-menubar p-component",{"p-menubar-mobile-active":e.instance.mobileActive}]},start:"p-menubar-start",button:"p-menubar-button",menu:"p-menubar-root-list",menuitem:function(e){var t=e.instance,n=e.processedItem;return["p-menuitem",{"p-menuitem-active p-highlight":t.isItemActive(n),"p-focus":t.isItemFocused(n),"p-disabled":t.isItemDisabled(n)}]},content:"p-menuitem-content",action:function(e){return["p-menuitem-link",{"router-link-active":e.isActive,"router-link-active-exact":e.props.exact&&e.isExactActive}]},icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator",end:"p-menubar-end"},inlineStyles:{submenu:function(e){return{display:e.instance.isItemActive(e.processedItem)?"block":"none"}}},loadStyle:p.load},provide:function(){return{$parentInstance:this}}},h={name:"MenubarSub",hostName:"Menubar",extends:u.default,emits:["item-mouseenter","item-click"],props:{items:{type:Array,default:null},root:{type:Boolean,default:!1},popup:{type:Boolean,default:!1},mobileActive:{type:Boolean,default:!1},templates:{type:Object,default:null},exact:{type:Boolean,default:!0},level:{type:Number,default:0},menuId:{type:String,default:null},focusedItemId:{type:String,default:null},activeItemPath:{type:Object,default:null}},list:null,methods:{getItemId:function(e){return"".concat(this.menuId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,n,i){return e&&e.item?t.ObjectUtils.getItemValue(e.item[n],i):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t){return this.ptm(t,{context:{active:this.isItemActive(e),focused:this.isItemFocused(e)}})},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter:function(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemActionClick:function(e,t){t&&t(e)},getAriaSetSize:function(){var e=this;return this.items.filter((function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")})).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter((function(e){return t.isItemVisible(e)&&t.getItemProp(e,"separator")})).length+1}},components:{AngleRightIcon:d.default,AngleDownIcon:l.default},directives:{ripple:I.default}},b=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],v=["onClick","onMouseenter"],y=["href","onClick"],g=["href","target"],x=["id"];h.render=function(e,t,n,i,s,o){var r=c.resolveComponent("router-link"),a=c.resolveComponent("MenubarSub",!0),m=c.resolveDirective("ripple");return c.openBlock(),c.createElementBlock("ul",c.mergeProps({class:e.cx(0===n.level?"menu":"submenu")},e.ptm(0===n.level?"menu":"submenu")),[(c.openBlock(!0),c.createElementBlock(c.Fragment,null,c.renderList(n.items,(function(i,s){return c.openBlock(),c.createElementBlock(c.Fragment,{key:o.getItemKey(i)},[o.isItemVisible(i)&&!o.getItemProp(i,"separator")?(c.openBlock(),c.createElementBlock("li",c.mergeProps({key:0,id:o.getItemId(i),style:o.getItemProp(i,"style"),class:[e.cx("menuitem",{processedItem:i}),o.getItemProp(i,"class")],role:"menuitem","aria-label":o.getItemLabel(i),"aria-disabled":o.isItemDisabled(i)||void 0,"aria-expanded":o.isItemGroup(i)?o.isItemActive(i):void 0,"aria-haspopup":o.isItemGroup(i)&&!o.getItemProp(i,"to")?"menu":void 0,"aria-level":n.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions(i,"menuitem"),{"data-p-highlight":o.isItemActive(i),"data-p-focused":o.isItemFocused(i),"data-p-disabled":o.isItemDisabled(i)}),[c.createElementVNode("div",c.mergeProps({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,i)},onMouseenter:function(e){return o.onItemMouseEnter(e,i)}},o.getPTOptions(i,"content")),[n.templates.item?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.item),{key:1,item:i.item},null,8,["item"])):(c.openBlock(),c.createElementBlock(c.Fragment,{key:0},[o.getItemProp(i,"to")&&!o.isItemDisabled(i)?(c.openBlock(),c.createBlock(r,{key:0,to:o.getItemProp(i,"to"),custom:""},{default:c.withCtx((function(t){var s=t.navigate,r=t.href,a=t.isActive,u=t.isExactActive;return[c.withDirectives((c.openBlock(),c.createElementBlock("a",c.mergeProps({href:r,class:e.cx("action",{isActive:a,isExactActive:u}),tabindex:"-1","aria-hidden":"true",onClick:function(e){return o.onItemActionClick(e,s)}},o.getPTOptions(i,"action")),[n.templates.itemicon?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:c.normalizeClass([e.cx("icon"),o.getItemProp(i,"icon")])},null,8,["item","class"])):o.getItemProp(i,"icon")?(c.openBlock(),c.createElementBlock("span",c.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(i,"icon")]},o.getPTOptions(i,"icon")),null,16)):c.createCommentVNode("",!0),c.createElementVNode("span",c.mergeProps({class:e.cx("label")},o.getPTOptions(i,"label")),c.toDisplayString(o.getItemLabel(i)),17)],16,y)),[[m]])]})),_:2},1032,["to"])):c.withDirectives((c.openBlock(),c.createElementBlock("a",c.mergeProps({key:1,href:o.getItemProp(i,"url"),class:e.cx("action"),target:o.getItemProp(i,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions(i,"action")),[n.templates.itemicon?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:c.normalizeClass([e.cx("icon"),o.getItemProp(i,"icon")])},null,8,["item","class"])):o.getItemProp(i,"icon")?(c.openBlock(),c.createElementBlock("span",c.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(i,"icon")]},o.getPTOptions(i,"icon")),null,16)):c.createCommentVNode("",!0),c.createElementVNode("span",c.mergeProps({class:e.cx("label")},o.getPTOptions(i,"label")),c.toDisplayString(o.getItemLabel(i)),17),o.getItemProp(i,"items")?(c.openBlock(),c.createElementBlock(c.Fragment,{key:2},[n.templates.submenuicon?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.submenuicon),{key:0,root:n.root,active:o.isItemActive(i),class:c.normalizeClass(e.cx("submenuIcon"))},null,8,["root","active","class"])):(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.root?"AngleDownIcon":"AngleRightIcon"),c.mergeProps({key:1,class:e.cx("submenuIcon")},o.getPTOptions(i,"submenuIcon")),null,16,["class"]))],64)):c.createCommentVNode("",!0)],16,g)),[[m]])],64))],16,v),o.isItemVisible(i)&&o.isItemGroup(i)?(c.openBlock(),c.createBlock(a,{key:0,menuId:n.menuId,role:"menu",style:c.normalizeStyle(e.sx("submenu",!0,{processedItem:i})),focusedItemId:n.focusedItemId,items:i.items,mobileActive:n.mobileActive,activeItemPath:n.activeItemPath,templates:n.templates,exact:n.exact,level:n.level+1,pt:e.pt,onItemClick:t[0]||(t[0]=function(t){return e.$emit("item-click",t)}),onItemMouseenter:t[1]||(t[1]=function(t){return e.$emit("item-mouseenter",t)})},null,8,["menuId","style","focusedItemId","items","mobileActive","activeItemPath","templates","exact","level","pt"])):c.createCommentVNode("",!0)],16,b)):c.createCommentVNode("",!0),o.isItemVisible(i)&&o.getItemProp(i,"separator")?(c.openBlock(),c.createElementBlock("li",c.mergeProps({key:1,id:o.getItemId(i),class:[e.cx("separator"),o.getItemProp(i,"class")],style:o.getItemProp(i,"style"),role:"separator"},e.ptm("separator")),null,16,x)):c.createCommentVNode("",!0)],64)})),128))],16)};var k={name:"Menubar",extends:f,emits:["focus","blur"],data:function(){return{id:this.$attrs.id,mobileActive:!1,focused:!1,focusedItemInfo:{index:-1,level:0,parentKey:""},activeItemPath:[],dirty:!1}},watch:{"$attrs.id":function(e){this.id=e||t.UniqueComponentId()},activeItemPath:function(e){t.ObjectUtils.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener()):(this.unbindOutsideClickListener(),this.unbindResizeListener())}},outsideClickListener:null,container:null,menubar:null,mounted:function(){this.id=this.id||t.UniqueComponentId()},beforeUnmount:function(){this.mobileActive=!1,this.unbindOutsideClickListener(),this.unbindResizeListener(),this.container&&t.ZIndexUtils.clear(this.container),this.container=null},methods:{getItemProp:function(e,n){return e?t.ObjectUtils.getItemValue(e[n]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(this.getItemProp(e,"items"))},isItemSeparator:function(e){return this.getItemProp(e,"separator")},getProccessedItemLabel:function(e){return e?this.getItemLabel(e.item):void 0},isProccessedItemGroup:function(e){return e&&t.ObjectUtils.isNotEmpty(e.items)},toggle:function(e){var n=this;this.mobileActive?(this.mobileActive=!1,t.ZIndexUtils.clear(this.menubar),this.hide()):(this.mobileActive=!0,t.ZIndexUtils.set("menu",this.menubar,this.$primevue.config.zIndex.menu),setTimeout((function(){n.show()}),1)),this.bindOutsideClickListener(),e.preventDefault()},show:function(){this.focusedItemInfo={index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},t.DomHandler.focus(this.menubar)},hide:function(e,n){var i=this;this.mobileActive&&(this.mobileActive=!1,setTimeout((function(){t.DomHandler.focus(i.$refs.menubutton)}),0)),this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""},n&&t.DomHandler.focus(this.menubar),this.dirty=!1},onFocus:function(e){this.focused=!0,this.focusedItemInfo=-1!==this.focusedItemInfo.index?this.focusedItemInfo:{index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},this.$emit("focus",e)},onBlur:function(e){this.focused=!1,this.focusedItemInfo={index:-1,level:0,parentKey:""},this.searchValue="",this.dirty=!1,this.$emit("blur",e)},onKeyDown:function(e){var n=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:!n&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var n=e.processedItem,i=e.isFocus;if(!t.ObjectUtils.isEmpty(n)){var s=n.index,o=n.key,r=n.level,c=n.parentKey,a=t.ObjectUtils.isNotEmpty(n.items),m=this.activeItemPath.filter((function(e){return e.parentKey!==c&&e.parentKey!==o}));a&&m.push(n),this.focusedItemInfo={index:s,level:r,parentKey:c},this.activeItemPath=m,a&&(this.dirty=!0),i&&t.DomHandler.focus(this.menubar)}},onItemClick:function(e){var n=e.originalEvent,i=e.processedItem,s=this.isProccessedItemGroup(i),o=t.ObjectUtils.isEmpty(i.parent);if(this.isSelected(i)){var r=i.index,c=i.key,a=i.level,m=i.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return c!==e.key&&c.startsWith(e.key)})),this.focusedItemInfo={index:r,level:a,parentKey:m},this.dirty=!o,t.DomHandler.focus(this.menubar)}else if(s)this.onItemChange(e);else{var u=o?i:this.activeItemPath.find((function(e){return""===e.parentKey}));this.hide(n),this.changeFocusedItemIndex(n,u?u.index:-1),this.mobileActive=!1,t.DomHandler.focus(this.menubar)}},onItemMouseEnter:function(e){!this.mobileActive&&this.dirty&&this.onItemChange(e)},menuButtonClick:function(e){this.toggle(e)},menuButtonKeydown:function(e){("Enter"===e.code||"Space"===e.code)&&this.menuButtonClick(e)},onArrowDownKey:function(e){var n=this.visibleItems[this.focusedItemInfo.index];if(n?t.ObjectUtils.isEmpty(n.parent):null){this.isProccessedItemGroup(n)&&(this.onItemChange({originalEvent:e,processedItem:n}),this.focusedItemInfo={index:-1,parentKey:n.key},this.onArrowRightKey(e))}else{var i=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowUpKey:function(e){var n=this,i=this.visibleItems[this.focusedItemInfo.index];if(t.ObjectUtils.isEmpty(i.parent)){if(this.isProccessedItemGroup(i)){this.onItemChange({originalEvent:e,processedItem:i}),this.focusedItemInfo={index:-1,parentKey:i.key};var s=this.findLastItemIndex();this.changeFocusedItemIndex(e,s)}}else{var o=this.activeItemPath.find((function(e){return e.key===i.parentKey}));if(0===this.focusedItemInfo.index)this.focusedItemInfo={index:-1,parentKey:o?o.parentKey:""},this.searchValue="",this.onArrowLeftKey(e),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==n.focusedItemInfo.parentKey}));else{var r=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,r)}}e.preventDefault()},onArrowLeftKey:function(e){var t=this,n=this.visibleItems[this.focusedItemInfo.index],i=n?this.activeItemPath.find((function(e){return e.key===n.parentKey})):null;if(i)this.onItemChange({originalEvent:e,processedItem:i}),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==t.focusedItemInfo.parentKey})),e.preventDefault();else{var s=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,s),e.preventDefault()}},onArrowRightKey:function(e){var t=this.visibleItems[this.focusedItemInfo.index];if(t?this.activeItemPath.find((function(e){return e.key===t.parentKey})):null){this.isProccessedItemGroup(t)&&(this.onItemChange({originalEvent:e,processedItem:t}),this.focusedItemInfo={index:-1,parentKey:t.key},this.onArrowDownKey(e))}else{var n=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,n),e.preventDefault()}},onHomeKey:function(e){this.changeFocusedItemIndex(e,this.findFirstItemIndex()),e.preventDefault()},onEndKey:function(e){this.changeFocusedItemIndex(e,this.findLastItemIndex()),e.preventDefault()},onEnterKey:function(e){if(-1!==this.focusedItemInfo.index){var n=t.DomHandler.findSingle(this.menubar,'li[id="'.concat("".concat(this.focusedItemId),'"]')),i=n&&t.DomHandler.findSingle(n,'a[data-pc-section="action"]');i?i.click():n&&n.click(),!this.isProccessedItemGroup(this.visibleItems[this.focusedItemInfo.index])&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex())}e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},onEscapeKey:function(e){this.hide(e,!0),this.focusedItemInfo.index=this.findFirstFocusedItemIndex(),e.preventDefault()},onTabKey:function(e){if(-1!==this.focusedItemInfo.index){var t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.hide()},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var n=e.menubar!==t.target&&!e.menubar.contains(t.target);e.mobileActive&&e.$refs.menubutton!==t.target&&!e.$refs.menubutton.contains(t.target)&&n&&e.hide()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener:function(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindResizeListener:function(){var e=this;this.resizeListener||(this.resizeListener=function(n){t.DomHandler.isTouchDevice()||e.hide(n,!0),e.mobileActive=!1},window.addEventListener("resize",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},isItemMatched:function(e){return this.isValidItem(e)&&this.getProccessedItemLabel(e).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase())},isValidItem:function(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)},isValidSelectedItem:function(e){return this.isValidItem(e)&&this.isSelected(e)},isSelected:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},findFirstItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidItem(t)}))},findLastItemIndex:function(){var e=this;return t.ObjectUtils.findLastIndex(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItemIndex:function(e){var t=this,n=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return n>-1?n+e+1:e},findPrevItemIndex:function(e){var n=this,i=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return n.isValidItem(e)})):-1;return i>-1?i:e},findSelectedItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidSelectedItem(t)}))},findFirstFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findFirstItemIndex():e},findLastFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findLastItemIndex():e},searchItems:function(e,t){var n=this;this.searchValue=(this.searchValue||"")+t;var i=-1,s=!1;return-1!==(i=-1!==this.focusedItemInfo.index?-1===(i=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})):i+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return n.isItemMatched(e)})))&&(s=!0),-1===i&&-1===this.focusedItemInfo.index&&(i=this.findFirstFocusedItemIndex()),-1!==i&&this.changeFocusedItemIndex(e,i),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){n.searchValue="",n.searchTimeout=null}),500),s},changeFocusedItemIndex:function(e,t){this.focusedItemInfo.index!==t&&(this.focusedItemInfo.index=t,this.scrollInView())},scrollInView:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemId,i=t.DomHandler.findSingle(this.menubar,'li[id="'.concat(n,'"]'));i&&i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",o=[];return e&&e.forEach((function(e,r){var c=(""!==s?s+"_":"")+r,a={item:e,index:r,level:n,key:c,parent:i,parentKey:s};a.items=t.createProcessedItems(e.items,n+1,a,c),o.push(a)})),o},containerRef:function(e){this.container=e},menubarRef:function(e){this.menubar=e?e.$el:void 0}},computed:{processedItems:function(){return this.createProcessedItems(this.model||[])},visibleItems:function(){var e=this,t=this.activeItemPath.find((function(t){return t.key===e.focusedItemInfo.parentKey}));return t?t.items:this.processedItems},focusedItemId:function(){return-1!==this.focusedItemInfo.index?"".concat(this.id).concat(t.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:"","_").concat(this.focusedItemInfo.index):null}},components:{MenubarSub:h,BarsIcon:m.default}};function P(e){return P="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},P(e)}function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function E(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?C(Object(n),!0).forEach((function(t){K(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function K(e,t,n){return(t=B(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function B(e){var t=A(e,"string");return"symbol"===P(t)?t:String(t)}function A(e,t){if("object"!==P(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==P(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}var w=["aria-haspopup","aria-expanded","aria-controls","aria-label"];return k.render=function(e,t,n,i,s,o){var r=c.resolveComponent("BarsIcon"),a=c.resolveComponent("MenubarSub");return c.openBlock(),c.createElementBlock("div",c.mergeProps({ref:o.containerRef,class:e.cx("root")},e.ptm("root")),[e.$slots.start?(c.openBlock(),c.createElementBlock("div",c.mergeProps({key:0,class:e.cx("start")},e.ptm("start")),[c.renderSlot(e.$slots,"start")],16)):c.createCommentVNode("",!0),e.model&&e.model.length>0?(c.openBlock(),c.createElementBlock("a",c.mergeProps({key:1,ref:"menubutton",role:"button",tabindex:"0",class:e.cx("button"),"aria-haspopup":!!(e.model.length&&e.model.length>0),"aria-expanded":s.mobileActive,"aria-controls":s.id,"aria-label":e.$primevue.config.locale.aria.navigation,onClick:t[0]||(t[0]=function(e){return o.menuButtonClick(e)}),onKeydown:t[1]||(t[1]=function(e){return o.menuButtonKeydown(e)})},E(E({},e.buttonProps),e.ptm("button"))),[c.renderSlot(e.$slots,"popupicon",{},(function(){return[c.createVNode(r,c.normalizeProps(c.guardReactiveProps(e.ptm("popupIcon"))),null,16)]}))],16,w)):c.createCommentVNode("",!0),c.createVNode(a,{ref:o.menubarRef,id:s.id,role:"menubar",items:o.processedItems,templates:e.$slots,root:!0,mobileActive:s.mobileActive,tabindex:"0","aria-activedescendant":s.focused?o.focusedItemId:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemId:void 0,activeItemPath:s.activeItemPath,exact:e.exact,level:0,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,pt:e.pt,onFocus:o.onFocus,onBlur:o.onBlur,onKeydown:o.onKeyDown,onItemClick:o.onItemClick,onItemMouseenter:o.onItemMouseEnter},null,8,["id","items","templates","mobileActive","aria-activedescendant","menuId","focusedItemId","activeItemPath","exact","aria-labelledby","aria-label","pt","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter"]),e.$slots.end?(c.openBlock(),c.createElementBlock("div",c.mergeProps({key:2,class:e.cx("end")},e.ptm("end")),[c.renderSlot(e.$slots,"end")],16)):c.createCommentVNode("",!0)],16)},k}(primevue.icons.bars,primevue.utils,primevue.basecomponent,primevue.usestyle,primevue.icons.angledown,primevue.icons.angleright,primevue.ripple,Vue);
|
|
1
|
+
this.primevue=this.primevue||{},this.primevue.menubar=function(e,t,n,i,s,o,r,c){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var m=a(e),u=a(n),l=a(s),d=a(o),I=a(r),p=i.useStyle("\n.p-menubar {\n display: flex;\n align-items: center;\n}\n\n.p-menubar ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.p-menubar .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\n.p-menubar .p-menuitem-text {\n line-height: 1;\n}\n\n.p-menubar .p-menuitem {\n position: relative;\n}\n\n.p-menubar-root-list {\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n}\n\n.p-menubar-root-list > li ul {\n display: none;\n z-index: 1;\n}\n\n.p-menubar-root-list > .p-menuitem-active > .p-submenu-list {\n display: block;\n}\n\n.p-menubar .p-submenu-list {\n display: none;\n position: absolute;\n z-index: 1;\n}\n\n.p-menubar .p-submenu-list > .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n}\n\n.p-menubar .p-submenu-list .p-menuitem .p-menuitem-content .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n\n.p-menubar .p-menubar-end {\n margin-left: auto;\n align-self: center;\n}\n\n.p-menubar-button {\n display: none;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n text-decoration: none;\n}\n",{name:"menubar",manual:!0}),f={name:"BaseMenubar",extends:u.default,props:{model:{type:Array,default:null},exact:{type:Boolean,default:!0},buttonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:function(e){return["p-menubar p-component",{"p-menubar-mobile-active":e.instance.mobileActive}]},start:"p-menubar-start",button:"p-menubar-button",menu:"p-menubar-root-list",menuitem:function(e){var t=e.instance,n=e.processedItem;return["p-menuitem",{"p-menuitem-active p-highlight":t.isItemActive(n),"p-focus":t.isItemFocused(n),"p-disabled":t.isItemDisabled(n)}]},content:"p-menuitem-content",action:function(e){return["p-menuitem-link",{"router-link-active":e.isActive,"router-link-active-exact":e.props.exact&&e.isExactActive}]},icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator",end:"p-menubar-end"},inlineStyles:{submenu:function(e){return{display:e.instance.isItemActive(e.processedItem)?"block":"none"}}},loadStyle:p.load},provide:function(){return{$parentInstance:this}}},h={name:"MenubarSub",hostName:"Menubar",extends:u.default,emits:["item-mouseenter","item-click"],props:{items:{type:Array,default:null},root:{type:Boolean,default:!1},popup:{type:Boolean,default:!1},mobileActive:{type:Boolean,default:!1},templates:{type:Object,default:null},exact:{type:Boolean,default:!0},level:{type:Number,default:0},menuId:{type:String,default:null},focusedItemId:{type:String,default:null},activeItemPath:{type:Object,default:null}},list:null,methods:{getItemId:function(e){return"".concat(this.menuId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,n,i){return e&&e.item?t.ObjectUtils.getItemValue(e.item[n],i):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t,n){return this.ptm(n,{context:{item:e,index:t,active:this.isItemActive(e),focused:this.isItemFocused(e)}})},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter:function(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemActionClick:function(e,t){t&&t(e)},getAriaSetSize:function(){var e=this;return this.items.filter((function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")})).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter((function(e){return t.isItemVisible(e)&&t.getItemProp(e,"separator")})).length+1}},components:{AngleRightIcon:d.default,AngleDownIcon:l.default},directives:{ripple:I.default}},b=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],v=["onClick","onMouseenter"],y=["href","onClick"],g=["href","target"],x=["id"];h.render=function(e,t,n,i,s,o){var r=c.resolveComponent("router-link"),a=c.resolveComponent("MenubarSub",!0),m=c.resolveDirective("ripple");return c.openBlock(),c.createElementBlock("ul",c.mergeProps({class:e.cx(0===n.level?"menu":"submenu")},e.ptm(0===n.level?"menu":"submenu")),[(c.openBlock(!0),c.createElementBlock(c.Fragment,null,c.renderList(n.items,(function(i,s){return c.openBlock(),c.createElementBlock(c.Fragment,{key:o.getItemKey(i)},[o.isItemVisible(i)&&!o.getItemProp(i,"separator")?(c.openBlock(),c.createElementBlock("li",c.mergeProps({key:0,id:o.getItemId(i),style:o.getItemProp(i,"style"),class:[e.cx("menuitem",{processedItem:i}),o.getItemProp(i,"class")],role:"menuitem","aria-label":o.getItemLabel(i),"aria-disabled":o.isItemDisabled(i)||void 0,"aria-expanded":o.isItemGroup(i)?o.isItemActive(i):void 0,"aria-haspopup":o.isItemGroup(i)&&!o.getItemProp(i,"to")?"menu":void 0,"aria-level":n.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(s)},o.getPTOptions(i,s,"menuitem"),{"data-p-highlight":o.isItemActive(i),"data-p-focused":o.isItemFocused(i),"data-p-disabled":o.isItemDisabled(i)}),[c.createElementVNode("div",c.mergeProps({class:e.cx("content"),onClick:function(e){return o.onItemClick(e,i)},onMouseenter:function(e){return o.onItemMouseEnter(e,i)}},o.getPTOptions(i,s,"content")),[n.templates.item?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.item),{key:1,item:i.item},null,8,["item"])):(c.openBlock(),c.createElementBlock(c.Fragment,{key:0},[o.getItemProp(i,"to")&&!o.isItemDisabled(i)?(c.openBlock(),c.createBlock(r,{key:0,to:o.getItemProp(i,"to"),custom:""},{default:c.withCtx((function(t){var r=t.navigate,a=t.href,u=t.isActive,l=t.isExactActive;return[c.withDirectives((c.openBlock(),c.createElementBlock("a",c.mergeProps({href:a,class:e.cx("action",{isActive:u,isExactActive:l}),tabindex:"-1","aria-hidden":"true",onClick:function(e){return o.onItemActionClick(e,r)}},o.getPTOptions(i,s,"action")),[n.templates.itemicon?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:c.normalizeClass([e.cx("icon"),o.getItemProp(i,"icon")])},null,8,["item","class"])):o.getItemProp(i,"icon")?(c.openBlock(),c.createElementBlock("span",c.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(i,"icon")]},o.getPTOptions(i,s,"icon")),null,16)):c.createCommentVNode("",!0),c.createElementVNode("span",c.mergeProps({class:e.cx("label")},o.getPTOptions(i,s,"label")),c.toDisplayString(o.getItemLabel(i)),17)],16,y)),[[m]])]})),_:2},1032,["to"])):c.withDirectives((c.openBlock(),c.createElementBlock("a",c.mergeProps({key:1,href:o.getItemProp(i,"url"),class:e.cx("action"),target:o.getItemProp(i,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions(i,s,"action")),[n.templates.itemicon?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.itemicon),{key:0,item:i.item,class:c.normalizeClass([e.cx("icon"),o.getItemProp(i,"icon")])},null,8,["item","class"])):o.getItemProp(i,"icon")?(c.openBlock(),c.createElementBlock("span",c.mergeProps({key:1,class:[e.cx("icon"),o.getItemProp(i,"icon")]},o.getPTOptions(i,s,"icon")),null,16)):c.createCommentVNode("",!0),c.createElementVNode("span",c.mergeProps({class:e.cx("label")},o.getPTOptions(i,s,"label")),c.toDisplayString(o.getItemLabel(i)),17),o.getItemProp(i,"items")?(c.openBlock(),c.createElementBlock(c.Fragment,{key:2},[n.templates.submenuicon?(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.templates.submenuicon),{key:0,root:n.root,active:o.isItemActive(i),class:c.normalizeClass(e.cx("submenuIcon"))},null,8,["root","active","class"])):(c.openBlock(),c.createBlock(c.resolveDynamicComponent(n.root?"AngleDownIcon":"AngleRightIcon"),c.mergeProps({key:1,class:e.cx("submenuIcon")},o.getPTOptions(i,s,"submenuIcon")),null,16,["class"]))],64)):c.createCommentVNode("",!0)],16,g)),[[m]])],64))],16,v),o.isItemVisible(i)&&o.isItemGroup(i)?(c.openBlock(),c.createBlock(a,{key:0,menuId:n.menuId,role:"menu",style:c.normalizeStyle(e.sx("submenu",!0,{processedItem:i})),focusedItemId:n.focusedItemId,items:i.items,mobileActive:n.mobileActive,activeItemPath:n.activeItemPath,templates:n.templates,exact:n.exact,level:n.level+1,pt:e.pt,onItemClick:t[0]||(t[0]=function(t){return e.$emit("item-click",t)}),onItemMouseenter:t[1]||(t[1]=function(t){return e.$emit("item-mouseenter",t)})},null,8,["menuId","style","focusedItemId","items","mobileActive","activeItemPath","templates","exact","level","pt"])):c.createCommentVNode("",!0)],16,b)):c.createCommentVNode("",!0),o.isItemVisible(i)&&o.getItemProp(i,"separator")?(c.openBlock(),c.createElementBlock("li",c.mergeProps({key:1,id:o.getItemId(i),class:[e.cx("separator"),o.getItemProp(i,"class")],style:o.getItemProp(i,"style"),role:"separator"},e.ptm("separator")),null,16,x)):c.createCommentVNode("",!0)],64)})),128))],16)};var k={name:"Menubar",extends:f,emits:["focus","blur"],data:function(){return{id:this.$attrs.id,mobileActive:!1,focused:!1,focusedItemInfo:{index:-1,level:0,parentKey:""},activeItemPath:[],dirty:!1}},watch:{"$attrs.id":function(e){this.id=e||t.UniqueComponentId()},activeItemPath:function(e){t.ObjectUtils.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener()):(this.unbindOutsideClickListener(),this.unbindResizeListener())}},outsideClickListener:null,container:null,menubar:null,mounted:function(){this.id=this.id||t.UniqueComponentId()},beforeUnmount:function(){this.mobileActive=!1,this.unbindOutsideClickListener(),this.unbindResizeListener(),this.container&&t.ZIndexUtils.clear(this.container),this.container=null},methods:{getItemProp:function(e,n){return e?t.ObjectUtils.getItemValue(e[n]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemGroup:function(e){return t.ObjectUtils.isNotEmpty(this.getItemProp(e,"items"))},isItemSeparator:function(e){return this.getItemProp(e,"separator")},getProccessedItemLabel:function(e){return e?this.getItemLabel(e.item):void 0},isProccessedItemGroup:function(e){return e&&t.ObjectUtils.isNotEmpty(e.items)},toggle:function(e){var n=this;this.mobileActive?(this.mobileActive=!1,t.ZIndexUtils.clear(this.menubar),this.hide()):(this.mobileActive=!0,t.ZIndexUtils.set("menu",this.menubar,this.$primevue.config.zIndex.menu),setTimeout((function(){n.show()}),1)),this.bindOutsideClickListener(),e.preventDefault()},show:function(){this.focusedItemInfo={index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},t.DomHandler.focus(this.menubar)},hide:function(e,n){var i=this;this.mobileActive&&(this.mobileActive=!1,setTimeout((function(){t.DomHandler.focus(i.$refs.menubutton)}),0)),this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""},n&&t.DomHandler.focus(this.menubar),this.dirty=!1},onFocus:function(e){this.focused=!0,this.focusedItemInfo=-1!==this.focusedItemInfo.index?this.focusedItemInfo:{index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},this.$emit("focus",e)},onBlur:function(e){this.focused=!1,this.focusedItemInfo={index:-1,level:0,parentKey:""},this.searchValue="",this.dirty=!1,this.$emit("blur",e)},onKeyDown:function(e){var n=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:!n&&t.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange:function(e){var n=e.processedItem,i=e.isFocus;if(!t.ObjectUtils.isEmpty(n)){var s=n.index,o=n.key,r=n.level,c=n.parentKey,a=t.ObjectUtils.isNotEmpty(n.items),m=this.activeItemPath.filter((function(e){return e.parentKey!==c&&e.parentKey!==o}));a&&m.push(n),this.focusedItemInfo={index:s,level:r,parentKey:c},this.activeItemPath=m,a&&(this.dirty=!0),i&&t.DomHandler.focus(this.menubar)}},onItemClick:function(e){var n=e.originalEvent,i=e.processedItem,s=this.isProccessedItemGroup(i),o=t.ObjectUtils.isEmpty(i.parent);if(this.isSelected(i)){var r=i.index,c=i.key,a=i.level,m=i.parentKey;this.activeItemPath=this.activeItemPath.filter((function(e){return c!==e.key&&c.startsWith(e.key)})),this.focusedItemInfo={index:r,level:a,parentKey:m},this.dirty=!o,t.DomHandler.focus(this.menubar)}else if(s)this.onItemChange(e);else{var u=o?i:this.activeItemPath.find((function(e){return""===e.parentKey}));this.hide(n),this.changeFocusedItemIndex(n,u?u.index:-1),this.mobileActive=!1,t.DomHandler.focus(this.menubar)}},onItemMouseEnter:function(e){!this.mobileActive&&this.dirty&&this.onItemChange(e)},menuButtonClick:function(e){this.toggle(e)},menuButtonKeydown:function(e){("Enter"===e.code||"Space"===e.code)&&this.menuButtonClick(e)},onArrowDownKey:function(e){var n=this.visibleItems[this.focusedItemInfo.index];if(n?t.ObjectUtils.isEmpty(n.parent):null){this.isProccessedItemGroup(n)&&(this.onItemChange({originalEvent:e,processedItem:n}),this.focusedItemInfo={index:-1,parentKey:n.key},this.onArrowRightKey(e))}else{var i=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,i),e.preventDefault()}},onArrowUpKey:function(e){var n=this,i=this.visibleItems[this.focusedItemInfo.index];if(t.ObjectUtils.isEmpty(i.parent)){if(this.isProccessedItemGroup(i)){this.onItemChange({originalEvent:e,processedItem:i}),this.focusedItemInfo={index:-1,parentKey:i.key};var s=this.findLastItemIndex();this.changeFocusedItemIndex(e,s)}}else{var o=this.activeItemPath.find((function(e){return e.key===i.parentKey}));if(0===this.focusedItemInfo.index)this.focusedItemInfo={index:-1,parentKey:o?o.parentKey:""},this.searchValue="",this.onArrowLeftKey(e),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==n.focusedItemInfo.parentKey}));else{var r=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,r)}}e.preventDefault()},onArrowLeftKey:function(e){var t=this,n=this.visibleItems[this.focusedItemInfo.index],i=n?this.activeItemPath.find((function(e){return e.key===n.parentKey})):null;if(i)this.onItemChange({originalEvent:e,processedItem:i}),this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==t.focusedItemInfo.parentKey})),e.preventDefault();else{var s=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,s),e.preventDefault()}},onArrowRightKey:function(e){var t=this.visibleItems[this.focusedItemInfo.index];if(t?this.activeItemPath.find((function(e){return e.key===t.parentKey})):null){this.isProccessedItemGroup(t)&&(this.onItemChange({originalEvent:e,processedItem:t}),this.focusedItemInfo={index:-1,parentKey:t.key},this.onArrowDownKey(e))}else{var n=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,n),e.preventDefault()}},onHomeKey:function(e){this.changeFocusedItemIndex(e,this.findFirstItemIndex()),e.preventDefault()},onEndKey:function(e){this.changeFocusedItemIndex(e,this.findLastItemIndex()),e.preventDefault()},onEnterKey:function(e){if(-1!==this.focusedItemInfo.index){var n=t.DomHandler.findSingle(this.menubar,'li[id="'.concat("".concat(this.focusedItemId),'"]')),i=n&&t.DomHandler.findSingle(n,'a[data-pc-section="action"]');i?i.click():n&&n.click(),!this.isProccessedItemGroup(this.visibleItems[this.focusedItemInfo.index])&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex())}e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},onEscapeKey:function(e){this.hide(e,!0),this.focusedItemInfo.index=this.findFirstFocusedItemIndex(),e.preventDefault()},onTabKey:function(e){if(-1!==this.focusedItemInfo.index){var t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.hide()},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(t){var n=e.menubar!==t.target&&!e.menubar.contains(t.target);e.mobileActive&&e.$refs.menubutton!==t.target&&!e.$refs.menubutton.contains(t.target)&&n&&e.hide()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener:function(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindResizeListener:function(){var e=this;this.resizeListener||(this.resizeListener=function(n){t.DomHandler.isTouchDevice()||e.hide(n,!0),e.mobileActive=!1},window.addEventListener("resize",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},isItemMatched:function(e){return this.isValidItem(e)&&this.getProccessedItemLabel(e).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase())},isValidItem:function(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)},isValidSelectedItem:function(e){return this.isValidItem(e)&&this.isSelected(e)},isSelected:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},findFirstItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidItem(t)}))},findLastItemIndex:function(){var e=this;return t.ObjectUtils.findLastIndex(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItemIndex:function(e){var t=this,n=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((function(e){return t.isValidItem(e)})):-1;return n>-1?n+e+1:e},findPrevItemIndex:function(e){var n=this,i=e>0?t.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(function(e){return n.isValidItem(e)})):-1;return i>-1?i:e},findSelectedItemIndex:function(){var e=this;return this.visibleItems.findIndex((function(t){return e.isValidSelectedItem(t)}))},findFirstFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findFirstItemIndex():e},findLastFocusedItemIndex:function(){var e=this.findSelectedItemIndex();return e<0?this.findLastItemIndex():e},searchItems:function(e,t){var n=this;this.searchValue=(this.searchValue||"")+t;var i=-1,s=!1;return-1!==(i=-1!==this.focusedItemInfo.index?-1===(i=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})))?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((function(e){return n.isItemMatched(e)})):i+this.focusedItemInfo.index:this.visibleItems.findIndex((function(e){return n.isItemMatched(e)})))&&(s=!0),-1===i&&-1===this.focusedItemInfo.index&&(i=this.findFirstFocusedItemIndex()),-1!==i&&this.changeFocusedItemIndex(e,i),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){n.searchValue="",n.searchTimeout=null}),500),s},changeFocusedItemIndex:function(e,t){this.focusedItemInfo.index!==t&&(this.focusedItemInfo.index=t,this.scrollInView())},scrollInView:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=-1!==e?"".concat(this.id,"_").concat(e):this.focusedItemId,i=t.DomHandler.findSingle(this.menubar,'li[id="'.concat(n,'"]'));i&&i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",o=[];return e&&e.forEach((function(e,r){var c=(""!==s?s+"_":"")+r,a={item:e,index:r,level:n,key:c,parent:i,parentKey:s};a.items=t.createProcessedItems(e.items,n+1,a,c),o.push(a)})),o},containerRef:function(e){this.container=e},menubarRef:function(e){this.menubar=e?e.$el:void 0}},computed:{processedItems:function(){return this.createProcessedItems(this.model||[])},visibleItems:function(){var e=this,t=this.activeItemPath.find((function(t){return t.key===e.focusedItemInfo.parentKey}));return t?t.items:this.processedItems},focusedItemId:function(){return-1!==this.focusedItemInfo.index?"".concat(this.id).concat(t.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:"","_").concat(this.focusedItemInfo.index):null}},components:{MenubarSub:h,BarsIcon:m.default}};function P(e){return P="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},P(e)}function C(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function E(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?C(Object(n),!0).forEach((function(t){K(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):C(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function K(e,t,n){return(t=B(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function B(e){var t=A(e,"string");return"symbol"===P(t)?t:String(t)}function A(e,t){if("object"!==P(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==P(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}var w=["aria-haspopup","aria-expanded","aria-controls","aria-label"];return k.render=function(e,t,n,i,s,o){var r=c.resolveComponent("BarsIcon"),a=c.resolveComponent("MenubarSub");return c.openBlock(),c.createElementBlock("div",c.mergeProps({ref:o.containerRef,class:e.cx("root")},e.ptm("root")),[e.$slots.start?(c.openBlock(),c.createElementBlock("div",c.mergeProps({key:0,class:e.cx("start")},e.ptm("start")),[c.renderSlot(e.$slots,"start")],16)):c.createCommentVNode("",!0),e.model&&e.model.length>0?(c.openBlock(),c.createElementBlock("a",c.mergeProps({key:1,ref:"menubutton",role:"button",tabindex:"0",class:e.cx("button"),"aria-haspopup":!!(e.model.length&&e.model.length>0),"aria-expanded":s.mobileActive,"aria-controls":s.id,"aria-label":e.$primevue.config.locale.aria.navigation,onClick:t[0]||(t[0]=function(e){return o.menuButtonClick(e)}),onKeydown:t[1]||(t[1]=function(e){return o.menuButtonKeydown(e)})},E(E({},e.buttonProps),e.ptm("button"))),[c.renderSlot(e.$slots,"popupicon",{},(function(){return[c.createVNode(r,c.normalizeProps(c.guardReactiveProps(e.ptm("popupIcon"))),null,16)]}))],16,w)):c.createCommentVNode("",!0),c.createVNode(a,{ref:o.menubarRef,id:s.id,role:"menubar",items:o.processedItems,templates:e.$slots,root:!0,mobileActive:s.mobileActive,tabindex:"0","aria-activedescendant":s.focused?o.focusedItemId:void 0,menuId:s.id,focusedItemId:s.focused?o.focusedItemId:void 0,activeItemPath:s.activeItemPath,exact:e.exact,level:0,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,pt:e.pt,onFocus:o.onFocus,onBlur:o.onBlur,onKeydown:o.onKeyDown,onItemClick:o.onItemClick,onItemMouseenter:o.onItemMouseEnter},null,8,["id","items","templates","mobileActive","aria-activedescendant","menuId","focusedItemId","activeItemPath","exact","aria-labelledby","aria-label","pt","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter"]),e.$slots.end?(c.openBlock(),c.createElementBlock("div",c.mergeProps({key:2,class:e.cx("end")},e.ptm("end")),[c.renderSlot(e.$slots,"end")],16)):c.createCommentVNode("",!0)],16)},k}(primevue.icons.bars,primevue.utils,primevue.basecomponent,primevue.usestyle,primevue.icons.angledown,primevue.icons.angleright,primevue.ripple,Vue);
|
package/package.json
CHANGED
package/panelmenu/PanelMenu.d.ts
CHANGED
|
@@ -134,6 +134,14 @@ export interface PanelMenuState {
|
|
|
134
134
|
* Defines current options in PanelMenu component.
|
|
135
135
|
*/
|
|
136
136
|
export interface PanelMenuContext {
|
|
137
|
+
/**
|
|
138
|
+
* Current menuitem
|
|
139
|
+
*/
|
|
140
|
+
item: any;
|
|
141
|
+
/**
|
|
142
|
+
* Index of the menuitem.
|
|
143
|
+
*/
|
|
144
|
+
index: number;
|
|
137
145
|
/**
|
|
138
146
|
* Current active state of menuitem as a boolean.
|
|
139
147
|
* @defaultValue false
|
package/panelmenu/PanelMenu.vue
CHANGED
|
@@ -13,26 +13,26 @@
|
|
|
13
13
|
:aria-disabled="isItemDisabled(item)"
|
|
14
14
|
@click="onHeaderClick($event, item)"
|
|
15
15
|
@keydown="onHeaderKeyDown($event, item)"
|
|
16
|
-
v-bind="getPTOptions(item,
|
|
16
|
+
v-bind="getPTOptions('header', item, index)"
|
|
17
17
|
:data-p-highlight="isItemActive(item)"
|
|
18
18
|
:data-p-disabled="isItemDisabled(item)"
|
|
19
19
|
>
|
|
20
|
-
<div :class="cx('headerContent')" v-bind="getPTOptions(item,
|
|
20
|
+
<div :class="cx('headerContent')" v-bind="getPTOptions('headerContent', item, index)">
|
|
21
21
|
<template v-if="!$slots.item">
|
|
22
22
|
<router-link v-if="getItemProp(item, 'to') && !isItemDisabled(item)" v-slot="{ navigate, href, isActive, isExactActive }" :to="getItemProp(item, 'to')" custom>
|
|
23
|
-
<a :href="href" :class="cx('headerAction', { isActive, isExactActive })" :tabindex="-1" @click="onHeaderActionClick($event, navigate)" v-bind="getPTOptions(item,
|
|
23
|
+
<a :href="href" :class="cx('headerAction', { isActive, isExactActive })" :tabindex="-1" @click="onHeaderActionClick($event, navigate)" v-bind="getPTOptions('headerAction', item, index)">
|
|
24
24
|
<component v-if="$slots.headericon" :is="$slots.headericon" :item="item" :class="[cx('headerIcon'), getItemProp(item, 'icon')]" />
|
|
25
|
-
<span v-else-if="getItemProp(item, 'icon')" :class="[cx('headerIcon'), getItemProp(item, 'icon')]" v-bind="getPTOptions(item,
|
|
26
|
-
<span :class="cx('headerLabel')" v-bind="getPTOptions(item,
|
|
25
|
+
<span v-else-if="getItemProp(item, 'icon')" :class="[cx('headerIcon'), getItemProp(item, 'icon')]" v-bind="getPTOptions('headerIcon', item, index)" />
|
|
26
|
+
<span :class="cx('headerLabel')" v-bind="getPTOptions('headerLabel', item, index)">{{ getItemLabel(item) }}</span>
|
|
27
27
|
</a>
|
|
28
28
|
</router-link>
|
|
29
|
-
<a v-else :href="getItemProp(item, 'url')" :class="cx('headerAction')" :tabindex="-1" v-bind="getPTOptions(item,
|
|
29
|
+
<a v-else :href="getItemProp(item, 'url')" :class="cx('headerAction')" :tabindex="-1" v-bind="getPTOptions('headerAction', item, index)">
|
|
30
30
|
<slot v-if="getItemProp(item, 'items')" name="submenuicon" :active="isItemActive(item)">
|
|
31
|
-
<component :is="isItemActive(item) ? 'ChevronDownIcon' : 'ChevronRightIcon'" :class="cx('submenuIcon')" v-bind="getPTOptions(item,
|
|
31
|
+
<component :is="isItemActive(item) ? 'ChevronDownIcon' : 'ChevronRightIcon'" :class="cx('submenuIcon')" v-bind="getPTOptions('submenuIcon', item, index)" />
|
|
32
32
|
</slot>
|
|
33
33
|
<component v-if="$slots.headericon" :is="$slots.headericon" :item="item" :class="[cx('headerIcon'), getItemProp(item, 'icon')]" />
|
|
34
|
-
<span v-else-if="getItemProp(item, 'icon')" :class="[cx('headerIcon'), getItemProp(item, 'icon')]" v-bind="getPTOptions(item,
|
|
35
|
-
<span :class="cx('headerLabel')" v-bind="getPTOptions(item,
|
|
34
|
+
<span v-else-if="getItemProp(item, 'icon')" :class="[cx('headerIcon'), getItemProp(item, 'icon')]" v-bind="getPTOptions('headerIcon', item, index)" />
|
|
35
|
+
<span :class="cx('headerLabel')" v-bind="getPTOptions('headerLabel', item, index)">{{ getItemLabel(item) }}</span>
|
|
36
36
|
</a>
|
|
37
37
|
</template>
|
|
38
38
|
<component v-else :is="$slots.item" :item="item"></component>
|
|
@@ -91,9 +91,10 @@ export default {
|
|
|
91
91
|
getItemLabel(item) {
|
|
92
92
|
return this.getItemProp(item, 'label');
|
|
93
93
|
},
|
|
94
|
-
getPTOptions(item,
|
|
94
|
+
getPTOptions(key, item, index) {
|
|
95
95
|
return this.ptm(key, {
|
|
96
|
-
|
|
96
|
+
context: {
|
|
97
|
+
index,
|
|
97
98
|
active: this.isItemActive(item),
|
|
98
99
|
focused: this.isItemFocused(item)
|
|
99
100
|
}
|
|
@@ -12,27 +12,27 @@
|
|
|
12
12
|
:aria-level="level + 1"
|
|
13
13
|
:aria-setsize="getAriaSetSize()"
|
|
14
14
|
:aria-posinset="getAriaPosInset(index)"
|
|
15
|
-
v-bind="getPTOptions(processedItem,
|
|
15
|
+
v-bind="getPTOptions('menuitem', processedItem, index)"
|
|
16
16
|
:data-p-focused="isItemFocused(processedItem)"
|
|
17
17
|
:data-p-disabled="isItemDisabled(processedItem)"
|
|
18
18
|
>
|
|
19
|
-
<div :class="cx('content')" @click="onItemClick($event, processedItem)" v-bind="getPTOptions(processedItem,
|
|
19
|
+
<div :class="cx('content')" @click="onItemClick($event, processedItem)" v-bind="getPTOptions('content', processedItem, index)">
|
|
20
20
|
<template v-if="!templates.item">
|
|
21
21
|
<router-link v-if="getItemProp(processedItem, 'to') && !isItemDisabled(processedItem)" v-slot="{ navigate, href, isActive, isExactActive }" :to="getItemProp(processedItem, 'to')" custom>
|
|
22
|
-
<a v-ripple :href="href" :class="cx('action', { isActive, isExactActive })" tabindex="-1" aria-hidden="true" @click="onItemActionClick($event, navigate)" v-bind="getPTOptions(processedItem,
|
|
22
|
+
<a v-ripple :href="href" :class="cx('action', { isActive, isExactActive })" tabindex="-1" aria-hidden="true" @click="onItemActionClick($event, navigate)" v-bind="getPTOptions('action', processedItem, index)">
|
|
23
23
|
<component v-if="templates.itemicon" :is="templates.itemicon" :item="processedItem.item" :class="[cx('icon'), getItemProp(processedItem, 'icon')]" />
|
|
24
|
-
<span v-else-if="getItemProp(processedItem, 'icon')" :class="[cx('icon'), getItemProp(processedItem, 'icon')]" v-bind="getPTOptions(processedItem,
|
|
25
|
-
<span :class="cx('label')" v-bind="getPTOptions(processedItem,
|
|
24
|
+
<span v-else-if="getItemProp(processedItem, 'icon')" :class="[cx('icon'), getItemProp(processedItem, 'icon')]" v-bind="getPTOptions('icon', processedItem, index)" />
|
|
25
|
+
<span :class="cx('label')" v-bind="getPTOptions('label', processedItem, index)">{{ getItemLabel(processedItem) }}</span>
|
|
26
26
|
</a>
|
|
27
27
|
</router-link>
|
|
28
|
-
<a v-else v-ripple :href="getItemProp(processedItem, 'url')" :class="cx('action')" :target="getItemProp(processedItem, 'target')" tabindex="-1" aria-hidden="true" v-bind="getPTOptions(processedItem,
|
|
28
|
+
<a v-else v-ripple :href="getItemProp(processedItem, 'url')" :class="cx('action')" :target="getItemProp(processedItem, 'target')" tabindex="-1" aria-hidden="true" v-bind="getPTOptions('action', processedItem, index)">
|
|
29
29
|
<template v-if="isItemGroup(processedItem)">
|
|
30
|
-
<component v-if="templates.submenuicon" :is="templates.submenuicon" :class="cx('submenuIcon')" :active="isItemActive(processedItem)" v-bind="getPTOptions(processedItem,
|
|
31
|
-
<component v-else :is="isItemActive(processedItem) ? 'ChevronDownIcon' : 'ChevronRightIcon'" :class="cx('submenuIcon')" v-bind="getPTOptions(processedItem,
|
|
30
|
+
<component v-if="templates.submenuicon" :is="templates.submenuicon" :class="cx('submenuIcon')" :active="isItemActive(processedItem)" v-bind="getPTOptions('submenuIcon', processedItem, index)" />
|
|
31
|
+
<component v-else :is="isItemActive(processedItem) ? 'ChevronDownIcon' : 'ChevronRightIcon'" :class="cx('submenuIcon')" v-bind="getPTOptions('submenuIcon', processedItem, index)" />
|
|
32
32
|
</template>
|
|
33
33
|
<component v-if="templates.itemicon" :is="templates.itemicon" :item="processedItem.item" :class="[cx('icon'), getItemProp(processedItem, 'icon')]" />
|
|
34
|
-
<span v-else-if="getItemProp(processedItem, 'icon')" :class="[cx('icon'), getItemProp(processedItem, 'icon')]" v-bind="getPTOptions(processedItem,
|
|
35
|
-
<span :class="cx('label')" v-bind="getPTOptions(processedItem,
|
|
34
|
+
<span v-else-if="getItemProp(processedItem, 'icon')" :class="[cx('icon'), getItemProp(processedItem, 'icon')]" v-bind="getPTOptions('icon', processedItem, index)" />
|
|
35
|
+
<span :class="cx('label')" v-bind="getPTOptions('label', processedItem, index)">{{ getItemLabel(processedItem) }}</span>
|
|
36
36
|
</a>
|
|
37
37
|
</template>
|
|
38
38
|
<component v-else :is="templates.item" :item="processedItem.item"></component>
|
|
@@ -127,9 +127,11 @@ export default {
|
|
|
127
127
|
getItemLabel(processedItem) {
|
|
128
128
|
return this.getItemProp(processedItem, 'label');
|
|
129
129
|
},
|
|
130
|
-
getPTOptions(processedItem,
|
|
130
|
+
getPTOptions(key, processedItem, index) {
|
|
131
131
|
return this.ptm(key, {
|
|
132
132
|
context: {
|
|
133
|
+
item: processedItem,
|
|
134
|
+
index,
|
|
133
135
|
active: this.isItemActive(processedItem),
|
|
134
136
|
focused: this.isItemFocused(processedItem)
|
|
135
137
|
}
|
|
@@ -155,9 +155,11 @@ var script$2 = {
|
|
|
155
155
|
getItemLabel: function getItemLabel(processedItem) {
|
|
156
156
|
return this.getItemProp(processedItem, 'label');
|
|
157
157
|
},
|
|
158
|
-
getPTOptions: function getPTOptions(processedItem,
|
|
158
|
+
getPTOptions: function getPTOptions(key, processedItem, index) {
|
|
159
159
|
return this.ptm(key, {
|
|
160
160
|
context: {
|
|
161
|
+
item: processedItem,
|
|
162
|
+
index: index,
|
|
161
163
|
active: this.isItemActive(processedItem),
|
|
162
164
|
focused: this.isItemFocused(processedItem)
|
|
163
165
|
}
|
|
@@ -246,7 +248,7 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
246
248
|
"aria-level": $props.level + 1,
|
|
247
249
|
"aria-setsize": $options.getAriaSetSize(),
|
|
248
250
|
"aria-posinset": $options.getAriaPosInset(index)
|
|
249
|
-
}, $options.getPTOptions(processedItem,
|
|
251
|
+
}, $options.getPTOptions('menuitem', processedItem, index), {
|
|
250
252
|
"data-p-focused": $options.isItemFocused(processedItem),
|
|
251
253
|
"data-p-disabled": $options.isItemDisabled(processedItem)
|
|
252
254
|
}), [vue.createElementVNode("div", vue.mergeProps({
|
|
@@ -254,7 +256,7 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
254
256
|
onClick: function onClick($event) {
|
|
255
257
|
return $options.onItemClick($event, processedItem);
|
|
256
258
|
}
|
|
257
|
-
}, $options.getPTOptions(processedItem,
|
|
259
|
+
}, $options.getPTOptions('content', processedItem, index)), [!$props.templates.item ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
258
260
|
key: 0
|
|
259
261
|
}, [$options.getItemProp(processedItem, 'to') && !$options.isItemDisabled(processedItem) ? (vue.openBlock(), vue.createBlock(_component_router_link, {
|
|
260
262
|
key: 0,
|
|
@@ -277,16 +279,16 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
277
279
|
onClick: function onClick($event) {
|
|
278
280
|
return $options.onItemActionClick($event, navigate);
|
|
279
281
|
}
|
|
280
|
-
}, $options.getPTOptions(processedItem,
|
|
282
|
+
}, $options.getPTOptions('action', processedItem, index)), [$props.templates.itemicon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.itemicon), {
|
|
281
283
|
key: 0,
|
|
282
284
|
item: processedItem.item,
|
|
283
285
|
"class": vue.normalizeClass([_ctx.cx('icon'), $options.getItemProp(processedItem, 'icon')])
|
|
284
286
|
}, null, 8, ["item", "class"])) : $options.getItemProp(processedItem, 'icon') ? (vue.openBlock(), vue.createElementBlock("span", vue.mergeProps({
|
|
285
287
|
key: 1,
|
|
286
288
|
"class": [_ctx.cx('icon'), $options.getItemProp(processedItem, 'icon')]
|
|
287
|
-
}, $options.getPTOptions(processedItem,
|
|
289
|
+
}, $options.getPTOptions('icon', processedItem, index)), null, 16)) : vue.createCommentVNode("", true), vue.createElementVNode("span", vue.mergeProps({
|
|
288
290
|
"class": _ctx.cx('label')
|
|
289
|
-
}, $options.getPTOptions(processedItem,
|
|
291
|
+
}, $options.getPTOptions('label', processedItem, index)), vue.toDisplayString($options.getItemLabel(processedItem)), 17)], 16, _hoisted_4$1)), [[_directive_ripple]])];
|
|
290
292
|
}),
|
|
291
293
|
_: 2
|
|
292
294
|
}, 1032, ["to"])) : vue.withDirectives((vue.openBlock(), vue.createElementBlock("a", vue.mergeProps({
|
|
@@ -296,25 +298,25 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
296
298
|
target: $options.getItemProp(processedItem, 'target'),
|
|
297
299
|
tabindex: "-1",
|
|
298
300
|
"aria-hidden": "true"
|
|
299
|
-
}, $options.getPTOptions(processedItem,
|
|
301
|
+
}, $options.getPTOptions('action', processedItem, index)), [$options.isItemGroup(processedItem) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
300
302
|
key: 0
|
|
301
303
|
}, [$props.templates.submenuicon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.submenuicon), vue.mergeProps({
|
|
302
304
|
key: 0,
|
|
303
305
|
"class": _ctx.cx('submenuIcon'),
|
|
304
306
|
active: $options.isItemActive(processedItem)
|
|
305
|
-
}, $options.getPTOptions(processedItem,
|
|
307
|
+
}, $options.getPTOptions('submenuIcon', processedItem, index)), null, 16, ["class", "active"])) : (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($options.isItemActive(processedItem) ? 'ChevronDownIcon' : 'ChevronRightIcon'), vue.mergeProps({
|
|
306
308
|
key: 1,
|
|
307
309
|
"class": _ctx.cx('submenuIcon')
|
|
308
|
-
}, $options.getPTOptions(processedItem,
|
|
310
|
+
}, $options.getPTOptions('submenuIcon', processedItem, index)), null, 16, ["class"]))], 64)) : vue.createCommentVNode("", true), $props.templates.itemicon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.itemicon), {
|
|
309
311
|
key: 1,
|
|
310
312
|
item: processedItem.item,
|
|
311
313
|
"class": vue.normalizeClass([_ctx.cx('icon'), $options.getItemProp(processedItem, 'icon')])
|
|
312
314
|
}, null, 8, ["item", "class"])) : $options.getItemProp(processedItem, 'icon') ? (vue.openBlock(), vue.createElementBlock("span", vue.mergeProps({
|
|
313
315
|
key: 2,
|
|
314
316
|
"class": [_ctx.cx('icon'), $options.getItemProp(processedItem, 'icon')]
|
|
315
|
-
}, $options.getPTOptions(processedItem,
|
|
317
|
+
}, $options.getPTOptions('icon', processedItem, index)), null, 16)) : vue.createCommentVNode("", true), vue.createElementVNode("span", vue.mergeProps({
|
|
316
318
|
"class": _ctx.cx('label')
|
|
317
|
-
}, $options.getPTOptions(processedItem,
|
|
319
|
+
}, $options.getPTOptions('label', processedItem, index)), vue.toDisplayString($options.getItemLabel(processedItem)), 17)], 16, _hoisted_5$1)), [[_directive_ripple]])], 64)) : (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.item), {
|
|
318
320
|
key: 1,
|
|
319
321
|
item: processedItem.item
|
|
320
322
|
}, null, 8, ["item"]))], 16, _hoisted_3$1), vue.createVNode(vue.Transition, {
|
|
@@ -814,9 +816,10 @@ var script = {
|
|
|
814
816
|
getItemLabel: function getItemLabel(item) {
|
|
815
817
|
return this.getItemProp(item, 'label');
|
|
816
818
|
},
|
|
817
|
-
getPTOptions: function getPTOptions(item,
|
|
819
|
+
getPTOptions: function getPTOptions(key, item, index) {
|
|
818
820
|
return this.ptm(key, {
|
|
819
|
-
|
|
821
|
+
context: {
|
|
822
|
+
index: index,
|
|
820
823
|
active: this.isItemActive(item),
|
|
821
824
|
focused: this.isItemFocused(item)
|
|
822
825
|
}
|
|
@@ -1013,12 +1016,12 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1013
1016
|
onKeydown: function onKeydown($event) {
|
|
1014
1017
|
return $options.onHeaderKeyDown($event, item);
|
|
1015
1018
|
}
|
|
1016
|
-
}, $options.getPTOptions(item,
|
|
1019
|
+
}, $options.getPTOptions('header', item, index), {
|
|
1017
1020
|
"data-p-highlight": $options.isItemActive(item),
|
|
1018
1021
|
"data-p-disabled": $options.isItemDisabled(item)
|
|
1019
1022
|
}), [vue.createElementVNode("div", vue.mergeProps({
|
|
1020
1023
|
"class": _ctx.cx('headerContent')
|
|
1021
|
-
}, $options.getPTOptions(item,
|
|
1024
|
+
}, $options.getPTOptions('headerContent', item, index)), [!_ctx.$slots.item ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
1022
1025
|
key: 0
|
|
1023
1026
|
}, [$options.getItemProp(item, 'to') && !$options.isItemDisabled(item) ? (vue.openBlock(), vue.createBlock(_component_router_link, {
|
|
1024
1027
|
key: 0,
|
|
@@ -1040,16 +1043,16 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1040
1043
|
onClick: function onClick($event) {
|
|
1041
1044
|
return $options.onHeaderActionClick($event, navigate);
|
|
1042
1045
|
}
|
|
1043
|
-
}, $options.getPTOptions(item,
|
|
1046
|
+
}, $options.getPTOptions('headerAction', item, index)), [_ctx.$slots.headericon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.$slots.headericon), {
|
|
1044
1047
|
key: 0,
|
|
1045
1048
|
item: item,
|
|
1046
1049
|
"class": vue.normalizeClass([_ctx.cx('headerIcon'), $options.getItemProp(item, 'icon')])
|
|
1047
1050
|
}, null, 8, ["item", "class"])) : $options.getItemProp(item, 'icon') ? (vue.openBlock(), vue.createElementBlock("span", vue.mergeProps({
|
|
1048
1051
|
key: 1,
|
|
1049
1052
|
"class": [_ctx.cx('headerIcon'), $options.getItemProp(item, 'icon')]
|
|
1050
|
-
}, $options.getPTOptions(item,
|
|
1053
|
+
}, $options.getPTOptions('headerIcon', item, index)), null, 16)) : vue.createCommentVNode("", true), vue.createElementVNode("span", vue.mergeProps({
|
|
1051
1054
|
"class": _ctx.cx('headerLabel')
|
|
1052
|
-
}, $options.getPTOptions(item,
|
|
1055
|
+
}, $options.getPTOptions('headerLabel', item, index)), vue.toDisplayString($options.getItemLabel(item)), 17)], 16, _hoisted_3)];
|
|
1053
1056
|
}),
|
|
1054
1057
|
_: 2
|
|
1055
1058
|
}, 1032, ["to"])) : (vue.openBlock(), vue.createElementBlock("a", vue.mergeProps({
|
|
@@ -1057,13 +1060,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1057
1060
|
href: $options.getItemProp(item, 'url'),
|
|
1058
1061
|
"class": _ctx.cx('headerAction'),
|
|
1059
1062
|
tabindex: -1
|
|
1060
|
-
}, $options.getPTOptions(item,
|
|
1063
|
+
}, $options.getPTOptions('headerAction', item, index)), [$options.getItemProp(item, 'items') ? vue.renderSlot(_ctx.$slots, "submenuicon", {
|
|
1061
1064
|
key: 0,
|
|
1062
1065
|
active: $options.isItemActive(item)
|
|
1063
1066
|
}, function () {
|
|
1064
1067
|
return [(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($options.isItemActive(item) ? 'ChevronDownIcon' : 'ChevronRightIcon'), vue.mergeProps({
|
|
1065
1068
|
"class": _ctx.cx('submenuIcon')
|
|
1066
|
-
}, $options.getPTOptions(item,
|
|
1069
|
+
}, $options.getPTOptions('submenuIcon', item, index)), null, 16, ["class"]))];
|
|
1067
1070
|
}) : vue.createCommentVNode("", true), _ctx.$slots.headericon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.$slots.headericon), {
|
|
1068
1071
|
key: 1,
|
|
1069
1072
|
item: item,
|
|
@@ -1071,9 +1074,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1071
1074
|
}, null, 8, ["item", "class"])) : $options.getItemProp(item, 'icon') ? (vue.openBlock(), vue.createElementBlock("span", vue.mergeProps({
|
|
1072
1075
|
key: 2,
|
|
1073
1076
|
"class": [_ctx.cx('headerIcon'), $options.getItemProp(item, 'icon')]
|
|
1074
|
-
}, $options.getPTOptions(item,
|
|
1077
|
+
}, $options.getPTOptions('headerIcon', item, index)), null, 16)) : vue.createCommentVNode("", true), vue.createElementVNode("span", vue.mergeProps({
|
|
1075
1078
|
"class": _ctx.cx('headerLabel')
|
|
1076
|
-
}, $options.getPTOptions(item,
|
|
1079
|
+
}, $options.getPTOptions('headerLabel', item, index)), vue.toDisplayString($options.getItemLabel(item)), 17)], 16, _hoisted_4))], 64)) : (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.$slots.item), {
|
|
1077
1080
|
key: 1,
|
|
1078
1081
|
item: item
|
|
1079
1082
|
}, null, 8, ["item"]))], 16)], 16, _hoisted_2), vue.createVNode(vue.Transition, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("primevue/icons/chevrondown"),t=require("primevue/icons/chevronright"),n=require("primevue/utils"),i=require("primevue/basecomponent"),o=require("primevue/usestyle"),r=require("primevue/ripple"),s=require("vue");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=a(e),l=a(t),m=a(i),u=a(r),d=o.useStyle("\n.p-panelmenu .p-panelmenu-header-action {\n display: flex;\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n}\n\n.p-panelmenu .p-panelmenu-header-action:focus {\n z-index: 1;\n}\n\n.p-panelmenu .p-submenu-list {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.p-panelmenu .p-menuitem-link {\n display: flex;\n align-items: center;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n position: relative;\n overflow: hidden;\n}\n\n.p-panelmenu .p-menuitem-text {\n line-height: 1;\n}\n",{name:"panelmenu",manual:!0}),p={name:"BasePanelMenu",extends:m.default,props:{model:{type:Array,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},css:{classes:{root:"p-panelmenu p-component",panel:"p-panelmenu-panel",header:function(e){var t=e.instance,n=e.item;return["p-panelmenu-header",{"p-highlight":t.isItemActive(n),"p-disabled":t.isItemDisabled(n)}]},headerContent:"p-panelmenu-header-content",headerAction:function(e){return["p-panelmenu-header-action",{"router-link-active":e.isActive,"router-link-active-exact":e.instance.exact&&e.isExactActive}]},headerIcon:"p-menuitem-icon",headerLabel:"p-menuitem-text",toggleableContent:"p-toggleable-content",menuContent:"p-panelmenu-content",menu:"p-panelmenu-root-list",menuitem:function(e){var t=e.instance,n=e.processedItem;return["p-menuitem",{"p-focus":t.isItemFocused(n),"p-disabled":t.isItemDisabled(n)}]},content:"p-menuitem-content",action:function(e){return["p-menuitem-link",{"router-link-active":e.isActive,"router-link-active-exact":e.props.exact&&e.isExactActive}]},icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator"},loadStyle:d.load},provide:function(){return{$parentInstance:this}}},h={name:"PanelMenuSub",hostName:"PanelMenu",extends:m.default,emits:["item-toggle"],props:{panelId:{type:String,default:null},focusedItemId:{type:String,default:null},items:{type:Array,default:null},level:{type:Number,default:0},templates:{type:Object,default:null},activeItemPath:{type:Object,default:null},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:-1}},methods:{getItemId:function(e){return"".concat(this.panelId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,t,i){return e&&e.item?n.ObjectUtils.getItemValue(e.item[t],i):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t){return this.ptm(t,{context:{active:this.isItemActive(e),focused:this.isItemFocused(e)}})},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return n.ObjectUtils.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-toggle",{processedItem:t,expanded:!this.isItemActive(t)})},onItemToggle:function(e){this.$emit("item-toggle",e)},onItemActionClick:function(e,t){t&&t(e)},getAriaSetSize:function(){var e=this;return this.items.filter((function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")})).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter((function(e){return t.isItemVisible(e)&&t.getItemProp(e,"separator")})).length+1}},components:{ChevronRightIcon:l.default,ChevronDownIcon:c.default},directives:{ripple:u.default}},f=["tabindex"],I=["id","aria-label","aria-expanded","aria-level","aria-setsize","aria-posinset","data-p-focused","data-p-disabled"],g=["onClick"],v=["href","onClick"],y=["href","target"];function b(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function P(e,t){if(e){if("string"==typeof e)return k(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?k(e,t):void 0}}function k(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function x(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i,o,r,s,a=[],c=!0,l=!1;try{if(r=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(i=r.call(n)).done)&&(a.push(i.value),a.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(l)throw o}}return a}}function E(e){if(Array.isArray(e))return e}h.render=function(e,t,n,i,o,r){var a=s.resolveComponent("router-link"),c=s.resolveComponent("PanelMenuSub",!0),l=s.resolveDirective("ripple");return s.openBlock(),s.createElementBlock("ul",{class:s.normalizeClass(e.cx("submenu")),tabindex:n.tabindex},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(n.items,(function(t,i){return s.openBlock(),s.createElementBlock(s.Fragment,{key:r.getItemKey(t)},[r.isItemVisible(t)&&!r.getItemProp(t,"separator")?(s.openBlock(),s.createElementBlock("li",s.mergeProps({key:0,id:r.getItemId(t),class:[e.cx("menuitem",{processedItem:t}),r.getItemProp(t,"class")],style:r.getItemProp(t,"style"),role:"treeitem","aria-label":r.getItemLabel(t),"aria-expanded":r.isItemGroup(t)?r.isItemActive(t):void 0,"aria-level":n.level+1,"aria-setsize":r.getAriaSetSize(),"aria-posinset":r.getAriaPosInset(i)},r.getPTOptions(t,"menuitem"),{"data-p-focused":r.isItemFocused(t),"data-p-disabled":r.isItemDisabled(t)}),[s.createElementVNode("div",s.mergeProps({class:e.cx("content"),onClick:function(e){return r.onItemClick(e,t)}},r.getPTOptions(t,"content")),[n.templates.item?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.item),{key:1,item:t.item},null,8,["item"])):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[r.getItemProp(t,"to")&&!r.isItemDisabled(t)?(s.openBlock(),s.createBlock(a,{key:0,to:r.getItemProp(t,"to"),custom:""},{default:s.withCtx((function(i){var o=i.navigate,a=i.href,c=i.isActive,m=i.isExactActive;return[s.withDirectives((s.openBlock(),s.createElementBlock("a",s.mergeProps({href:a,class:e.cx("action",{isActive:c,isExactActive:m}),tabindex:"-1","aria-hidden":"true",onClick:function(e){return r.onItemActionClick(e,o)}},r.getPTOptions(t,"action")),[n.templates.itemicon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.itemicon),{key:0,item:t.item,class:s.normalizeClass([e.cx("icon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:1,class:[e.cx("icon"),r.getItemProp(t,"icon")]},r.getPTOptions(t,"icon")),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("label")},r.getPTOptions(t,"label")),s.toDisplayString(r.getItemLabel(t)),17)],16,v)),[[l]])]})),_:2},1032,["to"])):s.withDirectives((s.openBlock(),s.createElementBlock("a",s.mergeProps({key:1,href:r.getItemProp(t,"url"),class:e.cx("action"),target:r.getItemProp(t,"target"),tabindex:"-1","aria-hidden":"true"},r.getPTOptions(t,"action")),[r.isItemGroup(t)?(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[n.templates.submenuicon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.submenuicon),s.mergeProps({key:0,class:e.cx("submenuIcon"),active:r.isItemActive(t)},r.getPTOptions(t,"submenuIcon")),null,16,["class","active"])):(s.openBlock(),s.createBlock(s.resolveDynamicComponent(r.isItemActive(t)?"ChevronDownIcon":"ChevronRightIcon"),s.mergeProps({key:1,class:e.cx("submenuIcon")},r.getPTOptions(t,"submenuIcon")),null,16,["class"]))],64)):s.createCommentVNode("",!0),n.templates.itemicon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.itemicon),{key:1,item:t.item,class:s.normalizeClass([e.cx("icon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:2,class:[e.cx("icon"),r.getItemProp(t,"icon")]},r.getPTOptions(t,"icon")),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("label")},r.getPTOptions(t,"label")),s.toDisplayString(r.getItemLabel(t)),17)],16,y)),[[l]])],64))],16,g),s.createVNode(s.Transition,{name:"p-toggleable-content"},{default:s.withCtx((function(){return[s.withDirectives(s.createElementVNode("div",s.mergeProps({class:e.cx("toggleableContent")},e.ptm("toggleableContent")),[r.isItemVisible(t)&&r.isItemGroup(t)?(s.openBlock(),s.createBlock(c,s.mergeProps({key:0,id:r.getItemId(t)+"_list",role:"group",panelId:n.panelId,focusedItemId:n.focusedItemId,items:t.items,level:n.level+1,templates:n.templates,activeItemPath:n.activeItemPath,exact:n.exact,onItemToggle:r.onItemToggle,pt:e.pt},e.ptm("submenu")),null,16,["id","panelId","focusedItemId","items","level","templates","activeItemPath","exact","onItemToggle","pt"])):s.createCommentVNode("",!0)],16),[[s.vShow,r.isItemActive(t)]])]})),_:2},1024)],16,I)):s.createCommentVNode("",!0),r.isItemVisible(t)&&r.getItemProp(t,"separator")?(s.openBlock(),s.createElementBlock("li",s.mergeProps({key:1,style:r.getItemProp(t,"style"),class:[e.cx("separator"),r.getItemProp(t,"class")],role:"separator"},e.ptm("separator")),null,16)):s.createCommentVNode("",!0)],64)})),128))],10,f)};var C={name:"PanelMenuList",hostName:"PanelMenu",extends:m.default,emits:["item-toggle","header-focus"],props:{panelId:{type:String,default:null},items:{type:Array,default:null},templates:{type:Object,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0}},searchTimeout:null,searchValue:null,data:function(){return{focused:!1,focusedItem:null,activeItemPath:[]}},watch:{expandedKeys:function(e){this.autoUpdateActiveItemPath(e)}},mounted:function(){this.autoUpdateActiveItemPath(this.expandedKeys)},methods:{getItemProp:function(e,t){return e&&e.item?n.ObjectUtils.getItemValue(e.item[t]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.parentKey}))},isItemGroup:function(e){return n.ObjectUtils.isNotEmpty(e.items)},onFocus:function(e){this.focused=!0,this.focusedItem=this.focusedItem||(this.isElementInPanel(e,e.relatedTarget)?this.findFirstItem():this.findLastItem())},onBlur:function(){this.focused=!1,this.focusedItem=null,this.searchValue=""},onKeyDown:function(e){var 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":case"Tab":case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&n.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onArrowDownKey:function(e){var t=n.ObjectUtils.isNotEmpty(this.focusedItem)?this.findNextItem(this.focusedItem):this.findFirstItem();this.changeFocusedItem({originalEvent:e,processedItem:t,focusOnNext:!0}),e.preventDefault()},onArrowUpKey:function(e){var t=n.ObjectUtils.isNotEmpty(this.focusedItem)?this.findPrevItem(this.focusedItem):this.findLastItem();this.changeFocusedItem({originalEvent:e,processedItem:t,selfCheck:!0}),e.preventDefault()},onArrowLeftKey:function(e){var t=this;n.ObjectUtils.isNotEmpty(this.focusedItem)&&(this.activeItemPath.some((function(e){return e.key===t.focusedItem.key}))?this.activeItemPath=this.activeItemPath.filter((function(e){return e.key!==t.focusedItem.key})):this.focusedItem=n.ObjectUtils.isNotEmpty(this.focusedItem.parent)?this.focusedItem.parent:this.focusedItem,e.preventDefault())},onArrowRightKey:function(e){var t=this;if(n.ObjectUtils.isNotEmpty(this.focusedItem)){if(this.isItemGroup(this.focusedItem))this.activeItemPath.some((function(e){return e.key===t.focusedItem.key}))?this.onArrowDownKey(e):(this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==t.focusedItem.parentKey})),this.activeItemPath.push(this.focusedItem));e.preventDefault()}},onHomeKey:function(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findFirstItem(),allowHeaderFocus:!1}),e.preventDefault()},onEndKey:function(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findLastItem(),focusOnNext:!0,allowHeaderFocus:!1}),e.preventDefault()},onEnterKey:function(e){if(n.ObjectUtils.isNotEmpty(this.focusedItem)){var t=n.DomHandler.findSingle(this.$el,'li[id="'.concat("".concat(this.focusedItemId),'"]')),i=t&&(n.DomHandler.findSingle(t,'[data-pc-section="action"]')||n.DomHandler.findSingle(t,"a,button"));i?i.click():t&&t.click()}e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},onItemToggle:function(e){var t=e.processedItem,i=e.expanded;this.expandedKeys?this.$emit("item-toggle",{item:t.item,expanded:i}):(this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==t.parentKey})),i&&this.activeItemPath.push(t)),this.focusedItem=t,n.DomHandler.focus(this.$el)},isElementInPanel:function(e,t){var n=e.currentTarget.closest('[data-pc-section="panel"]');return n&&n.contains(t)},isItemMatched:function(e){return this.isValidItem(e)&&this.getItemLabel(e).toLocaleLowerCase(this.searchLocale).startsWith(this.searchValue.toLocaleLowerCase(this.searchLocale))},isVisibleItem:function(e){return!!e&&(0===e.level||this.isItemActive(e))&&this.isItemVisible(e)},isValidItem:function(e){return!!e&&!this.isItemDisabled(e)},findFirstItem:function(){var e=this;return this.visibleItems.find((function(t){return e.isValidItem(t)}))},findLastItem:function(){var e=this;return n.ObjectUtils.findLast(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItem:function(e){var t=this,n=this.visibleItems.findIndex((function(t){return t.key===e.key}));return(n<this.visibleItems.length-1?this.visibleItems.slice(n+1).find((function(e){return t.isValidItem(e)})):void 0)||e},findPrevItem:function(e){var t=this,i=this.visibleItems.findIndex((function(t){return t.key===e.key}));return(i>0?n.ObjectUtils.findLast(this.visibleItems.slice(0,i),(function(e){return t.isValidItem(e)})):void 0)||e},searchItems:function(e,t){var i=this;this.searchValue=(this.searchValue||"")+t;var o=null,r=!1;if(n.ObjectUtils.isNotEmpty(this.focusedItem)){var s=this.visibleItems.findIndex((function(e){return e.key===i.focusedItem.key}));o=this.visibleItems.slice(s).find((function(e){return i.isItemMatched(e)})),o=n.ObjectUtils.isEmpty(o)?this.visibleItems.slice(0,s).find((function(e){return i.isItemMatched(e)})):o}else o=this.visibleItems.find((function(e){return i.isItemMatched(e)}));return n.ObjectUtils.isNotEmpty(o)&&(r=!0),n.ObjectUtils.isEmpty(o)&&n.ObjectUtils.isEmpty(this.focusedItem)&&(o=this.findFirstItem()),n.ObjectUtils.isNotEmpty(o)&&this.changeFocusedItem({originalEvent:e,processedItem:o,allowHeaderFocus:!1}),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.searchTimeout=null}),500),r},changeFocusedItem:function(e){var t=e.originalEvent,i=e.processedItem,o=e.focusOnNext,r=e.selfCheck,s=e.allowHeaderFocus,a=void 0===s||s;n.ObjectUtils.isNotEmpty(this.focusedItem)&&this.focusedItem.key!==i.key?(this.focusedItem=i,this.scrollInView()):a&&this.$emit("header-focus",{originalEvent:t,focusOnNext:o,selfCheck:r})},scrollInView:function(){var e=n.DomHandler.findSingle(this.$el,'li[id="'.concat("".concat(this.focusedItemId),'"]'));e&&e.scrollIntoView&&e.scrollIntoView({block:"nearest",inline:"start"})},autoUpdateActiveItemPath:function(e){var t=this;this.activeItemPath=Object.entries(e||{}).reduce((function(e,n){var i,o,r=(o=2,E(i=n)||x(i,o)||P(i,o)||b());if(r[1]){var s=t.findProcessedItemByItemKey(r[0]);s&&e.push(s)}return e}),[])},findProcessedItemByItemKey:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(!(t=t||0===n&&this.processedItems))return null;for(var i=0;i<t.length;i++){var o=t[i];if(this.getItemProp(o,"key")===e)return o;var r=this.findProcessedItemByItemKey(e,o.items,n+1);if(r)return r}},createProcessedItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",r=[];return e&&e.forEach((function(e,s){var a=(""!==o?o+"_":"")+s,c={item:e,index:s,level:n,key:a,parent:i,parentKey:o};c.items=t.createProcessedItems(e.items,n+1,c,a),r.push(c)})),r},flatItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e&&e.forEach((function(e){t.isVisibleItem(e)&&(n.push(e),t.flatItems(e.items,n))})),n}},computed:{processedItems:function(){return this.createProcessedItems(this.items||[])},visibleItems:function(){return this.flatItems(this.processedItems)},focusedItemId:function(){return n.ObjectUtils.isNotEmpty(this.focusedItem)?"".concat(this.panelId,"_").concat(this.focusedItem.key):null}},components:{PanelMenuSub:h}};function D(e){return D="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},D(e)}function O(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?O(Object(n),!0).forEach((function(t){w(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):O(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function w(e,t,n){return(t=B(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function B(e){var t=H(e,"string");return"symbol"===D(t)?t:String(t)}function H(e,t){if("object"!==D(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==D(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}C.render=function(e,t,n,i,o,r){var a=s.resolveComponent("PanelMenuSub");return s.openBlock(),s.createBlock(a,s.mergeProps({id:n.panelId+"_list",class:e.cx("menu"),role:"tree",tabindex:-1,"aria-activedescendant":o.focused?r.focusedItemId:void 0,panelId:n.panelId,focusedItemId:o.focused?r.focusedItemId:void 0,items:r.processedItems,templates:n.templates,activeItemPath:o.activeItemPath,exact:n.exact,onFocus:r.onFocus,onBlur:r.onBlur,onKeydown:r.onKeyDown,onItemToggle:r.onItemToggle,pt:e.pt},e.ptm("menu")),null,16,["id","class","aria-activedescendant","panelId","focusedItemId","items","templates","activeItemPath","exact","onFocus","onBlur","onKeydown","onItemToggle","pt"])};var K={name:"PanelMenu",extends:p,emits:["update:expandedKeys","panel-open","panel-close"],data:function(){return{id:this.$attrs.id,activeItem:null}},watch:{"$attrs.id":function(e){this.id=e||n.UniqueComponentId()}},mounted:function(){this.id=this.id||n.UniqueComponentId()},methods:{getItemProp:function(e,t){return e?n.ObjectUtils.getItemValue(e[t]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t){return this.ptm(t,{options:{active:this.isItemActive(e),focused:this.isItemFocused(e)}})},isItemActive:function(e){return this.expandedKeys?this.expandedKeys[this.getItemProp(e,"key")]:n.ObjectUtils.equals(e,this.activeItem)},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return n.ObjectUtils.equals(e,this.activeItem)},getPanelId:function(e){return"".concat(this.id,"_").concat(e)},getPanelKey:function(e){return this.getPanelId(e)},getHeaderId:function(e){return"".concat(this.getPanelId(e),"_header")},getContentId:function(e){return"".concat(this.getPanelId(e),"_content")},onHeaderClick:function(e,t){this.isItemDisabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),this.changeActiveItem(e,t),n.DomHandler.focus(e.currentTarget))},onHeaderKeyDown:function(e,t){switch(e.code){case"ArrowDown":this.onHeaderArrowDownKey(e);break;case"ArrowUp":this.onHeaderArrowUpKey(e);break;case"Home":this.onHeaderHomeKey(e);break;case"End":this.onHeaderEndKey(e);break;case"Enter":case"Space":this.onHeaderEnterKey(e,t)}},onHeaderArrowDownKey:function(e){var t=!0===n.DomHandler.getAttribute(e.currentTarget,"data-p-highlight")?n.DomHandler.findSingle(e.currentTarget.nextElementSibling,'[data-pc-section="menu"]'):null;t?n.DomHandler.focus(t):this.updateFocusedHeader({originalEvent:e,focusOnNext:!0}),e.preventDefault()},onHeaderArrowUpKey:function(e){var t=this.findPrevHeader(e.currentTarget.parentElement)||this.findLastHeader(),i=!0===n.DomHandler.getAttribute(t,"data-p-highlight")?n.DomHandler.findSingle(t.nextElementSibling,'[data-pc-section="menu"]'):null;i?n.DomHandler.focus(i):this.updateFocusedHeader({originalEvent:e,focusOnNext:!1}),e.preventDefault()},onHeaderHomeKey:function(e){this.changeFocusedHeader(e,this.findFirstHeader()),e.preventDefault()},onHeaderEndKey:function(e){this.changeFocusedHeader(e,this.findLastHeader()),e.preventDefault()},onHeaderEnterKey:function(e,t){var i=n.DomHandler.findSingle(e.currentTarget,'[data-pc-section="headeraction"]');i?i.click():this.onHeaderClick(e,t),e.preventDefault()},onHeaderActionClick:function(e,t){t&&t(e)},findNextHeader:function(e){var t=n.DomHandler.findSingle(arguments.length>1&&void 0!==arguments[1]&&arguments[1]?e:e.nextElementSibling,'[data-pc-section="header"]');return t?n.DomHandler.getAttribute(t,"data-p-disabled")?this.findNextHeader(t.parentElement):t:null},findPrevHeader:function(e){var t=n.DomHandler.findSingle(arguments.length>1&&void 0!==arguments[1]&&arguments[1]?e:e.previousElementSibling,'[data-pc-section="header"]');return t?n.DomHandler.getAttribute(t,"data-p-disabled")?this.findPrevHeader(t.parentElement):t:null},findFirstHeader:function(){return this.findNextHeader(this.$el.firstElementChild,!0)},findLastHeader:function(){return this.findPrevHeader(this.$el.lastElementChild,!0)},updateFocusedHeader:function(e){var t=e.originalEvent,i=e.focusOnNext,o=e.selfCheck,r=t.currentTarget.closest('[data-pc-section="panel"]'),s=o?n.DomHandler.findSingle(r,'[data-pc-section="header"]'):i?this.findNextHeader(r):this.findPrevHeader(r);s?this.changeFocusedHeader(t,s):i?this.onHeaderHomeKey(t):this.onHeaderEndKey(t)},changeActiveItem:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!this.isItemDisabled(t)){var o=this.isItemActive(t),r=o?"panel-close":"panel-open";this.activeItem=i?t:this.activeItem&&n.ObjectUtils.equals(t,this.activeItem)?null:t,this.changeExpandedKeys({item:t,expanded:!o}),this.$emit(r,{originalEvent:e,item:t})}},changeExpandedKeys:function(e){var t=e.item,n=e.expanded,i=void 0!==n&&n;if(this.expandedKeys){var o=A({},this.expandedKeys);i?o[t.key]=!0:delete o[t.key],this.$emit("update:expandedKeys",o)}},changeFocusedHeader:function(e,t){t&&n.DomHandler.focus(t)}},components:{PanelMenuList:C,ChevronRightIcon:l.default,ChevronDownIcon:c.default}},N=["id"],S=["id","tabindex","aria-label","aria-expanded","aria-controls","aria-disabled","onClick","onKeydown","data-p-highlight","data-p-disabled"],V=["href","onClick"],j=["href"],T=["id","aria-labelledby"];K.render=function(e,t,n,i,o,r){var a=s.resolveComponent("router-link"),c=s.resolveComponent("PanelMenuList");return s.openBlock(),s.createElementBlock("div",s.mergeProps({id:o.id,class:e.cx("root")},e.ptm("root"),{"data-pc-name":"panelmenu"}),[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.model,(function(t,n){return s.openBlock(),s.createElementBlock(s.Fragment,{key:r.getPanelKey(n)},[r.isItemVisible(t)?(s.openBlock(),s.createElementBlock("div",s.mergeProps({key:0,style:r.getItemProp(t,"style"),class:[e.cx("panel"),r.getItemProp(t,"class")]},e.ptm("panel")),[s.createElementVNode("div",s.mergeProps({id:r.getHeaderId(n),class:[e.cx("header",{item:t}),r.getItemProp(t,"headerClass")],tabindex:r.isItemDisabled(t)?-1:e.tabindex,role:"button","aria-label":r.getItemLabel(t),"aria-expanded":r.isItemActive(t),"aria-controls":r.getContentId(n),"aria-disabled":r.isItemDisabled(t),onClick:function(e){return r.onHeaderClick(e,t)},onKeydown:function(e){return r.onHeaderKeyDown(e,t)}},r.getPTOptions(t,"header"),{"data-p-highlight":r.isItemActive(t),"data-p-disabled":r.isItemDisabled(t)}),[s.createElementVNode("div",s.mergeProps({class:e.cx("headerContent")},r.getPTOptions(t,"headerContent")),[e.$slots.item?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.$slots.item),{key:1,item:t},null,8,["item"])):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[r.getItemProp(t,"to")&&!r.isItemDisabled(t)?(s.openBlock(),s.createBlock(a,{key:0,to:r.getItemProp(t,"to"),custom:""},{default:s.withCtx((function(n){var i=n.navigate;return[s.createElementVNode("a",s.mergeProps({href:n.href,class:e.cx("headerAction",{isActive:n.isActive,isExactActive:n.isExactActive}),tabindex:-1,onClick:function(e){return r.onHeaderActionClick(e,i)}},r.getPTOptions(t,"headerAction")),[e.$slots.headericon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.$slots.headericon),{key:0,item:t,class:s.normalizeClass([e.cx("headerIcon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:1,class:[e.cx("headerIcon"),r.getItemProp(t,"icon")]},r.getPTOptions(t,"headerIcon")),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("headerLabel")},r.getPTOptions(t,"headerLabel")),s.toDisplayString(r.getItemLabel(t)),17)],16,V)]})),_:2},1032,["to"])):(s.openBlock(),s.createElementBlock("a",s.mergeProps({key:1,href:r.getItemProp(t,"url"),class:e.cx("headerAction"),tabindex:-1},r.getPTOptions(t,"headerAction")),[r.getItemProp(t,"items")?s.renderSlot(e.$slots,"submenuicon",{key:0,active:r.isItemActive(t)},(function(){return[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(r.isItemActive(t)?"ChevronDownIcon":"ChevronRightIcon"),s.mergeProps({class:e.cx("submenuIcon")},r.getPTOptions(t,"submenuIcon")),null,16,["class"]))]})):s.createCommentVNode("",!0),e.$slots.headericon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.$slots.headericon),{key:1,item:t,class:s.normalizeClass([e.cx("headerIcon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:2,class:[e.cx("headerIcon"),r.getItemProp(t,"icon")]},r.getPTOptions(t,"headerIcon")),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("headerLabel")},r.getPTOptions(t,"headerLabel")),s.toDisplayString(r.getItemLabel(t)),17)],16,j))],64))],16)],16,S),s.createVNode(s.Transition,{name:"p-toggleable-content"},{default:s.withCtx((function(){return[s.withDirectives(s.createElementVNode("div",s.mergeProps({id:r.getContentId(n),class:e.cx("toggleableContent"),role:"region","aria-labelledby":r.getHeaderId(n)},e.ptm("toggleableContent")),[r.getItemProp(t,"items")?(s.openBlock(),s.createElementBlock("div",s.mergeProps({key:0,class:e.cx("menuContent")},e.ptm("menuContent")),[s.createVNode(c,{panelId:r.getPanelId(n),items:r.getItemProp(t,"items"),templates:e.$slots,expandedKeys:e.expandedKeys,onItemToggle:r.changeExpandedKeys,onHeaderFocus:r.updateFocusedHeader,exact:e.exact,pt:e.pt},null,8,["panelId","items","templates","expandedKeys","onItemToggle","onHeaderFocus","exact","pt"])],16)):s.createCommentVNode("",!0)],16,T),[[s.vShow,r.isItemActive(t)]])]})),_:2},1024)],16)):s.createCommentVNode("",!0)],64)})),128))],16,N)},module.exports=K;
|
|
1
|
+
"use strict";var e=require("primevue/icons/chevrondown"),t=require("primevue/icons/chevronright"),n=require("primevue/utils"),i=require("primevue/basecomponent"),o=require("primevue/usestyle"),r=require("primevue/ripple"),s=require("vue");function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=a(e),l=a(t),m=a(i),u=a(r),d=o.useStyle("\n.p-panelmenu .p-panelmenu-header-action {\n display: flex;\n align-items: center;\n user-select: none;\n cursor: pointer;\n position: relative;\n text-decoration: none;\n}\n\n.p-panelmenu .p-panelmenu-header-action:focus {\n z-index: 1;\n}\n\n.p-panelmenu .p-submenu-list {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n\n.p-panelmenu .p-menuitem-link {\n display: flex;\n align-items: center;\n user-select: none;\n cursor: pointer;\n text-decoration: none;\n position: relative;\n overflow: hidden;\n}\n\n.p-panelmenu .p-menuitem-text {\n line-height: 1;\n}\n",{name:"panelmenu",manual:!0}),p={name:"BasePanelMenu",extends:m.default,props:{model:{type:Array,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},css:{classes:{root:"p-panelmenu p-component",panel:"p-panelmenu-panel",header:function(e){var t=e.instance,n=e.item;return["p-panelmenu-header",{"p-highlight":t.isItemActive(n),"p-disabled":t.isItemDisabled(n)}]},headerContent:"p-panelmenu-header-content",headerAction:function(e){return["p-panelmenu-header-action",{"router-link-active":e.isActive,"router-link-active-exact":e.instance.exact&&e.isExactActive}]},headerIcon:"p-menuitem-icon",headerLabel:"p-menuitem-text",toggleableContent:"p-toggleable-content",menuContent:"p-panelmenu-content",menu:"p-panelmenu-root-list",menuitem:function(e){var t=e.instance,n=e.processedItem;return["p-menuitem",{"p-focus":t.isItemFocused(n),"p-disabled":t.isItemDisabled(n)}]},content:"p-menuitem-content",action:function(e){return["p-menuitem-link",{"router-link-active":e.isActive,"router-link-active-exact":e.props.exact&&e.isExactActive}]},icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator"},loadStyle:d.load},provide:function(){return{$parentInstance:this}}},h={name:"PanelMenuSub",hostName:"PanelMenu",extends:m.default,emits:["item-toggle"],props:{panelId:{type:String,default:null},focusedItemId:{type:String,default:null},items:{type:Array,default:null},level:{type:Number,default:0},templates:{type:Object,default:null},activeItemPath:{type:Object,default:null},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:-1}},methods:{getItemId:function(e){return"".concat(this.panelId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,t,i){return e&&e.item?n.ObjectUtils.getItemValue(e.item[t],i):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t,n){return this.ptm(e,{context:{item:t,index:n,active:this.isItemActive(t),focused:this.isItemFocused(t)}})},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.key}))},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return n.ObjectUtils.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-toggle",{processedItem:t,expanded:!this.isItemActive(t)})},onItemToggle:function(e){this.$emit("item-toggle",e)},onItemActionClick:function(e,t){t&&t(e)},getAriaSetSize:function(){var e=this;return this.items.filter((function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")})).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter((function(e){return t.isItemVisible(e)&&t.getItemProp(e,"separator")})).length+1}},components:{ChevronRightIcon:l.default,ChevronDownIcon:c.default},directives:{ripple:u.default}},f=["tabindex"],I=["id","aria-label","aria-expanded","aria-level","aria-setsize","aria-posinset","data-p-focused","data-p-disabled"],g=["onClick"],v=["href","onClick"],y=["href","target"];function b(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function P(e,t){if(e){if("string"==typeof e)return k(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?k(e,t):void 0}}function k(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function x(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var i,o,r,s,a=[],c=!0,l=!1;try{if(r=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(i=r.call(n)).done)&&(a.push(i.value),a.length!==t);c=!0);}catch(e){l=!0,o=e}finally{try{if(!c&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(l)throw o}}return a}}function E(e){if(Array.isArray(e))return e}h.render=function(e,t,n,i,o,r){var a=s.resolveComponent("router-link"),c=s.resolveComponent("PanelMenuSub",!0),l=s.resolveDirective("ripple");return s.openBlock(),s.createElementBlock("ul",{class:s.normalizeClass(e.cx("submenu")),tabindex:n.tabindex},[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(n.items,(function(t,i){return s.openBlock(),s.createElementBlock(s.Fragment,{key:r.getItemKey(t)},[r.isItemVisible(t)&&!r.getItemProp(t,"separator")?(s.openBlock(),s.createElementBlock("li",s.mergeProps({key:0,id:r.getItemId(t),class:[e.cx("menuitem",{processedItem:t}),r.getItemProp(t,"class")],style:r.getItemProp(t,"style"),role:"treeitem","aria-label":r.getItemLabel(t),"aria-expanded":r.isItemGroup(t)?r.isItemActive(t):void 0,"aria-level":n.level+1,"aria-setsize":r.getAriaSetSize(),"aria-posinset":r.getAriaPosInset(i)},r.getPTOptions("menuitem",t,i),{"data-p-focused":r.isItemFocused(t),"data-p-disabled":r.isItemDisabled(t)}),[s.createElementVNode("div",s.mergeProps({class:e.cx("content"),onClick:function(e){return r.onItemClick(e,t)}},r.getPTOptions("content",t,i)),[n.templates.item?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.item),{key:1,item:t.item},null,8,["item"])):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[r.getItemProp(t,"to")&&!r.isItemDisabled(t)?(s.openBlock(),s.createBlock(a,{key:0,to:r.getItemProp(t,"to"),custom:""},{default:s.withCtx((function(o){var a=o.navigate,c=o.href,m=o.isActive,u=o.isExactActive;return[s.withDirectives((s.openBlock(),s.createElementBlock("a",s.mergeProps({href:c,class:e.cx("action",{isActive:m,isExactActive:u}),tabindex:"-1","aria-hidden":"true",onClick:function(e){return r.onItemActionClick(e,a)}},r.getPTOptions("action",t,i)),[n.templates.itemicon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.itemicon),{key:0,item:t.item,class:s.normalizeClass([e.cx("icon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:1,class:[e.cx("icon"),r.getItemProp(t,"icon")]},r.getPTOptions("icon",t,i)),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("label")},r.getPTOptions("label",t,i)),s.toDisplayString(r.getItemLabel(t)),17)],16,v)),[[l]])]})),_:2},1032,["to"])):s.withDirectives((s.openBlock(),s.createElementBlock("a",s.mergeProps({key:1,href:r.getItemProp(t,"url"),class:e.cx("action"),target:r.getItemProp(t,"target"),tabindex:"-1","aria-hidden":"true"},r.getPTOptions("action",t,i)),[r.isItemGroup(t)?(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[n.templates.submenuicon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.submenuicon),s.mergeProps({key:0,class:e.cx("submenuIcon"),active:r.isItemActive(t)},r.getPTOptions("submenuIcon",t,i)),null,16,["class","active"])):(s.openBlock(),s.createBlock(s.resolveDynamicComponent(r.isItemActive(t)?"ChevronDownIcon":"ChevronRightIcon"),s.mergeProps({key:1,class:e.cx("submenuIcon")},r.getPTOptions("submenuIcon",t,i)),null,16,["class"]))],64)):s.createCommentVNode("",!0),n.templates.itemicon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(n.templates.itemicon),{key:1,item:t.item,class:s.normalizeClass([e.cx("icon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:2,class:[e.cx("icon"),r.getItemProp(t,"icon")]},r.getPTOptions("icon",t,i)),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("label")},r.getPTOptions("label",t,i)),s.toDisplayString(r.getItemLabel(t)),17)],16,y)),[[l]])],64))],16,g),s.createVNode(s.Transition,{name:"p-toggleable-content"},{default:s.withCtx((function(){return[s.withDirectives(s.createElementVNode("div",s.mergeProps({class:e.cx("toggleableContent")},e.ptm("toggleableContent")),[r.isItemVisible(t)&&r.isItemGroup(t)?(s.openBlock(),s.createBlock(c,s.mergeProps({key:0,id:r.getItemId(t)+"_list",role:"group",panelId:n.panelId,focusedItemId:n.focusedItemId,items:t.items,level:n.level+1,templates:n.templates,activeItemPath:n.activeItemPath,exact:n.exact,onItemToggle:r.onItemToggle,pt:e.pt},e.ptm("submenu")),null,16,["id","panelId","focusedItemId","items","level","templates","activeItemPath","exact","onItemToggle","pt"])):s.createCommentVNode("",!0)],16),[[s.vShow,r.isItemActive(t)]])]})),_:2},1024)],16,I)):s.createCommentVNode("",!0),r.isItemVisible(t)&&r.getItemProp(t,"separator")?(s.openBlock(),s.createElementBlock("li",s.mergeProps({key:1,style:r.getItemProp(t,"style"),class:[e.cx("separator"),r.getItemProp(t,"class")],role:"separator"},e.ptm("separator")),null,16)):s.createCommentVNode("",!0)],64)})),128))],10,f)};var C={name:"PanelMenuList",hostName:"PanelMenu",extends:m.default,emits:["item-toggle","header-focus"],props:{panelId:{type:String,default:null},items:{type:Array,default:null},templates:{type:Object,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0}},searchTimeout:null,searchValue:null,data:function(){return{focused:!1,focusedItem:null,activeItemPath:[]}},watch:{expandedKeys:function(e){this.autoUpdateActiveItemPath(e)}},mounted:function(){this.autoUpdateActiveItemPath(this.expandedKeys)},methods:{getItemProp:function(e,t){return e&&e.item?n.ObjectUtils.getItemValue(e.item[t]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemActive:function(e){return this.activeItemPath.some((function(t){return t.key===e.parentKey}))},isItemGroup:function(e){return n.ObjectUtils.isNotEmpty(e.items)},onFocus:function(e){this.focused=!0,this.focusedItem=this.focusedItem||(this.isElementInPanel(e,e.relatedTarget)?this.findFirstItem():this.findLastItem())},onBlur:function(){this.focused=!1,this.focusedItem=null,this.searchValue=""},onKeyDown:function(e){var 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":case"Tab":case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&n.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onArrowDownKey:function(e){var t=n.ObjectUtils.isNotEmpty(this.focusedItem)?this.findNextItem(this.focusedItem):this.findFirstItem();this.changeFocusedItem({originalEvent:e,processedItem:t,focusOnNext:!0}),e.preventDefault()},onArrowUpKey:function(e){var t=n.ObjectUtils.isNotEmpty(this.focusedItem)?this.findPrevItem(this.focusedItem):this.findLastItem();this.changeFocusedItem({originalEvent:e,processedItem:t,selfCheck:!0}),e.preventDefault()},onArrowLeftKey:function(e){var t=this;n.ObjectUtils.isNotEmpty(this.focusedItem)&&(this.activeItemPath.some((function(e){return e.key===t.focusedItem.key}))?this.activeItemPath=this.activeItemPath.filter((function(e){return e.key!==t.focusedItem.key})):this.focusedItem=n.ObjectUtils.isNotEmpty(this.focusedItem.parent)?this.focusedItem.parent:this.focusedItem,e.preventDefault())},onArrowRightKey:function(e){var t=this;if(n.ObjectUtils.isNotEmpty(this.focusedItem)){if(this.isItemGroup(this.focusedItem))this.activeItemPath.some((function(e){return e.key===t.focusedItem.key}))?this.onArrowDownKey(e):(this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==t.focusedItem.parentKey})),this.activeItemPath.push(this.focusedItem));e.preventDefault()}},onHomeKey:function(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findFirstItem(),allowHeaderFocus:!1}),e.preventDefault()},onEndKey:function(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findLastItem(),focusOnNext:!0,allowHeaderFocus:!1}),e.preventDefault()},onEnterKey:function(e){if(n.ObjectUtils.isNotEmpty(this.focusedItem)){var t=n.DomHandler.findSingle(this.$el,'li[id="'.concat("".concat(this.focusedItemId),'"]')),i=t&&(n.DomHandler.findSingle(t,'[data-pc-section="action"]')||n.DomHandler.findSingle(t,"a,button"));i?i.click():t&&t.click()}e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},onItemToggle:function(e){var t=e.processedItem,i=e.expanded;this.expandedKeys?this.$emit("item-toggle",{item:t.item,expanded:i}):(this.activeItemPath=this.activeItemPath.filter((function(e){return e.parentKey!==t.parentKey})),i&&this.activeItemPath.push(t)),this.focusedItem=t,n.DomHandler.focus(this.$el)},isElementInPanel:function(e,t){var n=e.currentTarget.closest('[data-pc-section="panel"]');return n&&n.contains(t)},isItemMatched:function(e){return this.isValidItem(e)&&this.getItemLabel(e).toLocaleLowerCase(this.searchLocale).startsWith(this.searchValue.toLocaleLowerCase(this.searchLocale))},isVisibleItem:function(e){return!!e&&(0===e.level||this.isItemActive(e))&&this.isItemVisible(e)},isValidItem:function(e){return!!e&&!this.isItemDisabled(e)},findFirstItem:function(){var e=this;return this.visibleItems.find((function(t){return e.isValidItem(t)}))},findLastItem:function(){var e=this;return n.ObjectUtils.findLast(this.visibleItems,(function(t){return e.isValidItem(t)}))},findNextItem:function(e){var t=this,n=this.visibleItems.findIndex((function(t){return t.key===e.key}));return(n<this.visibleItems.length-1?this.visibleItems.slice(n+1).find((function(e){return t.isValidItem(e)})):void 0)||e},findPrevItem:function(e){var t=this,i=this.visibleItems.findIndex((function(t){return t.key===e.key}));return(i>0?n.ObjectUtils.findLast(this.visibleItems.slice(0,i),(function(e){return t.isValidItem(e)})):void 0)||e},searchItems:function(e,t){var i=this;this.searchValue=(this.searchValue||"")+t;var o=null,r=!1;if(n.ObjectUtils.isNotEmpty(this.focusedItem)){var s=this.visibleItems.findIndex((function(e){return e.key===i.focusedItem.key}));o=this.visibleItems.slice(s).find((function(e){return i.isItemMatched(e)})),o=n.ObjectUtils.isEmpty(o)?this.visibleItems.slice(0,s).find((function(e){return i.isItemMatched(e)})):o}else o=this.visibleItems.find((function(e){return i.isItemMatched(e)}));return n.ObjectUtils.isNotEmpty(o)&&(r=!0),n.ObjectUtils.isEmpty(o)&&n.ObjectUtils.isEmpty(this.focusedItem)&&(o=this.findFirstItem()),n.ObjectUtils.isNotEmpty(o)&&this.changeFocusedItem({originalEvent:e,processedItem:o,allowHeaderFocus:!1}),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((function(){i.searchValue="",i.searchTimeout=null}),500),r},changeFocusedItem:function(e){var t=e.originalEvent,i=e.processedItem,o=e.focusOnNext,r=e.selfCheck,s=e.allowHeaderFocus,a=void 0===s||s;n.ObjectUtils.isNotEmpty(this.focusedItem)&&this.focusedItem.key!==i.key?(this.focusedItem=i,this.scrollInView()):a&&this.$emit("header-focus",{originalEvent:t,focusOnNext:o,selfCheck:r})},scrollInView:function(){var e=n.DomHandler.findSingle(this.$el,'li[id="'.concat("".concat(this.focusedItemId),'"]'));e&&e.scrollIntoView&&e.scrollIntoView({block:"nearest",inline:"start"})},autoUpdateActiveItemPath:function(e){var t=this;this.activeItemPath=Object.entries(e||{}).reduce((function(e,n){var i,o,r=(o=2,E(i=n)||x(i,o)||P(i,o)||b());if(r[1]){var s=t.findProcessedItemByItemKey(r[0]);s&&e.push(s)}return e}),[])},findProcessedItemByItemKey:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(!(t=t||0===n&&this.processedItems))return null;for(var i=0;i<t.length;i++){var o=t[i];if(this.getItemProp(o,"key")===e)return o;var r=this.findProcessedItemByItemKey(e,o.items,n+1);if(r)return r}},createProcessedItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",r=[];return e&&e.forEach((function(e,s){var a=(""!==o?o+"_":"")+s,c={item:e,index:s,level:n,key:a,parent:i,parentKey:o};c.items=t.createProcessedItems(e.items,n+1,c,a),r.push(c)})),r},flatItems:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e&&e.forEach((function(e){t.isVisibleItem(e)&&(n.push(e),t.flatItems(e.items,n))})),n}},computed:{processedItems:function(){return this.createProcessedItems(this.items||[])},visibleItems:function(){return this.flatItems(this.processedItems)},focusedItemId:function(){return n.ObjectUtils.isNotEmpty(this.focusedItem)?"".concat(this.panelId,"_").concat(this.focusedItem.key):null}},components:{PanelMenuSub:h}};function D(e){return D="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},D(e)}function O(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?O(Object(n),!0).forEach((function(t){w(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):O(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function w(e,t,n){return(t=B(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function B(e){var t=H(e,"string");return"symbol"===D(t)?t:String(t)}function H(e,t){if("object"!==D(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==D(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}C.render=function(e,t,n,i,o,r){var a=s.resolveComponent("PanelMenuSub");return s.openBlock(),s.createBlock(a,s.mergeProps({id:n.panelId+"_list",class:e.cx("menu"),role:"tree",tabindex:-1,"aria-activedescendant":o.focused?r.focusedItemId:void 0,panelId:n.panelId,focusedItemId:o.focused?r.focusedItemId:void 0,items:r.processedItems,templates:n.templates,activeItemPath:o.activeItemPath,exact:n.exact,onFocus:r.onFocus,onBlur:r.onBlur,onKeydown:r.onKeyDown,onItemToggle:r.onItemToggle,pt:e.pt},e.ptm("menu")),null,16,["id","class","aria-activedescendant","panelId","focusedItemId","items","templates","activeItemPath","exact","onFocus","onBlur","onKeydown","onItemToggle","pt"])};var K={name:"PanelMenu",extends:p,emits:["update:expandedKeys","panel-open","panel-close"],data:function(){return{id:this.$attrs.id,activeItem:null}},watch:{"$attrs.id":function(e){this.id=e||n.UniqueComponentId()}},mounted:function(){this.id=this.id||n.UniqueComponentId()},methods:{getItemProp:function(e,t){return e?n.ObjectUtils.getItemValue(e[t]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t,n){return this.ptm(e,{context:{index:n,active:this.isItemActive(t),focused:this.isItemFocused(t)}})},isItemActive:function(e){return this.expandedKeys?this.expandedKeys[this.getItemProp(e,"key")]:n.ObjectUtils.equals(e,this.activeItem)},isItemVisible:function(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return n.ObjectUtils.equals(e,this.activeItem)},getPanelId:function(e){return"".concat(this.id,"_").concat(e)},getPanelKey:function(e){return this.getPanelId(e)},getHeaderId:function(e){return"".concat(this.getPanelId(e),"_header")},getContentId:function(e){return"".concat(this.getPanelId(e),"_content")},onHeaderClick:function(e,t){this.isItemDisabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),this.changeActiveItem(e,t),n.DomHandler.focus(e.currentTarget))},onHeaderKeyDown:function(e,t){switch(e.code){case"ArrowDown":this.onHeaderArrowDownKey(e);break;case"ArrowUp":this.onHeaderArrowUpKey(e);break;case"Home":this.onHeaderHomeKey(e);break;case"End":this.onHeaderEndKey(e);break;case"Enter":case"Space":this.onHeaderEnterKey(e,t)}},onHeaderArrowDownKey:function(e){var t=!0===n.DomHandler.getAttribute(e.currentTarget,"data-p-highlight")?n.DomHandler.findSingle(e.currentTarget.nextElementSibling,'[data-pc-section="menu"]'):null;t?n.DomHandler.focus(t):this.updateFocusedHeader({originalEvent:e,focusOnNext:!0}),e.preventDefault()},onHeaderArrowUpKey:function(e){var t=this.findPrevHeader(e.currentTarget.parentElement)||this.findLastHeader(),i=!0===n.DomHandler.getAttribute(t,"data-p-highlight")?n.DomHandler.findSingle(t.nextElementSibling,'[data-pc-section="menu"]'):null;i?n.DomHandler.focus(i):this.updateFocusedHeader({originalEvent:e,focusOnNext:!1}),e.preventDefault()},onHeaderHomeKey:function(e){this.changeFocusedHeader(e,this.findFirstHeader()),e.preventDefault()},onHeaderEndKey:function(e){this.changeFocusedHeader(e,this.findLastHeader()),e.preventDefault()},onHeaderEnterKey:function(e,t){var i=n.DomHandler.findSingle(e.currentTarget,'[data-pc-section="headeraction"]');i?i.click():this.onHeaderClick(e,t),e.preventDefault()},onHeaderActionClick:function(e,t){t&&t(e)},findNextHeader:function(e){var t=n.DomHandler.findSingle(arguments.length>1&&void 0!==arguments[1]&&arguments[1]?e:e.nextElementSibling,'[data-pc-section="header"]');return t?n.DomHandler.getAttribute(t,"data-p-disabled")?this.findNextHeader(t.parentElement):t:null},findPrevHeader:function(e){var t=n.DomHandler.findSingle(arguments.length>1&&void 0!==arguments[1]&&arguments[1]?e:e.previousElementSibling,'[data-pc-section="header"]');return t?n.DomHandler.getAttribute(t,"data-p-disabled")?this.findPrevHeader(t.parentElement):t:null},findFirstHeader:function(){return this.findNextHeader(this.$el.firstElementChild,!0)},findLastHeader:function(){return this.findPrevHeader(this.$el.lastElementChild,!0)},updateFocusedHeader:function(e){var t=e.originalEvent,i=e.focusOnNext,o=e.selfCheck,r=t.currentTarget.closest('[data-pc-section="panel"]'),s=o?n.DomHandler.findSingle(r,'[data-pc-section="header"]'):i?this.findNextHeader(r):this.findPrevHeader(r);s?this.changeFocusedHeader(t,s):i?this.onHeaderHomeKey(t):this.onHeaderEndKey(t)},changeActiveItem:function(e,t){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(!this.isItemDisabled(t)){var o=this.isItemActive(t),r=o?"panel-close":"panel-open";this.activeItem=i?t:this.activeItem&&n.ObjectUtils.equals(t,this.activeItem)?null:t,this.changeExpandedKeys({item:t,expanded:!o}),this.$emit(r,{originalEvent:e,item:t})}},changeExpandedKeys:function(e){var t=e.item,n=e.expanded,i=void 0!==n&&n;if(this.expandedKeys){var o=A({},this.expandedKeys);i?o[t.key]=!0:delete o[t.key],this.$emit("update:expandedKeys",o)}},changeFocusedHeader:function(e,t){t&&n.DomHandler.focus(t)}},components:{PanelMenuList:C,ChevronRightIcon:l.default,ChevronDownIcon:c.default}},N=["id"],S=["id","tabindex","aria-label","aria-expanded","aria-controls","aria-disabled","onClick","onKeydown","data-p-highlight","data-p-disabled"],V=["href","onClick"],j=["href"],T=["id","aria-labelledby"];K.render=function(e,t,n,i,o,r){var a=s.resolveComponent("router-link"),c=s.resolveComponent("PanelMenuList");return s.openBlock(),s.createElementBlock("div",s.mergeProps({id:o.id,class:e.cx("root")},e.ptm("root"),{"data-pc-name":"panelmenu"}),[(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(e.model,(function(t,n){return s.openBlock(),s.createElementBlock(s.Fragment,{key:r.getPanelKey(n)},[r.isItemVisible(t)?(s.openBlock(),s.createElementBlock("div",s.mergeProps({key:0,style:r.getItemProp(t,"style"),class:[e.cx("panel"),r.getItemProp(t,"class")]},e.ptm("panel")),[s.createElementVNode("div",s.mergeProps({id:r.getHeaderId(n),class:[e.cx("header",{item:t}),r.getItemProp(t,"headerClass")],tabindex:r.isItemDisabled(t)?-1:e.tabindex,role:"button","aria-label":r.getItemLabel(t),"aria-expanded":r.isItemActive(t),"aria-controls":r.getContentId(n),"aria-disabled":r.isItemDisabled(t),onClick:function(e){return r.onHeaderClick(e,t)},onKeydown:function(e){return r.onHeaderKeyDown(e,t)}},r.getPTOptions("header",t,n),{"data-p-highlight":r.isItemActive(t),"data-p-disabled":r.isItemDisabled(t)}),[s.createElementVNode("div",s.mergeProps({class:e.cx("headerContent")},r.getPTOptions("headerContent",t,n)),[e.$slots.item?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.$slots.item),{key:1,item:t},null,8,["item"])):(s.openBlock(),s.createElementBlock(s.Fragment,{key:0},[r.getItemProp(t,"to")&&!r.isItemDisabled(t)?(s.openBlock(),s.createBlock(a,{key:0,to:r.getItemProp(t,"to"),custom:""},{default:s.withCtx((function(i){var o=i.navigate;return[s.createElementVNode("a",s.mergeProps({href:i.href,class:e.cx("headerAction",{isActive:i.isActive,isExactActive:i.isExactActive}),tabindex:-1,onClick:function(e){return r.onHeaderActionClick(e,o)}},r.getPTOptions("headerAction",t,n)),[e.$slots.headericon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.$slots.headericon),{key:0,item:t,class:s.normalizeClass([e.cx("headerIcon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:1,class:[e.cx("headerIcon"),r.getItemProp(t,"icon")]},r.getPTOptions("headerIcon",t,n)),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("headerLabel")},r.getPTOptions("headerLabel",t,n)),s.toDisplayString(r.getItemLabel(t)),17)],16,V)]})),_:2},1032,["to"])):(s.openBlock(),s.createElementBlock("a",s.mergeProps({key:1,href:r.getItemProp(t,"url"),class:e.cx("headerAction"),tabindex:-1},r.getPTOptions("headerAction",t,n)),[r.getItemProp(t,"items")?s.renderSlot(e.$slots,"submenuicon",{key:0,active:r.isItemActive(t)},(function(){return[(s.openBlock(),s.createBlock(s.resolveDynamicComponent(r.isItemActive(t)?"ChevronDownIcon":"ChevronRightIcon"),s.mergeProps({class:e.cx("submenuIcon")},r.getPTOptions("submenuIcon",t,n)),null,16,["class"]))]})):s.createCommentVNode("",!0),e.$slots.headericon?(s.openBlock(),s.createBlock(s.resolveDynamicComponent(e.$slots.headericon),{key:1,item:t,class:s.normalizeClass([e.cx("headerIcon"),r.getItemProp(t,"icon")])},null,8,["item","class"])):r.getItemProp(t,"icon")?(s.openBlock(),s.createElementBlock("span",s.mergeProps({key:2,class:[e.cx("headerIcon"),r.getItemProp(t,"icon")]},r.getPTOptions("headerIcon",t,n)),null,16)):s.createCommentVNode("",!0),s.createElementVNode("span",s.mergeProps({class:e.cx("headerLabel")},r.getPTOptions("headerLabel",t,n)),s.toDisplayString(r.getItemLabel(t)),17)],16,j))],64))],16)],16,S),s.createVNode(s.Transition,{name:"p-toggleable-content"},{default:s.withCtx((function(){return[s.withDirectives(s.createElementVNode("div",s.mergeProps({id:r.getContentId(n),class:e.cx("toggleableContent"),role:"region","aria-labelledby":r.getHeaderId(n)},e.ptm("toggleableContent")),[r.getItemProp(t,"items")?(s.openBlock(),s.createElementBlock("div",s.mergeProps({key:0,class:e.cx("menuContent")},e.ptm("menuContent")),[s.createVNode(c,{panelId:r.getPanelId(n),items:r.getItemProp(t,"items"),templates:e.$slots,expandedKeys:e.expandedKeys,onItemToggle:r.changeExpandedKeys,onHeaderFocus:r.updateFocusedHeader,exact:e.exact,pt:e.pt},null,8,["panelId","items","templates","expandedKeys","onItemToggle","onHeaderFocus","exact","pt"])],16)):s.createCommentVNode("",!0)],16,T),[[s.vShow,r.isItemActive(t)]])]})),_:2},1024)],16)):s.createCommentVNode("",!0)],64)})),128))],16,N)},module.exports=K;
|