{"version":3,"file":"megamenu.esm.DBhGwpoU.js","sources":["../../../../node_modules/primevue/megamenu/style/megamenustyle.esm.js","../../../../node_modules/primevue/megamenu/megamenu.esm.js"],"sourcesContent":["import BaseStyle from 'primevue/base/style';\n\nvar inlineStyles = {\n submenu: function submenu(_ref) {\n var instance = _ref.instance,\n processedItem = _ref.processedItem;\n return {\n display: instance.isItemActive(processedItem) ? 'block' : 'none'\n };\n }\n};\nvar classes = {\n root: function root(_ref2) {\n var instance = _ref2.instance;\n return ['p-megamenu p-component', {\n 'p-megamenu-mobile': instance.queryMatches,\n 'p-megamenu-mobile-active': instance.mobileActive,\n 'p-megamenu-horizontal': instance.horizontal,\n 'p-megamenu-vertical': instance.vertical\n }];\n },\n start: 'p-megamenu-start',\n menubutton: 'p-megamenu-button',\n menu: 'p-megamenu-root-list',\n submenuHeader: function submenuHeader(_ref3) {\n var instance = _ref3.instance,\n processedItem = _ref3.processedItem;\n return ['p-megamenu-submenu-header p-submenu-header', {\n 'p-disabled': instance.isItemDisabled(processedItem)\n }];\n },\n menuitem: function menuitem(_ref4) {\n var instance = _ref4.instance,\n processedItem = _ref4.processedItem;\n return ['p-menuitem', {\n 'p-menuitem-active p-highlight': instance.isItemActive(processedItem),\n 'p-focus': instance.isItemFocused(processedItem),\n 'p-disabled': instance.isItemDisabled(processedItem)\n }];\n },\n content: 'p-menuitem-content',\n action: 'p-menuitem-link',\n icon: 'p-menuitem-icon',\n label: 'p-menuitem-text',\n submenuIcon: 'p-submenu-icon',\n panel: 'p-megamenu-panel',\n grid: 'p-megamenu-grid',\n column: function column(_ref5) {\n var instance = _ref5.instance,\n processedItem = _ref5.processedItem;\n var length = instance.isItemGroup(processedItem) ? processedItem.items.length : 0;\n var columnClass;\n if (instance.$parentInstance.queryMatches) columnClass = 'p-megamenu-col-12';else {\n switch (length) {\n case 2:\n columnClass = 'p-megamenu-col-6';\n break;\n case 3:\n columnClass = 'p-megamenu-col-4';\n break;\n case 4:\n columnClass = 'p-megamenu-col-3';\n break;\n case 6:\n columnClass = 'p-megamenu-col-2';\n break;\n default:\n columnClass = 'p-megamenu-col-12';\n break;\n }\n }\n return columnClass;\n },\n submenu: 'p-submenu-list p-megamenu-submenu',\n submenuLabel: 'p-menuitem-text',\n separator: 'p-menuitem-separator',\n end: 'p-megamenu-end'\n};\nvar MegaMenuStyle = BaseStyle.extend({\n name: 'megamenu',\n classes: classes,\n inlineStyles: inlineStyles\n});\n\nexport { MegaMenuStyle as default };\n","import BarsIcon from 'primevue/icons/bars';\nimport { ObjectUtils, UniqueComponentId, ZIndexUtils, DomHandler } from 'primevue/utils';\nimport BaseComponent from 'primevue/basecomponent';\nimport MegaMenuStyle from 'primevue/megamenu/style';\nimport AngleDownIcon from 'primevue/icons/angledown';\nimport AngleRightIcon from 'primevue/icons/angleright';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps, resolveComponent, resolveDirective, openBlock, createElementBlock, toDisplayString, createCommentVNode, Fragment, renderList, createElementVNode, withDirectives, createBlock, resolveDynamicComponent, normalizeClass, normalizeStyle, renderSlot, createVNode, normalizeProps, guardReactiveProps } from 'vue';\n\nvar script$2 = {\n name: 'BaseMegaMenu',\n \"extends\": BaseComponent,\n props: {\n model: {\n type: Array,\n \"default\": null\n },\n orientation: {\n type: String,\n \"default\": 'horizontal'\n },\n breakpoint: {\n type: String,\n \"default\": '960px'\n },\n disabled: {\n type: Boolean,\n \"default\": false\n },\n tabindex: {\n type: Number,\n \"default\": 0\n },\n ariaLabelledby: {\n type: String,\n \"default\": null\n },\n ariaLabel: {\n type: String,\n \"default\": null\n }\n },\n style: MegaMenuStyle,\n provide: function provide() {\n return {\n $parentInstance: this\n };\n }\n};\n\nvar script$1 = {\n name: 'MegaMenuSub',\n hostName: 'MegaMenu',\n \"extends\": BaseComponent,\n emits: ['item-click', 'item-mouseenter'],\n props: {\n menuId: {\n type: String,\n \"default\": null\n },\n focusedItemId: {\n type: String,\n \"default\": null\n },\n horizontal: {\n type: Boolean,\n \"default\": false\n },\n submenu: {\n type: Object,\n \"default\": null\n },\n mobileActive: {\n type: Boolean,\n \"default\": false\n },\n items: {\n type: Array,\n \"default\": null\n },\n level: {\n type: Number,\n \"default\": 0\n },\n templates: {\n type: Object,\n \"default\": null\n },\n activeItem: {\n type: Object,\n \"default\": null\n },\n tabindex: {\n type: Number,\n \"default\": 0\n }\n },\n methods: {\n getSubListId: function getSubListId(processedItem) {\n return \"\".concat(this.getItemId(processedItem), \"_list\");\n },\n getSubListKey: function getSubListKey(processedItem) {\n return this.getSubListId(processedItem);\n },\n getItemId: function getItemId(processedItem) {\n return \"\".concat(this.menuId, \"_\").concat(processedItem.key);\n },\n getItemKey: function getItemKey(processedItem) {\n return this.getItemId(processedItem);\n },\n getItemProp: function getItemProp(processedItem, name, params) {\n return processedItem && processedItem.item ? ObjectUtils.getItemValue(processedItem.item[name], params) : undefined;\n },\n getItemLabel: function getItemLabel(processedItem) {\n return this.getItemProp(processedItem, 'label');\n },\n getPTOptions: function getPTOptions(processedItem, index, key) {\n return this.ptm(key, {\n context: {\n item: processedItem,\n index: index,\n active: this.isItemActive(processedItem),\n focused: this.isItemFocused(processedItem),\n disabled: this.isItemDisabled(processedItem)\n }\n });\n },\n isItemActive: function isItemActive(processedItem) {\n return ObjectUtils.isNotEmpty(this.activeItem) ? this.activeItem.key === processedItem.key : false;\n },\n isItemVisible: function isItemVisible(processedItem) {\n return this.getItemProp(processedItem, 'visible') !== false;\n },\n isItemDisabled: function isItemDisabled(processedItem) {\n return this.getItemProp(processedItem, 'disabled');\n },\n isItemFocused: function isItemFocused(processedItem) {\n return this.focusedItemId === this.getItemId(processedItem);\n },\n isItemGroup: function isItemGroup(processedItem) {\n return ObjectUtils.isNotEmpty(processedItem.items);\n },\n onItemClick: function onItemClick(event, processedItem) {\n this.getItemProp(processedItem, 'command', {\n originalEvent: event,\n item: processedItem.item\n });\n this.$emit('item-click', {\n originalEvent: event,\n processedItem: processedItem,\n isFocus: true\n });\n },\n onItemMouseEnter: function onItemMouseEnter(event, processedItem) {\n this.$emit('item-mouseenter', {\n originalEvent: event,\n processedItem: processedItem\n });\n },\n getAriaSetSize: function getAriaSetSize() {\n var _this = this;\n return this.items.filter(function (processedItem) {\n return _this.isItemVisible(processedItem) && !_this.getItemProp(processedItem, 'separator');\n }).length;\n },\n getAriaPosInset: function getAriaPosInset(index) {\n var _this2 = this;\n return index - this.items.slice(0, index).filter(function (processedItem) {\n return _this2.isItemVisible(processedItem) && _this2.getItemProp(processedItem, 'separator');\n }).length + 1;\n },\n getMenuItemProps: function getMenuItemProps(processedItem, index) {\n return {\n action: mergeProps({\n \"class\": this.cx('action'),\n tabindex: -1,\n 'aria-hidden': true\n }, this.getPTOptions(processedItem, index, 'action')),\n icon: mergeProps({\n \"class\": [this.cx('icon'), this.getItemProp(processedItem, 'icon')]\n }, this.getPTOptions(processedItem, index, 'icon')),\n label: mergeProps({\n \"class\": this.cx('label')\n }, this.getPTOptions(processedItem, index, 'label')),\n submenuicon: mergeProps({\n \"class\": this.cx('submenuIcon')\n }, this.getPTOptions(processedItem, index, 'submenuIcon'))\n };\n }\n },\n components: {\n AngleRightIcon: AngleRightIcon,\n AngleDownIcon: AngleDownIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n\nvar _hoisted_1$1 = [\"tabindex\"];\nvar _hoisted_2$1 = [\"id\", \"aria-label\", \"aria-disabled\", \"aria-expanded\", \"aria-haspopup\", \"aria-level\", \"aria-setsize\", \"aria-posinset\", \"data-p-highlight\", \"data-p-focused\", \"data-p-disabled\"];\nvar _hoisted_3 = [\"onClick\", \"onMouseenter\"];\nvar _hoisted_4 = [\"href\", \"target\"];\nvar _hoisted_5 = [\"id\"];\nfunction render$1(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_MegaMenuSub = resolveComponent(\"MegaMenuSub\", true);\n var _directive_ripple = resolveDirective(\"ripple\");\n return openBlock(), createElementBlock(\"ul\", mergeProps({\n \"class\": $props.level === 0 ? _ctx.cx('menu') : _ctx.cx('submenu'),\n tabindex: $props.tabindex\n }, $props.level === 0 ? _ctx.ptm('menu') : _ctx.ptm('submenu')), [$props.submenu ? (openBlock(), createElementBlock(\"li\", mergeProps({\n key: 0,\n \"class\": [_ctx.cx('submenuHeader', {\n submenu: $props.submenu\n }), $options.getItemProp($props.submenu, 'class')],\n style: $options.getItemProp($props.submenu, 'style'),\n role: \"presentation\"\n }, _ctx.ptm('submenuHeader')), toDisplayString($options.getItemLabel($props.submenu)), 17)) : createCommentVNode(\"\", true), (openBlock(true), createElementBlock(Fragment, null, renderList($props.items, function (processedItem, index) {\n return openBlock(), createElementBlock(Fragment, {\n key: $options.getItemKey(processedItem)\n }, [$options.isItemVisible(processedItem) && !$options.getItemProp(processedItem, 'separator') ? (openBlock(), createElementBlock(\"li\", mergeProps({\n key: 0,\n id: $options.getItemId(processedItem),\n style: $options.getItemProp(processedItem, 'style'),\n \"class\": [_ctx.cx('menuitem', {\n processedItem: processedItem\n }), $options.getItemProp(processedItem, 'class')],\n role: \"menuitem\",\n \"aria-label\": $options.getItemLabel(processedItem),\n \"aria-disabled\": $options.isItemDisabled(processedItem) || undefined,\n \"aria-expanded\": $options.isItemGroup(processedItem) ? $options.isItemActive(processedItem) : undefined,\n \"aria-haspopup\": $options.isItemGroup(processedItem) && !$options.getItemProp(processedItem, 'to') ? 'menu' : undefined,\n \"aria-level\": $props.level + 1,\n \"aria-setsize\": $options.getAriaSetSize(),\n \"aria-posinset\": $options.getAriaPosInset(index)\n }, $options.getPTOptions(processedItem, index, 'menuitem'), {\n \"data-p-highlight\": $options.isItemActive(processedItem),\n \"data-p-focused\": $options.isItemFocused(processedItem),\n \"data-p-disabled\": $options.isItemDisabled(processedItem)\n }), [createElementVNode(\"div\", mergeProps({\n \"class\": _ctx.cx('content'),\n onClick: function onClick($event) {\n return $options.onItemClick($event, processedItem);\n },\n onMouseenter: function onMouseenter($event) {\n return $options.onItemMouseEnter($event, processedItem);\n }\n }, $options.getPTOptions(processedItem, index, 'content')), [!$props.templates.item ? withDirectives((openBlock(), createElementBlock(\"a\", mergeProps({\n key: 0,\n href: $options.getItemProp(processedItem, 'url'),\n \"class\": _ctx.cx('action'),\n target: $options.getItemProp(processedItem, 'target'),\n tabindex: \"-1\",\n \"aria-hidden\": \"true\"\n }, $options.getPTOptions(processedItem, index, 'action')), [$props.templates.itemicon ? (openBlock(), createBlock(resolveDynamicComponent($props.templates.itemicon), {\n key: 0,\n item: processedItem.item,\n \"class\": normalizeClass(_ctx.cx('icon'))\n }, null, 8, [\"item\", \"class\"])) : $options.getItemProp(processedItem, 'icon') ? (openBlock(), createElementBlock(\"span\", mergeProps({\n key: 1,\n \"class\": [_ctx.cx('icon'), $options.getItemProp(processedItem, 'icon')]\n }, $options.getPTOptions(processedItem, index, 'icon')), null, 16)) : createCommentVNode(\"\", true), createElementVNode(\"span\", mergeProps({\n \"class\": $props.level === 0 ? _ctx.cx('label') : _ctx.cx('submenuLabel')\n }, $props.level === 0 ? $options.getPTOptions(processedItem, index, 'label') : $options.getPTOptions(processedItem, index, 'submenuLabel')), toDisplayString($options.getItemLabel(processedItem)), 17), $options.isItemGroup(processedItem) ? (openBlock(), createElementBlock(Fragment, {\n key: 2\n }, [$props.templates.submenuicon ? (openBlock(), createBlock(resolveDynamicComponent($props.templates.submenuicon), mergeProps({\n key: 0,\n active: $options.isItemActive(processedItem),\n \"class\": _ctx.cx('submenuIcon')\n }, $options.getPTOptions(processedItem, index, 'submenuIcon')), null, 16, [\"active\", \"class\"])) : (openBlock(), createBlock(resolveDynamicComponent($props.horizontal || $props.mobileActive ? 'AngleDownIcon' : 'AngleRightIcon'), mergeProps({\n key: 1,\n \"class\": _ctx.cx('submenuIcon')\n }, $options.getPTOptions(processedItem, index, 'submenuIcon')), null, 16, [\"class\"]))], 64)) : createCommentVNode(\"\", true)], 16, _hoisted_4)), [[_directive_ripple]]) : (openBlock(), createBlock(resolveDynamicComponent($props.templates.item), {\n key: 1,\n item: processedItem.item,\n hasSubmenu: $options.isItemGroup(processedItem),\n label: $options.getItemLabel(processedItem),\n props: $options.getMenuItemProps(processedItem, index)\n }, null, 8, [\"item\", \"hasSubmenu\", \"label\", \"props\"]))], 16, _hoisted_3), $options.isItemVisible(processedItem) && $options.isItemGroup(processedItem) ? (openBlock(), createElementBlock(\"div\", mergeProps({\n key: 0,\n \"class\": _ctx.cx('panel')\n }, _ctx.ptm('panel')), [createElementVNode(\"div\", mergeProps({\n \"class\": _ctx.cx('grid')\n }, _ctx.ptm('grid')), [(openBlock(true), createElementBlock(Fragment, null, renderList(processedItem.items, function (col) {\n return openBlock(), createElementBlock(\"div\", mergeProps({\n key: $options.getItemKey(col),\n \"class\": _ctx.cx('column', {\n processedItem: processedItem\n })\n }, _ctx.ptm('column')), [(openBlock(true), createElementBlock(Fragment, null, renderList(col, function (submenu) {\n return openBlock(), createBlock(_component_MegaMenuSub, {\n key: $options.getSubListKey(submenu),\n id: $options.getSubListId(submenu),\n style: normalizeStyle(_ctx.sx('submenu', true, {\n processedItem: processedItem\n })),\n role: \"menu\",\n menuId: $props.menuId,\n focusedItemId: $props.focusedItemId,\n submenu: submenu,\n items: submenu.items,\n templates: $props.templates,\n level: $props.level + 1,\n mobileActive: $props.mobileActive,\n pt: _ctx.pt,\n unstyled: _ctx.unstyled,\n onItemClick: _cache[0] || (_cache[0] = function ($event) {\n return _ctx.$emit('item-click', $event);\n }),\n onItemMouseenter: _cache[1] || (_cache[1] = function ($event) {\n return _ctx.$emit('item-mouseenter', $event);\n })\n }, null, 8, [\"id\", \"style\", \"menuId\", \"focusedItemId\", \"submenu\", \"items\", \"templates\", \"level\", \"mobileActive\", \"pt\", \"unstyled\"]);\n }), 128))], 16);\n }), 128))], 16)], 16)) : createCommentVNode(\"\", true)], 16, _hoisted_2$1)) : createCommentVNode(\"\", true), $options.isItemVisible(processedItem) && $options.getItemProp(processedItem, 'separator') ? (openBlock(), createElementBlock(\"li\", mergeProps({\n key: 1,\n id: $options.getItemId(processedItem),\n \"class\": [_ctx.cx('separator'), $options.getItemProp(processedItem, 'class')],\n style: $options.getItemProp(processedItem, 'style'),\n role: \"separator\"\n }, _ctx.ptm('separator')), null, 16, _hoisted_5)) : createCommentVNode(\"\", true)], 64);\n }), 128))], 16, _hoisted_1$1);\n}\n\nscript$1.render = render$1;\n\nvar script = {\n name: 'MegaMenu',\n \"extends\": script$2,\n inheritAttrs: false,\n emits: ['focus', 'blur'],\n outsideClickListener: null,\n resizeListener: null,\n matchMediaListener: null,\n container: null,\n menubar: null,\n searchTimeout: null,\n searchValue: null,\n data: function data() {\n return {\n id: this.$attrs.id,\n mobileActive: false,\n focused: false,\n focusedItemInfo: {\n index: -1,\n key: '',\n parentKey: ''\n },\n activeItem: null,\n dirty: false,\n query: null,\n queryMatches: false\n };\n },\n watch: {\n '$attrs.id': function $attrsId(newValue) {\n this.id = newValue || UniqueComponentId();\n },\n activeItem: function activeItem(newItem) {\n if (ObjectUtils.isNotEmpty(newItem)) {\n this.bindOutsideClickListener();\n this.bindResizeListener();\n } else {\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n }\n }\n },\n mounted: function mounted() {\n this.id = this.id || UniqueComponentId();\n this.bindMatchMediaListener();\n },\n beforeUnmount: function beforeUnmount() {\n this.mobileActive = false;\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n this.unbindMatchMediaListener();\n },\n methods: {\n getItemProp: function getItemProp(item, name) {\n return item ? ObjectUtils.getItemValue(item[name]) : undefined;\n },\n getItemLabel: function getItemLabel(item) {\n return this.getItemProp(item, 'label');\n },\n isItemDisabled: function isItemDisabled(item) {\n return this.getItemProp(item, 'disabled');\n },\n isItemVisible: function isItemVisible(item) {\n return this.getItemProp(item, 'visible') !== false;\n },\n isItemGroup: function isItemGroup(item) {\n return ObjectUtils.isNotEmpty(this.getItemProp(item, 'items'));\n },\n isItemSeparator: function isItemSeparator(item) {\n return this.getItemProp(item, 'separator');\n },\n getProccessedItemLabel: function getProccessedItemLabel(processedItem) {\n return processedItem ? this.getItemLabel(processedItem.item) : undefined;\n },\n isProccessedItemGroup: function isProccessedItemGroup(processedItem) {\n return processedItem && ObjectUtils.isNotEmpty(processedItem.items);\n },\n toggle: function toggle(event) {\n var _this = this;\n if (this.mobileActive) {\n this.mobileActive = false;\n ZIndexUtils.clear(this.menubar);\n this.hide();\n } else {\n this.mobileActive = true;\n ZIndexUtils.set('menu', this.menubar, this.$primevue.config.zIndex.menu);\n setTimeout(function () {\n _this.show();\n }, 1);\n }\n this.bindOutsideClickListener();\n event.preventDefault();\n },\n show: function show() {\n this.focusedItemInfo = {\n index: this.findFirstFocusedItemIndex(),\n level: 0,\n parentKey: ''\n };\n DomHandler.focus(this.menubar);\n },\n hide: function hide(event, isFocus) {\n var _this2 = this;\n if (this.mobileActive) {\n this.mobileActive = false;\n setTimeout(function () {\n DomHandler.focus(_this2.$refs.menubutton);\n }, 0);\n }\n this.activeItem = null;\n this.focusedItemInfo = {\n index: -1,\n key: '',\n parentKey: ''\n };\n isFocus && DomHandler.focus(this.menubar);\n this.dirty = false;\n },\n onFocus: function onFocus(event) {\n this.focused = true;\n if (this.focusedItemInfo.index === -1) {\n var index = this.findFirstFocusedItemIndex();\n var processedItem = this.findVisibleItem(index);\n this.focusedItemInfo = {\n index: index,\n key: processedItem.key,\n parentKey: processedItem.parentKey\n };\n }\n this.$emit('focus', event);\n },\n onBlur: function onBlur(event) {\n this.focused = false;\n this.focusedItemInfo = {\n index: -1,\n key: '',\n parentKey: ''\n };\n this.searchValue = '';\n this.dirty = false;\n this.$emit('blur', event);\n },\n onKeyDown: function onKeyDown(event) {\n if (this.disabled) {\n event.preventDefault();\n return;\n }\n var metaKey = event.metaKey || event.ctrlKey;\n switch (event.code) {\n case 'ArrowDown':\n this.onArrowDownKey(event);\n break;\n case 'ArrowUp':\n this.onArrowUpKey(event);\n break;\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n case 'Home':\n this.onHomeKey(event);\n break;\n case 'End':\n this.onEndKey(event);\n break;\n case 'Space':\n this.onSpaceKey(event);\n break;\n case 'Enter':\n case 'NumpadEnter':\n this.onEnterKey(event);\n break;\n case 'Escape':\n this.onEscapeKey(event);\n break;\n case 'Tab':\n this.onTabKey(event);\n break;\n case 'PageDown':\n case 'PageUp':\n case 'Backspace':\n case 'ShiftLeft':\n case 'ShiftRight':\n //NOOP\n break;\n default:\n if (!metaKey && ObjectUtils.isPrintableCharacter(event.key)) {\n this.searchItems(event, event.key);\n }\n break;\n }\n },\n onItemChange: function onItemChange(event) {\n var processedItem = event.processedItem,\n isFocus = event.isFocus;\n if (ObjectUtils.isEmpty(processedItem)) return;\n var index = processedItem.index,\n key = processedItem.key,\n parentKey = processedItem.parentKey,\n items = processedItem.items;\n var grouped = ObjectUtils.isNotEmpty(items);\n grouped && (this.activeItem = processedItem);\n this.focusedItemInfo = {\n index: index,\n key: key,\n parentKey: parentKey\n };\n grouped && (this.dirty = true);\n isFocus && DomHandler.focus(this.menubar);\n },\n onItemClick: function onItemClick(event) {\n var originalEvent = event.originalEvent,\n processedItem = event.processedItem;\n var grouped = this.isProccessedItemGroup(processedItem);\n var root = ObjectUtils.isEmpty(processedItem.parent);\n var selected = this.isSelected(processedItem);\n if (selected) {\n var index = processedItem.index,\n key = processedItem.key,\n parentKey = processedItem.parentKey;\n this.activeItem = null;\n this.focusedItemInfo = {\n index: index,\n key: key,\n parentKey: parentKey\n };\n this.dirty = !root;\n DomHandler.focus(this.menubar);\n } else {\n if (grouped) {\n this.onItemChange(event);\n } else {\n var rootProcessedItem = root ? processedItem : this.activeItem;\n this.hide(originalEvent);\n this.changeFocusedItemInfo(originalEvent, rootProcessedItem ? rootProcessedItem.index : -1);\n this.mobileActive = false;\n DomHandler.focus(this.menubar);\n }\n }\n },\n onItemMouseEnter: function onItemMouseEnter(event) {\n if (!this.mobileActive && this.dirty) {\n this.onItemChange(event);\n }\n },\n menuButtonClick: function menuButtonClick(event) {\n this.toggle(event);\n },\n menuButtonKeydown: function menuButtonKeydown(event) {\n (event.code === 'Enter' || event.code === 'NumpadEnter' || event.code === 'Space') && this.menuButtonClick(event);\n },\n onArrowDownKey: function onArrowDownKey(event) {\n if (this.horizontal) {\n if (ObjectUtils.isNotEmpty(this.activeItem) && this.activeItem.key === this.focusedItemInfo.key) {\n this.focusedItemInfo = {\n index: -1,\n key: '',\n parentKey: this.activeItem.key\n };\n } else {\n var processedItem = this.findVisibleItem(this.focusedItemInfo.index);\n var grouped = this.isProccessedItemGroup(processedItem);\n if (grouped) {\n this.onItemChange({\n originalEvent: event,\n processedItem: processedItem\n });\n this.focusedItemInfo = {\n index: -1,\n key: processedItem.key,\n parentKey: processedItem.parentKey\n };\n this.searchValue = '';\n }\n }\n }\n var itemIndex = this.focusedItemInfo.index !== -1 ? this.findNextItemIndex(this.focusedItemInfo.index) : this.findFirstFocusedItemIndex();\n this.changeFocusedItemInfo(event, itemIndex);\n event.preventDefault();\n },\n onArrowUpKey: function onArrowUpKey(event) {\n if (event.altKey && this.horizontal) {\n if (this.focusedItemInfo.index !== -1) {\n var processedItem = this.findVisibleItem(this.focusedItemInfo.index);\n var grouped = this.isProccessedItemGroup(processedItem);\n if (!grouped && ObjectUtils.isNotEmpty(this.activeItem)) {\n if (this.focusedItemInfo.index === 0) {\n this.focusedItemInfo = {\n index: this.activeItem.index,\n key: this.activeItem.key,\n parentKey: this.activeItem.parentKey\n };\n this.activeItem = null;\n } else {\n this.changeFocusedItemInfo(event, this.findFirstItemIndex());\n }\n }\n }\n event.preventDefault();\n } else {\n var itemIndex = this.focusedItemInfo.index !== -1 ? this.findPrevItemIndex(this.focusedItemInfo.index) : this.findLastFocusedItemIndex();\n this.changeFocusedItemInfo(event, itemIndex);\n event.preventDefault();\n }\n },\n onArrowLeftKey: function onArrowLeftKey(event) {\n var processedItem = this.findVisibleItem(this.focusedItemInfo.index);\n var grouped = this.isProccessedItemGroup(processedItem);\n if (grouped) {\n if (this.horizontal) {\n var itemIndex = this.focusedItemInfo.index !== -1 ? this.findPrevItemIndex(this.focusedItemInfo.index) : this.findLastFocusedItemIndex();\n this.changeFocusedItemInfo(event, itemIndex);\n }\n } else {\n if (this.vertical && ObjectUtils.isNotEmpty(this.activeItem)) {\n if (processedItem.columnIndex === 0) {\n this.focusedItemInfo = {\n index: this.activeItem.index,\n key: this.activeItem.key,\n parentKey: this.activeItem.parentKey\n };\n this.activeItem = null;\n }\n }\n var columnIndex = processedItem.columnIndex - 1;\n var _itemIndex = this.visibleItems.findIndex(function (item) {\n return item.columnIndex === columnIndex;\n });\n _itemIndex !== -1 && this.changeFocusedItemInfo(event, _itemIndex);\n }\n event.preventDefault();\n },\n onArrowRightKey: function onArrowRightKey(event) {\n var processedItem = this.findVisibleItem(this.focusedItemInfo.index);\n var grouped = this.isProccessedItemGroup(processedItem);\n if (grouped) {\n if (this.vertical) {\n if (ObjectUtils.isNotEmpty(this.activeItem) && this.activeItem.key === processedItem.key) {\n this.focusedItemInfo = {\n index: -1,\n key: '',\n parentKey: this.activeItem.key\n };\n } else {\n var _processedItem = this.findVisibleItem(this.focusedItemInfo.index);\n var _grouped = this.isProccessedItemGroup(_processedItem);\n if (_grouped) {\n this.onItemChange({\n originalEvent: event,\n processedItem: _processedItem\n });\n this.focusedItemInfo = {\n index: -1,\n key: _processedItem.key,\n parentKey: _processedItem.parentKey\n };\n this.searchValue = '';\n }\n }\n }\n var itemIndex = this.focusedItemInfo.index !== -1 ? this.findNextItemIndex(this.focusedItemInfo.index) : this.findFirstFocusedItemIndex();\n this.changeFocusedItemInfo(event, itemIndex);\n } else {\n var columnIndex = processedItem.columnIndex + 1;\n var _itemIndex2 = this.visibleItems.findIndex(function (item) {\n return item.columnIndex === columnIndex;\n });\n _itemIndex2 !== -1 && this.changeFocusedItemInfo(event, _itemIndex2);\n }\n event.preventDefault();\n },\n onHomeKey: function onHomeKey(event) {\n this.changeFocusedItemInfo(event, this.findFirstItemIndex());\n event.preventDefault();\n },\n onEndKey: function onEndKey(event) {\n this.changeFocusedItemInfo(event, this.findLastItemIndex());\n event.preventDefault();\n },\n onEnterKey: function onEnterKey(event) {\n if (this.focusedItemInfo.index !== -1) {\n var element = DomHandler.findSingle(this.menubar, \"li[id=\\\"\".concat(\"\".concat(this.focusedItemId), \"\\\"]\"));\n var anchorElement = element && DomHandler.findSingle(element, 'a[data-pc-section=\"action\"]');\n anchorElement ? anchorElement.click() : element && element.click();\n var processedItem = this.visibleItems[this.focusedItemInfo.index];\n var grouped = this.isProccessedItemGroup(processedItem);\n !grouped && this.changeFocusedItemInfo(event, this.findFirstFocusedItemIndex());\n }\n event.preventDefault();\n },\n onSpaceKey: function onSpaceKey(event) {\n this.onEnterKey(event);\n },\n onEscapeKey: function onEscapeKey(event) {\n if (ObjectUtils.isNotEmpty(this.activeItem)) {\n this.focusedItemInfo = {\n index: this.activeItem.index,\n key: this.activeItem.key\n };\n this.activeItem = null;\n }\n event.preventDefault();\n },\n onTabKey: function onTabKey(event) {\n if (this.focusedItemInfo.index !== -1) {\n var processedItem = this.findVisibleItem(this.focusedItemInfo.index);\n var grouped = this.isProccessedItemGroup(processedItem);\n !grouped && this.onItemChange({\n originalEvent: event,\n processedItem: processedItem\n });\n }\n this.hide();\n },\n bindOutsideClickListener: function bindOutsideClickListener() {\n var _this3 = this;\n if (!this.outsideClickListener) {\n this.outsideClickListener = function (event) {\n var isOutsideContainer = _this3.container && !_this3.container.contains(event.target);\n var isOutsideTarget = !(_this3.target && (_this3.target === event.target || _this3.target.contains(event.target)));\n if (isOutsideContainer && isOutsideTarget) {\n _this3.hide();\n }\n };\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener: function unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n bindResizeListener: function bindResizeListener() {\n var _this4 = this;\n if (!this.resizeListener) {\n this.resizeListener = function (event) {\n if (!DomHandler.isTouchDevice()) {\n _this4.hide(event, true);\n }\n _this4.mobileActive = false;\n };\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener: function unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n bindMatchMediaListener: function bindMatchMediaListener() {\n var _this5 = this;\n if (!this.matchMediaListener) {\n var query = matchMedia(\"(max-width: \".concat(this.breakpoint, \")\"));\n this.query = query;\n this.queryMatches = query.matches;\n this.matchMediaListener = function () {\n _this5.queryMatches = query.matches;\n _this5.mobileActive = false;\n };\n this.query.addEventListener('change', this.matchMediaListener);\n }\n },\n unbindMatchMediaListener: function unbindMatchMediaListener() {\n if (this.matchMediaListener) {\n this.query.removeEventListener('change', this.matchMediaListener);\n this.matchMediaListener = null;\n }\n },\n isItemMatched: function isItemMatched(processedItem) {\n var _this$getProccessedIt;\n return this.isValidItem(processedItem) && ((_this$getProccessedIt = this.getProccessedItemLabel(processedItem)) === null || _this$getProccessedIt === void 0 ? void 0 : _this$getProccessedIt.toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase()));\n },\n isValidItem: function isValidItem(processedItem) {\n return !!processedItem && !this.isItemDisabled(processedItem.item) && !this.isItemSeparator(processedItem.item) && this.isItemVisible(processedItem.item);\n },\n isValidSelectedItem: function isValidSelectedItem(processedItem) {\n return this.isValidItem(processedItem) && this.isSelected(processedItem);\n },\n isSelected: function isSelected(processedItem) {\n return ObjectUtils.isNotEmpty(this.activeItem) ? this.activeItem.key === processedItem.key : false;\n },\n findFirstItemIndex: function findFirstItemIndex() {\n var _this6 = this;\n return this.visibleItems.findIndex(function (processedItem) {\n return _this6.isValidItem(processedItem);\n });\n },\n findLastItemIndex: function findLastItemIndex() {\n var _this7 = this;\n return ObjectUtils.findLastIndex(this.visibleItems, function (processedItem) {\n return _this7.isValidItem(processedItem);\n });\n },\n findNextItemIndex: function findNextItemIndex(index) {\n var _this8 = this;\n var matchedItemIndex = index < this.visibleItems.length - 1 ? this.visibleItems.slice(index + 1).findIndex(function (processedItem) {\n return _this8.isValidItem(processedItem);\n }) : -1;\n return matchedItemIndex > -1 ? matchedItemIndex + index + 1 : index;\n },\n findPrevItemIndex: function findPrevItemIndex(index) {\n var _this9 = this;\n var matchedItemIndex = index > 0 ? ObjectUtils.findLastIndex(this.visibleItems.slice(0, index), function (processedItem) {\n return _this9.isValidItem(processedItem);\n }) : -1;\n return matchedItemIndex > -1 ? matchedItemIndex : index;\n },\n findSelectedItemIndex: function findSelectedItemIndex() {\n var _this10 = this;\n return this.visibleItems.findIndex(function (processedItem) {\n return _this10.isValidSelectedItem(processedItem);\n });\n },\n findFirstFocusedItemIndex: function findFirstFocusedItemIndex() {\n var selectedIndex = this.findSelectedItemIndex();\n return selectedIndex < 0 ? this.findFirstItemIndex() : selectedIndex;\n },\n findLastFocusedItemIndex: function findLastFocusedItemIndex() {\n var selectedIndex = this.findSelectedItemIndex();\n return selectedIndex < 0 ? this.findLastItemIndex() : selectedIndex;\n },\n findVisibleItem: function findVisibleItem(index) {\n return ObjectUtils.isNotEmpty(this.visibleItems) ? this.visibleItems[index] : null;\n },\n searchItems: function searchItems(event, _char) {\n var _this11 = this;\n this.searchValue = (this.searchValue || '') + _char;\n var itemIndex = -1;\n var matched = false;\n if (this.focusedItemInfo.index !== -1) {\n itemIndex = this.visibleItems.slice(this.focusedItemInfo.index).findIndex(function (processedItem) {\n return _this11.isItemMatched(processedItem);\n });\n itemIndex = itemIndex === -1 ? this.visibleItems.slice(0, this.focusedItemInfo.index).findIndex(function (processedItem) {\n return _this11.isItemMatched(processedItem);\n }) : itemIndex + this.focusedItemInfo.index;\n } else {\n itemIndex = this.visibleItems.findIndex(function (processedItem) {\n return _this11.isItemMatched(processedItem);\n });\n }\n if (itemIndex !== -1) {\n matched = true;\n }\n if (itemIndex === -1 && this.focusedItemInfo.index === -1) {\n itemIndex = this.findFirstFocusedItemIndex();\n }\n if (itemIndex !== -1) {\n this.changeFocusedItemInfo(event, itemIndex);\n }\n if (this.searchTimeout) {\n clearTimeout(this.searchTimeout);\n }\n this.searchTimeout = setTimeout(function () {\n _this11.searchValue = '';\n _this11.searchTimeout = null;\n }, 500);\n return matched;\n },\n changeFocusedItemInfo: function changeFocusedItemInfo(event, index) {\n var processedItem = this.findVisibleItem(index);\n this.focusedItemInfo.index = index;\n this.focusedItemInfo.key = ObjectUtils.isNotEmpty(processedItem) ? processedItem.key : '';\n this.scrollInView();\n },\n scrollInView: function scrollInView() {\n var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;\n var id = index !== -1 ? \"\".concat(this.id, \"_\").concat(index) : this.focusedItemId;\n var element = DomHandler.findSingle(this.menubar, \"li[id=\\\"\".concat(id, \"\\\"]\"));\n if (element) {\n element.scrollIntoView && element.scrollIntoView({\n block: 'nearest',\n inline: 'start'\n });\n }\n },\n createProcessedItems: function createProcessedItems(items) {\n var _this12 = this;\n var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var parentKey = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';\n var columnIndex = arguments.length > 4 ? arguments[4] : undefined;\n var processedItems = [];\n items && items.forEach(function (item, index) {\n var key = (parentKey !== '' ? parentKey + '_' : '') + (columnIndex !== undefined ? columnIndex + '_' : '') + index;\n var newItem = {\n item: item,\n index: index,\n level: level,\n key: key,\n parent: parent,\n parentKey: parentKey,\n columnIndex: columnIndex !== undefined ? columnIndex : parent.columnIndex !== undefined ? parent.columnIndex : index\n };\n newItem['items'] = level === 0 && item.items && item.items.length > 0 ? item.items.map(function (_items, _index) {\n return _this12.createProcessedItems(_items, level + 1, newItem, key, _index);\n }) : _this12.createProcessedItems(item.items, level + 1, newItem, key);\n processedItems.push(newItem);\n });\n return processedItems;\n },\n containerRef: function containerRef(el) {\n this.container = el;\n },\n menubarRef: function menubarRef(el) {\n this.menubar = el ? el.$el : undefined;\n }\n },\n computed: {\n processedItems: function processedItems() {\n return this.createProcessedItems(this.model || []);\n },\n visibleItems: function visibleItems() {\n var processedItem = ObjectUtils.isNotEmpty(this.activeItem) ? this.activeItem : null;\n return processedItem && processedItem.key === this.focusedItemInfo.parentKey ? processedItem.items.reduce(function (items, col) {\n col.forEach(function (submenu) {\n submenu.items.forEach(function (a) {\n items.push(a);\n });\n });\n return items;\n }, []) : this.processedItems;\n },\n horizontal: function horizontal() {\n return this.orientation === 'horizontal';\n },\n vertical: function vertical() {\n return this.orientation === 'vertical';\n },\n focusedItemId: function focusedItemId() {\n return ObjectUtils.isNotEmpty(this.focusedItemInfo.key) ? \"\".concat(this.id, \"_\").concat(this.focusedItemInfo.key) : null;\n }\n },\n components: {\n MegaMenuSub: script$1,\n BarsIcon: BarsIcon\n }\n};\n\nvar _hoisted_1 = [\"id\"];\nvar _hoisted_2 = [\"aria-haspopup\", \"aria-expanded\", \"aria-controls\", \"aria-label\"];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_BarsIcon = resolveComponent(\"BarsIcon\");\n var _component_MegaMenuSub = resolveComponent(\"MegaMenuSub\");\n return openBlock(), createElementBlock(\"div\", mergeProps({\n ref: $options.containerRef,\n id: $data.id,\n \"class\": _ctx.cx('root')\n }, _ctx.ptmi('root')), [_ctx.$slots.start ? (openBlock(), createElementBlock(\"div\", mergeProps({\n key: 0,\n \"class\": _ctx.cx('start')\n }, _ctx.ptm('start')), [renderSlot(_ctx.$slots, \"start\")], 16)) : createCommentVNode(\"\", true), renderSlot(_ctx.$slots, \"menubutton\", {\n id: $data.id,\n \"class\": normalizeClass(_ctx.cx('menubutton')),\n toggleCallback: function toggleCallback(event) {\n return $options.menuButtonClick(event);\n }\n }, function () {\n var _ctx$$primevue$config;\n return [_ctx.model && _ctx.model.length > 0 ? (openBlock(), createElementBlock(\"a\", mergeProps({\n key: 0,\n ref: \"menubutton\",\n role: \"button\",\n tabindex: \"0\",\n \"class\": _ctx.cx('menubutton'),\n \"aria-haspopup\": _ctx.model.length && _ctx.model.length > 0 ? true : false,\n \"aria-expanded\": $data.mobileActive,\n \"aria-controls\": $data.id,\n \"aria-label\": (_ctx$$primevue$config = _ctx.$primevue.config.locale.aria) === null || _ctx$$primevue$config === void 0 ? void 0 : _ctx$$primevue$config.navigation,\n onClick: _cache[0] || (_cache[0] = function ($event) {\n return $options.menuButtonClick($event);\n }),\n onKeydown: _cache[1] || (_cache[1] = function ($event) {\n return $options.menuButtonKeydown($event);\n })\n }, _ctx.ptm('menubutton')), [renderSlot(_ctx.$slots, \"menubuttonicon\", {}, function () {\n return [createVNode(_component_BarsIcon, normalizeProps(guardReactiveProps(_ctx.ptm('menubuttonicon'))), null, 16)];\n })], 16, _hoisted_2)) : createCommentVNode(\"\", true)];\n }), createVNode(_component_MegaMenuSub, {\n ref: $options.menubarRef,\n id: $data.id + '_list',\n tabindex: !_ctx.disabled ? _ctx.tabindex : -1,\n role: \"menubar\",\n \"aria-label\": _ctx.ariaLabel,\n \"aria-labelledby\": _ctx.ariaLabelledby,\n \"aria-disabled\": _ctx.disabled || undefined,\n \"aria-orientation\": _ctx.orientation,\n \"aria-activedescendant\": $data.focused ? $options.focusedItemId : undefined,\n menuId: $data.id,\n focusedItemId: $data.focused ? $options.focusedItemId : undefined,\n items: $options.processedItems,\n horizontal: $options.horizontal,\n templates: _ctx.$slots,\n activeItem: $data.activeItem,\n mobileActive: $data.mobileActive,\n level: 0,\n pt: _ctx.pt,\n unstyled: _ctx.unstyled,\n onFocus: $options.onFocus,\n onBlur: $options.onBlur,\n onKeydown: $options.onKeyDown,\n onItemClick: $options.onItemClick,\n onItemMouseenter: $options.onItemMouseEnter\n }, null, 8, [\"id\", \"tabindex\", \"aria-label\", \"aria-labelledby\", \"aria-disabled\", \"aria-orientation\", \"aria-activedescendant\", \"menuId\", \"focusedItemId\", \"items\", \"horizontal\", \"templates\", \"activeItem\", \"mobileActive\", \"pt\", \"unstyled\", \"onFocus\", \"onBlur\", \"onKeydown\", \"onItemClick\", \"onItemMouseenter\"]), _ctx.$slots.end ? (openBlock(), createElementBlock(\"div\", mergeProps({\n key: 1,\n \"class\": _ctx.cx('end')\n }, _ctx.ptm('end')), [renderSlot(_ctx.$slots, \"end\")], 16)) : createCommentVNode(\"\", true)], 16, _hoisted_1);\n}\n\nscript.render = render;\n\nexport { script as default };\n"],"names":["inlineStyles","_ref","instance","processedItem","classes","_ref2","_ref3","_ref4","_ref5","length","columnClass","MegaMenuStyle","BaseStyle","script$2","BaseComponent","script$1","name","params","ObjectUtils","index","key","event","_this","_this2","mergeProps","AngleRightIcon","AngleDownIcon","Ripple","_hoisted_1$1","_hoisted_2$1","_hoisted_3","_hoisted_4","_hoisted_5","render$1","_ctx","_cache","$props","$setup","$data","$options","_component_MegaMenuSub","resolveComponent","_directive_ripple","resolveDirective","openBlock","createElementBlock","toDisplayString","createCommentVNode","Fragment","renderList","createElementVNode","$event","createBlock","resolveDynamicComponent","withDirectives","normalizeClass","col","submenu","normalizeStyle","script","newValue","UniqueComponentId","newItem","item","ZIndexUtils","DomHandler","isFocus","metaKey","parentKey","items","grouped","originalEvent","root","selected","rootProcessedItem","itemIndex","columnIndex","_itemIndex","_processedItem","_grouped","_itemIndex2","element","anchorElement","_this3","isOutsideContainer","isOutsideTarget","_this4","_this5","query","_this$getProccessedIt","_this6","_this7","_this8","matchedItemIndex","_this9","_this10","selectedIndex","_char","_this11","matched","id","_this12","level","parent","processedItems","_items","_index","el","a","BarsIcon","_hoisted_1","_hoisted_2","render","_component_BarsIcon","renderSlot","_ctx$$primevue$config","createVNode","normalizeProps","guardReactiveProps"],"mappings":"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","x_google_ignoreList":[0,1]}