primevue 3.27.0 → 3.28.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/README.md +1 -1
- package/autocomplete/AutoComplete.d.ts +10 -1
- package/autocomplete/AutoComplete.vue +1 -1
- package/autocomplete/autocomplete.cjs.js +4 -1
- package/autocomplete/autocomplete.cjs.min.js +1 -1
- package/autocomplete/autocomplete.esm.js +4 -1
- package/autocomplete/autocomplete.esm.min.js +1 -1
- package/autocomplete/autocomplete.js +4 -1
- package/autocomplete/autocomplete.min.js +1 -1
- package/avatar/Avatar.d.ts +44 -0
- package/avatar/Avatar.vue +10 -8
- package/avatar/avatar.cjs.js +36 -34
- package/avatar/avatar.cjs.min.js +1 -1
- package/avatar/avatar.esm.js +33 -35
- package/avatar/avatar.esm.min.js +1 -1
- package/avatar/avatar.js +37 -36
- package/avatar/avatar.min.js +1 -1
- package/avatargroup/AvatarGroup.d.ts +27 -1
- package/avatargroup/AvatarGroup.vue +5 -2
- package/avatargroup/avatargroup.cjs.js +9 -5
- package/avatargroup/avatargroup.cjs.min.js +1 -1
- package/avatargroup/avatargroup.esm.js +6 -6
- package/avatargroup/avatargroup.esm.min.js +1 -1
- package/avatargroup/avatargroup.js +10 -7
- package/avatargroup/avatargroup.min.js +1 -1
- package/badge/Badge.d.ts +32 -0
- package/badge/Badge.vue +3 -1
- package/badge/badge.cjs.js +8 -4
- package/badge/badge.cjs.min.js +1 -1
- package/badge/badge.esm.js +5 -5
- package/badge/badge.esm.min.js +1 -1
- package/badge/badge.js +9 -6
- package/badge/badge.min.js +1 -1
- package/basecomponent/BaseComponent.vue +10 -3
- package/basecomponent/basecomponent.cjs.js +10 -3
- package/basecomponent/basecomponent.cjs.min.js +1 -1
- package/basecomponent/basecomponent.esm.js +10 -3
- package/basecomponent/basecomponent.esm.min.js +1 -1
- package/basecomponent/basecomponent.js +10 -3
- package/basecomponent/basecomponent.min.js +1 -1
- package/baseicon/BaseIcon.vue +2 -2
- package/baseicon/baseicon.cjs.js +2 -2
- package/baseicon/baseicon.cjs.min.js +1 -1
- package/baseicon/baseicon.esm.js +2 -2
- package/baseicon/baseicon.esm.min.js +1 -1
- package/baseicon/baseicon.js +2 -2
- package/baseicon/baseicon.min.js +1 -1
- package/blockui/BlockUI.d.ts +44 -0
- package/blockui/BlockUI.vue +3 -1
- package/blockui/blockui.cjs.js +9 -3
- package/blockui/blockui.cjs.min.js +1 -1
- package/blockui/blockui.esm.js +6 -4
- package/blockui/blockui.esm.min.js +1 -1
- package/blockui/blockui.js +10 -5
- package/blockui/blockui.min.js +1 -1
- package/breadcrumb/Breadcrumb.d.ts +60 -0
- package/breadcrumb/Breadcrumb.vue +8 -6
- package/breadcrumb/BreadcrumbItem.vue +14 -10
- package/breadcrumb/breadcrumb.cjs.js +53 -51
- package/breadcrumb/breadcrumb.cjs.min.js +1 -1
- package/breadcrumb/breadcrumb.esm.js +53 -52
- package/breadcrumb/breadcrumb.esm.min.js +1 -1
- package/breadcrumb/breadcrumb.js +54 -53
- package/breadcrumb/breadcrumb.min.js +1 -1
- package/button/Button.d.ts +48 -0
- package/button/Button.vue +10 -9
- package/button/button.cjs.js +43 -44
- package/button/button.cjs.min.js +1 -1
- package/button/button.esm.js +43 -45
- package/button/button.esm.min.js +1 -1
- package/button/button.js +44 -46
- package/button/button.min.js +1 -1
- package/chart/Chart.d.ts +36 -0
- package/chart/Chart.vue +5 -2
- package/chart/chart.cjs.js +10 -5
- package/chart/chart.cjs.min.js +1 -1
- package/chart/chart.esm.js +7 -6
- package/chart/chart.esm.min.js +1 -1
- package/chart/chart.js +11 -7
- package/chart/chart.min.js +1 -1
- package/chip/Chip.d.ts +60 -0
- package/chip/Chip.vue +10 -9
- package/chip/chip.cjs.js +35 -36
- package/chip/chip.cjs.min.js +1 -1
- package/chip/chip.esm.js +35 -37
- package/chip/chip.esm.min.js +1 -1
- package/chip/chip.js +36 -38
- package/chip/chip.min.js +1 -1
- package/config/PrimeVue.d.ts +8 -0
- package/config/config.cjs.js +3 -1
- package/config/config.cjs.min.js +1 -1
- package/config/config.esm.js +3 -2
- package/config/config.esm.min.js +1 -1
- package/config/config.js +3 -1
- package/config/config.min.js +1 -1
- package/confirmdialog/ConfirmDialog.d.ts +88 -0
- package/confirmdialog/ConfirmDialog.vue +9 -6
- package/confirmdialog/confirmdialog.cjs.js +22 -18
- package/confirmdialog/confirmdialog.cjs.min.js +1 -1
- package/confirmdialog/confirmdialog.esm.js +22 -19
- package/confirmdialog/confirmdialog.esm.min.js +1 -1
- package/confirmdialog/confirmdialog.js +23 -20
- package/confirmdialog/confirmdialog.min.js +1 -1
- package/confirmpopup/ConfirmPopup.d.ts +75 -0
- package/confirmpopup/ConfirmPopup.vue +11 -9
- package/confirmpopup/confirmpopup.cjs.js +27 -25
- package/confirmpopup/confirmpopup.cjs.min.js +1 -1
- package/confirmpopup/confirmpopup.esm.js +27 -26
- package/confirmpopup/confirmpopup.esm.min.js +1 -1
- package/confirmpopup/confirmpopup.js +28 -27
- package/confirmpopup/confirmpopup.min.js +1 -1
- package/contextmenu/ContextMenu.d.ts +135 -0
- package/contextmenu/ContextMenu.vue +4 -1
- package/contextmenu/ContextMenuSub.vue +46 -10
- package/contextmenu/contextmenu.cjs.js +57 -46
- package/contextmenu/contextmenu.cjs.min.js +1 -1
- package/contextmenu/contextmenu.esm.js +57 -47
- package/contextmenu/contextmenu.esm.min.js +1 -1
- package/contextmenu/contextmenu.js +58 -48
- package/contextmenu/contextmenu.min.js +1 -1
- package/core/core.js +278 -246
- package/core/core.min.js +11 -11
- package/dialog/Dialog.d.ts +87 -0
- package/dialog/Dialog.vue +23 -10
- package/dialog/dialog.cjs.js +31 -30
- package/dialog/dialog.cjs.min.js +1 -1
- package/dialog/dialog.esm.js +31 -31
- package/dialog/dialog.esm.min.js +1 -1
- package/dialog/dialog.js +32 -32
- package/dialog/dialog.min.js +1 -1
- package/dock/Dock.d.ts +94 -0
- package/dock/Dock.vue +4 -2
- package/dock/DockSub.vue +30 -6
- package/dock/dock.cjs.js +52 -39
- package/dock/dock.cjs.min.js +1 -1
- package/dock/dock.esm.js +52 -40
- package/dock/dock.esm.min.js +1 -1
- package/dock/dock.js +53 -41
- package/dock/dock.min.js +1 -1
- package/dropdown/Dropdown.vue +1 -1
- package/dropdown/dropdown.cjs.js +1 -1
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.esm.js +1 -1
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +1 -1
- package/dropdown/dropdown.min.js +1 -1
- package/dynamicdialog/DynamicDialog.vue +3 -1
- package/dynamicdialog/dynamicdialog.cjs.js +5 -1
- package/dynamicdialog/dynamicdialog.cjs.min.js +1 -1
- package/dynamicdialog/dynamicdialog.esm.js +4 -1
- package/dynamicdialog/dynamicdialog.esm.min.js +1 -1
- package/dynamicdialog/dynamicdialog.js +6 -3
- package/dynamicdialog/dynamicdialog.min.js +1 -1
- package/fileupload/FileContent.vue +11 -9
- package/fileupload/FileUpload.d.ts +154 -0
- package/fileupload/FileUpload.vue +26 -24
- package/fileupload/fileupload.cjs.js +100 -97
- package/fileupload/fileupload.cjs.min.js +1 -1
- package/fileupload/fileupload.esm.js +100 -98
- package/fileupload/fileupload.esm.min.js +1 -1
- package/fileupload/fileupload.js +101 -99
- package/fileupload/fileupload.min.js +1 -1
- package/inlinemessage/InlineMessage.d.ts +52 -0
- package/inlinemessage/InlineMessage.vue +7 -3
- package/inlinemessage/inlinemessage.cjs.js +12 -11
- package/inlinemessage/inlinemessage.cjs.min.js +1 -1
- package/inlinemessage/inlinemessage.esm.js +12 -12
- package/inlinemessage/inlinemessage.esm.min.js +1 -1
- package/inlinemessage/inlinemessage.js +13 -13
- package/inlinemessage/inlinemessage.min.js +1 -1
- package/inplace/Inplace.d.ts +59 -0
- package/inplace/Inplace.vue +7 -5
- package/inplace/inplace.cjs.js +17 -16
- package/inplace/inplace.cjs.min.js +1 -1
- package/inplace/inplace.esm.js +17 -17
- package/inplace/inplace.esm.min.js +1 -1
- package/inplace/inplace.js +18 -18
- package/inplace/inplace.min.js +1 -1
- package/listbox/Listbox.d.ts +1 -1
- package/megamenu/MegaMenu.d.ts +149 -0
- package/megamenu/MegaMenu.vue +6 -3
- package/megamenu/MegaMenuSub.vue +43 -15
- package/megamenu/megamenu.cjs.js +83 -75
- package/megamenu/megamenu.cjs.min.js +1 -1
- package/megamenu/megamenu.esm.js +83 -76
- package/megamenu/megamenu.esm.min.js +1 -1
- package/megamenu/megamenu.js +84 -77
- package/megamenu/megamenu.min.js +1 -1
- package/menu/Menu.d.ts +113 -0
- package/menu/Menu.vue +11 -8
- package/menu/Menuitem.vue +20 -8
- package/menu/menu.cjs.js +73 -62
- package/menu/menu.cjs.min.js +1 -1
- package/menu/menu.esm.js +73 -63
- package/menu/menu.esm.min.js +1 -1
- package/menu/menu.js +74 -64
- package/menu/menu.min.js +1 -1
- package/menubar/Menubar.d.ts +146 -0
- package/menubar/Menubar.vue +8 -5
- package/menubar/MenubarSub.vue +38 -10
- package/menubar/menubar.cjs.js +70 -60
- package/menubar/menubar.cjs.min.js +1 -1
- package/menubar/menubar.esm.js +70 -61
- package/menubar/menubar.esm.min.js +1 -1
- package/menubar/menubar.js +71 -62
- package/menubar/menubar.min.js +1 -1
- package/message/Message.d.ts +64 -1
- package/message/Message.vue +9 -7
- package/message/message.cjs.js +22 -21
- package/message/message.cjs.min.js +1 -1
- package/message/message.esm.js +22 -22
- package/message/message.esm.min.js +1 -1
- package/message/message.js +23 -23
- package/message/message.min.js +1 -1
- package/multiselect/MultiSelect.d.ts +1 -1
- package/overlaypanel/OverlayPanel.d.ts +56 -0
- package/overlaypanel/OverlayPanel.vue +6 -4
- package/overlaypanel/overlaypanel.cjs.js +13 -10
- package/overlaypanel/overlaypanel.cjs.min.js +1 -1
- package/overlaypanel/overlaypanel.esm.js +13 -11
- package/overlaypanel/overlaypanel.esm.min.js +1 -1
- package/overlaypanel/overlaypanel.js +14 -12
- package/overlaypanel/overlaypanel.min.js +1 -1
- package/package.json +1 -1
- package/panel/Panel.d.ts +10 -1
- package/panel/Panel.vue +1 -1
- package/panel/panel.cjs.js +4 -1
- package/panel/panel.cjs.min.js +1 -1
- package/panel/panel.esm.js +4 -1
- package/panel/panel.esm.min.js +1 -1
- package/panel/panel.js +4 -1
- package/panel/panel.min.js +1 -1
- package/panelmenu/PanelMenu.d.ts +133 -0
- package/panelmenu/PanelMenu.vue +36 -13
- package/panelmenu/PanelMenuList.vue +3 -0
- package/panelmenu/PanelMenuSub.vue +33 -12
- package/panelmenu/panelmenu.cjs.js +115 -96
- package/panelmenu/panelmenu.cjs.min.js +1 -1
- package/panelmenu/panelmenu.esm.js +115 -97
- package/panelmenu/panelmenu.esm.min.js +1 -1
- package/panelmenu/panelmenu.js +116 -98
- package/panelmenu/panelmenu.min.js +1 -1
- package/password/Password.vue +2 -2
- package/password/password.cjs.js +2 -2
- package/password/password.cjs.min.js +1 -1
- package/password/password.esm.js +2 -2
- package/password/password.esm.min.js +1 -1
- package/password/password.js +2 -2
- package/password/password.min.js +1 -1
- package/progressbar/ProgressBar.d.ts +40 -0
- package/progressbar/ProgressBar.vue +8 -5
- package/progressbar/progressbar.cjs.js +25 -23
- package/progressbar/progressbar.cjs.min.js +1 -1
- package/progressbar/progressbar.esm.js +22 -24
- package/progressbar/progressbar.esm.min.js +1 -1
- package/progressbar/progressbar.js +26 -25
- package/progressbar/progressbar.min.js +1 -1
- package/progressspinner/ProgressSpinner.d.ts +40 -0
- package/progressspinner/ProgressSpinner.vue +6 -3
- package/progressspinner/progressspinner.cjs.js +18 -13
- package/progressspinner/progressspinner.cjs.min.js +1 -1
- package/progressspinner/progressspinner.esm.js +15 -14
- package/progressspinner/progressspinner.esm.min.js +1 -1
- package/progressspinner/progressspinner.js +19 -15
- package/progressspinner/progressspinner.min.js +1 -1
- package/resources/themes/arya-blue/theme.css +1 -1
- package/resources/themes/arya-green/theme.css +1 -1
- package/resources/themes/arya-orange/theme.css +1 -1
- package/resources/themes/arya-purple/theme.css +1 -1
- package/resources/themes/bootstrap4-dark-blue/theme.css +1 -1
- package/resources/themes/bootstrap4-dark-purple/theme.css +1 -1
- package/resources/themes/bootstrap4-light-blue/theme.css +1 -1
- package/resources/themes/bootstrap4-light-purple/theme.css +1 -1
- package/resources/themes/fluent-light/theme.css +1 -1
- package/resources/themes/lara-dark-blue/theme.css +1 -1
- package/resources/themes/lara-dark-indigo/theme.css +1 -1
- package/resources/themes/lara-dark-purple/theme.css +1 -1
- package/resources/themes/lara-dark-teal/theme.css +1 -1
- package/resources/themes/lara-light-blue/theme.css +1 -1
- package/resources/themes/lara-light-indigo/theme.css +1 -1
- package/resources/themes/lara-light-purple/theme.css +1 -1
- package/resources/themes/lara-light-teal/theme.css +1 -1
- package/resources/themes/luna-amber/theme.css +1 -1
- package/resources/themes/luna-blue/theme.css +1 -1
- package/resources/themes/luna-green/theme.css +1 -1
- package/resources/themes/luna-pink/theme.css +1 -1
- package/resources/themes/md-dark-deeppurple/theme.css +4 -1
- package/resources/themes/md-dark-indigo/theme.css +4 -1
- package/resources/themes/md-light-deeppurple/theme.css +4 -1
- package/resources/themes/md-light-indigo/theme.css +4 -1
- package/resources/themes/mdc-dark-deeppurple/theme.css +4 -1
- package/resources/themes/mdc-dark-indigo/theme.css +4 -1
- package/resources/themes/mdc-light-deeppurple/theme.css +4 -1
- package/resources/themes/mdc-light-indigo/theme.css +4 -1
- package/resources/themes/mira/theme.css +1 -1
- package/resources/themes/nano/theme.css +1 -1
- package/resources/themes/nova/theme.css +1 -1
- package/resources/themes/nova-accent/theme.css +1 -1
- package/resources/themes/nova-alt/theme.css +1 -1
- package/resources/themes/nova-vue/theme.css +1 -1
- package/resources/themes/rhea/theme.css +1 -1
- package/resources/themes/saga-blue/theme.css +1 -1
- package/resources/themes/saga-green/theme.css +1 -1
- package/resources/themes/saga-orange/theme.css +1 -1
- package/resources/themes/saga-purple/theme.css +1 -1
- package/resources/themes/soho-dark/theme.css +1 -1
- package/resources/themes/soho-light/theme.css +1 -1
- package/resources/themes/tailwind-light/theme.css +1 -1
- package/resources/themes/vela-blue/theme.css +1 -1
- package/resources/themes/vela-green/theme.css +1 -1
- package/resources/themes/vela-orange/theme.css +1 -1
- package/resources/themes/vela-purple/theme.css +1 -1
- package/resources/themes/viva-dark/theme.css +1 -1
- package/resources/themes/viva-light/theme.css +1 -1
- package/scrolltop/ScrollTop.d.ts +48 -0
- package/scrolltop/ScrollTop.vue +5 -2
- package/scrolltop/scrolltop.cjs.js +10 -7
- package/scrolltop/scrolltop.cjs.min.js +1 -1
- package/scrolltop/scrolltop.esm.js +10 -8
- package/scrolltop/scrolltop.esm.min.js +1 -1
- package/scrolltop/scrolltop.js +11 -9
- package/scrolltop/scrolltop.min.js +1 -1
- package/sidebar/Sidebar.d.ts +68 -0
- package/sidebar/Sidebar.vue +9 -7
- package/sidebar/sidebar.cjs.js +26 -24
- package/sidebar/sidebar.cjs.min.js +1 -1
- package/sidebar/sidebar.esm.js +26 -25
- package/sidebar/sidebar.esm.min.js +1 -1
- package/sidebar/sidebar.js +27 -26
- package/sidebar/sidebar.min.js +1 -1
- package/skeleton/Skeleton.d.ts +32 -0
- package/skeleton/Skeleton.vue +4 -1
- package/skeleton/skeleton.cjs.js +10 -4
- package/skeleton/skeleton.cjs.min.js +1 -1
- package/skeleton/skeleton.esm.js +7 -5
- package/skeleton/skeleton.esm.min.js +1 -1
- package/skeleton/skeleton.js +11 -6
- package/skeleton/skeleton.min.js +1 -1
- package/speeddial/SpeedDial.d.ts +101 -0
- package/speeddial/SpeedDial.vue +31 -8
- package/speeddial/speeddial.cjs.js +47 -33
- package/speeddial/speeddial.cjs.min.js +1 -1
- package/speeddial/speeddial.esm.js +47 -34
- package/speeddial/speeddial.esm.min.js +1 -1
- package/speeddial/speeddial.js +48 -35
- package/speeddial/speeddial.min.js +1 -1
- package/splitbutton/SplitButton.d.ts +64 -0
- package/splitbutton/SplitButton.vue +8 -5
- package/splitbutton/splitbutton.cjs.js +23 -18
- package/splitbutton/splitbutton.cjs.min.js +1 -1
- package/splitbutton/splitbutton.esm.js +23 -19
- package/splitbutton/splitbutton.esm.min.js +1 -1
- package/splitbutton/splitbutton.js +24 -20
- package/splitbutton/splitbutton.min.js +1 -1
- package/steps/Steps.d.ts +52 -0
- package/steps/Steps.vue +11 -8
- package/steps/steps.cjs.js +34 -33
- package/steps/steps.cjs.min.js +1 -1
- package/steps/steps.esm.js +31 -34
- package/steps/steps.esm.min.js +1 -1
- package/steps/steps.js +35 -35
- package/steps/steps.min.js +1 -1
- package/tabmenu/TabMenu.d.ts +79 -0
- package/tabmenu/TabMenu.vue +20 -10
- package/tabmenu/tabmenu.cjs.js +47 -41
- package/tabmenu/tabmenu.cjs.min.js +1 -1
- package/tabmenu/tabmenu.esm.js +47 -42
- package/tabmenu/tabmenu.esm.min.js +1 -1
- package/tabmenu/tabmenu.js +48 -43
- package/tabmenu/tabmenu.min.js +1 -1
- package/tag/Tag.d.ts +40 -0
- package/tag/Tag.vue +7 -4
- package/tag/tag.cjs.js +14 -12
- package/tag/tag.cjs.min.js +1 -1
- package/tag/tag.esm.js +11 -13
- package/tag/tag.esm.min.js +1 -1
- package/tag/tag.js +15 -14
- package/tag/tag.min.js +1 -1
- package/terminal/Terminal.d.ts +79 -0
- package/terminal/Terminal.vue +12 -10
- package/terminal/terminal.cjs.js +23 -28
- package/terminal/terminal.cjs.min.js +1 -1
- package/terminal/terminal.esm.js +23 -29
- package/terminal/terminal.esm.min.js +1 -1
- package/terminal/terminal.js +24 -30
- package/terminal/terminal.min.js +1 -1
- package/tieredmenu/TieredMenu.d.ts +130 -0
- package/tieredmenu/TieredMenu.vue +4 -1
- package/tieredmenu/TieredMenuSub.vue +39 -11
- package/tieredmenu/tieredmenu.cjs.js +53 -41
- package/tieredmenu/tieredmenu.cjs.min.js +1 -1
- package/tieredmenu/tieredmenu.esm.js +53 -42
- package/tieredmenu/tieredmenu.esm.min.js +1 -1
- package/tieredmenu/tieredmenu.js +54 -43
- package/tieredmenu/tieredmenu.min.js +1 -1
- package/toast/Toast.d.ts +79 -0
- package/toast/Toast.vue +4 -1
- package/toast/ToastMessage.vue +12 -10
- package/toast/toast.cjs.js +31 -31
- package/toast/toast.cjs.min.js +1 -1
- package/toast/toast.esm.js +31 -32
- package/toast/toast.esm.min.js +1 -1
- package/toast/toast.js +32 -33
- package/toast/toast.min.js +1 -1
- package/treeselect/TreeSelect.d.ts +1 -2
- package/vetur-attributes.json +160 -0
- package/vetur-tags.json +79 -34
- package/web-types.json +404 -2
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
1
2
|
import ChevronDownIcon from 'primevue/icons/chevrondown';
|
|
2
3
|
import ChevronRightIcon from 'primevue/icons/chevronright';
|
|
3
4
|
import { ObjectUtils, DomHandler, UniqueComponentId } from 'primevue/utils';
|
|
4
5
|
import Ripple from 'primevue/ripple';
|
|
5
|
-
import { resolveComponent, resolveDirective, openBlock, createElementBlock, Fragment, renderList,
|
|
6
|
+
import { resolveComponent, resolveDirective, openBlock, createElementBlock, mergeProps, Fragment, renderList, createElementVNode, createBlock, withCtx, withDirectives, resolveDynamicComponent, normalizeClass, createCommentVNode, toDisplayString, createVNode, Transition, vShow, renderSlot } from 'vue';
|
|
6
7
|
|
|
7
8
|
var script$2 = {
|
|
8
9
|
name: 'PanelMenuSub',
|
|
10
|
+
extends: BaseComponent,
|
|
9
11
|
emits: ['item-toggle'],
|
|
10
12
|
props: {
|
|
11
13
|
panelId: {
|
|
@@ -50,6 +52,14 @@ var script$2 = {
|
|
|
50
52
|
getItemLabel(processedItem) {
|
|
51
53
|
return this.getItemProp(processedItem, 'label');
|
|
52
54
|
},
|
|
55
|
+
getPTOptions(processedItem, key) {
|
|
56
|
+
return this.ptm(key, {
|
|
57
|
+
context: {
|
|
58
|
+
active: this.isItemActive(processedItem),
|
|
59
|
+
focused: this.isItemFocused(processedItem)
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
},
|
|
53
63
|
isItemActive(processedItem) {
|
|
54
64
|
return this.activeItemPath.some((path) => path.key === processedItem.key);
|
|
55
65
|
},
|
|
@@ -116,42 +126,38 @@ var script$2 = {
|
|
|
116
126
|
}
|
|
117
127
|
};
|
|
118
128
|
|
|
119
|
-
const _hoisted_1$1 =
|
|
120
|
-
const _hoisted_2$1 = ["
|
|
121
|
-
const _hoisted_3$1 = ["onClick"];
|
|
122
|
-
const _hoisted_4$1 = ["href", "
|
|
123
|
-
const _hoisted_5$1 = { class: "p-menuitem-text" };
|
|
124
|
-
const _hoisted_6$1 = ["href", "target"];
|
|
125
|
-
const _hoisted_7$1 = { class: "p-menuitem-text" };
|
|
126
|
-
const _hoisted_8$1 = { class: "p-toggleable-content" };
|
|
129
|
+
const _hoisted_1$1 = ["id", "aria-label", "aria-expanded", "aria-level", "aria-setsize", "aria-posinset"];
|
|
130
|
+
const _hoisted_2$1 = ["onClick"];
|
|
131
|
+
const _hoisted_3$1 = ["href", "onClick"];
|
|
132
|
+
const _hoisted_4$1 = ["href", "target"];
|
|
127
133
|
|
|
128
134
|
function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
129
135
|
const _component_router_link = resolveComponent("router-link");
|
|
130
136
|
const _component_PanelMenuSub = resolveComponent("PanelMenuSub", true);
|
|
131
137
|
const _directive_ripple = resolveDirective("ripple");
|
|
132
138
|
|
|
133
|
-
return (openBlock(), createElementBlock("ul",
|
|
139
|
+
return (openBlock(), createElementBlock("ul", mergeProps({ class: "p-submenu-list" }, _ctx.ptm('menu')), [
|
|
134
140
|
(openBlock(true), createElementBlock(Fragment, null, renderList($props.items, (processedItem, index) => {
|
|
135
141
|
return (openBlock(), createElementBlock(Fragment, {
|
|
136
142
|
key: $options.getItemKey(processedItem)
|
|
137
143
|
}, [
|
|
138
144
|
($options.isItemVisible(processedItem) && !$options.getItemProp(processedItem, 'separator'))
|
|
139
|
-
? (openBlock(), createElementBlock("li", {
|
|
145
|
+
? (openBlock(), createElementBlock("li", mergeProps({
|
|
140
146
|
key: 0,
|
|
141
147
|
id: $options.getItemId(processedItem),
|
|
142
|
-
style:
|
|
143
|
-
class:
|
|
148
|
+
style: $options.getItemProp(processedItem, 'style'),
|
|
149
|
+
class: $options.getItemClass(processedItem),
|
|
144
150
|
role: "treeitem",
|
|
145
151
|
"aria-label": $options.getItemLabel(processedItem),
|
|
146
152
|
"aria-expanded": $options.isItemGroup(processedItem) ? $options.isItemActive(processedItem) : undefined,
|
|
147
153
|
"aria-level": $props.level + 1,
|
|
148
154
|
"aria-setsize": $options.getAriaSetSize(),
|
|
149
155
|
"aria-posinset": $options.getAriaPosInset(index)
|
|
150
|
-
}, [
|
|
151
|
-
createElementVNode("div", {
|
|
156
|
+
}, $options.getPTOptions(processedItem, 'menuitem')), [
|
|
157
|
+
createElementVNode("div", mergeProps({
|
|
152
158
|
class: "p-menuitem-content",
|
|
153
159
|
onClick: $event => ($options.onItemClick($event, processedItem))
|
|
154
|
-
}, [
|
|
160
|
+
}, $options.getPTOptions(processedItem, 'content')), [
|
|
155
161
|
(!$props.templates.item)
|
|
156
162
|
? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
157
163
|
($options.getItemProp(processedItem, 'to') && !$options.isItemDisabled(processedItem))
|
|
@@ -161,13 +167,13 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
161
167
|
custom: ""
|
|
162
168
|
}, {
|
|
163
169
|
default: withCtx(({ navigate, href, isActive, isExactActive }) => [
|
|
164
|
-
withDirectives((openBlock(), createElementBlock("a", {
|
|
170
|
+
withDirectives((openBlock(), createElementBlock("a", mergeProps({
|
|
165
171
|
href: href,
|
|
166
|
-
class:
|
|
172
|
+
class: $options.getItemActionClass(processedItem, { isActive, isExactActive }),
|
|
167
173
|
tabindex: "-1",
|
|
168
174
|
"aria-hidden": "true",
|
|
169
175
|
onClick: $event => ($options.onItemActionClick($event, navigate))
|
|
170
|
-
}, [
|
|
176
|
+
}, $options.getPTOptions(processedItem, 'action')), [
|
|
171
177
|
($props.templates.itemicon)
|
|
172
178
|
? (openBlock(), createBlock(resolveDynamicComponent($props.templates.itemicon), {
|
|
173
179
|
key: 0,
|
|
@@ -175,38 +181,38 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
175
181
|
class: normalizeClass($options.getItemIconClass(processedItem))
|
|
176
182
|
}, null, 8, ["item", "class"]))
|
|
177
183
|
: ($options.getItemProp(processedItem, 'icon'))
|
|
178
|
-
? (openBlock(), createElementBlock("span", {
|
|
184
|
+
? (openBlock(), createElementBlock("span", mergeProps({
|
|
179
185
|
key: 1,
|
|
180
|
-
class:
|
|
181
|
-
}, null,
|
|
186
|
+
class: $options.getItemIconClass(processedItem)
|
|
187
|
+
}, $options.getPTOptions(processedItem, 'icon')), null, 16))
|
|
182
188
|
: createCommentVNode("", true),
|
|
183
|
-
createElementVNode("span",
|
|
184
|
-
],
|
|
189
|
+
createElementVNode("span", mergeProps({ class: "p-menuitem-text" }, $options.getPTOptions(processedItem, 'label')), toDisplayString($options.getItemLabel(processedItem)), 17)
|
|
190
|
+
], 16, _hoisted_3$1)), [
|
|
185
191
|
[_directive_ripple]
|
|
186
192
|
])
|
|
187
193
|
]),
|
|
188
194
|
_: 2
|
|
189
195
|
}, 1032, ["to"]))
|
|
190
|
-
: withDirectives((openBlock(), createElementBlock("a", {
|
|
196
|
+
: withDirectives((openBlock(), createElementBlock("a", mergeProps({
|
|
191
197
|
key: 1,
|
|
192
198
|
href: $options.getItemProp(processedItem, 'url'),
|
|
193
|
-
class:
|
|
199
|
+
class: $options.getItemActionClass(processedItem),
|
|
194
200
|
target: $options.getItemProp(processedItem, 'target'),
|
|
195
201
|
tabindex: "-1",
|
|
196
202
|
"aria-hidden": "true"
|
|
197
|
-
}, [
|
|
203
|
+
}, $options.getPTOptions(processedItem, 'action')), [
|
|
198
204
|
($options.isItemGroup(processedItem))
|
|
199
205
|
? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
200
206
|
($props.templates.submenuicon)
|
|
201
|
-
? (openBlock(), createBlock(resolveDynamicComponent($props.templates.submenuicon), {
|
|
207
|
+
? (openBlock(), createBlock(resolveDynamicComponent($props.templates.submenuicon), mergeProps({
|
|
202
208
|
key: 0,
|
|
203
209
|
class: "p-submenu-icon",
|
|
204
210
|
active: $options.isItemActive(processedItem)
|
|
205
|
-
}, null,
|
|
206
|
-
: (openBlock(), createBlock(resolveDynamicComponent($options.isItemActive(processedItem) ? 'ChevronDownIcon' : 'ChevronRightIcon'), {
|
|
211
|
+
}, $options.getPTOptions(processedItem, 'submenuIcon')), null, 16, ["active"]))
|
|
212
|
+
: (openBlock(), createBlock(resolveDynamicComponent($options.isItemActive(processedItem) ? 'ChevronDownIcon' : 'ChevronRightIcon'), mergeProps({
|
|
207
213
|
key: 1,
|
|
208
214
|
class: "p-submenu-icon"
|
|
209
|
-
}))
|
|
215
|
+
}, $options.getPTOptions(processedItem, 'submenuIcon')), null, 16))
|
|
210
216
|
], 64))
|
|
211
217
|
: createCommentVNode("", true),
|
|
212
218
|
($props.templates.itemicon)
|
|
@@ -216,13 +222,13 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
216
222
|
class: normalizeClass($options.getItemIconClass(processedItem))
|
|
217
223
|
}, null, 8, ["item", "class"]))
|
|
218
224
|
: ($options.getItemProp(processedItem, 'icon'))
|
|
219
|
-
? (openBlock(), createElementBlock("span", {
|
|
225
|
+
? (openBlock(), createElementBlock("span", mergeProps({
|
|
220
226
|
key: 2,
|
|
221
|
-
class:
|
|
222
|
-
}, null,
|
|
227
|
+
class: $options.getItemIconClass(processedItem)
|
|
228
|
+
}, $options.getPTOptions(processedItem, 'icon')), null, 16))
|
|
223
229
|
: createCommentVNode("", true),
|
|
224
|
-
createElementVNode("span",
|
|
225
|
-
],
|
|
230
|
+
createElementVNode("span", mergeProps({ class: "p-menuitem-text" }, $options.getPTOptions(processedItem, 'label')), toDisplayString($options.getItemLabel(processedItem)), 17)
|
|
231
|
+
], 16, _hoisted_4$1)), [
|
|
226
232
|
[_directive_ripple]
|
|
227
233
|
])
|
|
228
234
|
], 64))
|
|
@@ -230,10 +236,10 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
230
236
|
key: 1,
|
|
231
237
|
item: processedItem.item
|
|
232
238
|
}, null, 8, ["item"]))
|
|
233
|
-
],
|
|
239
|
+
], 16, _hoisted_2$1),
|
|
234
240
|
createVNode(Transition, { name: "p-toggleable-content" }, {
|
|
235
241
|
default: withCtx(() => [
|
|
236
|
-
withDirectives(createElementVNode("div",
|
|
242
|
+
withDirectives(createElementVNode("div", mergeProps({ class: "p-toggleable-content" }, _ctx.ptm('toggleableContent')), [
|
|
237
243
|
($options.isItemVisible(processedItem) && $options.isItemGroup(processedItem))
|
|
238
244
|
? (openBlock(), createBlock(_component_PanelMenuSub, {
|
|
239
245
|
key: 0,
|
|
@@ -246,34 +252,36 @@ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
246
252
|
templates: $props.templates,
|
|
247
253
|
activeItemPath: $props.activeItemPath,
|
|
248
254
|
exact: $props.exact,
|
|
249
|
-
onItemToggle: $options.onItemToggle
|
|
250
|
-
|
|
255
|
+
onItemToggle: $options.onItemToggle,
|
|
256
|
+
pt: _ctx.pt
|
|
257
|
+
}, null, 8, ["id", "panelId", "focusedItemId", "items", "level", "templates", "activeItemPath", "exact", "onItemToggle", "pt"]))
|
|
251
258
|
: createCommentVNode("", true)
|
|
252
|
-
],
|
|
259
|
+
], 16), [
|
|
253
260
|
[vShow, $options.isItemActive(processedItem)]
|
|
254
261
|
])
|
|
255
262
|
]),
|
|
256
263
|
_: 2
|
|
257
264
|
}, 1024)
|
|
258
|
-
],
|
|
265
|
+
], 16, _hoisted_1$1))
|
|
259
266
|
: createCommentVNode("", true),
|
|
260
267
|
($options.isItemVisible(processedItem) && $options.getItemProp(processedItem, 'separator'))
|
|
261
|
-
? (openBlock(), createElementBlock("li", {
|
|
268
|
+
? (openBlock(), createElementBlock("li", mergeProps({
|
|
262
269
|
key: 1,
|
|
263
|
-
style:
|
|
264
|
-
class:
|
|
270
|
+
style: $options.getItemProp(processedItem, 'style'),
|
|
271
|
+
class: $options.getSeparatorItemClass(processedItem),
|
|
265
272
|
role: "separator"
|
|
266
|
-
}, null,
|
|
273
|
+
}, _ctx.ptm('separator')), null, 16))
|
|
267
274
|
: createCommentVNode("", true)
|
|
268
275
|
], 64))
|
|
269
276
|
}), 128))
|
|
270
|
-
]))
|
|
277
|
+
], 16))
|
|
271
278
|
}
|
|
272
279
|
|
|
273
280
|
script$2.render = render$2;
|
|
274
281
|
|
|
275
282
|
var script$1 = {
|
|
276
283
|
name: 'PanelMenuList',
|
|
284
|
+
extends: BaseComponent,
|
|
277
285
|
emits: ['item-toggle', 'header-focus'],
|
|
278
286
|
props: {
|
|
279
287
|
panelId: {
|
|
@@ -657,14 +665,16 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
657
665
|
onFocus: $options.onFocus,
|
|
658
666
|
onBlur: $options.onBlur,
|
|
659
667
|
onKeydown: $options.onKeyDown,
|
|
660
|
-
onItemToggle: $options.onItemToggle
|
|
661
|
-
|
|
668
|
+
onItemToggle: $options.onItemToggle,
|
|
669
|
+
pt: _ctx.pt
|
|
670
|
+
}, null, 8, ["id", "aria-activedescendant", "panelId", "focusedItemId", "items", "templates", "activeItemPath", "exact", "onFocus", "onBlur", "onKeydown", "onItemToggle", "pt"]))
|
|
662
671
|
}
|
|
663
672
|
|
|
664
673
|
script$1.render = render$1;
|
|
665
674
|
|
|
666
675
|
var script = {
|
|
667
676
|
name: 'PanelMenu',
|
|
677
|
+
extends: BaseComponent,
|
|
668
678
|
emits: ['update:expandedKeys', 'panel-open', 'panel-close'],
|
|
669
679
|
props: {
|
|
670
680
|
model: {
|
|
@@ -705,6 +715,14 @@ var script = {
|
|
|
705
715
|
getItemLabel(item) {
|
|
706
716
|
return this.getItemProp(item, 'label');
|
|
707
717
|
},
|
|
718
|
+
getPTOptions(item, key) {
|
|
719
|
+
return this.ptm(key, {
|
|
720
|
+
options: {
|
|
721
|
+
active: this.isItemActive(item),
|
|
722
|
+
focused: this.isItemFocused(item)
|
|
723
|
+
}
|
|
724
|
+
});
|
|
725
|
+
},
|
|
708
726
|
isItemActive(item) {
|
|
709
727
|
return this.expandedKeys ? this.expandedKeys[this.getItemProp(item, 'key')] : ObjectUtils.equals(item, this.activeItem);
|
|
710
728
|
},
|
|
@@ -714,6 +732,9 @@ var script = {
|
|
|
714
732
|
isItemDisabled(item) {
|
|
715
733
|
return this.getItemProp(item, 'disabled');
|
|
716
734
|
},
|
|
735
|
+
isItemFocused(item) {
|
|
736
|
+
return ObjectUtils.equals(item, this.activeItem);
|
|
737
|
+
},
|
|
717
738
|
getPanelId(index) {
|
|
718
739
|
return `${this.id}_${index}`;
|
|
719
740
|
},
|
|
@@ -877,38 +898,31 @@ var script = {
|
|
|
877
898
|
|
|
878
899
|
const _hoisted_1 = ["id"];
|
|
879
900
|
const _hoisted_2 = ["id", "tabindex", "aria-label", "aria-expanded", "aria-controls", "aria-disabled", "onClick", "onKeydown"];
|
|
880
|
-
const _hoisted_3 =
|
|
881
|
-
const _hoisted_4 = ["href"
|
|
882
|
-
const _hoisted_5 =
|
|
883
|
-
const _hoisted_6 = ["href"];
|
|
884
|
-
const _hoisted_7 = { class: "p-menuitem-text" };
|
|
885
|
-
const _hoisted_8 = ["id", "aria-labelledby"];
|
|
886
|
-
const _hoisted_9 = {
|
|
887
|
-
key: 0,
|
|
888
|
-
class: "p-panelmenu-content"
|
|
889
|
-
};
|
|
901
|
+
const _hoisted_3 = ["href", "onClick"];
|
|
902
|
+
const _hoisted_4 = ["href"];
|
|
903
|
+
const _hoisted_5 = ["id", "aria-labelledby"];
|
|
890
904
|
|
|
891
905
|
function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
892
906
|
const _component_router_link = resolveComponent("router-link");
|
|
893
907
|
const _component_PanelMenuList = resolveComponent("PanelMenuList");
|
|
894
908
|
|
|
895
|
-
return (openBlock(), createElementBlock("div", {
|
|
909
|
+
return (openBlock(), createElementBlock("div", mergeProps({
|
|
896
910
|
id: $data.id,
|
|
897
911
|
class: "p-panelmenu p-component"
|
|
898
|
-
}, [
|
|
912
|
+
}, _ctx.ptm('root')), [
|
|
899
913
|
(openBlock(true), createElementBlock(Fragment, null, renderList($props.model, (item, index) => {
|
|
900
914
|
return (openBlock(), createElementBlock(Fragment, {
|
|
901
915
|
key: $options.getPanelKey(index)
|
|
902
916
|
}, [
|
|
903
917
|
($options.isItemVisible(item))
|
|
904
|
-
? (openBlock(), createElementBlock("div", {
|
|
918
|
+
? (openBlock(), createElementBlock("div", mergeProps({
|
|
905
919
|
key: 0,
|
|
906
|
-
style:
|
|
907
|
-
class:
|
|
908
|
-
}, [
|
|
909
|
-
createElementVNode("div", {
|
|
920
|
+
style: $options.getItemProp(item, 'style'),
|
|
921
|
+
class: $options.getPanelClass(item)
|
|
922
|
+
}, _ctx.ptm('panel')), [
|
|
923
|
+
createElementVNode("div", mergeProps({
|
|
910
924
|
id: $options.getHeaderId(index),
|
|
911
|
-
class:
|
|
925
|
+
class: $options.getHeaderClass(item),
|
|
912
926
|
tabindex: $options.isItemDisabled(item) ? -1 : $props.tabindex,
|
|
913
927
|
role: "button",
|
|
914
928
|
"aria-label": $options.getItemLabel(item),
|
|
@@ -917,8 +931,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
917
931
|
"aria-disabled": $options.isItemDisabled(item),
|
|
918
932
|
onClick: $event => ($options.onHeaderClick($event, item)),
|
|
919
933
|
onKeydown: $event => ($options.onHeaderKeyDown($event, item))
|
|
920
|
-
}, [
|
|
921
|
-
createElementVNode("div",
|
|
934
|
+
}, $options.getPTOptions(item, 'header')), [
|
|
935
|
+
createElementVNode("div", mergeProps({ class: "p-panelmenu-header-content" }, $options.getPTOptions(item, 'headerContent')), [
|
|
922
936
|
(!_ctx.$slots.item)
|
|
923
937
|
? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
924
938
|
($options.getItemProp(item, 'to') && !$options.isItemDisabled(item))
|
|
@@ -928,12 +942,12 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
928
942
|
custom: ""
|
|
929
943
|
}, {
|
|
930
944
|
default: withCtx(({ navigate, href, isActive, isExactActive }) => [
|
|
931
|
-
createElementVNode("a", {
|
|
945
|
+
createElementVNode("a", mergeProps({
|
|
932
946
|
href: href,
|
|
933
|
-
class:
|
|
947
|
+
class: $options.getHeaderActionClass(item, { isActive, isExactActive }),
|
|
934
948
|
tabindex: -1,
|
|
935
949
|
onClick: $event => ($options.onHeaderActionClick($event, navigate))
|
|
936
|
-
}, [
|
|
950
|
+
}, $options.getPTOptions(item, 'headerAction')), [
|
|
937
951
|
(_ctx.$slots.headericon)
|
|
938
952
|
? (openBlock(), createBlock(resolveDynamicComponent(_ctx.$slots.headericon), {
|
|
939
953
|
key: 0,
|
|
@@ -941,28 +955,28 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
941
955
|
class: normalizeClass($options.getHeaderIconClass(item))
|
|
942
956
|
}, null, 8, ["item", "class"]))
|
|
943
957
|
: ($options.getItemProp(item, 'icon'))
|
|
944
|
-
? (openBlock(), createElementBlock("span", {
|
|
958
|
+
? (openBlock(), createElementBlock("span", mergeProps({
|
|
945
959
|
key: 1,
|
|
946
|
-
class:
|
|
947
|
-
}, null,
|
|
960
|
+
class: $options.getHeaderIconClass(item)
|
|
961
|
+
}, $options.getPTOptions(item, 'headerIcon')), null, 16))
|
|
948
962
|
: createCommentVNode("", true),
|
|
949
|
-
createElementVNode("span",
|
|
950
|
-
],
|
|
963
|
+
createElementVNode("span", mergeProps({ class: "p-menuitem-text" }, $options.getPTOptions(item, 'headerLabel')), toDisplayString($options.getItemLabel(item)), 17)
|
|
964
|
+
], 16, _hoisted_3)
|
|
951
965
|
]),
|
|
952
966
|
_: 2
|
|
953
967
|
}, 1032, ["to"]))
|
|
954
|
-
: (openBlock(), createElementBlock("a", {
|
|
968
|
+
: (openBlock(), createElementBlock("a", mergeProps({
|
|
955
969
|
key: 1,
|
|
956
970
|
href: $options.getItemProp(item, 'url'),
|
|
957
|
-
class:
|
|
971
|
+
class: $options.getHeaderActionClass(item),
|
|
958
972
|
tabindex: -1
|
|
959
|
-
}, [
|
|
973
|
+
}, $options.getPTOptions(item, 'headerAction')), [
|
|
960
974
|
($options.getItemProp(item, 'items'))
|
|
961
975
|
? renderSlot(_ctx.$slots, "submenuicon", {
|
|
962
976
|
key: 0,
|
|
963
977
|
active: $options.isItemActive(item)
|
|
964
978
|
}, () => [
|
|
965
|
-
(openBlock(), createBlock(resolveDynamicComponent($options.isItemActive(item) ? 'ChevronDownIcon' : 'ChevronRightIcon'), { class: "p-submenu-icon" }))
|
|
979
|
+
(openBlock(), createBlock(resolveDynamicComponent($options.isItemActive(item) ? 'ChevronDownIcon' : 'ChevronRightIcon'), mergeProps({ class: "p-submenu-icon" }, $options.getPTOptions(item, 'submenuIcon')), null, 16))
|
|
966
980
|
])
|
|
967
981
|
: createCommentVNode("", true),
|
|
968
982
|
(_ctx.$slots.headericon)
|
|
@@ -972,30 +986,33 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
972
986
|
class: normalizeClass($options.getHeaderIconClass(item))
|
|
973
987
|
}, null, 8, ["item", "class"]))
|
|
974
988
|
: ($options.getItemProp(item, 'icon'))
|
|
975
|
-
? (openBlock(), createElementBlock("span", {
|
|
989
|
+
? (openBlock(), createElementBlock("span", mergeProps({
|
|
976
990
|
key: 2,
|
|
977
|
-
class:
|
|
978
|
-
}, null,
|
|
991
|
+
class: $options.getHeaderIconClass(item)
|
|
992
|
+
}, $options.getPTOptions(item, 'headerIcon')), null, 16))
|
|
979
993
|
: createCommentVNode("", true),
|
|
980
|
-
createElementVNode("span",
|
|
981
|
-
],
|
|
994
|
+
createElementVNode("span", mergeProps({ class: "p-menuitem-text" }, $options.getPTOptions(item, 'headerLabel')), toDisplayString($options.getItemLabel(item)), 17)
|
|
995
|
+
], 16, _hoisted_4))
|
|
982
996
|
], 64))
|
|
983
997
|
: (openBlock(), createBlock(resolveDynamicComponent(_ctx.$slots.item), {
|
|
984
998
|
key: 1,
|
|
985
999
|
item: item
|
|
986
1000
|
}, null, 8, ["item"]))
|
|
987
|
-
])
|
|
988
|
-
],
|
|
1001
|
+
], 16)
|
|
1002
|
+
], 16, _hoisted_2),
|
|
989
1003
|
createVNode(Transition, { name: "p-toggleable-content" }, {
|
|
990
1004
|
default: withCtx(() => [
|
|
991
|
-
withDirectives(createElementVNode("div", {
|
|
1005
|
+
withDirectives(createElementVNode("div", mergeProps({
|
|
992
1006
|
id: $options.getContentId(index),
|
|
993
1007
|
class: "p-toggleable-content",
|
|
994
1008
|
role: "region",
|
|
995
1009
|
"aria-labelledby": $options.getHeaderId(index)
|
|
996
|
-
}, [
|
|
1010
|
+
}, _ctx.ptm('toggleableContent')), [
|
|
997
1011
|
($options.getItemProp(item, 'items'))
|
|
998
|
-
? (openBlock(), createElementBlock("div",
|
|
1012
|
+
? (openBlock(), createElementBlock("div", mergeProps({
|
|
1013
|
+
key: 0,
|
|
1014
|
+
class: "p-panelmenu-content"
|
|
1015
|
+
}, _ctx.ptm('menuContent')), [
|
|
999
1016
|
createVNode(_component_PanelMenuList, {
|
|
1000
1017
|
panelId: $options.getPanelId(index),
|
|
1001
1018
|
items: $options.getItemProp(item, 'items'),
|
|
@@ -1003,21 +1020,22 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1003
1020
|
expandedKeys: $props.expandedKeys,
|
|
1004
1021
|
onItemToggle: $options.changeExpandedKeys,
|
|
1005
1022
|
onHeaderFocus: $options.updateFocusedHeader,
|
|
1006
|
-
exact: $props.exact
|
|
1007
|
-
|
|
1008
|
-
|
|
1023
|
+
exact: $props.exact,
|
|
1024
|
+
pt: _ctx.pt
|
|
1025
|
+
}, null, 8, ["panelId", "items", "templates", "expandedKeys", "onItemToggle", "onHeaderFocus", "exact", "pt"])
|
|
1026
|
+
], 16))
|
|
1009
1027
|
: createCommentVNode("", true)
|
|
1010
|
-
],
|
|
1028
|
+
], 16, _hoisted_5), [
|
|
1011
1029
|
[vShow, $options.isItemActive(item)]
|
|
1012
1030
|
])
|
|
1013
1031
|
]),
|
|
1014
1032
|
_: 2
|
|
1015
1033
|
}, 1024)
|
|
1016
|
-
],
|
|
1034
|
+
], 16))
|
|
1017
1035
|
: createCommentVNode("", true)
|
|
1018
1036
|
], 64))
|
|
1019
1037
|
}), 128))
|
|
1020
|
-
],
|
|
1038
|
+
], 16, _hoisted_1))
|
|
1021
1039
|
}
|
|
1022
1040
|
|
|
1023
1041
|
function styleInject(css, ref) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"primevue/icons/chevrondown";import t from"primevue/icons/chevronright";import{ObjectUtils as s,DomHandler as i,UniqueComponentId as n}from"primevue/utils";import a from"primevue/ripple";import{resolveComponent as o,resolveDirective as l,openBlock as r,createElementBlock as m,Fragment as c,renderList as d,normalizeStyle as u,normalizeClass as h,createElementVNode as p,createBlock as I,withCtx as g,withDirectives as f,resolveDynamicComponent as y,createCommentVNode as v,toDisplayString as b,createVNode as P,Transition as k,vShow as x,renderSlot as C}from"vue";var K={name:"PanelMenuSub",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}},methods:{getItemId(e){return`${this.panelId}_${e.key}`},getItemKey(e){return this.getItemId(e)},getItemProp:(e,t,i)=>e&&e.item?s.getItemValue(e.item[t],i):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemActive(e){return this.activeItemPath.some((t=>t.key===e.key))},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemFocused(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:e=>s.isNotEmpty(e.items),onItemClick(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-toggle",{processedItem:t,expanded:!this.isItemActive(t)})},onItemToggle(e){this.$emit("item-toggle",e)},onItemActionClick(e,t){t&&t(e)},getAriaSetSize(){return this.items.filter((e=>this.isItemVisible(e)&&!this.getItemProp(e,"separator"))).length},getAriaPosInset(e){return e-this.items.slice(0,e).filter((e=>this.isItemVisible(e)&&this.getItemProp(e,"separator"))).length+1},getItemClass(e){return["p-menuitem",this.getItemProp(e,"class"),{"p-focus":this.isItemFocused(e),"p-disabled":this.isItemDisabled(e)}]},getItemActionClass(e,t){return["p-menuitem-link",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getItemIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]},getSeparatorItemClass(e){return["p-menuitem-separator",this.getItemProp(e,"class")]}},components:{ChevronRightIcon:t,ChevronDownIcon:e},directives:{ripple:a}};const A={class:"p-submenu-list"},E=["id","aria-label","aria-expanded","aria-level","aria-setsize","aria-posinset"],H=["onClick"],w=["href","onClick"],D={class:"p-menuitem-text"},S=["href","target"],F={class:"p-menuitem-text"},L={class:"p-toggleable-content"};K.render=function(e,t,s,i,n,a){const C=o("router-link"),K=o("PanelMenuSub",!0),V=l("ripple");return r(),m("ul",A,[(r(!0),m(c,null,d(s.items,((e,t)=>(r(),m(c,{key:a.getItemKey(e)},[a.isItemVisible(e)&&!a.getItemProp(e,"separator")?(r(),m("li",{key:0,id:a.getItemId(e),style:u(a.getItemProp(e,"style")),class:h(a.getItemClass(e)),role:"treeitem","aria-label":a.getItemLabel(e),"aria-expanded":a.isItemGroup(e)?a.isItemActive(e):void 0,"aria-level":s.level+1,"aria-setsize":a.getAriaSetSize(),"aria-posinset":a.getAriaPosInset(t)},[p("div",{class:"p-menuitem-content",onClick:t=>a.onItemClick(t,e)},[s.templates.item?(r(),I(y(s.templates.item),{key:1,item:e.item},null,8,["item"])):(r(),m(c,{key:0},[a.getItemProp(e,"to")&&!a.isItemDisabled(e)?(r(),I(C,{key:0,to:a.getItemProp(e,"to"),custom:""},{default:g((({navigate:t,href:i,isActive:n,isExactActive:o})=>[f((r(),m("a",{href:i,class:h(a.getItemActionClass(e,{isActive:n,isExactActive:o})),tabindex:"-1","aria-hidden":"true",onClick:e=>a.onItemActionClick(e,t)},[s.templates.itemicon?(r(),I(y(s.templates.itemicon),{key:0,item:e.item,class:h(a.getItemIconClass(e))},null,8,["item","class"])):a.getItemProp(e,"icon")?(r(),m("span",{key:1,class:h(a.getItemIconClass(e))},null,2)):v("",!0),p("span",D,b(a.getItemLabel(e)),1)],10,w)),[[V]])])),_:2},1032,["to"])):f((r(),m("a",{key:1,href:a.getItemProp(e,"url"),class:h(a.getItemActionClass(e)),target:a.getItemProp(e,"target"),tabindex:"-1","aria-hidden":"true"},[a.isItemGroup(e)?(r(),m(c,{key:0},[s.templates.submenuicon?(r(),I(y(s.templates.submenuicon),{key:0,class:"p-submenu-icon",active:a.isItemActive(e)},null,8,["active"])):(r(),I(y(a.isItemActive(e)?"ChevronDownIcon":"ChevronRightIcon"),{key:1,class:"p-submenu-icon"}))],64)):v("",!0),s.templates.itemicon?(r(),I(y(s.templates.itemicon),{key:1,item:e.item,class:h(a.getItemIconClass(e))},null,8,["item","class"])):a.getItemProp(e,"icon")?(r(),m("span",{key:2,class:h(a.getItemIconClass(e))},null,2)):v("",!0),p("span",F,b(a.getItemLabel(e)),1)],10,S)),[[V]])],64))],8,H),P(k,{name:"p-toggleable-content"},{default:g((()=>[f(p("div",L,[a.isItemVisible(e)&&a.isItemGroup(e)?(r(),I(K,{key:0,id:a.getItemId(e)+"_list",role:"group",panelId:s.panelId,focusedItemId:s.focusedItemId,items:e.items,level:s.level+1,templates:s.templates,activeItemPath:s.activeItemPath,exact:s.exact,onItemToggle:a.onItemToggle},null,8,["id","panelId","focusedItemId","items","level","templates","activeItemPath","exact","onItemToggle"])):v("",!0)],512),[[x,a.isItemActive(e)]])])),_:2},1024)],14,E)):v("",!0),a.isItemVisible(e)&&a.getItemProp(e,"separator")?(r(),m("li",{key:1,style:u(a.getItemProp(e,"style")),class:h(a.getSeparatorItemClass(e)),role:"separator"},null,6)):v("",!0)],64)))),128))])};var V={name:"PanelMenuList",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:()=>({focused:!1,focusedItem:null,activeItemPath:[]}),watch:{expandedKeys(e){this.autoUpdateActiveItemPath(e)}},mounted(){this.autoUpdateActiveItemPath(this.expandedKeys)},methods:{getItemProp:(e,t)=>e&&e.item?s.getItemValue(e.item[t]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemActive(e){return this.activeItemPath.some((t=>t.key===e.parentKey))},isItemGroup:e=>s.isNotEmpty(e.items),onFocus(e){this.focused=!0,this.focusedItem=this.focusedItem||(this.isElementInPanel(e,e.relatedTarget)?this.findFirstItem():this.findLastItem())},onBlur(){this.focused=!1,this.focusedItem=null,this.searchValue=""},onKeyDown(e){const t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e);break;case"Escape":case"Tab":case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&s.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onArrowDownKey(e){const t=s.isNotEmpty(this.focusedItem)?this.findNextItem(this.focusedItem):this.findFirstItem();this.changeFocusedItem({originalEvent:e,processedItem:t,focusOnNext:!0}),e.preventDefault()},onArrowUpKey(e){const t=s.isNotEmpty(this.focusedItem)?this.findPrevItem(this.focusedItem):this.findLastItem();this.changeFocusedItem({originalEvent:e,processedItem:t,selfCheck:!0}),e.preventDefault()},onArrowLeftKey(e){if(s.isNotEmpty(this.focusedItem)){this.activeItemPath.some((e=>e.key===this.focusedItem.key))?this.activeItemPath=this.activeItemPath.filter((e=>e.key!==this.focusedItem.key)):this.focusedItem=s.isNotEmpty(this.focusedItem.parent)?this.focusedItem.parent:this.focusedItem,e.preventDefault()}},onArrowRightKey(e){if(s.isNotEmpty(this.focusedItem)){if(this.isItemGroup(this.focusedItem)){this.activeItemPath.some((e=>e.key===this.focusedItem.key))?this.onArrowDownKey(e):(this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==this.focusedItem.parentKey)),this.activeItemPath.push(this.focusedItem))}e.preventDefault()}},onHomeKey(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findFirstItem(),allowHeaderFocus:!1}),e.preventDefault()},onEndKey(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findLastItem(),focusOnNext:!0,allowHeaderFocus:!1}),e.preventDefault()},onEnterKey(e){if(s.isNotEmpty(this.focusedItem)){const e=i.findSingle(this.$el,`li[id="${this.focusedItemId}"]`),t=e&&(i.findSingle(e,".p-menuitem-link")||i.findSingle(e,"a,button"));t?t.click():e&&e.click()}e.preventDefault()},onSpaceKey(e){this.onEnterKey(e)},onItemToggle(e){const{processedItem:t,expanded:s}=e;this.expandedKeys?this.$emit("item-toggle",{item:t.item,expanded:s}):(this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==t.parentKey)),s&&this.activeItemPath.push(t)),this.focusedItem=t,i.focus(this.$el)},isElementInPanel(e,t){const s=e.currentTarget.closest(".p-panelmenu-panel");return s&&s.contains(t)},isItemMatched(e){return this.isValidItem(e)&&this.getItemLabel(e).toLocaleLowerCase(this.searchLocale).startsWith(this.searchValue.toLocaleLowerCase(this.searchLocale))},isVisibleItem(e){return!!e&&(0===e.level||this.isItemActive(e))&&this.isItemVisible(e)},isValidItem(e){return!!e&&!this.isItemDisabled(e)},findFirstItem(){return this.visibleItems.find((e=>this.isValidItem(e)))},findLastItem(){return s.findLast(this.visibleItems,(e=>this.isValidItem(e)))},findNextItem(e){const t=this.visibleItems.findIndex((t=>t.key===e.key));return(t<this.visibleItems.length-1?this.visibleItems.slice(t+1).find((e=>this.isValidItem(e))):void 0)||e},findPrevItem(e){const t=this.visibleItems.findIndex((t=>t.key===e.key));return(t>0?s.findLast(this.visibleItems.slice(0,t),(e=>this.isValidItem(e))):void 0)||e},searchItems(e,t){this.searchValue=(this.searchValue||"")+t;let i=null,n=!1;if(s.isNotEmpty(this.focusedItem)){const e=this.visibleItems.findIndex((e=>e.key===this.focusedItem.key));i=this.visibleItems.slice(e).find((e=>this.isItemMatched(e))),i=s.isEmpty(i)?this.visibleItems.slice(0,e).find((e=>this.isItemMatched(e))):i}else i=this.visibleItems.find((e=>this.isItemMatched(e)));return s.isNotEmpty(i)&&(n=!0),s.isEmpty(i)&&s.isEmpty(this.focusedItem)&&(i=this.findFirstItem()),s.isNotEmpty(i)&&this.changeFocusedItem({originalEvent:e,processedItem:i,allowHeaderFocus:!1}),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((()=>{this.searchValue="",this.searchTimeout=null}),500),n},changeFocusedItem(e){const{originalEvent:t,processedItem:i,focusOnNext:n,selfCheck:a,allowHeaderFocus:o=!0}=e;s.isNotEmpty(this.focusedItem)&&this.focusedItem.key!==i.key?(this.focusedItem=i,this.scrollInView()):o&&this.$emit("header-focus",{originalEvent:t,focusOnNext:n,selfCheck:a})},scrollInView(){const e=i.findSingle(this.$el,`li[id="${this.focusedItemId}"]`);e&&e.scrollIntoView&&e.scrollIntoView({block:"nearest",inline:"start"})},autoUpdateActiveItemPath(e){this.activeItemPath=Object.entries(e||{}).reduce(((e,[t,s])=>{if(s){const s=this.findProcessedItemByItemKey(t);s&&e.push(s)}return e}),[])},findProcessedItemByItemKey(e,t,s=0){if(!(t=t||0===s&&this.processedItems))return null;for(let i=0;i<t.length;i++){const n=t[i];if(this.getItemProp(n,"key")===e)return n;const a=this.findProcessedItemByItemKey(e,n.items,s+1);if(a)return a}},createProcessedItems(e,t=0,s={},i=""){const n=[];return e&&e.forEach(((e,a)=>{const o=(""!==i?i+"_":"")+a,l={item:e,index:a,level:t,key:o,parent:s,parentKey:i};l.items=this.createProcessedItems(e.items,t+1,l,o),n.push(l)})),n},flatItems(e,t=[]){return e&&e.forEach((e=>{this.isVisibleItem(e)&&(t.push(e),this.flatItems(e.items,t))})),t}},computed:{processedItems(){return this.createProcessedItems(this.items||[])},visibleItems(){return this.flatItems(this.processedItems)},focusedItemId(){return s.isNotEmpty(this.focusedItem)?`${this.panelId}_${this.focusedItem.key}`:null}},components:{PanelMenuSub:K}};V.render=function(e,t,s,i,n,a){const l=o("PanelMenuSub");return r(),I(l,{id:s.panelId+"_list",class:"p-panelmenu-root-list",role:"tree",tabindex:-1,"aria-activedescendant":n.focused?a.focusedItemId:void 0,panelId:s.panelId,focusedItemId:n.focused?a.focusedItemId:void 0,items:a.processedItems,templates:s.templates,activeItemPath:n.activeItemPath,exact:s.exact,onFocus:a.onFocus,onBlur:a.onBlur,onKeydown:a.onKeyDown,onItemToggle:a.onItemToggle},null,8,["id","aria-activedescendant","panelId","focusedItemId","items","templates","activeItemPath","exact","onFocus","onBlur","onKeydown","onItemToggle"])};var $={name:"PanelMenu",emits:["update:expandedKeys","panel-open","panel-close"],props:{model:{type:Array,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},data(){return{id:this.$attrs.id,activeItem:null}},watch:{"$attrs.id":function(e){this.id=e||n()}},mounted(){this.id=this.id||n()},methods:{getItemProp:(e,t)=>e?s.getItemValue(e[t]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemActive(e){return this.expandedKeys?this.expandedKeys[this.getItemProp(e,"key")]:s.equals(e,this.activeItem)},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},getPanelId(e){return`${this.id}_${e}`},getPanelKey(e){return this.getPanelId(e)},getHeaderId(e){return`${this.getPanelId(e)}_header`},getContentId(e){return`${this.getPanelId(e)}_content`},onHeaderClick(e,t){this.isItemDisabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),this.changeActiveItem(e,t),i.focus(e.currentTarget))},onHeaderKeyDown(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(e){const t=i.hasClass(e.currentTarget,"p-highlight")?i.findSingle(e.currentTarget.nextElementSibling,".p-panelmenu-root-list"):null;t?i.focus(t):this.updateFocusedHeader({originalEvent:e,focusOnNext:!0}),e.preventDefault()},onHeaderArrowUpKey(e){const t=this.findPrevHeader(e.currentTarget.parentElement)||this.findLastHeader(),s=i.hasClass(t,"p-highlight")?i.findSingle(t.nextElementSibling,".p-panelmenu-root-list"):null;s?i.focus(s):this.updateFocusedHeader({originalEvent:e,focusOnNext:!1}),e.preventDefault()},onHeaderHomeKey(e){this.changeFocusedHeader(e,this.findFirstHeader()),e.preventDefault()},onHeaderEndKey(e){this.changeFocusedHeader(e,this.findLastHeader()),e.preventDefault()},onHeaderEnterKey(e,t){const s=i.findSingle(e.currentTarget,".p-panelmenu-header-action");s?s.click():this.onHeaderClick(e,t),e.preventDefault()},onHeaderActionClick(e,t){t&&t(e)},findNextHeader(e,t=!1){const s=t?e:e.nextElementSibling,n=i.findSingle(s,".p-panelmenu-header");return n?i.hasClass(n,"p-disabled")?this.findNextHeader(n.parentElement):n:null},findPrevHeader(e,t=!1){const s=t?e:e.previousElementSibling,n=i.findSingle(s,".p-panelmenu-header");return n?i.hasClass(n,"p-disabled")?this.findPrevHeader(n.parentElement):n:null},findFirstHeader(){return this.findNextHeader(this.$el.firstElementChild,!0)},findLastHeader(){return this.findPrevHeader(this.$el.lastElementChild,!0)},updateFocusedHeader(e){const{originalEvent:t,focusOnNext:s,selfCheck:n}=e,a=t.currentTarget.closest(".p-panelmenu-panel"),o=n?i.findSingle(a,".p-panelmenu-header"):s?this.findNextHeader(a):this.findPrevHeader(a);o?this.changeFocusedHeader(t,o):s?this.onHeaderHomeKey(t):this.onHeaderEndKey(t)},changeActiveItem(e,t,i=!1){if(!this.isItemDisabled(t)){const n=this.isItemActive(t),a=n?"panel-close":"panel-open";this.activeItem=i?t:this.activeItem&&s.equals(t,this.activeItem)?null:t,this.changeExpandedKeys({item:t,expanded:!n}),this.$emit(a,{originalEvent:e,item:t})}},changeExpandedKeys({item:e,expanded:t=!1}){if(this.expandedKeys){let s={...this.expandedKeys};t?s[e.key]=!0:delete s[e.key],this.$emit("update:expandedKeys",s)}},changeFocusedHeader(e,t){t&&i.focus(t)},getPanelClass(e){return["p-panelmenu-panel",this.getItemProp(e,"class")]},getHeaderClass(e){return["p-panelmenu-header",this.getItemProp(e,"headerClass"),{"p-highlight":this.isItemActive(e),"p-disabled":this.isItemDisabled(e)}]},getHeaderActionClass(e,t){return["p-panelmenu-header-action",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getHeaderIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]}},components:{PanelMenuList:V,ChevronRightIcon:t,ChevronDownIcon:e}};const N=["id"],T=["id","tabindex","aria-label","aria-expanded","aria-controls","aria-disabled","onClick","onKeydown"],B={class:"p-panelmenu-header-content"},O=["href","onClick"],M={class:"p-menuitem-text"},_=["href"],U={class:"p-menuitem-text"},R=["id","aria-labelledby"],j={key:0,class:"p-panelmenu-content"};!function(e,t){void 0===t&&(t={});var s=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===s&&i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\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.p-panelmenu .p-panelmenu-header-action:focus {\n z-index: 1;\n}\n.p-panelmenu .p-submenu-list {\n margin: 0;\n padding: 0;\n list-style: none;\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.p-panelmenu .p-menuitem-text {\n line-height: 1;\n}\n"),$.render=function(e,t,s,i,n,a){const l=o("router-link"),K=o("PanelMenuList");return r(),m("div",{id:n.id,class:"p-panelmenu p-component"},[(r(!0),m(c,null,d(s.model,((t,i)=>(r(),m(c,{key:a.getPanelKey(i)},[a.isItemVisible(t)?(r(),m("div",{key:0,style:u(a.getItemProp(t,"style")),class:h(a.getPanelClass(t))},[p("div",{id:a.getHeaderId(i),class:h(a.getHeaderClass(t)),tabindex:a.isItemDisabled(t)?-1:s.tabindex,role:"button","aria-label":a.getItemLabel(t),"aria-expanded":a.isItemActive(t),"aria-controls":a.getContentId(i),"aria-disabled":a.isItemDisabled(t),onClick:e=>a.onHeaderClick(e,t),onKeydown:e=>a.onHeaderKeyDown(e,t)},[p("div",B,[e.$slots.item?(r(),I(y(e.$slots.item),{key:1,item:t},null,8,["item"])):(r(),m(c,{key:0},[a.getItemProp(t,"to")&&!a.isItemDisabled(t)?(r(),I(l,{key:0,to:a.getItemProp(t,"to"),custom:""},{default:g((({navigate:s,href:i,isActive:n,isExactActive:o})=>[p("a",{href:i,class:h(a.getHeaderActionClass(t,{isActive:n,isExactActive:o})),tabindex:-1,onClick:e=>a.onHeaderActionClick(e,s)},[e.$slots.headericon?(r(),I(y(e.$slots.headericon),{key:0,item:t,class:h(a.getHeaderIconClass(t))},null,8,["item","class"])):a.getItemProp(t,"icon")?(r(),m("span",{key:1,class:h(a.getHeaderIconClass(t))},null,2)):v("",!0),p("span",M,b(a.getItemLabel(t)),1)],10,O)])),_:2},1032,["to"])):(r(),m("a",{key:1,href:a.getItemProp(t,"url"),class:h(a.getHeaderActionClass(t)),tabindex:-1},[a.getItemProp(t,"items")?C(e.$slots,"submenuicon",{key:0,active:a.isItemActive(t)},(()=>[(r(),I(y(a.isItemActive(t)?"ChevronDownIcon":"ChevronRightIcon"),{class:"p-submenu-icon"}))])):v("",!0),e.$slots.headericon?(r(),I(y(e.$slots.headericon),{key:1,item:t,class:h(a.getHeaderIconClass(t))},null,8,["item","class"])):a.getItemProp(t,"icon")?(r(),m("span",{key:2,class:h(a.getHeaderIconClass(t))},null,2)):v("",!0),p("span",U,b(a.getItemLabel(t)),1)],10,_))],64))])],42,T),P(k,{name:"p-toggleable-content"},{default:g((()=>[f(p("div",{id:a.getContentId(i),class:"p-toggleable-content",role:"region","aria-labelledby":a.getHeaderId(i)},[a.getItemProp(t,"items")?(r(),m("div",j,[P(K,{panelId:a.getPanelId(i),items:a.getItemProp(t,"items"),templates:e.$slots,expandedKeys:s.expandedKeys,onItemToggle:a.changeExpandedKeys,onHeaderFocus:a.updateFocusedHeader,exact:s.exact},null,8,["panelId","items","templates","expandedKeys","onItemToggle","onHeaderFocus","exact"])])):v("",!0)],8,R),[[x,a.isItemActive(t)]])])),_:2},1024)],6)):v("",!0)],64)))),128))],8,N)};export{$ as default};
|
|
1
|
+
import e from"primevue/basecomponent";import t from"primevue/icons/chevrondown";import s from"primevue/icons/chevronright";import{ObjectUtils as i,DomHandler as n,UniqueComponentId as a}from"primevue/utils";import o from"primevue/ripple";import{resolveComponent as l,resolveDirective as r,openBlock as m,createElementBlock as c,mergeProps as d,Fragment as u,renderList as p,createElementVNode as h,createBlock as I,withCtx as g,withDirectives as f,resolveDynamicComponent as y,normalizeClass as v,createCommentVNode as b,toDisplayString as P,createVNode as k,Transition as x,vShow as C,renderSlot as A}from"vue";var K={name:"PanelMenuSub",extends:e,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}},methods:{getItemId(e){return`${this.panelId}_${e.key}`},getItemKey(e){return this.getItemId(e)},getItemProp:(e,t,s)=>e&&e.item?i.getItemValue(e.item[t],s):void 0,getItemLabel(e){return this.getItemProp(e,"label")},getPTOptions(e,t){return this.ptm(t,{context:{active:this.isItemActive(e),focused:this.isItemFocused(e)}})},isItemActive(e){return this.activeItemPath.some((t=>t.key===e.key))},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemFocused(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:e=>i.isNotEmpty(e.items),onItemClick(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-toggle",{processedItem:t,expanded:!this.isItemActive(t)})},onItemToggle(e){this.$emit("item-toggle",e)},onItemActionClick(e,t){t&&t(e)},getAriaSetSize(){return this.items.filter((e=>this.isItemVisible(e)&&!this.getItemProp(e,"separator"))).length},getAriaPosInset(e){return e-this.items.slice(0,e).filter((e=>this.isItemVisible(e)&&this.getItemProp(e,"separator"))).length+1},getItemClass(e){return["p-menuitem",this.getItemProp(e,"class"),{"p-focus":this.isItemFocused(e),"p-disabled":this.isItemDisabled(e)}]},getItemActionClass(e,t){return["p-menuitem-link",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getItemIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]},getSeparatorItemClass(e){return["p-menuitem-separator",this.getItemProp(e,"class")]}},components:{ChevronRightIcon:s,ChevronDownIcon:t},directives:{ripple:o}};const E=["id","aria-label","aria-expanded","aria-level","aria-setsize","aria-posinset"],H=["onClick"],w=["href","onClick"],T=["href","target"];K.render=function(e,t,s,i,n,a){const o=l("router-link"),A=l("PanelMenuSub",!0),K=r("ripple");return m(),c("ul",d({class:"p-submenu-list"},e.ptm("menu")),[(m(!0),c(u,null,p(s.items,((t,i)=>(m(),c(u,{key:a.getItemKey(t)},[a.isItemVisible(t)&&!a.getItemProp(t,"separator")?(m(),c("li",d({key:0,id:a.getItemId(t),style:a.getItemProp(t,"style"),class:a.getItemClass(t),role:"treeitem","aria-label":a.getItemLabel(t),"aria-expanded":a.isItemGroup(t)?a.isItemActive(t):void 0,"aria-level":s.level+1,"aria-setsize":a.getAriaSetSize(),"aria-posinset":a.getAriaPosInset(i)},a.getPTOptions(t,"menuitem")),[h("div",d({class:"p-menuitem-content",onClick:e=>a.onItemClick(e,t)},a.getPTOptions(t,"content")),[s.templates.item?(m(),I(y(s.templates.item),{key:1,item:t.item},null,8,["item"])):(m(),c(u,{key:0},[a.getItemProp(t,"to")&&!a.isItemDisabled(t)?(m(),I(o,{key:0,to:a.getItemProp(t,"to"),custom:""},{default:g((({navigate:e,href:i,isActive:n,isExactActive:o})=>[f((m(),c("a",d({href:i,class:a.getItemActionClass(t,{isActive:n,isExactActive:o}),tabindex:"-1","aria-hidden":"true",onClick:t=>a.onItemActionClick(t,e)},a.getPTOptions(t,"action")),[s.templates.itemicon?(m(),I(y(s.templates.itemicon),{key:0,item:t.item,class:v(a.getItemIconClass(t))},null,8,["item","class"])):a.getItemProp(t,"icon")?(m(),c("span",d({key:1,class:a.getItemIconClass(t)},a.getPTOptions(t,"icon")),null,16)):b("",!0),h("span",d({class:"p-menuitem-text"},a.getPTOptions(t,"label")),P(a.getItemLabel(t)),17)],16,w)),[[K]])])),_:2},1032,["to"])):f((m(),c("a",d({key:1,href:a.getItemProp(t,"url"),class:a.getItemActionClass(t),target:a.getItemProp(t,"target"),tabindex:"-1","aria-hidden":"true"},a.getPTOptions(t,"action")),[a.isItemGroup(t)?(m(),c(u,{key:0},[s.templates.submenuicon?(m(),I(y(s.templates.submenuicon),d({key:0,class:"p-submenu-icon",active:a.isItemActive(t)},a.getPTOptions(t,"submenuIcon")),null,16,["active"])):(m(),I(y(a.isItemActive(t)?"ChevronDownIcon":"ChevronRightIcon"),d({key:1,class:"p-submenu-icon"},a.getPTOptions(t,"submenuIcon")),null,16))],64)):b("",!0),s.templates.itemicon?(m(),I(y(s.templates.itemicon),{key:1,item:t.item,class:v(a.getItemIconClass(t))},null,8,["item","class"])):a.getItemProp(t,"icon")?(m(),c("span",d({key:2,class:a.getItemIconClass(t)},a.getPTOptions(t,"icon")),null,16)):b("",!0),h("span",d({class:"p-menuitem-text"},a.getPTOptions(t,"label")),P(a.getItemLabel(t)),17)],16,T)),[[K]])],64))],16,H),k(x,{name:"p-toggleable-content"},{default:g((()=>[f(h("div",d({class:"p-toggleable-content"},e.ptm("toggleableContent")),[a.isItemVisible(t)&&a.isItemGroup(t)?(m(),I(A,{key:0,id:a.getItemId(t)+"_list",role:"group",panelId:s.panelId,focusedItemId:s.focusedItemId,items:t.items,level:s.level+1,templates:s.templates,activeItemPath:s.activeItemPath,exact:s.exact,onItemToggle:a.onItemToggle,pt:e.pt},null,8,["id","panelId","focusedItemId","items","level","templates","activeItemPath","exact","onItemToggle","pt"])):b("",!0)],16),[[C,a.isItemActive(t)]])])),_:2},1024)],16,E)):b("",!0),a.isItemVisible(t)&&a.getItemProp(t,"separator")?(m(),c("li",d({key:1,style:a.getItemProp(t,"style"),class:a.getSeparatorItemClass(t),role:"separator"},e.ptm("separator")),null,16)):b("",!0)],64)))),128))],16)};var D={name:"PanelMenuList",extends:e,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:()=>({focused:!1,focusedItem:null,activeItemPath:[]}),watch:{expandedKeys(e){this.autoUpdateActiveItemPath(e)}},mounted(){this.autoUpdateActiveItemPath(this.expandedKeys)},methods:{getItemProp:(e,t)=>e&&e.item?i.getItemValue(e.item[t]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemActive(e){return this.activeItemPath.some((t=>t.key===e.parentKey))},isItemGroup:e=>i.isNotEmpty(e.items),onFocus(e){this.focused=!0,this.focusedItem=this.focusedItem||(this.isElementInPanel(e,e.relatedTarget)?this.findFirstItem():this.findLastItem())},onBlur(){this.focused=!1,this.focusedItem=null,this.searchValue=""},onKeyDown(e){const t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e);break;case"Escape":case"Tab":case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&i.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onArrowDownKey(e){const t=i.isNotEmpty(this.focusedItem)?this.findNextItem(this.focusedItem):this.findFirstItem();this.changeFocusedItem({originalEvent:e,processedItem:t,focusOnNext:!0}),e.preventDefault()},onArrowUpKey(e){const t=i.isNotEmpty(this.focusedItem)?this.findPrevItem(this.focusedItem):this.findLastItem();this.changeFocusedItem({originalEvent:e,processedItem:t,selfCheck:!0}),e.preventDefault()},onArrowLeftKey(e){if(i.isNotEmpty(this.focusedItem)){this.activeItemPath.some((e=>e.key===this.focusedItem.key))?this.activeItemPath=this.activeItemPath.filter((e=>e.key!==this.focusedItem.key)):this.focusedItem=i.isNotEmpty(this.focusedItem.parent)?this.focusedItem.parent:this.focusedItem,e.preventDefault()}},onArrowRightKey(e){if(i.isNotEmpty(this.focusedItem)){if(this.isItemGroup(this.focusedItem)){this.activeItemPath.some((e=>e.key===this.focusedItem.key))?this.onArrowDownKey(e):(this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==this.focusedItem.parentKey)),this.activeItemPath.push(this.focusedItem))}e.preventDefault()}},onHomeKey(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findFirstItem(),allowHeaderFocus:!1}),e.preventDefault()},onEndKey(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findLastItem(),focusOnNext:!0,allowHeaderFocus:!1}),e.preventDefault()},onEnterKey(e){if(i.isNotEmpty(this.focusedItem)){const e=n.findSingle(this.$el,`li[id="${this.focusedItemId}"]`),t=e&&(n.findSingle(e,".p-menuitem-link")||n.findSingle(e,"a,button"));t?t.click():e&&e.click()}e.preventDefault()},onSpaceKey(e){this.onEnterKey(e)},onItemToggle(e){const{processedItem:t,expanded:s}=e;this.expandedKeys?this.$emit("item-toggle",{item:t.item,expanded:s}):(this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==t.parentKey)),s&&this.activeItemPath.push(t)),this.focusedItem=t,n.focus(this.$el)},isElementInPanel(e,t){const s=e.currentTarget.closest(".p-panelmenu-panel");return s&&s.contains(t)},isItemMatched(e){return this.isValidItem(e)&&this.getItemLabel(e).toLocaleLowerCase(this.searchLocale).startsWith(this.searchValue.toLocaleLowerCase(this.searchLocale))},isVisibleItem(e){return!!e&&(0===e.level||this.isItemActive(e))&&this.isItemVisible(e)},isValidItem(e){return!!e&&!this.isItemDisabled(e)},findFirstItem(){return this.visibleItems.find((e=>this.isValidItem(e)))},findLastItem(){return i.findLast(this.visibleItems,(e=>this.isValidItem(e)))},findNextItem(e){const t=this.visibleItems.findIndex((t=>t.key===e.key));return(t<this.visibleItems.length-1?this.visibleItems.slice(t+1).find((e=>this.isValidItem(e))):void 0)||e},findPrevItem(e){const t=this.visibleItems.findIndex((t=>t.key===e.key));return(t>0?i.findLast(this.visibleItems.slice(0,t),(e=>this.isValidItem(e))):void 0)||e},searchItems(e,t){this.searchValue=(this.searchValue||"")+t;let s=null,n=!1;if(i.isNotEmpty(this.focusedItem)){const e=this.visibleItems.findIndex((e=>e.key===this.focusedItem.key));s=this.visibleItems.slice(e).find((e=>this.isItemMatched(e))),s=i.isEmpty(s)?this.visibleItems.slice(0,e).find((e=>this.isItemMatched(e))):s}else s=this.visibleItems.find((e=>this.isItemMatched(e)));return i.isNotEmpty(s)&&(n=!0),i.isEmpty(s)&&i.isEmpty(this.focusedItem)&&(s=this.findFirstItem()),i.isNotEmpty(s)&&this.changeFocusedItem({originalEvent:e,processedItem:s,allowHeaderFocus:!1}),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((()=>{this.searchValue="",this.searchTimeout=null}),500),n},changeFocusedItem(e){const{originalEvent:t,processedItem:s,focusOnNext:n,selfCheck:a,allowHeaderFocus:o=!0}=e;i.isNotEmpty(this.focusedItem)&&this.focusedItem.key!==s.key?(this.focusedItem=s,this.scrollInView()):o&&this.$emit("header-focus",{originalEvent:t,focusOnNext:n,selfCheck:a})},scrollInView(){const e=n.findSingle(this.$el,`li[id="${this.focusedItemId}"]`);e&&e.scrollIntoView&&e.scrollIntoView({block:"nearest",inline:"start"})},autoUpdateActiveItemPath(e){this.activeItemPath=Object.entries(e||{}).reduce(((e,[t,s])=>{if(s){const s=this.findProcessedItemByItemKey(t);s&&e.push(s)}return e}),[])},findProcessedItemByItemKey(e,t,s=0){if(!(t=t||0===s&&this.processedItems))return null;for(let i=0;i<t.length;i++){const n=t[i];if(this.getItemProp(n,"key")===e)return n;const a=this.findProcessedItemByItemKey(e,n.items,s+1);if(a)return a}},createProcessedItems(e,t=0,s={},i=""){const n=[];return e&&e.forEach(((e,a)=>{const o=(""!==i?i+"_":"")+a,l={item:e,index:a,level:t,key:o,parent:s,parentKey:i};l.items=this.createProcessedItems(e.items,t+1,l,o),n.push(l)})),n},flatItems(e,t=[]){return e&&e.forEach((e=>{this.isVisibleItem(e)&&(t.push(e),this.flatItems(e.items,t))})),t}},computed:{processedItems(){return this.createProcessedItems(this.items||[])},visibleItems(){return this.flatItems(this.processedItems)},focusedItemId(){return i.isNotEmpty(this.focusedItem)?`${this.panelId}_${this.focusedItem.key}`:null}},components:{PanelMenuSub:K}};D.render=function(e,t,s,i,n,a){const o=l("PanelMenuSub");return m(),I(o,{id:s.panelId+"_list",class:"p-panelmenu-root-list",role:"tree",tabindex:-1,"aria-activedescendant":n.focused?a.focusedItemId:void 0,panelId:s.panelId,focusedItemId:n.focused?a.focusedItemId:void 0,items:a.processedItems,templates:s.templates,activeItemPath:n.activeItemPath,exact:s.exact,onFocus:a.onFocus,onBlur:a.onBlur,onKeydown:a.onKeyDown,onItemToggle:a.onItemToggle,pt:e.pt},null,8,["id","aria-activedescendant","panelId","focusedItemId","items","templates","activeItemPath","exact","onFocus","onBlur","onKeydown","onItemToggle","pt"])};var F={name:"PanelMenu",extends:e,emits:["update:expandedKeys","panel-open","panel-close"],props:{model:{type:Array,default:null},expandedKeys:{type:Object,default:null},exact:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},data(){return{id:this.$attrs.id,activeItem:null}},watch:{"$attrs.id":function(e){this.id=e||a()}},mounted(){this.id=this.id||a()},methods:{getItemProp:(e,t)=>e?i.getItemValue(e[t]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},getPTOptions(e,t){return this.ptm(t,{options:{active:this.isItemActive(e),focused:this.isItemFocused(e)}})},isItemActive(e){return this.expandedKeys?this.expandedKeys[this.getItemProp(e,"key")]:i.equals(e,this.activeItem)},isItemVisible(e){return!1!==this.getItemProp(e,"visible")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemFocused(e){return i.equals(e,this.activeItem)},getPanelId(e){return`${this.id}_${e}`},getPanelKey(e){return this.getPanelId(e)},getHeaderId(e){return`${this.getPanelId(e)}_header`},getContentId(e){return`${this.getPanelId(e)}_content`},onHeaderClick(e,t){this.isItemDisabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),this.changeActiveItem(e,t),n.focus(e.currentTarget))},onHeaderKeyDown(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(e){const t=n.hasClass(e.currentTarget,"p-highlight")?n.findSingle(e.currentTarget.nextElementSibling,".p-panelmenu-root-list"):null;t?n.focus(t):this.updateFocusedHeader({originalEvent:e,focusOnNext:!0}),e.preventDefault()},onHeaderArrowUpKey(e){const t=this.findPrevHeader(e.currentTarget.parentElement)||this.findLastHeader(),s=n.hasClass(t,"p-highlight")?n.findSingle(t.nextElementSibling,".p-panelmenu-root-list"):null;s?n.focus(s):this.updateFocusedHeader({originalEvent:e,focusOnNext:!1}),e.preventDefault()},onHeaderHomeKey(e){this.changeFocusedHeader(e,this.findFirstHeader()),e.preventDefault()},onHeaderEndKey(e){this.changeFocusedHeader(e,this.findLastHeader()),e.preventDefault()},onHeaderEnterKey(e,t){const s=n.findSingle(e.currentTarget,".p-panelmenu-header-action");s?s.click():this.onHeaderClick(e,t),e.preventDefault()},onHeaderActionClick(e,t){t&&t(e)},findNextHeader(e,t=!1){const s=t?e:e.nextElementSibling,i=n.findSingle(s,".p-panelmenu-header");return i?n.hasClass(i,"p-disabled")?this.findNextHeader(i.parentElement):i:null},findPrevHeader(e,t=!1){const s=t?e:e.previousElementSibling,i=n.findSingle(s,".p-panelmenu-header");return i?n.hasClass(i,"p-disabled")?this.findPrevHeader(i.parentElement):i:null},findFirstHeader(){return this.findNextHeader(this.$el.firstElementChild,!0)},findLastHeader(){return this.findPrevHeader(this.$el.lastElementChild,!0)},updateFocusedHeader(e){const{originalEvent:t,focusOnNext:s,selfCheck:i}=e,a=t.currentTarget.closest(".p-panelmenu-panel"),o=i?n.findSingle(a,".p-panelmenu-header"):s?this.findNextHeader(a):this.findPrevHeader(a);o?this.changeFocusedHeader(t,o):s?this.onHeaderHomeKey(t):this.onHeaderEndKey(t)},changeActiveItem(e,t,s=!1){if(!this.isItemDisabled(t)){const n=this.isItemActive(t),a=n?"panel-close":"panel-open";this.activeItem=s?t:this.activeItem&&i.equals(t,this.activeItem)?null:t,this.changeExpandedKeys({item:t,expanded:!n}),this.$emit(a,{originalEvent:e,item:t})}},changeExpandedKeys({item:e,expanded:t=!1}){if(this.expandedKeys){let s={...this.expandedKeys};t?s[e.key]=!0:delete s[e.key],this.$emit("update:expandedKeys",s)}},changeFocusedHeader(e,t){t&&n.focus(t)},getPanelClass(e){return["p-panelmenu-panel",this.getItemProp(e,"class")]},getHeaderClass(e){return["p-panelmenu-header",this.getItemProp(e,"headerClass"),{"p-highlight":this.isItemActive(e),"p-disabled":this.isItemDisabled(e)}]},getHeaderActionClass(e,t){return["p-panelmenu-header-action",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getHeaderIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]}},components:{PanelMenuList:D,ChevronRightIcon:s,ChevronDownIcon:t}};const S=["id"],L=["id","tabindex","aria-label","aria-expanded","aria-controls","aria-disabled","onClick","onKeydown"],O=["href","onClick"],V=["href"],$=["id","aria-labelledby"];!function(e,t){void 0===t&&(t={});var s=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===s&&i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\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.p-panelmenu .p-panelmenu-header-action:focus {\n z-index: 1;\n}\n.p-panelmenu .p-submenu-list {\n margin: 0;\n padding: 0;\n list-style: none;\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.p-panelmenu .p-menuitem-text {\n line-height: 1;\n}\n"),F.render=function(e,t,s,i,n,a){const o=l("router-link"),r=l("PanelMenuList");return m(),c("div",d({id:n.id,class:"p-panelmenu p-component"},e.ptm("root")),[(m(!0),c(u,null,p(s.model,((t,i)=>(m(),c(u,{key:a.getPanelKey(i)},[a.isItemVisible(t)?(m(),c("div",d({key:0,style:a.getItemProp(t,"style"),class:a.getPanelClass(t)},e.ptm("panel")),[h("div",d({id:a.getHeaderId(i),class:a.getHeaderClass(t),tabindex:a.isItemDisabled(t)?-1:s.tabindex,role:"button","aria-label":a.getItemLabel(t),"aria-expanded":a.isItemActive(t),"aria-controls":a.getContentId(i),"aria-disabled":a.isItemDisabled(t),onClick:e=>a.onHeaderClick(e,t),onKeydown:e=>a.onHeaderKeyDown(e,t)},a.getPTOptions(t,"header")),[h("div",d({class:"p-panelmenu-header-content"},a.getPTOptions(t,"headerContent")),[e.$slots.item?(m(),I(y(e.$slots.item),{key:1,item:t},null,8,["item"])):(m(),c(u,{key:0},[a.getItemProp(t,"to")&&!a.isItemDisabled(t)?(m(),I(o,{key:0,to:a.getItemProp(t,"to"),custom:""},{default:g((({navigate:s,href:i,isActive:n,isExactActive:o})=>[h("a",d({href:i,class:a.getHeaderActionClass(t,{isActive:n,isExactActive:o}),tabindex:-1,onClick:e=>a.onHeaderActionClick(e,s)},a.getPTOptions(t,"headerAction")),[e.$slots.headericon?(m(),I(y(e.$slots.headericon),{key:0,item:t,class:v(a.getHeaderIconClass(t))},null,8,["item","class"])):a.getItemProp(t,"icon")?(m(),c("span",d({key:1,class:a.getHeaderIconClass(t)},a.getPTOptions(t,"headerIcon")),null,16)):b("",!0),h("span",d({class:"p-menuitem-text"},a.getPTOptions(t,"headerLabel")),P(a.getItemLabel(t)),17)],16,O)])),_:2},1032,["to"])):(m(),c("a",d({key:1,href:a.getItemProp(t,"url"),class:a.getHeaderActionClass(t),tabindex:-1},a.getPTOptions(t,"headerAction")),[a.getItemProp(t,"items")?A(e.$slots,"submenuicon",{key:0,active:a.isItemActive(t)},(()=>[(m(),I(y(a.isItemActive(t)?"ChevronDownIcon":"ChevronRightIcon"),d({class:"p-submenu-icon"},a.getPTOptions(t,"submenuIcon")),null,16))])):b("",!0),e.$slots.headericon?(m(),I(y(e.$slots.headericon),{key:1,item:t,class:v(a.getHeaderIconClass(t))},null,8,["item","class"])):a.getItemProp(t,"icon")?(m(),c("span",d({key:2,class:a.getHeaderIconClass(t)},a.getPTOptions(t,"headerIcon")),null,16)):b("",!0),h("span",d({class:"p-menuitem-text"},a.getPTOptions(t,"headerLabel")),P(a.getItemLabel(t)),17)],16,V))],64))],16)],16,L),k(x,{name:"p-toggleable-content"},{default:g((()=>[f(h("div",d({id:a.getContentId(i),class:"p-toggleable-content",role:"region","aria-labelledby":a.getHeaderId(i)},e.ptm("toggleableContent")),[a.getItemProp(t,"items")?(m(),c("div",d({key:0,class:"p-panelmenu-content"},e.ptm("menuContent")),[k(r,{panelId:a.getPanelId(i),items:a.getItemProp(t,"items"),templates:e.$slots,expandedKeys:s.expandedKeys,onItemToggle:a.changeExpandedKeys,onHeaderFocus:a.updateFocusedHeader,exact:s.exact,pt:e.pt},null,8,["panelId","items","templates","expandedKeys","onItemToggle","onHeaderFocus","exact","pt"])],16)):b("",!0)],16,$),[[C,a.isItemActive(t)]])])),_:2},1024)],16)):b("",!0)],64)))),128))],16,S)};export{F as default};
|