primeng 12.2.0-rc.1 → 12.2.3
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/blockui/blockui.d.ts +3 -0
- package/bundles/primeng-accordion.umd.js +4 -6
- package/bundles/primeng-accordion.umd.js.map +1 -1
- package/bundles/primeng-api.umd.js +6 -8
- package/bundles/primeng-api.umd.js.map +1 -1
- package/bundles/primeng-autocomplete.umd.js +5 -7
- package/bundles/primeng-autocomplete.umd.js.map +1 -1
- package/bundles/primeng-avatar.umd.js +4 -6
- package/bundles/primeng-avatar.umd.js.map +1 -1
- package/bundles/primeng-avatargroup.umd.js +4 -6
- package/bundles/primeng-avatargroup.umd.js.map +1 -1
- package/bundles/primeng-badge.umd.js +4 -6
- package/bundles/primeng-badge.umd.js.map +1 -1
- package/bundles/primeng-blockui.umd.js +30 -13
- package/bundles/primeng-blockui.umd.js.map +1 -1
- package/bundles/primeng-breadcrumb.umd.js +5 -7
- package/bundles/primeng-breadcrumb.umd.js.map +1 -1
- package/bundles/primeng-button.umd.js +12 -9
- package/bundles/primeng-button.umd.js.map +1 -1
- package/bundles/primeng-calendar.umd.js +5 -7
- package/bundles/primeng-calendar.umd.js.map +1 -1
- package/bundles/primeng-captcha.umd.js +4 -6
- package/bundles/primeng-captcha.umd.js.map +1 -1
- package/bundles/primeng-card.umd.js +4 -6
- package/bundles/primeng-card.umd.js.map +1 -1
- package/bundles/primeng-carousel.umd.js +5 -7
- package/bundles/primeng-carousel.umd.js.map +1 -1
- package/bundles/primeng-cascadeselect.umd.js +34 -15
- package/bundles/primeng-cascadeselect.umd.js.map +1 -1
- package/bundles/primeng-chart.umd.js +7 -8
- package/bundles/primeng-chart.umd.js.map +1 -1
- package/bundles/primeng-checkbox.umd.js +5 -7
- package/bundles/primeng-checkbox.umd.js.map +1 -1
- package/bundles/primeng-chip.umd.js +4 -6
- package/bundles/primeng-chip.umd.js.map +1 -1
- package/bundles/primeng-chips.umd.js +7 -8
- package/bundles/primeng-chips.umd.js.map +1 -1
- package/bundles/primeng-codehighlighter.umd.js +4 -6
- package/bundles/primeng-codehighlighter.umd.js.map +1 -1
- package/bundles/primeng-colorpicker.umd.js +4 -6
- package/bundles/primeng-colorpicker.umd.js.map +1 -1
- package/bundles/primeng-confirmdialog.umd.js +14 -13
- package/bundles/primeng-confirmdialog.umd.js.map +1 -1
- package/bundles/primeng-confirmpopup.umd.js +22 -7
- package/bundles/primeng-confirmpopup.umd.js.map +1 -1
- package/bundles/primeng-contextmenu.umd.js +5 -7
- package/bundles/primeng-contextmenu.umd.js.map +1 -1
- package/bundles/primeng-dataview.umd.js +4 -6
- package/bundles/primeng-dataview.umd.js.map +1 -1
- package/bundles/primeng-defer.umd.js +4 -6
- package/bundles/primeng-defer.umd.js.map +1 -1
- package/bundles/primeng-dialog.umd.js +4 -6
- package/bundles/primeng-dialog.umd.js.map +1 -1
- package/bundles/primeng-divider.umd.js +4 -6
- package/bundles/primeng-divider.umd.js.map +1 -1
- package/bundles/primeng-dock.umd.js +4 -6
- package/bundles/primeng-dock.umd.js.map +1 -1
- package/bundles/primeng-dom.umd.js +4 -4
- package/bundles/primeng-dom.umd.js.map +1 -1
- package/bundles/primeng-dragdrop.umd.js +4 -6
- package/bundles/primeng-dragdrop.umd.js.map +1 -1
- package/bundles/primeng-dropdown.umd.js +24 -19
- package/bundles/primeng-dropdown.umd.js.map +1 -1
- package/bundles/primeng-dynamicdialog.umd.js +12 -11
- package/bundles/primeng-dynamicdialog.umd.js.map +1 -1
- package/bundles/primeng-editor.umd.js +6 -8
- package/bundles/primeng-editor.umd.js.map +1 -1
- package/bundles/primeng-fieldset.umd.js +4 -6
- package/bundles/primeng-fieldset.umd.js.map +1 -1
- package/bundles/primeng-fileupload.umd.js +5 -7
- package/bundles/primeng-fileupload.umd.js.map +1 -1
- package/bundles/primeng-focustrap.umd.js +4 -6
- package/bundles/primeng-focustrap.umd.js.map +1 -1
- package/bundles/primeng-fullcalendar.umd.js +4 -6
- package/bundles/primeng-fullcalendar.umd.js.map +1 -1
- package/bundles/primeng-galleria.umd.js +5 -7
- package/bundles/primeng-galleria.umd.js.map +1 -1
- package/bundles/primeng-gmap.umd.js +5 -7
- package/bundles/primeng-gmap.umd.js.map +1 -1
- package/bundles/primeng-image.umd.js +4 -6
- package/bundles/primeng-image.umd.js.map +1 -1
- package/bundles/primeng-inplace.umd.js +4 -6
- package/bundles/primeng-inplace.umd.js.map +1 -1
- package/bundles/primeng-inputmask.umd.js +4 -6
- package/bundles/primeng-inputmask.umd.js.map +1 -1
- package/bundles/primeng-inputnumber.umd.js +5 -7
- package/bundles/primeng-inputnumber.umd.js.map +1 -1
- package/bundles/primeng-inputswitch.umd.js +4 -6
- package/bundles/primeng-inputswitch.umd.js.map +1 -1
- package/bundles/primeng-inputtext.umd.js +12 -9
- package/bundles/primeng-inputtext.umd.js.map +1 -1
- package/bundles/primeng-inputtextarea.umd.js +4 -6
- package/bundles/primeng-inputtextarea.umd.js.map +1 -1
- package/bundles/primeng-keyfilter.umd.js +5 -7
- package/bundles/primeng-keyfilter.umd.js.map +1 -1
- package/bundles/primeng-knob.umd.js +4 -6
- package/bundles/primeng-knob.umd.js.map +1 -1
- package/bundles/primeng-lightbox.umd.js +4 -6
- package/bundles/primeng-lightbox.umd.js.map +1 -1
- package/bundles/primeng-listbox.umd.js +7 -9
- package/bundles/primeng-listbox.umd.js.map +1 -1
- package/bundles/primeng-megamenu.umd.js +4 -6
- package/bundles/primeng-megamenu.umd.js.map +1 -1
- package/bundles/primeng-menu.umd.js +49 -9
- package/bundles/primeng-menu.umd.js.map +1 -1
- package/bundles/primeng-menubar.umd.js +4 -6
- package/bundles/primeng-menubar.umd.js.map +1 -1
- package/bundles/primeng-message.umd.js +4 -6
- package/bundles/primeng-message.umd.js.map +1 -1
- package/bundles/primeng-messages.umd.js +5 -7
- package/bundles/primeng-messages.umd.js.map +1 -1
- package/bundles/primeng-multiselect.umd.js +9 -10
- package/bundles/primeng-multiselect.umd.js.map +1 -1
- package/bundles/primeng-orderlist.umd.js +5 -7
- package/bundles/primeng-orderlist.umd.js.map +1 -1
- package/bundles/primeng-organizationchart.umd.js +7 -9
- package/bundles/primeng-organizationchart.umd.js.map +1 -1
- package/bundles/primeng-overlaypanel.umd.js +4 -6
- package/bundles/primeng-overlaypanel.umd.js.map +1 -1
- package/bundles/primeng-paginator.umd.js +6 -8
- package/bundles/primeng-paginator.umd.js.map +1 -1
- package/bundles/primeng-panel.umd.js +4 -6
- package/bundles/primeng-panel.umd.js.map +1 -1
- package/bundles/primeng-panelmenu.umd.js +42 -14
- package/bundles/primeng-panelmenu.umd.js.map +1 -1
- package/bundles/primeng-password.umd.js +16 -10
- package/bundles/primeng-password.umd.js.map +1 -1
- package/bundles/primeng-picklist.umd.js +4 -6
- package/bundles/primeng-picklist.umd.js.map +1 -1
- package/bundles/primeng-progressbar.umd.js +4 -6
- package/bundles/primeng-progressbar.umd.js.map +1 -1
- package/bundles/primeng-progressspinner.umd.js +4 -6
- package/bundles/primeng-progressspinner.umd.js.map +1 -1
- package/bundles/primeng-radiobutton.umd.js +4 -6
- package/bundles/primeng-radiobutton.umd.js.map +1 -1
- package/bundles/primeng-rating.umd.js +4 -6
- package/bundles/primeng-rating.umd.js.map +1 -1
- package/bundles/primeng-ripple.umd.js +4 -6
- package/bundles/primeng-ripple.umd.js.map +1 -1
- package/bundles/primeng-scrollpanel.umd.js +4 -6
- package/bundles/primeng-scrollpanel.umd.js.map +1 -1
- package/bundles/primeng-scrolltop.umd.js +4 -6
- package/bundles/primeng-scrolltop.umd.js.map +1 -1
- package/bundles/primeng-selectbutton.umd.js +5 -7
- package/bundles/primeng-selectbutton.umd.js.map +1 -1
- package/bundles/primeng-sidebar.umd.js +10 -10
- package/bundles/primeng-sidebar.umd.js.map +1 -1
- package/bundles/primeng-skeleton.umd.js +4 -6
- package/bundles/primeng-skeleton.umd.js.map +1 -1
- package/bundles/primeng-slidemenu.umd.js +63 -10
- package/bundles/primeng-slidemenu.umd.js.map +1 -1
- package/bundles/primeng-slider.umd.js +4 -6
- package/bundles/primeng-slider.umd.js.map +1 -1
- package/bundles/primeng-speeddial.umd.js +4 -6
- package/bundles/primeng-speeddial.umd.js.map +1 -1
- package/bundles/primeng-spinner.umd.js +4 -6
- package/bundles/primeng-spinner.umd.js.map +1 -1
- package/bundles/primeng-splitbutton.umd.js +4 -6
- package/bundles/primeng-splitbutton.umd.js.map +1 -1
- package/bundles/primeng-splitter.umd.js +5 -7
- package/bundles/primeng-splitter.umd.js.map +1 -1
- package/bundles/primeng-steps.umd.js +4 -6
- package/bundles/primeng-steps.umd.js.map +1 -1
- package/bundles/primeng-styleclass.umd.js +4 -6
- package/bundles/primeng-styleclass.umd.js.map +1 -1
- package/bundles/primeng-table.umd.js +28 -32
- package/bundles/primeng-table.umd.js.map +1 -1
- package/bundles/primeng-tabmenu.umd.js +5 -7
- package/bundles/primeng-tabmenu.umd.js.map +1 -1
- package/bundles/primeng-tabview.umd.js +4 -6
- package/bundles/primeng-tabview.umd.js.map +1 -1
- package/bundles/primeng-tag.umd.js +4 -6
- package/bundles/primeng-tag.umd.js.map +1 -1
- package/bundles/primeng-terminal.umd.js +4 -6
- package/bundles/primeng-terminal.umd.js.map +1 -1
- package/bundles/primeng-tieredmenu.umd.js +4 -6
- package/bundles/primeng-tieredmenu.umd.js.map +1 -1
- package/bundles/primeng-timeline.umd.js +4 -6
- package/bundles/primeng-timeline.umd.js.map +1 -1
- package/bundles/primeng-toast.umd.js +21 -17
- package/bundles/primeng-toast.umd.js.map +1 -1
- package/bundles/primeng-togglebutton.umd.js +4 -6
- package/bundles/primeng-togglebutton.umd.js.map +1 -1
- package/bundles/primeng-toolbar.umd.js +4 -6
- package/bundles/primeng-toolbar.umd.js.map +1 -1
- package/bundles/primeng-tooltip.umd.js +5 -7
- package/bundles/primeng-tooltip.umd.js.map +1 -1
- package/bundles/primeng-tree.umd.js +5 -7
- package/bundles/primeng-tree.umd.js.map +1 -1
- package/bundles/primeng-treeselect.umd.js +12 -7
- package/bundles/primeng-treeselect.umd.js.map +1 -1
- package/bundles/primeng-treetable.umd.js +6 -8
- package/bundles/primeng-treetable.umd.js.map +1 -1
- package/bundles/primeng-tristatecheckbox.umd.js +4 -6
- package/bundles/primeng-tristatecheckbox.umd.js.map +1 -1
- package/bundles/primeng-utils.umd.js +3 -3
- package/bundles/primeng-utils.umd.js.map +1 -1
- package/bundles/primeng-virtualscroller.umd.js +4 -6
- package/bundles/primeng-virtualscroller.umd.js.map +1 -1
- package/bundles/primeng.umd.js +2 -2
- package/cascadeselect/cascadeselect.d.ts +2 -1
- package/confirmpopup/confirmpopup.d.ts +3 -1
- package/dropdown/dropdown.d.ts +3 -1
- package/esm2015/api/confirmationservice.js +2 -2
- package/esm2015/blockui/blockui.js +25 -5
- package/esm2015/breadcrumb/breadcrumb.js +1 -1
- package/esm2015/button/button.js +9 -4
- package/esm2015/cascadeselect/cascadeselect.js +29 -10
- package/esm2015/chart/chart.js +3 -2
- package/esm2015/chips/chips.js +3 -2
- package/esm2015/confirmdialog/confirmdialog.js +12 -9
- package/esm2015/confirmpopup/confirmpopup.js +19 -2
- package/esm2015/dom/domhandler.js +2 -2
- package/esm2015/dropdown/dropdown.js +21 -14
- package/esm2015/dynamicdialog/dynamicdialog-ref.js +2 -2
- package/esm2015/dynamicdialog/dynamicdialog.js +8 -5
- package/esm2015/editor/editor.js +7 -7
- package/esm2015/inputtext/inputtext.js +9 -4
- package/esm2015/listbox/listbox.js +3 -3
- package/esm2015/menu/menu.js +47 -5
- package/esm2015/multiselect/multiselect.js +5 -4
- package/esm2015/organizationchart/organizationchart.js +3 -3
- package/esm2015/paginator/paginator.js +1 -1
- package/esm2015/panelmenu/panelmenu.js +49 -18
- package/esm2015/password/password.js +17 -9
- package/esm2015/sidebar/sidebar.js +7 -5
- package/esm2015/slidemenu/slidemenu.js +76 -22
- package/esm2015/table/table.js +28 -30
- package/esm2015/tabmenu/tabmenu.js +1 -1
- package/esm2015/toast/toast.js +14 -9
- package/esm2015/tooltip/tooltip.js +2 -2
- package/esm2015/treeselect/treeselect.js +8 -1
- package/esm2015/treetable/treetable.js +2 -2
- package/fesm2015/primeng-api.js +1 -1
- package/fesm2015/primeng-api.js.map +1 -1
- package/fesm2015/primeng-blockui.js +24 -4
- package/fesm2015/primeng-blockui.js.map +1 -1
- package/fesm2015/primeng-breadcrumb.js +1 -1
- package/fesm2015/primeng-button.js +8 -3
- package/fesm2015/primeng-button.js.map +1 -1
- package/fesm2015/primeng-cascadeselect.js +28 -9
- package/fesm2015/primeng-cascadeselect.js.map +1 -1
- package/fesm2015/primeng-chart.js +2 -1
- package/fesm2015/primeng-chart.js.map +1 -1
- package/fesm2015/primeng-chips.js +2 -1
- package/fesm2015/primeng-chips.js.map +1 -1
- package/fesm2015/primeng-confirmdialog.js +11 -8
- package/fesm2015/primeng-confirmdialog.js.map +1 -1
- package/fesm2015/primeng-confirmpopup.js +18 -1
- package/fesm2015/primeng-confirmpopup.js.map +1 -1
- package/fesm2015/primeng-dom.js +1 -1
- package/fesm2015/primeng-dom.js.map +1 -1
- package/fesm2015/primeng-dropdown.js +20 -13
- package/fesm2015/primeng-dropdown.js.map +1 -1
- package/fesm2015/primeng-dynamicdialog.js +8 -5
- package/fesm2015/primeng-dynamicdialog.js.map +1 -1
- package/fesm2015/primeng-editor.js +6 -6
- package/fesm2015/primeng-editor.js.map +1 -1
- package/fesm2015/primeng-inputtext.js +8 -3
- package/fesm2015/primeng-inputtext.js.map +1 -1
- package/fesm2015/primeng-listbox.js +2 -2
- package/fesm2015/primeng-listbox.js.map +1 -1
- package/fesm2015/primeng-menu.js +46 -4
- package/fesm2015/primeng-menu.js.map +1 -1
- package/fesm2015/primeng-multiselect.js +4 -3
- package/fesm2015/primeng-multiselect.js.map +1 -1
- package/fesm2015/primeng-organizationchart.js +2 -2
- package/fesm2015/primeng-organizationchart.js.map +1 -1
- package/fesm2015/primeng-paginator.js +1 -1
- package/fesm2015/primeng-panelmenu.js +48 -17
- package/fesm2015/primeng-panelmenu.js.map +1 -1
- package/fesm2015/primeng-password.js +16 -8
- package/fesm2015/primeng-password.js.map +1 -1
- package/fesm2015/primeng-sidebar.js +6 -4
- package/fesm2015/primeng-sidebar.js.map +1 -1
- package/fesm2015/primeng-slidemenu.js +76 -22
- package/fesm2015/primeng-slidemenu.js.map +1 -1
- package/fesm2015/primeng-table.js +27 -29
- package/fesm2015/primeng-table.js.map +1 -1
- package/fesm2015/primeng-tabmenu.js +1 -1
- package/fesm2015/primeng-toast.js +13 -8
- package/fesm2015/primeng-toast.js.map +1 -1
- package/fesm2015/primeng-tooltip.js +1 -1
- package/fesm2015/primeng-tooltip.js.map +1 -1
- package/fesm2015/primeng-treeselect.js +7 -0
- package/fesm2015/primeng-treeselect.js.map +1 -1
- package/fesm2015/primeng-treetable.js +1 -1
- package/fesm2015/primeng-treetable.js.map +1 -1
- package/inputtext/inputtext.d.ts +6 -4
- package/menu/menu.d.ts +3 -0
- package/package.json +2 -2
- package/panelmenu/panelmenu.d.ts +4 -1
- package/password/password.d.ts +6 -4
- package/resources/components/breadcrumb/breadcrumb.css +4 -0
- package/resources/components/radiobutton/radiobutton.css +2 -1
- package/resources/components/tabmenu/tabmenu.css +4 -0
- package/resources/primeng.css +2 -0
- package/resources/primeng.min.css +1 -1
- package/resources/themes/arya-blue/theme.css +4 -2
- package/resources/themes/arya-green/theme.css +4 -2
- package/resources/themes/arya-orange/theme.css +4 -2
- package/resources/themes/arya-purple/theme.css +4 -2
- package/resources/themes/bootstrap4-dark-blue/theme.css +4 -2
- package/resources/themes/bootstrap4-dark-purple/theme.css +4 -2
- package/resources/themes/bootstrap4-light-blue/theme.css +4 -2
- package/resources/themes/bootstrap4-light-purple/theme.css +4 -2
- package/resources/themes/fluent-light/theme.css +4 -2
- package/resources/themes/luna-amber/theme.css +4 -2
- package/resources/themes/luna-blue/theme.css +4 -2
- package/resources/themes/luna-green/theme.css +4 -2
- package/resources/themes/luna-pink/theme.css +4 -2
- package/resources/themes/md-dark-deeppurple/theme.css +191 -30
- package/resources/themes/md-dark-indigo/theme.css +191 -30
- package/resources/themes/md-light-deeppurple/theme.css +191 -30
- package/resources/themes/md-light-indigo/theme.css +191 -30
- package/resources/themes/mdc-dark-deeppurple/theme.css +191 -30
- package/resources/themes/mdc-dark-indigo/theme.css +191 -30
- package/resources/themes/mdc-light-deeppurple/theme.css +191 -30
- package/resources/themes/mdc-light-indigo/theme.css +191 -30
- package/resources/themes/nova/theme.css +4 -2
- package/resources/themes/nova-accent/theme.css +4 -2
- package/resources/themes/nova-alt/theme.css +4 -2
- package/resources/themes/rhea/theme.css +4 -2
- package/resources/themes/saga-blue/theme.css +4 -2
- package/resources/themes/saga-green/theme.css +4 -2
- package/resources/themes/saga-orange/theme.css +4 -2
- package/resources/themes/saga-purple/theme.css +4 -2
- package/resources/themes/tailwind-light/theme.css +3 -2
- package/resources/themes/vela-blue/theme.css +4 -2
- package/resources/themes/vela-green/theme.css +4 -2
- package/resources/themes/vela-orange/theme.css +4 -2
- package/resources/themes/vela-purple/theme.css +4 -2
- package/slidemenu/slidemenu.d.ts +7 -0
- package/toast/toast.d.ts +1 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-dynamicdialog.js","sources":["../../src/app/components/dynamicdialog/dynamicdialogcontent.ts","../../src/app/components/dynamicdialog/dynamicdialog-config.ts","../../src/app/components/dynamicdialog/dynamicdialog-ref.ts","../../src/app/components/dynamicdialog/dynamicdialog.ts","../../src/app/components/dynamicdialog/dynamicdialog-injector.ts","../../src/app/components/dynamicdialog/dialogservice.ts","../../src/app/components/dynamicdialog/primeng-dynamicdialog.ts"],"sourcesContent":["import { Directive, ViewContainerRef } from '@angular/core';\n\n@Directive({\n selector: '[pDynamicDialogContent]',\n host: {\n 'class': 'p-element'\n }\n})\nexport class DynamicDialogContent {\n\n\tconstructor(public viewContainerRef: ViewContainerRef) {}\n\n}\n","export class DynamicDialogConfig {\r\n\tdata?: any;\r\n\theader?: string;\r\n\tfooter?: string;\r\n\twidth?: string;\r\n\theight?: string;\r\n\tcloseOnEscape?: boolean;\r\n\tbaseZIndex?: number;\r\n\tautoZIndex?: boolean;\r\n\tdismissableMask?: boolean;\r\n\trtl?: boolean;\r\n\tstyle?: any;\r\n\tcontentStyle?: any;\r\n\tstyleClass?: string;\r\n\ttransitionOptions?: string;\r\n\tclosable?: boolean;\r\n\tshowHeader?: boolean;\r\n\tmodal?: boolean;\r\n}\r\n","import { Observable, Subject } from 'rxjs';\r\n\r\nexport class DynamicDialogRef {\r\n\tconstructor() { }\r\n\r\n\tclose(result?: any) {\r\n\t\tthis._onClose.next(result);\r\n }\r\n \r\n destroy() {\r\n\t\tthis._onDestroy.next();\r\n\t}\r\n\r\n\tprivate readonly _onClose = new Subject<any>();\r\n onClose: Observable<any> = this._onClose.asObservable();\r\n\r\n private readonly _onDestroy = new Subject<any>();\r\n\tonDestroy: Observable<any> = this._onDestroy.asObservable();\r\n}\r\n","import { Component, NgModule, Type, ComponentFactoryResolver, ViewChild, OnDestroy, ComponentRef, AfterViewInit, ChangeDetectorRef, Renderer2, NgZone, ElementRef, ChangeDetectionStrategy, ViewRef, ViewEncapsulation } from '@angular/core';\nimport { trigger,style,transition,animate,AnimationEvent, animation, useAnimation } from '@angular/animations';\nimport { DynamicDialogContent } from './dynamicdialogcontent';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { PrimeNGConfig } from 'primeng/api';\n\nconst showAnimation = animation([\n style({ transform: '{{transform}}', opacity: 0 }),\n animate('{{transition}}', style({ transform: 'none', opacity: 1 }))\n]);\n\nconst hideAnimation = animation([\n animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))\n]);\n\n@Component({\n\tselector: 'p-dynamicDialog',\n\ttemplate: `\n <div #mask [ngClass]=\"{'p-dialog-mask':true, 'p-component-overlay p-dialog-mask-scrollblocker': config.modal !== false}\">\n <div [ngClass]=\"{'p-dialog p-dynamic-dialog p-component':true, 'p-dialog-rtl': config.rtl}\" [ngStyle]=\"config.style\" [class]=\"config.styleClass\"\n [@animation]=\"{value: 'visible', params: {transform: transformOptions, transition: config.transitionOptions || '150ms cubic-bezier(0, 0, 0.2, 1)'}}\"\n (@animation.start)=\"onAnimationStart($event)\" (@animation.done)=\"onAnimationEnd($event)\" role=\"dialog\" *ngIf=\"visible\"\n [style.width]=\"config.width\" [style.height]=\"config.height\">\n <div class=\"p-dialog-header\" *ngIf=\"config.showHeader === false ? false: true\">\n <span class=\"p-dialog-title\">{{config.header}}</span>\n <div class=\"p-dialog-header-icons\">\n <button [ngClass]=\"'p-dialog-header-icon p-dialog-header-maximize p-link'\" type=\"button\" (click)=\"hide()\" (keydown.enter)=\"hide()\" *ngIf=\"config.closable !== false\">\n <span class=\"p-dialog-header-close-icon pi pi-times\"></span>\n </button>\n </div>\n </div>\n <div class=\"p-dialog-content\" [ngStyle]=\"config.contentStyle\">\n <ng-template pDynamicDialogContent></ng-template>\n </div>\n <div class=\"p-dialog-footer\" *ngIf=\"config.footer\">\n {{config.footer}}\n </div>\n </div>\n </div>\n\t`,\n\tanimations: [\n trigger('animation', [\n transition('void => visible', [\n useAnimation(showAnimation)\n ]),\n transition('visible => void', [\n useAnimation(hideAnimation)\n ])\n ])\n ],\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['../dialog/dialog.css'],\n host: {\n 'class': 'p-element'\n }\n})\nexport class DynamicDialogComponent implements AfterViewInit, OnDestroy {\n\n\tvisible: boolean = true;\n\n\tcomponentRef: ComponentRef<any>;\n\n\tmask: HTMLDivElement;\n\n\t@ViewChild(DynamicDialogContent) insertionPoint: DynamicDialogContent;\n\n\t@ViewChild('mask') maskViewChild: ElementRef;\n\n\tchildComponentType: Type<any>;\n\n container: HTMLDivElement;\n\n wrapper: HTMLElement;\n\n documentKeydownListener: any;\n\n documentEscapeListener: Function;\n\n maskClickListener: Function;\n\n transformOptions: string = \"scale(0.7)\";\n\n\tconstructor(private componentFactoryResolver: ComponentFactoryResolver, private cd: ChangeDetectorRef, public renderer: Renderer2,\n\t\t\tpublic config: DynamicDialogConfig, private dialogRef: DynamicDialogRef, public zone: NgZone, public primeNGConfig: PrimeNGConfig) { }\n\n\tngAfterViewInit() {\n\t\tthis.loadChildComponent(this.childComponentType);\n\t\tthis.cd.detectChanges();\n\t}\n\n\tloadChildComponent(componentType: Type<any>) {\n\t\tlet componentFactory = this.componentFactoryResolver.resolveComponentFactory(componentType);\n\n\t\tlet viewContainerRef = this.insertionPoint.viewContainerRef;\n\t\tviewContainerRef.clear();\n\n\t\tthis.componentRef = viewContainerRef.createComponent(componentFactory);\n\t}\n\n\tmoveOnTop() {\n if (this.config.autoZIndex !== false) {\n ZIndexUtils.set('modal', this.container, (this.config.baseZIndex||0) + this.primeNGConfig.zIndex.modal);\n this.wrapper.style.zIndex = String(parseInt(this.container.style.zIndex, 10) - 1);\n\t\t}\n }\n\n\tonAnimationStart(event: AnimationEvent) {\n\t\tswitch(event.toState) {\n\t\t\tcase 'visible':\n this.container = event.element;\n this.wrapper = this.container.parentElement;\n\t\t\t\tthis.moveOnTop();\n this.bindGlobalListeners();\n\n if (this.config.modal !== false) {\n this.enableModality();\n }\n this.focus();\n\t\t\tbreak;\n\n\t\t\tcase 'void':\n\t\t\t\tthis.onContainerDestroy();\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tonAnimationEnd(event: AnimationEvent) {\n\t\tif (event.toState === 'void') {\n\t\t\tthis.dialogRef.destroy();\n\t\t}\n\t}\n\n\tonContainerDestroy() {\n\t\tthis.unbindGlobalListeners();\n\n if (this.container && this.config.autoZIndex !== false) {\n ZIndexUtils.clear(this.container);\n }\n\n if (this.config.modal !== false) {\n this.disableModality();\n }\n this.container = null;\n\t}\n\n\tclose() {\n this.visible = false;\n this.cd.markForCheck();\n\t}\n\n hide() {\n if (this.dialogRef) {\n this.dialogRef.close();\n }\n }\n\n enableModality() {\n if (this.config.closable !== false && this.config.dismissableMask) {\n this.maskClickListener = this.renderer.listen(this.wrapper, 'mousedown', (event: any) => {\n if (this.wrapper && this.wrapper.isSameNode(event.target)) {\n this.hide();\n }\n });\n }\n\n if (this.config.modal !== false) {\n DomHandler.addClass(document.body, 'p-overflow-hidden');\n }\n }\n\n disableModality() {\n if (this.wrapper) {\n if (this.config.dismissableMask) {\n this.unbindMaskClickListener();\n }\n\n if (this.config.modal !== false) {\n DomHandler.removeClass(document.body, 'p-overflow-hidden');\n }\n\n if (!(this.cd as ViewRef).destroyed) {\n this.cd.detectChanges();\n }\n }\n }\n\n onKeydown(event: KeyboardEvent) {\n if (event.which === 9) {\n event.preventDefault();\n\n let focusableElements = DomHandler.getFocusableElements(this.container);\n\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n }\n else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0)\n focusableElements[focusableElements.length - 1].focus();\n else\n focusableElements[focusedIndex - 1].focus();\n }\n else {\n if (focusedIndex == -1 || focusedIndex === (focusableElements.length - 1))\n focusableElements[0].focus();\n else\n focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n }\n\n focus() {\n let focusable = DomHandler.findSingle(this.container, '[autofocus]');\n if (focusable) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusable.focus(), 5);\n });\n }\n }\n\n\tbindGlobalListeners() {\n this.bindDocumentKeydownListener();\n\n if (this.config.closeOnEscape !== false && this.config.closable !== false) {\n this.bindDocumentEscapeListener();\n }\n }\n\n unbindGlobalListeners() {\n this.unbindDocumentKeydownListener();\n this.unbindDocumentEscapeListener();\n }\n\n bindDocumentKeydownListener() {\n this.zone.runOutsideAngular(() => {\n this.documentKeydownListener = this.onKeydown.bind(this);\n window.document.addEventListener('keydown', this.documentKeydownListener);\n });\n }\n\n unbindDocumentKeydownListener() {\n if (this.documentKeydownListener) {\n window.document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n }\n\n\tbindDocumentEscapeListener() {\n const documentTarget: any = this.maskViewChild ? this.maskViewChild.nativeElement.ownerDocument : 'document';\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt(this.container.style.zIndex) == (DomHandler.zindex + (this.config.baseZIndex ? this.config.baseZIndex : 0))) {\n\t\t\t\t\tthis.hide();\n\t\t\t\t}\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\tngOnDestroy() {\n\t\tthis.onContainerDestroy();\n\n\t\tif (this.componentRef) {\n\t\t\tthis.componentRef.destroy();\n\t\t}\n\t}\n}\n\n@NgModule({\n\timports: [CommonModule],\n\tdeclarations: [DynamicDialogComponent, DynamicDialogContent],\n\tentryComponents: [DynamicDialogComponent]\n})\nexport class DynamicDialogModule { }\n","import { Injector, Type, InjectionToken, InjectFlags } from '@angular/core';\r\n\r\nexport class DynamicDialogInjector implements Injector {\r\n\t\r\n\tconstructor(private _parentInjector: Injector, private _additionalTokens: WeakMap<any, any>) { }\r\n\r\n\tget<T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags): T;\r\n\tget(token: any, notFoundValue?: any);\r\n\tget(token: any, notFoundValue?: any, flags?: any) {\r\n\t\tconst value = this._additionalTokens.get(token);\r\n\r\n\t\tif (value) return value;\r\n\r\n\t\treturn this._parentInjector.get<any>(token, notFoundValue);\r\n\t}\r\n}\r\n","import { Injectable, ComponentFactoryResolver, ApplicationRef, Injector, Type, EmbeddedViewRef, ComponentRef } from '@angular/core';\nimport { DynamicDialogComponent } from './dynamicdialog';\nimport { DynamicDialogInjector } from './dynamicdialog-injector';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\n\n@Injectable()\nexport class DialogService {\n\n dialogComponentRefMap: Map<DynamicDialogRef, ComponentRef<DynamicDialogComponent>> = new Map();\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, private appRef: ApplicationRef, private injector: Injector) {\n }\n\n public open(componentType: Type<any>, config: DynamicDialogConfig) {\n const dialogRef = this.appendDialogComponentToBody(config);\n\n this.dialogComponentRefMap.get(dialogRef).instance.childComponentType = componentType;\n\n return dialogRef;\n }\n\n private appendDialogComponentToBody(config: DynamicDialogConfig) {\n const map = new WeakMap();\n map.set(DynamicDialogConfig, config);\n\n const dialogRef = new DynamicDialogRef();\n map.set(DynamicDialogRef, dialogRef);\n\n const sub = dialogRef.onClose.subscribe(() => {\n this.dialogComponentRefMap.get(dialogRef).instance.close();\n });\n\n const destroySub = dialogRef.onDestroy.subscribe(() => {\n this.removeDialogComponentFromBody(dialogRef);\n destroySub.unsubscribe();\n sub.unsubscribe();\n });\n\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(DynamicDialogComponent);\n const componentRef = componentFactory.create(new DynamicDialogInjector(this.injector, map));\n\n this.appRef.attachView(componentRef.hostView);\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n document.body.appendChild(domElem);\n\n this.dialogComponentRefMap.set(dialogRef, componentRef);\n\n return dialogRef;\n }\n\n private removeDialogComponentFromBody(dialogRef: DynamicDialogRef) {\n if (!dialogRef || !this.dialogComponentRefMap.has(dialogRef)) {\n return;\n }\n\n const dialogComponentRef = this.dialogComponentRefMap.get(dialogRef);\n this.appRef.detachView(dialogComponentRef.hostView);\n dialogComponentRef.destroy();\n this.dialogComponentRefMap.delete(dialogRef);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-dynamicdialog.js","sources":["../../src/app/components/dynamicdialog/dynamicdialogcontent.ts","../../src/app/components/dynamicdialog/dynamicdialog-config.ts","../../src/app/components/dynamicdialog/dynamicdialog-ref.ts","../../src/app/components/dynamicdialog/dynamicdialog.ts","../../src/app/components/dynamicdialog/dynamicdialog-injector.ts","../../src/app/components/dynamicdialog/dialogservice.ts","../../src/app/components/dynamicdialog/primeng-dynamicdialog.ts"],"sourcesContent":["import { Directive, ViewContainerRef } from '@angular/core';\n\n@Directive({\n selector: '[pDynamicDialogContent]',\n host: {\n 'class': 'p-element'\n }\n})\nexport class DynamicDialogContent {\n\n\tconstructor(public viewContainerRef: ViewContainerRef) {}\n\n}\n","export class DynamicDialogConfig {\r\n\tdata?: any;\r\n\theader?: string;\r\n\tfooter?: string;\r\n\twidth?: string;\r\n\theight?: string;\r\n\tcloseOnEscape?: boolean;\r\n\tbaseZIndex?: number;\r\n\tautoZIndex?: boolean;\r\n\tdismissableMask?: boolean;\r\n\trtl?: boolean;\r\n\tstyle?: any;\r\n\tcontentStyle?: any;\r\n\tstyleClass?: string;\r\n\ttransitionOptions?: string;\r\n\tclosable?: boolean;\r\n\tshowHeader?: boolean;\r\n\tmodal?: boolean;\r\n}\r\n","import { Observable, Subject } from 'rxjs';\r\n\r\nexport class DynamicDialogRef {\r\n\tconstructor() { }\r\n\r\n\tclose(result?: any) {\r\n\t\tthis._onClose.next(result);\r\n }\r\n\r\n destroy() {\r\n\t\tthis._onDestroy.next(null);\r\n\t}\r\n\r\n\tprivate readonly _onClose = new Subject<any>();\r\n onClose: Observable<any> = this._onClose.asObservable();\r\n\r\n private readonly _onDestroy = new Subject<any>();\r\n\tonDestroy: Observable<any> = this._onDestroy.asObservable();\r\n}\r\n","import { Component, NgModule, Type, ComponentFactoryResolver, ViewChild, OnDestroy, ComponentRef, AfterViewInit, ChangeDetectorRef, Renderer2, NgZone, ElementRef, ChangeDetectionStrategy, ViewRef, ViewEncapsulation } from '@angular/core';\nimport { trigger,style,transition,animate,AnimationEvent, animation, useAnimation } from '@angular/animations';\nimport { DynamicDialogContent } from './dynamicdialogcontent';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { PrimeNGConfig } from 'primeng/api';\n\nconst showAnimation = animation([\n style({ transform: '{{transform}}', opacity: 0 }),\n animate('{{transition}}', style({ transform: 'none', opacity: 1 }))\n]);\n\nconst hideAnimation = animation([\n animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))\n]);\n\n@Component({\n\tselector: 'p-dynamicDialog',\n\ttemplate: `\n <div #mask [ngClass]=\"{'p-dialog-mask':true, 'p-component-overlay-enter p-dialog-mask-scrollblocker': config.modal !== false}\">\n <div [ngClass]=\"{'p-dialog p-dynamic-dialog p-component':true, 'p-dialog-rtl': config.rtl}\" [ngStyle]=\"config.style\" [class]=\"config.styleClass\"\n [@animation]=\"{value: 'visible', params: {transform: transformOptions, transition: config.transitionOptions || '150ms cubic-bezier(0, 0, 0.2, 1)'}}\"\n (@animation.start)=\"onAnimationStart($event)\" (@animation.done)=\"onAnimationEnd($event)\" role=\"dialog\" *ngIf=\"visible\"\n [style.width]=\"config.width\" [style.height]=\"config.height\">\n <div class=\"p-dialog-header\" *ngIf=\"config.showHeader === false ? false: true\">\n <span class=\"p-dialog-title\">{{config.header}}</span>\n <div class=\"p-dialog-header-icons\">\n <button [ngClass]=\"'p-dialog-header-icon p-dialog-header-maximize p-link'\" type=\"button\" (click)=\"hide()\" (keydown.enter)=\"hide()\" *ngIf=\"config.closable !== false\">\n <span class=\"p-dialog-header-close-icon pi pi-times\"></span>\n </button>\n </div>\n </div>\n <div class=\"p-dialog-content\" [ngStyle]=\"config.contentStyle\">\n <ng-template pDynamicDialogContent></ng-template>\n </div>\n <div class=\"p-dialog-footer\" *ngIf=\"config.footer\">\n {{config.footer}}\n </div>\n </div>\n </div>\n\t`,\n\tanimations: [\n trigger('animation', [\n transition('void => visible', [\n useAnimation(showAnimation)\n ]),\n transition('visible => void', [\n useAnimation(hideAnimation)\n ])\n ])\n ],\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['../dialog/dialog.css'],\n host: {\n 'class': 'p-element'\n }\n})\nexport class DynamicDialogComponent implements AfterViewInit, OnDestroy {\n\n\tvisible: boolean = true;\n\n\tcomponentRef: ComponentRef<any>;\n\n\tmask: HTMLDivElement;\n\n\t@ViewChild(DynamicDialogContent) insertionPoint: DynamicDialogContent;\n\n\t@ViewChild('mask') maskViewChild: ElementRef;\n\n\tchildComponentType: Type<any>;\n\n container: HTMLDivElement;\n\n wrapper: HTMLElement;\n\n documentKeydownListener: any;\n\n documentEscapeListener: Function;\n\n maskClickListener: Function;\n\n transformOptions: string = \"scale(0.7)\";\n\n\tconstructor(private componentFactoryResolver: ComponentFactoryResolver, private cd: ChangeDetectorRef, public renderer: Renderer2,\n\t\t\tpublic config: DynamicDialogConfig, private dialogRef: DynamicDialogRef, public zone: NgZone, public primeNGConfig: PrimeNGConfig) { }\n\n\tngAfterViewInit() {\n\t\tthis.loadChildComponent(this.childComponentType);\n\t\tthis.cd.detectChanges();\n\t}\n\n\tloadChildComponent(componentType: Type<any>) {\n\t\tlet componentFactory = this.componentFactoryResolver.resolveComponentFactory(componentType);\n\n\t\tlet viewContainerRef = this.insertionPoint.viewContainerRef;\n\t\tviewContainerRef.clear();\n\n\t\tthis.componentRef = viewContainerRef.createComponent(componentFactory);\n\t}\n\n\tmoveOnTop() {\n if (this.config.autoZIndex !== false) {\n ZIndexUtils.set('modal', this.container, (this.config.baseZIndex||0) + this.primeNGConfig.zIndex.modal);\n this.wrapper.style.zIndex = String(parseInt(this.container.style.zIndex, 10) - 1);\n\t\t}\n }\n\n\tonAnimationStart(event: AnimationEvent) {\n\t\tswitch(event.toState) {\n\t\t\tcase 'visible':\n this.container = event.element;\n this.wrapper = this.container.parentElement;\n\t\t\t\tthis.moveOnTop();\n this.bindGlobalListeners();\n\n if (this.config.modal !== false) {\n this.enableModality();\n }\n this.focus();\n\t\t\tbreak;\n\n\t\t\tcase 'void':\n if (this.config.modal !== false) {\n DomHandler.addClass(this.wrapper, 'p-component-overlay-leave');\n }\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tonAnimationEnd(event: AnimationEvent) {\n\t\tif (event.toState === 'void') {\n this.onContainerDestroy();\n\t\t\tthis.dialogRef.destroy();\n\t\t}\n\t}\n\n\tonContainerDestroy() {\n\t\tthis.unbindGlobalListeners();\n\n if (this.container && this.config.autoZIndex !== false) {\n ZIndexUtils.clear(this.container);\n }\n\n if (this.config.modal !== false) {\n this.disableModality();\n }\n this.container = null;\n\t}\n\n\tclose() {\n this.visible = false;\n this.cd.markForCheck();\n\t}\n\n hide() {\n if (this.dialogRef) {\n this.dialogRef.close();\n }\n }\n\n enableModality() {\n if (this.config.closable !== false && this.config.dismissableMask) {\n this.maskClickListener = this.renderer.listen(this.wrapper, 'mousedown', (event: any) => {\n if (this.wrapper && this.wrapper.isSameNode(event.target)) {\n this.hide();\n }\n });\n }\n\n if (this.config.modal !== false) {\n DomHandler.addClass(document.body, 'p-overflow-hidden');\n }\n }\n\n disableModality() {\n if (this.wrapper) {\n if (this.config.dismissableMask) {\n this.unbindMaskClickListener();\n }\n\n if (this.config.modal !== false) {\n DomHandler.removeClass(document.body, 'p-overflow-hidden');\n }\n\n if (!(this.cd as ViewRef).destroyed) {\n this.cd.detectChanges();\n }\n }\n }\n\n onKeydown(event: KeyboardEvent) {\n if (event.which === 9) {\n event.preventDefault();\n\n let focusableElements = DomHandler.getFocusableElements(this.container);\n\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n }\n else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0)\n focusableElements[focusableElements.length - 1].focus();\n else\n focusableElements[focusedIndex - 1].focus();\n }\n else {\n if (focusedIndex == -1 || focusedIndex === (focusableElements.length - 1))\n focusableElements[0].focus();\n else\n focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n }\n\n focus() {\n let focusable = DomHandler.findSingle(this.container, '[autofocus]');\n if (focusable) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusable.focus(), 5);\n });\n }\n }\n\n\tbindGlobalListeners() {\n this.bindDocumentKeydownListener();\n\n if (this.config.closeOnEscape !== false && this.config.closable !== false) {\n this.bindDocumentEscapeListener();\n }\n }\n\n unbindGlobalListeners() {\n this.unbindDocumentKeydownListener();\n this.unbindDocumentEscapeListener();\n }\n\n bindDocumentKeydownListener() {\n this.zone.runOutsideAngular(() => {\n this.documentKeydownListener = this.onKeydown.bind(this);\n window.document.addEventListener('keydown', this.documentKeydownListener);\n });\n }\n\n unbindDocumentKeydownListener() {\n if (this.documentKeydownListener) {\n window.document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n }\n\n\tbindDocumentEscapeListener() {\n const documentTarget: any = this.maskViewChild ? this.maskViewChild.nativeElement.ownerDocument : 'document';\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt(this.container.style.zIndex) == ZIndexUtils.getCurrent()) {\n\t\t\t\t\tthis.hide();\n\t\t\t\t}\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\tngOnDestroy() {\n\t\tthis.onContainerDestroy();\n\n\t\tif (this.componentRef) {\n\t\t\tthis.componentRef.destroy();\n\t\t}\n\t}\n}\n\n@NgModule({\n\timports: [CommonModule],\n\tdeclarations: [DynamicDialogComponent, DynamicDialogContent],\n\tentryComponents: [DynamicDialogComponent]\n})\nexport class DynamicDialogModule { }\n","import { Injector, Type, InjectionToken, InjectFlags } from '@angular/core';\r\n\r\nexport class DynamicDialogInjector implements Injector {\r\n\t\r\n\tconstructor(private _parentInjector: Injector, private _additionalTokens: WeakMap<any, any>) { }\r\n\r\n\tget<T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags): T;\r\n\tget(token: any, notFoundValue?: any);\r\n\tget(token: any, notFoundValue?: any, flags?: any) {\r\n\t\tconst value = this._additionalTokens.get(token);\r\n\r\n\t\tif (value) return value;\r\n\r\n\t\treturn this._parentInjector.get<any>(token, notFoundValue);\r\n\t}\r\n}\r\n","import { Injectable, ComponentFactoryResolver, ApplicationRef, Injector, Type, EmbeddedViewRef, ComponentRef } from '@angular/core';\nimport { DynamicDialogComponent } from './dynamicdialog';\nimport { DynamicDialogInjector } from './dynamicdialog-injector';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\n\n@Injectable()\nexport class DialogService {\n\n dialogComponentRefMap: Map<DynamicDialogRef, ComponentRef<DynamicDialogComponent>> = new Map();\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, private appRef: ApplicationRef, private injector: Injector) {\n }\n\n public open(componentType: Type<any>, config: DynamicDialogConfig) {\n const dialogRef = this.appendDialogComponentToBody(config);\n\n this.dialogComponentRefMap.get(dialogRef).instance.childComponentType = componentType;\n\n return dialogRef;\n }\n\n private appendDialogComponentToBody(config: DynamicDialogConfig) {\n const map = new WeakMap();\n map.set(DynamicDialogConfig, config);\n\n const dialogRef = new DynamicDialogRef();\n map.set(DynamicDialogRef, dialogRef);\n\n const sub = dialogRef.onClose.subscribe(() => {\n this.dialogComponentRefMap.get(dialogRef).instance.close();\n });\n\n const destroySub = dialogRef.onDestroy.subscribe(() => {\n this.removeDialogComponentFromBody(dialogRef);\n destroySub.unsubscribe();\n sub.unsubscribe();\n });\n\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(DynamicDialogComponent);\n const componentRef = componentFactory.create(new DynamicDialogInjector(this.injector, map));\n\n this.appRef.attachView(componentRef.hostView);\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n document.body.appendChild(domElem);\n\n this.dialogComponentRefMap.set(dialogRef, componentRef);\n\n return dialogRef;\n }\n\n private removeDialogComponentFromBody(dialogRef: DynamicDialogRef) {\n if (!dialogRef || !this.dialogComponentRefMap.has(dialogRef)) {\n return;\n }\n\n const dialogComponentRef = this.dialogComponentRefMap.get(dialogRef);\n this.appRef.detachView(dialogComponentRef.hostView);\n dialogComponentRef.destroy();\n this.dialogComponentRefMap.delete(dialogRef);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;MAQa,oBAAoB;IAEhC,YAAmB,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;KAAI;;iHAF7C,oBAAoB;qGAApB,oBAAoB;2FAApB,oBAAoB;kBANhC,SAAS;mBAAC;oBACT,QAAQ,EAAE,yBAAyB;oBACnC,IAAI,EAAE;wBACJ,OAAO,EAAE,WAAW;qBACrB;iBACF;;;MCPY,mBAAmB;;;MCEnB,gBAAgB;IAC5B;QAUiB,aAAQ,GAAG,IAAI,OAAO,EAAO,CAAC;QAC5C,YAAO,GAAoB,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QAEvC,eAAU,GAAG,IAAI,OAAO,EAAO,CAAC;QACpD,cAAS,GAAoB,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;KAd3C;IAEjB,KAAK,CAAC,MAAY;QACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACxB;IAED,OAAO;QACT,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3B;;;ACDF,MAAM,aAAa,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACjD,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CACtE,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,SAAS,CAAC;IAC5B,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;CAC/E,CAAC,CAAC;MA4CU,sBAAsB;IA0BlC,YAAoB,wBAAkD,EAAU,EAAqB,EAAS,QAAmB,EACxH,MAA2B,EAAU,SAA2B,EAAS,IAAY,EAAS,aAA4B;QAD/G,6BAAwB,GAAxB,wBAAwB,CAA0B;QAAU,OAAE,GAAF,EAAE,CAAmB;QAAS,aAAQ,GAAR,QAAQ,CAAW;QACxH,WAAM,GAAN,MAAM,CAAqB;QAAU,cAAS,GAAT,SAAS,CAAkB;QAAS,SAAI,GAAJ,IAAI,CAAQ;QAAS,kBAAa,GAAb,aAAa,CAAe;QAzBnI,YAAO,GAAY,IAAI,CAAC;QAsBrB,qBAAgB,GAAW,YAAY,CAAC;KAG6F;IAExI,eAAe;QACd,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;KACxB;IAED,kBAAkB,CAAC,aAAwB;QAC1C,IAAI,gBAAgB,GAAG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAE5F,IAAI,gBAAgB,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC;QAC5D,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAEzB,IAAI,CAAC,YAAY,GAAG,gBAAgB,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;KACvE;IAED,SAAS;QACF,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,KAAK,EAAE;YAClC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,IAAE,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;SAC3F;KACE;IAEJ,gBAAgB,CAAC,KAAqB;QACrC,QAAO,KAAK,CAAC,OAAO;YACnB,KAAK,SAAS;gBACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;gBACxD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACL,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAE3B,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE;oBAC7B,IAAI,CAAC,cAAc,EAAE,CAAC;iBACzB;gBACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC1B,MAAM;YAEN,KAAK,MAAM;gBACE,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE;oBAC7B,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;iBAClE;gBACd,MAAM;SACN;KACD;IAED,cAAc,CAAC,KAAqB;QACnC,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE;YACpB,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;SACzB;KACD;IAED,kBAAkB;QACjB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,KAAK,EAAE;YACpD,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE;YAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;SAC1B;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;KAC5B;IAED,KAAK;QACE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;KAC7B;IAEE,IAAI;QACA,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;SAC1B;KACJ;IAED,cAAc;QACV,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;YAC/D,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,KAAU;gBAChF,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;oBACvD,IAAI,CAAC,IAAI,EAAE,CAAC;iBACf;aACJ,CAAC,CAAC;SACN;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE;YAC7B,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;SAC3D;KACJ;IAED,eAAe;QACX,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE;gBAC7B,IAAI,CAAC,uBAAuB,EAAE,CAAC;aAClC;YAED,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE;gBAC7B,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;aAC9D;YAED,IAAI,CAAE,IAAI,CAAC,EAAc,CAAC,SAAS,EAAE;gBACjC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;aAC3B;SACJ;KACJ;IAED,SAAS,CAAC,KAAoB;QAC1B,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,EAAE;YACnB,KAAK,CAAC,cAAc,EAAE,CAAC;YAEvB,IAAI,iBAAiB,GAAG,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAExE,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnD,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,EAAE;oBACnD,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;iBAChC;qBACI;oBACD,IAAI,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC;oBAE/F,IAAI,KAAK,CAAC,QAAQ,EAAE;wBAChB,IAAI,YAAY,IAAI,CAAC,CAAC,IAAI,YAAY,KAAK,CAAC;4BACxC,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;;4BAExD,iBAAiB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;qBACnD;yBACI;wBACD,IAAI,YAAY,IAAI,CAAC,CAAC,IAAI,YAAY,MAAM,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;4BACrE,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;;4BAE7B,iBAAiB,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;qBACnD;iBACJ;aACJ;SACJ;KACJ;IAED,KAAK;QACD,IAAI,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACrE,IAAI,SAAS,EAAE;YACX,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;gBACxB,UAAU,CAAC,MAAM,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;aAC1C,CAAC,CAAC;SACN;KACJ;IAEJ,mBAAmB;QACZ,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAEnC,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,KAAK,EAAE;YACvE,IAAI,CAAC,0BAA0B,EAAE,CAAC;SACrC;KACJ;IAED,qBAAqB;QACjB,IAAI,CAAC,6BAA6B,EAAE,CAAC;QACrC,IAAI,CAAC,4BAA4B,EAAE,CAAC;KACvC;IAED,2BAA2B;QACvB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;YACxB,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzD,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;SAC7E,CAAC,CAAC;KACN;IAED,6BAA6B;QACzB,IAAI,IAAI,CAAC,uBAAuB,EAAE;YAC9B,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC7E,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;SACvC;KACJ;IAEJ,0BAA0B;QACnB,MAAM,cAAc,GAAQ,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,aAAa,GAAG,UAAU,CAAC;QAE7G,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC,KAAK;YAChF,IAAI,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE;gBACnB,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,EAAE;oBAClF,IAAI,CAAC,IAAI,EAAE,CAAC;iBACZ;aACQ;SACJ,CAAC,CAAC;KACN;IAED,4BAA4B;QACxB,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC9B,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;SACtC;KACJ;IAED,uBAAuB;QACnB,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SACjC;KACJ;IAEJ,WAAW;QACV,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,YAAY,EAAE;YACtB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;SAC5B;KACD;;mHAvOW,sBAAsB;uGAAtB,sBAAsB,8IAQvB,oBAAoB,wIAhDrB;;;;;;;;;;;;;;;;;;;;;;EAsBT,gsEA8PsC,oBAAoB,0DA7P/C;QACL,OAAO,CAAC,WAAW,EAAE;YACjB,UAAU,CAAC,iBAAiB,EAAE;gBAC1B,YAAY,CAAC,aAAa,CAAC;aAC9B,CAAC;YACF,UAAU,CAAC,iBAAiB,EAAE;gBAC1B,YAAY,CAAC,aAAa,CAAC;aAC9B,CAAC;SACL,CAAC;KACL;2FAQQ,sBAAsB;kBA1ClC,SAAS;mBAAC;oBACV,QAAQ,EAAE,iBAAiB;oBAC3B,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;EAsBT;oBACD,UAAU,EAAE;wBACL,OAAO,CAAC,WAAW,EAAE;4BACjB,UAAU,CAAC,iBAAiB,EAAE;gCAC1B,YAAY,CAAC,aAAa,CAAC;6BAC9B,CAAC;4BACF,UAAU,CAAC,iBAAiB,EAAE;gCAC1B,YAAY,CAAC,aAAa,CAAC;6BAC9B,CAAC;yBACL,CAAC;qBACL;oBACD,eAAe,EAAE,uBAAuB,CAAC,OAAO;oBAChD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,SAAS,EAAE,CAAC,sBAAsB,CAAC;oBACnC,IAAI,EAAE;wBACF,OAAO,EAAE,WAAW;qBACvB;iBACJ;mRASiC,cAAc;sBAA9C,SAAS;uBAAC,oBAAoB;gBAEZ,aAAa;sBAA/B,SAAS;uBAAC,MAAM;;MAqOL,mBAAmB;;gHAAnB,mBAAmB;iHAAnB,mBAAmB,iBA/OnB,sBAAsB,EA4OK,oBAAoB,aADjD,YAAY;iHAIV,mBAAmB,YAJtB,CAAC,YAAY,CAAC;2FAIX,mBAAmB;kBAL/B,QAAQ;mBAAC;oBACT,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,YAAY,EAAE,CAAC,sBAAsB,EAAE,oBAAoB,CAAC;oBAC5D,eAAe,EAAE,CAAC,sBAAsB,CAAC;iBACzC;;;MCzSY,qBAAqB;IAEjC,YAAoB,eAAyB,EAAU,iBAAoC;QAAvE,oBAAe,GAAf,eAAe,CAAU;QAAU,sBAAiB,GAAjB,iBAAiB,CAAmB;KAAK;IAIhG,GAAG,CAAC,KAAU,EAAE,aAAmB,EAAE,KAAW;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEhD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QAExB,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAM,KAAK,EAAE,aAAa,CAAC,CAAC;KAC3D;;;MCPW,aAAa;IAItB,YAAoB,wBAAkD,EAAU,MAAsB,EAAU,QAAkB;QAA9G,6BAAwB,GAAxB,wBAAwB,CAA0B;QAAU,WAAM,GAAN,MAAM,CAAgB;QAAU,aAAQ,GAAR,QAAQ,CAAU;QAFlI,0BAAqB,GAAgE,IAAI,GAAG,EAAE,CAAC;KAG9F;IAEM,IAAI,CAAC,aAAwB,EAAE,MAA2B;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;QAE3D,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,kBAAkB,GAAG,aAAa,CAAC;QAEtF,OAAO,SAAS,CAAC;KACpB;IAEO,2BAA2B,CAAC,MAA2B;QAC3D,MAAM,GAAG,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAErC,MAAM,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACzC,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;QAErC,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;YACpC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;SAC9D,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC;YAC7C,IAAI,CAAC,6BAA6B,CAAC,SAAS,CAAC,CAAC;YAC9C,UAAU,CAAC,WAAW,EAAE,CAAC;YACzB,GAAG,CAAC,WAAW,EAAE,CAAC;SACrB,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAG,IAAI,CAAC,wBAAwB,CAAC,uBAAuB,CAAC,sBAAsB,CAAC,CAAC;QACvG,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QAE5F,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,OAAO,GAAI,YAAY,CAAC,QAAiC,CAAC,SAAS,CAAC,CAAC,CAAgB,CAAC;QAC5F,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAExD,OAAO,SAAS,CAAC;KACpB;IAEO,6BAA6B,CAAC,SAA2B;QAC7D,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAC1D,OAAO;SACV;QAED,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACpD,kBAAkB,CAAC,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;KAChD;;0GAtDQ,aAAa;8GAAb,aAAa;2FAAb,aAAa;kBADzB,UAAU;;;ACNX;;;;;;"}
|
@@ -141,9 +141,9 @@ Editor.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.
|
|
141
141
|
<button class="ql-list" value="bullet" aria-label="Unordered List" type="button"></button>
|
142
142
|
<select class="ql-align">
|
143
143
|
<option selected></option>
|
144
|
-
<option value="center"
|
145
|
-
<option value="right"
|
146
|
-
<option value="justify"
|
144
|
+
<option value="center">center</option>
|
145
|
+
<option value="right">right</option>
|
146
|
+
<option value="justify">justify</option>
|
147
147
|
</select>
|
148
148
|
</span>
|
149
149
|
<span class="ql-formats">
|
@@ -195,9 +195,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImpor
|
|
195
195
|
<button class="ql-list" value="bullet" aria-label="Unordered List" type="button"></button>
|
196
196
|
<select class="ql-align">
|
197
197
|
<option selected></option>
|
198
|
-
<option value="center"
|
199
|
-
<option value="right"
|
200
|
-
<option value="justify"
|
198
|
+
<option value="center">center</option>
|
199
|
+
<option value="right">right</option>
|
200
|
+
<option value="justify">justify</option>
|
201
201
|
</select>
|
202
202
|
</span>
|
203
203
|
<span class="ql-formats">
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-editor.js","sources":["../../src/app/components/editor/editor.ts","../../src/app/components/editor/primeng-editor.ts"],"sourcesContent":["import {NgModule,Component,ElementRef,AfterViewInit,Input,Output,EventEmitter,ContentChild,forwardRef,ChangeDetectionStrategy, ViewEncapsulation, ContentChildren, QueryList, AfterContentInit, TemplateRef} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {SharedModule,Header, PrimeTemplate} from 'primeng/api'\nimport {DomHandler} from 'primeng/dom';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\nimport * as Quill from \"quill\";\n\nexport const EDITOR_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Editor),\n multi: true\n};\n\n@Component({\n selector: 'p-editor',\n template: `\n <div [ngClass]=\"'p-editor-container'\" [class]=\"styleClass\">\n <div class=\"p-editor-toolbar\" *ngIf=\"toolbar || headerTemplate\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n <div class=\"p-editor-toolbar\" *ngIf=\"!toolbar && !headerTemplate\">\n <span class=\"ql-formats\">\n <select class=\"ql-header\">\n <option value=\"1\">Heading</option>\n <option value=\"2\">Subheading</option>\n <option selected>Normal</option>\n </select>\n <select class=\"ql-font\">\n <option selected>Sans Serif</option>\n <option value=\"serif\">Serif</option>\n <option value=\"monospace\">Monospace</option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-bold\" aria-label=\"Bold\" type=\"button\"></button>\n <button class=\"ql-italic\" aria-label=\"Italic\" type=\"button\"></button>\n <button class=\"ql-underline\" aria-label=\"Underline\" type=\"button\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\"></select>\n <select class=\"ql-background\"></select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\" aria-label=\"Ordered List\" type=\"button\"></button>\n <button class=\"ql-list\" value=\"bullet\" aria-label=\"Unordered List\" type=\"button\"></button>\n <select class=\"ql-align\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-link\" aria-label=\"Insert Link\" type=\"button\"></button>\n <button class=\"ql-image\" aria-label=\"Insert Image\" type=\"button\"></button>\n <button class=\"ql-code-block\" aria-label=\"Insert Code Block\" type=\"button\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-clean\" aria-label=\"Remove Styles\" type=\"button\"></button>\n </span>\n </div>\n <div class=\"p-editor-content\" [ngStyle]=\"style\"></div>\n </div>\n `,\n providers: [EDITOR_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['./editor.css'],\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n})\nexport class Editor implements AfterViewInit,AfterContentInit,ControlValueAccessor {\n\n @Output() onTextChange: EventEmitter<any> = new EventEmitter();\n\n @Output() onSelectionChange: EventEmitter<any> = new EventEmitter();\n\n @ContentChild(Header) toolbar;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() placeholder: string;\n\n @Input() formats: string[];\n\n @Input() modules: any;\n\n @Input() bounds: any;\n\n @Input() scrollingContainer: any;\n\n @Input() debug: string;\n\n @Output() onInit: EventEmitter<any> = new EventEmitter();\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n value: string;\n\n _readonly: boolean;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n quill: any;\n\n headerTemplate: TemplateRef<any>;\n\n constructor(public el: ElementRef) {}\n\n ngAfterViewInit() {\n let editorElement = DomHandler.findSingle(this.el.nativeElement ,'div.p-editor-content');\n let toolbarElement = DomHandler.findSingle(this.el.nativeElement ,'div.p-editor-toolbar');\n let defaultModule = {toolbar: toolbarElement};\n let modules = this.modules ? {...defaultModule, ...this.modules} : defaultModule;\n\n this.quill = new Quill(editorElement, {\n modules: modules,\n placeholder: this.placeholder,\n readOnly: this.readonly,\n theme: 'snow',\n formats: this.formats,\n bounds: this.bounds,\n debug: this.debug,\n scrollingContainer: this.scrollingContainer\n });\n\n if (this.value) {\n this.quill.setContents(this.quill.clipboard.convert(this.value));\n }\n\n this.quill.on('text-change', (delta, oldContents, source) => {\n if (source === 'user') {\n let html = DomHandler.findSingle(editorElement, '.ql-editor').innerHTML;\n let text = this.quill.getText().trim();\n if (html === '<p><br></p>') {\n html = null;\n }\n\n this.onTextChange.emit({\n htmlValue: html,\n textValue: text,\n delta: delta,\n source: source\n });\n\n this.onModelChange(html);\n this.onModelTouched();\n }\n });\n\n this.quill.on('selection-change', (range, oldRange, source) => {\n this.onSelectionChange.emit({\n range: range,\n oldRange: oldRange,\n source: source\n });\n });\n\n this.onInit.emit({\n editor: this.quill\n });\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch(item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n }\n });\n }\n\n writeValue(value: any) : void {\n this.value = value;\n\n if (this.quill) {\n if (value)\n this.quill.setContents(this.quill.clipboard.convert(value));\n else\n this.quill.setText('');\n }\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n getQuill() {\n return this.quill;\n }\n\n @Input() get readonly(): boolean {\n return this._readonly;\n }\n\n set readonly(val:boolean) {\n this._readonly = val;\n\n if (this.quill) {\n if (this._readonly)\n this.quill.disable();\n else\n this.quill.enable();\n }\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [Editor,SharedModule],\n declarations: [Editor]\n})\nexport class EditorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-editor.js","sources":["../../src/app/components/editor/editor.ts","../../src/app/components/editor/primeng-editor.ts"],"sourcesContent":["import {NgModule,Component,ElementRef,AfterViewInit,Input,Output,EventEmitter,ContentChild,forwardRef,ChangeDetectionStrategy, ViewEncapsulation, ContentChildren, QueryList, AfterContentInit, TemplateRef} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {SharedModule,Header, PrimeTemplate} from 'primeng/api'\nimport {DomHandler} from 'primeng/dom';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\nimport * as Quill from \"quill\";\n\nexport const EDITOR_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Editor),\n multi: true\n};\n\n@Component({\n selector: 'p-editor',\n template: `\n <div [ngClass]=\"'p-editor-container'\" [class]=\"styleClass\">\n <div class=\"p-editor-toolbar\" *ngIf=\"toolbar || headerTemplate\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n <div class=\"p-editor-toolbar\" *ngIf=\"!toolbar && !headerTemplate\">\n <span class=\"ql-formats\">\n <select class=\"ql-header\">\n <option value=\"1\">Heading</option>\n <option value=\"2\">Subheading</option>\n <option selected>Normal</option>\n </select>\n <select class=\"ql-font\">\n <option selected>Sans Serif</option>\n <option value=\"serif\">Serif</option>\n <option value=\"monospace\">Monospace</option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-bold\" aria-label=\"Bold\" type=\"button\"></button>\n <button class=\"ql-italic\" aria-label=\"Italic\" type=\"button\"></button>\n <button class=\"ql-underline\" aria-label=\"Underline\" type=\"button\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\"></select>\n <select class=\"ql-background\"></select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\" aria-label=\"Ordered List\" type=\"button\"></button>\n <button class=\"ql-list\" value=\"bullet\" aria-label=\"Unordered List\" type=\"button\"></button>\n <select class=\"ql-align\">\n <option selected></option>\n <option value=\"center\">center</option>\n <option value=\"right\">right</option>\n <option value=\"justify\">justify</option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-link\" aria-label=\"Insert Link\" type=\"button\"></button>\n <button class=\"ql-image\" aria-label=\"Insert Image\" type=\"button\"></button>\n <button class=\"ql-code-block\" aria-label=\"Insert Code Block\" type=\"button\"></button>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-clean\" aria-label=\"Remove Styles\" type=\"button\"></button>\n </span>\n </div>\n <div class=\"p-editor-content\" [ngStyle]=\"style\"></div>\n </div>\n `,\n providers: [EDITOR_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['./editor.css'],\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'p-element'\n }\n})\nexport class Editor implements AfterViewInit,AfterContentInit,ControlValueAccessor {\n\n @Output() onTextChange: EventEmitter<any> = new EventEmitter();\n\n @Output() onSelectionChange: EventEmitter<any> = new EventEmitter();\n\n @ContentChild(Header) toolbar;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() placeholder: string;\n\n @Input() formats: string[];\n\n @Input() modules: any;\n\n @Input() bounds: any;\n\n @Input() scrollingContainer: any;\n\n @Input() debug: string;\n\n @Output() onInit: EventEmitter<any> = new EventEmitter();\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n value: string;\n\n _readonly: boolean;\n\n onModelChange: Function = () => {};\n\n onModelTouched: Function = () => {};\n\n quill: any;\n\n headerTemplate: TemplateRef<any>;\n\n constructor(public el: ElementRef) {}\n\n ngAfterViewInit() {\n let editorElement = DomHandler.findSingle(this.el.nativeElement ,'div.p-editor-content');\n let toolbarElement = DomHandler.findSingle(this.el.nativeElement ,'div.p-editor-toolbar');\n let defaultModule = {toolbar: toolbarElement};\n let modules = this.modules ? {...defaultModule, ...this.modules} : defaultModule;\n\n this.quill = new Quill(editorElement, {\n modules: modules,\n placeholder: this.placeholder,\n readOnly: this.readonly,\n theme: 'snow',\n formats: this.formats,\n bounds: this.bounds,\n debug: this.debug,\n scrollingContainer: this.scrollingContainer\n });\n\n if (this.value) {\n this.quill.setContents(this.quill.clipboard.convert(this.value));\n }\n\n this.quill.on('text-change', (delta, oldContents, source) => {\n if (source === 'user') {\n let html = DomHandler.findSingle(editorElement, '.ql-editor').innerHTML;\n let text = this.quill.getText().trim();\n if (html === '<p><br></p>') {\n html = null;\n }\n\n this.onTextChange.emit({\n htmlValue: html,\n textValue: text,\n delta: delta,\n source: source\n });\n\n this.onModelChange(html);\n this.onModelTouched();\n }\n });\n\n this.quill.on('selection-change', (range, oldRange, source) => {\n this.onSelectionChange.emit({\n range: range,\n oldRange: oldRange,\n source: source\n });\n });\n\n this.onInit.emit({\n editor: this.quill\n });\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch(item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n }\n });\n }\n\n writeValue(value: any) : void {\n this.value = value;\n\n if (this.quill) {\n if (value)\n this.quill.setContents(this.quill.clipboard.convert(value));\n else\n this.quill.setText('');\n }\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n getQuill() {\n return this.quill;\n }\n\n @Input() get readonly(): boolean {\n return this._readonly;\n }\n\n set readonly(val:boolean) {\n this._readonly = val;\n\n if (this.quill) {\n if (this._readonly)\n this.quill.disable();\n else\n this.quill.enable();\n }\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [Editor,SharedModule],\n declarations: [Editor]\n})\nexport class EditorModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -4,9 +4,14 @@ import { CommonModule } from '@angular/common';
|
|
4
4
|
import * as i1 from '@angular/forms';
|
5
5
|
|
6
6
|
class InputText {
|
7
|
-
constructor(el, ngModel) {
|
7
|
+
constructor(el, ngModel, cd) {
|
8
8
|
this.el = el;
|
9
9
|
this.ngModel = ngModel;
|
10
|
+
this.cd = cd;
|
11
|
+
}
|
12
|
+
ngAfterViewInit() {
|
13
|
+
this.updateFilledState();
|
14
|
+
this.cd.detectChanges();
|
10
15
|
}
|
11
16
|
ngDoCheck() {
|
12
17
|
this.updateFilledState();
|
@@ -19,7 +24,7 @@ class InputText {
|
|
19
24
|
(this.ngModel && this.ngModel.model);
|
20
25
|
}
|
21
26
|
}
|
22
|
-
InputText.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: InputText, deps: [{ token: i0.ElementRef }, { token: i1.NgModel, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
27
|
+
InputText.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: InputText, deps: [{ token: i0.ElementRef }, { token: i1.NgModel, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
23
28
|
InputText.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.0.5", type: InputText, selector: "[pInputText]", host: { listeners: { "input": "onInput($event)" }, properties: { "class.p-filled": "filled" }, classAttribute: "p-inputtext p-component p-element" }, ngImport: i0 });
|
24
29
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: InputText, decorators: [{
|
25
30
|
type: Directive,
|
@@ -32,7 +37,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImpor
|
|
32
37
|
}]
|
33
38
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.NgModel, decorators: [{
|
34
39
|
type: Optional
|
35
|
-
}] }]; }, propDecorators: { onInput: [{
|
40
|
+
}] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { onInput: [{
|
36
41
|
type: HostListener,
|
37
42
|
args: ['input', ['$event']]
|
38
43
|
}] } });
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-inputtext.js","sources":["../../src/app/components/inputtext/inputtext.ts","../../src/app/components/inputtext/primeng-inputtext.ts"],"sourcesContent":["import {NgModule,Directive,ElementRef,HostListener,DoCheck,Optional} from '@angular/core';\nimport {NgModel} from '@angular/forms';\nimport {CommonModule} from '@angular/common';\n\n@Directive({\n selector: '[pInputText]',\n host: {\n 'class': 'p-inputtext p-component p-element',\n '[class.p-filled]': 'filled'\n }\n})\nexport class InputText implements DoCheck {\n\n filled: boolean;\n\n constructor(public el: ElementRef, @Optional() public ngModel: NgModel) {}\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput(e) {\n this.updateFilledState();\n }\n\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) ||\n
|
1
|
+
{"version":3,"file":"primeng-inputtext.js","sources":["../../src/app/components/inputtext/inputtext.ts","../../src/app/components/inputtext/primeng-inputtext.ts"],"sourcesContent":["import {NgModule, Directive, ElementRef, HostListener, DoCheck, Optional, ChangeDetectorRef, AfterViewInit} from '@angular/core';\nimport {NgModel} from '@angular/forms';\nimport {CommonModule} from '@angular/common';\n\n@Directive({\n selector: '[pInputText]',\n host: {\n 'class': 'p-inputtext p-component p-element',\n '[class.p-filled]': 'filled'\n }\n})\nexport class InputText implements DoCheck, AfterViewInit {\n\n filled: boolean;\n\n constructor(public el: ElementRef, @Optional() public ngModel: NgModel, private cd: ChangeDetectorRef) {\n }\n\n ngAfterViewInit() {\n this.updateFilledState();\n this.cd.detectChanges();\n }\n\n ngDoCheck() {\n this.updateFilledState();\n }\n\n @HostListener('input', ['$event'])\n onInput(e) {\n this.updateFilledState();\n }\n\n updateFilledState() {\n this.filled = (this.el.nativeElement.value && this.el.nativeElement.value.length) ||\n (this.ngModel && this.ngModel.model);\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [InputText],\n declarations: [InputText]\n})\nexport class InputTextModule {\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;MAWa,SAAS;IAIlB,YAAmB,EAAc,EAAqB,OAAgB,EAAU,EAAqB;QAAlF,OAAE,GAAF,EAAE,CAAY;QAAqB,YAAO,GAAP,OAAO,CAAS;QAAU,OAAE,GAAF,EAAE,CAAmB;KACpG;IAED,eAAe;QACX,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;KAC3B;IAED,SAAS;QACL,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC5B;IAGD,OAAO,CAAC,CAAC;QACL,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC5B;IAED,iBAAiB;QACb,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM;aAC3E,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;KAC5C;;sGAxBQ,SAAS;0FAAT,SAAS;2FAAT,SAAS;kBAPrB,SAAS;mBAAC;oBACP,QAAQ,EAAE,cAAc;oBACxB,IAAI,EAAE;wBACF,OAAO,EAAE,mCAAmC;wBAC5C,kBAAkB,EAAE,QAAQ;qBAC/B;iBACJ;;0BAKuC,QAAQ;4EAa5C,OAAO;sBADN,YAAY;uBAAC,OAAO,EAAE,CAAC,QAAQ,CAAC;;MAgBxB,eAAe;;4GAAf,eAAe;6GAAf,eAAe,iBAhCf,SAAS,aA4BR,YAAY,aA5Bb,SAAS;6GAgCT,eAAe,YAJf,CAAC,YAAY,CAAC;2FAId,eAAe;kBAL3B,QAAQ;mBAAC;oBACN,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE,CAAC,SAAS,CAAC;oBACpB,YAAY,EAAE,CAAC,SAAS,CAAC;iBAC5B;;;AC1CD;;;;;;"}
|
@@ -482,7 +482,7 @@ Listbox.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0
|
|
482
482
|
<div class="p-listbox-header" *ngIf="(checkbox && multiple && showToggleAll) || filter">
|
483
483
|
<div class="p-checkbox p-component" *ngIf="checkbox && multiple && showToggleAll" [ngClass]="{'p-checkbox-disabled': disabled || toggleAllDisabled}">
|
484
484
|
<div class="p-hidden-accessible">
|
485
|
-
<input type="checkbox" readonly="readonly" [checked]="allChecked" (focus)="onHeaderCheckboxFocus()" (blur)="onHeaderCheckboxBlur()" (keydown.space)="toggleAll($event)" [
|
485
|
+
<input type="checkbox" readonly="readonly" [checked]="allChecked" (focus)="onHeaderCheckboxFocus()" (blur)="onHeaderCheckboxBlur()" (keydown.space)="toggleAll($event)" [disabled]="disabled || toggleAllDisabled">
|
486
486
|
</div>
|
487
487
|
<div #headerchkbox class="p-checkbox-box" [ngClass]="{'p-highlight': allChecked, 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled}" (click)="toggleAll($event)">
|
488
488
|
<span class="p-checkbox-icon" [ngClass]="{'pi pi-check':allChecked}"></span>
|
@@ -553,7 +553,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImpor
|
|
553
553
|
<div class="p-listbox-header" *ngIf="(checkbox && multiple && showToggleAll) || filter">
|
554
554
|
<div class="p-checkbox p-component" *ngIf="checkbox && multiple && showToggleAll" [ngClass]="{'p-checkbox-disabled': disabled || toggleAllDisabled}">
|
555
555
|
<div class="p-hidden-accessible">
|
556
|
-
<input type="checkbox" readonly="readonly" [checked]="allChecked" (focus)="onHeaderCheckboxFocus()" (blur)="onHeaderCheckboxBlur()" (keydown.space)="toggleAll($event)" [
|
556
|
+
<input type="checkbox" readonly="readonly" [checked]="allChecked" (focus)="onHeaderCheckboxFocus()" (blur)="onHeaderCheckboxBlur()" (keydown.space)="toggleAll($event)" [disabled]="disabled || toggleAllDisabled">
|
557
557
|
</div>
|
558
558
|
<div #headerchkbox class="p-checkbox-box" [ngClass]="{'p-highlight': allChecked, 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled}" (click)="toggleAll($event)">
|
559
559
|
<span class="p-checkbox-icon" [ngClass]="{'pi pi-check':allChecked}"></span>
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-listbox.js","sources":["../../src/app/components/listbox/listbox.ts","../../src/app/components/listbox/primeng-listbox.ts"],"sourcesContent":["import { NgModule, Component, ElementRef, Input, Output, EventEmitter, AfterContentInit, ContentChildren, ContentChild, QueryList, TemplateRef,forwardRef, ChangeDetectorRef, ViewChild, ChangeDetectionStrategy, ViewEncapsulation, OnInit, OnDestroy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SharedModule, PrimeTemplate, Footer, Header, FilterService, TranslationKeys, PrimeNGConfig } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { ObjectUtils } from 'primeng/utils';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { RippleModule } from 'primeng/ripple';\nimport { Subscription } from 'rxjs';\n\nexport const LISTBOX_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Listbox),\n multi: true\n};\n\n@Component({\n selector: 'p-listbox',\n template: `\n <div [ngClass]=\"{'p-listbox p-component': true, 'p-disabled': disabled}\" [ngStyle]=\"style\" [class]=\"styleClass\">\n <div class=\"p-listbox-header\" *ngIf=\"headerFacet || headerTemplate\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n <div class=\"p-listbox-header\" *ngIf=\"(checkbox && multiple && showToggleAll) || filter\">\n <div class=\"p-checkbox p-component\" *ngIf=\"checkbox && multiple && showToggleAll\" [ngClass]=\"{'p-checkbox-disabled': disabled || toggleAllDisabled}\">\n <div class=\"p-hidden-accessible\">\n <input type=\"checkbox\" readonly=\"readonly\" [checked]=\"allChecked\" (focus)=\"onHeaderCheckboxFocus()\" (blur)=\"onHeaderCheckboxBlur()\" (keydown.space)=\"toggleAll($event)\" [attr.disabled]=\"disabled || toggleAllDisabled\">\n </div>\n <div #headerchkbox class=\"p-checkbox-box\" [ngClass]=\"{'p-highlight': allChecked, 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled}\" (click)=\"toggleAll($event)\">\n <span class=\"p-checkbox-icon\" [ngClass]=\"{'pi pi-check':allChecked}\"></span>\n </div>\n </div>\n <div class=\"p-listbox-filter-container\" *ngIf=\"filter\">\n <input type=\"text\" [value]=\"filterValue||''\" (input)=\"onFilter($event)\" class=\"p-listbox-filter p-inputtext p-component\" [disabled]=\"disabled\" [attr.placeholder]=\"filterPlaceHolder\" [attr.aria-label]=\"ariaFilterLabel\">\n <span class=\"p-listbox-filter-icon pi pi-search\"></span>\n </div>\n </div>\n <div [ngClass]=\"'p-listbox-list-wrapper'\" [ngStyle]=\"listStyle\" [class]=\"listStyleClass\">\n <ul class=\"p-listbox-list\" role=\"listbox\" aria-multiselectable=\"multiple\">\n <ng-container *ngIf=\"group\">\n <ng-template ngFor let-optgroup [ngForOf]=\"optionsToRender\">\n <li class=\"p-listbox-item-group\">\n <span *ngIf=\"!groupTemplate\">{{getOptionGroupLabel(optgroup)||'empty'}}</span>\n <ng-container *ngTemplateOutlet=\"groupTemplate; context: {$implicit: optgroup}\"></ng-container>\n </li>\n <ng-container *ngTemplateOutlet=\"itemslist; context: {$implicit: getOptionGroupChildren(optgroup)}\"></ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!group\">\n <ng-container *ngTemplateOutlet=\"itemslist; context: {$implicit: optionsToRender}\"></ng-container>\n </ng-container>\n <ng-template #itemslist let-optionsToDisplay>\n <li *ngFor=\"let option of optionsToDisplay; let i = index;\" [attr.tabindex]=\"disabled || isOptionDisabled(option) ? null : '0'\" pRipple\n [ngClass]=\"{'p-listbox-item':true,'p-highlight':isSelected(option), 'p-disabled': this.isOptionDisabled(option)}\" role=\"option\" [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-selected]=\"isSelected(option)\" (click)=\"onOptionClick($event,option)\" (dblclick)=\"onOptionDoubleClick($event,option)\" (touchend)=\"onOptionTouchEnd(option)\" (keydown)=\"onOptionKeyDown($event,option)\">\n <div class=\"p-checkbox p-component\" *ngIf=\"checkbox && multiple\" [ngClass]=\"{'p-checkbox-disabled': disabled || isOptionDisabled(option)}\">\n <div class=\"p-checkbox-box\" [ngClass]=\"{'p-highlight':isSelected(option)}\">\n <span class=\"p-checkbox-icon\" [ngClass]=\"{'pi pi-check':isSelected(option)}\"></span>\n </div>\n </div>\n <span *ngIf=\"!itemTemplate\">{{getOptionLabel(option)}}</span>\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: i}\"></ng-container>\n </li>\n <li *ngIf=\"hasFilter() && isEmpty(optionsToDisplay)\" class=\"p-listbox-empty-message\">\n <ng-container *ngIf=\"!emptyFilterTemplate && !emptyTemplate; else emptyFilter\">\n {{emptyFilterMessageLabel}}\n </ng-container>\n <ng-container #emptyFilter *ngTemplateOutlet=\"emptyFilterTemplate || emptyTemplate\"></ng-container>\n </li>\n <li *ngIf=\"!hasFilter() && isEmpty(optionsToDisplay)\" class=\"p-listbox-empty-message\">\n <ng-container *ngIf=\"!emptyTemplate; else empty\">\n {{emptyMessageLabel}}\n </ng-container>\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </li>\n </ng-template>\n </ul>\n </div>\n <div class=\"p-listbox-footer\" *ngIf=\"footerFacet || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n `,\n providers: [LISTBOX_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./listbox.css'],\n host: {\n 'class': 'p-element'\n }\n})\nexport class Listbox implements AfterContentInit, OnInit, ControlValueAccessor, OnDestroy {\n\n @Input() multiple: boolean;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() listStyle: any;\n\n @Input() listStyleClass: string;\n\n @Input() readonly: boolean;\n\n @Input() disabled: boolean;\n\n @Input() checkbox: boolean = false;\n\n @Input() filter: boolean = false;\n\n @Input() filterMatchMode: string = 'contains';\n\n @Input() filterLocale: string;\n\n @Input() metaKeySelection: boolean = true;\n\n @Input() dataKey: string;\n\n @Input() showToggleAll: boolean = true;\n\n @Input() optionLabel: string;\n\n @Input() optionValue: string;\n\n @Input() optionGroupChildren: string = \"items\";\n\n @Input() optionGroupLabel: string;\n\n @Input() optionDisabled: string;\n\n @Input() ariaFilterLabel: string;\n\n @Input() filterPlaceHolder: string;\n\n @Input() emptyFilterMessage: string;\n\n @Input() emptyMessage: string;\n\n @Input() group: boolean;\n\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @Output() onClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onDblClick: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('headerchkbox') headerCheckboxViewChild: ElementRef;\n\n @ContentChild(Header) headerFacet;\n\n @ContentChild(Footer) footerFacet;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n public _options: any[];\n\n public itemTemplate: TemplateRef<any>;\n\n public groupTemplate: TemplateRef<any>;\n\n public headerTemplate: TemplateRef<any>;\n\n public footerTemplate: TemplateRef<any>;\n\n public emptyFilterTemplate: TemplateRef<any>;\n\n public emptyTemplate: TemplateRef<any>;\n\n public _filterValue: string;\n\n public _filteredOptions: any[];\n\n public filtered: boolean;\n\n public value: any;\n\n public onModelChange: Function = () => { };\n\n public onModelTouched: Function = () => { };\n\n public optionTouched: boolean;\n\n public focus: boolean;\n\n public headerCheckboxFocus: boolean;\n\n translationSubscription: Subscription;\n\n constructor(public el: ElementRef, public cd: ChangeDetectorRef, public filterService: FilterService, public config: PrimeNGConfig) { }\n\n @Input() get options(): any[] {\n return this._options;\n }\n\n set options(val: any[]) {\n this._options = val;\n\n if (this.hasFilter())\n this.activateFilter();\n }\n\n @Input() get filterValue(): string {\n return this._filterValue;\n }\n\n set filterValue(val: string) {\n this._filterValue = val;\n this.activateFilter();\n }\n\n ngOnInit() {\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.cd.markForCheck();\n });\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n case 'group':\n this.groupTemplate = item.template;\n break;\n\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n\n case 'emptyfilter':\n this.emptyFilterTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n getOptionLabel(option: any) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : (option.label != undefined ? option.label : option);\n }\n\n getOptionGroupChildren(optionGroup: any) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n\n getOptionGroupLabel(optionGroup: any) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : (optionGroup.label != undefined ? optionGroup.label : optionGroup);\n }\n\n getOptionValue(option: any) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : (this.optionLabel || option.value === undefined ? option : option.value);\n }\n\n isOptionDisabled(option: any) {\n return this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : (option.disabled !== undefined ? option.disabled : false);\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n onOptionClick(event: Event, option: any) {\n if (this.disabled || this.isOptionDisabled(option) || this.readonly) {\n return;\n }\n\n if (this.multiple) {\n if (this.checkbox)\n this.onOptionClickCheckbox(event, option);\n else\n this.onOptionClickMultiple(event, option);\n }\n else {\n this.onOptionClickSingle(event, option);\n }\n this.onClick.emit({\n originalEvent: event,\n option: option,\n value: this.value\n });\n this.optionTouched = false;\n }\n\n onOptionTouchEnd(option: any) {\n if (this.disabled || this.isOptionDisabled(option) || this.readonly) {\n return;\n }\n\n this.optionTouched = true;\n }\n\n onOptionDoubleClick(event: Event, option: any): any {\n if (this.disabled || this.isOptionDisabled(option) || this.readonly) {\n return;\n }\n\n this.onDblClick.emit({\n originalEvent: event,\n option: option,\n value: this.value\n })\n }\n\n onOptionClickSingle(event, option) {\n let selected = this.isSelected(option);\n let valueChanged = false;\n let metaSelection = this.optionTouched ? false : this.metaKeySelection;\n\n if (metaSelection) {\n let metaKey = (event.metaKey || event.ctrlKey);\n\n if (selected) {\n if (metaKey) {\n this.value = null;\n valueChanged = true;\n }\n }\n else {\n this.value = this.getOptionValue(option);\n valueChanged = true;\n }\n }\n else {\n this.value = selected ? null : this.getOptionValue(option);\n valueChanged = true;\n }\n\n if (valueChanged) {\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n }\n\n onOptionClickMultiple(event, option) {\n let selected = this.isSelected(option);\n let valueChanged = false;\n let metaSelection = this.optionTouched ? false : this.metaKeySelection;\n\n if (metaSelection) {\n let metaKey = (event.metaKey || event.ctrlKey);\n\n if (selected) {\n if (metaKey) {\n this.removeOption(option);\n }\n else {\n this.value = [this.getOptionValue(option)];\n }\n valueChanged = true;\n }\n else {\n this.value = (metaKey) ? this.value || [] : [];\n this.value = [...this.value, this.getOptionValue(option)];\n valueChanged = true;\n }\n }\n else {\n if (selected) {\n this.removeOption(option);\n }\n else {\n this.value = [...this.value || [], this.getOptionValue(option)];\n }\n\n valueChanged = true;\n }\n\n if (valueChanged) {\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n }\n\n onOptionClickCheckbox(event, option) {\n if (this.disabled || this.readonly) {\n return;\n }\n\n let selected = this.isSelected(option);\n\n if (selected) {\n this.removeOption(option);\n }\n else {\n this.value = this.value ? this.value : [];\n this.value = [...this.value, this.getOptionValue(option)];\n }\n\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n\n removeOption(option: any): void {\n this.value = this.value.filter(val => !ObjectUtils.equals(val, this.getOptionValue(option), this.dataKey));\n }\n\n isSelected(option: any) {\n let selected = false;\n let optionValue = this.getOptionValue(option);\n\n if (this.multiple) {\n if (this.value) {\n for (let val of this.value) {\n if (ObjectUtils.equals(val, optionValue, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n }\n else {\n selected = ObjectUtils.equals(this.value, optionValue, this.dataKey);\n }\n\n return selected;\n }\n\n get allChecked(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return false;\n }\n else {\n let selectedDisabledItemsLength = 0;\n let unselectedDisabledItemsLength = 0;\n let selectedEnabledItemsLength = 0;\n let visibleOptionsLength = this.group ? 0 : this.optionsToRender.length;\n\n for (let option of optionsToRender) {\n if (!this.group) {\n let disabled = this.isOptionDisabled(option);\n let selected = this.isSelected(option);\n\n if (disabled) {\n if (selected)\n selectedDisabledItemsLength++;\n else\n unselectedDisabledItemsLength++;\n }\n else {\n if (selected)\n selectedEnabledItemsLength++;\n else\n return false;\n }\n }\n else {\n for (let opt of this.getOptionGroupChildren(option)) {\n let disabled = this.isOptionDisabled(opt);\n let selected = this.isSelected(opt);\n\n if (disabled) {\n if (selected)\n selectedDisabledItemsLength++;\n else\n unselectedDisabledItemsLength++;\n }\n else {\n if (selected)\n selectedEnabledItemsLength++;\n else {\n return false;\n }\n }\n\n visibleOptionsLength++;\n }\n }\n }\n\n return (visibleOptionsLength === selectedDisabledItemsLength\n || visibleOptionsLength === selectedEnabledItemsLength\n || selectedEnabledItemsLength && visibleOptionsLength === (selectedEnabledItemsLength + unselectedDisabledItemsLength + selectedDisabledItemsLength));\n }\n }\n\n get optionsToRender(): any[] {\n return this._filteredOptions || this.options;\n }\n\n\n get emptyMessageLabel(): string {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n\n get emptyFilterMessageLabel(): string {\n return this.emptyFilterMessage || this.config.getTranslation(TranslationKeys.EMPTY_FILTER_MESSAGE);\n }\n\n hasFilter() {\n return this._filterValue && this._filterValue.trim().length > 0;\n }\n\n isEmpty(optionsToDisplay) {\n return !optionsToDisplay || (optionsToDisplay && optionsToDisplay.length === 0);\n }\n\n onFilter(event: KeyboardEvent) {\n this._filterValue = (<HTMLInputElement> event.target).value;\n this.activateFilter();\n }\n\n activateFilter() {\n if (this.hasFilter() && this._options) {\n if (this.group) {\n let searchFields: string[] = (this.optionLabel || 'label').split(',');\n\n let filteredGroups = [];\n for (let optgroup of this.options) {\n let filteredSubOptions = this.filterService.filter(this.getOptionGroupChildren(optgroup), searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n if (filteredSubOptions && filteredSubOptions.length) {\n filteredGroups.push({...optgroup, ...{[this.optionGroupChildren]: filteredSubOptions}});\n }\n }\n\n this._filteredOptions = filteredGroups;\n }\n else {\n this._filteredOptions = this._options.filter(option => this.filterService.filters[this.filterMatchMode](this.getOptionLabel(option), this._filterValue, this.filterLocale));\n }\n }\n else {\n this._filteredOptions = null;\n }\n }\n\n get toggleAllDisabled(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return true;\n }\n else {\n for (let option of optionsToRender) {\n if (!this.isOptionDisabled(option))\n return false;\n }\n\n return true;\n }\n }\n\n toggleAll(event) {\n if (this.disabled || this.toggleAllDisabled || this.readonly) {\n return;\n }\n\n let allChecked = this.allChecked;\n\n if (allChecked)\n this.uncheckAll();\n else\n this.checkAll();\n\n this.onModelChange(this.value);\n this.onChange.emit({ originalEvent: event, value: this.value });\n event.preventDefault();\n }\n\n checkAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach(opt => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (!optionDisabled || (optionDisabled && this.isSelected(opt))) {\n val.push(this.getOptionValue(opt));\n }\n }\n else {\n let subOptions = this.getOptionGroupChildren(opt);\n\n if (subOptions) {\n subOptions.forEach(option => {\n let optionDisabled = this.isOptionDisabled(option);\n if (!optionDisabled || (optionDisabled && this.isSelected(option))) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n uncheckAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach(opt => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (optionDisabled && this.isSelected(opt)) {\n val.push(this.getOptionValue(opt));\n }\n }\n else {\n if (opt.items) {\n opt.items.forEach(option => {\n let optionDisabled = this.isOptionDisabled(option);\n if (optionDisabled && this.isSelected(option)) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n onOptionKeyDown(event:KeyboardEvent, option) {\n if (this.readonly) {\n return;\n }\n\n let item = <HTMLLIElement> event.currentTarget;\n\n switch(event.which) {\n //down\n case 40:\n var nextItem = this.findNextItem(item);\n if (nextItem) {\n nextItem.focus();\n }\n\n event.preventDefault();\n break;\n\n //up\n case 38:\n var prevItem = this.findPrevItem(item);\n if (prevItem) {\n prevItem.focus();\n }\n\n event.preventDefault();\n break;\n\n //enter\n case 13:\n this.onOptionClick(event, option);\n event.preventDefault();\n break;\n }\n }\n\n findNextItem(item) {\n let nextItem = item.nextElementSibling;\n\n if (nextItem)\n return DomHandler.hasClass(nextItem, 'p-disabled') || DomHandler.isHidden(nextItem) || DomHandler.hasClass(nextItem, 'p-listbox-item-group') ? this.findNextItem(nextItem) : nextItem;\n else\n return null;\n }\n\n findPrevItem(item) {\n let prevItem = item.previousElementSibling;\n\n if (prevItem)\n return DomHandler.hasClass(prevItem, 'p-disabled') || DomHandler.isHidden(prevItem) || DomHandler.hasClass(prevItem, 'p-listbox-item-group') ? this.findPrevItem(prevItem) : prevItem;\n else\n return null;\n }\n\n onHeaderCheckboxFocus() {\n this.headerCheckboxFocus = true;\n }\n\n onHeaderCheckboxBlur() {\n this.headerCheckboxFocus = false;\n }\n\n ngOnDestroy() {\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n }\n}\n\n@NgModule({\n imports: [CommonModule, SharedModule, RippleModule],\n exports: [Listbox, SharedModule],\n declarations: [Listbox]\n})\nexport class ListboxModule { }\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-listbox.js","sources":["../../src/app/components/listbox/listbox.ts","../../src/app/components/listbox/primeng-listbox.ts"],"sourcesContent":["import { NgModule, Component, ElementRef, Input, Output, EventEmitter, AfterContentInit, ContentChildren, ContentChild, QueryList, TemplateRef,forwardRef, ChangeDetectorRef, ViewChild, ChangeDetectionStrategy, ViewEncapsulation, OnInit, OnDestroy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SharedModule, PrimeTemplate, Footer, Header, FilterService, TranslationKeys, PrimeNGConfig } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { ObjectUtils } from 'primeng/utils';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { RippleModule } from 'primeng/ripple';\nimport { Subscription } from 'rxjs';\n\nexport const LISTBOX_VALUE_ACCESSOR: any = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => Listbox),\n multi: true\n};\n\n@Component({\n selector: 'p-listbox',\n template: `\n <div [ngClass]=\"{'p-listbox p-component': true, 'p-disabled': disabled}\" [ngStyle]=\"style\" [class]=\"styleClass\">\n <div class=\"p-listbox-header\" *ngIf=\"headerFacet || headerTemplate\">\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n <div class=\"p-listbox-header\" *ngIf=\"(checkbox && multiple && showToggleAll) || filter\">\n <div class=\"p-checkbox p-component\" *ngIf=\"checkbox && multiple && showToggleAll\" [ngClass]=\"{'p-checkbox-disabled': disabled || toggleAllDisabled}\">\n <div class=\"p-hidden-accessible\">\n <input type=\"checkbox\" readonly=\"readonly\" [checked]=\"allChecked\" (focus)=\"onHeaderCheckboxFocus()\" (blur)=\"onHeaderCheckboxBlur()\" (keydown.space)=\"toggleAll($event)\" [disabled]=\"disabled || toggleAllDisabled\">\n </div>\n <div #headerchkbox class=\"p-checkbox-box\" [ngClass]=\"{'p-highlight': allChecked, 'p-focus': headerCheckboxFocus, 'p-disabled': disabled || toggleAllDisabled}\" (click)=\"toggleAll($event)\">\n <span class=\"p-checkbox-icon\" [ngClass]=\"{'pi pi-check':allChecked}\"></span>\n </div>\n </div>\n <div class=\"p-listbox-filter-container\" *ngIf=\"filter\">\n <input type=\"text\" [value]=\"filterValue||''\" (input)=\"onFilter($event)\" class=\"p-listbox-filter p-inputtext p-component\" [disabled]=\"disabled\" [attr.placeholder]=\"filterPlaceHolder\" [attr.aria-label]=\"ariaFilterLabel\">\n <span class=\"p-listbox-filter-icon pi pi-search\"></span>\n </div>\n </div>\n <div [ngClass]=\"'p-listbox-list-wrapper'\" [ngStyle]=\"listStyle\" [class]=\"listStyleClass\">\n <ul class=\"p-listbox-list\" role=\"listbox\" aria-multiselectable=\"multiple\">\n <ng-container *ngIf=\"group\">\n <ng-template ngFor let-optgroup [ngForOf]=\"optionsToRender\">\n <li class=\"p-listbox-item-group\">\n <span *ngIf=\"!groupTemplate\">{{getOptionGroupLabel(optgroup)||'empty'}}</span>\n <ng-container *ngTemplateOutlet=\"groupTemplate; context: {$implicit: optgroup}\"></ng-container>\n </li>\n <ng-container *ngTemplateOutlet=\"itemslist; context: {$implicit: getOptionGroupChildren(optgroup)}\"></ng-container>\n </ng-template>\n </ng-container>\n <ng-container *ngIf=\"!group\">\n <ng-container *ngTemplateOutlet=\"itemslist; context: {$implicit: optionsToRender}\"></ng-container>\n </ng-container>\n <ng-template #itemslist let-optionsToDisplay>\n <li *ngFor=\"let option of optionsToDisplay; let i = index;\" [attr.tabindex]=\"disabled || isOptionDisabled(option) ? null : '0'\" pRipple\n [ngClass]=\"{'p-listbox-item':true,'p-highlight':isSelected(option), 'p-disabled': this.isOptionDisabled(option)}\" role=\"option\" [attr.aria-label]=\"getOptionLabel(option)\"\n [attr.aria-selected]=\"isSelected(option)\" (click)=\"onOptionClick($event,option)\" (dblclick)=\"onOptionDoubleClick($event,option)\" (touchend)=\"onOptionTouchEnd(option)\" (keydown)=\"onOptionKeyDown($event,option)\">\n <div class=\"p-checkbox p-component\" *ngIf=\"checkbox && multiple\" [ngClass]=\"{'p-checkbox-disabled': disabled || isOptionDisabled(option)}\">\n <div class=\"p-checkbox-box\" [ngClass]=\"{'p-highlight':isSelected(option)}\">\n <span class=\"p-checkbox-icon\" [ngClass]=\"{'pi pi-check':isSelected(option)}\"></span>\n </div>\n </div>\n <span *ngIf=\"!itemTemplate\">{{getOptionLabel(option)}}</span>\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: i}\"></ng-container>\n </li>\n <li *ngIf=\"hasFilter() && isEmpty(optionsToDisplay)\" class=\"p-listbox-empty-message\">\n <ng-container *ngIf=\"!emptyFilterTemplate && !emptyTemplate; else emptyFilter\">\n {{emptyFilterMessageLabel}}\n </ng-container>\n <ng-container #emptyFilter *ngTemplateOutlet=\"emptyFilterTemplate || emptyTemplate\"></ng-container>\n </li>\n <li *ngIf=\"!hasFilter() && isEmpty(optionsToDisplay)\" class=\"p-listbox-empty-message\">\n <ng-container *ngIf=\"!emptyTemplate; else empty\">\n {{emptyMessageLabel}}\n </ng-container>\n <ng-container #empty *ngTemplateOutlet=\"emptyTemplate\"></ng-container>\n </li>\n </ng-template>\n </ul>\n </div>\n <div class=\"p-listbox-footer\" *ngIf=\"footerFacet || footerTemplate\">\n <ng-content select=\"p-footer\"></ng-content>\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n `,\n providers: [LISTBOX_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./listbox.css'],\n host: {\n 'class': 'p-element'\n }\n})\nexport class Listbox implements AfterContentInit, OnInit, ControlValueAccessor, OnDestroy {\n\n @Input() multiple: boolean;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() listStyle: any;\n\n @Input() listStyleClass: string;\n\n @Input() readonly: boolean;\n\n @Input() disabled: boolean;\n\n @Input() checkbox: boolean = false;\n\n @Input() filter: boolean = false;\n\n @Input() filterMatchMode: string = 'contains';\n\n @Input() filterLocale: string;\n\n @Input() metaKeySelection: boolean = true;\n\n @Input() dataKey: string;\n\n @Input() showToggleAll: boolean = true;\n\n @Input() optionLabel: string;\n\n @Input() optionValue: string;\n\n @Input() optionGroupChildren: string = \"items\";\n\n @Input() optionGroupLabel: string;\n\n @Input() optionDisabled: string;\n\n @Input() ariaFilterLabel: string;\n\n @Input() filterPlaceHolder: string;\n\n @Input() emptyFilterMessage: string;\n\n @Input() emptyMessage: string;\n\n @Input() group: boolean;\n\n @Output() onChange: EventEmitter<any> = new EventEmitter();\n\n @Output() onClick: EventEmitter<any> = new EventEmitter();\n\n @Output() onDblClick: EventEmitter<any> = new EventEmitter();\n\n @ViewChild('headerchkbox') headerCheckboxViewChild: ElementRef;\n\n @ContentChild(Header) headerFacet;\n\n @ContentChild(Footer) footerFacet;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n public _options: any[];\n\n public itemTemplate: TemplateRef<any>;\n\n public groupTemplate: TemplateRef<any>;\n\n public headerTemplate: TemplateRef<any>;\n\n public footerTemplate: TemplateRef<any>;\n\n public emptyFilterTemplate: TemplateRef<any>;\n\n public emptyTemplate: TemplateRef<any>;\n\n public _filterValue: string;\n\n public _filteredOptions: any[];\n\n public filtered: boolean;\n\n public value: any;\n\n public onModelChange: Function = () => { };\n\n public onModelTouched: Function = () => { };\n\n public optionTouched: boolean;\n\n public focus: boolean;\n\n public headerCheckboxFocus: boolean;\n\n translationSubscription: Subscription;\n\n constructor(public el: ElementRef, public cd: ChangeDetectorRef, public filterService: FilterService, public config: PrimeNGConfig) { }\n\n @Input() get options(): any[] {\n return this._options;\n }\n\n set options(val: any[]) {\n this._options = val;\n\n if (this.hasFilter())\n this.activateFilter();\n }\n\n @Input() get filterValue(): string {\n return this._filterValue;\n }\n\n set filterValue(val: string) {\n this._filterValue = val;\n this.activateFilter();\n }\n\n ngOnInit() {\n this.translationSubscription = this.config.translationObserver.subscribe(() => {\n this.cd.markForCheck();\n });\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'item':\n this.itemTemplate = item.template;\n break;\n\n case 'group':\n this.groupTemplate = item.template;\n break;\n\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'footer':\n this.footerTemplate = item.template;\n break;\n\n case 'empty':\n this.emptyTemplate = item.template;\n break;\n\n case 'emptyfilter':\n this.emptyFilterTemplate = item.template;\n break;\n\n default:\n this.itemTemplate = item.template;\n break;\n }\n });\n }\n\n getOptionLabel(option: any) {\n return this.optionLabel ? ObjectUtils.resolveFieldData(option, this.optionLabel) : (option.label != undefined ? option.label : option);\n }\n\n getOptionGroupChildren(optionGroup: any) {\n return this.optionGroupChildren ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupChildren) : optionGroup.items;\n }\n\n getOptionGroupLabel(optionGroup: any) {\n return this.optionGroupLabel ? ObjectUtils.resolveFieldData(optionGroup, this.optionGroupLabel) : (optionGroup.label != undefined ? optionGroup.label : optionGroup);\n }\n\n getOptionValue(option: any) {\n return this.optionValue ? ObjectUtils.resolveFieldData(option, this.optionValue) : (this.optionLabel || option.value === undefined ? option : option.value);\n }\n\n isOptionDisabled(option: any) {\n return this.optionDisabled ? ObjectUtils.resolveFieldData(option, this.optionDisabled) : (option.disabled !== undefined ? option.disabled : false);\n }\n\n writeValue(value: any): void {\n this.value = value;\n this.cd.markForCheck();\n }\n\n registerOnChange(fn: Function): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: Function): void {\n this.onModelTouched = fn;\n }\n\n setDisabledState(val: boolean): void {\n this.disabled = val;\n this.cd.markForCheck();\n }\n\n onOptionClick(event: Event, option: any) {\n if (this.disabled || this.isOptionDisabled(option) || this.readonly) {\n return;\n }\n\n if (this.multiple) {\n if (this.checkbox)\n this.onOptionClickCheckbox(event, option);\n else\n this.onOptionClickMultiple(event, option);\n }\n else {\n this.onOptionClickSingle(event, option);\n }\n this.onClick.emit({\n originalEvent: event,\n option: option,\n value: this.value\n });\n this.optionTouched = false;\n }\n\n onOptionTouchEnd(option: any) {\n if (this.disabled || this.isOptionDisabled(option) || this.readonly) {\n return;\n }\n\n this.optionTouched = true;\n }\n\n onOptionDoubleClick(event: Event, option: any): any {\n if (this.disabled || this.isOptionDisabled(option) || this.readonly) {\n return;\n }\n\n this.onDblClick.emit({\n originalEvent: event,\n option: option,\n value: this.value\n })\n }\n\n onOptionClickSingle(event, option) {\n let selected = this.isSelected(option);\n let valueChanged = false;\n let metaSelection = this.optionTouched ? false : this.metaKeySelection;\n\n if (metaSelection) {\n let metaKey = (event.metaKey || event.ctrlKey);\n\n if (selected) {\n if (metaKey) {\n this.value = null;\n valueChanged = true;\n }\n }\n else {\n this.value = this.getOptionValue(option);\n valueChanged = true;\n }\n }\n else {\n this.value = selected ? null : this.getOptionValue(option);\n valueChanged = true;\n }\n\n if (valueChanged) {\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n }\n\n onOptionClickMultiple(event, option) {\n let selected = this.isSelected(option);\n let valueChanged = false;\n let metaSelection = this.optionTouched ? false : this.metaKeySelection;\n\n if (metaSelection) {\n let metaKey = (event.metaKey || event.ctrlKey);\n\n if (selected) {\n if (metaKey) {\n this.removeOption(option);\n }\n else {\n this.value = [this.getOptionValue(option)];\n }\n valueChanged = true;\n }\n else {\n this.value = (metaKey) ? this.value || [] : [];\n this.value = [...this.value, this.getOptionValue(option)];\n valueChanged = true;\n }\n }\n else {\n if (selected) {\n this.removeOption(option);\n }\n else {\n this.value = [...this.value || [], this.getOptionValue(option)];\n }\n\n valueChanged = true;\n }\n\n if (valueChanged) {\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n }\n\n onOptionClickCheckbox(event, option) {\n if (this.disabled || this.readonly) {\n return;\n }\n\n let selected = this.isSelected(option);\n\n if (selected) {\n this.removeOption(option);\n }\n else {\n this.value = this.value ? this.value : [];\n this.value = [...this.value, this.getOptionValue(option)];\n }\n\n this.onModelChange(this.value);\n this.onChange.emit({\n originalEvent: event,\n value: this.value\n });\n }\n\n removeOption(option: any): void {\n this.value = this.value.filter(val => !ObjectUtils.equals(val, this.getOptionValue(option), this.dataKey));\n }\n\n isSelected(option: any) {\n let selected = false;\n let optionValue = this.getOptionValue(option);\n\n if (this.multiple) {\n if (this.value) {\n for (let val of this.value) {\n if (ObjectUtils.equals(val, optionValue, this.dataKey)) {\n selected = true;\n break;\n }\n }\n }\n }\n else {\n selected = ObjectUtils.equals(this.value, optionValue, this.dataKey);\n }\n\n return selected;\n }\n\n get allChecked(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return false;\n }\n else {\n let selectedDisabledItemsLength = 0;\n let unselectedDisabledItemsLength = 0;\n let selectedEnabledItemsLength = 0;\n let visibleOptionsLength = this.group ? 0 : this.optionsToRender.length;\n\n for (let option of optionsToRender) {\n if (!this.group) {\n let disabled = this.isOptionDisabled(option);\n let selected = this.isSelected(option);\n\n if (disabled) {\n if (selected)\n selectedDisabledItemsLength++;\n else\n unselectedDisabledItemsLength++;\n }\n else {\n if (selected)\n selectedEnabledItemsLength++;\n else\n return false;\n }\n }\n else {\n for (let opt of this.getOptionGroupChildren(option)) {\n let disabled = this.isOptionDisabled(opt);\n let selected = this.isSelected(opt);\n\n if (disabled) {\n if (selected)\n selectedDisabledItemsLength++;\n else\n unselectedDisabledItemsLength++;\n }\n else {\n if (selected)\n selectedEnabledItemsLength++;\n else {\n return false;\n }\n }\n\n visibleOptionsLength++;\n }\n }\n }\n\n return (visibleOptionsLength === selectedDisabledItemsLength\n || visibleOptionsLength === selectedEnabledItemsLength\n || selectedEnabledItemsLength && visibleOptionsLength === (selectedEnabledItemsLength + unselectedDisabledItemsLength + selectedDisabledItemsLength));\n }\n }\n\n get optionsToRender(): any[] {\n return this._filteredOptions || this.options;\n }\n\n\n get emptyMessageLabel(): string {\n return this.emptyMessage || this.config.getTranslation(TranslationKeys.EMPTY_MESSAGE);\n }\n\n get emptyFilterMessageLabel(): string {\n return this.emptyFilterMessage || this.config.getTranslation(TranslationKeys.EMPTY_FILTER_MESSAGE);\n }\n\n hasFilter() {\n return this._filterValue && this._filterValue.trim().length > 0;\n }\n\n isEmpty(optionsToDisplay) {\n return !optionsToDisplay || (optionsToDisplay && optionsToDisplay.length === 0);\n }\n\n onFilter(event: KeyboardEvent) {\n this._filterValue = (<HTMLInputElement> event.target).value;\n this.activateFilter();\n }\n\n activateFilter() {\n if (this.hasFilter() && this._options) {\n if (this.group) {\n let searchFields: string[] = (this.optionLabel || 'label').split(',');\n\n let filteredGroups = [];\n for (let optgroup of this.options) {\n let filteredSubOptions = this.filterService.filter(this.getOptionGroupChildren(optgroup), searchFields, this.filterValue, this.filterMatchMode, this.filterLocale);\n if (filteredSubOptions && filteredSubOptions.length) {\n filteredGroups.push({...optgroup, ...{[this.optionGroupChildren]: filteredSubOptions}});\n }\n }\n\n this._filteredOptions = filteredGroups;\n }\n else {\n this._filteredOptions = this._options.filter(option => this.filterService.filters[this.filterMatchMode](this.getOptionLabel(option), this._filterValue, this.filterLocale));\n }\n }\n else {\n this._filteredOptions = null;\n }\n }\n\n get toggleAllDisabled(): boolean {\n let optionsToRender = this.optionsToRender;\n if (!optionsToRender || optionsToRender.length === 0) {\n return true;\n }\n else {\n for (let option of optionsToRender) {\n if (!this.isOptionDisabled(option))\n return false;\n }\n\n return true;\n }\n }\n\n toggleAll(event) {\n if (this.disabled || this.toggleAllDisabled || this.readonly) {\n return;\n }\n\n let allChecked = this.allChecked;\n\n if (allChecked)\n this.uncheckAll();\n else\n this.checkAll();\n\n this.onModelChange(this.value);\n this.onChange.emit({ originalEvent: event, value: this.value });\n event.preventDefault();\n }\n\n checkAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach(opt => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (!optionDisabled || (optionDisabled && this.isSelected(opt))) {\n val.push(this.getOptionValue(opt));\n }\n }\n else {\n let subOptions = this.getOptionGroupChildren(opt);\n\n if (subOptions) {\n subOptions.forEach(option => {\n let optionDisabled = this.isOptionDisabled(option);\n if (!optionDisabled || (optionDisabled && this.isSelected(option))) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n uncheckAll() {\n let optionsToRender = this.optionsToRender;\n let val: any[] = [];\n\n optionsToRender.forEach(opt => {\n if (!this.group) {\n let optionDisabled = this.isOptionDisabled(opt);\n if (optionDisabled && this.isSelected(opt)) {\n val.push(this.getOptionValue(opt));\n }\n }\n else {\n if (opt.items) {\n opt.items.forEach(option => {\n let optionDisabled = this.isOptionDisabled(option);\n if (optionDisabled && this.isSelected(option)) {\n val.push(this.getOptionValue(option));\n }\n });\n }\n }\n });\n\n this.value = val;\n }\n\n onOptionKeyDown(event:KeyboardEvent, option) {\n if (this.readonly) {\n return;\n }\n\n let item = <HTMLLIElement> event.currentTarget;\n\n switch(event.which) {\n //down\n case 40:\n var nextItem = this.findNextItem(item);\n if (nextItem) {\n nextItem.focus();\n }\n\n event.preventDefault();\n break;\n\n //up\n case 38:\n var prevItem = this.findPrevItem(item);\n if (prevItem) {\n prevItem.focus();\n }\n\n event.preventDefault();\n break;\n\n //enter\n case 13:\n this.onOptionClick(event, option);\n event.preventDefault();\n break;\n }\n }\n\n findNextItem(item) {\n let nextItem = item.nextElementSibling;\n\n if (nextItem)\n return DomHandler.hasClass(nextItem, 'p-disabled') || DomHandler.isHidden(nextItem) || DomHandler.hasClass(nextItem, 'p-listbox-item-group') ? this.findNextItem(nextItem) : nextItem;\n else\n return null;\n }\n\n findPrevItem(item) {\n let prevItem = item.previousElementSibling;\n\n if (prevItem)\n return DomHandler.hasClass(prevItem, 'p-disabled') || DomHandler.isHidden(prevItem) || DomHandler.hasClass(prevItem, 'p-listbox-item-group') ? this.findPrevItem(prevItem) : prevItem;\n else\n return null;\n }\n\n onHeaderCheckboxFocus() {\n this.headerCheckboxFocus = true;\n }\n\n onHeaderCheckboxBlur() {\n this.headerCheckboxFocus = false;\n }\n\n ngOnDestroy() {\n if (this.translationSubscription) {\n this.translationSubscription.unsubscribe();\n }\n }\n}\n\n@NgModule({\n imports: [CommonModule, SharedModule, RippleModule],\n exports: [Listbox, SharedModule],\n declarations: [Listbox]\n})\nexport class ListboxModule { }\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
package/fesm2015/primeng-menu.js
CHANGED
@@ -17,16 +17,58 @@ class MenuItemContent {
|
|
17
17
|
constructor(menu) {
|
18
18
|
this.menu = menu;
|
19
19
|
}
|
20
|
+
onItemKeyDown(event) {
|
21
|
+
let listItem = event.currentTarget.parentElement;
|
22
|
+
switch (event.code) {
|
23
|
+
case 'ArrowDown':
|
24
|
+
var nextItem = this.findNextItem(listItem);
|
25
|
+
if (nextItem) {
|
26
|
+
nextItem.children[0].focus();
|
27
|
+
}
|
28
|
+
event.preventDefault();
|
29
|
+
break;
|
30
|
+
case 'ArrowUp':
|
31
|
+
var prevItem = this.findPrevItem(listItem);
|
32
|
+
if (prevItem) {
|
33
|
+
prevItem.children[0].focus();
|
34
|
+
}
|
35
|
+
event.preventDefault();
|
36
|
+
break;
|
37
|
+
case 'Space':
|
38
|
+
case 'Enter':
|
39
|
+
if (listItem && !DomHandler.hasClass(listItem, 'p-disabled')) {
|
40
|
+
listItem.children[0].click();
|
41
|
+
}
|
42
|
+
event.preventDefault();
|
43
|
+
break;
|
44
|
+
default:
|
45
|
+
break;
|
46
|
+
}
|
47
|
+
}
|
48
|
+
findNextItem(item) {
|
49
|
+
let nextItem = item.nextElementSibling;
|
50
|
+
if (nextItem)
|
51
|
+
return DomHandler.hasClass(nextItem, 'p-disabled') || !DomHandler.hasClass(nextItem, 'p-menuitem') ? this.findNextItem(nextItem) : nextItem;
|
52
|
+
else
|
53
|
+
return null;
|
54
|
+
}
|
55
|
+
findPrevItem(item) {
|
56
|
+
let prevItem = item.previousElementSibling;
|
57
|
+
if (prevItem)
|
58
|
+
return DomHandler.hasClass(prevItem, 'p-disabled') || !DomHandler.hasClass(prevItem, 'p-menuitem') ? this.findPrevItem(prevItem) : prevItem;
|
59
|
+
else
|
60
|
+
return null;
|
61
|
+
}
|
20
62
|
}
|
21
63
|
MenuItemContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: MenuItemContent, deps: [{ token: forwardRef(() => Menu) }], target: i0.ɵɵFactoryTarget.Component });
|
22
64
|
MenuItemContent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.0.5", type: MenuItemContent, selector: "[pMenuItemContent]", inputs: { item: ["pMenuItemContent", "item"] }, host: { classAttribute: "p-element" }, ngImport: i0, template: `
|
23
|
-
<a *ngIf="!item.routerLink" [attr.href]="item.url||null" class="p-menuitem-link" [attr.tabindex]="item.disabled ? null : '0'" [attr.data-automationid]="item.automationId" [attr.target]="item.target" [attr.title]="item.title" [attr.id]="item.id"
|
65
|
+
<a *ngIf="!item.routerLink" (keydown)="onItemKeyDown($event)" [attr.href]="item.url||null" class="p-menuitem-link" [attr.tabindex]="item.disabled ? null : '0'" [attr.data-automationid]="item.automationId" [attr.target]="item.target" [attr.title]="item.title" [attr.id]="item.id"
|
24
66
|
[ngClass]="{'p-disabled':item.disabled}" (click)="menu.itemClick($event, item)" role="menuitem">
|
25
67
|
<span class="p-menuitem-icon" *ngIf="item.icon" [ngClass]="item.icon"></span>
|
26
68
|
<span class="p-menuitem-text" *ngIf="item.escape !== false; else htmlLabel">{{item.label}}</span>
|
27
69
|
<ng-template #htmlLabel><span class="p-menuitem-text" [innerHTML]="item.label"></span></ng-template>
|
28
70
|
</a>
|
29
|
-
<a *ngIf="item.routerLink" [routerLink]="item.routerLink" [attr.data-automationid]="item.automationId" [queryParams]="item.queryParams" [routerLinkActive]="'p-menuitem-link-active'"
|
71
|
+
<a *ngIf="item.routerLink" (keydown)="onItemKeyDown($event)" [routerLink]="item.routerLink" [attr.data-automationid]="item.automationId" [queryParams]="item.queryParams" [routerLinkActive]="'p-menuitem-link-active'"
|
30
72
|
[routerLinkActiveOptions]="item.routerLinkActiveOptions||{exact:false}" class="p-menuitem-link" [attr.target]="item.target" [attr.id]="item.id" [attr.tabindex]="item.disabled ? null : '0'"
|
31
73
|
[attr.title]="item.title" [ngClass]="{'p-disabled':item.disabled}" (click)="menu.itemClick($event, item)" role="menuitem" pRipple
|
32
74
|
[fragment]="item.fragment" [queryParamsHandling]="item.queryParamsHandling" [preserveFragment]="item.preserveFragment" [skipLocationChange]="item.skipLocationChange" [replaceUrl]="item.replaceUrl" [state]="item.state">
|
@@ -40,13 +82,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImpor
|
|
40
82
|
args: [{
|
41
83
|
selector: '[pMenuItemContent]',
|
42
84
|
template: `
|
43
|
-
<a *ngIf="!item.routerLink" [attr.href]="item.url||null" class="p-menuitem-link" [attr.tabindex]="item.disabled ? null : '0'" [attr.data-automationid]="item.automationId" [attr.target]="item.target" [attr.title]="item.title" [attr.id]="item.id"
|
85
|
+
<a *ngIf="!item.routerLink" (keydown)="onItemKeyDown($event)" [attr.href]="item.url||null" class="p-menuitem-link" [attr.tabindex]="item.disabled ? null : '0'" [attr.data-automationid]="item.automationId" [attr.target]="item.target" [attr.title]="item.title" [attr.id]="item.id"
|
44
86
|
[ngClass]="{'p-disabled':item.disabled}" (click)="menu.itemClick($event, item)" role="menuitem">
|
45
87
|
<span class="p-menuitem-icon" *ngIf="item.icon" [ngClass]="item.icon"></span>
|
46
88
|
<span class="p-menuitem-text" *ngIf="item.escape !== false; else htmlLabel">{{item.label}}</span>
|
47
89
|
<ng-template #htmlLabel><span class="p-menuitem-text" [innerHTML]="item.label"></span></ng-template>
|
48
90
|
</a>
|
49
|
-
<a *ngIf="item.routerLink" [routerLink]="item.routerLink" [attr.data-automationid]="item.automationId" [queryParams]="item.queryParams" [routerLinkActive]="'p-menuitem-link-active'"
|
91
|
+
<a *ngIf="item.routerLink" (keydown)="onItemKeyDown($event)" [routerLink]="item.routerLink" [attr.data-automationid]="item.automationId" [queryParams]="item.queryParams" [routerLinkActive]="'p-menuitem-link-active'"
|
50
92
|
[routerLinkActiveOptions]="item.routerLinkActiveOptions||{exact:false}" class="p-menuitem-link" [attr.target]="item.target" [attr.id]="item.id" [attr.tabindex]="item.disabled ? null : '0'"
|
51
93
|
[attr.title]="item.title" [ngClass]="{'p-disabled':item.disabled}" (click)="menu.itemClick($event, item)" role="menuitem" pRipple
|
52
94
|
[fragment]="item.fragment" [queryParamsHandling]="item.queryParamsHandling" [preserveFragment]="item.preserveFragment" [skipLocationChange]="item.skipLocationChange" [replaceUrl]="item.replaceUrl" [state]="item.state">
|