primeng 20.1.2 → 20.2.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/accordion/index.d.ts +2 -2
- package/animateonscroll/index.d.ts +2 -2
- package/api/index.d.ts +4 -3
- package/autocomplete/index.d.ts +59 -13
- package/avatargroup/index.d.ts +2 -2
- package/badge/index.d.ts +5 -5
- package/base/index.d.ts +6 -6
- package/basecomponent/index.d.ts +1 -1
- package/baseeditableholder/index.d.ts +4 -4
- package/baseinput/index.d.ts +12 -12
- package/breadcrumb/index.d.ts +1 -2
- package/button/index.d.ts +10 -10
- package/card/index.d.ts +1 -1
- package/carousel/index.d.ts +6 -6
- package/cascadeselect/index.d.ts +9 -9
- package/checkbox/index.d.ts +3 -3
- package/chip/index.d.ts +14 -4
- package/classnames/index.d.ts +38 -0
- package/config/index.d.ts +2 -2
- package/confirmdialog/index.d.ts +3 -3
- package/contextmenu/index.d.ts +4 -4
- package/dataview/index.d.ts +1 -1
- package/datepicker/index.d.ts +1 -1
- package/dialog/index.d.ts +4 -3
- package/divider/index.d.ts +2 -2
- package/dock/index.d.ts +2 -2
- package/dom/index.d.ts +4 -4
- package/dynamicdialog/index.d.ts +14 -14
- package/fesm2022/primeng-accordion.mjs +33 -21
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-animateonscroll.mjs +8 -8
- package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs +31 -31
- package/fesm2022/primeng-autocomplete.mjs +180 -50
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs +7 -7
- package/fesm2022/primeng-avatar.mjs +10 -10
- package/fesm2022/primeng-avatargroup.mjs +10 -10
- package/fesm2022/primeng-badge.mjs +15 -15
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs +3 -3
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs +6 -6
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-baseeditableholder.mjs +3 -3
- package/fesm2022/primeng-baseinput.mjs +3 -3
- package/fesm2022/primeng-baseinput.mjs.map +1 -1
- package/fesm2022/primeng-basemodelholder.mjs +3 -3
- package/fesm2022/primeng-blockui.mjs +10 -10
- package/fesm2022/primeng-breadcrumb.mjs +21 -21
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +24 -23
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs +10 -10
- package/fesm2022/primeng-card.mjs +10 -10
- package/fesm2022/primeng-carousel.mjs +23 -23
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs +31 -25
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs +10 -10
- package/fesm2022/primeng-checkbox.mjs +15 -14
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +48 -17
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-classnames.mjs +73 -0
- package/fesm2022/primeng-classnames.mjs.map +1 -0
- package/fesm2022/primeng-colorpicker.mjs +11 -11
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-config.mjs +8 -7
- package/fesm2022/primeng-config.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +16 -10
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs +24 -22
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +24 -22
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs +11 -11
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +23 -23
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +34 -15
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +10 -10
- package/fesm2022/primeng-dock.mjs +27 -25
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +13 -10
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dragdrop.mjs +10 -10
- package/fesm2022/primeng-drawer.mjs +28 -19
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +48 -39
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +11 -11
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +12 -11
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +15 -15
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs +10 -10
- package/fesm2022/primeng-fluid.mjs +10 -12
- package/fesm2022/primeng-fluid.mjs.map +1 -1
- package/fesm2022/primeng-focustrap.mjs +7 -7
- package/fesm2022/primeng-focustrap.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs +42 -38
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs +10 -10
- package/fesm2022/primeng-icons-angledoubledown.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleright.mjs +3 -3
- package/fesm2022/primeng-icons-angledoubleup.mjs +3 -3
- package/fesm2022/primeng-icons-angledown.mjs +3 -3
- package/fesm2022/primeng-icons-angleleft.mjs +3 -3
- package/fesm2022/primeng-icons-angleright.mjs +3 -3
- package/fesm2022/primeng-icons-angleup.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdown.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdownleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowdownright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowleft.mjs +3 -3
- package/fesm2022/primeng-icons-arrowright.mjs +3 -3
- package/fesm2022/primeng-icons-arrowup.mjs +3 -3
- package/fesm2022/primeng-icons-ban.mjs +3 -3
- package/fesm2022/primeng-icons-bars.mjs +3 -3
- package/fesm2022/primeng-icons-baseicon.mjs +6 -6
- package/fesm2022/primeng-icons-blank.mjs +3 -3
- package/fesm2022/primeng-icons-calendar.mjs +3 -3
- package/fesm2022/primeng-icons-caretleft.mjs +3 -3
- package/fesm2022/primeng-icons-caretright.mjs +3 -3
- package/fesm2022/primeng-icons-check.mjs +3 -3
- package/fesm2022/primeng-icons-chevrondown.mjs +3 -3
- package/fesm2022/primeng-icons-chevronleft.mjs +3 -3
- package/fesm2022/primeng-icons-chevronright.mjs +3 -3
- package/fesm2022/primeng-icons-chevronup.mjs +3 -3
- package/fesm2022/primeng-icons-exclamationtriangle.mjs +3 -3
- package/fesm2022/primeng-icons-eye.mjs +3 -3
- package/fesm2022/primeng-icons-eyeslash.mjs +3 -3
- package/fesm2022/primeng-icons-filter.mjs +3 -3
- package/fesm2022/primeng-icons-filterfill.mjs +3 -3
- package/fesm2022/primeng-icons-filterslash.mjs +3 -3
- package/fesm2022/primeng-icons-home.mjs +3 -3
- package/fesm2022/primeng-icons-infocircle.mjs +3 -3
- package/fesm2022/primeng-icons-minus.mjs +3 -3
- package/fesm2022/primeng-icons-pencil.mjs +3 -3
- package/fesm2022/primeng-icons-plus.mjs +3 -3
- package/fesm2022/primeng-icons-refresh.mjs +3 -3
- package/fesm2022/primeng-icons-search.mjs +3 -3
- package/fesm2022/primeng-icons-searchminus.mjs +3 -3
- package/fesm2022/primeng-icons-searchplus.mjs +3 -3
- package/fesm2022/primeng-icons-sortalt.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountdown.mjs +3 -3
- package/fesm2022/primeng-icons-sortamountupalt.mjs +3 -3
- package/fesm2022/primeng-icons-spinner.mjs +3 -3
- package/fesm2022/primeng-icons-star.mjs +3 -3
- package/fesm2022/primeng-icons-starfill.mjs +3 -3
- package/fesm2022/primeng-icons-thlarge.mjs +3 -3
- package/fesm2022/primeng-icons-times.mjs +3 -3
- package/fesm2022/primeng-icons-timescircle.mjs +3 -3
- package/fesm2022/primeng-icons-trash.mjs +3 -3
- package/fesm2022/primeng-icons-undo.mjs +3 -3
- package/fesm2022/primeng-icons-upload.mjs +3 -3
- package/fesm2022/primeng-icons-windowmaximize.mjs +3 -3
- package/fesm2022/primeng-icons-windowminimize.mjs +3 -3
- package/fesm2022/primeng-iftalabel.mjs +10 -10
- package/fesm2022/primeng-image.mjs +19 -16
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs +10 -10
- package/fesm2022/primeng-inplace.mjs +16 -16
- package/fesm2022/primeng-inputgroup.mjs +10 -10
- package/fesm2022/primeng-inputgroupaddon.mjs +10 -10
- package/fesm2022/primeng-inputicon.mjs +10 -10
- package/fesm2022/primeng-inputmask.mjs +22 -13
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs +52 -31
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs +11 -11
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs +10 -10
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs +19 -10
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-knob.mjs +10 -10
- package/fesm2022/primeng-listbox.mjs +124 -43
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +22 -20
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +35 -44
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +28 -27
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs +33 -30
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs +27 -18
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +58 -48
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +149 -43
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs +13 -13
- package/fesm2022/primeng-overlay.mjs +15 -11
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs +10 -10
- package/fesm2022/primeng-paginator.mjs +11 -11
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +11 -11
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +27 -26
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs +25 -21
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +129 -48
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs +11 -11
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +10 -10
- package/fesm2022/primeng-progressspinner.mjs +10 -10
- package/fesm2022/primeng-radiobutton.mjs +15 -15
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs +11 -11
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs +10 -10
- package/fesm2022/primeng-scroller.mjs +10 -10
- package/fesm2022/primeng-scrollpanel.mjs +19 -19
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +10 -10
- package/fesm2022/primeng-select.mjs +56 -38
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs +12 -12
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +10 -10
- package/fesm2022/primeng-slider.mjs +14 -14
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs +32 -24
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +15 -15
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +21 -21
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs +43 -43
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +15 -15
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-styleclass.mjs +8 -8
- package/fesm2022/primeng-styleclass.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +178 -158
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +99 -55
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs +10 -10
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +13 -13
- package/fesm2022/primeng-textarea.mjs +11 -11
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +26 -25
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs +10 -10
- package/fesm2022/primeng-toast.mjs +14 -13
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs +20 -13
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs +10 -10
- package/fesm2022/primeng-toolbar.mjs +10 -10
- package/fesm2022/primeng-tooltip.mjs +16 -15
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +170 -221
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs +17 -17
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +84 -77
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-usestyle.mjs +20 -18
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/fieldset/index.d.ts +3 -2
- package/fileupload/index.d.ts +6 -6
- package/fluid/index.d.ts +0 -2
- package/galleria/index.d.ts +10 -10
- package/icons/baseicon/index.d.ts +1 -1
- package/image/index.d.ts +7 -7
- package/inputnumber/index.d.ts +7 -7
- package/inputotp/index.d.ts +3 -3
- package/inputtext/index.d.ts +6 -6
- package/keyfilter/index.d.ts +2 -2
- package/listbox/index.d.ts +31 -19
- package/megamenu/index.d.ts +1 -1
- package/menu/index.d.ts +1 -2
- package/message/index.d.ts +3 -2
- package/metergroup/index.d.ts +6 -6
- package/multiselect/index.d.ts +18 -17
- package/orderlist/index.d.ts +13 -7
- package/organizationchart/index.d.ts +2 -2
- package/overlay/index.d.ts +5 -5
- package/package.json +198 -194
- package/paginator/index.d.ts +1 -1
- package/panel/index.d.ts +2 -2
- package/panelmenu/index.d.ts +8 -8
- package/password/index.d.ts +6 -6
- package/picklist/index.d.ts +17 -12
- package/radiobutton/index.d.ts +3 -3
- package/rating/index.d.ts +1 -1
- package/scroller/index.d.ts +3 -3
- package/select/index.d.ts +11 -11
- package/selectbutton/index.d.ts +3 -3
- package/slider/index.d.ts +2 -2
- package/speeddial/index.d.ts +9 -9
- package/splitter/index.d.ts +3 -3
- package/stepper/index.d.ts +4 -4
- package/steps/index.d.ts +3 -3
- package/table/index.d.ts +39 -31
- package/tabs/index.d.ts +23 -8
- package/tag/index.d.ts +1 -1
- package/textarea/index.d.ts +6 -6
- package/tieredmenu/index.d.ts +1 -1
- package/toast/index.d.ts +5 -5
- package/togglebutton/index.d.ts +4 -3
- package/toggleswitch/index.d.ts +1 -1
- package/tooltip/index.d.ts +11 -11
- package/tree/index.d.ts +31 -46
- package/treeselect/index.d.ts +6 -6
- package/treetable/index.d.ts +10 -10
- package/usestyle/index.d.ts +2 -2
- package/utils/index.d.ts +2 -2
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-drawer.mjs","sources":["../../src/drawer/style/drawerstyle.ts","../../src/drawer/drawer.ts","../../src/drawer/primeng-drawer.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/drawer';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = /*css*/ `\n ${style}\n\n /** For PrimeNG **/\n .p-drawer {\n position: fixed;\n display: flex;\n flex-direction: column;\n }\n\n .p-drawer-left {\n top: 0;\n left: 0;\n width: 20rem;\n height: 100%;\n }\n\n .p-drawer-right {\n top: 0;\n right: 0;\n width: 20rem;\n height: 100%;\n }\n\n .p-drawer-top {\n top: 0;\n left: 0;\n width: 100%;\n height: 10rem;\n }\n\n .p-drawer-bottom {\n bottom: 0;\n left: 0;\n width: 100%;\n height: 10rem;\n }\n\n .p-drawer-full {\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n -webkit-transition: none;\n transition: none;\n }\n\n .p-overlay-mask-enter {\n animation: p-overlay-mask-enter-animation 150ms forwards;\n }\n\n .p-overlay-mask-leave {\n animation: p-overlay-mask-leave-animation 150ms forwards;\n }\n\n @keyframes p-overlay-mask-enter-animation {\n from {\n background-color: transparent;\n }\n to {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n @keyframes p-overlay-mask-leave-animation {\n from {\n background-color: rgba(0, 0, 0, 0.4);\n }\n to {\n background-color: transparent;\n }\n }\n`;\n\nconst classes = {\n mask: ({ instance }) => ['p-drawer-mask', { 'p-overlay-mask p-overlay-mask-enter': instance.modal }, { 'p-drawer-full': instance.fullScreen }],\n root: ({ instance }) => [\n 'p-drawer p-component',\n {\n 'p-drawer-full': instance.fullScreen,\n 'p-drawer-open': instance.visible\n },\n `p-drawer-${instance.position}`\n ],\n header: 'p-drawer-header',\n title: 'p-drawer-title',\n pcCloseButton: 'p-drawer-close-button',\n content: 'p-drawer-content',\n footer: 'p-drawer-footer'\n};\n\n@Injectable()\nexport class DrawerStyle extends BaseStyle {\n name = 'drawer';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Drawer is a panel component displayed as an overlay at the edges of the screen.\n *\n * [Live Demo](https://www.primeng.org/drawer)\n *\n * @module drawerstyle\n *\n */\nexport enum DrawerClasses {\n /**\n * Class name of the mask element\n */\n mask = 'p-drawer-mask',\n /**\n * Class name of the root element\n */\n root = 'p-drawer',\n /**\n * Class name of the header element\n */\n header = 'p-drawer-header',\n /**\n * Class name of the title element\n */\n title = 'p-drawer-title',\n /**\n * Class name of the close button element\n */\n pcCloseButton = 'p-drawer-close-button',\n /**\n * Class name of the content element\n */\n content = 'p-drawer-content'\n}\n\nexport interface DrawerStyle extends BaseStyle {}\n","import { animate, animation, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n NgModule,\n numberAttribute,\n OnDestroy,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { addClass, appendChild, removeClass, setAttribute } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Button, ButtonProps } from 'primeng/button';\nimport { blockBodyScroll, unblockBodyScroll } from 'primeng/dom';\nimport { TimesIcon } from 'primeng/icons';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { DrawerStyle } from './style/drawerstyle';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}')]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n/**\n * Sidebar is a panel component displayed as an overlay at the edges of the screen.\n * @group Components\n */\n@Component({\n selector: 'p-drawer',\n standalone: true,\n imports: [CommonModule, Button, TimesIcon, SharedModule],\n template: `\n <div\n #container\n [class]=\"cn(cx('root'), styleClass)\"\n *ngIf=\"visible\"\n [@panelState]=\"{ value: 'visible', params: { transform: transformOptions, transition: transitionOptions } }\"\n (@panelState.start)=\"onAnimationStart($event)\"\n (@panelState.done)=\"onAnimationEnd($event)\"\n [style]=\"style\"\n role=\"complementary\"\n [attr.data-pc-name]=\"'sidebar'\"\n [attr.data-pc-section]=\"'root'\"\n (keydown)=\"onKeyDown($event)\"\n >\n @if (headlessTemplate || _headlessTemplate) {\n <ng-container *ngTemplateOutlet=\"headlessTemplate || _headlessTemplate\"></ng-container>\n } @else {\n <div [ngClass]=\"cx('header')\" [attr.data-pc-section]=\"'header'\">\n <ng-container *ngTemplateOutlet=\"headerTemplate || _headerTemplate\"></ng-container>\n <div *ngIf=\"header\" [class]=\"cx('title')\">{{ header }}</div>\n <p-button\n *ngIf=\"showCloseIcon && closable\"\n [ngClass]=\"cx('pcCloseButton')\"\n (onClick)=\"close($event)\"\n (keydown.enter)=\"close($event)\"\n [buttonProps]=\"closeButtonProps\"\n [ariaLabel]=\"ariaCloseLabel\"\n [attr.data-pc-section]=\"'closebutton'\"\n [attr.data-pc-group-section]=\"'iconcontainer'\"\n >\n <ng-template #icon>\n <svg data-p-icon=\"times\" *ngIf=\"!closeIconTemplate && !_closeIconTemplate\" [attr.data-pc-section]=\"'closeicon'\" />\n <ng-template *ngTemplateOutlet=\"closeIconTemplate || _closeIconTemplate\"></ng-template>\n </ng-template>\n </p-button>\n </div>\n\n <div [ngClass]=\"cx('content')\" [attr.data-pc-section]=\"'content'\">\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate\"></ng-container>\n </div>\n\n <ng-container *ngIf=\"footerTemplate || _footerTemplate\">\n <div [ngClass]=\"cx('footer')\" [attr.data-pc-section]=\"'footer'\">\n <ng-container *ngTemplateOutlet=\"footerTemplate || _footerTemplate\"></ng-container>\n </div>\n </ng-container>\n }\n </div>\n `,\n animations: [trigger('panelState', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [DrawerStyle]\n})\nexport class Drawer extends BaseComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n /**\n * Target element to attach the dialog, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any = 'body';\n /**\n * Whether to block scrolling of the document when drawer is active.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) blockScroll: boolean = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Aria label of the close icon.\n * @group Props\n */\n @Input() ariaCloseLabel: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * Whether an overlay mask is displayed behind the drawer.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) modal: boolean = true;\n /**\n * Used to pass all properties of the ButtonProps to the Button component.\n * @group Props\n */\n @Input() closeButtonProps: ButtonProps = { severity: 'secondary', text: true, rounded: true };\n /**\n * Whether to dismiss drawer on click of the mask.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) dismissible: boolean = true;\n /**\n * Whether to display the close icon.\n * @group Props\n * @deprecated use 'closable' instead.\n */\n @Input({ transform: booleanAttribute }) showCloseIcon: boolean = true;\n /**\n * Specifies if pressing escape key should hide the drawer.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) closeOnEscape: boolean = true;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Specifies the visibility of the dialog.\n * @group Props\n */\n @Input() get visible(): boolean {\n return this._visible as boolean;\n }\n set visible(val: boolean) {\n this._visible = val;\n }\n /**\n * Specifies the position of the drawer, valid values are \"left\", \"right\", \"bottom\" and \"top\".\n * @group Props\n */\n @Input() get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n if (value === 'full') {\n this.transformOptions = 'none';\n return;\n }\n switch (value) {\n case 'left':\n this.transformOptions = 'translate3d(-100%, 0px, 0px)';\n break;\n case 'right':\n this.transformOptions = 'translate3d(100%, 0px, 0px)';\n break;\n case 'bottom':\n this.transformOptions = 'translate3d(0px, 100%, 0px)';\n break;\n case 'top':\n this.transformOptions = 'translate3d(0px, -100%, 0px)';\n break;\n }\n }\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n @Input() get fullScreen(): boolean {\n return this._fullScreen;\n }\n set fullScreen(value: boolean) {\n this._fullScreen = value;\n\n if (value) this.transformOptions = 'none';\n }\n /**\n * Title content of the dialog.\n * @group Props\n */\n @Input() header: string | undefined;\n /**\n * Style of the mask.\n * @group Props\n */\n @Input() maskStyle: { [klass: string]: any } | null | undefined;\n /**\n * Whether to display close button.\n * @group Props\n * @defaultValue true\n */\n @Input({ transform: booleanAttribute }) closable: boolean = true;\n /**\n * Callback to invoke when dialog is shown.\n * @group Emits\n */\n @Output() onShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog is hidden.\n * @group Emits\n */\n @Output() onHide: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog visibility is changed.\n * @param {boolean} value - Visible value.\n * @group Emits\n */\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n @ViewChild('closeButton') closeButtonViewChild: ElementRef | undefined;\n\n initialized: boolean | undefined;\n\n _visible: boolean | undefined;\n\n _position: string = 'left';\n\n _fullScreen: boolean = false;\n\n container: Nullable<HTMLDivElement>;\n\n transformOptions: any = 'translate3d(-100%, 0px, 0px)';\n\n mask: Nullable<HTMLDivElement>;\n\n maskClickListener: VoidListener;\n\n documentEscapeListener: VoidListener;\n\n animationEndListener: VoidListener;\n\n _componentStyle = inject(DrawerStyle);\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.initialized = true;\n }\n /**\n * Content template for the content of the drawer.\n * @group Templates\n */\n @ContentChild('header', { descendants: false }) headerTemplate: TemplateRef<any> | undefined;\n /**\n * Header template for the header of the drawer.\n * @group Templates\n */\n @ContentChild('footer', { descendants: false }) footerTemplate: TemplateRef<any> | undefined;\n /**\n * Content template for the footer of the drawer.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: TemplateRef<any> | undefined;\n /**\n * Close icon template for the close icon of the drawer.\n * @group Templates\n */\n @ContentChild('closeicon', { descendants: false }) closeIconTemplate: TemplateRef<any> | undefined;\n /**\n * Headless template for the headless drawer.\n * @group Templates\n */\n @ContentChild('headless', { descendants: false }) headlessTemplate: TemplateRef<any> | undefined;\n\n _headerTemplate: TemplateRef<any> | undefined;\n\n _footerTemplate: TemplateRef<any> | undefined;\n\n _contentTemplate: TemplateRef<any> | undefined;\n\n _closeIconTemplate: TemplateRef<any> | undefined;\n\n _headlessTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this._contentTemplate = item.template;\n break;\n case 'header':\n this._headerTemplate = item.template;\n break;\n case 'footer':\n this._footerTemplate = item.template;\n break;\n case 'closeicon':\n this._closeIconTemplate = item.template;\n break;\n case 'headless':\n this._headlessTemplate = item.template;\n break;\n\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (event.code === 'Escape') {\n this.hide(false);\n }\n }\n\n show() {\n this.container.setAttribute(this.attrSelector, '');\n\n if (this.autoZIndex) {\n ZIndexUtils.set('modal', this.container, this.baseZIndex || this.config.zIndex.modal);\n }\n\n if (this.modal) {\n this.enableModality();\n }\n\n this.onShow.emit({});\n this.visibleChange.emit(true);\n }\n\n hide(emit: boolean = true) {\n if (emit) {\n this.onHide.emit({});\n }\n\n if (this.modal) {\n this.disableModality();\n }\n }\n\n close(event: Event) {\n this.hide();\n this.visibleChange.emit(false);\n event.preventDefault();\n }\n\n enableModality() {\n const activeDrawers = this.document.querySelectorAll('.p-drawer-open');\n const activeDrawersLength = activeDrawers.length;\n const zIndex = activeDrawersLength == 1 ? String(parseInt((this.container as HTMLDivElement).style.zIndex) - 1) : String(parseInt((activeDrawers[activeDrawersLength - 1] as HTMLElement).style.zIndex) - 1);\n\n if (!this.mask) {\n this.mask = this.renderer.createElement('div');\n setAttribute(this.mask, 'style', this.getMaskStyle());\n setAttribute(this.mask, 'style', `z-index: ${zIndex}`);\n addClass(this.mask, this.cx('mask'));\n\n if (this.dismissible) {\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event: any) => {\n if (this.dismissible) {\n this.close(event);\n }\n });\n }\n\n this.renderer.appendChild(this.document.body, this.mask);\n if (this.blockScroll) {\n blockBodyScroll();\n }\n }\n }\n\n getMaskStyle() {\n return this.maskStyle\n ? Object.entries(this.maskStyle)\n .map(([key, value]) => `${key}: ${value}`)\n .join('; ')\n : '';\n }\n\n disableModality() {\n if (this.mask) {\n removeClass(this.mask, 'p-overlay-mask-enter');\n addClass(this.mask, 'p-overlay-mask-leave');\n this.animationEndListener = this.renderer.listen(this.mask, 'animationend', this.destroyModal.bind(this));\n }\n }\n\n destroyModal() {\n this.unbindMaskClickListener();\n\n if (this.mask) {\n this.renderer.removeChild(this.document.body, this.mask);\n }\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n\n this.unbindAnimationEndListener();\n this.mask = null;\n }\n\n onAnimationStart(event: any) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.appendContainer();\n this.show();\n\n if (this.closeOnEscape) {\n this.bindDocumentEscapeListener();\n }\n break;\n }\n }\n\n onAnimationEnd(event: any) {\n switch (event.toState) {\n case 'void':\n this.hide(false);\n ZIndexUtils.clear(this.container);\n this.unbindGlobalListeners();\n break;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body') this.renderer.appendChild(this.document.body, this.container);\n else appendChild(this.appendTo, this.container);\n }\n }\n\n bindDocumentEscapeListener() {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt((this.container as HTMLDivElement).style.zIndex) === ZIndexUtils.get(this.container)) {\n this.close(event);\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n unbindGlobalListeners() {\n this.unbindMaskClickListener();\n this.unbindDocumentEscapeListener();\n }\n\n unbindAnimationEndListener() {\n if (this.animationEndListener && this.mask) {\n this.animationEndListener();\n this.animationEndListener = null;\n }\n }\n\n ngOnDestroy() {\n this.initialized = false;\n\n if (this.visible && this.modal) {\n this.destroyModal();\n }\n\n if (this.appendTo && this.container) {\n this.renderer.appendChild(this.el.nativeElement, this.container);\n }\n\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.container = null;\n this.unbindGlobalListeners();\n this.unbindAnimationEndListener();\n }\n}\n\n@NgModule({\n imports: [Drawer, SharedModule],\n exports: [Drawer, SharedModule]\n})\nexport class DrawerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["style"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-drawer.mjs","sources":["../../src/drawer/style/drawerstyle.ts","../../src/drawer/drawer.ts","../../src/drawer/primeng-drawer.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { style } from '@primeuix/styles/drawer';\nimport { BaseStyle } from 'primeng/base';\n\nconst theme = /*css*/ `\n ${style}\n\n /** For PrimeNG **/\n .p-drawer {\n position: fixed;\n display: flex;\n flex-direction: column;\n }\n\n .p-drawer-left {\n top: 0;\n left: 0;\n width: 20rem;\n height: 100%;\n }\n\n .p-drawer-right {\n top: 0;\n right: 0;\n width: 20rem;\n height: 100%;\n }\n\n .p-drawer-top {\n top: 0;\n left: 0;\n width: 100%;\n height: 10rem;\n }\n\n .p-drawer-bottom {\n bottom: 0;\n left: 0;\n width: 100%;\n height: 10rem;\n }\n\n .p-drawer-full {\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n -webkit-transition: none;\n transition: none;\n }\n\n .p-overlay-mask-enter {\n animation: p-overlay-mask-enter-animation 150ms forwards;\n }\n\n .p-overlay-mask-leave {\n animation: p-overlay-mask-leave-animation 150ms forwards;\n }\n\n @keyframes p-overlay-mask-enter-animation {\n from {\n background-color: transparent;\n }\n to {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n @keyframes p-overlay-mask-leave-animation {\n from {\n background-color: rgba(0, 0, 0, 0.4);\n }\n to {\n background-color: transparent;\n }\n }\n`;\n\nconst classes = {\n mask: ({ instance }) => ['p-drawer-mask', { 'p-overlay-mask p-overlay-mask-enter': instance.modal }, { 'p-drawer-full': instance.fullScreen }],\n root: ({ instance }) => [\n 'p-drawer p-component',\n {\n 'p-drawer-full': instance.fullScreen,\n 'p-drawer-open': instance.visible\n },\n `p-drawer-${instance.position}`\n ],\n header: 'p-drawer-header',\n title: 'p-drawer-title',\n pcCloseButton: 'p-drawer-close-button',\n content: 'p-drawer-content',\n footer: 'p-drawer-footer'\n};\n\n@Injectable()\nexport class DrawerStyle extends BaseStyle {\n name = 'drawer';\n\n theme = theme;\n\n classes = classes;\n}\n\n/**\n *\n * Drawer is a panel component displayed as an overlay at the edges of the screen.\n *\n * [Live Demo](https://www.primeng.org/drawer)\n *\n * @module drawerstyle\n *\n */\nexport enum DrawerClasses {\n /**\n * Class name of the mask element\n */\n mask = 'p-drawer-mask',\n /**\n * Class name of the root element\n */\n root = 'p-drawer',\n /**\n * Class name of the header element\n */\n header = 'p-drawer-header',\n /**\n * Class name of the title element\n */\n title = 'p-drawer-title',\n /**\n * Class name of the close button element\n */\n pcCloseButton = 'p-drawer-close-button',\n /**\n * Class name of the content element\n */\n content = 'p-drawer-content'\n}\n\nexport interface DrawerStyle extends BaseStyle {}\n","import { animate, animation, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport {\n AfterContentInit,\n AfterViewInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ContentChildren,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n NgModule,\n numberAttribute,\n OnDestroy,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { addClass, appendChild, removeClass, setAttribute } from '@primeuix/utils';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Button, ButtonProps } from 'primeng/button';\nimport { blockBodyScroll, unblockBodyScroll } from 'primeng/dom';\nimport { TimesIcon } from 'primeng/icons';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { DrawerStyle } from './style/drawerstyle';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}')]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n\nconst defaultTransformOptions = 'translate3d(-100%, 0px, 0px)';\n/**\n * Sidebar is a panel component displayed as an overlay at the edges of the screen.\n * @group Components\n */\n@Component({\n selector: 'p-drawer',\n standalone: true,\n imports: [CommonModule, Button, TimesIcon, SharedModule],\n template: `\n <div\n #container\n [class]=\"cn(cx('root'), styleClass)\"\n *ngIf=\"visible\"\n [@panelState]=\"{ value: 'visible', params: { transform: transformOptions, transition: transitionOptions } }\"\n (@panelState.start)=\"onAnimationStart($event)\"\n (@panelState.done)=\"onAnimationEnd($event)\"\n [style]=\"style\"\n role=\"complementary\"\n [attr.data-pc-name]=\"'sidebar'\"\n [attr.data-pc-section]=\"'root'\"\n (keydown)=\"onKeyDown($event)\"\n >\n @if (headlessTemplate || _headlessTemplate) {\n <ng-container *ngTemplateOutlet=\"headlessTemplate || _headlessTemplate\"></ng-container>\n } @else {\n <div [ngClass]=\"cx('header')\" [attr.data-pc-section]=\"'header'\">\n <ng-container *ngTemplateOutlet=\"headerTemplate || _headerTemplate\"></ng-container>\n <div *ngIf=\"header\" [class]=\"cx('title')\">{{ header }}</div>\n <p-button\n *ngIf=\"showCloseIcon && closable\"\n [ngClass]=\"cx('pcCloseButton')\"\n (onClick)=\"close($event)\"\n (keydown.enter)=\"close($event)\"\n [buttonProps]=\"closeButtonProps\"\n [ariaLabel]=\"ariaCloseLabel\"\n [attr.data-pc-section]=\"'closebutton'\"\n [attr.data-pc-group-section]=\"'iconcontainer'\"\n >\n <ng-template #icon>\n <svg data-p-icon=\"times\" *ngIf=\"!closeIconTemplate && !_closeIconTemplate\" [attr.data-pc-section]=\"'closeicon'\" />\n <ng-template *ngTemplateOutlet=\"closeIconTemplate || _closeIconTemplate\"></ng-template>\n </ng-template>\n </p-button>\n </div>\n\n <div [ngClass]=\"cx('content')\" [attr.data-pc-section]=\"'content'\">\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate || _contentTemplate\"></ng-container>\n </div>\n\n <ng-container *ngIf=\"footerTemplate || _footerTemplate\">\n <div [ngClass]=\"cx('footer')\" [attr.data-pc-section]=\"'footer'\">\n <ng-container *ngTemplateOutlet=\"footerTemplate || _footerTemplate\"></ng-container>\n </div>\n </ng-container>\n }\n </div>\n `,\n animations: [trigger('panelState', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [DrawerStyle]\n})\nexport class Drawer extends BaseComponent implements AfterViewInit, AfterContentInit, OnDestroy {\n /**\n * Target element to attach the dialog, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n @Input() appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined | any = 'body';\n /**\n * Whether to block scrolling of the document when drawer is active.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) blockScroll: boolean = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Aria label of the close icon.\n * @group Props\n */\n @Input() ariaCloseLabel: string | undefined;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) autoZIndex: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n @Input({ transform: numberAttribute }) baseZIndex: number = 0;\n /**\n * Whether an overlay mask is displayed behind the drawer.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) modal: boolean = true;\n /**\n * Used to pass all properties of the ButtonProps to the Button component.\n * @group Props\n */\n @Input() closeButtonProps: ButtonProps = { severity: 'secondary', text: true, rounded: true };\n /**\n * Whether to dismiss drawer on click of the mask.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) dismissible: boolean = true;\n /**\n * Whether to display the close icon.\n * @group Props\n * @deprecated use 'closable' instead.\n */\n @Input({ transform: booleanAttribute }) showCloseIcon: boolean = true;\n /**\n * Specifies if pressing escape key should hide the drawer.\n * @group Props\n */\n @Input({ transform: booleanAttribute }) closeOnEscape: boolean = true;\n /**\n * Transition options of the animation.\n * @group Props\n */\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n /**\n * Specifies the visibility of the dialog.\n * @group Props\n */\n @Input() get visible(): boolean {\n return this._visible ?? false;\n }\n set visible(val: boolean) {\n this._visible = val;\n }\n /**\n * Specifies the position of the drawer, valid values are \"left\", \"right\", \"bottom\" and \"top\".\n * @group Props\n */\n @Input() get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n if (value === 'full') {\n this.transformOptions = 'none';\n return;\n }\n switch (value) {\n case 'left':\n this.transformOptions = 'translate3d(-100%, 0px, 0px)';\n break;\n case 'right':\n this.transformOptions = 'translate3d(100%, 0px, 0px)';\n break;\n case 'bottom':\n this.transformOptions = 'translate3d(0px, 100%, 0px)';\n break;\n case 'top':\n this.transformOptions = 'translate3d(0px, -100%, 0px)';\n break;\n }\n }\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n @Input() get fullScreen(): boolean {\n return this._fullScreen;\n }\n set fullScreen(value: boolean) {\n this._fullScreen = value;\n if (value === true) {\n this.transformOptions = 'none';\n } else {\n this.transformOptions = defaultTransformOptions;\n }\n }\n /**\n * Title content of the dialog.\n * @group Props\n */\n @Input() header: string | undefined;\n /**\n * Style of the mask.\n * @group Props\n */\n @Input() maskStyle: { [klass: string]: any } | null | undefined;\n /**\n * Whether to display close button.\n * @group Props\n * @defaultValue true\n */\n @Input({ transform: booleanAttribute }) closable: boolean = true;\n /**\n * Callback to invoke when dialog is shown.\n * @group Emits\n */\n @Output() onShow: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog is hidden.\n * @group Emits\n */\n @Output() onHide: EventEmitter<any> = new EventEmitter<any>();\n /**\n * Callback to invoke when dialog visibility is changed.\n * @param {boolean} value - Visible value.\n * @group Emits\n */\n @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @ViewChild('container') containerViewChild: ElementRef | undefined;\n\n @ViewChild('closeButton') closeButtonViewChild: ElementRef | undefined;\n\n initialized: boolean | undefined;\n\n _visible: boolean | undefined;\n\n _position: string = 'left';\n\n _fullScreen: boolean = false;\n\n container: Nullable<HTMLDivElement>;\n\n transformOptions: any = defaultTransformOptions;\n\n mask: Nullable<HTMLDivElement>;\n\n maskClickListener: VoidListener;\n\n documentEscapeListener: VoidListener;\n\n animationEndListener: VoidListener;\n\n _componentStyle = inject(DrawerStyle);\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.initialized = true;\n }\n /**\n * Content template for the content of the drawer.\n * @group Templates\n */\n @ContentChild('header', { descendants: false }) headerTemplate: TemplateRef<any> | undefined;\n /**\n * Header template for the header of the drawer.\n * @group Templates\n */\n @ContentChild('footer', { descendants: false }) footerTemplate: TemplateRef<any> | undefined;\n /**\n * Content template for the footer of the drawer.\n * @group Templates\n */\n @ContentChild('content', { descendants: false }) contentTemplate: TemplateRef<any> | undefined;\n /**\n * Close icon template for the close icon of the drawer.\n * @group Templates\n */\n @ContentChild('closeicon', { descendants: false }) closeIconTemplate: TemplateRef<any> | undefined;\n /**\n * Headless template for the headless drawer.\n * @group Templates\n */\n @ContentChild('headless', { descendants: false }) headlessTemplate: TemplateRef<any> | undefined;\n\n _headerTemplate: TemplateRef<any> | undefined;\n\n _footerTemplate: TemplateRef<any> | undefined;\n\n _contentTemplate: TemplateRef<any> | undefined;\n\n _closeIconTemplate: TemplateRef<any> | undefined;\n\n _headlessTemplate: TemplateRef<any> | undefined;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<PrimeTemplate> | undefined;\n\n ngAfterContentInit() {\n this.templates?.forEach((item) => {\n switch (item.getType()) {\n case 'content':\n this._contentTemplate = item.template;\n break;\n case 'header':\n this._headerTemplate = item.template;\n break;\n case 'footer':\n this._footerTemplate = item.template;\n break;\n case 'closeicon':\n this._closeIconTemplate = item.template;\n break;\n case 'headless':\n this._headlessTemplate = item.template;\n break;\n\n default:\n this._contentTemplate = item.template;\n break;\n }\n });\n }\n\n onKeyDown(event: KeyboardEvent) {\n if (event.code === 'Escape') {\n this.hide(false);\n }\n }\n\n show() {\n this.container?.setAttribute(this.attrSelector, '');\n\n if (this.autoZIndex) {\n ZIndexUtils.set('modal', this.container, this.baseZIndex || this.config.zIndex.modal);\n }\n\n if (this.modal) {\n this.enableModality();\n }\n\n this.onShow.emit({});\n this.visibleChange.emit(true);\n }\n\n hide(emit: boolean = true) {\n if (emit) {\n this.onHide.emit({});\n }\n\n if (this.modal) {\n this.disableModality();\n }\n }\n\n close(event: Event) {\n this.hide();\n this.visibleChange.emit(false);\n event.preventDefault();\n }\n\n enableModality() {\n const activeDrawers = this.document.querySelectorAll('.p-drawer-open');\n const activeDrawersLength = activeDrawers.length;\n const zIndex = activeDrawersLength == 1 ? String(parseInt((this.container as HTMLDivElement).style.zIndex) - 1) : String(parseInt((activeDrawers[activeDrawersLength - 1] as HTMLElement).style.zIndex) - 1);\n\n if (!this.mask) {\n this.mask = this.renderer.createElement('div');\n if (this.mask) {\n setAttribute(this.mask, 'style', this.getMaskStyle());\n setAttribute(this.mask, 'style', `z-index: ${zIndex}`);\n addClass(this.mask, this.cx('mask'));\n }\n\n if (this.dismissible) {\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event: any) => {\n if (this.dismissible) {\n this.close(event);\n }\n });\n }\n\n this.renderer.appendChild(this.document.body, this.mask);\n if (this.blockScroll) {\n blockBodyScroll();\n }\n }\n }\n\n getMaskStyle() {\n return this.maskStyle\n ? Object.entries(this.maskStyle)\n .map(([key, value]) => `${key}: ${value}`)\n .join('; ')\n : '';\n }\n\n disableModality() {\n if (this.mask) {\n removeClass(this.mask, 'p-overlay-mask-enter');\n addClass(this.mask, 'p-overlay-mask-leave');\n this.animationEndListener = this.renderer.listen(this.mask, 'animationend', this.destroyModal.bind(this));\n }\n }\n\n destroyModal() {\n this.unbindMaskClickListener();\n\n if (this.mask) {\n this.renderer.removeChild(this.document.body, this.mask);\n }\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n\n this.unbindAnimationEndListener();\n this.mask = null;\n }\n\n onAnimationStart(event: any) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.appendContainer();\n this.show();\n\n if (this.closeOnEscape) {\n this.bindDocumentEscapeListener();\n }\n break;\n }\n }\n\n onAnimationEnd(event: any) {\n switch (event.toState) {\n case 'void':\n this.hide(false);\n ZIndexUtils.clear(this.container);\n this.unbindGlobalListeners();\n break;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body' && this.container) {\n this.renderer.appendChild(this.document.body, this.container);\n } else if (this.container) {\n appendChild(this.appendTo, this.container);\n }\n }\n }\n\n bindDocumentEscapeListener() {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : this.document;\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt((this.container as HTMLDivElement).style.zIndex) === ZIndexUtils.get(this.container)) {\n this.close(event);\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n unbindGlobalListeners() {\n this.unbindMaskClickListener();\n this.unbindDocumentEscapeListener();\n }\n\n unbindAnimationEndListener() {\n if (this.animationEndListener && this.mask) {\n this.animationEndListener();\n this.animationEndListener = null;\n }\n }\n\n ngOnDestroy() {\n this.initialized = false;\n\n if (this.visible && this.modal) {\n this.destroyModal();\n }\n\n if (this.appendTo && this.container) {\n this.renderer.appendChild(this.el.nativeElement, this.container);\n }\n\n if (this.container && this.autoZIndex) {\n ZIndexUtils.clear(this.container);\n }\n\n this.container = null;\n this.unbindGlobalListeners();\n this.unbindAnimationEndListener();\n }\n}\n\n@NgModule({\n imports: [Drawer, SharedModule],\n exports: [Drawer, SharedModule]\n})\nexport class DrawerModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["style"],"mappings":";;;;;;;;;;;;;;;AAIA,MAAM,KAAK,WAAW;MAChB,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsEV;AAED,MAAM,OAAO,GAAG;IACZ,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,eAAe,EAAE,EAAE,qCAAqC,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC;AAC9I,IAAA,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK;QACpB,sBAAsB;AACtB,QAAA;YACI,eAAe,EAAE,QAAQ,CAAC,UAAU;YACpC,eAAe,EAAE,QAAQ,CAAC;AAC7B,SAAA;QACD,CAAA,SAAA,EAAY,QAAQ,CAAC,QAAQ,CAAA;AAChC,KAAA;AACD,IAAA,MAAM,EAAE,iBAAiB;AACzB,IAAA,KAAK,EAAE,gBAAgB;AACvB,IAAA,aAAa,EAAE,uBAAuB;AACtC,IAAA,OAAO,EAAE,kBAAkB;AAC3B,IAAA,MAAM,EAAE;CACX;AAGK,MAAO,WAAY,SAAQ,SAAS,CAAA;IACtC,IAAI,GAAG,QAAQ;IAEf,KAAK,GAAG,KAAK;IAEb,OAAO,GAAG,OAAO;uGALR,WAAW,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;2GAAX,WAAW,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBADvB;;AASD;;;;;;;;AAQG;IACS;AAAZ,CAAA,UAAY,aAAa,EAAA;AACrB;;AAEG;AACH,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,eAAsB;AACtB;;AAEG;AACH,IAAA,aAAA,CAAA,MAAA,CAAA,GAAA,UAAiB;AACjB;;AAEG;AACH,IAAA,aAAA,CAAA,QAAA,CAAA,GAAA,iBAA0B;AAC1B;;AAEG;AACH,IAAA,aAAA,CAAA,OAAA,CAAA,GAAA,gBAAwB;AACxB;;AAEG;AACH,IAAA,aAAA,CAAA,eAAA,CAAA,GAAA,uBAAuC;AACvC;;AAEG;AACH,IAAA,aAAA,CAAA,SAAA,CAAA,GAAA,kBAA4B;AAChC,CAAC,EAzBW,aAAa,KAAb,aAAa,GAAA,EAAA,CAAA,CAAA;;AC/EzB,MAAM,aAAa,GAAG,SAAS,CAAC,CAACA,OAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAE/G,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAEA,OAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE/G,MAAM,uBAAuB,GAAG,8BAA8B;AAC9D;;;AAGG;AA4DG,MAAO,MAAO,SAAQ,aAAa,CAAA;AACrC;;;AAGG;IACM,QAAQ,GAAkF,MAAM;AACzG;;;AAGG;IACqC,WAAW,GAAY,KAAK;AACpE;;;AAGG;AACM,IAAA,KAAK;AACd;;;AAGG;AACM,IAAA,UAAU;AACnB;;;AAGG;AACM,IAAA,cAAc;AACvB;;;AAGG;IACqC,UAAU,GAAY,IAAI;AAClE;;;AAGG;IACoC,UAAU,GAAW,CAAC;AAC7D;;;AAGG;IACqC,KAAK,GAAY,IAAI;AAC7D;;;AAGG;AACM,IAAA,gBAAgB,GAAgB,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE;AAC7F;;;AAGG;IACqC,WAAW,GAAY,IAAI;AACnE;;;;AAIG;IACqC,aAAa,GAAY,IAAI;AACrE;;;AAGG;IACqC,aAAa,GAAY,IAAI;AACrE;;;AAGG;IACM,iBAAiB,GAAW,kCAAkC;AACvE;;;AAGG;AACH,IAAA,IAAa,OAAO,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,QAAQ,IAAI,KAAK;IACjC;IACA,IAAI,OAAO,CAAC,GAAY,EAAA;AACpB,QAAA,IAAI,CAAC,QAAQ,GAAG,GAAG;IACvB;AACA;;;AAGG;AACH,IAAA,IAAa,QAAQ,GAAA;QACjB,OAAO,IAAI,CAAC,SAAS;IACzB;IACA,IAAI,QAAQ,CAAC,KAAa,EAAA;AACtB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,QAAA,IAAI,KAAK,KAAK,MAAM,EAAE;AAClB,YAAA,IAAI,CAAC,gBAAgB,GAAG,MAAM;YAC9B;QACJ;QACA,QAAQ,KAAK;AACT,YAAA,KAAK,MAAM;AACP,gBAAA,IAAI,CAAC,gBAAgB,GAAG,8BAA8B;gBACtD;AACJ,YAAA,KAAK,OAAO;AACR,gBAAA,IAAI,CAAC,gBAAgB,GAAG,6BAA6B;gBACrD;AACJ,YAAA,KAAK,QAAQ;AACT,gBAAA,IAAI,CAAC,gBAAgB,GAAG,6BAA6B;gBACrD;AACJ,YAAA,KAAK,KAAK;AACN,gBAAA,IAAI,CAAC,gBAAgB,GAAG,8BAA8B;gBACtD;;IAEZ;AACA;;;AAGG;AACH,IAAA,IAAa,UAAU,GAAA;QACnB,OAAO,IAAI,CAAC,WAAW;IAC3B;IACA,IAAI,UAAU,CAAC,KAAc,EAAA;AACzB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,QAAA,IAAI,KAAK,KAAK,IAAI,EAAE;AAChB,YAAA,IAAI,CAAC,gBAAgB,GAAG,MAAM;QAClC;aAAO;AACH,YAAA,IAAI,CAAC,gBAAgB,GAAG,uBAAuB;QACnD;IACJ;AACA;;;AAGG;AACM,IAAA,MAAM;AACf;;;AAGG;AACM,IAAA,SAAS;AAClB;;;;AAIG;IACqC,QAAQ,GAAY,IAAI;AAChE;;;AAGG;AACO,IAAA,MAAM,GAAsB,IAAI,YAAY,EAAO;AAC7D;;;AAGG;AACO,IAAA,MAAM,GAAsB,IAAI,YAAY,EAAO;AAC7D;;;;AAIG;AACO,IAAA,aAAa,GAA0B,IAAI,YAAY,EAAW;AAEpD,IAAA,kBAAkB;AAEhB,IAAA,oBAAoB;AAE9C,IAAA,WAAW;AAEX,IAAA,QAAQ;IAER,SAAS,GAAW,MAAM;IAE1B,WAAW,GAAY,KAAK;AAE5B,IAAA,SAAS;IAET,gBAAgB,GAAQ,uBAAuB;AAE/C,IAAA,IAAI;AAEJ,IAAA,iBAAiB;AAEjB,IAAA,sBAAsB;AAEtB,IAAA,oBAAoB;AAEpB,IAAA,eAAe,GAAG,MAAM,CAAC,WAAW,CAAC;IAErC,eAAe,GAAA;QACX,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI;IAC3B;AACA;;;AAGG;AAC6C,IAAA,cAAc;AAC9D;;;AAGG;AAC6C,IAAA,cAAc;AAC9D;;;AAGG;AAC8C,IAAA,eAAe;AAChE;;;AAGG;AACgD,IAAA,iBAAiB;AACpE;;;AAGG;AAC+C,IAAA,gBAAgB;AAElE,IAAA,eAAe;AAEf,IAAA,eAAe;AAEf,IAAA,gBAAgB;AAEhB,IAAA,kBAAkB;AAElB,IAAA,iBAAiB;AAEe,IAAA,SAAS;IAEzC,kBAAkB,GAAA;QACd,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,KAAI;AAC7B,YAAA,QAAQ,IAAI,CAAC,OAAO,EAAE;AAClB,gBAAA,KAAK,SAAS;AACV,oBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ;oBACrC;AACJ,gBAAA,KAAK,QAAQ;AACT,oBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ;oBACpC;AACJ,gBAAA,KAAK,QAAQ;AACT,oBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ;oBACpC;AACJ,gBAAA,KAAK,WAAW;AACZ,oBAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,QAAQ;oBACvC;AACJ,gBAAA,KAAK,UAAU;AACX,oBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ;oBACtC;AAEJ,gBAAA;AACI,oBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ;oBACrC;;AAEZ,QAAA,CAAC,CAAC;IACN;AAEA,IAAA,SAAS,CAAC,KAAoB,EAAA;AAC1B,QAAA,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;AACzB,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QACpB;IACJ;IAEA,IAAI,GAAA;QACA,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;AAEnD,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;QACzF;AAEA,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,cAAc,EAAE;QACzB;AAEA,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;AACpB,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;IACjC;IAEA,IAAI,CAAC,OAAgB,IAAI,EAAA;QACrB,IAAI,IAAI,EAAE;AACN,YAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB;AAEA,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,eAAe,EAAE;QAC1B;IACJ;AAEA,IAAA,KAAK,CAAC,KAAY,EAAA;QACd,IAAI,CAAC,IAAI,EAAE;AACX,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9B,KAAK,CAAC,cAAc,EAAE;IAC1B;IAEA,cAAc,GAAA;QACV,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;AACtE,QAAA,MAAM,mBAAmB,GAAG,aAAa,CAAC,MAAM;QAChD,MAAM,MAAM,GAAG,mBAAmB,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAE,IAAI,CAAC,SAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAE,aAAa,CAAC,mBAAmB,GAAG,CAAC,CAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAE5M,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC9C,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACX,gBAAA,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;gBACrD,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAA,SAAA,EAAY,MAAM,CAAA,CAAE,CAAC;AACtD,gBAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACxC;AAEA,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AAClB,gBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,KAAU,KAAI;AAC7E,oBAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AAClB,wBAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;oBACrB;AACJ,gBAAA,CAAC,CAAC;YACN;AAEA,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;AACxD,YAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AAClB,gBAAA,eAAe,EAAE;YACrB;QACJ;IACJ;IAEA,YAAY,GAAA;QACR,OAAO,IAAI,CAAC;cACN,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS;AACxB,iBAAA,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAA,EAAG,GAAG,CAAA,EAAA,EAAK,KAAK,EAAE;iBACxC,IAAI,CAAC,IAAI;cACd,EAAE;IACZ;IAEA,eAAe,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,sBAAsB,CAAC;AAC9C,YAAA,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,sBAAsB,CAAC;YAC3C,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7G;IACJ;IAEA,YAAY,GAAA;QACR,IAAI,CAAC,uBAAuB,EAAE;AAE9B,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;QAC5D;AAEA,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AAClB,YAAA,iBAAiB,EAAE;QACvB;QAEA,IAAI,CAAC,0BAA0B,EAAE;AACjC,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;IACpB;AAEA,IAAA,gBAAgB,CAAC,KAAU,EAAA;AACvB,QAAA,QAAQ,KAAK,CAAC,OAAO;AACjB,YAAA,KAAK,SAAS;AACV,gBAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO;gBAC9B,IAAI,CAAC,eAAe,EAAE;gBACtB,IAAI,CAAC,IAAI,EAAE;AAEX,gBAAA,IAAI,IAAI,CAAC,aAAa,EAAE;oBACpB,IAAI,CAAC,0BAA0B,EAAE;gBACrC;gBACA;;IAEZ;AAEA,IAAA,cAAc,CAAC,KAAU,EAAA;AACrB,QAAA,QAAQ,KAAK,CAAC,OAAO;AACjB,YAAA,KAAK,MAAM;AACP,gBAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;AAChB,gBAAA,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;gBACjC,IAAI,CAAC,qBAAqB,EAAE;gBAC5B;;IAEZ;IAEA,eAAe,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACf,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE;AAC5C,gBAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACjE;AAAO,iBAAA,IAAI,IAAI,CAAC,SAAS,EAAE;gBACvB,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC;YAC9C;QACJ;IACJ;IAEA,0BAA0B,GAAA;QACtB,MAAM,cAAc,GAAQ,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ;AAEzF,QAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC,KAAK,KAAI;AACpF,YAAA,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE;gBACnB,IAAI,QAAQ,CAAE,IAAI,CAAC,SAA4B,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AAC/F,oBAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;gBACrB;YACJ;AACJ,QAAA,CAAC,CAAC;IACN;IAEA,4BAA4B,GAAA;AACxB,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,sBAAsB,EAAE;AAC7B,YAAA,IAAI,CAAC,sBAAsB,GAAG,IAAI;QACtC;IACJ;IAEA,uBAAuB,GAAA;AACnB,QAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,iBAAiB,EAAE;AACxB,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;QACjC;IACJ;IAEA,qBAAqB,GAAA;QACjB,IAAI,CAAC,uBAAuB,EAAE;QAC9B,IAAI,CAAC,4BAA4B,EAAE;IACvC;IAEA,0BAA0B,GAAA;QACtB,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,IAAI,EAAE;YACxC,IAAI,CAAC,oBAAoB,EAAE;AAC3B,YAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;QACpC;IACJ;IAEA,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;QAExB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE;YAC5B,IAAI,CAAC,YAAY,EAAE;QACvB;QAEA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;AACjC,YAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC;QACpE;QAEA,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;AACnC,YAAA,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;QACrC;AAEA,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;QACrB,IAAI,CAAC,qBAAqB,EAAE;QAC5B,IAAI,CAAC,0BAA0B,EAAE;IACrC;uGAjbS,MAAM,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAN,MAAM,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAUK,gBAAgB,CAAA,EAAA,KAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,CAAA,YAAA,EAAA,YAAA,EAoBhB,gBAAgB,4CAKhB,eAAe,CAAA,EAAA,KAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAKf,gBAAgB,CAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,CAAA,aAAA,EAAA,aAAA,EAUhB,gBAAgB,CAAA,EAAA,aAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAMhB,gBAAgB,CAAA,EAAA,aAAA,EAAA,CAAA,eAAA,EAAA,eAAA,EAKhB,gBAAgB,4LA0EhB,gBAAgB,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,SAAA,EAzIzB,CAAC,WAAW,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,mBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,SAAA,EA6NP,aAAa,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,sBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,aAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAlRpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiDT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAlDS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,MAAM,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,UAAA,EAAA,SAAA,EAAA,aAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,SAAA,EAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,eAAA,EAAA,WAAA,EAAA,aAAA,EAAA,WAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,SAAS,mEAAE,YAAY,EAAA,CAAA,EAAA,UAAA,EAmD3C,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;2FAKxJ,MAAM,EAAA,UAAA,EAAA,CAAA;kBA3DlB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,UAAU,EAAE,IAAI;oBAChB,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC;AACxD,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiDT,IAAA,CAAA;AACD,oBAAA,UAAU,EAAE,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjK,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE,CAAC,WAAW;AAC1B,iBAAA;8BAMY,QAAQ,EAAA,CAAA;sBAAhB;gBAKuC,WAAW,EAAA,CAAA;sBAAlD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAK7B,KAAK,EAAA,CAAA;sBAAb;gBAKQ,UAAU,EAAA,CAAA;sBAAlB;gBAKQ,cAAc,EAAA,CAAA;sBAAtB;gBAKuC,UAAU,EAAA,CAAA;sBAAjD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAKC,UAAU,EAAA,CAAA;sBAAhD,KAAK;uBAAC,EAAE,SAAS,EAAE,eAAe,EAAE;gBAKG,KAAK,EAAA,CAAA;sBAA5C,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAK7B,gBAAgB,EAAA,CAAA;sBAAxB;gBAKuC,WAAW,EAAA,CAAA;sBAAlD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAME,aAAa,EAAA,CAAA;sBAApD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAKE,aAAa,EAAA,CAAA;sBAApD,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAK7B,iBAAiB,EAAA,CAAA;sBAAzB;gBAKY,OAAO,EAAA,CAAA;sBAAnB;gBAUY,QAAQ,EAAA,CAAA;sBAApB;gBA4BY,UAAU,EAAA,CAAA;sBAAtB;gBAeQ,MAAM,EAAA,CAAA;sBAAd;gBAKQ,SAAS,EAAA,CAAA;sBAAjB;gBAMuC,QAAQ,EAAA,CAAA;sBAA/C,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;gBAK5B,MAAM,EAAA,CAAA;sBAAf;gBAKS,MAAM,EAAA,CAAA;sBAAf;gBAMS,aAAa,EAAA,CAAA;sBAAtB;gBAEuB,kBAAkB,EAAA,CAAA;sBAAzC,SAAS;uBAAC,WAAW;gBAEI,oBAAoB,EAAA,CAAA;sBAA7C,SAAS;uBAAC,aAAa;gBAgCwB,cAAc,EAAA,CAAA;sBAA7D,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,QAAQ,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAKE,cAAc,EAAA,CAAA;sBAA7D,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,QAAQ,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAKG,eAAe,EAAA,CAAA;sBAA/D,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,SAAS,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAKI,iBAAiB,EAAA,CAAA;sBAAnE,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,WAAW,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAKC,gBAAgB,EAAA,CAAA;sBAAjE,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,UAAU,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;gBAYhB,SAAS,EAAA,CAAA;sBAAxC,eAAe;uBAAC,aAAa;;MA6NrB,YAAY,CAAA;uGAAZ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,YAxbZ,MAAM,EAqbG,YAAY,CAAA,EAAA,OAAA,EAAA,CArbrB,MAAM,EAsbG,YAAY,CAAA,EAAA,CAAA;AAErB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,EAAA,OAAA,EAAA,CAHX,MAAM,EAAE,YAAY,EACZ,YAAY,CAAA,EAAA,CAAA;;2FAErB,YAAY,EAAA,UAAA,EAAA,CAAA;kBAJxB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;AAC/B,oBAAA,OAAO,EAAE,CAAC,MAAM,EAAE,YAAY;AACjC,iBAAA;;;AC5hBD;;AAEG;;;;"}
|
@@ -19,10 +19,10 @@ class DynamicDialogContent {
|
|
19
19
|
constructor(viewContainerRef) {
|
20
20
|
this.viewContainerRef = viewContainerRef;
|
21
21
|
}
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
23
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogContent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
23
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.2", type: DynamicDialogContent, isStandalone: true, selector: "[pDynamicDialogContent]", ngImport: i0 });
|
24
24
|
}
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogContent, decorators: [{
|
26
26
|
type: Directive,
|
27
27
|
args: [{
|
28
28
|
selector: '[pDynamicDialogContent]',
|
@@ -32,10 +32,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
32
32
|
|
33
33
|
class DynamicDialogStyle extends DialogStyle {
|
34
34
|
name = 'dialog';
|
35
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
36
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogStyle, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
36
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogStyle });
|
37
37
|
}
|
38
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogStyle, decorators: [{
|
39
39
|
type: Injectable
|
40
40
|
}] });
|
41
41
|
/**
|
@@ -243,7 +243,7 @@ class DynamicDialogConfig {
|
|
243
243
|
*/
|
244
244
|
minimizeIcon;
|
245
245
|
/**
|
246
|
-
* Position of the dialog, options are "center", "top", "bottom", "left", "right", "
|
246
|
+
* Position of the dialog, options are "center", "top", "bottom", "left", "right", "topleft", "topright", "bottomleft" or "bottomright".
|
247
247
|
* @group Props
|
248
248
|
*/
|
249
249
|
position;
|
@@ -580,7 +580,7 @@ class DynamicDialogComponent extends BaseComponent {
|
|
580
580
|
let viewContainerRef = this.insertionPoint?.viewContainerRef;
|
581
581
|
viewContainerRef?.clear();
|
582
582
|
this.componentRef = viewContainerRef?.createComponent(componentType);
|
583
|
-
if (this.inputValues) {
|
583
|
+
if (this.inputValues && this.componentRef) {
|
584
584
|
Object.entries(this.inputValues).forEach(([key, value]) => {
|
585
585
|
this.componentRef.setInput(key, value);
|
586
586
|
});
|
@@ -653,7 +653,7 @@ class DynamicDialogComponent extends BaseComponent {
|
|
653
653
|
}
|
654
654
|
}
|
655
655
|
enableModality() {
|
656
|
-
if (this.ddconfig.dismissableMask) {
|
656
|
+
if (this.ddconfig.dismissableMask && this.wrapper) {
|
657
657
|
this.maskClickListener = this.renderer.listen(this.wrapper, 'mousedown', (event) => {
|
658
658
|
if (this.wrapper && this.wrapper.isSameNode(event.target)) {
|
659
659
|
this.hide();
|
@@ -677,7 +677,9 @@ class DynamicDialogComponent extends BaseComponent {
|
|
677
677
|
}
|
678
678
|
}
|
679
679
|
}
|
680
|
-
focus(focusParentElement = this.contentViewChild
|
680
|
+
focus(focusParentElement = this.contentViewChild?.nativeElement) {
|
681
|
+
if (!focusParentElement)
|
682
|
+
return;
|
681
683
|
let focusable = DomHandler.getFocusableElement(focusParentElement, '[autofocus]');
|
682
684
|
if (focusable) {
|
683
685
|
this.zone.runOutsideAngular(() => {
|
@@ -691,11 +693,12 @@ class DynamicDialogComponent extends BaseComponent {
|
|
691
693
|
setTimeout(() => focusableElement.focus(), 5);
|
692
694
|
});
|
693
695
|
}
|
694
|
-
else if (this.footerViewChild) {
|
695
|
-
// If the content section is empty try to focus on footer
|
696
|
+
else if (this.footerViewChild && focusParentElement !== this.footerViewChild.nativeElement) {
|
697
|
+
// If the content section is empty try to focus on footer (avoid recursion)
|
696
698
|
this.focus(this.footerViewChild.nativeElement);
|
697
699
|
}
|
698
|
-
else if (!focusableElement && this.headerViewChild) {
|
700
|
+
else if (!focusableElement && this.headerViewChild && focusParentElement !== this.headerViewChild.nativeElement) {
|
701
|
+
// If footer is also empty, try header (avoid recursion)
|
699
702
|
this.focus(this.headerViewChild.nativeElement);
|
700
703
|
}
|
701
704
|
}
|
@@ -725,8 +728,8 @@ class DynamicDialogComponent extends BaseComponent {
|
|
725
728
|
if (this.resizing) {
|
726
729
|
let deltaX = event.pageX - this.lastPageX;
|
727
730
|
let deltaY = event.pageY - this.lastPageY;
|
728
|
-
let containerWidth = getOuterWidth(this.container);
|
729
|
-
let containerHeight = getOuterHeight(this.container);
|
731
|
+
let containerWidth = this.container ? getOuterWidth(this.container) : 0;
|
732
|
+
let containerHeight = this.container ? getOuterHeight(this.container) : 0;
|
730
733
|
let contentHeight = getOuterHeight(this.contentViewChild.nativeElement);
|
731
734
|
let newWidth = containerWidth + deltaX;
|
732
735
|
let newHeight = containerHeight + deltaY;
|
@@ -762,7 +765,8 @@ class DynamicDialogComponent extends BaseComponent {
|
|
762
765
|
}
|
763
766
|
}
|
764
767
|
initDrag(event) {
|
765
|
-
|
768
|
+
const target = event.target;
|
769
|
+
if (hasClass(target, 'p-dialog-header-icon') || (target.parentElement && hasClass(target.parentElement, 'p-dialog-header-icon'))) {
|
766
770
|
return;
|
767
771
|
}
|
768
772
|
if (this.ddconfig.draggable) {
|
@@ -776,8 +780,8 @@ class DynamicDialogComponent extends BaseComponent {
|
|
776
780
|
}
|
777
781
|
onDrag(event) {
|
778
782
|
if (this.dragging) {
|
779
|
-
let containerWidth = getOuterWidth(this.container);
|
780
|
-
let containerHeight = getOuterHeight(this.container);
|
783
|
+
let containerWidth = this.container ? getOuterWidth(this.container) : 0;
|
784
|
+
let containerHeight = this.container ? getOuterHeight(this.container) : 0;
|
781
785
|
let deltaX = event.pageX - this.lastPageX;
|
782
786
|
let deltaY = event.pageY - this.lastPageY;
|
783
787
|
let offset = this.container.getBoundingClientRect();
|
@@ -836,7 +840,7 @@ class DynamicDialogComponent extends BaseComponent {
|
|
836
840
|
unbindDocumentDragEndListener() {
|
837
841
|
if (this.documentDragEndListener) {
|
838
842
|
this.documentDragEndListener();
|
839
|
-
this.
|
843
|
+
this.documentDragEndListener = null;
|
840
844
|
}
|
841
845
|
}
|
842
846
|
unbindDocumentDragListener() {
|
@@ -882,7 +886,7 @@ class DynamicDialogComponent extends BaseComponent {
|
|
882
886
|
bindDocumentEscapeListener() {
|
883
887
|
const documentTarget = this.maskViewChild ? this.maskViewChild.nativeElement.ownerDocument : 'document';
|
884
888
|
this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {
|
885
|
-
if (event.which
|
889
|
+
if (event.key === 'Escape' || event.keyCode === 27 || event.which === 27) {
|
886
890
|
const currentZIndex = ZIndexUtils.getCurrent();
|
887
891
|
if (parseInt(this.container.style.zIndex) == currentZIndex || this.zIndexForLayering == currentZIndex) {
|
888
892
|
this.hide();
|
@@ -904,14 +908,14 @@ class DynamicDialogComponent extends BaseComponent {
|
|
904
908
|
}
|
905
909
|
ngOnDestroy() {
|
906
910
|
this.onContainerDestroy();
|
907
|
-
if (this.componentRef) {
|
911
|
+
if (this.componentRef && typeof this.componentRef.destroy === 'function') {
|
908
912
|
this.componentRef.destroy();
|
909
913
|
}
|
910
914
|
this.destroyStyle();
|
911
915
|
super.ngOnDestroy();
|
912
916
|
}
|
913
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
914
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.
|
917
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogComponent, deps: [{ token: i0.Renderer2 }, { token: DynamicDialogConfig }, { token: DynamicDialogRef }, { token: i0.NgZone }, { token: DynamicDialogComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
|
918
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.2", type: DynamicDialogComponent, isStandalone: true, selector: "p-dynamicDialog, p-dynamicdialog, p-dynamic-dialog", providers: [DynamicDialogStyle], viewQueries: [{ propertyName: "insertionPoint", first: true, predicate: DynamicDialogContent, descendants: true }, { propertyName: "maskViewChild", first: true, predicate: ["mask"], descendants: true }, { propertyName: "contentViewChild", first: true, predicate: ["content"], descendants: true }, { propertyName: "footerViewChild", first: true, predicate: ["footer"], descendants: true }, { propertyName: "headerViewChild", first: true, predicate: ["titlebar"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
915
919
|
<div
|
916
920
|
#mask
|
917
921
|
[ngStyle]="{
|
@@ -994,7 +998,7 @@ class DynamicDialogComponent extends BaseComponent {
|
|
994
998
|
</div>
|
995
999
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: SharedModule }, { kind: "directive", type: DynamicDialogContent, selector: "[pDynamicDialogContent]" }, { kind: "component", type: WindowMaximizeIcon, selector: "[data-p-icon=\"window-maximize\"]" }, { kind: "component", type: WindowMinimizeIcon, selector: "[data-p-icon=\"window-minimize\"]" }, { kind: "component", type: TimesIcon, selector: "[data-p-icon=\"times\"]" }, { kind: "component", type: Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "buttonProps", "autofocus", "fluid"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: FocusTrap, selector: "[pFocusTrap]", inputs: ["pFocusTrapDisabled"] }], animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None });
|
996
1000
|
}
|
997
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
1001
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogComponent, decorators: [{
|
998
1002
|
type: Component,
|
999
1003
|
args: [{
|
1000
1004
|
selector: 'p-dynamicDialog, p-dynamicdialog, p-dynamic-dialog',
|
@@ -1108,11 +1112,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
1108
1112
|
args: ['titlebar']
|
1109
1113
|
}] } });
|
1110
1114
|
class DynamicDialogModule {
|
1111
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
1112
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.
|
1113
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.
|
1115
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
1116
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogModule, imports: [DynamicDialogComponent, SharedModule], exports: [DynamicDialogComponent, SharedModule] });
|
1117
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogModule, imports: [DynamicDialogComponent, SharedModule, SharedModule] });
|
1114
1118
|
}
|
1115
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
1119
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DynamicDialogModule, decorators: [{
|
1116
1120
|
type: NgModule,
|
1117
1121
|
args: [{
|
1118
1122
|
imports: [DynamicDialogComponent, SharedModule],
|
@@ -1161,17 +1165,20 @@ class DialogService {
|
|
1161
1165
|
return null;
|
1162
1166
|
}
|
1163
1167
|
const dialogRef = this.appendDialogComponentToBody(config, componentType);
|
1164
|
-
this.dialogComponentRefMap.get(dialogRef)
|
1165
|
-
|
1168
|
+
const componentRefInstance = this.dialogComponentRefMap.get(dialogRef);
|
1169
|
+
if (componentRefInstance) {
|
1170
|
+
componentRefInstance.instance.childComponentType = componentType;
|
1171
|
+
componentRefInstance.instance.inputValues = config.inputValues || {};
|
1172
|
+
}
|
1166
1173
|
return dialogRef;
|
1167
1174
|
}
|
1168
1175
|
/**
|
1169
1176
|
* Returns the dynamic dialog component instance.
|
1170
|
-
* @param {
|
1177
|
+
* @param {DynamicDialogRef} ref - DynamicDialog instance.
|
1171
1178
|
* @group Method
|
1172
1179
|
*/
|
1173
1180
|
getInstance(ref) {
|
1174
|
-
return this.dialogComponentRefMap.get(ref)
|
1181
|
+
return this.dialogComponentRefMap.get(ref)?.instance;
|
1175
1182
|
}
|
1176
1183
|
appendDialogComponentToBody(config, componentType) {
|
1177
1184
|
const map = new WeakMap();
|
@@ -1179,7 +1186,7 @@ class DialogService {
|
|
1179
1186
|
const dialogRef = new DynamicDialogRef();
|
1180
1187
|
map.set(DynamicDialogRef, dialogRef);
|
1181
1188
|
const sub = dialogRef.onClose.subscribe(() => {
|
1182
|
-
this.dialogComponentRefMap.get(dialogRef)
|
1189
|
+
this.dialogComponentRefMap.get(dialogRef)?.instance.close();
|
1183
1190
|
});
|
1184
1191
|
const destroySub = dialogRef.onDestroy.subscribe(() => {
|
1185
1192
|
this.removeDialogComponentFromBody(dialogRef);
|
@@ -1206,9 +1213,11 @@ class DialogService {
|
|
1206
1213
|
return;
|
1207
1214
|
}
|
1208
1215
|
const dialogComponentRef = this.dialogComponentRefMap.get(dialogRef);
|
1209
|
-
|
1210
|
-
|
1211
|
-
|
1216
|
+
if (dialogComponentRef) {
|
1217
|
+
this.appRef.detachView(dialogComponentRef.hostView);
|
1218
|
+
dialogComponentRef.destroy();
|
1219
|
+
dialogComponentRef.changeDetectorRef.detectChanges();
|
1220
|
+
}
|
1212
1221
|
this.dialogComponentRefMap.delete(dialogRef);
|
1213
1222
|
}
|
1214
1223
|
duplicationPermission(componentType, config) {
|
@@ -1224,10 +1233,10 @@ class DialogService {
|
|
1224
1233
|
}
|
1225
1234
|
return permission;
|
1226
1235
|
}
|
1227
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.
|
1228
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.
|
1236
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DialogService, deps: [{ token: i0.ApplicationRef }, { token: i0.Injector }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
|
1237
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DialogService });
|
1229
1238
|
}
|
1230
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.
|
1239
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.2", ngImport: i0, type: DialogService, decorators: [{
|
1231
1240
|
type: Injectable
|
1232
1241
|
}], ctorParameters: () => [{ type: i0.ApplicationRef }, { type: i0.Injector }, { type: Document, decorators: [{
|
1233
1242
|
type: Inject,
|