primeng 16.0.1 → 16.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accordion/accordion.d.ts +35 -11
- package/api/tooltipoptions.d.ts +1 -0
- package/api/translation.d.ts +23 -0
- package/api/treenode.d.ts +1 -1
- package/autocomplete/autocomplete.d.ts +1 -1
- package/avatar/avatar.d.ts +11 -1
- package/breadcrumb/breadcrumb.d.ts +5 -1
- package/button/button.d.ts +3 -0
- package/chip/chip.d.ts +1 -0
- package/contextmenu/contextmenu.d.ts +157 -67
- package/dock/dock.d.ts +47 -2
- package/dom/domhandler.d.ts +1 -0
- package/esm2022/accordion/accordion.mjs +177 -43
- package/esm2022/api/primengconfig.mjs +75 -2
- package/esm2022/api/tooltipoptions.mjs +1 -1
- package/esm2022/api/translation.mjs +1 -1
- package/esm2022/api/treenode.mjs +1 -1
- package/esm2022/autocomplete/autocomplete.mjs +3 -3
- package/esm2022/avatar/avatar.mjs +18 -4
- package/esm2022/blockui/blockui.mjs +19 -3
- package/esm2022/breadcrumb/breadcrumb.mjs +50 -33
- package/esm2022/button/button.mjs +4 -1
- package/esm2022/card/card.mjs +3 -3
- package/esm2022/chip/chip.mjs +18 -13
- package/esm2022/contextmenu/contextmenu.mjs +993 -547
- package/esm2022/divider/divider.mjs +3 -3
- package/esm2022/dock/dock.mjs +284 -86
- package/esm2022/dom/domhandler.mjs +19 -7
- package/esm2022/dropdown/dropdown.mjs +2 -2
- package/esm2022/dynamicdialog/dynamicdialog-ref.mjs +4 -1
- package/esm2022/fieldset/fieldset.mjs +59 -32
- package/esm2022/fileupload/fileupload.mjs +4 -4
- package/esm2022/image/image.mjs +11 -3
- package/esm2022/inplace/inplace.mjs +18 -11
- package/esm2022/megamenu/megamenu.mjs +997 -348
- package/esm2022/menu/menu.mjs +398 -166
- package/esm2022/menubar/menubar.mjs +895 -282
- package/esm2022/orderlist/orderlist.mjs +9 -15
- package/esm2022/panel/panel.mjs +44 -33
- package/esm2022/panelmenu/panelmenu.mjs +982 -344
- package/esm2022/progressbar/progressbar.mjs +19 -15
- package/esm2022/progressspinner/progressspinner.mjs +5 -5
- package/esm2022/ripple/ripple.mjs +3 -1
- package/esm2022/scrollpanel/scrollpanel.mjs +195 -23
- package/esm2022/scrolltop/scrolltop.mjs +11 -2
- package/esm2022/skeleton/skeleton.mjs +3 -3
- package/esm2022/slidemenu/slidemenu.mjs +1059 -372
- package/esm2022/splitbutton/splitbutton.mjs +2 -2
- package/esm2022/splitter/splitter.mjs +160 -29
- package/esm2022/steps/steps.mjs +112 -22
- package/esm2022/table/table.mjs +21 -11
- package/esm2022/tabmenu/tabmenu.mjs +191 -63
- package/esm2022/tabview/tabview.mjs +173 -39
- package/esm2022/terminal/terminal.mjs +3 -3
- package/esm2022/tieredmenu/tieredmenu.mjs +868 -392
- package/esm2022/toolbar/toolbar.mjs +17 -10
- package/esm2022/tooltip/tooltip.mjs +2 -2
- package/esm2022/tree/tree.mjs +3 -3
- package/esm2022/treetable/treetable.mjs +17 -17
- package/esm2022/utils/objectutils.mjs +31 -1
- package/esm2022/utils/uniquecomponentid.mjs +2 -3
- package/fesm2022/primeng-accordion.mjs +176 -42
- package/fesm2022/primeng-accordion.mjs.map +1 -1
- package/fesm2022/primeng-api.mjs +74 -1
- package/fesm2022/primeng-api.mjs.map +1 -1
- package/fesm2022/primeng-autocomplete.mjs +2 -2
- package/fesm2022/primeng-autocomplete.mjs.map +1 -1
- package/fesm2022/primeng-avatar.mjs +17 -3
- package/fesm2022/primeng-avatar.mjs.map +1 -1
- package/fesm2022/primeng-blockui.mjs +18 -2
- package/fesm2022/primeng-blockui.mjs.map +1 -1
- package/fesm2022/primeng-breadcrumb.mjs +49 -32
- package/fesm2022/primeng-breadcrumb.mjs.map +1 -1
- package/fesm2022/primeng-button.mjs +3 -0
- package/fesm2022/primeng-button.mjs.map +1 -1
- package/fesm2022/primeng-card.mjs +2 -2
- package/fesm2022/primeng-card.mjs.map +1 -1
- package/fesm2022/primeng-chip.mjs +17 -12
- package/fesm2022/primeng-chip.mjs.map +1 -1
- package/fesm2022/primeng-contextmenu.mjs +992 -546
- package/fesm2022/primeng-contextmenu.mjs.map +1 -1
- package/fesm2022/primeng-divider.mjs +2 -2
- package/fesm2022/primeng-divider.mjs.map +1 -1
- package/fesm2022/primeng-dock.mjs +283 -85
- package/fesm2022/primeng-dock.mjs.map +1 -1
- package/fesm2022/primeng-dom.mjs +18 -6
- package/fesm2022/primeng-dom.mjs.map +1 -1
- package/fesm2022/primeng-dropdown.mjs +1 -1
- package/fesm2022/primeng-dropdown.mjs.map +1 -1
- package/fesm2022/primeng-dynamicdialog.mjs +3 -0
- package/fesm2022/primeng-dynamicdialog.mjs.map +1 -1
- package/fesm2022/primeng-fieldset.mjs +57 -30
- package/fesm2022/primeng-fieldset.mjs.map +1 -1
- package/fesm2022/primeng-fileupload.mjs +3 -3
- package/fesm2022/primeng-fileupload.mjs.map +1 -1
- package/fesm2022/primeng-image.mjs +10 -2
- package/fesm2022/primeng-image.mjs.map +1 -1
- package/fesm2022/primeng-inplace.mjs +17 -10
- package/fesm2022/primeng-inplace.mjs.map +1 -1
- package/fesm2022/primeng-megamenu.mjs +996 -348
- package/fesm2022/primeng-megamenu.mjs.map +1 -1
- package/fesm2022/primeng-menu.mjs +397 -166
- package/fesm2022/primeng-menu.mjs.map +1 -1
- package/fesm2022/primeng-menubar.mjs +894 -281
- package/fesm2022/primeng-menubar.mjs.map +1 -1
- package/fesm2022/primeng-orderlist.mjs +8 -14
- package/fesm2022/primeng-orderlist.mjs.map +1 -1
- package/fesm2022/primeng-panel.mjs +44 -33
- package/fesm2022/primeng-panel.mjs.map +1 -1
- package/fesm2022/primeng-panelmenu.mjs +981 -344
- package/fesm2022/primeng-panelmenu.mjs.map +1 -1
- package/fesm2022/primeng-progressbar.mjs +18 -14
- package/fesm2022/primeng-progressbar.mjs.map +1 -1
- package/fesm2022/primeng-progressspinner.mjs +4 -4
- package/fesm2022/primeng-progressspinner.mjs.map +1 -1
- package/fesm2022/primeng-ripple.mjs +2 -0
- package/fesm2022/primeng-ripple.mjs.map +1 -1
- package/fesm2022/primeng-scrollpanel.mjs +194 -22
- package/fesm2022/primeng-scrollpanel.mjs.map +1 -1
- package/fesm2022/primeng-scrolltop.mjs +10 -1
- package/fesm2022/primeng-scrolltop.mjs.map +1 -1
- package/fesm2022/primeng-skeleton.mjs +2 -2
- package/fesm2022/primeng-skeleton.mjs.map +1 -1
- package/fesm2022/primeng-slidemenu.mjs +1058 -371
- package/fesm2022/primeng-slidemenu.mjs.map +1 -1
- package/fesm2022/primeng-splitbutton.mjs +1 -1
- package/fesm2022/primeng-splitbutton.mjs.map +1 -1
- package/fesm2022/primeng-splitter.mjs +160 -29
- package/fesm2022/primeng-splitter.mjs.map +1 -1
- package/fesm2022/primeng-steps.mjs +111 -21
- package/fesm2022/primeng-steps.mjs.map +1 -1
- package/fesm2022/primeng-table.mjs +20 -10
- package/fesm2022/primeng-table.mjs.map +1 -1
- package/fesm2022/primeng-tabmenu.mjs +190 -62
- package/fesm2022/primeng-tabmenu.mjs.map +1 -1
- package/fesm2022/primeng-tabview.mjs +172 -38
- package/fesm2022/primeng-tabview.mjs.map +1 -1
- package/fesm2022/primeng-terminal.mjs +2 -2
- package/fesm2022/primeng-terminal.mjs.map +1 -1
- package/fesm2022/primeng-tieredmenu.mjs +867 -391
- package/fesm2022/primeng-tieredmenu.mjs.map +1 -1
- package/fesm2022/primeng-toolbar.mjs +16 -9
- package/fesm2022/primeng-toolbar.mjs.map +1 -1
- package/fesm2022/primeng-tooltip.mjs +1 -1
- package/fesm2022/primeng-tooltip.mjs.map +1 -1
- package/fesm2022/primeng-tree.mjs +2 -2
- package/fesm2022/primeng-tree.mjs.map +1 -1
- package/fesm2022/primeng-treetable.mjs +16 -16
- package/fesm2022/primeng-treetable.mjs.map +1 -1
- package/fesm2022/primeng-utils.mjs +31 -2
- package/fesm2022/primeng-utils.mjs.map +1 -1
- package/fieldset/fieldset.d.ts +6 -5
- package/fileupload/fileupload.d.ts +1 -1
- package/image/image.d.ts +1 -0
- package/inplace/inplace.d.ts +6 -1
- package/megamenu/megamenu.d.ts +137 -15
- package/menu/menu.d.ts +74 -8
- package/menubar/menubar.d.ts +116 -22
- package/orderlist/orderlist.d.ts +2 -1
- package/package.json +131 -131
- package/panel/panel.d.ts +6 -5
- package/panelmenu/panelmenu.d.ts +134 -22
- package/resources/components/autocomplete/autocomplete.css +9 -8
- package/resources/components/breadcrumb/breadcrumb.css +9 -3
- package/resources/components/common/common.css +1 -1
- package/resources/components/contextmenu/contextmenu.css +1 -7
- package/resources/components/dock/dock.css +1 -1
- package/resources/components/megamenu/megamenu.css +9 -10
- package/resources/components/panelmenu/panelmenu.css +4 -2
- package/resources/components/slidemenu/slidemenu.css +40 -41
- package/resources/primeng.css +1 -1
- package/resources/primeng.min.css +1 -1
- package/resources/themes/arya-blue/theme.css +342 -390
- package/resources/themes/arya-green/theme.css +342 -390
- package/resources/themes/arya-orange/theme.css +342 -390
- package/resources/themes/arya-purple/theme.css +342 -390
- package/resources/themes/bootstrap4-dark-blue/theme.css +357 -416
- package/resources/themes/bootstrap4-dark-purple/theme.css +357 -416
- package/resources/themes/bootstrap4-light-blue/theme.css +369 -428
- package/resources/themes/bootstrap4-light-purple/theme.css +369 -428
- package/resources/themes/fluent-light/theme.css +352 -400
- package/resources/themes/lara-dark-blue/theme.css +344 -392
- package/resources/themes/lara-dark-indigo/theme.css +344 -392
- package/resources/themes/lara-dark-purple/theme.css +344 -392
- package/resources/themes/lara-dark-teal/theme.css +344 -392
- package/resources/themes/lara-light-blue/theme.css +370 -418
- package/resources/themes/lara-light-indigo/theme.css +370 -418
- package/resources/themes/lara-light-purple/theme.css +370 -418
- package/resources/themes/lara-light-teal/theme.css +370 -418
- package/resources/themes/luna-amber/theme.css +360 -408
- package/resources/themes/luna-blue/theme.css +360 -408
- package/resources/themes/luna-green/theme.css +360 -408
- package/resources/themes/luna-pink/theme.css +360 -408
- package/resources/themes/md-dark-deeppurple/theme.css +373 -403
- package/resources/themes/md-dark-indigo/theme.css +373 -403
- package/resources/themes/md-light-deeppurple/theme.css +373 -403
- package/resources/themes/md-light-indigo/theme.css +373 -403
- package/resources/themes/mdc-dark-deeppurple/theme.css +373 -403
- package/resources/themes/mdc-dark-indigo/theme.css +373 -403
- package/resources/themes/mdc-light-deeppurple/theme.css +373 -403
- package/resources/themes/mdc-light-indigo/theme.css +373 -403
- package/resources/themes/mira/theme.css +347 -395
- package/resources/themes/nano/theme.css +348 -396
- package/resources/themes/nova/theme.css +336 -384
- package/resources/themes/nova-accent/theme.css +336 -384
- package/resources/themes/nova-alt/theme.css +336 -384
- package/resources/themes/rhea/theme.css +336 -384
- package/resources/themes/saga-blue/theme.css +348 -396
- package/resources/themes/saga-green/theme.css +348 -396
- package/resources/themes/saga-orange/theme.css +348 -396
- package/resources/themes/saga-purple/theme.css +348 -396
- package/resources/themes/soho-dark/theme.css +362 -410
- package/resources/themes/soho-light/theme.css +370 -418
- package/resources/themes/tailwind-light/theme.css +361 -409
- package/resources/themes/vela-blue/theme.css +348 -396
- package/resources/themes/vela-green/theme.css +348 -396
- package/resources/themes/vela-orange/theme.css +348 -396
- package/resources/themes/vela-purple/theme.css +348 -396
- package/resources/themes/viva-dark/theme.css +342 -390
- package/resources/themes/viva-light/theme.css +348 -396
- package/scrollpanel/scrollpanel.d.ts +22 -4
- package/scrolltop/scrolltop.d.ts +6 -1
- package/slidemenu/slidemenu.d.ts +192 -88
- package/splitter/splitter.d.ts +18 -5
- package/steps/steps.d.ts +20 -3
- package/table/table.d.ts +6 -3
- package/tabmenu/tabmenu.d.ts +24 -1
- package/tabview/tabview.d.ts +26 -3
- package/tieredmenu/tieredmenu.d.ts +134 -50
- package/toolbar/toolbar.d.ts +6 -1
- package/tooltip/tooltip.d.ts +2 -2
- package/utils/objectutils.d.ts +4 -0
- package/utils/uniquecomponentid.d.ts +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-dynamicdialog.mjs","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 constructor(public viewContainerRef: ViewContainerRef) {}\n}\n","/**\n * Dialogs can be created dynamically with any component as the content using a DialogService.\n * @group Interface\n */\nexport class DynamicDialogConfig<T = any> {\n /**\n * An object to pass to the component loaded inside the Dialog.\n */\n data?: T;\n /**\n * Header text of the dialog.\n */\n header?: string;\n /**\n * Identifies the element (or elements) that labels the element it is applied to.\n */\n ariaLabelledBy?: string;\n /**\n * Footer text of the dialog.\n */\n footer?: string;\n /**\n * Width of the dialog.\n */\n width?: string;\n /**\n * Height of the dialog.\n */\n height?: string;\n /**\n * Specifies if pressing escape key should hide the dialog.\n */\n closeOnEscape?: boolean;\n /**\n * Base zIndex value to use in layering.\n */\n baseZIndex?: number;\n /**\n * Whether to automatically manage layering.\n */\n autoZIndex?: boolean;\n /**\n * Specifies if clicking the modal background should hide the dialog.\n */\n dismissableMask?: boolean;\n /**\n * Inline style of the component.\n */\n rtl?: boolean;\n /**\n * Inline style of the comopnent.\n */\n style?: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the content.\n */\n contentStyle?: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n */\n styleClass?: string;\n /**\n * Transition options of the animation.\n */\n transitionOptions?: string;\n /**\n * Adds a close icon to the header to hide the dialog.\n */\n closable?: boolean;\n /**\n * Whether to show the header or not.\n */\n showHeader?: boolean;\n /**\n * Defines if background should be blocked when dialog is displayed.\n */\n modal?: boolean;\n /**\n * Style class of the mask.\n */\n maskStyleClass?: string;\n /**\n * Enables resizing of the content.\n */\n resizable?: boolean;\n /**\n * Enables dragging to change the position using header.\n */\n draggable?: boolean;\n /**\n * Keeps dialog in the viewport.\n */\n keepInViewport?: boolean;\n /**\n * Minimum value for the left coordinate of dialog in dragging.\n */\n minX?: number;\n /**\n * Minimum value for the top coordinate of dialog in dragging.\n */\n minY?: number;\n /**\n * Whether the dialog can be displayed full screen.\n */\n maximizable?: boolean;\n /**\n * Name of the maximize icon.\n */\n maximizeIcon?: string;\n /**\n * Name of the minimize icon.\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 */\n position?: string;\n}\n","import { Observable, Subject } from 'rxjs';\n/**\n * Dynamic Dialog instance.\n * @group Components\n */\nexport class DynamicDialogRef {\n constructor() {}\n /**\n * Closes dialog.\n * @group Method\n */\n close(result?: any) {\n this._onClose.next(result);\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 resize end.\n * @param {*} value - Size value.\n * @group Events\n */\n onMaximize: Observable<any> = this._onMaximize.asObservable();\n}\n","import { animate, animation, AnimationEvent, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n ComponentRef,\n ElementRef,\n Inject,\n NgModule,\n NgZone,\n OnDestroy,\n Optional,\n PLATFORM_ID,\n Renderer2,\n SkipSelf,\n Type,\n ViewChild,\n ViewEncapsulation,\n ViewRef\n} from '@angular/core';\nimport { PrimeNGConfig, SharedModule } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { TimesIcon } from 'primeng/icons/times';\nimport { WindowMaximizeIcon } from 'primeng/icons/windowmaximize';\nimport { WindowMinimizeIcon } from 'primeng/icons/windowminimize';\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';\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',\n template: `\n <div\n #mask\n [ngClass]=\"{\n 'p-dialog-mask': true,\n 'p-component-overlay p-component-overlay-enter p-dialog-mask-scrollblocker': config.modal !== false,\n 'p-dialog-left': position === 'left',\n 'p-dialog-right': position === 'right',\n 'p-dialog-top': position === 'top',\n 'p-dialog-bottom': position === 'bottom',\n 'p-dialog-top-left': position === 'topleft' || position === 'top-left',\n 'p-dialog-top-right': position === 'topright' || position === 'top-right',\n 'p-dialog-bottom-left': position === 'bottomleft' || position === 'bottom-left',\n 'p-dialog-bottom-right': position === 'bottomright' || position === 'bottom-right'\n }\"\n [class]=\"config.maskStyleClass\"\n >\n <div\n #container\n [ngClass]=\"{ 'p-dialog p-dynamic-dialog p-component': true, 'p-dialog-rtl': config.rtl, 'p-dialog-resizable': config.resizable, 'p-dialog-draggable': config.draggable, 'p-dialog-maximized': maximized }\"\n [ngStyle]=\"config.style\"\n [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)\"\n (@animation.done)=\"onAnimationEnd($event)\"\n role=\"dialog\"\n *ngIf=\"visible\"\n [style.width]=\"config.width\"\n [style.height]=\"config.height\"\n >\n <div *ngIf=\"config.resizable\" class=\"p-resizable-handle\" style=\"z-index: 90;\" (mousedown)=\"initResize($event)\"></div>\n <div #titlebar class=\"p-dialog-header\" (mousedown)=\"initDrag($event)\" *ngIf=\"config.showHeader === false ? false : true\">\n <span class=\"p-dialog-title\">{{ config.header }}</span>\n <div class=\"p-dialog-header-icons\">\n <button *ngIf=\"config.maximizable\" type=\"button\" [ngClass]=\"{ 'p-dialog-header-icon p-dialog-header-maximize p-link': true }\" (click)=\"maximize()\" (keydown.enter)=\"maximize()\" tabindex=\"-1\" pRipple>\n <span class=\"p-dialog-header-maximize-icon\" [ngClass]=\"maximized ? minimizeIcon : maximizeIcon\"></span>\n <WindowMaximizeIcon *ngIf=\"!maximized && !maximizeIcon\" [styleClass]=\"'p-dialog-header-maximize-icon'\" />\n <WindowMinimizeIcon *ngIf=\"maximized && !minimizeIcon\" [styleClass]=\"'p-dialog-header-maximize-icon'\" />\n </button>\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 <TimesIcon [styleClass]=\"'p-dialog-header-close-icon'\" />\n </button>\n </div>\n </div>\n <div #content 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 `,\n animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\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 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 @ViewChild(DynamicDialogContent) insertionPoint: Nullable<DynamicDialogContent>;\n\n @ViewChild('mask') maskViewChild: Nullable<ElementRef>;\n\n @ViewChild('content') contentViewChild: 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 get minX(): number {\n return this.config.minX ? this.config.minX : 0;\n }\n\n get minY(): number {\n return this.config.minY ? this.config.minY : 0;\n }\n\n get keepInViewport(): boolean {\n return this.config.keepInViewport!;\n }\n\n get maximizable(): boolean {\n return this.config.maximizable!;\n }\n\n get maximizeIcon(): string {\n return this.config.maximizeIcon!;\n }\n\n get minimizeIcon(): string {\n return this.config.minimizeIcon!;\n }\n\n get style(): any {\n return this._style;\n }\n\n get position(): string {\n return this.config.position!;\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 constructor(\n @Inject(DOCUMENT) private document: Document,\n @Inject(PLATFORM_ID) private platformId: any,\n private componentFactoryResolver: ComponentFactoryResolver,\n private cd: ChangeDetectorRef,\n public renderer: Renderer2,\n public config: DynamicDialogConfig,\n private dialogRef: DynamicDialogRef,\n public zone: NgZone,\n public primeNGConfig: PrimeNGConfig,\n @SkipSelf() @Optional() private parentDialog: DynamicDialogComponent\n ) {}\n\n ngAfterViewInit() {\n this.loadChildComponent(this.childComponentType!);\n this.cd.detectChanges();\n }\n\n loadChildComponent(componentType: Type<any>) {\n let componentFactory = this.componentFactoryResolver.resolveComponentFactory(componentType);\n\n let viewContainerRef = this.insertionPoint?.viewContainerRef;\n viewContainerRef?.clear();\n\n this.componentRef = viewContainerRef?.createComponent(componentFactory);\n }\n\n moveOnTop() {\n if (this.config.autoZIndex !== false) {\n ZIndexUtils.set('modal', this.container, (this.config.baseZIndex || 0) + this.primeNGConfig.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\n if (this.config.modal !== false) {\n this.enableModality();\n }\n this.focus();\n break;\n\n case 'void':\n if (this.wrapper && this.config.modal !== false) {\n DomHandler.addClass(this.wrapper, 'p-component-overlay-leave');\n }\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n if (event.toState === 'void') {\n this.onContainerDestroy();\n this.dialogRef.destroy();\n }\n }\n\n onContainerDestroy() {\n this.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 }\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.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(this.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(this.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 // tab\n if (event.which === 9) {\n event.preventDefault();\n\n let focusableElements = DomHandler.getFocusableElements(this.container as HTMLDivElement);\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n } else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0) focusableElements[focusableElements.length - 1].focus();\n else focusableElements[focusedIndex - 1].focus();\n } else {\n if (focusedIndex == -1 || focusedIndex === focusableElements.length - 1) focusableElements[0].focus();\n else focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n }\n\n focus() {\n const focusable = DomHandler.getFocusableElements(this.container as HTMLDivElement);\n if (focusable && focusable.length > 0) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusable[0].focus(), 5);\n });\n }\n }\n\n maximize() {\n this.maximized = !this.maximized;\n\n if (this.maximized) {\n DomHandler.addClass(this.document.body, 'p-overflow-hidden');\n } else {\n DomHandler.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.config.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 DomHandler.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 = DomHandler.getOuterWidth(this.container);\n let containerHeight = DomHandler.getOuterHeight(this.container);\n let contentHeight = DomHandler.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 = DomHandler.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 DomHandler.removeClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.resizeEnd(event);\n }\n }\n\n initDrag(event: MouseEvent) {\n if (DomHandler.hasClass(event.target, 'p-dialog-header-icon') || DomHandler.hasClass((<HTMLElement>event.target).parentElement, 'p-dialog-header-icon')) {\n return;\n }\n\n if (this.config.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 DomHandler.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 = DomHandler.getOuterWidth(this.container);\n let containerHeight = DomHandler.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 = DomHandler.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 DomHandler.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.parentDialog) {\n this.parentDialog.unbindDocumentKeydownListener();\n }\n this.bindDocumentKeydownListener();\n\n if (this.config.closeOnEscape !== false && this.config.closable !== false) {\n this.bindDocumentEscapeListener();\n }\n\n if (this.config.resizable) {\n this.bindDocumentResizeListeners();\n }\n\n if (this.config.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n }\n\n unbindGlobalListeners() {\n this.unbindDocumentKeydownListener();\n this.unbindDocumentEscapeListener();\n this.unbindDocumentResizeListeners();\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n\n if (this.parentDialog) {\n this.parentDialog.bindDocumentKeydownListener();\n }\n }\n\n bindDocumentKeydownListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (this.documentKeydownListener) {\n return;\n } else {\n this.zone.runOutsideAngular(() => {\n this.documentKeydownListener = this.renderer.listen(this.document, 'keydown', this.onKeydown.bind(this));\n });\n }\n }\n }\n\n unbindDocumentKeydownListener() {\n if (this.documentKeydownListener) {\n this.documentKeydownListener();\n this.documentKeydownListener = null;\n }\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 }\n}\n\n@NgModule({\n imports: [CommonModule, WindowMaximizeIcon, WindowMinimizeIcon, TimesIcon, SharedModule],\n declarations: [DynamicDialogComponent, DynamicDialogContent],\n exports: [SharedModule]\n})\nexport class DynamicDialogModule {}\n","import { Injector, Type, InjectionToken, InjectFlags } from '@angular/core';\n\nexport class DynamicDialogInjector implements Injector {\n constructor(private _parentInjector: Injector, private _additionalTokens: WeakMap<any, any>) {}\n\n get<T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags): T;\n get(token: any, notFoundValue?: any);\n get(token: any, notFoundValue?: any, flags?: any) {\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 { Injectable, ComponentFactoryResolver, ApplicationRef, Injector, Type, EmbeddedViewRef, ComponentRef, Inject } from '@angular/core';\nimport { DynamicDialogComponent } from './dynamicdialog';\nimport { DynamicDialogInjector } from './dynamicdialog-injector';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\nimport { DOCUMENT } from '@angular/common';\n/**\n * Dynamic Dialog component methods.\n * @group Service\n */\n@Injectable()\nexport class DialogService {\n dialogComponentRefMap: Map<DynamicDialogRef, ComponentRef<DynamicDialogComponent>> = new Map();\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, private appRef: ApplicationRef, private injector: Injector, @Inject(DOCUMENT) private document: Document) {}\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(componentType: Type<any>, config: DynamicDialogConfig): DynamicDialogRef {\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 this.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":["i1.DynamicDialogConfig","i2.DynamicDialogRef"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-dynamicdialog.mjs","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 constructor(public viewContainerRef: ViewContainerRef) {}\n}\n","/**\n * Dialogs can be created dynamically with any component as the content using a DialogService.\n * @group Interface\n */\nexport class DynamicDialogConfig<T = any> {\n /**\n * An object to pass to the component loaded inside the Dialog.\n */\n data?: T;\n /**\n * Header text of the dialog.\n */\n header?: string;\n /**\n * Identifies the element (or elements) that labels the element it is applied to.\n */\n ariaLabelledBy?: string;\n /**\n * Footer text of the dialog.\n */\n footer?: string;\n /**\n * Width of the dialog.\n */\n width?: string;\n /**\n * Height of the dialog.\n */\n height?: string;\n /**\n * Specifies if pressing escape key should hide the dialog.\n */\n closeOnEscape?: boolean;\n /**\n * Base zIndex value to use in layering.\n */\n baseZIndex?: number;\n /**\n * Whether to automatically manage layering.\n */\n autoZIndex?: boolean;\n /**\n * Specifies if clicking the modal background should hide the dialog.\n */\n dismissableMask?: boolean;\n /**\n * Inline style of the component.\n */\n rtl?: boolean;\n /**\n * Inline style of the comopnent.\n */\n style?: { [klass: string]: any } | null | undefined;\n /**\n * Inline style of the content.\n */\n contentStyle?: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n */\n styleClass?: string;\n /**\n * Transition options of the animation.\n */\n transitionOptions?: string;\n /**\n * Adds a close icon to the header to hide the dialog.\n */\n closable?: boolean;\n /**\n * Whether to show the header or not.\n */\n showHeader?: boolean;\n /**\n * Defines if background should be blocked when dialog is displayed.\n */\n modal?: boolean;\n /**\n * Style class of the mask.\n */\n maskStyleClass?: string;\n /**\n * Enables resizing of the content.\n */\n resizable?: boolean;\n /**\n * Enables dragging to change the position using header.\n */\n draggable?: boolean;\n /**\n * Keeps dialog in the viewport.\n */\n keepInViewport?: boolean;\n /**\n * Minimum value for the left coordinate of dialog in dragging.\n */\n minX?: number;\n /**\n * Minimum value for the top coordinate of dialog in dragging.\n */\n minY?: number;\n /**\n * Whether the dialog can be displayed full screen.\n */\n maximizable?: boolean;\n /**\n * Name of the maximize icon.\n */\n maximizeIcon?: string;\n /**\n * Name of the minimize icon.\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 */\n position?: string;\n}\n","import { Observable, Subject } from 'rxjs';\n/**\n * Dynamic Dialog instance.\n * @group Components\n */\nexport class DynamicDialogRef {\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 resize end.\n * @param {*} value - Size value.\n * @group Events\n */\n onMaximize: Observable<any> = this._onMaximize.asObservable();\n}\n","import { animate, animation, AnimationEvent, style, transition, trigger, useAnimation } from '@angular/animations';\nimport { CommonModule, DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n ComponentRef,\n ElementRef,\n Inject,\n NgModule,\n NgZone,\n OnDestroy,\n Optional,\n PLATFORM_ID,\n Renderer2,\n SkipSelf,\n Type,\n ViewChild,\n ViewEncapsulation,\n ViewRef\n} from '@angular/core';\nimport { PrimeNGConfig, SharedModule } from 'primeng/api';\nimport { DomHandler } from 'primeng/dom';\nimport { TimesIcon } from 'primeng/icons/times';\nimport { WindowMaximizeIcon } from 'primeng/icons/windowmaximize';\nimport { WindowMinimizeIcon } from 'primeng/icons/windowminimize';\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';\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',\n template: `\n <div\n #mask\n [ngClass]=\"{\n 'p-dialog-mask': true,\n 'p-component-overlay p-component-overlay-enter p-dialog-mask-scrollblocker': config.modal !== false,\n 'p-dialog-left': position === 'left',\n 'p-dialog-right': position === 'right',\n 'p-dialog-top': position === 'top',\n 'p-dialog-bottom': position === 'bottom',\n 'p-dialog-top-left': position === 'topleft' || position === 'top-left',\n 'p-dialog-top-right': position === 'topright' || position === 'top-right',\n 'p-dialog-bottom-left': position === 'bottomleft' || position === 'bottom-left',\n 'p-dialog-bottom-right': position === 'bottomright' || position === 'bottom-right'\n }\"\n [class]=\"config.maskStyleClass\"\n >\n <div\n #container\n [ngClass]=\"{ 'p-dialog p-dynamic-dialog p-component': true, 'p-dialog-rtl': config.rtl, 'p-dialog-resizable': config.resizable, 'p-dialog-draggable': config.draggable, 'p-dialog-maximized': maximized }\"\n [ngStyle]=\"config.style\"\n [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)\"\n (@animation.done)=\"onAnimationEnd($event)\"\n role=\"dialog\"\n *ngIf=\"visible\"\n [style.width]=\"config.width\"\n [style.height]=\"config.height\"\n >\n <div *ngIf=\"config.resizable\" class=\"p-resizable-handle\" style=\"z-index: 90;\" (mousedown)=\"initResize($event)\"></div>\n <div #titlebar class=\"p-dialog-header\" (mousedown)=\"initDrag($event)\" *ngIf=\"config.showHeader === false ? false : true\">\n <span class=\"p-dialog-title\">{{ config.header }}</span>\n <div class=\"p-dialog-header-icons\">\n <button *ngIf=\"config.maximizable\" type=\"button\" [ngClass]=\"{ 'p-dialog-header-icon p-dialog-header-maximize p-link': true }\" (click)=\"maximize()\" (keydown.enter)=\"maximize()\" tabindex=\"-1\" pRipple>\n <span class=\"p-dialog-header-maximize-icon\" [ngClass]=\"maximized ? minimizeIcon : maximizeIcon\"></span>\n <WindowMaximizeIcon *ngIf=\"!maximized && !maximizeIcon\" [styleClass]=\"'p-dialog-header-maximize-icon'\" />\n <WindowMinimizeIcon *ngIf=\"maximized && !minimizeIcon\" [styleClass]=\"'p-dialog-header-maximize-icon'\" />\n </button>\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 <TimesIcon [styleClass]=\"'p-dialog-header-close-icon'\" />\n </button>\n </div>\n </div>\n <div #content 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 `,\n animations: [trigger('animation', [transition('void => visible', [useAnimation(showAnimation)]), transition('visible => void', [useAnimation(hideAnimation)])])],\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 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 @ViewChild(DynamicDialogContent) insertionPoint: Nullable<DynamicDialogContent>;\n\n @ViewChild('mask') maskViewChild: Nullable<ElementRef>;\n\n @ViewChild('content') contentViewChild: 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 get minX(): number {\n return this.config.minX ? this.config.minX : 0;\n }\n\n get minY(): number {\n return this.config.minY ? this.config.minY : 0;\n }\n\n get keepInViewport(): boolean {\n return this.config.keepInViewport!;\n }\n\n get maximizable(): boolean {\n return this.config.maximizable!;\n }\n\n get maximizeIcon(): string {\n return this.config.maximizeIcon!;\n }\n\n get minimizeIcon(): string {\n return this.config.minimizeIcon!;\n }\n\n get style(): any {\n return this._style;\n }\n\n get position(): string {\n return this.config.position!;\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 constructor(\n @Inject(DOCUMENT) private document: Document,\n @Inject(PLATFORM_ID) private platformId: any,\n private componentFactoryResolver: ComponentFactoryResolver,\n private cd: ChangeDetectorRef,\n public renderer: Renderer2,\n public config: DynamicDialogConfig,\n private dialogRef: DynamicDialogRef,\n public zone: NgZone,\n public primeNGConfig: PrimeNGConfig,\n @SkipSelf() @Optional() private parentDialog: DynamicDialogComponent\n ) {}\n\n ngAfterViewInit() {\n this.loadChildComponent(this.childComponentType!);\n this.cd.detectChanges();\n }\n\n loadChildComponent(componentType: Type<any>) {\n let componentFactory = this.componentFactoryResolver.resolveComponentFactory(componentType);\n\n let viewContainerRef = this.insertionPoint?.viewContainerRef;\n viewContainerRef?.clear();\n\n this.componentRef = viewContainerRef?.createComponent(componentFactory);\n }\n\n moveOnTop() {\n if (this.config.autoZIndex !== false) {\n ZIndexUtils.set('modal', this.container, (this.config.baseZIndex || 0) + this.primeNGConfig.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\n if (this.config.modal !== false) {\n this.enableModality();\n }\n this.focus();\n break;\n\n case 'void':\n if (this.wrapper && this.config.modal !== false) {\n DomHandler.addClass(this.wrapper, 'p-component-overlay-leave');\n }\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n if (event.toState === 'void') {\n this.onContainerDestroy();\n this.dialogRef.destroy();\n }\n }\n\n onContainerDestroy() {\n this.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 }\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.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(this.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(this.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 // tab\n if (event.which === 9) {\n event.preventDefault();\n\n let focusableElements = DomHandler.getFocusableElements(this.container as HTMLDivElement);\n if (focusableElements && focusableElements.length > 0) {\n if (!focusableElements[0].ownerDocument.activeElement) {\n focusableElements[0].focus();\n } else {\n let focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);\n\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0) focusableElements[focusableElements.length - 1].focus();\n else focusableElements[focusedIndex - 1].focus();\n } else {\n if (focusedIndex == -1 || focusedIndex === focusableElements.length - 1) focusableElements[0].focus();\n else focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n }\n\n focus() {\n const focusable = DomHandler.getFocusableElements(this.container as HTMLDivElement);\n if (focusable && focusable.length > 0) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusable[0].focus(), 5);\n });\n }\n }\n\n maximize() {\n this.maximized = !this.maximized;\n\n if (this.maximized) {\n DomHandler.addClass(this.document.body, 'p-overflow-hidden');\n } else {\n DomHandler.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.config.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 DomHandler.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 = DomHandler.getOuterWidth(this.container);\n let containerHeight = DomHandler.getOuterHeight(this.container);\n let contentHeight = DomHandler.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 = DomHandler.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 DomHandler.removeClass(this.document.body, 'p-unselectable-text');\n this.dialogRef.resizeEnd(event);\n }\n }\n\n initDrag(event: MouseEvent) {\n if (DomHandler.hasClass(event.target, 'p-dialog-header-icon') || DomHandler.hasClass((<HTMLElement>event.target).parentElement, 'p-dialog-header-icon')) {\n return;\n }\n\n if (this.config.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 DomHandler.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 = DomHandler.getOuterWidth(this.container);\n let containerHeight = DomHandler.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 = DomHandler.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 DomHandler.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.parentDialog) {\n this.parentDialog.unbindDocumentKeydownListener();\n }\n this.bindDocumentKeydownListener();\n\n if (this.config.closeOnEscape !== false && this.config.closable !== false) {\n this.bindDocumentEscapeListener();\n }\n\n if (this.config.resizable) {\n this.bindDocumentResizeListeners();\n }\n\n if (this.config.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n }\n\n unbindGlobalListeners() {\n this.unbindDocumentKeydownListener();\n this.unbindDocumentEscapeListener();\n this.unbindDocumentResizeListeners();\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n\n if (this.parentDialog) {\n this.parentDialog.bindDocumentKeydownListener();\n }\n }\n\n bindDocumentKeydownListener() {\n if (isPlatformBrowser(this.platformId)) {\n if (this.documentKeydownListener) {\n return;\n } else {\n this.zone.runOutsideAngular(() => {\n this.documentKeydownListener = this.renderer.listen(this.document, 'keydown', this.onKeydown.bind(this));\n });\n }\n }\n }\n\n unbindDocumentKeydownListener() {\n if (this.documentKeydownListener) {\n this.documentKeydownListener();\n this.documentKeydownListener = null;\n }\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 }\n}\n\n@NgModule({\n imports: [CommonModule, WindowMaximizeIcon, WindowMinimizeIcon, TimesIcon, SharedModule],\n declarations: [DynamicDialogComponent, DynamicDialogContent],\n exports: [SharedModule]\n})\nexport class DynamicDialogModule {}\n","import { Injector, Type, InjectionToken, InjectFlags } from '@angular/core';\n\nexport class DynamicDialogInjector implements Injector {\n constructor(private _parentInjector: Injector, private _additionalTokens: WeakMap<any, any>) {}\n\n get<T>(token: Type<T> | InjectionToken<T>, notFoundValue?: T, flags?: InjectFlags): T;\n get(token: any, notFoundValue?: any);\n get(token: any, notFoundValue?: any, flags?: any) {\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 { Injectable, ComponentFactoryResolver, ApplicationRef, Injector, Type, EmbeddedViewRef, ComponentRef, Inject } from '@angular/core';\nimport { DynamicDialogComponent } from './dynamicdialog';\nimport { DynamicDialogInjector } from './dynamicdialog-injector';\nimport { DynamicDialogConfig } from './dynamicdialog-config';\nimport { DynamicDialogRef } from './dynamicdialog-ref';\nimport { DOCUMENT } from '@angular/common';\n/**\n * Dynamic Dialog component methods.\n * @group Service\n */\n@Injectable()\nexport class DialogService {\n dialogComponentRefMap: Map<DynamicDialogRef, ComponentRef<DynamicDialogComponent>> = new Map();\n\n constructor(private componentFactoryResolver: ComponentFactoryResolver, private appRef: ApplicationRef, private injector: Injector, @Inject(DOCUMENT) private document: Document) {}\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(componentType: Type<any>, config: DynamicDialogConfig): DynamicDialogRef {\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 this.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":["i1.DynamicDialogConfig","i2.DynamicDialogRef"],"mappings":"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"}
|
@@ -1,15 +1,15 @@
|
|
1
|
-
import * as i0 from '@angular/core';
|
2
|
-
import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChildren, NgModule } from '@angular/core';
|
3
1
|
import { trigger, state, style, transition, animate } from '@angular/animations';
|
4
2
|
import * as i1 from '@angular/common';
|
5
3
|
import { CommonModule } from '@angular/common';
|
4
|
+
import * as i0 from '@angular/core';
|
5
|
+
import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Output, ContentChildren, NgModule } from '@angular/core';
|
6
6
|
import { PrimeTemplate, SharedModule } from 'primeng/api';
|
7
|
+
import { MinusIcon } from 'primeng/icons/minus';
|
8
|
+
import { PlusIcon } from 'primeng/icons/plus';
|
7
9
|
import * as i2 from 'primeng/ripple';
|
8
10
|
import { RippleModule } from 'primeng/ripple';
|
9
|
-
import {
|
10
|
-
import { MinusIcon } from 'primeng/icons/minus';
|
11
|
+
import { UniqueComponentId } from 'primeng/utils';
|
11
12
|
|
12
|
-
let idx = 0;
|
13
13
|
/**
|
14
14
|
* Fieldset is a grouping component with the optional content toggle feature.
|
15
15
|
* @group Components
|
@@ -66,6 +66,12 @@ class Fieldset {
|
|
66
66
|
*/
|
67
67
|
onAfterToggle = new EventEmitter();
|
68
68
|
templates;
|
69
|
+
get id() {
|
70
|
+
return UniqueComponentId();
|
71
|
+
}
|
72
|
+
get buttonAriaLabel() {
|
73
|
+
return this.legend;
|
74
|
+
}
|
69
75
|
animating;
|
70
76
|
headerTemplate;
|
71
77
|
contentTemplate;
|
@@ -74,7 +80,6 @@ class Fieldset {
|
|
74
80
|
constructor(el) {
|
75
81
|
this.el = el;
|
76
82
|
}
|
77
|
-
id = `p-fieldset-${idx++}`;
|
78
83
|
ngAfterContentInit() {
|
79
84
|
this.templates.forEach((item) => {
|
80
85
|
switch (item.getType()) {
|
@@ -106,6 +111,12 @@ class Fieldset {
|
|
106
111
|
this.onAfterToggle.emit({ originalEvent: event, collapsed: this.collapsed });
|
107
112
|
event.preventDefault();
|
108
113
|
}
|
114
|
+
onKeyDown(event) {
|
115
|
+
if (event.code === 'Enter' || event.code === 'Space') {
|
116
|
+
this.toggle(event);
|
117
|
+
event.preventDefault();
|
118
|
+
}
|
119
|
+
}
|
109
120
|
expand() {
|
110
121
|
this.collapsed = false;
|
111
122
|
this.collapsedChange.emit(this.collapsed);
|
@@ -122,19 +133,26 @@ class Fieldset {
|
|
122
133
|
}
|
123
134
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Fieldset, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
124
135
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: Fieldset, selector: "p-fieldset", inputs: { legend: "legend", toggleable: "toggleable", collapsed: "collapsed", style: "style", styleClass: "styleClass", transitionOptions: "transitionOptions" }, outputs: { collapsedChange: "collapsedChange", onBeforeToggle: "onBeforeToggle", onAfterToggle: "onAfterToggle" }, host: { classAttribute: "p-element" }, queries: [{ propertyName: "templates", predicate: PrimeTemplate }], ngImport: i0, template: `
|
125
|
-
<fieldset
|
126
|
-
|
136
|
+
<fieldset
|
137
|
+
[attr.id]="id"
|
138
|
+
[ngClass]="{ 'p-fieldset p-component': true, 'p-fieldset-toggleable': toggleable, 'p-fieldset-expanded': !collapsed && toggleable }"
|
139
|
+
[ngStyle]="style"
|
140
|
+
[class]="styleClass"
|
141
|
+
[attr.data-pc-name]="'fieldset'"
|
142
|
+
[attr.data-pc-section]="'root'"
|
143
|
+
>
|
144
|
+
<legend class="p-fieldset-legend" [attr.data-pc-section]="'legend'">
|
127
145
|
<ng-container *ngIf="toggleable; else legendContent">
|
128
|
-
<a
|
146
|
+
<a [attr.id]="id + '_header'" pRipple tabindex="0" role="button" [attr.aria-controls]="id + '_content'" [attr.aria-expanded]="!collapsed" [attr.aria-label]="buttonAriaLabel" (click)="toggle($event)" (keydown)="onKeyDown($event)">
|
129
147
|
<ng-container *ngIf="collapsed">
|
130
|
-
<PlusIcon [styleClass]="'p-fieldset-toggler'"
|
131
|
-
<span *ngIf="expandIconTemplate" class="p-fieldset-toggler">
|
148
|
+
<PlusIcon *ngIf="!expandIconTemplate" [styleClass]="'p-fieldset-toggler'" [attr.data-pc-section]="'togglericon'" />
|
149
|
+
<span *ngIf="expandIconTemplate" class="p-fieldset-toggler" [attr.data-pc-section]="'togglericon'">
|
132
150
|
<ng-container *ngTemplateOutlet="expandIconTemplate"></ng-container>
|
133
151
|
</span>
|
134
152
|
</ng-container>
|
135
153
|
<ng-container *ngIf="!collapsed">
|
136
|
-
<MinusIcon [styleClass]="'p-fieldset-toggler'"
|
137
|
-
<span *ngIf="collapseIconTemplate" class="p-fieldset-toggler">
|
154
|
+
<MinusIcon *ngIf="!collapseIconTemplate" [styleClass]="'p-fieldset-toggler'" [attr.aria-hidden]="true" [attr.data-pc-section]="'togglericon'" />
|
155
|
+
<span *ngIf="collapseIconTemplate" class="p-fieldset-toggler" [attr.data-pc-section]="'togglericon'">
|
138
156
|
<ng-container *ngTemplateOutlet="collapseIconTemplate"></ng-container>
|
139
157
|
</span>
|
140
158
|
</ng-container>
|
@@ -142,21 +160,22 @@ class Fieldset {
|
|
142
160
|
</a>
|
143
161
|
</ng-container>
|
144
162
|
<ng-template #legendContent>
|
145
|
-
<span class="p-fieldset-legend-text">{{ legend }}</span>
|
163
|
+
<span class="p-fieldset-legend-text" [attr.data-pc-section]="'legendtitle'">{{ legend }}</span>
|
146
164
|
<ng-content select="p-header"></ng-content>
|
147
165
|
<ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
|
148
166
|
</ng-template>
|
149
167
|
</legend>
|
150
168
|
<div
|
151
|
-
[attr.id]="id + '
|
169
|
+
[attr.id]="id + '_content'"
|
170
|
+
role="region"
|
152
171
|
class="p-toggleable-content"
|
153
172
|
[@fieldsetContent]="collapsed ? { value: 'hidden', params: { transitionParams: transitionOptions, height: '0' } } : { value: 'visible', params: { transitionParams: animating ? transitionOptions : '0ms', height: '*' } }"
|
154
|
-
[attr.aria-labelledby]="id"
|
173
|
+
[attr.aria-labelledby]="id + '_header'"
|
155
174
|
[attr.aria-hidden]="collapsed"
|
175
|
+
[attr.data-pc-section]="'toggleablecontent'"
|
156
176
|
(@fieldsetContent.done)="onToggleDone()"
|
157
|
-
role="region"
|
158
177
|
>
|
159
|
-
<div class="p-fieldset-content">
|
178
|
+
<div class="p-fieldset-content" [attr.data-pc-section]="'content'">
|
160
179
|
<ng-content></ng-content>
|
161
180
|
<ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
|
162
181
|
</div>
|
@@ -178,19 +197,26 @@ class Fieldset {
|
|
178
197
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: Fieldset, decorators: [{
|
179
198
|
type: Component,
|
180
199
|
args: [{ selector: 'p-fieldset', template: `
|
181
|
-
<fieldset
|
182
|
-
|
200
|
+
<fieldset
|
201
|
+
[attr.id]="id"
|
202
|
+
[ngClass]="{ 'p-fieldset p-component': true, 'p-fieldset-toggleable': toggleable, 'p-fieldset-expanded': !collapsed && toggleable }"
|
203
|
+
[ngStyle]="style"
|
204
|
+
[class]="styleClass"
|
205
|
+
[attr.data-pc-name]="'fieldset'"
|
206
|
+
[attr.data-pc-section]="'root'"
|
207
|
+
>
|
208
|
+
<legend class="p-fieldset-legend" [attr.data-pc-section]="'legend'">
|
183
209
|
<ng-container *ngIf="toggleable; else legendContent">
|
184
|
-
<a
|
210
|
+
<a [attr.id]="id + '_header'" pRipple tabindex="0" role="button" [attr.aria-controls]="id + '_content'" [attr.aria-expanded]="!collapsed" [attr.aria-label]="buttonAriaLabel" (click)="toggle($event)" (keydown)="onKeyDown($event)">
|
185
211
|
<ng-container *ngIf="collapsed">
|
186
|
-
<PlusIcon [styleClass]="'p-fieldset-toggler'"
|
187
|
-
<span *ngIf="expandIconTemplate" class="p-fieldset-toggler">
|
212
|
+
<PlusIcon *ngIf="!expandIconTemplate" [styleClass]="'p-fieldset-toggler'" [attr.data-pc-section]="'togglericon'" />
|
213
|
+
<span *ngIf="expandIconTemplate" class="p-fieldset-toggler" [attr.data-pc-section]="'togglericon'">
|
188
214
|
<ng-container *ngTemplateOutlet="expandIconTemplate"></ng-container>
|
189
215
|
</span>
|
190
216
|
</ng-container>
|
191
217
|
<ng-container *ngIf="!collapsed">
|
192
|
-
<MinusIcon [styleClass]="'p-fieldset-toggler'"
|
193
|
-
<span *ngIf="collapseIconTemplate" class="p-fieldset-toggler">
|
218
|
+
<MinusIcon *ngIf="!collapseIconTemplate" [styleClass]="'p-fieldset-toggler'" [attr.aria-hidden]="true" [attr.data-pc-section]="'togglericon'" />
|
219
|
+
<span *ngIf="collapseIconTemplate" class="p-fieldset-toggler" [attr.data-pc-section]="'togglericon'">
|
194
220
|
<ng-container *ngTemplateOutlet="collapseIconTemplate"></ng-container>
|
195
221
|
</span>
|
196
222
|
</ng-container>
|
@@ -198,21 +224,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
198
224
|
</a>
|
199
225
|
</ng-container>
|
200
226
|
<ng-template #legendContent>
|
201
|
-
<span class="p-fieldset-legend-text">{{ legend }}</span>
|
227
|
+
<span class="p-fieldset-legend-text" [attr.data-pc-section]="'legendtitle'">{{ legend }}</span>
|
202
228
|
<ng-content select="p-header"></ng-content>
|
203
229
|
<ng-container *ngTemplateOutlet="headerTemplate"></ng-container>
|
204
230
|
</ng-template>
|
205
231
|
</legend>
|
206
232
|
<div
|
207
|
-
[attr.id]="id + '
|
233
|
+
[attr.id]="id + '_content'"
|
234
|
+
role="region"
|
208
235
|
class="p-toggleable-content"
|
209
236
|
[@fieldsetContent]="collapsed ? { value: 'hidden', params: { transitionParams: transitionOptions, height: '0' } } : { value: 'visible', params: { transitionParams: animating ? transitionOptions : '0ms', height: '*' } }"
|
210
|
-
[attr.aria-labelledby]="id"
|
237
|
+
[attr.aria-labelledby]="id + '_header'"
|
211
238
|
[attr.aria-hidden]="collapsed"
|
239
|
+
[attr.data-pc-section]="'toggleablecontent'"
|
212
240
|
(@fieldsetContent.done)="onToggleDone()"
|
213
|
-
role="region"
|
214
241
|
>
|
215
|
-
<div class="p-fieldset-content">
|
242
|
+
<div class="p-fieldset-content" [attr.data-pc-section]="'content'">
|
216
243
|
<ng-content></ng-content>
|
217
244
|
<ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
|
218
245
|
</div>
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-fieldset.mjs","sources":["../../src/app/components/fieldset/fieldset.ts","../../src/app/components/fieldset/primeng-fieldset.ts"],"sourcesContent":["import { NgModule, Component, Input, Output, EventEmitter, ElementRef, ChangeDetectionStrategy, ViewEncapsulation, AfterContentInit, QueryList, ContentChildren, TemplateRef } from '@angular/core';\nimport { trigger, state, style, transition, animate, AnimationEvent } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport { SharedModule, PrimeTemplate } from 'primeng/api';\nimport { BlockableUI } from 'primeng/api';\nimport { RippleModule } from 'primeng/ripple';\nimport { PlusIcon } from 'primeng/icons/plus';\nimport { MinusIcon } from 'primeng/icons/minus';\nimport { FieldsetAfterToggleEvent, FieldsetBeforeToggleEvent } from './fieldset.interface';\nimport { Nullable } from 'primeng/ts-helpers';\n\nlet idx: number = 0;\n/**\n * Fieldset is a grouping component with the optional content toggle feature.\n * @group Components\n */\n@Component({\n selector: 'p-fieldset',\n template: `\n <fieldset [attr.id]=\"id\" [ngClass]=\"{ 'p-fieldset p-component': true, 'p-fieldset-toggleable': toggleable, 'p-fieldset-expanded': !collapsed && toggleable }\" [ngStyle]=\"style\" [class]=\"styleClass\">\n <legend class=\"p-fieldset-legend\">\n <ng-container *ngIf=\"toggleable; else legendContent\">\n <a tabindex=\"0\" (click)=\"toggle($event)\" (keydown.enter)=\"toggle($event)\" [attr.aria-controls]=\"id + '-content'\" [attr.aria-expanded]=\"!collapsed\" pRipple>\n <ng-container *ngIf=\"collapsed\">\n <PlusIcon [styleClass]=\"'p-fieldset-toggler'\" *ngIf=\"!expandIconTemplate\" />\n <span *ngIf=\"expandIconTemplate\" class=\"p-fieldset-toggler\">\n <ng-container *ngTemplateOutlet=\"expandIconTemplate\"></ng-container>\n </span>\n </ng-container>\n <ng-container *ngIf=\"!collapsed\">\n <MinusIcon [styleClass]=\"'p-fieldset-toggler'\" *ngIf=\"!collapseIconTemplate\" />\n <span *ngIf=\"collapseIconTemplate\" class=\"p-fieldset-toggler\">\n <ng-container *ngTemplateOutlet=\"collapseIconTemplate\"></ng-container>\n </span>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"legendContent\"></ng-container>\n </a>\n </ng-container>\n <ng-template #legendContent>\n <span class=\"p-fieldset-legend-text\">{{ legend }}</span>\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </ng-template>\n </legend>\n <div\n [attr.id]=\"id + '-content'\"\n class=\"p-toggleable-content\"\n [@fieldsetContent]=\"collapsed ? { value: 'hidden', params: { transitionParams: transitionOptions, height: '0' } } : { value: 'visible', params: { transitionParams: animating ? transitionOptions : '0ms', height: '*' } }\"\n [attr.aria-labelledby]=\"id\"\n [attr.aria-hidden]=\"collapsed\"\n (@fieldsetContent.done)=\"onToggleDone()\"\n role=\"region\"\n >\n <div class=\"p-fieldset-content\">\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </div>\n </div>\n </fieldset>\n `,\n animations: [\n trigger('fieldsetContent', [\n state(\n 'hidden',\n style({\n height: '0'\n })\n ),\n state(\n 'visible',\n style({\n height: '*'\n })\n ),\n transition('visible <=> hidden', [animate('{{transitionParams}}')]),\n transition('void => *', animate(0))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./fieldset.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class Fieldset implements AfterContentInit, BlockableUI {\n /**\n * Header text of the fieldset.\n * @group Props\n */\n @Input() legend: string | undefined;\n /**\n * When specified, content can toggled by clicking the legend.\n * @group Props\n * @defaultValue false\n */\n @Input() toggleable: boolean | undefined;\n /**\n * Defines the default visibility state of the content.\n * * @group Props\n */\n @Input() collapsed: boolean | undefined = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Transition options of the panel animation.\n * @group Props\n */\n @Input() transitionOptions: string = '400ms cubic-bezier(0.86, 0, 0.07, 1)';\n /**\n * Emits when the collapsed state changes.\n * @param {boolean} value - New value.\n * @group Emits\n */\n @Output() collapsedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n /**\n * Callback to invoke before panel toggle.\n * @param {PanelBeforeToggleEvent} event - Custom toggle event\n * @group Emits\n */\n @Output() onBeforeToggle: EventEmitter<FieldsetBeforeToggleEvent> = new EventEmitter<FieldsetBeforeToggleEvent>();\n /**\n * Callback to invoke after panel toggle.\n * @param {PanelAfterToggleEvent} event - Custom toggle event\n * @group Emits\n */\n @Output() onAfterToggle: EventEmitter<FieldsetAfterToggleEvent> = new EventEmitter<FieldsetAfterToggleEvent>();\n\n @ContentChildren(PrimeTemplate) templates!: QueryList<PrimeTemplate>;\n\n public animating: Nullable<boolean>;\n\n headerTemplate: Nullable<TemplateRef<any>>;\n\n contentTemplate: Nullable<TemplateRef<any>>;\n\n collapseIconTemplate: Nullable<TemplateRef<any>>;\n\n expandIconTemplate: Nullable<TemplateRef<any>>;\n\n constructor(private el: ElementRef) {}\n\n id: string = `p-fieldset-${idx++}`;\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'expandicon':\n this.expandIconTemplate = item.template;\n break;\n\n case 'collapseicon':\n this.collapseIconTemplate = item.template;\n break;\n\n case 'content':\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n toggle(event: MouseEvent) {\n if (this.animating) {\n return false;\n }\n\n this.animating = true;\n this.onBeforeToggle.emit({ originalEvent: event, collapsed: this.collapsed });\n\n if (this.collapsed) this.expand();\n else this.collapse();\n\n this.onAfterToggle.emit({ originalEvent: event, collapsed: this.collapsed });\n event.preventDefault();\n }\n\n expand() {\n this.collapsed = false;\n this.collapsedChange.emit(this.collapsed);\n }\n\n collapse() {\n this.collapsed = true;\n this.collapsedChange.emit(this.collapsed);\n }\n\n getBlockableElement(): HTMLElement {\n return this.el.nativeElement.children[0];\n }\n\n onToggleDone() {\n this.animating = false;\n }\n}\n\n@NgModule({\n imports: [CommonModule, RippleModule, MinusIcon, PlusIcon],\n exports: [Fieldset, SharedModule],\n declarations: [Fieldset]\n})\nexport class FieldsetModule {}\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-fieldset.mjs","sources":["../../src/app/components/fieldset/fieldset.ts","../../src/app/components/fieldset/primeng-fieldset.ts"],"sourcesContent":["import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { CommonModule } from '@angular/common';\nimport { AfterContentInit, ChangeDetectionStrategy, Component, ContentChildren, ElementRef, EventEmitter, Input, NgModule, Output, QueryList, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { BlockableUI, PrimeTemplate, SharedModule } from 'primeng/api';\nimport { MinusIcon } from 'primeng/icons/minus';\nimport { PlusIcon } from 'primeng/icons/plus';\nimport { RippleModule } from 'primeng/ripple';\nimport { Nullable } from 'primeng/ts-helpers';\nimport { UniqueComponentId } from 'primeng/utils';\nimport { FieldsetAfterToggleEvent, FieldsetBeforeToggleEvent } from './fieldset.interface';\n\n/**\n * Fieldset is a grouping component with the optional content toggle feature.\n * @group Components\n */\n@Component({\n selector: 'p-fieldset',\n template: `\n <fieldset\n [attr.id]=\"id\"\n [ngClass]=\"{ 'p-fieldset p-component': true, 'p-fieldset-toggleable': toggleable, 'p-fieldset-expanded': !collapsed && toggleable }\"\n [ngStyle]=\"style\"\n [class]=\"styleClass\"\n [attr.data-pc-name]=\"'fieldset'\"\n [attr.data-pc-section]=\"'root'\"\n >\n <legend class=\"p-fieldset-legend\" [attr.data-pc-section]=\"'legend'\">\n <ng-container *ngIf=\"toggleable; else legendContent\">\n <a [attr.id]=\"id + '_header'\" pRipple tabindex=\"0\" role=\"button\" [attr.aria-controls]=\"id + '_content'\" [attr.aria-expanded]=\"!collapsed\" [attr.aria-label]=\"buttonAriaLabel\" (click)=\"toggle($event)\" (keydown)=\"onKeyDown($event)\">\n <ng-container *ngIf=\"collapsed\">\n <PlusIcon *ngIf=\"!expandIconTemplate\" [styleClass]=\"'p-fieldset-toggler'\" [attr.data-pc-section]=\"'togglericon'\" />\n <span *ngIf=\"expandIconTemplate\" class=\"p-fieldset-toggler\" [attr.data-pc-section]=\"'togglericon'\">\n <ng-container *ngTemplateOutlet=\"expandIconTemplate\"></ng-container>\n </span>\n </ng-container>\n <ng-container *ngIf=\"!collapsed\">\n <MinusIcon *ngIf=\"!collapseIconTemplate\" [styleClass]=\"'p-fieldset-toggler'\" [attr.aria-hidden]=\"true\" [attr.data-pc-section]=\"'togglericon'\" />\n <span *ngIf=\"collapseIconTemplate\" class=\"p-fieldset-toggler\" [attr.data-pc-section]=\"'togglericon'\">\n <ng-container *ngTemplateOutlet=\"collapseIconTemplate\"></ng-container>\n </span>\n </ng-container>\n <ng-container *ngTemplateOutlet=\"legendContent\"></ng-container>\n </a>\n </ng-container>\n <ng-template #legendContent>\n <span class=\"p-fieldset-legend-text\" [attr.data-pc-section]=\"'legendtitle'\">{{ legend }}</span>\n <ng-content select=\"p-header\"></ng-content>\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </ng-template>\n </legend>\n <div\n [attr.id]=\"id + '_content'\"\n role=\"region\"\n class=\"p-toggleable-content\"\n [@fieldsetContent]=\"collapsed ? { value: 'hidden', params: { transitionParams: transitionOptions, height: '0' } } : { value: 'visible', params: { transitionParams: animating ? transitionOptions : '0ms', height: '*' } }\"\n [attr.aria-labelledby]=\"id + '_header'\"\n [attr.aria-hidden]=\"collapsed\"\n [attr.data-pc-section]=\"'toggleablecontent'\"\n (@fieldsetContent.done)=\"onToggleDone()\"\n >\n <div class=\"p-fieldset-content\" [attr.data-pc-section]=\"'content'\">\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </div>\n </div>\n </fieldset>\n `,\n animations: [\n trigger('fieldsetContent', [\n state(\n 'hidden',\n style({\n height: '0'\n })\n ),\n state(\n 'visible',\n style({\n height: '*'\n })\n ),\n transition('visible <=> hidden', [animate('{{transitionParams}}')]),\n transition('void => *', animate(0))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./fieldset.css'],\n host: {\n class: 'p-element'\n }\n})\nexport class Fieldset implements AfterContentInit, BlockableUI {\n /**\n * Header text of the fieldset.\n * @group Props\n */\n @Input() legend: string | undefined;\n /**\n * When specified, content can toggled by clicking the legend.\n * @group Props\n * @defaultValue false\n */\n @Input() toggleable: boolean | undefined;\n /**\n * Defines the default visibility state of the content.\n * * @group Props\n */\n @Input() collapsed: boolean | undefined = false;\n /**\n * Inline style of the component.\n * @group Props\n */\n @Input() style: { [klass: string]: any } | null | undefined;\n /**\n * Style class of the component.\n * @group Props\n */\n @Input() styleClass: string | undefined;\n /**\n * Transition options of the panel animation.\n * @group Props\n */\n @Input() transitionOptions: string = '400ms cubic-bezier(0.86, 0, 0.07, 1)';\n /**\n * Emits when the collapsed state changes.\n * @param {boolean} value - New value.\n * @group Emits\n */\n @Output() collapsedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n /**\n * Callback to invoke before panel toggle.\n * @param {PanelBeforeToggleEvent} event - Custom toggle event\n * @group Emits\n */\n @Output() onBeforeToggle: EventEmitter<FieldsetBeforeToggleEvent> = new EventEmitter<FieldsetBeforeToggleEvent>();\n /**\n * Callback to invoke after panel toggle.\n * @param {PanelAfterToggleEvent} event - Custom toggle event\n * @group Emits\n */\n @Output() onAfterToggle: EventEmitter<FieldsetAfterToggleEvent> = new EventEmitter<FieldsetAfterToggleEvent>();\n\n @ContentChildren(PrimeTemplate) templates!: QueryList<PrimeTemplate>;\n\n get id() {\n return UniqueComponentId();\n }\n\n get buttonAriaLabel() {\n return this.legend;\n }\n\n public animating: Nullable<boolean>;\n\n headerTemplate: Nullable<TemplateRef<any>>;\n\n contentTemplate: Nullable<TemplateRef<any>>;\n\n collapseIconTemplate: Nullable<TemplateRef<any>>;\n\n expandIconTemplate: Nullable<TemplateRef<any>>;\n\n constructor(private el: ElementRef) {}\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch (item.getType()) {\n case 'header':\n this.headerTemplate = item.template;\n break;\n\n case 'expandicon':\n this.expandIconTemplate = item.template;\n break;\n\n case 'collapseicon':\n this.collapseIconTemplate = item.template;\n break;\n\n case 'content':\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n toggle(event: MouseEvent) {\n if (this.animating) {\n return false;\n }\n\n this.animating = true;\n this.onBeforeToggle.emit({ originalEvent: event, collapsed: this.collapsed });\n\n if (this.collapsed) this.expand();\n else this.collapse();\n\n this.onAfterToggle.emit({ originalEvent: event, collapsed: this.collapsed });\n event.preventDefault();\n }\n\n onKeyDown(event) {\n if (event.code === 'Enter' || event.code === 'Space') {\n this.toggle(event);\n event.preventDefault();\n }\n }\n\n expand() {\n this.collapsed = false;\n this.collapsedChange.emit(this.collapsed);\n }\n\n collapse() {\n this.collapsed = true;\n this.collapsedChange.emit(this.collapsed);\n }\n\n getBlockableElement(): HTMLElement {\n return this.el.nativeElement.children[0];\n }\n\n onToggleDone() {\n this.animating = false;\n }\n}\n\n@NgModule({\n imports: [CommonModule, RippleModule, MinusIcon, PlusIcon],\n exports: [Fieldset, SharedModule],\n declarations: [Fieldset]\n})\nexport class FieldsetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -55,7 +55,7 @@ class FileUpload {
|
|
55
55
|
*/
|
56
56
|
multiple;
|
57
57
|
/**
|
58
|
-
*
|
58
|
+
* Comma-separated list of pattern to restrict the allowed file types. Can be any combination of either the MIME types (such as "image/*") or the file extensions (such as ".jpg").
|
59
59
|
* @group Props
|
60
60
|
*/
|
61
61
|
accept;
|
@@ -679,7 +679,7 @@ class FileUpload {
|
|
679
679
|
<input #advancedfileinput type="file" (change)="onFileSelect($event)" [multiple]="multiple" [accept]="accept" [disabled]="disabled || isChooseDisabled()" [attr.title]="''" />
|
680
680
|
<span *ngIf="chooseIcon" [ngClass]="'p-button-icon p-button-icon-left'" [class]="chooseIcon"></span>
|
681
681
|
<ng-container *ngIf="!chooseIcon">
|
682
|
-
<PlusIcon *ngIf="!chooseIconTemplate" />
|
682
|
+
<PlusIcon *ngIf="!chooseIconTemplate" [styleClass]="'p-button-icon p-button-icon-left'" />
|
683
683
|
<span *ngIf="chooseIconTemplate" class="p-button-icon p-button-icon-left">
|
684
684
|
<ng-template *ngTemplateOutlet="chooseIconTemplate"></ng-template>
|
685
685
|
</span>
|
@@ -788,7 +788,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
788
788
|
<input #advancedfileinput type="file" (change)="onFileSelect($event)" [multiple]="multiple" [accept]="accept" [disabled]="disabled || isChooseDisabled()" [attr.title]="''" />
|
789
789
|
<span *ngIf="chooseIcon" [ngClass]="'p-button-icon p-button-icon-left'" [class]="chooseIcon"></span>
|
790
790
|
<ng-container *ngIf="!chooseIcon">
|
791
|
-
<PlusIcon *ngIf="!chooseIconTemplate" />
|
791
|
+
<PlusIcon *ngIf="!chooseIconTemplate" [styleClass]="'p-button-icon p-button-icon-left'" />
|
792
792
|
<span *ngIf="chooseIconTemplate" class="p-button-icon p-button-icon-left">
|
793
793
|
<ng-template *ngTemplateOutlet="chooseIconTemplate"></ng-template>
|
794
794
|
</span>
|