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
|
@@ -5469,7 +5469,7 @@
|
|
|
5469
5469
|
font-size: 1.5rem;
|
|
5470
5470
|
margin-right: 0.5rem;
|
|
5471
5471
|
}
|
|
5472
|
-
.p-message .p-icon {
|
|
5472
|
+
.p-message .p-icon:not(.p-message-close-icon) {
|
|
5473
5473
|
width: 1.5rem;
|
|
5474
5474
|
height: 1.5rem;
|
|
5475
5475
|
}
|
|
@@ -6257,6 +6257,9 @@
|
|
|
6257
6257
|
.p-calendar-w-btn .p-datepicker-trigger.p-button span {
|
|
6258
6258
|
color: rgba(0, 0, 0, 0.6);
|
|
6259
6259
|
}
|
|
6260
|
+
.p-calendar-w-btn .p-datepicker-trigger.p-button .p-icon path {
|
|
6261
|
+
fill: rgba(0, 0, 0, 0.6);
|
|
6262
|
+
}
|
|
6260
6263
|
.p-calendar-w-btn .p-datepicker-trigger.p-button:enabled:hover {
|
|
6261
6264
|
background: rgba(0, 0, 0, 0.04);
|
|
6262
6265
|
}
|
package/scrolltop/ScrollTop.d.ts
CHANGED
|
@@ -10,6 +10,49 @@
|
|
|
10
10
|
import { VNode } from 'vue';
|
|
11
11
|
import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
|
|
12
12
|
|
|
13
|
+
export declare type ScrollTopPassThroughOptionType = ScrollTopPassThroughAttributes | ((options: ScrollTopPassThroughMethodOptions) => ScrollTopPassThroughAttributes) | null | undefined;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Custom passthrough(pt) option method.
|
|
17
|
+
*/
|
|
18
|
+
export interface ScrollTopPassThroughMethodOptions {
|
|
19
|
+
props: ScrollTopProps;
|
|
20
|
+
state: ScrollTopState;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Custom passthrough(pt) options.
|
|
25
|
+
* @see {@link ScrollTopProps.pt}
|
|
26
|
+
*/
|
|
27
|
+
export interface ScrollTopPassThroughOptions {
|
|
28
|
+
/**
|
|
29
|
+
* Uses to pass attributes to the root's DOM element.
|
|
30
|
+
*/
|
|
31
|
+
root?: ScrollTopPassThroughOptionType;
|
|
32
|
+
/**
|
|
33
|
+
* Uses to pass attributes to the icon's DOM element.
|
|
34
|
+
*/
|
|
35
|
+
icon?: ScrollTopPassThroughOptionType;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Custom passthrough attributes for each DOM elements
|
|
40
|
+
*/
|
|
41
|
+
export interface ScrollTopPassThroughAttributes {
|
|
42
|
+
[key: string]: any;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Defines current inline state in ScrollTop component.
|
|
47
|
+
*/
|
|
48
|
+
export interface ScrollTopState {
|
|
49
|
+
/**
|
|
50
|
+
* Current visible state as a boolean.
|
|
51
|
+
* @defaultValue false
|
|
52
|
+
*/
|
|
53
|
+
visible: boolean;
|
|
54
|
+
}
|
|
55
|
+
|
|
13
56
|
/**
|
|
14
57
|
* Defines valid properties in ScrollTop component.
|
|
15
58
|
*/
|
|
@@ -34,6 +77,11 @@ export interface ScrollTopProps {
|
|
|
34
77
|
* @defaultValue smooth
|
|
35
78
|
*/
|
|
36
79
|
behavior?: string | undefined;
|
|
80
|
+
/**
|
|
81
|
+
* Uses to pass attributes to DOM elements inside the component.
|
|
82
|
+
* @type {ScrollTopPassThroughOptions}
|
|
83
|
+
*/
|
|
84
|
+
pt?: ScrollTopPassThroughOptions;
|
|
37
85
|
}
|
|
38
86
|
|
|
39
87
|
/**
|
package/scrolltop/ScrollTop.vue
CHANGED
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<transition name="p-scrolltop" appear @enter="onEnter" @after-leave="onAfterLeave">
|
|
3
|
-
<button v-if="visible" :ref="containerRef" :class="containerClass" @click="onClick" type="button" :aria-label="scrollTopAriaLabel">
|
|
3
|
+
<button v-if="visible" :ref="containerRef" :class="containerClass" @click="onClick" type="button" :aria-label="scrollTopAriaLabel" v-bind="ptm('root')">
|
|
4
4
|
<slot name="icon">
|
|
5
|
-
<component :is="icon ? 'span' : 'ChevronUpIcon'" :class="['p-scrolltop-icon', icon]"
|
|
5
|
+
<component :is="icon ? 'span' : 'ChevronUpIcon'" :class="['p-scrolltop-icon', icon]" v-bind="ptm('icon')" />
|
|
6
6
|
</slot>
|
|
7
7
|
</button>
|
|
8
8
|
</transition>
|
|
9
9
|
</template>
|
|
10
10
|
|
|
11
11
|
<script>
|
|
12
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
12
13
|
import ChevronUpIcon from 'primevue/icons/chevronup';
|
|
13
14
|
import { DomHandler, ZIndexUtils } from 'primevue/utils';
|
|
15
|
+
|
|
14
16
|
export default {
|
|
15
17
|
name: 'ScrollTop',
|
|
18
|
+
extends: BaseComponent,
|
|
16
19
|
scrollListener: null,
|
|
17
20
|
container: null,
|
|
18
21
|
props: {
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var BaseComponent = require('primevue/basecomponent');
|
|
3
4
|
var ChevronUpIcon = require('primevue/icons/chevronup');
|
|
4
5
|
var utils = require('primevue/utils');
|
|
5
6
|
var vue = require('vue');
|
|
6
7
|
|
|
7
8
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
8
9
|
|
|
10
|
+
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
9
11
|
var ChevronUpIcon__default = /*#__PURE__*/_interopDefaultLegacy(ChevronUpIcon);
|
|
10
12
|
|
|
11
13
|
var script = {
|
|
12
14
|
name: 'ScrollTop',
|
|
15
|
+
extends: BaseComponent__default["default"],
|
|
13
16
|
scrollListener: null,
|
|
14
17
|
container: null,
|
|
15
18
|
props: {
|
|
@@ -121,20 +124,20 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
121
124
|
}, {
|
|
122
125
|
default: vue.withCtx(() => [
|
|
123
126
|
($data.visible)
|
|
124
|
-
? (vue.openBlock(), vue.createElementBlock("button", {
|
|
127
|
+
? (vue.openBlock(), vue.createElementBlock("button", vue.mergeProps({
|
|
125
128
|
key: 0,
|
|
126
129
|
ref: $options.containerRef,
|
|
127
|
-
class:
|
|
130
|
+
class: $options.containerClass,
|
|
128
131
|
onClick: _cache[0] || (_cache[0] = (...args) => ($options.onClick && $options.onClick(...args))),
|
|
129
132
|
type: "button",
|
|
130
133
|
"aria-label": $options.scrollTopAriaLabel
|
|
131
|
-
}, [
|
|
134
|
+
}, _ctx.ptm('root')), [
|
|
132
135
|
vue.renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
133
|
-
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.icon ? 'span' : 'ChevronUpIcon'), {
|
|
134
|
-
class:
|
|
135
|
-
}, null,
|
|
136
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.icon ? 'span' : 'ChevronUpIcon'), vue.mergeProps({
|
|
137
|
+
class: ['p-scrolltop-icon', $props.icon]
|
|
138
|
+
}, _ctx.ptm('icon')), null, 16, ["class"]))
|
|
136
139
|
])
|
|
137
|
-
],
|
|
140
|
+
], 16, _hoisted_1))
|
|
138
141
|
: vue.createCommentVNode("", true)
|
|
139
142
|
]),
|
|
140
143
|
_: 3
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("primevue/icons/chevronup"),
|
|
1
|
+
"use strict";var e=require("primevue/basecomponent"),t=require("primevue/icons/chevronup"),n=require("primevue/utils"),o=require("vue");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=i(e),l=i(t),s={name:"ScrollTop",extends:r.default,scrollListener:null,container:null,props:{target:{type:String,default:"window"},threshold:{type:Number,default:400},icon:{type:String,default:void 0},behavior:{type:String,default:"smooth"}},data:()=>({visible:!1}),mounted(){"window"===this.target?this.bindDocumentScrollListener():"parent"===this.target&&this.bindParentScrollListener()},beforeUnmount(){"window"===this.target?this.unbindDocumentScrollListener():"parent"===this.target&&this.unbindParentScrollListener(),this.container&&(n.ZIndexUtils.clear(this.container),this.overlay=null)},methods:{onClick(){("window"===this.target?window:this.$el.parentElement).scroll({top:0,behavior:this.behavior})},checkVisibility(e){e>this.threshold?this.visible=!0:this.visible=!1},bindParentScrollListener(){this.scrollListener=()=>{this.checkVisibility(this.$el.parentElement.scrollTop)},this.$el.parentElement.addEventListener("scroll",this.scrollListener)},bindDocumentScrollListener(){this.scrollListener=()=>{this.checkVisibility(n.DomHandler.getWindowScrollTop())},window.addEventListener("scroll",this.scrollListener)},unbindParentScrollListener(){this.scrollListener&&(this.$el.parentElement.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},unbindDocumentScrollListener(){this.scrollListener&&(window.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},onEnter(e){n.ZIndexUtils.set("overlay",e,this.$primevue.config.zIndex.overlay)},onAfterLeave(e){n.ZIndexUtils.clear(e)},containerRef(e){this.container=e}},computed:{containerClass(){return["p-scrolltop p-link p-component",{"p-scrolltop-sticky":"window"!==this.target}]},scrollTopAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.scrollTop:void 0}},components:{ChevronUpIcon:l.default}};const c=["aria-label"];!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css","top"===n&&o.firstChild?o.insertBefore(i,o.firstChild):o.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}}("\n.p-scrolltop {\n position: fixed;\n bottom: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-scrolltop-sticky {\n position: sticky;\n}\n.p-scrolltop-sticky.p-link {\n margin-left: auto;\n}\n.p-scrolltop-enter-from {\n opacity: 0;\n}\n.p-scrolltop-enter-active {\n transition: opacity 0.15s;\n}\n.p-scrolltop.p-scrolltop-leave-to {\n opacity: 0;\n}\n.p-scrolltop-leave-active {\n transition: opacity 0.15s;\n}\n"),s.render=function(e,t,n,i,r,l){return o.openBlock(),o.createBlock(o.Transition,{name:"p-scrolltop",appear:"",onEnter:l.onEnter,onAfterLeave:l.onAfterLeave},{default:o.withCtx((()=>[r.visible?(o.openBlock(),o.createElementBlock("button",o.mergeProps({key:0,ref:l.containerRef,class:l.containerClass,onClick:t[0]||(t[0]=(...e)=>l.onClick&&l.onClick(...e)),type:"button","aria-label":l.scrollTopAriaLabel},e.ptm("root")),[o.renderSlot(e.$slots,"icon",{},(()=>[(o.openBlock(),o.createBlock(o.resolveDynamicComponent(n.icon?"span":"ChevronUpIcon"),o.mergeProps({class:["p-scrolltop-icon",n.icon]},e.ptm("icon")),null,16,["class"]))]))],16,c)):o.createCommentVNode("",!0)])),_:3},8,["onEnter","onAfterLeave"])},module.exports=s;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
1
2
|
import ChevronUpIcon from 'primevue/icons/chevronup';
|
|
2
3
|
import { ZIndexUtils, DomHandler } from 'primevue/utils';
|
|
3
|
-
import { openBlock, createBlock, Transition, withCtx, createElementBlock,
|
|
4
|
+
import { openBlock, createBlock, Transition, withCtx, createElementBlock, mergeProps, renderSlot, resolveDynamicComponent, createCommentVNode } from 'vue';
|
|
4
5
|
|
|
5
6
|
var script = {
|
|
6
7
|
name: 'ScrollTop',
|
|
8
|
+
extends: BaseComponent,
|
|
7
9
|
scrollListener: null,
|
|
8
10
|
container: null,
|
|
9
11
|
props: {
|
|
@@ -115,20 +117,20 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
115
117
|
}, {
|
|
116
118
|
default: withCtx(() => [
|
|
117
119
|
($data.visible)
|
|
118
|
-
? (openBlock(), createElementBlock("button", {
|
|
120
|
+
? (openBlock(), createElementBlock("button", mergeProps({
|
|
119
121
|
key: 0,
|
|
120
122
|
ref: $options.containerRef,
|
|
121
|
-
class:
|
|
123
|
+
class: $options.containerClass,
|
|
122
124
|
onClick: _cache[0] || (_cache[0] = (...args) => ($options.onClick && $options.onClick(...args))),
|
|
123
125
|
type: "button",
|
|
124
126
|
"aria-label": $options.scrollTopAriaLabel
|
|
125
|
-
}, [
|
|
127
|
+
}, _ctx.ptm('root')), [
|
|
126
128
|
renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
127
|
-
(openBlock(), createBlock(resolveDynamicComponent($props.icon ? 'span' : 'ChevronUpIcon'), {
|
|
128
|
-
class:
|
|
129
|
-
}, null,
|
|
129
|
+
(openBlock(), createBlock(resolveDynamicComponent($props.icon ? 'span' : 'ChevronUpIcon'), mergeProps({
|
|
130
|
+
class: ['p-scrolltop-icon', $props.icon]
|
|
131
|
+
}, _ctx.ptm('icon')), null, 16, ["class"]))
|
|
130
132
|
])
|
|
131
|
-
],
|
|
133
|
+
], 16, _hoisted_1))
|
|
132
134
|
: createCommentVNode("", true)
|
|
133
135
|
]),
|
|
134
136
|
_: 3
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"primevue/icons/chevronup";import{ZIndexUtils as
|
|
1
|
+
import e from"primevue/basecomponent";import t from"primevue/icons/chevronup";import{ZIndexUtils as n,DomHandler as i}from"primevue/utils";import{openBlock as o,createBlock as r,Transition as l,withCtx as s,createElementBlock as c,mergeProps as a,renderSlot as p,resolveDynamicComponent as h,createCommentVNode as d}from"vue";var m={name:"ScrollTop",extends:e,scrollListener:null,container:null,props:{target:{type:String,default:"window"},threshold:{type:Number,default:400},icon:{type:String,default:void 0},behavior:{type:String,default:"smooth"}},data:()=>({visible:!1}),mounted(){"window"===this.target?this.bindDocumentScrollListener():"parent"===this.target&&this.bindParentScrollListener()},beforeUnmount(){"window"===this.target?this.unbindDocumentScrollListener():"parent"===this.target&&this.unbindParentScrollListener(),this.container&&(n.clear(this.container),this.overlay=null)},methods:{onClick(){("window"===this.target?window:this.$el.parentElement).scroll({top:0,behavior:this.behavior})},checkVisibility(e){e>this.threshold?this.visible=!0:this.visible=!1},bindParentScrollListener(){this.scrollListener=()=>{this.checkVisibility(this.$el.parentElement.scrollTop)},this.$el.parentElement.addEventListener("scroll",this.scrollListener)},bindDocumentScrollListener(){this.scrollListener=()=>{this.checkVisibility(i.getWindowScrollTop())},window.addEventListener("scroll",this.scrollListener)},unbindParentScrollListener(){this.scrollListener&&(this.$el.parentElement.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},unbindDocumentScrollListener(){this.scrollListener&&(window.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},onEnter(e){n.set("overlay",e,this.$primevue.config.zIndex.overlay)},onAfterLeave(e){n.clear(e)},containerRef(e){this.container=e}},computed:{containerClass(){return["p-scrolltop p-link p-component",{"p-scrolltop-sticky":"window"!==this.target}]},scrollTopAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.scrollTop:void 0}},components:{ChevronUpIcon:t}};const u=["aria-label"];!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&i.firstChild?i.insertBefore(o,i.firstChild):i.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}("\n.p-scrolltop {\n position: fixed;\n bottom: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-scrolltop-sticky {\n position: sticky;\n}\n.p-scrolltop-sticky.p-link {\n margin-left: auto;\n}\n.p-scrolltop-enter-from {\n opacity: 0;\n}\n.p-scrolltop-enter-active {\n transition: opacity 0.15s;\n}\n.p-scrolltop.p-scrolltop-leave-to {\n opacity: 0;\n}\n.p-scrolltop-leave-active {\n transition: opacity 0.15s;\n}\n"),m.render=function(e,t,n,i,m,v){return o(),r(l,{name:"p-scrolltop",appear:"",onEnter:v.onEnter,onAfterLeave:v.onAfterLeave},{default:s((()=>[m.visible?(o(),c("button",a({key:0,ref:v.containerRef,class:v.containerClass,onClick:t[0]||(t[0]=(...e)=>v.onClick&&v.onClick(...e)),type:"button","aria-label":v.scrollTopAriaLabel},e.ptm("root")),[p(e.$slots,"icon",{},(()=>[(o(),r(h(n.icon?"span":"ChevronUpIcon"),a({class:["p-scrolltop-icon",n.icon]},e.ptm("icon")),null,16,["class"]))]))],16,u)):d("",!0)])),_:3},8,["onEnter","onAfterLeave"])};export{m as default};
|
package/scrolltop/scrolltop.js
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
this.primevue = this.primevue || {};
|
|
2
|
-
this.primevue.scrolltop = (function (ChevronUpIcon, utils, vue) {
|
|
2
|
+
this.primevue.scrolltop = (function (BaseComponent, ChevronUpIcon, utils, vue) {
|
|
3
3
|
'use strict';
|
|
4
4
|
|
|
5
5
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
6
6
|
|
|
7
|
+
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
7
8
|
var ChevronUpIcon__default = /*#__PURE__*/_interopDefaultLegacy(ChevronUpIcon);
|
|
8
9
|
|
|
9
10
|
var script = {
|
|
10
11
|
name: 'ScrollTop',
|
|
12
|
+
extends: BaseComponent__default["default"],
|
|
11
13
|
scrollListener: null,
|
|
12
14
|
container: null,
|
|
13
15
|
props: {
|
|
@@ -119,20 +121,20 @@ this.primevue.scrolltop = (function (ChevronUpIcon, utils, vue) {
|
|
|
119
121
|
}, {
|
|
120
122
|
default: vue.withCtx(() => [
|
|
121
123
|
($data.visible)
|
|
122
|
-
? (vue.openBlock(), vue.createElementBlock("button", {
|
|
124
|
+
? (vue.openBlock(), vue.createElementBlock("button", vue.mergeProps({
|
|
123
125
|
key: 0,
|
|
124
126
|
ref: $options.containerRef,
|
|
125
|
-
class:
|
|
127
|
+
class: $options.containerClass,
|
|
126
128
|
onClick: _cache[0] || (_cache[0] = (...args) => ($options.onClick && $options.onClick(...args))),
|
|
127
129
|
type: "button",
|
|
128
130
|
"aria-label": $options.scrollTopAriaLabel
|
|
129
|
-
}, [
|
|
131
|
+
}, _ctx.ptm('root')), [
|
|
130
132
|
vue.renderSlot(_ctx.$slots, "icon", {}, () => [
|
|
131
|
-
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.icon ? 'span' : 'ChevronUpIcon'), {
|
|
132
|
-
class:
|
|
133
|
-
}, null,
|
|
133
|
+
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.icon ? 'span' : 'ChevronUpIcon'), vue.mergeProps({
|
|
134
|
+
class: ['p-scrolltop-icon', $props.icon]
|
|
135
|
+
}, _ctx.ptm('icon')), null, 16, ["class"]))
|
|
134
136
|
])
|
|
135
|
-
],
|
|
137
|
+
], 16, _hoisted_1))
|
|
136
138
|
: vue.createCommentVNode("", true)
|
|
137
139
|
]),
|
|
138
140
|
_: 3
|
|
@@ -173,4 +175,4 @@ this.primevue.scrolltop = (function (ChevronUpIcon, utils, vue) {
|
|
|
173
175
|
|
|
174
176
|
return script;
|
|
175
177
|
|
|
176
|
-
})(primevue.icons.chevronup, primevue.utils, Vue);
|
|
178
|
+
})(primevue.basecomponent, primevue.icons.chevronup, primevue.utils, Vue);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
this.primevue=this.primevue||{},this.primevue.scrolltop=function(e,t,n){"use strict";function
|
|
1
|
+
this.primevue=this.primevue||{},this.primevue.scrolltop=function(e,t,n,i){"use strict";function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=o(e),l=o(t),s={name:"ScrollTop",extends:r.default,scrollListener:null,container:null,props:{target:{type:String,default:"window"},threshold:{type:Number,default:400},icon:{type:String,default:void 0},behavior:{type:String,default:"smooth"}},data:()=>({visible:!1}),mounted(){"window"===this.target?this.bindDocumentScrollListener():"parent"===this.target&&this.bindParentScrollListener()},beforeUnmount(){"window"===this.target?this.unbindDocumentScrollListener():"parent"===this.target&&this.unbindParentScrollListener(),this.container&&(n.ZIndexUtils.clear(this.container),this.overlay=null)},methods:{onClick(){("window"===this.target?window:this.$el.parentElement).scroll({top:0,behavior:this.behavior})},checkVisibility(e){e>this.threshold?this.visible=!0:this.visible=!1},bindParentScrollListener(){this.scrollListener=()=>{this.checkVisibility(this.$el.parentElement.scrollTop)},this.$el.parentElement.addEventListener("scroll",this.scrollListener)},bindDocumentScrollListener(){this.scrollListener=()=>{this.checkVisibility(n.DomHandler.getWindowScrollTop())},window.addEventListener("scroll",this.scrollListener)},unbindParentScrollListener(){this.scrollListener&&(this.$el.parentElement.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},unbindDocumentScrollListener(){this.scrollListener&&(window.removeEventListener("scroll",this.scrollListener),this.scrollListener=null)},onEnter(e){n.ZIndexUtils.set("overlay",e,this.$primevue.config.zIndex.overlay)},onAfterLeave(e){n.ZIndexUtils.clear(e)},containerRef(e){this.container=e}},computed:{containerClass(){return["p-scrolltop p-link p-component",{"p-scrolltop-sticky":"window"!==this.target}]},scrollTopAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.scrollTop:void 0}},components:{ChevronUpIcon:l.default}};const c=["aria-label"];return function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var i=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&i.firstChild?i.insertBefore(o,i.firstChild):i.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}("\n.p-scrolltop {\n position: fixed;\n bottom: 20px;\n right: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.p-scrolltop-sticky {\n position: sticky;\n}\n.p-scrolltop-sticky.p-link {\n margin-left: auto;\n}\n.p-scrolltop-enter-from {\n opacity: 0;\n}\n.p-scrolltop-enter-active {\n transition: opacity 0.15s;\n}\n.p-scrolltop.p-scrolltop-leave-to {\n opacity: 0;\n}\n.p-scrolltop-leave-active {\n transition: opacity 0.15s;\n}\n"),s.render=function(e,t,n,o,r,l){return i.openBlock(),i.createBlock(i.Transition,{name:"p-scrolltop",appear:"",onEnter:l.onEnter,onAfterLeave:l.onAfterLeave},{default:i.withCtx((()=>[r.visible?(i.openBlock(),i.createElementBlock("button",i.mergeProps({key:0,ref:l.containerRef,class:l.containerClass,onClick:t[0]||(t[0]=(...e)=>l.onClick&&l.onClick(...e)),type:"button","aria-label":l.scrollTopAriaLabel},e.ptm("root")),[i.renderSlot(e.$slots,"icon",{},(()=>[(i.openBlock(),i.createBlock(i.resolveDynamicComponent(n.icon?"span":"ChevronUpIcon"),i.mergeProps({class:["p-scrolltop-icon",n.icon]},e.ptm("icon")),null,16,["class"]))]))],16,c)):i.createCommentVNode("",!0)])),_:3},8,["onEnter","onAfterLeave"])},s}(primevue.basecomponent,primevue.icons.chevronup,primevue.utils,Vue);
|
package/sidebar/Sidebar.d.ts
CHANGED
|
@@ -10,6 +10,69 @@
|
|
|
10
10
|
import { VNode } from 'vue';
|
|
11
11
|
import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
|
|
12
12
|
|
|
13
|
+
export declare type SidebarPassThroughOptionType = SidebarPassThroughAttributes | ((options: SidebarPassThroughMethodOptions) => SidebarPassThroughAttributes) | null | undefined;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Custom passthrough(pt) option method.
|
|
17
|
+
*/
|
|
18
|
+
export interface SidebarPassThroughMethodOptions {
|
|
19
|
+
props: SidebarProps;
|
|
20
|
+
state: SidebarState;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Custom passthrough(pt) options.
|
|
25
|
+
* @see {@link SidebarProps.pt}
|
|
26
|
+
*/
|
|
27
|
+
export interface SidebarPassThroughOptions {
|
|
28
|
+
/**
|
|
29
|
+
* Uses to pass attributes to the root's DOM element.
|
|
30
|
+
*/
|
|
31
|
+
root?: SidebarPassThroughOptionType;
|
|
32
|
+
/**
|
|
33
|
+
* Uses to pass attributes to the header's DOM element.
|
|
34
|
+
*/
|
|
35
|
+
header?: SidebarPassThroughOptionType;
|
|
36
|
+
/**
|
|
37
|
+
* Uses to pass attributes to the header content's DOM element.
|
|
38
|
+
*/
|
|
39
|
+
headerContent?: SidebarPassThroughOptionType;
|
|
40
|
+
/**
|
|
41
|
+
* Uses to pass attributes to the close button's DOM element.
|
|
42
|
+
*/
|
|
43
|
+
closeButton?: SidebarPassThroughOptionType;
|
|
44
|
+
/**
|
|
45
|
+
* Uses to pass attributes to the close icon's DOM element.
|
|
46
|
+
*/
|
|
47
|
+
closeIcon?: SidebarPassThroughOptionType;
|
|
48
|
+
/**
|
|
49
|
+
* Uses to pass attributes to the content's DOM element.
|
|
50
|
+
*/
|
|
51
|
+
content?: SidebarPassThroughOptionType;
|
|
52
|
+
/**
|
|
53
|
+
* Uses to pass attributes to the mask's DOM element.
|
|
54
|
+
*/
|
|
55
|
+
mask?: SidebarPassThroughOptionType;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Custom passthrough attributes for each DOM elements
|
|
60
|
+
*/
|
|
61
|
+
export interface SidebarPassThroughAttributes {
|
|
62
|
+
[key: string]: any;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Defines current inline state in Sidebar component.
|
|
67
|
+
*/
|
|
68
|
+
export interface SidebarState {
|
|
69
|
+
/**
|
|
70
|
+
* Current container visible state as a boolean.
|
|
71
|
+
* @defaultValue false
|
|
72
|
+
*/
|
|
73
|
+
containerVisible: boolean;
|
|
74
|
+
}
|
|
75
|
+
|
|
13
76
|
/**
|
|
14
77
|
* Defines valid properties in Sidebar component.
|
|
15
78
|
*/
|
|
@@ -59,6 +122,11 @@ export interface SidebarProps {
|
|
|
59
122
|
* @defaultValue false
|
|
60
123
|
*/
|
|
61
124
|
blockScroll?: boolean | undefined;
|
|
125
|
+
/**
|
|
126
|
+
* Uses to pass attributes to DOM elements inside the component.
|
|
127
|
+
* @type {SidebarPassThroughOptions}
|
|
128
|
+
*/
|
|
129
|
+
pt?: SidebarPassThroughOptions;
|
|
62
130
|
}
|
|
63
131
|
|
|
64
132
|
/**
|
package/sidebar/Sidebar.vue
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<Portal>
|
|
3
|
-
<div v-if="containerVisible" :ref="maskRef" :class="maskClass" @mousedown="onMaskClick">
|
|
3
|
+
<div v-if="containerVisible" :ref="maskRef" :class="maskClass" @mousedown="onMaskClick" v-bind="ptm('mask')">
|
|
4
4
|
<transition name="p-sidebar" @enter="onEnter" @after-enter="onAfterEnter" @before-leave="onBeforeLeave" @leave="onLeave" @after-leave="onAfterLeave" appear>
|
|
5
|
-
<div v-if="visible" :ref="containerRef" v-focustrap :class="containerClass" role="complementary" :aria-modal="modal" @keydown="onKeydown" v-bind="
|
|
6
|
-
<div :ref="headerContainerRef" class="p-sidebar-header">
|
|
7
|
-
<div v-if="$slots.header" class="p-sidebar-header-content">
|
|
5
|
+
<div v-if="visible" :ref="containerRef" v-focustrap :class="containerClass" role="complementary" :aria-modal="modal" @keydown="onKeydown" v-bind="{ ...$attrs, ...ptm('root') }">
|
|
6
|
+
<div :ref="headerContainerRef" class="p-sidebar-header" v-bind="ptm('header')">
|
|
7
|
+
<div v-if="$slots.header" class="p-sidebar-header-content" v-bind="ptm('headerContent')">
|
|
8
8
|
<slot name="header"></slot>
|
|
9
9
|
</div>
|
|
10
|
-
<button v-if="showCloseIcon" :ref="closeButtonRef" v-ripple autofocus type="button" class="p-sidebar-close p-sidebar-icon p-link" :aria-label="closeAriaLabel" @click="hide">
|
|
10
|
+
<button v-if="showCloseIcon" :ref="closeButtonRef" v-ripple autofocus type="button" class="p-sidebar-close p-sidebar-icon p-link" :aria-label="closeAriaLabel" @click="hide" v-bind="ptm('closeButton')">
|
|
11
11
|
<slot name="closeicon">
|
|
12
|
-
<component :is="closeIcon ? 'span' : 'TimesIcon'" :class="['p-sidebar-close-icon ', closeIcon]"></component>
|
|
12
|
+
<component :is="closeIcon ? 'span' : 'TimesIcon'" :class="['p-sidebar-close-icon ', closeIcon]" v-bind="ptm('closeIcon')"></component>
|
|
13
13
|
</slot>
|
|
14
14
|
</button>
|
|
15
15
|
</div>
|
|
16
|
-
<div :ref="contentRef" class="p-sidebar-content">
|
|
16
|
+
<div :ref="contentRef" class="p-sidebar-content" v-bind="ptm('content')">
|
|
17
17
|
<slot></slot>
|
|
18
18
|
</div>
|
|
19
19
|
</div>
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
</template>
|
|
24
24
|
|
|
25
25
|
<script>
|
|
26
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
26
27
|
import FocusTrap from 'primevue/focustrap';
|
|
27
28
|
import TimesIcon from 'primevue/icons/times';
|
|
28
29
|
import Portal from 'primevue/portal';
|
|
@@ -31,6 +32,7 @@ import { DomHandler, ZIndexUtils } from 'primevue/utils';
|
|
|
31
32
|
|
|
32
33
|
export default {
|
|
33
34
|
name: 'Sidebar',
|
|
35
|
+
extends: BaseComponent,
|
|
34
36
|
inheritAttrs: false,
|
|
35
37
|
emits: ['update:visible', 'show', 'hide', 'after-hide'],
|
|
36
38
|
props: {
|