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 +1 @@
|
|
|
1
|
-
this.primevue=this.primevue||{},this.primevue.tieredmenu=function(e,t,i,s,n,o){"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=r(e),l=r(t),d=r(s),m=r(n),c={name:"TieredMenuSub",emits:["item-click","item-mouseenter"],props:{menuId:{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.menuId}_${e.key}`},getItemKey(e){return this.getItemId(e)},getItemProp:(e,t,s)=>e&&e.item?i.ObjectUtils.getItemValue(e.item[t],s):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=>i.ObjectUtils.isNotEmpty(e.items),onItemClick(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemActionClick(e,t){t&&t(e)},getAriaSetSize(){return this.items.filter((e=>this.isItemVisible(e)&&!this.getItemProp(e,"separator"))).length},getAriaPosInset(e){return e-this.items.slice(0,e).filter((e=>this.isItemVisible(e)&&this.getItemProp(e,"separator"))).length+1},getItemClass(e){return["p-menuitem",this.getItemProp(e,"class"),{"p-menuitem-active p-highlight":this.isItemActive(e),"p-focus":this.isItemFocused(e),"p-disabled":this.isItemDisabled(e)}]},getItemActionClass(e,t){return["p-menuitem-link",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getItemIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]},getSeparatorItemClass(e){return["p-menuitem-separator",this.getItemProp(e,"class")]}},components:{AngleRightIcon:d.default},directives:{ripple:m.default}};const u=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset"],h=["onClick","onMouseenter"],I=["href","onClick"],p={class:"p-menuitem-text"},f=["href","target"],b={class:"p-menuitem-text"},v=["id"];c.render=function(e,t,i,s,n,r){const a=o.resolveComponent("router-link"),l=o.resolveComponent("AngleRightIcon"),d=o.resolveComponent("TieredMenuSub",!0),m=o.resolveDirective("ripple");return o.openBlock(),o.createElementBlock("ul",null,[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(i.items,((s,n)=>(o.openBlock(),o.createElementBlock(o.Fragment,{key:r.getItemKey(s)},[r.isItemVisible(s)&&!r.getItemProp(s,"separator")?(o.openBlock(),o.createElementBlock("li",{key:0,id:r.getItemId(s),style:o.normalizeStyle(r.getItemProp(s,"style")),class:o.normalizeClass(r.getItemClass(s)),role:"menuitem","aria-label":r.getItemLabel(s),"aria-disabled":r.isItemDisabled(s)||void 0,"aria-expanded":r.isItemGroup(s)?r.isItemActive(s):void 0,"aria-haspopup":r.isItemGroup(s)&&!r.getItemProp(s,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":r.getAriaSetSize(),"aria-posinset":r.getAriaPosInset(n)},[o.createElementVNode("div",{class:"p-menuitem-content",onClick:e=>r.onItemClick(e,s),onMouseenter:e=>r.onItemMouseEnter(e,s)},[i.templates.item?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.item),{key:1,item:s.item},null,8,["item"])):(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[r.getItemProp(s,"to")&&!r.isItemDisabled(s)?(o.openBlock(),o.createBlock(a,{key:0,to:r.getItemProp(s,"to"),custom:""},{default:o.withCtx((({navigate:e,href:t,isActive:n,isExactActive:a})=>[o.withDirectives((o.openBlock(),o.createElementBlock("a",{href:t,class:o.normalizeClass(r.getItemActionClass(s,{isActive:n,isExactActive:a})),tabindex:"-1","aria-hidden":"true",onClick:t=>r.onItemActionClick(t,e)},[i.templates.itemicon?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.itemicon),{key:0,item:s.item,class:o.normalizeClass(r.getItemIconClass(s))},null,8,["item","class"])):r.getItemProp(s,"icon")?(o.openBlock(),o.createElementBlock("span",{key:1,class:o.normalizeClass(r.getItemIconClass(s))},null,2)):o.createCommentVNode("",!0),o.createElementVNode("span",p,o.toDisplayString(r.getItemLabel(s)),1)],10,I)),[[m]])])),_:2},1032,["to"])):o.withDirectives((o.openBlock(),o.createElementBlock("a",{key:1,href:r.getItemProp(s,"url"),class:o.normalizeClass(r.getItemActionClass(s)),target:r.getItemProp(s,"target"),tabindex:"-1","aria-hidden":"true"},[i.templates.itemicon?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.itemicon),{key:0,item:s.item,class:o.normalizeClass(r.getItemIconClass(s))},null,8,["item","class"])):r.getItemProp(s,"icon")?(o.openBlock(),o.createElementBlock("span",{key:1,class:o.normalizeClass(r.getItemIconClass(s))},null,2)):o.createCommentVNode("",!0),o.createElementVNode("span",b,o.toDisplayString(r.getItemLabel(s)),1),r.getItemProp(s,"items")?(o.openBlock(),o.createElementBlock(o.Fragment,{key:2},[i.templates.submenuicon?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(i.templates.submenuicon),{key:0,class:"p-submenu-icon",active:r.isItemActive(s)},null,8,["active"])):(o.openBlock(),o.createBlock(l,{key:1,class:"p-submenu-icon"}))],64)):o.createCommentVNode("",!0)],10,f)),[[m]])],64))],40,h),r.isItemVisible(s)&&r.isItemGroup(s)?(o.openBlock(),o.createBlock(d,{key:0,id:r.getItemId(s)+"_list",role:"menu",class:"p-submenu-list",menuId:i.menuId,focusedItemId:i.focusedItemId,items:s.items,templates:i.templates,activeItemPath:i.activeItemPath,exact:i.exact,level:i.level+1,onItemClick:t[0]||(t[0]=t=>e.$emit("item-click",t)),onItemMouseenter:t[1]||(t[1]=t=>e.$emit("item-mouseenter",t))},null,8,["id","menuId","focusedItemId","items","templates","activeItemPath","exact","level"])):o.createCommentVNode("",!0)],14,u)):o.createCommentVNode("",!0),r.isItemVisible(s)&&r.getItemProp(s,"separator")?(o.openBlock(),o.createElementBlock("li",{key:1,id:r.getItemId(s),style:o.normalizeStyle(r.getItemProp(s,"style")),class:o.normalizeClass(r.getSeparatorItemClass(s)),role:"separator"},null,14,v)):o.createCommentVNode("",!0)],64)))),128))])};var y={name:"TieredMenu",inheritAttrs:!1,emits:["focus","blur","before-show","before-hide","hide","show"],props:{popup:{type:Boolean,default:!1},model:{type:Array,default:null},appendTo:{type:String,default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},exact:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},tabindex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},outsideClickListener:null,scrollHandler:null,resizeListener:null,target:null,container:null,menubar:null,searchTimeout:null,searchValue:null,data(){return{id:this.$attrs.id,focused:!1,focusedItemInfo:{index:-1,level:0,parentKey:""},activeItemPath:[],visible:!this.popup,dirty:!1}},watch:{"$attrs.id":function(e){this.id=e||i.UniqueComponentId()},activeItemPath(e){this.popup||(i.ObjectUtils.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener()):(this.unbindOutsideClickListener(),this.unbindResizeListener()))}},mounted(){this.id=this.id||i.UniqueComponentId()},beforeUnmount(){this.unbindOutsideClickListener(),this.unbindResizeListener(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null),this.container&&this.autoZIndex&&i.ZIndexUtils.clear(this.container),this.target=null,this.container=null},methods:{getItemProp:(e,t)=>e?i.ObjectUtils.getItemValue(e[t]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemGroup(e){return i.ObjectUtils.isNotEmpty(this.getItemProp(e,"items"))},isItemSeparator(e){return this.getItemProp(e,"separator")},getProccessedItemLabel(e){return e?this.getItemLabel(e.item):void 0},isProccessedItemGroup:e=>e&&i.ObjectUtils.isNotEmpty(e.items),toggle(e){this.visible?this.hide(e,!0):this.show(e)},show(e,t){this.popup&&(this.$emit("before-show"),this.visible=!0,this.target=this.target||e.currentTarget,this.relatedTarget=e.relatedTarget||null),this.focusedItemInfo={index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},t&&i.DomHandler.focus(this.menubar)},hide(e,t){this.popup&&(this.$emit("before-hide"),this.visible=!1),this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""},t&&i.DomHandler.focus(this.relatedTarget||this.target||this.menubar),this.dirty=!1},onFocus(e){this.focused=!0,this.focusedItemInfo=-1!==this.focusedItemInfo.index?this.focusedItemInfo:{index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},this.$emit("focus",e)},onBlur(e){this.focused=!1,this.focusedItemInfo={index:-1,level:0,parentKey:""},this.searchValue="",this.dirty=!1,this.$emit("blur",e)},onKeyDown(e){if(this.disabled)return void e.preventDefault();const t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e);break;case"Escape":this.onEscapeKey(e);break;case"Tab":this.onTabKey(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&i.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange(e){const{processedItem:t,isFocus:s}=e;if(i.ObjectUtils.isEmpty(t))return;const{index:n,key:o,level:r,parentKey:a,items:l}=t,d=i.ObjectUtils.isNotEmpty(l),m=this.activeItemPath.filter((e=>e.parentKey!==a&&e.parentKey!==o));d&&m.push(t),this.focusedItemInfo={index:n,level:r,parentKey:a},this.activeItemPath=m,d&&(this.dirty=!0),s&&i.DomHandler.focus(this.menubar)},onOverlayClick(e){a.default.emit("overlay-click",{originalEvent:e,target:this.target})},onItemClick(e){const{originalEvent:t,processedItem:s}=e,n=this.isProccessedItemGroup(s),o=i.ObjectUtils.isEmpty(s.parent);if(this.isSelected(s)){const{index:e,key:t,level:n,parentKey:r}=s;this.activeItemPath=this.activeItemPath.filter((e=>t!==e.key&&t.startsWith(e.key))),this.focusedItemInfo={index:e,level:n,parentKey:r},this.dirty=!o,i.DomHandler.focus(this.menubar)}else if(n)this.onItemChange(e);else{const e=o?s:this.activeItemPath.find((e=>""===e.parentKey));this.hide(t),this.changeFocusedItemIndex(t,e?e.index:-1),i.DomHandler.focus(this.menubar)}},onItemMouseEnter(e){this.dirty&&this.onItemChange(e)},onArrowDownKey(e){const t=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()},onArrowUpKey(e){if(e.altKey){if(-1!==this.focusedItemInfo.index){const t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.popup&&this.hide(e,!0),e.preventDefault()}else{const t=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()}},onArrowLeftKey(e){const t=this.visibleItems[this.focusedItemInfo.index],s=this.activeItemPath.find((e=>e.key===t.parentKey));i.ObjectUtils.isEmpty(t.parent)||(this.focusedItemInfo={index:-1,parentKey:s?s.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==this.focusedItemInfo.parentKey)),e.preventDefault()},onArrowRightKey(e){const t=this.visibleItems[this.focusedItemInfo.index];this.isProccessedItemGroup(t)&&(this.onItemChange({originalEvent:e,processedItem:t}),this.focusedItemInfo={index:-1,parentKey:t.key},this.searchValue="",this.onArrowDownKey(e)),e.preventDefault()},onHomeKey(e){this.changeFocusedItemIndex(e,this.findFirstItemIndex()),e.preventDefault()},onEndKey(e){this.changeFocusedItemIndex(e,this.findLastItemIndex()),e.preventDefault()},onEnterKey(e){if(-1!==this.focusedItemInfo.index){const e=i.DomHandler.findSingle(this.menubar,`li[id="${this.focusedItemId}"]`),t=e&&i.DomHandler.findSingle(e,".p-menuitem-link");if(t?t.click():e&&e.click(),!this.popup){const e=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(e)&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex())}}e.preventDefault()},onSpaceKey(e){this.onEnterKey(e)},onEscapeKey(e){this.hide(e,!0),!this.popup&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex()),e.preventDefault()},onTabKey(e){if(-1!==this.focusedItemInfo.index){const t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.hide()},onEnter(e){this.autoZIndex&&i.ZIndexUtils.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu),this.alignOverlay(),i.DomHandler.focus(this.menubar),this.scrollInView()},onAfterEnter(){this.bindOutsideClickListener(),this.bindScrollListener(),this.bindResizeListener(),this.$emit("show")},onLeave(){this.unbindOutsideClickListener(),this.unbindScrollListener(),this.unbindResizeListener(),this.$emit("hide"),this.container=null,this.dirty=!1},onAfterLeave(e){this.autoZIndex&&i.ZIndexUtils.clear(e)},alignOverlay(){this.container.style.minWidth=i.DomHandler.getOuterWidth(this.target)+"px",i.DomHandler.absolutePosition(this.container,this.target)},bindOutsideClickListener(){this.outsideClickListener||(this.outsideClickListener=e=>{const t=this.container&&!this.container.contains(e.target),i=!this.popup||!(this.target&&(this.target===e.target||this.target.contains(e.target)));t&&i&&this.hide()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindScrollListener(){this.scrollHandler||(this.scrollHandler=new i.ConnectedOverlayScrollHandler(this.target,(e=>{this.hide(e,!0)}))),this.scrollHandler.bindScrollListener()},unbindScrollListener(){this.scrollHandler&&this.scrollHandler.unbindScrollListener()},bindResizeListener(){this.resizeListener||(this.resizeListener=e=>{i.DomHandler.isTouchDevice()||this.hide(e,!0)},window.addEventListener("resize",this.resizeListener))},unbindResizeListener(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},isItemMatched(e){return this.isValidItem(e)&&this.getProccessedItemLabel(e).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase())},isValidItem(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)},isValidSelectedItem(e){return this.isValidItem(e)&&this.isSelected(e)},isSelected(e){return this.activeItemPath.some((t=>t.key===e.key))},findFirstItemIndex(){return this.visibleItems.findIndex((e=>this.isValidItem(e)))},findLastItemIndex(){return i.ObjectUtils.findLastIndex(this.visibleItems,(e=>this.isValidItem(e)))},findNextItemIndex(e){const t=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((e=>this.isValidItem(e))):-1;return t>-1?t+e+1:e},findPrevItemIndex(e){const t=e>0?i.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(e=>this.isValidItem(e))):-1;return t>-1?t:e},findSelectedItemIndex(){return this.visibleItems.findIndex((e=>this.isValidSelectedItem(e)))},findFirstFocusedItemIndex(){const e=this.findSelectedItemIndex();return e<0?this.findFirstItemIndex():e},findLastFocusedItemIndex(){const e=this.findSelectedItemIndex();return e<0?this.findLastItemIndex():e},searchItems(e,t){this.searchValue=(this.searchValue||"")+t;let i=-1,s=!1;return-1!==this.focusedItemInfo.index?(i=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((e=>this.isItemMatched(e))),i=-1===i?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((e=>this.isItemMatched(e))):i+this.focusedItemInfo.index):i=this.visibleItems.findIndex((e=>this.isItemMatched(e))),-1!==i&&(s=!0),-1===i&&-1===this.focusedItemInfo.index&&(i=this.findFirstFocusedItemIndex()),-1!==i&&this.changeFocusedItemIndex(e,i),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((()=>{this.searchValue="",this.searchTimeout=null}),500),s},changeFocusedItemIndex(e,t){this.focusedItemInfo.index!==t&&(this.focusedItemInfo.index=t,this.scrollInView())},scrollInView(e=-1){const t=-1!==e?`${this.id}_${e}`:this.focusedItemId,s=i.DomHandler.findSingle(this.menubar,`li[id="${t}"]`);s&&s.scrollIntoView&&s.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems(e,t=0,i={},s=""){const n=[];return e&&e.forEach(((e,o)=>{const r=(""!==s?s+"_":"")+o,a={item:e,index:o,level:t,key:r,parent:i,parentKey:s};a.items=this.createProcessedItems(e.items,t+1,a,r),n.push(a)})),n},containerRef(e){this.container=e},menubarRef(e){this.menubar=e?e.$el:void 0}},computed:{containerClass(){return["p-tieredmenu p-component",{"p-tieredmenu-overlay":this.popup,"p-input-filled":"filled"===this.$primevue.config.inputStyle,"p-ripple-disabled":!1===this.$primevue.config.ripple}]},processedItems(){return this.createProcessedItems(this.model||[])},visibleItems(){const e=this.activeItemPath.find((e=>e.key===this.focusedItemInfo.parentKey));return e?e.items:this.processedItems},focusedItemId(){return-1!==this.focusedItemInfo.index?`${this.id}${i.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:""}_${this.focusedItemInfo.index}`:null}},components:{TieredMenuSub:c,Portal:l.default}};const g=["id"];return function(e,t){void 0===t&&(t={});var i=t.insertAt;if(e&&"undefined"!=typeof document){var s=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===i&&s.firstChild?s.insertBefore(n,s.firstChild):s.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\n.p-tieredmenu-overlay {\n position: absolute;\n top: 0;\n left: 0;\n}\n.p-tieredmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.p-tieredmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n}\n.p-tieredmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n}\n.p-tieredmenu .p-menuitem-text {\n line-height: 1;\n}\n.p-tieredmenu .p-menuitem {\n position: relative;\n}\n.p-tieredmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n.p-tieredmenu .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n}\n"),y.render=function(e,t,i,s,n,r){const a=o.resolveComponent("TieredMenuSub"),l=o.resolveComponent("Portal");return o.openBlock(),o.createBlock(l,{appendTo:i.appendTo,disabled:!i.popup},{default:o.withCtx((()=>[o.createVNode(o.Transition,{name:"p-connected-overlay",onEnter:r.onEnter,onAfterEnter:r.onAfterEnter,onLeave:r.onLeave,onAfterLeave:r.onAfterLeave},{default:o.withCtx((()=>[n.visible?(o.openBlock(),o.createElementBlock("div",o.mergeProps({key:0,ref:r.containerRef,id:n.id,class:r.containerClass,onClick:t[0]||(t[0]=(...e)=>r.onOverlayClick&&r.onOverlayClick(...e))},e.$attrs),[o.createVNode(a,{ref:r.menubarRef,id:n.id+"_list",class:"p-tieredmenu-root-list",tabindex:i.disabled?-1:i.tabindex,role:"menubar","aria-label":e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-disabled":i.disabled||void 0,"aria-orientation":"vertical","aria-activedescendant":n.focused?r.focusedItemId:void 0,menuId:n.id,focusedItemId:n.focused?r.focusedItemId:void 0,items:r.processedItems,templates:e.$slots,activeItemPath:n.activeItemPath,exact:i.exact,level:0,onFocus:r.onFocus,onBlur:r.onBlur,onKeydown:r.onKeyDown,onItemClick:r.onItemClick,onItemMouseenter:r.onItemMouseEnter},null,8,["id","tabindex","aria-label","aria-labelledby","aria-disabled","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","exact","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter"])],16,g)):o.createCommentVNode("",!0)])),_:1},8,["onEnter","onAfterEnter","onLeave","onAfterLeave"])])),_:1},8,["appendTo","disabled"])},y}(primevue.overlayeventbus,primevue.portal,primevue.utils,primevue.icons.angleright,primevue.ripple,Vue);
|
|
1
|
+
this.primevue=this.primevue||{},this.primevue.tieredmenu=function(e,t,i,s,n,o,r){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var l=a(e),d=a(t),m=a(i),c=a(n),u=a(o),h={name:"TieredMenuSub",extends:l.default,emits:["item-click","item-mouseenter"],props:{menuId:{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.menuId}_${e.key}`},getItemKey(e){return this.getItemId(e)},getItemProp:(e,t,i)=>e&&e.item?s.ObjectUtils.getItemValue(e.item[t],i):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=>s.ObjectUtils.isNotEmpty(e.items),onItemClick(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemActionClick(e,t){t&&t(e)},getAriaSetSize(){return this.items.filter((e=>this.isItemVisible(e)&&!this.getItemProp(e,"separator"))).length},getAriaPosInset(e){return e-this.items.slice(0,e).filter((e=>this.isItemVisible(e)&&this.getItemProp(e,"separator"))).length+1},getItemClass(e){return["p-menuitem",this.getItemProp(e,"class"),{"p-menuitem-active p-highlight":this.isItemActive(e),"p-focus":this.isItemFocused(e),"p-disabled":this.isItemDisabled(e)}]},getItemActionClass(e,t){return["p-menuitem-link",{"router-link-active":t&&t.isActive,"router-link-active-exact":this.exact&&t&&t.isExactActive}]},getItemIconClass(e){return["p-menuitem-icon",this.getItemProp(e,"icon")]},getSeparatorItemClass(e){return["p-menuitem-separator",this.getItemProp(e,"class")]}},components:{AngleRightIcon:c.default},directives:{ripple:u.default}};const I=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset"],p=["onClick","onMouseenter"],f=["href","onClick"],b=["href","target"],v=["id"];h.render=function(e,t,i,s,n,o){const a=r.resolveComponent("router-link"),l=r.resolveComponent("AngleRightIcon"),d=r.resolveComponent("TieredMenuSub",!0),m=r.resolveDirective("ripple");return r.openBlock(),r.createElementBlock("ul",r.normalizeProps(r.guardReactiveProps(e.ptm("menu"))),[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.items,((s,n)=>(r.openBlock(),r.createElementBlock(r.Fragment,{key:o.getItemKey(s)},[o.isItemVisible(s)&&!o.getItemProp(s,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:0,id:o.getItemId(s),style:o.getItemProp(s,"style"),class:o.getItemClass(s),role:"menuitem","aria-label":o.getItemLabel(s),"aria-disabled":o.isItemDisabled(s)||void 0,"aria-expanded":o.isItemGroup(s)?o.isItemActive(s):void 0,"aria-haspopup":o.isItemGroup(s)&&!o.getItemProp(s,"to")?"menu":void 0,"aria-level":i.level+1,"aria-setsize":o.getAriaSetSize(),"aria-posinset":o.getAriaPosInset(n)},o.getPTOptions(s,"menuitem")),[r.createElementVNode("div",r.mergeProps({class:"p-menuitem-content",onClick:e=>o.onItemClick(e,s),onMouseenter:e=>o.onItemMouseEnter(e,s)},o.getPTOptions(s,"content")),[i.templates.item?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.item),{key:1,item:s.item},null,8,["item"])):(r.openBlock(),r.createElementBlock(r.Fragment,{key:0},[o.getItemProp(s,"to")&&!o.isItemDisabled(s)?(r.openBlock(),r.createBlock(a,{key:0,to:o.getItemProp(s,"to"),custom:""},{default:r.withCtx((({navigate:e,href:t,isActive:n,isExactActive:a})=>[r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({href:t,class:o.getItemActionClass(s,{isActive:n,isExactActive:a}),tabindex:"-1","aria-hidden":"true",onClick:t=>o.onItemActionClick(t,e)},o.getPTOptions(s,"action")),[i.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.itemicon),{key:0,item:s.item,class:r.normalizeClass(o.getItemIconClass(s))},null,8,["item","class"])):o.getItemProp(s,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:o.getItemIconClass(s)},o.getPTOptions(s,"icon")),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({class:"p-menuitem-text"},o.getPTOptions(s,"label")),r.toDisplayString(o.getItemLabel(s)),17)],16,f)),[[m]])])),_:2},1032,["to"])):r.withDirectives((r.openBlock(),r.createElementBlock("a",r.mergeProps({key:1,href:o.getItemProp(s,"url"),class:o.getItemActionClass(s),target:o.getItemProp(s,"target"),tabindex:"-1","aria-hidden":"true"},o.getPTOptions(s,"action")),[i.templates.itemicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.itemicon),{key:0,item:s.item,class:r.normalizeClass(o.getItemIconClass(s))},null,8,["item","class"])):o.getItemProp(s,"icon")?(r.openBlock(),r.createElementBlock("span",r.mergeProps({key:1,class:o.getItemIconClass(s)},o.getPTOptions(s,"icon")),null,16)):r.createCommentVNode("",!0),r.createElementVNode("span",r.mergeProps({class:"p-menuitem-text"},o.getPTOptions(s,"label")),r.toDisplayString(o.getItemLabel(s)),17),o.getItemProp(s,"items")?(r.openBlock(),r.createElementBlock(r.Fragment,{key:2},[i.templates.submenuicon?(r.openBlock(),r.createBlock(r.resolveDynamicComponent(i.templates.submenuicon),r.mergeProps({key:0,class:"p-submenu-icon",active:o.isItemActive(s)},o.getPTOptions(s,"submenuIcon")),null,16,["active"])):(r.openBlock(),r.createBlock(l,r.mergeProps({key:1,class:"p-submenu-icon"},o.getPTOptions(s,"submenuIcon")),null,16))],64)):r.createCommentVNode("",!0)],16,b)),[[m]])],64))],16,p),o.isItemVisible(s)&&o.isItemGroup(s)?(r.openBlock(),r.createBlock(d,{key:0,id:o.getItemId(s)+"_list",role:"menu",class:"p-submenu-list",menuId:i.menuId,focusedItemId:i.focusedItemId,items:s.items,templates:i.templates,activeItemPath:i.activeItemPath,exact:i.exact,level:i.level+1,pt:e.pt,onItemClick:t[0]||(t[0]=t=>e.$emit("item-click",t)),onItemMouseenter:t[1]||(t[1]=t=>e.$emit("item-mouseenter",t))},null,8,["id","menuId","focusedItemId","items","templates","activeItemPath","exact","level","pt"])):r.createCommentVNode("",!0)],16,I)):r.createCommentVNode("",!0),o.isItemVisible(s)&&o.getItemProp(s,"separator")?(r.openBlock(),r.createElementBlock("li",r.mergeProps({key:1,id:o.getItemId(s),style:o.getItemProp(s,"style"),class:o.getSeparatorItemClass(s),role:"separator"},e.ptm("separator")),null,16,v)):r.createCommentVNode("",!0)],64)))),128))],16)};var g={name:"TieredMenu",extends:l.default,inheritAttrs:!1,emits:["focus","blur","before-show","before-hide","hide","show"],props:{popup:{type:Boolean,default:!1},model:{type:Array,default:null},appendTo:{type:String,default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},exact:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},tabindex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},outsideClickListener:null,scrollHandler:null,resizeListener:null,target:null,container:null,menubar:null,searchTimeout:null,searchValue:null,data(){return{id:this.$attrs.id,focused:!1,focusedItemInfo:{index:-1,level:0,parentKey:""},activeItemPath:[],visible:!this.popup,dirty:!1}},watch:{"$attrs.id":function(e){this.id=e||s.UniqueComponentId()},activeItemPath(e){this.popup||(s.ObjectUtils.isNotEmpty(e)?(this.bindOutsideClickListener(),this.bindResizeListener()):(this.unbindOutsideClickListener(),this.unbindResizeListener()))}},mounted(){this.id=this.id||s.UniqueComponentId()},beforeUnmount(){this.unbindOutsideClickListener(),this.unbindResizeListener(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null),this.container&&this.autoZIndex&&s.ZIndexUtils.clear(this.container),this.target=null,this.container=null},methods:{getItemProp:(e,t)=>e?s.ObjectUtils.getItemValue(e[t]):void 0,getItemLabel(e){return this.getItemProp(e,"label")},isItemDisabled(e){return this.getItemProp(e,"disabled")},isItemGroup(e){return s.ObjectUtils.isNotEmpty(this.getItemProp(e,"items"))},isItemSeparator(e){return this.getItemProp(e,"separator")},getProccessedItemLabel(e){return e?this.getItemLabel(e.item):void 0},isProccessedItemGroup:e=>e&&s.ObjectUtils.isNotEmpty(e.items),toggle(e){this.visible?this.hide(e,!0):this.show(e)},show(e,t){this.popup&&(this.$emit("before-show"),this.visible=!0,this.target=this.target||e.currentTarget,this.relatedTarget=e.relatedTarget||null),this.focusedItemInfo={index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},t&&s.DomHandler.focus(this.menubar)},hide(e,t){this.popup&&(this.$emit("before-hide"),this.visible=!1),this.activeItemPath=[],this.focusedItemInfo={index:-1,level:0,parentKey:""},t&&s.DomHandler.focus(this.relatedTarget||this.target||this.menubar),this.dirty=!1},onFocus(e){this.focused=!0,this.focusedItemInfo=-1!==this.focusedItemInfo.index?this.focusedItemInfo:{index:this.findFirstFocusedItemIndex(),level:0,parentKey:""},this.$emit("focus",e)},onBlur(e){this.focused=!1,this.focusedItemInfo={index:-1,level:0,parentKey:""},this.searchValue="",this.dirty=!1,this.$emit("blur",e)},onKeyDown(e){if(this.disabled)return void e.preventDefault();const t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":this.onEnterKey(e);break;case"Escape":this.onEscapeKey(e);break;case"Tab":this.onTabKey(e);break;case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&s.ObjectUtils.isPrintableCharacter(e.key)&&this.searchItems(e,e.key)}},onItemChange(e){const{processedItem:t,isFocus:i}=e;if(s.ObjectUtils.isEmpty(t))return;const{index:n,key:o,level:r,parentKey:a,items:l}=t,d=s.ObjectUtils.isNotEmpty(l),m=this.activeItemPath.filter((e=>e.parentKey!==a&&e.parentKey!==o));d&&m.push(t),this.focusedItemInfo={index:n,level:r,parentKey:a},this.activeItemPath=m,d&&(this.dirty=!0),i&&s.DomHandler.focus(this.menubar)},onOverlayClick(e){d.default.emit("overlay-click",{originalEvent:e,target:this.target})},onItemClick(e){const{originalEvent:t,processedItem:i}=e,n=this.isProccessedItemGroup(i),o=s.ObjectUtils.isEmpty(i.parent);if(this.isSelected(i)){const{index:e,key:t,level:n,parentKey:r}=i;this.activeItemPath=this.activeItemPath.filter((e=>t!==e.key&&t.startsWith(e.key))),this.focusedItemInfo={index:e,level:n,parentKey:r},this.dirty=!o,s.DomHandler.focus(this.menubar)}else if(n)this.onItemChange(e);else{const e=o?i:this.activeItemPath.find((e=>""===e.parentKey));this.hide(t),this.changeFocusedItemIndex(t,e?e.index:-1),s.DomHandler.focus(this.menubar)}},onItemMouseEnter(e){this.dirty&&this.onItemChange(e)},onArrowDownKey(e){const t=-1!==this.focusedItemInfo.index?this.findNextItemIndex(this.focusedItemInfo.index):this.findFirstFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()},onArrowUpKey(e){if(e.altKey){if(-1!==this.focusedItemInfo.index){const t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.popup&&this.hide(e,!0),e.preventDefault()}else{const t=-1!==this.focusedItemInfo.index?this.findPrevItemIndex(this.focusedItemInfo.index):this.findLastFocusedItemIndex();this.changeFocusedItemIndex(e,t),e.preventDefault()}},onArrowLeftKey(e){const t=this.visibleItems[this.focusedItemInfo.index],i=this.activeItemPath.find((e=>e.key===t.parentKey));s.ObjectUtils.isEmpty(t.parent)||(this.focusedItemInfo={index:-1,parentKey:i?i.parentKey:""},this.searchValue="",this.onArrowDownKey(e)),this.activeItemPath=this.activeItemPath.filter((e=>e.parentKey!==this.focusedItemInfo.parentKey)),e.preventDefault()},onArrowRightKey(e){const t=this.visibleItems[this.focusedItemInfo.index];this.isProccessedItemGroup(t)&&(this.onItemChange({originalEvent:e,processedItem:t}),this.focusedItemInfo={index:-1,parentKey:t.key},this.searchValue="",this.onArrowDownKey(e)),e.preventDefault()},onHomeKey(e){this.changeFocusedItemIndex(e,this.findFirstItemIndex()),e.preventDefault()},onEndKey(e){this.changeFocusedItemIndex(e,this.findLastItemIndex()),e.preventDefault()},onEnterKey(e){if(-1!==this.focusedItemInfo.index){const e=s.DomHandler.findSingle(this.menubar,`li[id="${this.focusedItemId}"]`),t=e&&s.DomHandler.findSingle(e,".p-menuitem-link");if(t?t.click():e&&e.click(),!this.popup){const e=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(e)&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex())}}e.preventDefault()},onSpaceKey(e){this.onEnterKey(e)},onEscapeKey(e){this.hide(e,!0),!this.popup&&(this.focusedItemInfo.index=this.findFirstFocusedItemIndex()),e.preventDefault()},onTabKey(e){if(-1!==this.focusedItemInfo.index){const t=this.visibleItems[this.focusedItemInfo.index];!this.isProccessedItemGroup(t)&&this.onItemChange({originalEvent:e,processedItem:t})}this.hide()},onEnter(e){this.autoZIndex&&s.ZIndexUtils.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu),this.alignOverlay(),s.DomHandler.focus(this.menubar),this.scrollInView()},onAfterEnter(){this.bindOutsideClickListener(),this.bindScrollListener(),this.bindResizeListener(),this.$emit("show")},onLeave(){this.unbindOutsideClickListener(),this.unbindScrollListener(),this.unbindResizeListener(),this.$emit("hide"),this.container=null,this.dirty=!1},onAfterLeave(e){this.autoZIndex&&s.ZIndexUtils.clear(e)},alignOverlay(){this.container.style.minWidth=s.DomHandler.getOuterWidth(this.target)+"px",s.DomHandler.absolutePosition(this.container,this.target)},bindOutsideClickListener(){this.outsideClickListener||(this.outsideClickListener=e=>{const t=this.container&&!this.container.contains(e.target),i=!this.popup||!(this.target&&(this.target===e.target||this.target.contains(e.target)));t&&i&&this.hide()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindScrollListener(){this.scrollHandler||(this.scrollHandler=new s.ConnectedOverlayScrollHandler(this.target,(e=>{this.hide(e,!0)}))),this.scrollHandler.bindScrollListener()},unbindScrollListener(){this.scrollHandler&&this.scrollHandler.unbindScrollListener()},bindResizeListener(){this.resizeListener||(this.resizeListener=e=>{s.DomHandler.isTouchDevice()||this.hide(e,!0)},window.addEventListener("resize",this.resizeListener))},unbindResizeListener(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},isItemMatched(e){return this.isValidItem(e)&&this.getProccessedItemLabel(e).toLocaleLowerCase().startsWith(this.searchValue.toLocaleLowerCase())},isValidItem(e){return!!e&&!this.isItemDisabled(e.item)&&!this.isItemSeparator(e.item)},isValidSelectedItem(e){return this.isValidItem(e)&&this.isSelected(e)},isSelected(e){return this.activeItemPath.some((t=>t.key===e.key))},findFirstItemIndex(){return this.visibleItems.findIndex((e=>this.isValidItem(e)))},findLastItemIndex(){return s.ObjectUtils.findLastIndex(this.visibleItems,(e=>this.isValidItem(e)))},findNextItemIndex(e){const t=e<this.visibleItems.length-1?this.visibleItems.slice(e+1).findIndex((e=>this.isValidItem(e))):-1;return t>-1?t+e+1:e},findPrevItemIndex(e){const t=e>0?s.ObjectUtils.findLastIndex(this.visibleItems.slice(0,e),(e=>this.isValidItem(e))):-1;return t>-1?t:e},findSelectedItemIndex(){return this.visibleItems.findIndex((e=>this.isValidSelectedItem(e)))},findFirstFocusedItemIndex(){const e=this.findSelectedItemIndex();return e<0?this.findFirstItemIndex():e},findLastFocusedItemIndex(){const e=this.findSelectedItemIndex();return e<0?this.findLastItemIndex():e},searchItems(e,t){this.searchValue=(this.searchValue||"")+t;let i=-1,s=!1;return-1!==this.focusedItemInfo.index?(i=this.visibleItems.slice(this.focusedItemInfo.index).findIndex((e=>this.isItemMatched(e))),i=-1===i?this.visibleItems.slice(0,this.focusedItemInfo.index).findIndex((e=>this.isItemMatched(e))):i+this.focusedItemInfo.index):i=this.visibleItems.findIndex((e=>this.isItemMatched(e))),-1!==i&&(s=!0),-1===i&&-1===this.focusedItemInfo.index&&(i=this.findFirstFocusedItemIndex()),-1!==i&&this.changeFocusedItemIndex(e,i),this.searchTimeout&&clearTimeout(this.searchTimeout),this.searchTimeout=setTimeout((()=>{this.searchValue="",this.searchTimeout=null}),500),s},changeFocusedItemIndex(e,t){this.focusedItemInfo.index!==t&&(this.focusedItemInfo.index=t,this.scrollInView())},scrollInView(e=-1){const t=-1!==e?`${this.id}_${e}`:this.focusedItemId,i=s.DomHandler.findSingle(this.menubar,`li[id="${t}"]`);i&&i.scrollIntoView&&i.scrollIntoView({block:"nearest",inline:"start"})},createProcessedItems(e,t=0,i={},s=""){const n=[];return e&&e.forEach(((e,o)=>{const r=(""!==s?s+"_":"")+o,a={item:e,index:o,level:t,key:r,parent:i,parentKey:s};a.items=this.createProcessedItems(e.items,t+1,a,r),n.push(a)})),n},containerRef(e){this.container=e},menubarRef(e){this.menubar=e?e.$el:void 0}},computed:{containerClass(){return["p-tieredmenu p-component",{"p-tieredmenu-overlay":this.popup,"p-input-filled":"filled"===this.$primevue.config.inputStyle,"p-ripple-disabled":!1===this.$primevue.config.ripple}]},processedItems(){return this.createProcessedItems(this.model||[])},visibleItems(){const e=this.activeItemPath.find((e=>e.key===this.focusedItemInfo.parentKey));return e?e.items:this.processedItems},focusedItemId(){return-1!==this.focusedItemInfo.index?`${this.id}${s.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey)?"_"+this.focusedItemInfo.parentKey:""}_${this.focusedItemInfo.index}`:null}},components:{TieredMenuSub:h,Portal:m.default}};const y=["id"];return function(e,t){void 0===t&&(t={});var i=t.insertAt;if(e&&"undefined"!=typeof document){var s=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===i&&s.firstChild?s.insertBefore(n,s.firstChild):s.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\n.p-tieredmenu-overlay {\n position: absolute;\n top: 0;\n left: 0;\n}\n.p-tieredmenu ul {\n margin: 0;\n padding: 0;\n list-style: none;\n}\n.p-tieredmenu .p-submenu-list {\n position: absolute;\n min-width: 100%;\n z-index: 1;\n display: none;\n}\n.p-tieredmenu .p-menuitem-link {\n cursor: pointer;\n display: flex;\n align-items: center;\n text-decoration: none;\n overflow: hidden;\n position: relative;\n}\n.p-tieredmenu .p-menuitem-text {\n line-height: 1;\n}\n.p-tieredmenu .p-menuitem {\n position: relative;\n}\n.p-tieredmenu .p-menuitem-link .p-submenu-icon {\n margin-left: auto;\n}\n.p-tieredmenu .p-menuitem-active > .p-submenu-list {\n display: block;\n left: 100%;\n top: 0;\n}\n"),g.render=function(e,t,i,s,n,o){const a=r.resolveComponent("TieredMenuSub"),l=r.resolveComponent("Portal");return r.openBlock(),r.createBlock(l,{appendTo:i.appendTo,disabled:!i.popup},{default:r.withCtx((()=>[r.createVNode(r.Transition,{name:"p-connected-overlay",onEnter:o.onEnter,onAfterEnter:o.onAfterEnter,onLeave:o.onLeave,onAfterLeave:o.onAfterLeave},{default:r.withCtx((()=>[n.visible?(r.openBlock(),r.createElementBlock("div",r.mergeProps({key:0,ref:o.containerRef,id:n.id,class:o.containerClass,onClick:t[0]||(t[0]=(...e)=>o.onOverlayClick&&o.onOverlayClick(...e))},{...e.$attrs,...e.ptm("root")}),[r.createVNode(a,{ref:o.menubarRef,id:n.id+"_list",class:"p-tieredmenu-root-list",tabindex:i.disabled?-1:i.tabindex,role:"menubar","aria-label":e.ariaLabel,"aria-labelledby":e.ariaLabelledby,"aria-disabled":i.disabled||void 0,"aria-orientation":"vertical","aria-activedescendant":n.focused?o.focusedItemId:void 0,menuId:n.id,focusedItemId:n.focused?o.focusedItemId:void 0,items:o.processedItems,templates:e.$slots,activeItemPath:n.activeItemPath,exact:i.exact,level:0,pt:e.pt,onFocus:o.onFocus,onBlur:o.onBlur,onKeydown:o.onKeyDown,onItemClick:o.onItemClick,onItemMouseenter:o.onItemMouseEnter},null,8,["id","tabindex","aria-label","aria-labelledby","aria-disabled","aria-activedescendant","menuId","focusedItemId","items","templates","activeItemPath","exact","pt","onFocus","onBlur","onKeydown","onItemClick","onItemMouseenter"])],16,y)):r.createCommentVNode("",!0)])),_:1},8,["onEnter","onAfterEnter","onLeave","onAfterLeave"])])),_:1},8,["appendTo","disabled"])},g}(primevue.basecomponent,primevue.overlayeventbus,primevue.portal,primevue.utils,primevue.icons.angleright,primevue.ripple,Vue);
|
package/toast/Toast.d.ts
CHANGED
|
@@ -10,6 +10,70 @@
|
|
|
10
10
|
import { ButtonHTMLAttributes, VNode } from 'vue';
|
|
11
11
|
import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
|
|
12
12
|
|
|
13
|
+
export declare type ToastPassThroughOptionType = ToastPassThroughAttributes | ((options: ToastPassThroughMethodOptions) => ToastPassThroughAttributes) | null | undefined;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Custom passthrough(pt) option method.
|
|
17
|
+
*/
|
|
18
|
+
export interface ToastPassThroughMethodOptions {
|
|
19
|
+
props: ToastProps;
|
|
20
|
+
state: ToastState;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Custom passthrough(pt) options.
|
|
25
|
+
* @see {@link ToastProps.pt}
|
|
26
|
+
*/
|
|
27
|
+
export interface ToastPassThroughOptions {
|
|
28
|
+
/**
|
|
29
|
+
* Uses to pass attributes to the root's DOM element.
|
|
30
|
+
*/
|
|
31
|
+
root?: ToastPassThroughOptionType;
|
|
32
|
+
/**
|
|
33
|
+
* Uses to pass attributes to the container's DOM element.
|
|
34
|
+
*/
|
|
35
|
+
container?: ToastPassThroughOptionType;
|
|
36
|
+
/**
|
|
37
|
+
* Uses to pass attributes to the content's DOM element.
|
|
38
|
+
*/
|
|
39
|
+
content?: ToastPassThroughOptionType;
|
|
40
|
+
/**
|
|
41
|
+
* Uses to pass attributes to the icon's DOM element.
|
|
42
|
+
*/
|
|
43
|
+
icon?: ToastPassThroughOptionType;
|
|
44
|
+
/**
|
|
45
|
+
* Uses to pass attributes to the text's DOM element.
|
|
46
|
+
*/
|
|
47
|
+
text?: ToastPassThroughOptionType;
|
|
48
|
+
/**
|
|
49
|
+
* Uses to pass attributes to the summary's DOM element.
|
|
50
|
+
*/
|
|
51
|
+
summary?: ToastPassThroughOptionType;
|
|
52
|
+
/**
|
|
53
|
+
* Uses to pass attributes to the detail's DOM element.
|
|
54
|
+
*/
|
|
55
|
+
detail?: ToastPassThroughOptionType;
|
|
56
|
+
/**
|
|
57
|
+
* Uses to pass attributes to the button container's DOM element.
|
|
58
|
+
*/
|
|
59
|
+
buttonContainer?: ToastPassThroughOptionType;
|
|
60
|
+
/**
|
|
61
|
+
* Uses to pass attributes to the button's DOM element.
|
|
62
|
+
*/
|
|
63
|
+
button?: ToastPassThroughOptionType;
|
|
64
|
+
/**
|
|
65
|
+
* Uses to pass attributes to the button icon's DOM element.
|
|
66
|
+
*/
|
|
67
|
+
buttonIcon?: ToastPassThroughOptionType;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Custom passthrough attributes for each DOM elements
|
|
72
|
+
*/
|
|
73
|
+
export interface ToastPassThroughAttributes {
|
|
74
|
+
[key: string]: any;
|
|
75
|
+
}
|
|
76
|
+
|
|
13
77
|
/**
|
|
14
78
|
* Defines message options in Toast component.
|
|
15
79
|
*/
|
|
@@ -65,6 +129,16 @@ export interface ToastBreakpointsType {
|
|
|
65
129
|
[key: string]: any;
|
|
66
130
|
}
|
|
67
131
|
|
|
132
|
+
/**
|
|
133
|
+
* Defines current inline state in Toast component.
|
|
134
|
+
*/
|
|
135
|
+
export interface ToastState {
|
|
136
|
+
/**
|
|
137
|
+
* Current messages.
|
|
138
|
+
*/
|
|
139
|
+
messages: any[];
|
|
140
|
+
}
|
|
141
|
+
|
|
68
142
|
/**
|
|
69
143
|
* Defines valid properties in Toast component.
|
|
70
144
|
*/
|
|
@@ -123,6 +197,11 @@ export interface ToastProps {
|
|
|
123
197
|
* @deprecated since v3.26.0. Use 'pt' property.
|
|
124
198
|
*/
|
|
125
199
|
closeButtonProps?: ButtonHTMLAttributes | undefined;
|
|
200
|
+
/**
|
|
201
|
+
* Uses to pass attributes to DOM elements inside the component.
|
|
202
|
+
* @type {ToastPassThroughOptions}
|
|
203
|
+
*/
|
|
204
|
+
pt?: ToastPassThroughOptions;
|
|
126
205
|
}
|
|
127
206
|
|
|
128
207
|
/**
|
package/toast/Toast.vue
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<Portal>
|
|
3
|
-
<div ref="container" :class="containerClass" v-bind="
|
|
3
|
+
<div ref="container" :class="containerClass" v-bind="{ ...$attrs, ...ptm('root') }">
|
|
4
4
|
<transition-group name="p-toast-message" tag="div" @enter="onEnter" @leave="onLeave">
|
|
5
5
|
<ToastMessage
|
|
6
6
|
v-for="msg of messages"
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
:successIcon="successIcon"
|
|
15
15
|
:closeButtonProps="closeButtonProps"
|
|
16
16
|
@close="remove($event)"
|
|
17
|
+
:pt="pt"
|
|
17
18
|
/>
|
|
18
19
|
</transition-group>
|
|
19
20
|
</div>
|
|
@@ -21,6 +22,7 @@
|
|
|
21
22
|
</template>
|
|
22
23
|
|
|
23
24
|
<script>
|
|
25
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
24
26
|
import Portal from 'primevue/portal';
|
|
25
27
|
import ToastEventBus from 'primevue/toasteventbus';
|
|
26
28
|
import { ObjectUtils, UniqueComponentId, ZIndexUtils } from 'primevue/utils';
|
|
@@ -30,6 +32,7 @@ var messageIdx = 0;
|
|
|
30
32
|
|
|
31
33
|
export default {
|
|
32
34
|
name: 'Toast',
|
|
35
|
+
extends: BaseComponent,
|
|
33
36
|
inheritAttrs: false,
|
|
34
37
|
emits: ['close', 'life-end'],
|
|
35
38
|
props: {
|
package/toast/ToastMessage.vue
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div :class="containerClass" role="alert" aria-live="assertive" aria-atomic="true">
|
|
3
|
-
<div class="p-toast-message-content" :class="message.contentStyleClass">
|
|
2
|
+
<div :class="containerClass" role="alert" aria-live="assertive" aria-atomic="true" v-bind="ptm('container')">
|
|
3
|
+
<div class="p-toast-message-content" :class="message.contentStyleClass" v-bind="ptm('content')">
|
|
4
4
|
<template v-if="!templates.message">
|
|
5
|
-
<component :is="templates.icon ? templates.icon : iconComponent.name ? iconComponent : 'span'" :class="iconClass" class="p-toast-message-icon" />
|
|
6
|
-
<div class="p-toast-message-text">
|
|
7
|
-
<span class="p-toast-summary">{{ message.summary }}</span>
|
|
8
|
-
<div class="p-toast-detail">{{ message.detail }}</div>
|
|
5
|
+
<component :is="templates.icon ? templates.icon : iconComponent.name ? iconComponent : 'span'" :class="iconClass" class="p-toast-message-icon" v-bind="ptm('icon')" />
|
|
6
|
+
<div class="p-toast-message-text" v-bind="ptm('text')">
|
|
7
|
+
<span class="p-toast-summary" v-bind="ptm('summary')">{{ message.summary }}</span>
|
|
8
|
+
<div class="p-toast-detail" v-bind="ptm('detail')">{{ message.detail }}</div>
|
|
9
9
|
</div>
|
|
10
10
|
</template>
|
|
11
|
-
<component v-else :is="templates.message" :message="message"></component>
|
|
12
|
-
<div v-if="message.closable !== false">
|
|
13
|
-
<button v-ripple class="p-toast-icon-close p-link" type="button" :aria-label="closeAriaLabel" @click="onCloseClick" autofocus v-bind="closeButtonProps">
|
|
14
|
-
<component :is="templates.closeicon || 'TimesIcon'" :class="['p-toast-icon-close-icon', closeIcon]" />
|
|
11
|
+
<component v-else :is="templates.message" :message="message"></component>
|
|
12
|
+
<div v-if="message.closable !== false" v-bind="ptm('buttonContainer')">
|
|
13
|
+
<button v-ripple class="p-toast-icon-close p-link" type="button" :aria-label="closeAriaLabel" @click="onCloseClick" autofocus v-bind="{ ...closeButtonProps, ...ptm('button') }">
|
|
14
|
+
<component :is="templates.closeicon || 'TimesIcon'" :class="['p-toast-icon-close-icon', closeIcon]" v-bind="ptm('buttonIcon')" />
|
|
15
15
|
</button>
|
|
16
16
|
</div>
|
|
17
17
|
</div>
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
</template>
|
|
20
20
|
|
|
21
21
|
<script>
|
|
22
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
22
23
|
import CheckIcon from 'primevue/icons/check';
|
|
23
24
|
import ExclamationTriangleIcon from 'primevue/icons/exclamationtriangle';
|
|
24
25
|
import InfoCircleIcon from 'primevue/icons/infocircle';
|
|
@@ -28,6 +29,7 @@ import Ripple from 'primevue/ripple';
|
|
|
28
29
|
|
|
29
30
|
export default {
|
|
30
31
|
name: 'ToastMessage',
|
|
32
|
+
extends: BaseComponent,
|
|
31
33
|
emits: ['close'],
|
|
32
34
|
props: {
|
|
33
35
|
message: {
|
package/toast/toast.cjs.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var BaseComponent = require('primevue/basecomponent');
|
|
3
4
|
var Portal = require('primevue/portal');
|
|
4
5
|
var ToastEventBus = require('primevue/toasteventbus');
|
|
5
6
|
var utils = require('primevue/utils');
|
|
@@ -13,6 +14,7 @@ var vue = require('vue');
|
|
|
13
14
|
|
|
14
15
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
15
16
|
|
|
17
|
+
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
16
18
|
var Portal__default = /*#__PURE__*/_interopDefaultLegacy(Portal);
|
|
17
19
|
var ToastEventBus__default = /*#__PURE__*/_interopDefaultLegacy(ToastEventBus);
|
|
18
20
|
var CheckIcon__default = /*#__PURE__*/_interopDefaultLegacy(CheckIcon);
|
|
@@ -24,6 +26,7 @@ var Ripple__default = /*#__PURE__*/_interopDefaultLegacy(Ripple);
|
|
|
24
26
|
|
|
25
27
|
var script$1 = {
|
|
26
28
|
name: 'ToastMessage',
|
|
29
|
+
extends: BaseComponent__default["default"],
|
|
27
30
|
emits: ['close'],
|
|
28
31
|
props: {
|
|
29
32
|
message: {
|
|
@@ -132,58 +135,53 @@ var script$1 = {
|
|
|
132
135
|
}
|
|
133
136
|
};
|
|
134
137
|
|
|
135
|
-
const _hoisted_1 =
|
|
136
|
-
const _hoisted_2 = { class: "p-toast-summary" };
|
|
137
|
-
const _hoisted_3 = { class: "p-toast-detail" };
|
|
138
|
-
const _hoisted_4 = { key: 2 };
|
|
139
|
-
const _hoisted_5 = ["aria-label"];
|
|
138
|
+
const _hoisted_1 = ["aria-label"];
|
|
140
139
|
|
|
141
140
|
function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
142
141
|
const _directive_ripple = vue.resolveDirective("ripple");
|
|
143
142
|
|
|
144
|
-
return (vue.openBlock(), vue.createElementBlock("div", {
|
|
145
|
-
class:
|
|
143
|
+
return (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
|
|
144
|
+
class: $options.containerClass,
|
|
146
145
|
role: "alert",
|
|
147
146
|
"aria-live": "assertive",
|
|
148
147
|
"aria-atomic": "true"
|
|
149
|
-
}, [
|
|
150
|
-
vue.createElementVNode("div", {
|
|
151
|
-
class:
|
|
152
|
-
}, [
|
|
148
|
+
}, _ctx.ptm('container')), [
|
|
149
|
+
vue.createElementVNode("div", vue.mergeProps({
|
|
150
|
+
class: ["p-toast-message-content", $props.message.contentStyleClass]
|
|
151
|
+
}, _ctx.ptm('content')), [
|
|
153
152
|
(!$props.templates.message)
|
|
154
153
|
? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
|
|
155
|
-
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.icon ? $props.templates.icon : $options.iconComponent.name ? $options.iconComponent : 'span'), {
|
|
156
|
-
class:
|
|
157
|
-
}, null,
|
|
158
|
-
vue.createElementVNode("div",
|
|
159
|
-
vue.createElementVNode("span",
|
|
160
|
-
vue.createElementVNode("div",
|
|
161
|
-
])
|
|
154
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.icon ? $props.templates.icon : $options.iconComponent.name ? $options.iconComponent : 'span'), vue.mergeProps({
|
|
155
|
+
class: [$options.iconClass, "p-toast-message-icon"]
|
|
156
|
+
}, _ctx.ptm('icon')), null, 16, ["class"])),
|
|
157
|
+
vue.createElementVNode("div", vue.mergeProps({ class: "p-toast-message-text" }, _ctx.ptm('text')), [
|
|
158
|
+
vue.createElementVNode("span", vue.mergeProps({ class: "p-toast-summary" }, _ctx.ptm('summary')), vue.toDisplayString($props.message.summary), 17),
|
|
159
|
+
vue.createElementVNode("div", vue.mergeProps({ class: "p-toast-detail" }, _ctx.ptm('detail')), vue.toDisplayString($props.message.detail), 17)
|
|
160
|
+
], 16)
|
|
162
161
|
], 64))
|
|
163
162
|
: (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.message), {
|
|
164
163
|
key: 1,
|
|
165
164
|
message: $props.message
|
|
166
165
|
}, null, 8, ["message"])),
|
|
167
|
-
vue.createTextVNode(vue.toDisplayString($props.message.closable) + " ", 1),
|
|
168
166
|
($props.message.closable !== false)
|
|
169
|
-
? (vue.openBlock(), vue.createElementBlock("div",
|
|
167
|
+
? (vue.openBlock(), vue.createElementBlock("div", vue.normalizeProps(vue.mergeProps({ key: 2 }, _ctx.ptm('buttonContainer'))), [
|
|
170
168
|
vue.withDirectives((vue.openBlock(), vue.createElementBlock("button", vue.mergeProps({
|
|
171
169
|
class: "p-toast-icon-close p-link",
|
|
172
170
|
type: "button",
|
|
173
171
|
"aria-label": $options.closeAriaLabel,
|
|
174
172
|
onClick: _cache[0] || (_cache[0] = (...args) => ($options.onCloseClick && $options.onCloseClick(...args))),
|
|
175
173
|
autofocus: ""
|
|
176
|
-
},
|
|
177
|
-
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.closeicon || 'TimesIcon'), {
|
|
178
|
-
class:
|
|
179
|
-
}, null,
|
|
180
|
-
], 16,
|
|
174
|
+
}, { ...$props.closeButtonProps, ..._ctx.ptm('button') }), [
|
|
175
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.closeicon || 'TimesIcon'), vue.mergeProps({
|
|
176
|
+
class: ['p-toast-icon-close-icon', $props.closeIcon]
|
|
177
|
+
}, _ctx.ptm('buttonIcon')), null, 16, ["class"]))
|
|
178
|
+
], 16, _hoisted_1)), [
|
|
181
179
|
[_directive_ripple]
|
|
182
180
|
])
|
|
183
|
-
]))
|
|
181
|
+
], 16))
|
|
184
182
|
: vue.createCommentVNode("", true)
|
|
185
|
-
],
|
|
186
|
-
],
|
|
183
|
+
], 16)
|
|
184
|
+
], 16))
|
|
187
185
|
}
|
|
188
186
|
|
|
189
187
|
script$1.render = render$1;
|
|
@@ -192,6 +190,7 @@ var messageIdx = 0;
|
|
|
192
190
|
|
|
193
191
|
var script = {
|
|
194
192
|
name: 'Toast',
|
|
193
|
+
extends: BaseComponent__default["default"],
|
|
195
194
|
inheritAttrs: false,
|
|
196
195
|
emits: ['close', 'life-end'],
|
|
197
196
|
props: {
|
|
@@ -377,7 +376,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
377
376
|
vue.createElementVNode("div", vue.mergeProps({
|
|
378
377
|
ref: "container",
|
|
379
378
|
class: $options.containerClass
|
|
380
|
-
}, _ctx.$attrs), [
|
|
379
|
+
}, { ..._ctx.$attrs, ..._ctx.ptm('root') }), [
|
|
381
380
|
vue.createVNode(vue.TransitionGroup, {
|
|
382
381
|
name: "p-toast-message",
|
|
383
382
|
tag: "div",
|
|
@@ -396,8 +395,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
396
395
|
errorIcon: $props.errorIcon,
|
|
397
396
|
successIcon: $props.successIcon,
|
|
398
397
|
closeButtonProps: $props.closeButtonProps,
|
|
399
|
-
onClose: _cache[0] || (_cache[0] = $event => ($options.remove($event)))
|
|
400
|
-
|
|
398
|
+
onClose: _cache[0] || (_cache[0] = $event => ($options.remove($event))),
|
|
399
|
+
pt: _ctx.pt
|
|
400
|
+
}, null, 8, ["message", "templates", "closeIcon", "infoIcon", "warnIcon", "errorIcon", "successIcon", "closeButtonProps", "pt"]))
|
|
401
401
|
}), 128))
|
|
402
402
|
]),
|
|
403
403
|
_: 1
|
package/toast/toast.cjs.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("primevue/
|
|
1
|
+
"use strict";var e=require("primevue/basecomponent"),t=require("primevue/portal"),s=require("primevue/toasteventbus"),o=require("primevue/utils"),n=require("primevue/icons/check"),i=require("primevue/icons/exclamationtriangle"),a=require("primevue/icons/infocircle"),r=require("primevue/icons/times"),l=require("primevue/icons/timescircle"),c=require("primevue/ripple"),m=require("vue");function p(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var u=p(e),d=p(t),f=p(s),g=p(n),h=p(i),v=p(a),y=p(r),I=p(l),b=p(c),x={name:"ToastMessage",extends:u.default,emits:["close"],props:{message:{type:null,default:null},templates:{type:Object,default:null},closeIcon:{type:String,default:null},infoIcon:{type:String,default:null},warnIcon:{type:String,default:null},errorIcon:{type:String,default:null},successIcon:{type:String,default:null},closeButtonProps:{type:null,default:null}},closeTimeout:null,mounted(){this.message.life&&(this.closeTimeout=setTimeout((()=>{this.close({message:this.message,type:"life-end"})}),this.message.life))},beforeUnmount(){this.clearCloseTimeout()},methods:{close(e){this.$emit("close",e)},onCloseClick(){this.clearCloseTimeout(),this.close({message:this.message,type:"close"})},clearCloseTimeout(){this.closeTimeout&&(clearTimeout(this.closeTimeout),this.closeTimeout=null)}},computed:{containerClass(){return["p-toast-message",this.message.styleClass,{"p-toast-message-info":"info"===this.message.severity,"p-toast-message-warn":"warn"===this.message.severity,"p-toast-message-error":"error"===this.message.severity,"p-toast-message-success":"success"===this.message.severity}]},iconComponent(){return{info:!this.infoIcon&&v.default,success:!this.successIcon&&g.default,warn:!this.warnIcon&&h.default,error:!this.errorIcon&&I.default}[this.message.severity]},iconClass(){return[{[this.infoIcon]:"info"===this.message.severity,[this.warnIcon]:"warn"===this.message.severity,[this.errorIcon]:"error"===this.message.severity,[this.successIcon]:"success"===this.message.severity}]},closeAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.close:void 0}},components:{TimesIcon:y.default,InfoCircleIcon:v.default,CheckIcon:g.default,ExclamationTriangleIcon:h.default,TimesCircleIcon:I.default},directives:{ripple:b.default}};const k=["aria-label"];x.render=function(e,t,s,o,n,i){const a=m.resolveDirective("ripple");return m.openBlock(),m.createElementBlock("div",m.mergeProps({class:i.containerClass,role:"alert","aria-live":"assertive","aria-atomic":"true"},e.ptm("container")),[m.createElementVNode("div",m.mergeProps({class:["p-toast-message-content",s.message.contentStyleClass]},e.ptm("content")),[s.templates.message?(m.openBlock(),m.createBlock(m.resolveDynamicComponent(s.templates.message),{key:1,message:s.message},null,8,["message"])):(m.openBlock(),m.createElementBlock(m.Fragment,{key:0},[(m.openBlock(),m.createBlock(m.resolveDynamicComponent(s.templates.icon?s.templates.icon:i.iconComponent.name?i.iconComponent:"span"),m.mergeProps({class:[i.iconClass,"p-toast-message-icon"]},e.ptm("icon")),null,16,["class"])),m.createElementVNode("div",m.mergeProps({class:"p-toast-message-text"},e.ptm("text")),[m.createElementVNode("span",m.mergeProps({class:"p-toast-summary"},e.ptm("summary")),m.toDisplayString(s.message.summary),17),m.createElementVNode("div",m.mergeProps({class:"p-toast-detail"},e.ptm("detail")),m.toDisplayString(s.message.detail),17)],16)],64)),!1!==s.message.closable?(m.openBlock(),m.createElementBlock("div",m.normalizeProps(m.mergeProps({key:2},e.ptm("buttonContainer"))),[m.withDirectives((m.openBlock(),m.createElementBlock("button",m.mergeProps({class:"p-toast-icon-close p-link",type:"button","aria-label":i.closeAriaLabel,onClick:t[0]||(t[0]=(...e)=>i.onCloseClick&&i.onCloseClick(...e)),autofocus:""},{...s.closeButtonProps,...e.ptm("button")}),[(m.openBlock(),m.createBlock(m.resolveDynamicComponent(s.templates.closeicon||"TimesIcon"),m.mergeProps({class:["p-toast-icon-close-icon",s.closeIcon]},e.ptm("buttonIcon")),null,16,["class"]))],16,k)),[[a]])],16)):m.createCommentVNode("",!0)],16)],16)};var C=0,B={name:"Toast",extends:u.default,inheritAttrs:!1,emits:["close","life-end"],props:{group:{type:String,default:null},position:{type:String,default:"top-right"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},breakpoints:{type:Object,default:null},closeIcon:{type:String,default:void 0},infoIcon:{type:String,default:void 0},warnIcon:{type:String,default:void 0},errorIcon:{type:String,default:void 0},successIcon:{type:String,default:void 0},closeButtonProps:{type:null,default:null}},data:()=>({messages:[]}),styleElement:null,mounted(){f.default.on("add",this.onAdd),f.default.on("remove-group",this.onRemoveGroup),f.default.on("remove-all-groups",this.onRemoveAllGroups),this.breakpoints&&this.createStyle()},beforeUnmount(){this.destroyStyle(),this.$refs.container&&this.autoZIndex&&o.ZIndexUtils.clear(this.$refs.container),f.default.off("add",this.onAdd),f.default.off("remove-group",this.onRemoveGroup),f.default.off("remove-all-groups",this.onRemoveAllGroups)},methods:{add(e){null==e.id&&(e.id=C++),this.messages=[...this.messages,e]},remove(e){let t=-1;for(let s=0;s<this.messages.length;s++)if(this.messages[s]===e.message){t=s;break}this.messages.splice(t,1),this.$emit(e.type,{message:e.message})},onAdd(e){this.group==e.group&&this.add(e)},onRemoveGroup(e){this.group===e&&(this.messages=[])},onRemoveAllGroups(){this.messages=[]},onEnter(){this.$refs.container.setAttribute(this.attributeSelector,""),this.autoZIndex&&o.ZIndexUtils.set("modal",this.$refs.container,this.baseZIndex||this.$primevue.config.zIndex.modal)},onLeave(){this.$refs.container&&this.autoZIndex&&o.ObjectUtils.isEmpty(this.messages)&&setTimeout((()=>{o.ZIndexUtils.clear(this.$refs.container)}),200)},createStyle(){if(!this.styleElement){this.styleElement=document.createElement("style"),this.styleElement.type="text/css",document.head.appendChild(this.styleElement);let e="";for(let t in this.breakpoints){let s="";for(let e in this.breakpoints[t])s+=e+":"+this.breakpoints[t][e]+"!important;";e+=`\n @media screen and (max-width: ${t}) {\n .p-toast[${this.attributeSelector}] {\n ${s}\n }\n }\n `}this.styleElement.innerHTML=e}},destroyStyle(){this.styleElement&&(document.head.removeChild(this.styleElement),this.styleElement=null)}},computed:{containerClass(){return["p-toast p-component p-toast-"+this.position,{"p-input-filled":"filled"===this.$primevue.config.inputStyle,"p-ripple-disabled":!1===this.$primevue.config.ripple}]},attributeSelector:()=>o.UniqueComponentId()},components:{ToastMessage:x,Portal:d.default}};!function(e,t){void 0===t&&(t={});var s=t.insertAt;if(e&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===s&&o.firstChild?o.insertBefore(n,o.firstChild):o.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\n.p-toast {\n position: fixed;\n width: 25rem;\n}\n.p-toast-message-content {\n display: flex;\n align-items: flex-start;\n}\n.p-toast-message-text {\n flex: 1 1 auto;\n}\n.p-toast-top-right {\n top: 20px;\n right: 20px;\n}\n.p-toast-top-left {\n top: 20px;\n left: 20px;\n}\n.p-toast-bottom-left {\n bottom: 20px;\n left: 20px;\n}\n.p-toast-bottom-right {\n bottom: 20px;\n right: 20px;\n}\n.p-toast-top-center {\n top: 20px;\n left: 50%;\n transform: translateX(-50%);\n}\n.p-toast-bottom-center {\n bottom: 20px;\n left: 50%;\n transform: translateX(-50%);\n}\n.p-toast-center {\n left: 50%;\n top: 50%;\n min-width: 20vw;\n transform: translate(-50%, -50%);\n}\n.p-toast-icon-close {\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n position: relative;\n}\n.p-toast-icon-close.p-link {\n cursor: pointer;\n}\n\n/* Animations */\n.p-toast-message-enter-from {\n opacity: 0;\n -webkit-transform: translateY(50%);\n -ms-transform: translateY(50%);\n transform: translateY(50%);\n}\n.p-toast-message-leave-from {\n max-height: 1000px;\n}\n.p-toast .p-toast-message.p-toast-message-leave-to {\n max-height: 0;\n opacity: 0;\n margin-bottom: 0;\n overflow: hidden;\n}\n.p-toast-message-enter-active {\n -webkit-transition: transform 0.3s, opacity 0.3s;\n transition: transform 0.3s, opacity 0.3s;\n}\n.p-toast-message-leave-active {\n -webkit-transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n transition: max-height 0.45s cubic-bezier(0, 1, 0, 1), opacity 0.3s, margin-bottom 0.3s;\n}\n"),B.render=function(e,t,s,o,n,i){const a=m.resolveComponent("ToastMessage"),r=m.resolveComponent("Portal");return m.openBlock(),m.createBlock(r,null,{default:m.withCtx((()=>[m.createElementVNode("div",m.mergeProps({ref:"container",class:i.containerClass},{...e.$attrs,...e.ptm("root")}),[m.createVNode(m.TransitionGroup,{name:"p-toast-message",tag:"div",onEnter:i.onEnter,onLeave:i.onLeave},{default:m.withCtx((()=>[(m.openBlock(!0),m.createElementBlock(m.Fragment,null,m.renderList(n.messages,(o=>(m.openBlock(),m.createBlock(a,{key:o.id,message:o,templates:e.$slots,closeIcon:s.closeIcon,infoIcon:s.infoIcon,warnIcon:s.warnIcon,errorIcon:s.errorIcon,successIcon:s.successIcon,closeButtonProps:s.closeButtonProps,onClose:t[0]||(t[0]=e=>i.remove(e)),pt:e.pt},null,8,["message","templates","closeIcon","infoIcon","warnIcon","errorIcon","successIcon","closeButtonProps","pt"])))),128))])),_:1},8,["onEnter","onLeave"])],16)])),_:1})},module.exports=B;
|
package/toast/toast.esm.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
1
2
|
import Portal from 'primevue/portal';
|
|
2
3
|
import ToastEventBus from 'primevue/toasteventbus';
|
|
3
4
|
import { ZIndexUtils, ObjectUtils, UniqueComponentId } from 'primevue/utils';
|
|
@@ -7,10 +8,11 @@ import InfoCircleIcon from 'primevue/icons/infocircle';
|
|
|
7
8
|
import TimesIcon from 'primevue/icons/times';
|
|
8
9
|
import TimesCircleIcon from 'primevue/icons/timescircle';
|
|
9
10
|
import Ripple from 'primevue/ripple';
|
|
10
|
-
import { resolveDirective, openBlock, createElementBlock,
|
|
11
|
+
import { resolveDirective, openBlock, createElementBlock, mergeProps, createElementVNode, Fragment, createBlock, resolveDynamicComponent, toDisplayString, normalizeProps, withDirectives, createCommentVNode, resolveComponent, withCtx, createVNode, TransitionGroup, renderList } from 'vue';
|
|
11
12
|
|
|
12
13
|
var script$1 = {
|
|
13
14
|
name: 'ToastMessage',
|
|
15
|
+
extends: BaseComponent,
|
|
14
16
|
emits: ['close'],
|
|
15
17
|
props: {
|
|
16
18
|
message: {
|
|
@@ -119,58 +121,53 @@ var script$1 = {
|
|
|
119
121
|
}
|
|
120
122
|
};
|
|
121
123
|
|
|
122
|
-
const _hoisted_1 =
|
|
123
|
-
const _hoisted_2 = { class: "p-toast-summary" };
|
|
124
|
-
const _hoisted_3 = { class: "p-toast-detail" };
|
|
125
|
-
const _hoisted_4 = { key: 2 };
|
|
126
|
-
const _hoisted_5 = ["aria-label"];
|
|
124
|
+
const _hoisted_1 = ["aria-label"];
|
|
127
125
|
|
|
128
126
|
function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
129
127
|
const _directive_ripple = resolveDirective("ripple");
|
|
130
128
|
|
|
131
|
-
return (openBlock(), createElementBlock("div", {
|
|
132
|
-
class:
|
|
129
|
+
return (openBlock(), createElementBlock("div", mergeProps({
|
|
130
|
+
class: $options.containerClass,
|
|
133
131
|
role: "alert",
|
|
134
132
|
"aria-live": "assertive",
|
|
135
133
|
"aria-atomic": "true"
|
|
136
|
-
}, [
|
|
137
|
-
createElementVNode("div", {
|
|
138
|
-
class:
|
|
139
|
-
}, [
|
|
134
|
+
}, _ctx.ptm('container')), [
|
|
135
|
+
createElementVNode("div", mergeProps({
|
|
136
|
+
class: ["p-toast-message-content", $props.message.contentStyleClass]
|
|
137
|
+
}, _ctx.ptm('content')), [
|
|
140
138
|
(!$props.templates.message)
|
|
141
139
|
? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
142
|
-
(openBlock(), createBlock(resolveDynamicComponent($props.templates.icon ? $props.templates.icon : $options.iconComponent.name ? $options.iconComponent : 'span'), {
|
|
143
|
-
class:
|
|
144
|
-
}, null,
|
|
145
|
-
createElementVNode("div",
|
|
146
|
-
createElementVNode("span",
|
|
147
|
-
createElementVNode("div",
|
|
148
|
-
])
|
|
140
|
+
(openBlock(), createBlock(resolveDynamicComponent($props.templates.icon ? $props.templates.icon : $options.iconComponent.name ? $options.iconComponent : 'span'), mergeProps({
|
|
141
|
+
class: [$options.iconClass, "p-toast-message-icon"]
|
|
142
|
+
}, _ctx.ptm('icon')), null, 16, ["class"])),
|
|
143
|
+
createElementVNode("div", mergeProps({ class: "p-toast-message-text" }, _ctx.ptm('text')), [
|
|
144
|
+
createElementVNode("span", mergeProps({ class: "p-toast-summary" }, _ctx.ptm('summary')), toDisplayString($props.message.summary), 17),
|
|
145
|
+
createElementVNode("div", mergeProps({ class: "p-toast-detail" }, _ctx.ptm('detail')), toDisplayString($props.message.detail), 17)
|
|
146
|
+
], 16)
|
|
149
147
|
], 64))
|
|
150
148
|
: (openBlock(), createBlock(resolveDynamicComponent($props.templates.message), {
|
|
151
149
|
key: 1,
|
|
152
150
|
message: $props.message
|
|
153
151
|
}, null, 8, ["message"])),
|
|
154
|
-
createTextVNode(toDisplayString($props.message.closable) + " ", 1),
|
|
155
152
|
($props.message.closable !== false)
|
|
156
|
-
? (openBlock(), createElementBlock("div",
|
|
153
|
+
? (openBlock(), createElementBlock("div", normalizeProps(mergeProps({ key: 2 }, _ctx.ptm('buttonContainer'))), [
|
|
157
154
|
withDirectives((openBlock(), createElementBlock("button", mergeProps({
|
|
158
155
|
class: "p-toast-icon-close p-link",
|
|
159
156
|
type: "button",
|
|
160
157
|
"aria-label": $options.closeAriaLabel,
|
|
161
158
|
onClick: _cache[0] || (_cache[0] = (...args) => ($options.onCloseClick && $options.onCloseClick(...args))),
|
|
162
159
|
autofocus: ""
|
|
163
|
-
},
|
|
164
|
-
(openBlock(), createBlock(resolveDynamicComponent($props.templates.closeicon || 'TimesIcon'), {
|
|
165
|
-
class:
|
|
166
|
-
}, null,
|
|
167
|
-
], 16,
|
|
160
|
+
}, { ...$props.closeButtonProps, ..._ctx.ptm('button') }), [
|
|
161
|
+
(openBlock(), createBlock(resolveDynamicComponent($props.templates.closeicon || 'TimesIcon'), mergeProps({
|
|
162
|
+
class: ['p-toast-icon-close-icon', $props.closeIcon]
|
|
163
|
+
}, _ctx.ptm('buttonIcon')), null, 16, ["class"]))
|
|
164
|
+
], 16, _hoisted_1)), [
|
|
168
165
|
[_directive_ripple]
|
|
169
166
|
])
|
|
170
|
-
]))
|
|
167
|
+
], 16))
|
|
171
168
|
: createCommentVNode("", true)
|
|
172
|
-
],
|
|
173
|
-
],
|
|
169
|
+
], 16)
|
|
170
|
+
], 16))
|
|
174
171
|
}
|
|
175
172
|
|
|
176
173
|
script$1.render = render$1;
|
|
@@ -179,6 +176,7 @@ var messageIdx = 0;
|
|
|
179
176
|
|
|
180
177
|
var script = {
|
|
181
178
|
name: 'Toast',
|
|
179
|
+
extends: BaseComponent,
|
|
182
180
|
inheritAttrs: false,
|
|
183
181
|
emits: ['close', 'life-end'],
|
|
184
182
|
props: {
|
|
@@ -364,7 +362,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
364
362
|
createElementVNode("div", mergeProps({
|
|
365
363
|
ref: "container",
|
|
366
364
|
class: $options.containerClass
|
|
367
|
-
}, _ctx.$attrs), [
|
|
365
|
+
}, { ..._ctx.$attrs, ..._ctx.ptm('root') }), [
|
|
368
366
|
createVNode(TransitionGroup, {
|
|
369
367
|
name: "p-toast-message",
|
|
370
368
|
tag: "div",
|
|
@@ -383,8 +381,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
383
381
|
errorIcon: $props.errorIcon,
|
|
384
382
|
successIcon: $props.successIcon,
|
|
385
383
|
closeButtonProps: $props.closeButtonProps,
|
|
386
|
-
onClose: _cache[0] || (_cache[0] = $event => ($options.remove($event)))
|
|
387
|
-
|
|
384
|
+
onClose: _cache[0] || (_cache[0] = $event => ($options.remove($event))),
|
|
385
|
+
pt: _ctx.pt
|
|
386
|
+
}, null, 8, ["message", "templates", "closeIcon", "infoIcon", "warnIcon", "errorIcon", "successIcon", "closeButtonProps", "pt"]))
|
|
388
387
|
}), 128))
|
|
389
388
|
]),
|
|
390
389
|
_: 1
|