primeng 18.0.6-lts → 18.0.7-lts
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/LICENSE.md +3 -3
- package/api/translation.d.ts +1 -0
- package/confirmdialog/confirmdialog.d.ts +1 -0
- package/dialog/dialog.d.ts +1 -0
- package/dynamicdialog/dynamicdialog-config.d.ts +1 -1
- package/editor/editor.d.ts +25 -4
- package/editor/editor.interface.d.ts +67 -9
- package/esm2022/api/translation.mjs +1 -1
- package/esm2022/autocomplete/autocomplete.mjs +1 -4
- package/esm2022/config/primeng.mjs +3 -2
- package/esm2022/confirmdialog/confirmdialog.mjs +41 -3
- package/esm2022/contextmenu/contextmenu.mjs +3 -3
- package/esm2022/datepicker/datepicker.mjs +10 -4
- package/esm2022/dialog/dialog.mjs +15 -4
- package/esm2022/dock/dock.mjs +2 -2
- package/esm2022/dynamicdialog/dynamicdialog-config.mjs +2 -2
- package/esm2022/editor/editor.interface.mjs +1 -1
- package/esm2022/editor/editor.mjs +61 -3
- package/esm2022/listbox/listbox.mjs +85 -10
- package/esm2022/listbox/style/listboxstyle.mjs +23 -1
- package/esm2022/megamenu/megamenu.mjs +2 -2
- package/esm2022/menu/menu.mjs +2 -2
- package/esm2022/menubar/menubar.mjs +2 -2
- package/esm2022/message/message.mjs +1 -1
- package/esm2022/multiselect/multiselect.mjs +6 -3
- package/esm2022/picklist/picklist.mjs +105 -32
- package/esm2022/radiobutton/radiobutton.mjs +4 -5
- package/esm2022/select/select.mjs +29 -14
- package/esm2022/table/style/tablestyle.mjs +2 -2
- package/esm2022/table/table.mjs +56 -22
- package/esm2022/tabs/tablist.mjs +2 -2
- package/esm2022/tag/tag.mjs +1 -1
- package/esm2022/terminal/terminal.mjs +22 -12
- package/esm2022/tieredmenu/tieredmenu.mjs +2 -2
- package/esm2022/treetable/treetable.mjs +9 -9
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-animateonscroll.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +0 -3
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-autofocus.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs.map +1 -1
- package/fesm2022/primeng-avatargroup.mjs.map +1 -1
- package/fesm2022/primeng-badge.mjs.map +1 -1
- package/fesm2022/primeng-base.mjs.map +1 -1
- package/fesm2022/primeng-basecomponent.mjs.map +1 -1
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-buttongroup.mjs.map +1 -1
- package/fesm2022/primeng-calendar.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-carousel.mjs.map +1 -1
- package/fesm2022/primeng-cascadeselect.mjs.map +1 -1
- package/fesm2022/primeng-chart.mjs.map +1 -1
- package/fesm2022/primeng-checkbox.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-chips.mjs.map +1 -1
- package/fesm2022/primeng-colorpicker.mjs.map +1 -1
- package/fesm2022/primeng-config.mjs +2 -1
- package/fesm2022/primeng-config.mjs.map +1 -1
- package/fesm2022/primeng-confirmdialog.mjs +40 -2
- package/fesm2022/primeng-confirmdialog.mjs.map +1 -1
- package/fesm2022/primeng-confirmpopup.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +2 -2
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-dataview.mjs.map +1 -1
- package/fesm2022/primeng-datepicker.mjs +9 -3
- package/fesm2022/primeng-datepicker.mjs.map +1 -1
- package/fesm2022/primeng-defer.mjs.map +1 -1
- package/fesm2022/primeng-dialog.mjs +14 -3
- package/fesm2022/primeng-dialog.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +1 -1
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dragdrop.mjs.map +1 -1
- package/fesm2022/primeng-drawer.mjs.map +1 -1
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-editor.mjs +60 -2
- package/fesm2022/primeng-editor.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-floatlabel.mjs.map +1 -1
- package/fesm2022/primeng-fluid.mjs.map +1 -1
- package/fesm2022/primeng-focustrap.mjs.map +1 -1
- package/fesm2022/primeng-galleria.mjs.map +1 -1
- package/fesm2022/primeng-iconfield.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledoubleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-angledown.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleright.mjs.map +1 -1
- package/fesm2022/primeng-icons-angleup.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowdownright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowright.mjs.map +1 -1
- package/fesm2022/primeng-icons-arrowup.mjs.map +1 -1
- package/fesm2022/primeng-icons-ban.mjs.map +1 -1
- package/fesm2022/primeng-icons-bars.mjs.map +1 -1
- package/fesm2022/primeng-icons-baseicon.mjs.map +1 -1
- package/fesm2022/primeng-icons-blank.mjs.map +1 -1
- package/fesm2022/primeng-icons-calendar.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-caretright.mjs.map +1 -1
- package/fesm2022/primeng-icons-check.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevrondown.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronleft.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronright.mjs.map +1 -1
- package/fesm2022/primeng-icons-chevronup.mjs.map +1 -1
- package/fesm2022/primeng-icons-exclamationtriangle.mjs.map +1 -1
- package/fesm2022/primeng-icons-eye.mjs.map +1 -1
- package/fesm2022/primeng-icons-eyeslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-filter.mjs.map +1 -1
- package/fesm2022/primeng-icons-filterslash.mjs.map +1 -1
- package/fesm2022/primeng-icons-home.mjs.map +1 -1
- package/fesm2022/primeng-icons-infocircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-minus.mjs.map +1 -1
- package/fesm2022/primeng-icons-pencil.mjs.map +1 -1
- package/fesm2022/primeng-icons-plus.mjs.map +1 -1
- package/fesm2022/primeng-icons-refresh.mjs.map +1 -1
- package/fesm2022/primeng-icons-search.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchminus.mjs.map +1 -1
- package/fesm2022/primeng-icons-searchplus.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountdown.mjs.map +1 -1
- package/fesm2022/primeng-icons-sortamountupalt.mjs.map +1 -1
- package/fesm2022/primeng-icons-spinner.mjs.map +1 -1
- package/fesm2022/primeng-icons-star.mjs.map +1 -1
- package/fesm2022/primeng-icons-starfill.mjs.map +1 -1
- package/fesm2022/primeng-icons-thlarge.mjs.map +1 -1
- package/fesm2022/primeng-icons-times.mjs.map +1 -1
- package/fesm2022/primeng-icons-timescircle.mjs.map +1 -1
- package/fesm2022/primeng-icons-trash.mjs.map +1 -1
- package/fesm2022/primeng-icons-undo.mjs.map +1 -1
- package/fesm2022/primeng-icons-upload.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowmaximize.mjs.map +1 -1
- package/fesm2022/primeng-icons-windowminimize.mjs.map +1 -1
- package/fesm2022/primeng-iftalabel.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-imagecompare.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-inputgroup.mjs.map +1 -1
- package/fesm2022/primeng-inputgroupaddon.mjs.map +1 -1
- package/fesm2022/primeng-inputicon.mjs.map +1 -1
- package/fesm2022/primeng-inputmask.mjs.map +1 -1
- package/fesm2022/primeng-inputnumber.mjs.map +1 -1
- package/fesm2022/primeng-inputotp.mjs.map +1 -1
- package/fesm2022/primeng-inputswitch.mjs.map +1 -1
- package/fesm2022/primeng-inputtext.mjs.map +1 -1
- package/fesm2022/primeng-inputtextarea.mjs.map +1 -1
- package/fesm2022/primeng-keyfilter.mjs.map +1 -1
- package/fesm2022/primeng-knob.mjs.map +1 -1
- package/fesm2022/primeng-listbox.mjs +107 -10
- package/fesm2022/primeng-listbox.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +1 -1
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +1 -1
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +1 -1
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-message.mjs.map +1 -1
- package/fesm2022/primeng-messages.mjs.map +1 -1
- package/fesm2022/primeng-metergroup.mjs.map +1 -1
- package/fesm2022/primeng-multiselect.mjs +5 -2
- package/fesm2022/primeng-multiselect.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-organizationchart.mjs.map +1 -1
- package/fesm2022/primeng-overlay.mjs.map +1 -1
- package/fesm2022/primeng-overlaybadge.mjs.map +1 -1
- package/fesm2022/primeng-overlaypanel.mjs.map +1 -1
- package/fesm2022/primeng-paginator.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-password.mjs.map +1 -1
- package/fesm2022/primeng-picklist.mjs +104 -31
- package/fesm2022/primeng-picklist.mjs.map +1 -1
- package/fesm2022/primeng-popover.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-progressspinner.mjs.map +1 -1
- package/fesm2022/primeng-radiobutton.mjs +3 -4
- package/fesm2022/primeng-radiobutton.mjs.map +1 -1
- package/fesm2022/primeng-rating.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs.map +1 -1
- package/fesm2022/primeng-scroller.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-select.mjs +28 -13
- package/fesm2022/primeng-select.mjs.map +1 -1
- package/fesm2022/primeng-selectbutton.mjs.map +1 -1
- package/fesm2022/primeng-sidebar.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs.map +1 -1
- package/fesm2022/primeng-slider.mjs.map +1 -1
- package/fesm2022/primeng-speeddial.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-stepper.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-styleclass.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +57 -23
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs.map +1 -1
- package/fesm2022/primeng-tabs.mjs +1 -1
- package/fesm2022/primeng-tabs.mjs.map +1 -1
- package/fesm2022/primeng-tabview.mjs.map +1 -1
- package/fesm2022/primeng-tag.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +21 -11
- package/fesm2022/primeng-terminal.mjs.map +1 -1
- package/fesm2022/primeng-textarea.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +1 -1
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-timeline.mjs.map +1 -1
- package/fesm2022/primeng-toast.mjs.map +1 -1
- package/fesm2022/primeng-togglebutton.mjs.map +1 -1
- package/fesm2022/primeng-toggleswitch.mjs.map +1 -1
- package/fesm2022/primeng-toolbar.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treeselect.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +8 -8
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-usestyle.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/listbox/listbox.d.ts +27 -1
- package/message/message.d.ts +1 -1
- package/multiselect/multiselect.d.ts +1 -1
- package/package.json +335 -335
- package/table/table.d.ts +10 -2
- package/tag/tag.d.ts +1 -1
- package/terminal/terminal.d.ts +2 -1
@@ -238,7 +238,7 @@ class DynamicDialogConfig {
|
|
238
238
|
*/
|
239
239
|
minimizeIcon;
|
240
240
|
/**
|
241
|
-
* Position of the dialog, options are "center", "top", "bottom", "left", "right", "
|
241
|
+
* Position of the dialog, options are "center", "top", "bottom", "left", "right", "topleft", "topright", "bottomleft" or "bottomright".
|
242
242
|
* @group Props
|
243
243
|
*/
|
244
244
|
position;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-dynamicdialog.mjs","sources":["../../src/dynamicdialog/dynamicdialogcontent.ts","../../src/dynamicdialog/style/dynamicdialogstyle.ts","../../src/dynamicdialog/dynamicdialog-config.ts","../../src/dynamicdialog/dynamicdialog-ref.ts","../../src/dynamicdialog/dynamicdialog.ts","../../src/dynamicdialog/dynamicdialog-injector.ts","../../src/dynamicdialog/dialogservice.ts","../../src/dynamicdialog/primeng-dynamicdialog.ts"],"sourcesContent":["import { Directive, ViewContainerRef } from '@angular/core';\n\n@Directive({\n selector: '[pDynamicDialogContent]',\n standalone: true\n})\nexport class DynamicDialogContent {\n constructor(public viewContainerRef: ViewContainerRef) {}\n}\n","import { Injectable } from '@angular/core';\nimport { DialogStyle } from 'primeng/dialog';\n\n@Injectable()\nexport class DynamicDialogStyle extends DialogStyle {\n name = 'dialog';\n}\n\n/**\n *\n * DynamicDialog is a container to display content in an overlay window.\n *\n * [Live Demo](https://www.primeng.org/dynamicdialog)\n *\n * @module dynamicdialogstyle\n *\n */\nexport enum DynamicDialogClasses {\n /**\n * Class name of the mask element\n */\n mask = 'p-dialog-mask',\n /**\n * Class name of the root element\n */\n root = 'p-dialog',\n /**\n * Class name of the header element\n */\n header = 'p-dialog-header',\n /**\n * Class name of the title element\n */\n title = 'p-dialog-title',\n /**\n * Class name of the header actions element\n */\n headerActions = 'p-dialog-header-actions',\n /**\n * Class name of the maximize button element\n */\n pcMaximizeButton = 'p-dialog-maximize-button',\n /**\n * Class name of the close button element\n */\n pcCloseButton = 'p-dialog-close-button',\n /**\n * Class name of the content element\n */\n content = 'p-dialog-content',\n /**\n * Class name of the footer element\n */\n footer = 'p-dialog-footer'\n}\n\nexport interface DynamicDialogStyle {}\n","import { Type } from '@angular/core';\n\n/**\n * Dialogs can be created dynamically with any component as the content using a DialogService.\n * @group Components\n */\nexport class DynamicDialogConfig<T = any> {\n /**\n * An object to pass to the component loaded inside the Dialog.\n * @group Props\n */\n data?: T;\n /**\n * Header text of the dialog.\n * @group Props\n */\n header?: string;\n /**\n * Identifies the element (or elements) that labels the element it is applied to.\n * @group Props\n */\n ariaLabelledBy?: string;\n /**\n * Footer text of the dialog.\n * @group Props\n */\n footer?: string;\n /**\n * Width of the dialog.\n * @group Props\n */\n width?: string;\n /**\n * Height of the dialog.\n * @group Props\n */\n height?: string;\n /**\n * Specifies if pressing escape key should hide the dialog.\n * @group Props\n */\n closeOnEscape?: boolean = false;\n /**\n * Specifies if autofocus should happen on show.\n * @group Props\n */\n focusOnShow?: boolean = true;\n /**\n * When enabled, can only focus on elements inside the dialog.\n * @group Props\n */\n focusTrap?: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n baseZIndex?: number;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n autoZIndex?: boolean = false;\n /**\n * Specifies if clicking the modal background should hide the dialog.\n * @group Props\n */\n dismissableMask?: boolean = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n rtl?: boolean = false;\n /**\n * Inline style of the comopnent.\n * @group Props\n */\n style?: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the content.\n * @group Props\n */\n contentStyle?: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n styleClass?: string;\n /**\n * Transition options of the animation.\n * @group Props\n */\n transitionOptions?: string;\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n closable?: boolean = false;\n /**\n * Whether to show the header or not.\n * @group Props\n */\n showHeader?: boolean = false;\n /**\n * Defines if background should be blocked when dialog is displayed.\n * @group Props\n */\n modal?: boolean = false;\n /**\n * Style class of the mask.\n * @group Props\n */\n maskStyleClass?: string;\n /**\n * Enables resizing of the content.\n * @group Props\n */\n resizable?: boolean = false;\n /**\n * Enables dragging to change the position using header.\n * @group Props\n */\n draggable?: boolean = false;\n /**\n * Keeps dialog in the viewport.\n * @group Props\n */\n keepInViewport?: boolean = false;\n /**\n * Minimum value for the left coordinate of dialog in dragging.\n * @group Props\n */\n minX?: number;\n /**\n * Minimum value for the top coordinate of dialog in dragging.\n * @group Props\n */\n minY?: number;\n /**\n * Whether the dialog can be displayed full screen.\n * @group Props\n */\n maximizable?: boolean = false;\n /**\n * Name of the maximize icon.\n * @group Props\n */\n maximizeIcon?: string;\n /**\n * Name of the minimize icon.\n * @group Props\n */\n minimizeIcon?: string;\n /**\n * Position of the dialog, options are \"center\", \"top\", \"bottom\", \"left\", \"right\", \"top-left\", \"top-right\", \"bottom-left\" or \"bottom-right\".\n * @group Props\n */\n position?: string;\n /**\n * Defines a string that labels the close button for accessibility.\n * @group Props\n */\n closeAriaLabel?: string;\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n appendTo?: any;\n /**\n * A boolean to determine if it can be duplicate.\n * @group Props\n */\n duplicate?: boolean = false;\n /**\n * Object literal to define widths per screen size.\n * @group Props\n */\n breakpoints?: any;\n /**\n * Dialog templates.\n * @group Props\n */\n templates?: DynamicDialogTemplates;\n}\n\n/**\n * Defines valid templates in Dynamic Dialog.\n * @group Interface\n */\nexport interface DynamicDialogTemplates {\n /**\n * Template of the header.\n */\n header?: Type<any>;\n /**\n * Template of the content.\n */\n content?: Type<any>;\n /**\n * Template of the footer.\n */\n footer?: Type<any>;\n /**\n * Template of the minimize icon.\n */\n minimizeicon?: Type<any>;\n /**\n * Template of the maximize icon.\n */\n maximizeicon?: Type<any>;\n /**\n * Template of the close icon.\n */\n closeicon?: Type<any>;\n}\n","import { Observable, Subject } from 'rxjs';\nimport { Output, EventEmitter, Type } from '@angular/core';\n/**\n * Dynamic Dialog instance.\n * @group Components\n */\nexport class DynamicDialogRef<ComponentType = any> {\n constructor() {}\n /**\n * Closes dialog.\n * @group Method\n */\n close(result?: any) {\n this._onClose.next(result);\n\n setTimeout(() => {\n this._onClose.complete();\n }, 1000);\n }\n /**\n * Destroys the dialog instance.\n * @group Method\n */\n destroy() {\n this._onDestroy.next(null);\n }\n /**\n * Callback to invoke on drag start.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n dragStart(event: MouseEvent) {\n this._onDragStart.next(event);\n }\n /**\n * Callback to invoke on drag end.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n dragEnd(event: MouseEvent) {\n this._onDragEnd.next(event);\n }\n /**\n * Callback to invoke on resize start.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n resizeInit(event: MouseEvent) {\n this._onResizeInit.next(event);\n }\n /**\n * Callback to invoke on resize start.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n resizeEnd(event: MouseEvent) {\n this._onResizeEnd.next(event);\n }\n /**\n * Callback to invoke on dialog is maximized.\n * @param {*} value - Size value.\n * @group Method\n */\n maximize(value: any) {\n this._onMaximize.next(value);\n }\n\n private readonly _onClose = new Subject<any>();\n /**\n * Event triggered on dialog is closed.\n * @group Events\n */\n onClose: Observable<any> = this._onClose.asObservable();\n\n private readonly _onDestroy = new Subject<any>();\n /**\n * Event triggered on dialog instance is destroyed.\n * @group Events\n */\n onDestroy: Observable<any> = this._onDestroy.asObservable();\n\n private readonly _onDragStart = new Subject<any>();\n /**\n * Event triggered on drag start.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onDragStart: Observable<any> = this._onDragStart.asObservable();\n\n private readonly _onDragEnd = new Subject<any>();\n /**\n * Event triggered on drag end.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onDragEnd: Observable<any> = this._onDragEnd.asObservable();\n\n private readonly _onResizeInit = new Subject<any>();\n /**\n * Event triggered on resize start.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onResizeInit: Observable<any> = this._onResizeInit.asObservable();\n\n private readonly _onResizeEnd = new Subject<any>();\n /**\n * Event triggered on resize end.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onResizeEnd: Observable<any> = this._onResizeEnd.asObservable();\n\n private readonly _onMaximize = new Subject<any>();\n /**\n * Event triggered on dialog is maximized.\n * @param {*} value - Size value.\n * @group Events\n */\n onMaximize: Observable<any> = this._onMaximize.asObservable();\n\n /**\n * Event triggered on child component load.\n * @param {*} value - Chi.\n * @group Events\n */\n readonly onChildComponentLoaded = new Subject<ComponentType>();\n}\n","import { animate, animation, AnimationEvent, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ComponentRef, ElementRef, inject, NgModule, NgZone, OnDestroy, Optional, Renderer2, SkipSelf, Type, ViewChild, ViewEncapsulation, ViewRef } from '@angular/core';\nimport { addClass, getOuterHeight, getOuterWidth, getViewport, hasClass, removeClass, setAttribute, uuid } from '@primeuix/utils';\nimport { SharedModule, TranslationKeys } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Button } from 'primeng/button';\nimport { DomHandler } from 'primeng/dom';\nimport { FocusTrap } from 'primeng/focustrap';\nimport { TimesIcon, WindowMaximizeIcon, WindowMinimizeIcon } from 'primeng/icons';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\nimport { DynamicDialogContent } from './dynamicdialogcontent';\nimport { DynamicDialogStyle } from './style/dynamicdialogstyle';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}', style({ transform: 'none', opacity: 1 }))]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n\n@Component({\n selector: 'p-dynamicDialog, p-dynamicdialog, p-dynamic-dialog',\n standalone: true,\n imports: [CommonModule, SharedModule, DynamicDialogContent, WindowMaximizeIcon, WindowMinimizeIcon, TimesIcon, Button, FocusTrap],\n template: `\n <div\n #mask\n [ngStyle]=\"{\n position: 'fixed',\n height: '100%',\n width: '100%',\n left: 0,\n top: 0,\n display: 'flex',\n 'justify-content': position === 'left' || position === 'topleft' || position === 'bottomleft' ? 'flex-start' : position === 'right' || position === 'topright' || position === 'bottomright' ? 'flex-end' : 'center',\n 'align-items': position === 'top' || position === 'topleft' || position === 'topright' ? 'flex-start' : position === 'bottom' || position === 'bottomleft' || position === 'bottomright' ? 'flex-end' : 'center',\n 'pointer-events': ddconfig.modal ? 'auto' : 'none'\n }\"\n [class]=\"ddconfig.maskStyleClass\"\n [ngClass]=\"maskClass\"\n >\n <div\n *ngIf=\"visible\"\n #container\n [ngClass]=\"{ 'p-dialog p-component': true, 'p-dialog-maximized': maximizable && maximized }\"\n [ngStyle]=\"{ display: 'flex', 'flex-direction': 'column', 'pointer-events': 'auto' }\"\n [style]=\"ddconfig.style\"\n [class]=\"ddconfig.styleClass\"\n [@animation]=\"{\n value: 'visible',\n params: {\n transform: transformOptions,\n transition: ddconfig.transitionOptions || '150ms cubic-bezier(0, 0, 0.2, 1)'\n }\n }\"\n (@animation.start)=\"onAnimationStart($event)\"\n (@animation.done)=\"onAnimationEnd($event)\"\n role=\"dialog\"\n pFocusTrap\n [pFocusTrapDisabled]=\"ddconfig.focusTrap === false\"\n [style.width]=\"ddconfig.width\"\n [style.height]=\"ddconfig.height\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-modal]=\"true\"\n [attr.id]=\"dialogId\"\n >\n <div *ngIf=\"ddconfig.resizable\" [ngClass]=\"'p-resizable-handle'\" style=\"z-index: 90;\" (mousedown)=\"initResize($event)\"></div>\n <div #titlebar [ngClass]=\"'p-dialog-header'\" (mousedown)=\"initDrag($event)\" *ngIf=\"ddconfig.showHeader !== false\">\n <ng-container *ngComponentOutlet=\"headerTemplate\"></ng-container>\n <ng-container *ngIf=\"!headerTemplate\">\n <span [ngClass]=\"'p-dialog-title'\" [id]=\"ariaLabelledBy\">{{ ddconfig.header }}</span>\n <div [ngClass]=\"'p-dialog-header-actions'\">\n <p-button *ngIf=\"ddconfig.maximizable\" [styleClass]=\"'p-dialog-maximize-button'\" (onClick)=\"maximize()\" (keydown.enter)=\"maximize()\" [tabindex]=\"maximizable ? '0' : '-1'\">\n <ng-container *ngIf=\"!maximizeIcon\">\n <WindowMaximizeIcon *ngIf=\"!maximized && !maximizeIconTemplate\" />\n <WindowMinimizeIcon *ngIf=\"maximized && !minimizeIconTemplate\" />\n </ng-container>\n <ng-container *ngIf=\"!maximized\">\n <ng-template *ngTemplateOutlet=\"_maximizeIconTemplate\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"maximized\">\n <ng-template *ngTemplateOutlet=\"_minimizeIconTemplate\"></ng-template>\n </ng-container>\n </p-button>\n <p-button *ngIf=\"closable\" [styleClass]=\"'p-dialog-close-button'\" [ariaLabel]=\"closeAriaLabel\" (onClick)=\"hide()\" (keydown.enter)=\"hide()\" rounded text severity=\"secondary\">\n <ng-container *ngIf=\"!closeIconTemplate\">\n <TimesIcon />\n </ng-container>\n <span *ngIf=\"closeIconTemplate\">\n <ng-template *ngTemplateOutlet=\"closeIconTemplate\"></ng-template>\n </span>\n </p-button>\n </div>\n </ng-container>\n </div>\n <div #content [ngClass]=\"'p-dialog-content'\" [ngStyle]=\"ddconfig.contentStyle\">\n <ng-template pDynamicDialogContent *ngIf=\"!contentTemplate\"></ng-template>\n <ng-container *ngComponentOutlet=\"contentTemplate\"></ng-container>\n </div>\n <div #footer [ngClass]=\"'p-dialog-footer'\" *ngIf=\"ddconfig.footer || footerTemplate\">\n <ng-container *ngIf=\"!footerTemplate\">\n {{ ddconfig.footer }}\n </ng-container>\n <ng-container *ngComponentOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n `,\n animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n providers: [DynamicDialogStyle]\n})\nexport class DynamicDialogComponent extends BaseComponent implements AfterViewInit, OnDestroy {\n visible: boolean = true;\n\n componentRef: Nullable<ComponentRef<any>>;\n\n mask: Nullable<HTMLDivElement>;\n\n resizing: boolean | undefined;\n\n dragging: boolean | undefined;\n\n maximized: boolean | undefined;\n\n _style: any = {};\n\n originalStyle: any;\n\n lastPageX: number | undefined;\n\n lastPageY: number | undefined;\n\n ariaLabelledBy: string | undefined;\n\n id: string = uuid('pn_id_');\n\n styleElement: any;\n\n @ViewChild(DynamicDialogContent) insertionPoint: Nullable<DynamicDialogContent>;\n\n @ViewChild('mask') maskViewChild: Nullable<ElementRef>;\n\n @ViewChild('content') contentViewChild: Nullable<ElementRef>;\n\n @ViewChild('footer') footerViewChild: Nullable<ElementRef>;\n\n @ViewChild('titlebar') headerViewChild: Nullable<ElementRef>;\n\n childComponentType: Nullable<Type<any>>;\n\n container: Nullable<HTMLDivElement>;\n\n wrapper: Nullable<HTMLElement>;\n\n documentKeydownListener: VoidListener;\n\n documentEscapeListener: VoidListener;\n\n maskClickListener: VoidListener;\n\n transformOptions: string = 'scale(0.7)';\n\n documentResizeListener: VoidListener;\n\n documentResizeEndListener: VoidListener;\n\n documentDragListener: VoidListener;\n\n documentDragEndListener: VoidListener;\n\n _componentStyle = inject(DynamicDialogStyle);\n\n get minX(): number {\n return this.ddconfig.minX ? this.ddconfig.minX : 0;\n }\n\n get minY(): number {\n return this.ddconfig.minY ? this.ddconfig.minY : 0;\n }\n\n get keepInViewport(): boolean {\n return this.ddconfig.keepInViewport!;\n }\n\n get maximizable(): boolean {\n return this.ddconfig.maximizable!;\n }\n\n get maximizeIcon(): string {\n return this.ddconfig.maximizeIcon!;\n }\n\n get minimizeIcon(): string {\n return this.ddconfig.minimizeIcon!;\n }\n\n get closable() {\n return this.ddconfig.closable!;\n }\n\n get style(): any {\n return this._style;\n }\n\n get position(): string {\n return this.ddconfig.position!;\n }\n\n get closeAriaLabel(): string {\n return this.config.getTranslation(TranslationKeys.ARIA)['close'];\n }\n\n set style(value: any) {\n if (value) {\n this._style = { ...value };\n this.originalStyle = value;\n }\n }\n\n get parent() {\n const domElements = Array.from(this.document.getElementsByClassName('p-dialog'));\n if (domElements.length > 1) {\n return domElements.pop();\n }\n }\n\n get parentContent() {\n const domElements = Array.from(this.document.getElementsByClassName('p-dialog'));\n if (domElements.length > 0) {\n const contentElements = domElements[domElements.length - 1].querySelector('.p-dialog-content');\n if (contentElements) return Array.isArray(contentElements) ? contentElements[0] : contentElements;\n }\n }\n\n get header() {\n return this.ddconfig.header;\n }\n\n get data() {\n return this.ddconfig.data;\n }\n\n get breakpoints() {\n return this.ddconfig.breakpoints;\n }\n\n get footerTemplate() {\n return this.ddconfig?.templates?.footer;\n }\n\n get headerTemplate() {\n return this.ddconfig?.templates?.header;\n }\n\n get contentTemplate() {\n return this.ddconfig?.templates?.content;\n }\n\n get minimizeIconTemplate() {\n return this.ddconfig?.templates?.minimizeicon;\n }\n\n get maximizeIconTemplate() {\n return this.ddconfig?.templates?.maximizeicon;\n }\n\n get closeIconTemplate() {\n return this.ddconfig?.templates?.closeicon;\n }\n\n get maskClass() {\n const positions = ['left', 'right', 'top', 'topleft', 'topright', 'bottom', 'bottomleft', 'bottomright'];\n const pos = positions.find((item) => item === this.position);\n\n return {\n 'p-dialog-mask': true,\n 'p-overlay-mask p-overlay-mask-enter': this.ddconfig.modal || this.ddconfig.dismissableMask,\n [`p-dialog-${pos}`]: pos\n };\n }\n\n get dialogId() {\n return this.attrSelector;\n }\n\n constructor(\n public renderer: Renderer2,\n public ddconfig: DynamicDialogConfig,\n private dialogRef: DynamicDialogRef,\n public zone: NgZone,\n @SkipSelf() @Optional() private parentDialog: DynamicDialogComponent\n ) {\n super();\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.breakpoints) {\n this.createStyle();\n }\n }\n\n createStyle() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.styleElement) {\n this.styleElement = this.renderer.createElement('style');\n this.styleElement.type = 'text/css';\n this.renderer.appendChild(this.document.head, this.styleElement);\n let innerHTML = '';\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[id=${this.dialogId}]:not(.p-dialog-maximized) {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.renderer.setProperty(this.styleElement, 'innerHTML', innerHTML);\n setAttribute(this.styleElement, 'nonce', this.config?.csp()?.nonce);\n }\n }\n }\n destroyStyle() {\n if (this.styleElement) {\n this.renderer.removeChild(this.document.head, this.styleElement);\n this.styleElement = null;\n }\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.loadChildComponent(this.childComponentType!);\n this.ariaLabelledBy = this.getAriaLabelledBy();\n this.cd.detectChanges();\n }\n\n getAriaLabelledBy() {\n const { header, showHeader } = this.ddconfig;\n\n if (header === null || showHeader === false) {\n return null;\n }\n return uuid('pn_id_') + '_header';\n }\n\n loadChildComponent(componentType: Type<any>) {\n let viewContainerRef = this.insertionPoint?.viewContainerRef;\n viewContainerRef?.clear();\n\n this.componentRef = viewContainerRef?.createComponent(componentType);\n this.dialogRef.onChildComponentLoaded.next(this.componentRef!.instance);\n }\n\n moveOnTop() {\n if (this.ddconfig.autoZIndex !== false) {\n ZIndexUtils.set('modal', this.container, (this.ddconfig.baseZIndex || 0) + this.config.zIndex.modal);\n (this.wrapper as HTMLElement).style.zIndex = String(parseInt((this.container as HTMLDivElement).style.zIndex, 10) - 1);\n }\n }\n\n onAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.wrapper = (this.container as HTMLDivElement).parentElement;\n this.moveOnTop();\n if (this.parent) {\n this.unbindGlobalListeners();\n }\n this.bindGlobalListeners();\n this.container?.setAttribute(this.id, '');\n\n if (this.ddconfig.modal !== false) {\n this.enableModality();\n }\n\n if (this.ddconfig.focusOnShow !== false) {\n this.focus();\n }\n break;\n\n case 'void':\n if (this.wrapper && this.ddconfig.modal !== false) {\n addClass(this.wrapper, 'p-overlay-mask-leave');\n }\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n if (event.toState === 'void') {\n if (this.parentContent) {\n this.focus(this.parentContent);\n }\n this.onContainerDestroy();\n this.dialogRef.destroy();\n }\n }\n\n onContainerDestroy() {\n this.unbindGlobalListeners();\n\n if (this.container && this.ddconfig.autoZIndex !== false) {\n ZIndexUtils.clear(this.container);\n }\n\n if (this.ddconfig.modal !== false) {\n this.disableModality();\n }\n this.container = null;\n }\n\n close() {\n this.visible = false;\n this.cd.markForCheck();\n }\n\n hide() {\n if (this.dialogRef) {\n this.dialogRef.close();\n }\n }\n\n enableModality() {\n if (this.ddconfig.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.ddconfig.modal !== false) {\n addClass(this.document.body, 'p-overflow-hidden');\n }\n }\n\n disableModality() {\n if (this.wrapper) {\n if (this.ddconfig.dismissableMask) {\n this.unbindMaskClickListener();\n }\n\n if (this.ddconfig.modal !== false) {\n removeClass(this.document.body, 'p-overflow-hidden');\n }\n\n if (!(this.cd as ViewRef).destroyed) {\n this.cd.detectChanges();\n }\n }\n }\n\n focus(focusParentElement = this.contentViewChild.nativeElement) {\n let focusable = DomHandler.getFocusableElement(focusParentElement, '[autofocus]');\n if (focusable) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusable.focus(), 5);\n });\n return;\n }\n const focusableElement = DomHandler.getFocusableElement(focusParentElement);\n if (focusableElement) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusableElement.focus(), 5);\n });\n } else if (this.footerViewChild) {\n // If the content section is empty try to focus on footer\n this.focus(this.footerViewChild.nativeElement);\n } else if (!focusableElement && this.headerViewChild) {\n this.focus(this.headerViewChild.nativeElement);\n }\n }\n\n maximize() {\n this.maximized = !this.maximized;\n\n if (this.maximized) {\n addClass(this.document.body, 'p-overflow-hidden');\n } else {\n removeClass(this.document.body, 'p-overflow-hidden');\n }\n\n this.dialogRef.maximize({ maximized: this.maximized });\n }\n\n initResize(event: MouseEvent) {\n if (this.ddconfig.resizable) {\n if (!this.documentResizeListener) {\n this.bindDocumentResizeListeners();\n }\n\n this.resizing = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n addClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.resizeInit(event);\n }\n }\n\n onResize(event: MouseEvent) {\n if (this.resizing) {\n let deltaX = event.pageX - (this.lastPageX as number);\n let deltaY = event.pageY - (this.lastPageY as number);\n let containerWidth = getOuterWidth(this.container);\n let containerHeight = getOuterHeight(this.container);\n let contentHeight = getOuterHeight((<ElementRef>this.contentViewChild).nativeElement);\n let newWidth = containerWidth + deltaX;\n let newHeight = containerHeight + deltaY;\n let minWidth = (this.container as HTMLDivElement).style.minWidth;\n let minHeight = (this.container as HTMLDivElement).style.minHeight;\n let offset = (this.container as HTMLDivElement).getBoundingClientRect();\n let viewport = getViewport();\n let hasBeenDragged = !parseInt((this.container as HTMLDivElement).style.top) || !parseInt((this.container as HTMLDivElement).style.left);\n\n if (hasBeenDragged) {\n newWidth += deltaX;\n newHeight += deltaY;\n }\n\n if ((!minWidth || newWidth > parseInt(minWidth)) && offset.left + newWidth < viewport.width) {\n this._style.width = newWidth + 'px';\n (this.container as HTMLDivElement).style.width = this._style.width;\n }\n\n if ((!minHeight || newHeight > parseInt(minHeight)) && offset.top + newHeight < viewport.height) {\n (<ElementRef>this.contentViewChild).nativeElement.style.height = contentHeight + newHeight - containerHeight + 'px';\n\n if (this._style.height) {\n this._style.height = newHeight + 'px';\n (this.container as HTMLDivElement).style.height = this._style.height;\n }\n }\n\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n }\n }\n\n resizeEnd(event: MouseEvent) {\n if (this.resizing) {\n this.resizing = false;\n removeClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.resizeEnd(event);\n }\n }\n\n initDrag(event: MouseEvent) {\n if (hasClass(event.target as any, 'p-dialog-header-icon') || hasClass((<HTMLElement>event.target).parentElement, 'p-dialog-header-icon')) {\n return;\n }\n\n if (this.ddconfig.draggable) {\n this.dragging = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n\n (this.container as HTMLDivElement).style.margin = '0';\n addClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.dragStart(event);\n }\n }\n\n onDrag(event: MouseEvent) {\n if (this.dragging) {\n let containerWidth = getOuterWidth(this.container);\n let containerHeight = getOuterHeight(this.container);\n let deltaX = event.pageX - (this.lastPageX as number);\n let deltaY = event.pageY - (this.lastPageY as number);\n let offset = (this.container as HTMLDivElement).getBoundingClientRect();\n let leftPos = offset.left + deltaX;\n let topPos = offset.top + deltaY;\n let viewport = getViewport();\n\n (this.container as HTMLDivElement).style.position = 'fixed';\n\n if (this.keepInViewport) {\n if (leftPos >= this.minX && leftPos + containerWidth < viewport.width) {\n this._style.left = leftPos + 'px';\n this.lastPageX = event.pageX;\n (this.container as HTMLDivElement).style.left = leftPos + 'px';\n }\n\n if (topPos >= this.minY && topPos + containerHeight < viewport.height) {\n this._style.top = topPos + 'px';\n this.lastPageY = event.pageY;\n (this.container as HTMLDivElement).style.top = topPos + 'px';\n }\n } else {\n this.lastPageX = event.pageX;\n (this.container as HTMLDivElement).style.left = leftPos + 'px';\n this.lastPageY = event.pageY;\n (this.container as HTMLDivElement).style.top = topPos + 'px';\n }\n }\n }\n\n endDrag(event: MouseEvent) {\n if (this.dragging) {\n this.dragging = false;\n removeClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.dragEnd(event);\n this.cd.detectChanges();\n }\n }\n\n resetPosition() {\n (this.container as HTMLDivElement).style.position = '';\n (this.container as HTMLDivElement).style.left = '';\n (this.container as HTMLDivElement).style.top = '';\n (this.container as HTMLDivElement).style.margin = '';\n }\n\n bindDocumentDragListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.documentDragListener = this.renderer.listen(this.document, 'mousemove', this.onDrag.bind(this));\n });\n }\n }\n\n bindDocumentDragEndListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.documentDragEndListener = this.renderer.listen(this.document, 'mouseup', this.endDrag.bind(this));\n });\n }\n }\n\n unbindDocumentDragEndListener() {\n if (this.documentDragEndListener) {\n this.documentDragEndListener();\n this.documentDragListener = null;\n }\n }\n\n unbindDocumentDragListener() {\n if (this.documentDragListener) {\n this.documentDragListener();\n this.documentDragListener = null;\n }\n }\n\n bindDocumentResizeListeners() {\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.documentResizeListener = this.renderer.listen(this.document, 'mousemove', this.onResize.bind(this));\n this.documentResizeEndListener = this.renderer.listen(this.document, 'mouseup', this.resizeEnd.bind(this));\n });\n }\n }\n\n unbindDocumentResizeListeners() {\n if (this.documentResizeListener && this.documentResizeEndListener) {\n this.documentResizeListener();\n this.documentResizeEndListener();\n this.documentResizeListener = null;\n this.documentResizeEndListener = null;\n }\n }\n\n bindGlobalListeners() {\n if (this.ddconfig.closeOnEscape !== false) {\n this.bindDocumentEscapeListener();\n }\n\n if (this.ddconfig.resizable) {\n this.bindDocumentResizeListeners();\n }\n\n if (this.ddconfig.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n }\n\n unbindGlobalListeners() {\n this.unbindDocumentEscapeListener();\n this.unbindDocumentResizeListeners();\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n }\n\n bindDocumentEscapeListener() {\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 as HTMLDivElement).style.zIndex) == ZIndexUtils.getCurrent()) {\n this.hide();\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n ngOnDestroy() {\n this.onContainerDestroy();\n\n if (this.componentRef) {\n this.componentRef.destroy();\n }\n this.destroyStyle();\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [DynamicDialogComponent, SharedModule],\n exports: [DynamicDialogComponent, SharedModule]\n})\nexport class DynamicDialog {}\n","import { InjectOptions, Injector, ProviderToken, InjectFlags } from '@angular/core';\n\nexport class DynamicDialogInjector implements Injector {\n constructor(\n private _parentInjector: Injector,\n private _additionalTokens: WeakMap<any, any>\n ) {}\n\n get<T>(token: ProviderToken<T>, notFoundValue?: T, options?: InjectOptions | InjectFlags): T {\n const value = this._additionalTokens.get(token);\n\n if (value) return value;\n\n return this._parentInjector.get<any>(token, notFoundValue);\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { ApplicationRef, ComponentRef, EmbeddedViewRef, Inject, Injectable, Injector, Type, createComponent } from '@angular/core';\nimport { appendChild } from '@primeuix/utils';\nimport { DynamicDialogComponent } from './dynamicdialog';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogInjector } from './dynamicdialog-injector';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\n\n/**\n * Dynamic Dialog component methods.\n * @group Service\n */\n@Injectable()\nexport class DialogService {\n dialogComponentRefMap: Map<DynamicDialogRef<any>, ComponentRef<DynamicDialogComponent>> = new Map();\n\n constructor(\n private appRef: ApplicationRef,\n private injector: Injector,\n @Inject(DOCUMENT) private document: Document\n ) {}\n /**\n * Displays the dialog using the dynamic dialog object options.\n * @param {*} componentType - Dynamic component for content template.\n * @param {DynamicDialogConfig} config - DynamicDialog object.\n * @returns {DynamicDialogRef} DynamicDialog instance.\n * @group Method\n */\n public open<T>(componentType: Type<T>, config: DynamicDialogConfig): DynamicDialogRef<T> {\n if (!this.duplicationPermission(componentType, config)) {\n return null;\n }\n\n const dialogRef = this.appendDialogComponentToBody<T>(config, componentType);\n\n this.dialogComponentRefMap.get(dialogRef).instance.childComponentType = componentType;\n\n return dialogRef;\n }\n /**\n * Returns the dynamic dialog component instance.\n * @param {ref} DynamicDialogRef - DynamicDialog instance.\n * @group Method\n */\n public getInstance(ref: DynamicDialogRef<any>) {\n return this.dialogComponentRefMap.get(ref).instance;\n }\n\n private appendDialogComponentToBody<T>(config: DynamicDialogConfig, componentType: Type<T>): DynamicDialogRef<T> {\n const map = new WeakMap();\n map.set(DynamicDialogConfig, config);\n\n const dialogRef = new DynamicDialogRef<T>();\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 componentRef = createComponent(DynamicDialogComponent, {\n environmentInjector: this.appRef.injector,\n elementInjector: new DynamicDialogInjector(this.injector, map)\n });\n\n this.appRef.attachView(componentRef.hostView);\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n if (!config.appendTo || config.appendTo === 'body') {\n this.document.body.appendChild(domElem);\n } else {\n appendChild(config.appendTo, domElem);\n }\n\n this.dialogComponentRefMap.set(dialogRef, componentRef);\n\n return dialogRef;\n }\n\n private removeDialogComponentFromBody(dialogRef: DynamicDialogRef<any>) {\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 private duplicationPermission(componentType: Type<any>, config: DynamicDialogConfig): boolean {\n if (config.duplicate) {\n return true;\n }\n let permission = true;\n for (const [key, value] of this.dialogComponentRefMap) {\n if (value.instance.childComponentType === componentType) {\n permission = false;\n break;\n }\n }\n return permission;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.DynamicDialogConfig","i2.DynamicDialogRef"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-dynamicdialog.mjs","sources":["../../src/dynamicdialog/dynamicdialogcontent.ts","../../src/dynamicdialog/style/dynamicdialogstyle.ts","../../src/dynamicdialog/dynamicdialog-config.ts","../../src/dynamicdialog/dynamicdialog-ref.ts","../../src/dynamicdialog/dynamicdialog.ts","../../src/dynamicdialog/dynamicdialog-injector.ts","../../src/dynamicdialog/dialogservice.ts","../../src/dynamicdialog/primeng-dynamicdialog.ts"],"sourcesContent":["import { Directive, ViewContainerRef } from '@angular/core';\n\n@Directive({\n selector: '[pDynamicDialogContent]',\n standalone: true\n})\nexport class DynamicDialogContent {\n constructor(public viewContainerRef: ViewContainerRef) {}\n}\n","import { Injectable } from '@angular/core';\nimport { DialogStyle } from 'primeng/dialog';\n\n@Injectable()\nexport class DynamicDialogStyle extends DialogStyle {\n name = 'dialog';\n}\n\n/**\n *\n * DynamicDialog is a container to display content in an overlay window.\n *\n * [Live Demo](https://www.primeng.org/dynamicdialog)\n *\n * @module dynamicdialogstyle\n *\n */\nexport enum DynamicDialogClasses {\n /**\n * Class name of the mask element\n */\n mask = 'p-dialog-mask',\n /**\n * Class name of the root element\n */\n root = 'p-dialog',\n /**\n * Class name of the header element\n */\n header = 'p-dialog-header',\n /**\n * Class name of the title element\n */\n title = 'p-dialog-title',\n /**\n * Class name of the header actions element\n */\n headerActions = 'p-dialog-header-actions',\n /**\n * Class name of the maximize button element\n */\n pcMaximizeButton = 'p-dialog-maximize-button',\n /**\n * Class name of the close button element\n */\n pcCloseButton = 'p-dialog-close-button',\n /**\n * Class name of the content element\n */\n content = 'p-dialog-content',\n /**\n * Class name of the footer element\n */\n footer = 'p-dialog-footer'\n}\n\nexport interface DynamicDialogStyle {}\n","import { Type } from '@angular/core';\n\n/**\n * Dialogs can be created dynamically with any component as the content using a DialogService.\n * @group Components\n */\nexport class DynamicDialogConfig<T = any> {\n /**\n * An object to pass to the component loaded inside the Dialog.\n * @group Props\n */\n data?: T;\n /**\n * Header text of the dialog.\n * @group Props\n */\n header?: string;\n /**\n * Identifies the element (or elements) that labels the element it is applied to.\n * @group Props\n */\n ariaLabelledBy?: string;\n /**\n * Footer text of the dialog.\n * @group Props\n */\n footer?: string;\n /**\n * Width of the dialog.\n * @group Props\n */\n width?: string;\n /**\n * Height of the dialog.\n * @group Props\n */\n height?: string;\n /**\n * Specifies if pressing escape key should hide the dialog.\n * @group Props\n */\n closeOnEscape?: boolean = false;\n /**\n * Specifies if autofocus should happen on show.\n * @group Props\n */\n focusOnShow?: boolean = true;\n /**\n * When enabled, can only focus on elements inside the dialog.\n * @group Props\n */\n focusTrap?: boolean = true;\n /**\n * Base zIndex value to use in layering.\n * @group Props\n */\n baseZIndex?: number;\n /**\n * Whether to automatically manage layering.\n * @group Props\n */\n autoZIndex?: boolean = false;\n /**\n * Specifies if clicking the modal background should hide the dialog.\n * @group Props\n */\n dismissableMask?: boolean = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n rtl?: boolean = false;\n /**\n * Inline style of the comopnent.\n * @group Props\n */\n style?: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the content.\n * @group Props\n */\n contentStyle?: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n styleClass?: string;\n /**\n * Transition options of the animation.\n * @group Props\n */\n transitionOptions?: string;\n /**\n * Adds a close icon to the header to hide the dialog.\n * @group Props\n */\n closable?: boolean = false;\n /**\n * Whether to show the header or not.\n * @group Props\n */\n showHeader?: boolean = false;\n /**\n * Defines if background should be blocked when dialog is displayed.\n * @group Props\n */\n modal?: boolean = false;\n /**\n * Style class of the mask.\n * @group Props\n */\n maskStyleClass?: string;\n /**\n * Enables resizing of the content.\n * @group Props\n */\n resizable?: boolean = false;\n /**\n * Enables dragging to change the position using header.\n * @group Props\n */\n draggable?: boolean = false;\n /**\n * Keeps dialog in the viewport.\n * @group Props\n */\n keepInViewport?: boolean = false;\n /**\n * Minimum value for the left coordinate of dialog in dragging.\n * @group Props\n */\n minX?: number;\n /**\n * Minimum value for the top coordinate of dialog in dragging.\n * @group Props\n */\n minY?: number;\n /**\n * Whether the dialog can be displayed full screen.\n * @group Props\n */\n maximizable?: boolean = false;\n /**\n * Name of the maximize icon.\n * @group Props\n */\n maximizeIcon?: string;\n /**\n * Name of the minimize icon.\n * @group Props\n */\n minimizeIcon?: string;\n /**\n * Position of the dialog, options are \"center\", \"top\", \"bottom\", \"left\", \"right\", \"topleft\", \"topright\", \"bottomleft\" or \"bottomright\".\n * @group Props\n */\n position?: string;\n /**\n * Defines a string that labels the close button for accessibility.\n * @group Props\n */\n closeAriaLabel?: string;\n /**\n * Target element to attach the overlay, valid values are \"body\" or a local ng-template variable of another element (note: use binding with brackets for template variables, e.g. [appendTo]=\"mydiv\" for a div element having #mydiv as variable name).\n * @group Props\n */\n appendTo?: any;\n /**\n * A boolean to determine if it can be duplicate.\n * @group Props\n */\n duplicate?: boolean = false;\n /**\n * Object literal to define widths per screen size.\n * @group Props\n */\n breakpoints?: any;\n /**\n * Dialog templates.\n * @group Props\n */\n templates?: DynamicDialogTemplates;\n}\n\n/**\n * Defines valid templates in Dynamic Dialog.\n * @group Interface\n */\nexport interface DynamicDialogTemplates {\n /**\n * Template of the header.\n */\n header?: Type<any>;\n /**\n * Template of the content.\n */\n content?: Type<any>;\n /**\n * Template of the footer.\n */\n footer?: Type<any>;\n /**\n * Template of the minimize icon.\n */\n minimizeicon?: Type<any>;\n /**\n * Template of the maximize icon.\n */\n maximizeicon?: Type<any>;\n /**\n * Template of the close icon.\n */\n closeicon?: Type<any>;\n}\n","import { Observable, Subject } from 'rxjs';\nimport { Output, EventEmitter, Type } from '@angular/core';\n/**\n * Dynamic Dialog instance.\n * @group Components\n */\nexport class DynamicDialogRef<ComponentType = any> {\n constructor() {}\n /**\n * Closes dialog.\n * @group Method\n */\n close(result?: any) {\n this._onClose.next(result);\n\n setTimeout(() => {\n this._onClose.complete();\n }, 1000);\n }\n /**\n * Destroys the dialog instance.\n * @group Method\n */\n destroy() {\n this._onDestroy.next(null);\n }\n /**\n * Callback to invoke on drag start.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n dragStart(event: MouseEvent) {\n this._onDragStart.next(event);\n }\n /**\n * Callback to invoke on drag end.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n dragEnd(event: MouseEvent) {\n this._onDragEnd.next(event);\n }\n /**\n * Callback to invoke on resize start.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n resizeInit(event: MouseEvent) {\n this._onResizeInit.next(event);\n }\n /**\n * Callback to invoke on resize start.\n * @param {MouseEvent} event - Mouse event.\n * @group Method\n */\n resizeEnd(event: MouseEvent) {\n this._onResizeEnd.next(event);\n }\n /**\n * Callback to invoke on dialog is maximized.\n * @param {*} value - Size value.\n * @group Method\n */\n maximize(value: any) {\n this._onMaximize.next(value);\n }\n\n private readonly _onClose = new Subject<any>();\n /**\n * Event triggered on dialog is closed.\n * @group Events\n */\n onClose: Observable<any> = this._onClose.asObservable();\n\n private readonly _onDestroy = new Subject<any>();\n /**\n * Event triggered on dialog instance is destroyed.\n * @group Events\n */\n onDestroy: Observable<any> = this._onDestroy.asObservable();\n\n private readonly _onDragStart = new Subject<any>();\n /**\n * Event triggered on drag start.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onDragStart: Observable<any> = this._onDragStart.asObservable();\n\n private readonly _onDragEnd = new Subject<any>();\n /**\n * Event triggered on drag end.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onDragEnd: Observable<any> = this._onDragEnd.asObservable();\n\n private readonly _onResizeInit = new Subject<any>();\n /**\n * Event triggered on resize start.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onResizeInit: Observable<any> = this._onResizeInit.asObservable();\n\n private readonly _onResizeEnd = new Subject<any>();\n /**\n * Event triggered on resize end.\n * @param {MouseEvent} event - Mouse event.\n * @group Events\n */\n onResizeEnd: Observable<any> = this._onResizeEnd.asObservable();\n\n private readonly _onMaximize = new Subject<any>();\n /**\n * Event triggered on dialog is maximized.\n * @param {*} value - Size value.\n * @group Events\n */\n onMaximize: Observable<any> = this._onMaximize.asObservable();\n\n /**\n * Event triggered on child component load.\n * @param {*} value - Chi.\n * @group Events\n */\n readonly onChildComponentLoaded = new Subject<ComponentType>();\n}\n","import { animate, animation, AnimationEvent, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, ChangeDetectionStrategy, Component, ComponentRef, ElementRef, inject, NgModule, NgZone, OnDestroy, Optional, Renderer2, SkipSelf, Type, ViewChild, ViewEncapsulation, ViewRef } from '@angular/core';\nimport { addClass, getOuterHeight, getOuterWidth, getViewport, hasClass, removeClass, setAttribute, uuid } from '@primeuix/utils';\nimport { SharedModule, TranslationKeys } from 'primeng/api';\nimport { BaseComponent } from 'primeng/basecomponent';\nimport { Button } from 'primeng/button';\nimport { DomHandler } from 'primeng/dom';\nimport { FocusTrap } from 'primeng/focustrap';\nimport { TimesIcon, WindowMaximizeIcon, WindowMinimizeIcon } from 'primeng/icons';\nimport { Nullable, VoidListener } from 'primeng/ts-helpers';\nimport { ZIndexUtils } from 'primeng/utils';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\nimport { DynamicDialogContent } from './dynamicdialogcontent';\nimport { DynamicDialogStyle } from './style/dynamicdialogstyle';\n\nconst showAnimation = animation([style({ transform: '{{transform}}', opacity: 0 }), animate('{{transition}}', style({ transform: 'none', opacity: 1 }))]);\n\nconst hideAnimation = animation([animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))]);\n\n@Component({\n selector: 'p-dynamicDialog, p-dynamicdialog, p-dynamic-dialog',\n standalone: true,\n imports: [CommonModule, SharedModule, DynamicDialogContent, WindowMaximizeIcon, WindowMinimizeIcon, TimesIcon, Button, FocusTrap],\n template: `\n <div\n #mask\n [ngStyle]=\"{\n position: 'fixed',\n height: '100%',\n width: '100%',\n left: 0,\n top: 0,\n display: 'flex',\n 'justify-content': position === 'left' || position === 'topleft' || position === 'bottomleft' ? 'flex-start' : position === 'right' || position === 'topright' || position === 'bottomright' ? 'flex-end' : 'center',\n 'align-items': position === 'top' || position === 'topleft' || position === 'topright' ? 'flex-start' : position === 'bottom' || position === 'bottomleft' || position === 'bottomright' ? 'flex-end' : 'center',\n 'pointer-events': ddconfig.modal ? 'auto' : 'none'\n }\"\n [class]=\"ddconfig.maskStyleClass\"\n [ngClass]=\"maskClass\"\n >\n <div\n *ngIf=\"visible\"\n #container\n [ngClass]=\"{ 'p-dialog p-component': true, 'p-dialog-maximized': maximizable && maximized }\"\n [ngStyle]=\"{ display: 'flex', 'flex-direction': 'column', 'pointer-events': 'auto' }\"\n [style]=\"ddconfig.style\"\n [class]=\"ddconfig.styleClass\"\n [@animation]=\"{\n value: 'visible',\n params: {\n transform: transformOptions,\n transition: ddconfig.transitionOptions || '150ms cubic-bezier(0, 0, 0.2, 1)'\n }\n }\"\n (@animation.start)=\"onAnimationStart($event)\"\n (@animation.done)=\"onAnimationEnd($event)\"\n role=\"dialog\"\n pFocusTrap\n [pFocusTrapDisabled]=\"ddconfig.focusTrap === false\"\n [style.width]=\"ddconfig.width\"\n [style.height]=\"ddconfig.height\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-modal]=\"true\"\n [attr.id]=\"dialogId\"\n >\n <div *ngIf=\"ddconfig.resizable\" [ngClass]=\"'p-resizable-handle'\" style=\"z-index: 90;\" (mousedown)=\"initResize($event)\"></div>\n <div #titlebar [ngClass]=\"'p-dialog-header'\" (mousedown)=\"initDrag($event)\" *ngIf=\"ddconfig.showHeader !== false\">\n <ng-container *ngComponentOutlet=\"headerTemplate\"></ng-container>\n <ng-container *ngIf=\"!headerTemplate\">\n <span [ngClass]=\"'p-dialog-title'\" [id]=\"ariaLabelledBy\">{{ ddconfig.header }}</span>\n <div [ngClass]=\"'p-dialog-header-actions'\">\n <p-button *ngIf=\"ddconfig.maximizable\" [styleClass]=\"'p-dialog-maximize-button'\" (onClick)=\"maximize()\" (keydown.enter)=\"maximize()\" [tabindex]=\"maximizable ? '0' : '-1'\">\n <ng-container *ngIf=\"!maximizeIcon\">\n <WindowMaximizeIcon *ngIf=\"!maximized && !maximizeIconTemplate\" />\n <WindowMinimizeIcon *ngIf=\"maximized && !minimizeIconTemplate\" />\n </ng-container>\n <ng-container *ngIf=\"!maximized\">\n <ng-template *ngTemplateOutlet=\"_maximizeIconTemplate\"></ng-template>\n </ng-container>\n <ng-container *ngIf=\"maximized\">\n <ng-template *ngTemplateOutlet=\"_minimizeIconTemplate\"></ng-template>\n </ng-container>\n </p-button>\n <p-button *ngIf=\"closable\" [styleClass]=\"'p-dialog-close-button'\" [ariaLabel]=\"closeAriaLabel\" (onClick)=\"hide()\" (keydown.enter)=\"hide()\" rounded text severity=\"secondary\">\n <ng-container *ngIf=\"!closeIconTemplate\">\n <TimesIcon />\n </ng-container>\n <span *ngIf=\"closeIconTemplate\">\n <ng-template *ngTemplateOutlet=\"closeIconTemplate\"></ng-template>\n </span>\n </p-button>\n </div>\n </ng-container>\n </div>\n <div #content [ngClass]=\"'p-dialog-content'\" [ngStyle]=\"ddconfig.contentStyle\">\n <ng-template pDynamicDialogContent *ngIf=\"!contentTemplate\"></ng-template>\n <ng-container *ngComponentOutlet=\"contentTemplate\"></ng-container>\n </div>\n <div #footer [ngClass]=\"'p-dialog-footer'\" *ngIf=\"ddconfig.footer || footerTemplate\">\n <ng-container *ngIf=\"!footerTemplate\">\n {{ ddconfig.footer }}\n </ng-container>\n <ng-container *ngComponentOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n `,\n animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\n changeDetection: ChangeDetectionStrategy.Default,\n encapsulation: ViewEncapsulation.None,\n providers: [DynamicDialogStyle]\n})\nexport class DynamicDialogComponent extends BaseComponent implements AfterViewInit, OnDestroy {\n visible: boolean = true;\n\n componentRef: Nullable<ComponentRef<any>>;\n\n mask: Nullable<HTMLDivElement>;\n\n resizing: boolean | undefined;\n\n dragging: boolean | undefined;\n\n maximized: boolean | undefined;\n\n _style: any = {};\n\n originalStyle: any;\n\n lastPageX: number | undefined;\n\n lastPageY: number | undefined;\n\n ariaLabelledBy: string | undefined;\n\n id: string = uuid('pn_id_');\n\n styleElement: any;\n\n @ViewChild(DynamicDialogContent) insertionPoint: Nullable<DynamicDialogContent>;\n\n @ViewChild('mask') maskViewChild: Nullable<ElementRef>;\n\n @ViewChild('content') contentViewChild: Nullable<ElementRef>;\n\n @ViewChild('footer') footerViewChild: Nullable<ElementRef>;\n\n @ViewChild('titlebar') headerViewChild: Nullable<ElementRef>;\n\n childComponentType: Nullable<Type<any>>;\n\n container: Nullable<HTMLDivElement>;\n\n wrapper: Nullable<HTMLElement>;\n\n documentKeydownListener: VoidListener;\n\n documentEscapeListener: VoidListener;\n\n maskClickListener: VoidListener;\n\n transformOptions: string = 'scale(0.7)';\n\n documentResizeListener: VoidListener;\n\n documentResizeEndListener: VoidListener;\n\n documentDragListener: VoidListener;\n\n documentDragEndListener: VoidListener;\n\n _componentStyle = inject(DynamicDialogStyle);\n\n get minX(): number {\n return this.ddconfig.minX ? this.ddconfig.minX : 0;\n }\n\n get minY(): number {\n return this.ddconfig.minY ? this.ddconfig.minY : 0;\n }\n\n get keepInViewport(): boolean {\n return this.ddconfig.keepInViewport!;\n }\n\n get maximizable(): boolean {\n return this.ddconfig.maximizable!;\n }\n\n get maximizeIcon(): string {\n return this.ddconfig.maximizeIcon!;\n }\n\n get minimizeIcon(): string {\n return this.ddconfig.minimizeIcon!;\n }\n\n get closable() {\n return this.ddconfig.closable!;\n }\n\n get style(): any {\n return this._style;\n }\n\n get position(): string {\n return this.ddconfig.position!;\n }\n\n get closeAriaLabel(): string {\n return this.config.getTranslation(TranslationKeys.ARIA)['close'];\n }\n\n set style(value: any) {\n if (value) {\n this._style = { ...value };\n this.originalStyle = value;\n }\n }\n\n get parent() {\n const domElements = Array.from(this.document.getElementsByClassName('p-dialog'));\n if (domElements.length > 1) {\n return domElements.pop();\n }\n }\n\n get parentContent() {\n const domElements = Array.from(this.document.getElementsByClassName('p-dialog'));\n if (domElements.length > 0) {\n const contentElements = domElements[domElements.length - 1].querySelector('.p-dialog-content');\n if (contentElements) return Array.isArray(contentElements) ? contentElements[0] : contentElements;\n }\n }\n\n get header() {\n return this.ddconfig.header;\n }\n\n get data() {\n return this.ddconfig.data;\n }\n\n get breakpoints() {\n return this.ddconfig.breakpoints;\n }\n\n get footerTemplate() {\n return this.ddconfig?.templates?.footer;\n }\n\n get headerTemplate() {\n return this.ddconfig?.templates?.header;\n }\n\n get contentTemplate() {\n return this.ddconfig?.templates?.content;\n }\n\n get minimizeIconTemplate() {\n return this.ddconfig?.templates?.minimizeicon;\n }\n\n get maximizeIconTemplate() {\n return this.ddconfig?.templates?.maximizeicon;\n }\n\n get closeIconTemplate() {\n return this.ddconfig?.templates?.closeicon;\n }\n\n get maskClass() {\n const positions = ['left', 'right', 'top', 'topleft', 'topright', 'bottom', 'bottomleft', 'bottomright'];\n const pos = positions.find((item) => item === this.position);\n\n return {\n 'p-dialog-mask': true,\n 'p-overlay-mask p-overlay-mask-enter': this.ddconfig.modal || this.ddconfig.dismissableMask,\n [`p-dialog-${pos}`]: pos\n };\n }\n\n get dialogId() {\n return this.attrSelector;\n }\n\n constructor(\n public renderer: Renderer2,\n public ddconfig: DynamicDialogConfig,\n private dialogRef: DynamicDialogRef,\n public zone: NgZone,\n @SkipSelf() @Optional() private parentDialog: DynamicDialogComponent\n ) {\n super();\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.breakpoints) {\n this.createStyle();\n }\n }\n\n createStyle() {\n if (isPlatformBrowser(this.platformId)) {\n if (!this.styleElement) {\n this.styleElement = this.renderer.createElement('style');\n this.styleElement.type = 'text/css';\n this.renderer.appendChild(this.document.head, this.styleElement);\n let innerHTML = '';\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[id=${this.dialogId}]:not(.p-dialog-maximized) {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.renderer.setProperty(this.styleElement, 'innerHTML', innerHTML);\n setAttribute(this.styleElement, 'nonce', this.config?.csp()?.nonce);\n }\n }\n }\n destroyStyle() {\n if (this.styleElement) {\n this.renderer.removeChild(this.document.head, this.styleElement);\n this.styleElement = null;\n }\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n this.loadChildComponent(this.childComponentType!);\n this.ariaLabelledBy = this.getAriaLabelledBy();\n this.cd.detectChanges();\n }\n\n getAriaLabelledBy() {\n const { header, showHeader } = this.ddconfig;\n\n if (header === null || showHeader === false) {\n return null;\n }\n return uuid('pn_id_') + '_header';\n }\n\n loadChildComponent(componentType: Type<any>) {\n let viewContainerRef = this.insertionPoint?.viewContainerRef;\n viewContainerRef?.clear();\n\n this.componentRef = viewContainerRef?.createComponent(componentType);\n this.dialogRef.onChildComponentLoaded.next(this.componentRef!.instance);\n }\n\n moveOnTop() {\n if (this.ddconfig.autoZIndex !== false) {\n ZIndexUtils.set('modal', this.container, (this.ddconfig.baseZIndex || 0) + this.config.zIndex.modal);\n (this.wrapper as HTMLElement).style.zIndex = String(parseInt((this.container as HTMLDivElement).style.zIndex, 10) - 1);\n }\n }\n\n onAnimationStart(event: AnimationEvent) {\n switch (event.toState) {\n case 'visible':\n this.container = event.element;\n this.wrapper = (this.container as HTMLDivElement).parentElement;\n this.moveOnTop();\n if (this.parent) {\n this.unbindGlobalListeners();\n }\n this.bindGlobalListeners();\n this.container?.setAttribute(this.id, '');\n\n if (this.ddconfig.modal !== false) {\n this.enableModality();\n }\n\n if (this.ddconfig.focusOnShow !== false) {\n this.focus();\n }\n break;\n\n case 'void':\n if (this.wrapper && this.ddconfig.modal !== false) {\n addClass(this.wrapper, 'p-overlay-mask-leave');\n }\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n if (event.toState === 'void') {\n if (this.parentContent) {\n this.focus(this.parentContent);\n }\n this.onContainerDestroy();\n this.dialogRef.destroy();\n }\n }\n\n onContainerDestroy() {\n this.unbindGlobalListeners();\n\n if (this.container && this.ddconfig.autoZIndex !== false) {\n ZIndexUtils.clear(this.container);\n }\n\n if (this.ddconfig.modal !== false) {\n this.disableModality();\n }\n this.container = null;\n }\n\n close() {\n this.visible = false;\n this.cd.markForCheck();\n }\n\n hide() {\n if (this.dialogRef) {\n this.dialogRef.close();\n }\n }\n\n enableModality() {\n if (this.ddconfig.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.ddconfig.modal !== false) {\n addClass(this.document.body, 'p-overflow-hidden');\n }\n }\n\n disableModality() {\n if (this.wrapper) {\n if (this.ddconfig.dismissableMask) {\n this.unbindMaskClickListener();\n }\n\n if (this.ddconfig.modal !== false) {\n removeClass(this.document.body, 'p-overflow-hidden');\n }\n\n if (!(this.cd as ViewRef).destroyed) {\n this.cd.detectChanges();\n }\n }\n }\n\n focus(focusParentElement = this.contentViewChild.nativeElement) {\n let focusable = DomHandler.getFocusableElement(focusParentElement, '[autofocus]');\n if (focusable) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusable.focus(), 5);\n });\n return;\n }\n const focusableElement = DomHandler.getFocusableElement(focusParentElement);\n if (focusableElement) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusableElement.focus(), 5);\n });\n } else if (this.footerViewChild) {\n // If the content section is empty try to focus on footer\n this.focus(this.footerViewChild.nativeElement);\n } else if (!focusableElement && this.headerViewChild) {\n this.focus(this.headerViewChild.nativeElement);\n }\n }\n\n maximize() {\n this.maximized = !this.maximized;\n\n if (this.maximized) {\n addClass(this.document.body, 'p-overflow-hidden');\n } else {\n removeClass(this.document.body, 'p-overflow-hidden');\n }\n\n this.dialogRef.maximize({ maximized: this.maximized });\n }\n\n initResize(event: MouseEvent) {\n if (this.ddconfig.resizable) {\n if (!this.documentResizeListener) {\n this.bindDocumentResizeListeners();\n }\n\n this.resizing = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n addClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.resizeInit(event);\n }\n }\n\n onResize(event: MouseEvent) {\n if (this.resizing) {\n let deltaX = event.pageX - (this.lastPageX as number);\n let deltaY = event.pageY - (this.lastPageY as number);\n let containerWidth = getOuterWidth(this.container);\n let containerHeight = getOuterHeight(this.container);\n let contentHeight = getOuterHeight((<ElementRef>this.contentViewChild).nativeElement);\n let newWidth = containerWidth + deltaX;\n let newHeight = containerHeight + deltaY;\n let minWidth = (this.container as HTMLDivElement).style.minWidth;\n let minHeight = (this.container as HTMLDivElement).style.minHeight;\n let offset = (this.container as HTMLDivElement).getBoundingClientRect();\n let viewport = getViewport();\n let hasBeenDragged = !parseInt((this.container as HTMLDivElement).style.top) || !parseInt((this.container as HTMLDivElement).style.left);\n\n if (hasBeenDragged) {\n newWidth += deltaX;\n newHeight += deltaY;\n }\n\n if ((!minWidth || newWidth > parseInt(minWidth)) && offset.left + newWidth < viewport.width) {\n this._style.width = newWidth + 'px';\n (this.container as HTMLDivElement).style.width = this._style.width;\n }\n\n if ((!minHeight || newHeight > parseInt(minHeight)) && offset.top + newHeight < viewport.height) {\n (<ElementRef>this.contentViewChild).nativeElement.style.height = contentHeight + newHeight - containerHeight + 'px';\n\n if (this._style.height) {\n this._style.height = newHeight + 'px';\n (this.container as HTMLDivElement).style.height = this._style.height;\n }\n }\n\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n }\n }\n\n resizeEnd(event: MouseEvent) {\n if (this.resizing) {\n this.resizing = false;\n removeClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.resizeEnd(event);\n }\n }\n\n initDrag(event: MouseEvent) {\n if (hasClass(event.target as any, 'p-dialog-header-icon') || hasClass((<HTMLElement>event.target).parentElement, 'p-dialog-header-icon')) {\n return;\n }\n\n if (this.ddconfig.draggable) {\n this.dragging = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n\n (this.container as HTMLDivElement).style.margin = '0';\n addClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.dragStart(event);\n }\n }\n\n onDrag(event: MouseEvent) {\n if (this.dragging) {\n let containerWidth = getOuterWidth(this.container);\n let containerHeight = getOuterHeight(this.container);\n let deltaX = event.pageX - (this.lastPageX as number);\n let deltaY = event.pageY - (this.lastPageY as number);\n let offset = (this.container as HTMLDivElement).getBoundingClientRect();\n let leftPos = offset.left + deltaX;\n let topPos = offset.top + deltaY;\n let viewport = getViewport();\n\n (this.container as HTMLDivElement).style.position = 'fixed';\n\n if (this.keepInViewport) {\n if (leftPos >= this.minX && leftPos + containerWidth < viewport.width) {\n this._style.left = leftPos + 'px';\n this.lastPageX = event.pageX;\n (this.container as HTMLDivElement).style.left = leftPos + 'px';\n }\n\n if (topPos >= this.minY && topPos + containerHeight < viewport.height) {\n this._style.top = topPos + 'px';\n this.lastPageY = event.pageY;\n (this.container as HTMLDivElement).style.top = topPos + 'px';\n }\n } else {\n this.lastPageX = event.pageX;\n (this.container as HTMLDivElement).style.left = leftPos + 'px';\n this.lastPageY = event.pageY;\n (this.container as HTMLDivElement).style.top = topPos + 'px';\n }\n }\n }\n\n endDrag(event: MouseEvent) {\n if (this.dragging) {\n this.dragging = false;\n removeClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.dragEnd(event);\n this.cd.detectChanges();\n }\n }\n\n resetPosition() {\n (this.container as HTMLDivElement).style.position = '';\n (this.container as HTMLDivElement).style.left = '';\n (this.container as HTMLDivElement).style.top = '';\n (this.container as HTMLDivElement).style.margin = '';\n }\n\n bindDocumentDragListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.documentDragListener = this.renderer.listen(this.document, 'mousemove', this.onDrag.bind(this));\n });\n }\n }\n\n bindDocumentDragEndListener() {\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.documentDragEndListener = this.renderer.listen(this.document, 'mouseup', this.endDrag.bind(this));\n });\n }\n }\n\n unbindDocumentDragEndListener() {\n if (this.documentDragEndListener) {\n this.documentDragEndListener();\n this.documentDragListener = null;\n }\n }\n\n unbindDocumentDragListener() {\n if (this.documentDragListener) {\n this.documentDragListener();\n this.documentDragListener = null;\n }\n }\n\n bindDocumentResizeListeners() {\n if (isPlatformBrowser(this.platformId)) {\n this.zone.runOutsideAngular(() => {\n this.documentResizeListener = this.renderer.listen(this.document, 'mousemove', this.onResize.bind(this));\n this.documentResizeEndListener = this.renderer.listen(this.document, 'mouseup', this.resizeEnd.bind(this));\n });\n }\n }\n\n unbindDocumentResizeListeners() {\n if (this.documentResizeListener && this.documentResizeEndListener) {\n this.documentResizeListener();\n this.documentResizeEndListener();\n this.documentResizeListener = null;\n this.documentResizeEndListener = null;\n }\n }\n\n bindGlobalListeners() {\n if (this.ddconfig.closeOnEscape !== false) {\n this.bindDocumentEscapeListener();\n }\n\n if (this.ddconfig.resizable) {\n this.bindDocumentResizeListeners();\n }\n\n if (this.ddconfig.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n }\n\n unbindGlobalListeners() {\n this.unbindDocumentEscapeListener();\n this.unbindDocumentResizeListeners();\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n }\n\n bindDocumentEscapeListener() {\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 as HTMLDivElement).style.zIndex) == ZIndexUtils.getCurrent()) {\n this.hide();\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n ngOnDestroy() {\n this.onContainerDestroy();\n\n if (this.componentRef) {\n this.componentRef.destroy();\n }\n this.destroyStyle();\n super.ngOnDestroy();\n }\n}\n\n@NgModule({\n imports: [DynamicDialogComponent, SharedModule],\n exports: [DynamicDialogComponent, SharedModule]\n})\nexport class DynamicDialog {}\n","import { InjectOptions, Injector, ProviderToken, InjectFlags } from '@angular/core';\n\nexport class DynamicDialogInjector implements Injector {\n constructor(\n private _parentInjector: Injector,\n private _additionalTokens: WeakMap<any, any>\n ) {}\n\n get<T>(token: ProviderToken<T>, notFoundValue?: T, options?: InjectOptions | InjectFlags): T {\n const value = this._additionalTokens.get(token);\n\n if (value) return value;\n\n return this._parentInjector.get<any>(token, notFoundValue);\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { ApplicationRef, ComponentRef, EmbeddedViewRef, Inject, Injectable, Injector, Type, createComponent } from '@angular/core';\nimport { appendChild } from '@primeuix/utils';\nimport { DynamicDialogComponent } from './dynamicdialog';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogInjector } from './dynamicdialog-injector';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\n\n/**\n * Dynamic Dialog component methods.\n * @group Service\n */\n@Injectable()\nexport class DialogService {\n dialogComponentRefMap: Map<DynamicDialogRef<any>, ComponentRef<DynamicDialogComponent>> = new Map();\n\n constructor(\n private appRef: ApplicationRef,\n private injector: Injector,\n @Inject(DOCUMENT) private document: Document\n ) {}\n /**\n * Displays the dialog using the dynamic dialog object options.\n * @param {*} componentType - Dynamic component for content template.\n * @param {DynamicDialogConfig} config - DynamicDialog object.\n * @returns {DynamicDialogRef} DynamicDialog instance.\n * @group Method\n */\n public open<T>(componentType: Type<T>, config: DynamicDialogConfig): DynamicDialogRef<T> {\n if (!this.duplicationPermission(componentType, config)) {\n return null;\n }\n\n const dialogRef = this.appendDialogComponentToBody<T>(config, componentType);\n\n this.dialogComponentRefMap.get(dialogRef).instance.childComponentType = componentType;\n\n return dialogRef;\n }\n /**\n * Returns the dynamic dialog component instance.\n * @param {ref} DynamicDialogRef - DynamicDialog instance.\n * @group Method\n */\n public getInstance(ref: DynamicDialogRef<any>) {\n return this.dialogComponentRefMap.get(ref).instance;\n }\n\n private appendDialogComponentToBody<T>(config: DynamicDialogConfig, componentType: Type<T>): DynamicDialogRef<T> {\n const map = new WeakMap();\n map.set(DynamicDialogConfig, config);\n\n const dialogRef = new DynamicDialogRef<T>();\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 componentRef = createComponent(DynamicDialogComponent, {\n environmentInjector: this.appRef.injector,\n elementInjector: new DynamicDialogInjector(this.injector, map)\n });\n\n this.appRef.attachView(componentRef.hostView);\n\n const domElem = (componentRef.hostView as EmbeddedViewRef<any>).rootNodes[0] as HTMLElement;\n if (!config.appendTo || config.appendTo === 'body') {\n this.document.body.appendChild(domElem);\n } else {\n appendChild(config.appendTo, domElem);\n }\n\n this.dialogComponentRefMap.set(dialogRef, componentRef);\n\n return dialogRef;\n }\n\n private removeDialogComponentFromBody(dialogRef: DynamicDialogRef<any>) {\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 private duplicationPermission(componentType: Type<any>, config: DynamicDialogConfig): boolean {\n if (config.duplicate) {\n return true;\n }\n let permission = true;\n for (const [key, value] of this.dialogComponentRefMap) {\n if (value.instance.childComponentType === componentType) {\n permission = false;\n break;\n }\n }\n return permission;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.DynamicDialogConfig","i2.DynamicDialogRef"],"mappings":"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"}
|
@@ -1158,6 +1158,24 @@ class Editor extends BaseComponent {
|
|
1158
1158
|
* @group Emits
|
1159
1159
|
*/
|
1160
1160
|
onSelectionChange = new EventEmitter();
|
1161
|
+
/**
|
1162
|
+
* Callback to invoke when editor content changes (combines both text and selection changes).
|
1163
|
+
* @param {EditorChangeEvent} event - custom event.
|
1164
|
+
* @group Emits
|
1165
|
+
*/
|
1166
|
+
onEditorChange = new EventEmitter();
|
1167
|
+
/**
|
1168
|
+
* Callback to invoke when editor receives focus.
|
1169
|
+
* @param {EditorFocusEvent} event - custom event.
|
1170
|
+
* @group Emits
|
1171
|
+
*/
|
1172
|
+
onFocus = new EventEmitter();
|
1173
|
+
/**
|
1174
|
+
* Callback to invoke when editor loses focus.
|
1175
|
+
* @param {EditorBlurEvent} event - custom event.
|
1176
|
+
* @group Emits
|
1177
|
+
*/
|
1178
|
+
onBlur = new EventEmitter();
|
1161
1179
|
toolbar;
|
1162
1180
|
value;
|
1163
1181
|
delayedCommand = null;
|
@@ -1177,6 +1195,8 @@ class Editor extends BaseComponent {
|
|
1177
1195
|
return this.quillElements?.editorElement?.isConnected;
|
1178
1196
|
}
|
1179
1197
|
quillElements;
|
1198
|
+
focusListener = null;
|
1199
|
+
blurListener = null;
|
1180
1200
|
_componentStyle = inject(EditorStyle);
|
1181
1201
|
constructor() {
|
1182
1202
|
super();
|
@@ -1274,7 +1294,7 @@ class Editor extends BaseComponent {
|
|
1274
1294
|
}
|
1275
1295
|
this.quill.on('text-change', (delta, oldContents, source) => {
|
1276
1296
|
if (source === 'user') {
|
1277
|
-
let html = isQuill2 ? this.quill.getSemanticHTML() : findSingle(editorElement, '.ql-editor')
|
1297
|
+
let html = isQuill2 ? this.quill.getSemanticHTML() : findSingle(editorElement, '.ql-editor')?.innerHTML;
|
1278
1298
|
let text = this.quill.getText().trim();
|
1279
1299
|
if (html === '<p><br></p>') {
|
1280
1300
|
html = null;
|
@@ -1296,10 +1316,42 @@ class Editor extends BaseComponent {
|
|
1296
1316
|
source: source
|
1297
1317
|
});
|
1298
1318
|
});
|
1319
|
+
this.quill.on('editor-change', (eventName, ...args) => {
|
1320
|
+
this.onEditorChange.emit({
|
1321
|
+
eventName: eventName,
|
1322
|
+
args: args
|
1323
|
+
});
|
1324
|
+
});
|
1325
|
+
const editorEl = this.quill.root;
|
1326
|
+
this.focusListener = () => {
|
1327
|
+
this.onFocus.emit({
|
1328
|
+
source: 'user'
|
1329
|
+
});
|
1330
|
+
};
|
1331
|
+
this.blurListener = () => {
|
1332
|
+
this.onBlur.emit({
|
1333
|
+
source: 'user'
|
1334
|
+
});
|
1335
|
+
};
|
1336
|
+
editorEl.addEventListener('focus', this.focusListener);
|
1337
|
+
editorEl.addEventListener('blur', this.blurListener);
|
1299
1338
|
this.onInit.emit({
|
1300
1339
|
editor: this.quill
|
1301
1340
|
});
|
1302
1341
|
}
|
1342
|
+
ngOnDestroy() {
|
1343
|
+
if (this.quill && this.quill.root) {
|
1344
|
+
const editorEl = this.quill.root;
|
1345
|
+
if (this.focusListener) {
|
1346
|
+
editorEl.removeEventListener('focus', this.focusListener);
|
1347
|
+
this.focusListener = null;
|
1348
|
+
}
|
1349
|
+
if (this.blurListener) {
|
1350
|
+
editorEl.removeEventListener('blur', this.blurListener);
|
1351
|
+
this.blurListener = null;
|
1352
|
+
}
|
1353
|
+
}
|
1354
|
+
}
|
1303
1355
|
initQuillElements() {
|
1304
1356
|
if (!this.quillElements) {
|
1305
1357
|
this.quillElements = {
|
@@ -1318,7 +1370,7 @@ class Editor extends BaseComponent {
|
|
1318
1370
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.toolbar = _t.first);
|
1319
1371
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.headerTemplate = _t.first);
|
1320
1372
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.templates = _t);
|
1321
|
-
} }, hostAttrs: [1, "p-editor"], inputs: { style: "style", styleClass: "styleClass", placeholder: "placeholder", formats: "formats", modules: "modules", bounds: "bounds", scrollingContainer: "scrollingContainer", debug: "debug", readonly: "readonly" }, outputs: { onInit: "onInit", onTextChange: "onTextChange", onSelectionChange: "onSelectionChange" }, standalone: true, features: [i0.ɵɵProvidersFeature([EDITOR_VALUE_ACCESSOR, EditorStyle]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], ngContentSelectors: _c2, decls: 4, vars: 6, consts: [[3, "ngClass"], ["class", "p-editor-toolbar", 4, "ngIf"], [1, "p-editor-content", 3, "ngStyle"], [1, "p-editor-toolbar"], [4, "ngTemplateOutlet"], [1, "ql-formats"], [1, "ql-header"], ["value", "1"], ["value", "2"], ["selected", ""], [1, "ql-font"], ["value", "serif"], ["value", "monospace"], ["aria-label", "Bold", "type", "button", 1, "ql-bold"], ["aria-label", "Italic", "type", "button", 1, "ql-italic"], ["aria-label", "Underline", "type", "button", 1, "ql-underline"], [1, "ql-color"], [1, "ql-background"], ["value", "ordered", "aria-label", "Ordered List", "type", "button", 1, "ql-list"], ["value", "bullet", "aria-label", "Unordered List", "type", "button", 1, "ql-list"], [1, "ql-align"], ["value", "center"], ["value", "right"], ["value", "justify"], ["aria-label", "Insert Link", "type", "button", 1, "ql-link"], ["aria-label", "Insert Image", "type", "button", 1, "ql-image"], ["aria-label", "Insert Code Block", "type", "button", 1, "ql-code-block"], ["aria-label", "Remove Styles", "type", "button", 1, "ql-clean"]], template: function Editor_Template(rf, ctx) { if (rf & 1) {
|
1373
|
+
} }, hostAttrs: [1, "p-editor"], inputs: { style: "style", styleClass: "styleClass", placeholder: "placeholder", formats: "formats", modules: "modules", bounds: "bounds", scrollingContainer: "scrollingContainer", debug: "debug", readonly: "readonly" }, outputs: { onInit: "onInit", onTextChange: "onTextChange", onSelectionChange: "onSelectionChange", onEditorChange: "onEditorChange", onFocus: "onFocus", onBlur: "onBlur" }, standalone: true, features: [i0.ɵɵProvidersFeature([EDITOR_VALUE_ACCESSOR, EditorStyle]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], ngContentSelectors: _c2, decls: 4, vars: 6, consts: [[3, "ngClass"], ["class", "p-editor-toolbar", 4, "ngIf"], [1, "p-editor-content", 3, "ngStyle"], [1, "p-editor-toolbar"], [4, "ngTemplateOutlet"], [1, "ql-formats"], [1, "ql-header"], ["value", "1"], ["value", "2"], ["selected", ""], [1, "ql-font"], ["value", "serif"], ["value", "monospace"], ["aria-label", "Bold", "type", "button", 1, "ql-bold"], ["aria-label", "Italic", "type", "button", 1, "ql-italic"], ["aria-label", "Underline", "type", "button", 1, "ql-underline"], [1, "ql-color"], [1, "ql-background"], ["value", "ordered", "aria-label", "Ordered List", "type", "button", 1, "ql-list"], ["value", "bullet", "aria-label", "Unordered List", "type", "button", 1, "ql-list"], [1, "ql-align"], ["value", "center"], ["value", "right"], ["value", "justify"], ["aria-label", "Insert Link", "type", "button", 1, "ql-link"], ["aria-label", "Insert Image", "type", "button", 1, "ql-image"], ["aria-label", "Insert Code Block", "type", "button", 1, "ql-code-block"], ["aria-label", "Remove Styles", "type", "button", 1, "ql-clean"]], template: function Editor_Template(rf, ctx) { if (rf & 1) {
|
1322
1374
|
i0.ɵɵprojectionDef(_c1);
|
1323
1375
|
i0.ɵɵelementStart(0, "div", 0);
|
1324
1376
|
i0.ɵɵtemplate(1, Editor_div_1_Template, 3, 1, "div", 1)(2, Editor_div_2_Template, 40, 0, "div", 1);
|
@@ -1422,6 +1474,12 @@ class Editor extends BaseComponent {
|
|
1422
1474
|
type: Output
|
1423
1475
|
}], onSelectionChange: [{
|
1424
1476
|
type: Output
|
1477
|
+
}], onEditorChange: [{
|
1478
|
+
type: Output
|
1479
|
+
}], onFocus: [{
|
1480
|
+
type: Output
|
1481
|
+
}], onBlur: [{
|
1482
|
+
type: Output
|
1425
1483
|
}], toolbar: [{
|
1426
1484
|
type: ContentChild,
|
1427
1485
|
args: [Header]
|