{"version":3,"file":"tieredmenu.esm.B7XCwCjA.js","sources":["../../../../node_modules/primevue/tieredmenu/style/tieredmenustyle.esm.js","../../../../node_modules/primevue/tieredmenu/tieredmenu.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 props = _ref2.props;\n return ['p-tieredmenu p-component', {\n 'p-tieredmenu-overlay': props.popup,\n 'p-ripple-disabled': instance.$primevue.config.ripple === false\n }];\n },\n start: 'p-tieredmenu-start',\n menu: 'p-tieredmenu-root-list',\n menuitem: function menuitem(_ref3) {\n var instance = _ref3.instance,\n processedItem = _ref3.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 text: 'p-menuitem-text',\n submenuIcon: 'p-submenu-icon',\n submenu: 'p-submenu-list',\n separator: 'p-menuitem-separator',\n end: 'p-tieredmenu-end'\n};\nvar TieredMenuStyle = BaseStyle.extend({\n name: 'tieredmenu',\n classes: classes,\n inlineStyles: inlineStyles\n});\n\nexport { TieredMenuStyle as default };\n","import OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport { ObjectUtils, DomHandler, UniqueComponentId, ZIndexUtils, ConnectedOverlayScrollHandler } from 'primevue/utils';\nimport BaseComponent from 'primevue/basecomponent';\nimport TieredMenuStyle from 'primevue/tieredmenu/style';\nimport AngleRightIcon from 'primevue/icons/angleright';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps, resolveComponent, resolveDirective, openBlock, createBlock, Transition, withCtx, createElementBlock, Fragment, renderList, createElementVNode, withDirectives, resolveDynamicComponent, normalizeClass, createCommentVNode, toDisplayString, normalizeStyle, createVNode, renderSlot } from 'vue';\n\nvar script$2 = {\n name: 'BaseTieredMenu',\n \"extends\": BaseComponent,\n props: {\n popup: {\n type: Boolean,\n \"default\": false\n },\n model: {\n type: Array,\n \"default\": null\n },\n appendTo: {\n type: [String, Object],\n \"default\": 'body'\n },\n autoZIndex: {\n type: Boolean,\n \"default\": true\n },\n baseZIndex: {\n type: Number,\n \"default\": 0\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: TieredMenuStyle,\n provide: function provide() {\n return {\n $parentInstance: this\n };\n }\n};\n\nvar script$1 = {\n name: 'TieredMenuSub',\n hostName: 'TieredMenu',\n \"extends\": BaseComponent,\n emits: ['item-click', 'item-mouseenter', 'item-mousemove'],\n container: null,\n props: {\n menuId: {\n type: String,\n \"default\": null\n },\n focusedItemId: {\n type: String,\n \"default\": null\n },\n items: {\n type: Array,\n \"default\": null\n },\n visible: {\n type: Boolean,\n \"default\": false\n },\n level: {\n type: Number,\n \"default\": 0\n },\n templates: {\n type: Object,\n \"default\": null\n },\n activeItemPath: {\n type: Object,\n \"default\": null\n },\n tabindex: {\n type: Number,\n \"default\": 0\n }\n },\n methods: {\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 getItemLabelId: function getItemLabelId(processedItem) {\n return \"\".concat(this.menuId, \"_\").concat(processedItem.key, \"_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 this.activeItemPath.some(function (path) {\n return path.key === processedItem.key;\n });\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 onEnter: function onEnter() {\n DomHandler.nestedPosition(this.container, this.level);\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 onItemMouseMove: function onItemMouseMove(event, processedItem) {\n this.$emit('item-mousemove', {\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 containerRef: function containerRef(el) {\n this.container = el;\n }\n },\n components: {\n AngleRightIcon: AngleRightIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n\nvar _hoisted_1$1 = [\"tabindex\"];\nvar _hoisted_2 = [\"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\", \"onMousemove\"];\nvar _hoisted_4 = [\"href\", \"target\"];\nvar _hoisted_5 = [\"id\"];\nvar _hoisted_6 = [\"id\"];\nfunction render$1(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_AngleRightIcon = resolveComponent(\"AngleRightIcon\");\n var _component_TieredMenuSub = resolveComponent(\"TieredMenuSub\", true);\n var _directive_ripple = resolveDirective(\"ripple\");\n return openBlock(), createBlock(Transition, mergeProps({\n name: \"p-tieredmenu\",\n onEnter: $options.onEnter\n }, _ctx.ptm('menu.transition')), {\n \"default\": withCtx(function () {\n return [($props.level === 0 ? true : $props.visible) ? (openBlock(), createElementBlock(\"ul\", mergeProps({\n key: 0,\n ref: $options.containerRef,\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')), [(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 onMousemove: function onMousemove($event) {\n return $options.onItemMouseMove($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 id: $options.getItemLabelId(processedItem),\n \"class\": _ctx.cx('label')\n }, $options.getPTOptions(processedItem, index, 'label')), toDisplayString($options.getItemLabel(processedItem)), 17, _hoisted_5), $options.getItemProp(processedItem, 'items') ? (openBlock(), createElementBlock(Fragment, {\n key: 2\n }, [$props.templates.submenuicon ? (openBlock(), createBlock(resolveDynamicComponent($props.templates.submenuicon), mergeProps({\n key: 0,\n \"class\": _ctx.cx('submenuIcon'),\n active: $options.isItemActive(processedItem)\n }, $options.getPTOptions(processedItem, index, 'submenuIcon')), null, 16, [\"class\", \"active\"])) : (openBlock(), createBlock(_component_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.getItemProp(processedItem, 'items'),\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(), createBlock(_component_TieredMenuSub, {\n key: 0,\n id: $options.getItemId(processedItem) + '_list',\n style: normalizeStyle(_ctx.sx('submenu', true, {\n processedItem: processedItem\n })),\n \"aria-labelledby\": $options.getItemLabelId(processedItem),\n role: \"menu\",\n menuId: $props.menuId,\n focusedItemId: $props.focusedItemId,\n items: processedItem.items,\n templates: $props.templates,\n activeItemPath: $props.activeItemPath,\n level: $props.level + 1,\n visible: $options.isItemActive(processedItem) && $options.isItemGroup(processedItem),\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 onItemMousemove: _cache[2] || (_cache[2] = function ($event) {\n return _ctx.$emit('item-mousemove', $event);\n })\n }, null, 8, [\"id\", \"style\", \"aria-labelledby\", \"menuId\", \"focusedItemId\", \"items\", \"templates\", \"activeItemPath\", \"level\", \"visible\", \"pt\", \"unstyled\"])) : createCommentVNode(\"\", true)], 16, _hoisted_2)) : createCommentVNode(\"\", true), $options.isItemVisible(processedItem) && $options.getItemProp(processedItem, 'separator') ? (openBlock(), createElementBlock(\"li\", mergeProps({\n key: 1,\n id: $options.getItemId(processedItem),\n style: $options.getItemProp(processedItem, 'style'),\n \"class\": [_ctx.cx('separator'), $options.getItemProp(processedItem, 'class')],\n role: \"separator\"\n }, _ctx.ptm('separator')), null, 16, _hoisted_6)) : createCommentVNode(\"\", true)], 64);\n }), 128))], 16, _hoisted_1$1)) : createCommentVNode(\"\", true)];\n }),\n _: 1\n }, 16, [\"onEnter\"]);\n}\n\nscript$1.render = render$1;\n\nvar script = {\n name: 'TieredMenu',\n \"extends\": script$2,\n inheritAttrs: false,\n emits: ['focus', 'blur', 'before-show', 'before-hide', 'hide', 'show'],\n outsideClickListener: null,\n scrollHandler: null,\n resizeListener: null,\n target: 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 focused: false,\n focusedItemInfo: {\n index: -1,\n level: 0,\n parentKey: ''\n },\n activeItemPath: [],\n visible: !this.popup,\n submenuVisible: false,\n dirty: false\n };\n },\n watch: {\n '$attrs.id': function $attrsId(newValue) {\n this.id = newValue || UniqueComponentId();\n },\n activeItemPath: function activeItemPath(newPath) {\n if (!this.popup) {\n if (ObjectUtils.isNotEmpty(newPath)) {\n this.bindOutsideClickListener();\n this.bindResizeListener();\n } else {\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n }\n }\n }\n },\n mounted: function mounted() {\n this.id = this.id || UniqueComponentId();\n },\n beforeUnmount: function beforeUnmount() {\n this.unbindOutsideClickListener();\n this.unbindResizeListener();\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n this.target = null;\n this.container = null;\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 this.visible ? this.hide(event, true) : this.show(event);\n },\n show: function show(event, isFocus) {\n if (this.popup) {\n this.$emit('before-show');\n this.visible = true;\n this.target = this.target || event.currentTarget;\n this.relatedTarget = event.relatedTarget || null;\n }\n isFocus && DomHandler.focus(this.menubar);\n },\n hide: function hide(event, isFocus) {\n if (this.popup) {\n this.$emit('before-hide');\n this.visible = false;\n }\n this.activeItemPath = [];\n this.focusedItemInfo = {\n index: -1,\n level: 0,\n parentKey: ''\n };\n isFocus && DomHandler.focus(this.relatedTarget || this.target || this.menubar);\n this.dirty = false;\n },\n onFocus: function onFocus(event) {\n this.focused = true;\n if (!this.popup) {\n this.focusedItemInfo = this.focusedItemInfo.index !== -1 ? this.focusedItemInfo : {\n index: this.findFirstFocusedItemIndex(),\n level: 0,\n 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 level: 0,\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 level = processedItem.level,\n parentKey = processedItem.parentKey,\n items = processedItem.items;\n var grouped = ObjectUtils.isNotEmpty(items);\n var activeItemPath = this.activeItemPath.filter(function (p) {\n return p.parentKey !== parentKey && p.parentKey !== key;\n });\n if (grouped) {\n activeItemPath.push(processedItem);\n this.submenuVisible = true;\n }\n this.focusedItemInfo = {\n index: index,\n level: level,\n parentKey: parentKey\n };\n this.activeItemPath = activeItemPath;\n grouped && (this.dirty = true);\n isFocus && DomHandler.focus(this.menubar);\n },\n onOverlayClick: function onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.target\n });\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 level = processedItem.level,\n parentKey = processedItem.parentKey;\n this.activeItemPath = this.activeItemPath.filter(function (p) {\n return key !== p.key && key.startsWith(p.key);\n });\n this.focusedItemInfo = {\n index: index,\n level: level,\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.activeItemPath.find(function (p) {\n return p.parentKey === '';\n });\n this.hide(originalEvent);\n this.changeFocusedItemIndex(originalEvent, rootProcessedItem ? rootProcessedItem.index : -1);\n DomHandler.focus(this.menubar);\n }\n }\n },\n onItemMouseEnter: function onItemMouseEnter(event) {\n if (this.dirty) {\n this.onItemChange(event);\n }\n },\n onItemMouseMove: function onItemMouseMove(event) {\n if (this.focused) {\n this.changeFocusedItemIndex(event, event.processedItem.index);\n }\n },\n onArrowDownKey: function onArrowDownKey(event) {\n var itemIndex = this.focusedItemInfo.index !== -1 ? this.findNextItemIndex(this.focusedItemInfo.index) : this.findFirstFocusedItemIndex();\n this.changeFocusedItemIndex(event, itemIndex);\n event.preventDefault();\n },\n onArrowUpKey: function onArrowUpKey(event) {\n if (event.altKey) {\n if (this.focusedItemInfo.index !== -1) {\n var processedItem = this.visibleItems[this.focusedItemInfo.index];\n var grouped = this.isProccessedItemGroup(processedItem);\n !grouped && this.onItemChange({\n originalEvent: event,\n processedItem: processedItem\n });\n }\n this.popup && this.hide(event, true);\n event.preventDefault();\n } else {\n var itemIndex = this.focusedItemInfo.index !== -1 ? this.findPrevItemIndex(this.focusedItemInfo.index) : this.findLastFocusedItemIndex();\n this.changeFocusedItemIndex(event, itemIndex);\n event.preventDefault();\n }\n },\n onArrowLeftKey: function onArrowLeftKey(event) {\n var _this = this;\n var processedItem = this.visibleItems[this.focusedItemInfo.index];\n var parentItem = this.activeItemPath.find(function (p) {\n return p.key === processedItem.parentKey;\n });\n var root = ObjectUtils.isEmpty(processedItem.parent);\n if (!root) {\n this.focusedItemInfo = {\n index: -1,\n parentKey: parentItem ? parentItem.parentKey : ''\n };\n this.searchValue = '';\n this.onArrowDownKey(event);\n }\n this.activeItemPath = this.activeItemPath.filter(function (p) {\n return p.parentKey !== _this.focusedItemInfo.parentKey;\n });\n event.preventDefault();\n },\n onArrowRightKey: function onArrowRightKey(event) {\n var processedItem = this.visibleItems[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 parentKey: processedItem.key\n };\n this.searchValue = '';\n this.onArrowDownKey(event);\n }\n event.preventDefault();\n },\n onHomeKey: function onHomeKey(event) {\n this.changeFocusedItemIndex(event, this.findFirstItemIndex());\n event.preventDefault();\n },\n onEndKey: function onEndKey(event) {\n this.changeFocusedItemIndex(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, '[data-pc-section=\"action\"]');\n anchorElement ? anchorElement.click() : element && element.click();\n if (!this.popup) {\n var processedItem = this.visibleItems[this.focusedItemInfo.index];\n var grouped = this.isProccessedItemGroup(processedItem);\n !grouped && (this.focusedItemInfo.index = this.findFirstFocusedItemIndex());\n }\n }\n event.preventDefault();\n },\n onSpaceKey: function onSpaceKey(event) {\n this.onEnterKey(event);\n },\n onEscapeKey: function onEscapeKey(event) {\n if (this.popup || this.focusedItemInfo.level !== 0) {\n var _focusedItemInfo = this.focusedItemInfo;\n this.hide(event, false);\n this.focusedItemInfo = {\n index: Number(_focusedItemInfo.parentKey.split('_')[0]),\n level: 0,\n parentKey: ''\n };\n this.popup && DomHandler.focus(this.target);\n }\n event.preventDefault();\n },\n onTabKey: function onTabKey(event) {\n if (this.focusedItemInfo.index !== -1) {\n var processedItem = this.visibleItems[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 onEnter: function onEnter(el) {\n if (this.autoZIndex) {\n ZIndexUtils.set('menu', el, this.baseZIndex + this.$primevue.config.zIndex.menu);\n }\n DomHandler.addStyles(el, {\n position: 'absolute',\n top: '0',\n left: '0'\n });\n this.alignOverlay();\n DomHandler.focus(this.menubar);\n this.scrollInView();\n },\n onAfterEnter: function onAfterEnter() {\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n this.$emit('show');\n },\n onLeave: function onLeave() {\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n this.$emit('hide');\n this.container = null;\n this.dirty = false;\n },\n onAfterLeave: function onAfterLeave(el) {\n if (this.autoZIndex) {\n ZIndexUtils.clear(el);\n }\n },\n alignOverlay: function alignOverlay() {\n DomHandler.absolutePosition(this.container, this.target);\n var targetWidth = DomHandler.getOuterWidth(this.target);\n if (targetWidth > DomHandler.getOuterWidth(this.container)) {\n this.container.style.minWidth = DomHandler.getOuterWidth(this.target) + 'px';\n }\n },\n bindOutsideClickListener: function bindOutsideClickListener() {\n var _this2 = this;\n if (!this.outsideClickListener) {\n this.outsideClickListener = function (event) {\n var isOutsideContainer = _this2.container && !_this2.container.contains(event.target);\n var isOutsideTarget = _this2.popup ? !(_this2.target && (_this2.target === event.target || _this2.target.contains(event.target))) : true;\n if (isOutsideContainer && isOutsideTarget) {\n _this2.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 bindScrollListener: function bindScrollListener() {\n var _this3 = this;\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.target, function (event) {\n _this3.hide(event, true);\n });\n }\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener: function unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\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 };\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 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 this.activeItemPath.some(function (p) {\n return p.key === processedItem.key;\n });\n },\n findFirstItemIndex: function findFirstItemIndex() {\n var _this5 = this;\n return this.visibleItems.findIndex(function (processedItem) {\n return _this5.isValidItem(processedItem);\n });\n },\n findLastItemIndex: function findLastItemIndex() {\n var _this6 = this;\n return ObjectUtils.findLastIndex(this.visibleItems, function (processedItem) {\n return _this6.isValidItem(processedItem);\n });\n },\n findNextItemIndex: function findNextItemIndex(index) {\n var _this7 = this;\n var matchedItemIndex = index < this.visibleItems.length - 1 ? this.visibleItems.slice(index + 1).findIndex(function (processedItem) {\n return _this7.isValidItem(processedItem);\n }) : -1;\n return matchedItemIndex > -1 ? matchedItemIndex + index + 1 : index;\n },\n findPrevItemIndex: function findPrevItemIndex(index) {\n var _this8 = this;\n var matchedItemIndex = index > 0 ? ObjectUtils.findLastIndex(this.visibleItems.slice(0, index), function (processedItem) {\n return _this8.isValidItem(processedItem);\n }) : -1;\n return matchedItemIndex > -1 ? matchedItemIndex : index;\n },\n findSelectedItemIndex: function findSelectedItemIndex() {\n var _this9 = this;\n return this.visibleItems.findIndex(function (processedItem) {\n return _this9.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 searchItems: function searchItems(event, _char) {\n var _this10 = 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 _this10.isItemMatched(processedItem);\n });\n itemIndex = itemIndex === -1 ? this.visibleItems.slice(0, this.focusedItemInfo.index).findIndex(function (processedItem) {\n return _this10.isItemMatched(processedItem);\n }) : itemIndex + this.focusedItemInfo.index;\n } else {\n itemIndex = this.visibleItems.findIndex(function (processedItem) {\n return _this10.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.changeFocusedItemIndex(event, itemIndex);\n }\n if (this.searchTimeout) {\n clearTimeout(this.searchTimeout);\n }\n this.searchTimeout = setTimeout(function () {\n _this10.searchValue = '';\n _this10.searchTimeout = null;\n }, 500);\n return matched;\n },\n changeFocusedItemIndex: function changeFocusedItemIndex(event, index) {\n if (this.focusedItemInfo.index !== index) {\n this.focusedItemInfo.index = index;\n this.scrollInView();\n }\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 _this11 = 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 processedItems = [];\n items && items.forEach(function (item, index) {\n var key = (parentKey !== '' ? parentKey + '_' : '') + index;\n var newItem = {\n item: item,\n index: index,\n level: level,\n key: key,\n parent: parent,\n parentKey: parentKey\n };\n newItem['items'] = _this11.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 _this12 = this;\n var processedItem = this.activeItemPath.find(function (p) {\n return p.key === _this12.focusedItemInfo.parentKey;\n });\n return processedItem ? processedItem.items : this.processedItems;\n },\n focusedItemId: function focusedItemId() {\n return this.focusedItemInfo.index !== -1 ? \"\".concat(this.id).concat(ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey) ? '_' + this.focusedItemInfo.parentKey : '', \"_\").concat(this.focusedItemInfo.index) : null;\n }\n },\n components: {\n TieredMenuSub: script$1,\n Portal: Portal\n }\n};\n\nvar _hoisted_1 = [\"id\"];\nfunction render(_ctx, _cache, $props, $setup, $data, $options) {\n var _component_TieredMenuSub = resolveComponent(\"TieredMenuSub\");\n var _component_Portal = resolveComponent(\"Portal\");\n return openBlock(), createBlock(_component_Portal, {\n appendTo: _ctx.appendTo,\n disabled: !_ctx.popup\n }, {\n \"default\": withCtx(function () {\n return [createVNode(Transition, mergeProps({\n name: \"p-connected-overlay\",\n onEnter: $options.onEnter,\n onAfterEnter: $options.onAfterEnter,\n onLeave: $options.onLeave,\n onAfterLeave: $options.onAfterLeave\n }, _ctx.ptm('transition')), {\n \"default\": withCtx(function () {\n return [$data.visible ? (openBlock(), createElementBlock(\"div\", mergeProps({\n key: 0,\n ref: $options.containerRef,\n id: $data.id,\n \"class\": _ctx.cx('root'),\n onClick: _cache[0] || (_cache[0] = function () {\n return $options.onOverlayClick && $options.onOverlayClick.apply($options, arguments);\n })\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), createVNode(_component_TieredMenuSub, {\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\": \"vertical\",\n \"aria-activedescendant\": $data.focused ? $options.focusedItemId : undefined,\n menuId: $data.id,\n focusedItemId: $data.focused ? $options.focusedItemId : undefined,\n items: $options.processedItems,\n templates: _ctx.$slots,\n activeItemPath: $data.activeItemPath,\n level: 0,\n visible: $data.submenuVisible,\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 onItemMousemove: $options.onItemMouseMove\n }, null, 8, [\"id\", \"tabindex\", \"aria-label\", \"aria-labelledby\", \"aria-disabled\", \"aria-activedescendant\", \"menuId\", \"focusedItemId\", \"items\", \"templates\", \"activeItemPath\", \"visible\", \"pt\", \"unstyled\", \"onFocus\", \"onBlur\", \"onKeydown\", \"onItemClick\", \"onItemMouseenter\", \"onItemMousemove\"]), _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)) : createCommentVNode(\"\", true)];\n }),\n _: 3\n }, 16, [\"onEnter\", \"onAfterEnter\", \"onLeave\", \"onAfterLeave\"])];\n }),\n _: 3\n }, 8, [\"appendTo\", \"disabled\"]);\n}\n\nscript.render = render;\n\nexport { script as default };\n"],"names":["inlineStyles","_ref","instance","processedItem","classes","_ref2","props","_ref3","TieredMenuStyle","BaseStyle","script$2","BaseComponent","script$1","name","params","ObjectUtils","index","key","path","DomHandler","event","_this","_this2","mergeProps","el","AngleRightIcon","Ripple","_hoisted_1$1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","render$1","_ctx","_cache","$props","$setup","$data","$options","_component_AngleRightIcon","resolveComponent","_component_TieredMenuSub","_directive_ripple","resolveDirective","openBlock","createBlock","Transition","withCtx","createElementBlock","Fragment","renderList","createElementVNode","$event","resolveDynamicComponent","withDirectives","normalizeClass","createCommentVNode","toDisplayString","normalizeStyle","script","newValue","UniqueComponentId","newPath","ZIndexUtils","item","isFocus","metaKey","level","parentKey","items","grouped","activeItemPath","p","OverlayEventBus","originalEvent","root","selected","rootProcessedItem","itemIndex","parentItem","element","anchorElement","_focusedItemInfo","targetWidth","isOutsideContainer","isOutsideTarget","_this3","ConnectedOverlayScrollHandler","_this4","_this$getProccessedIt","_this5","_this6","_this7","matchedItemIndex","_this8","_this9","selectedIndex","_char","_this10","matched","id","_this11","parent","processedItems","newItem","_this12","Portal","_hoisted_1","render","_component_Portal","createVNode","renderSlot"],"mappings":"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","x_google_ignoreList":[0,1]}