UNPKG

39.8 kBSource Map (JSON)View Raw
1{"version":3,"file":"primeng-dialog.umd.js","sources":["ng://primeng/dialog/dialog.ts"],"sourcesContent":["import {NgModule,Component,ElementRef,OnDestroy,Input,Output,EventEmitter,Renderer2,\n ContentChildren,QueryList,ViewChild,NgZone, ChangeDetectorRef,ViewRef,ChangeDetectionStrategy} from '@angular/core';\nimport {trigger,style,transition,animate, AnimationEvent, animation, useAnimation} from '@angular/animations';\nimport {CommonModule} from '@angular/common';\nimport {DomHandler} from 'primeng/dom';\nimport {Header,Footer,SharedModule} from 'primeng/api';\nimport {FocusTrapModule} from 'primeng/focustrap';\n\nlet idx: number = 0;\n\nconst showAnimation = animation([\n style({ transform: '{{transform}}', opacity: 0 }),\n animate('{{transition}}', style({ transform: 'none', opacity: 1 }))\n]);\n\nconst hideAnimation = animation([\n animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))\n]);\n\n@Component({\n selector: 'p-dialog',\n template: `\n <div [class]=\"maskStyleClass\" [ngClass]=\"getMaskClass()\" *ngIf=\"maskVisible\">\n <div #container [ngClass]=\"{'ui-dialog ui-widget ui-widget-content ui-corner-all ui-shadow':true, 'ui-dialog-rtl':rtl,'ui-dialog-draggable':draggable,'ui-dialog-resizable':resizable, 'ui-dialog-maximized': maximized}\"\n [ngStyle]=\"style\" [class]=\"styleClass\" *ngIf=\"visible\" pFocusTrap [pFocusTrapDisabled]=\"focusTrap === false\"\n [@animation]=\"{value: 'visible', params: {transform: transformOptions, transition: transitionOptions}}\" (@animation.start)=\"onAnimationStart($event)\" (@animation.done)=\"onAnimationEnd($event)\" role=\"dialog\" [attr.aria-labelledby]=\"id + '-label'\">\n <div #titlebar class=\"ui-dialog-titlebar ui-widget-header ui-helper-clearfix ui-corner-top\" (mousedown)=\"initDrag($event)\" *ngIf=\"showHeader\">\n <span [attr.id]=\"id + '-label'\" class=\"ui-dialog-title\" *ngIf=\"header\">{{header}}</span>\n <span [attr.id]=\"id + '-label'\" class=\"ui-dialog-title\" *ngIf=\"headerFacet && headerFacet.first\">\n <ng-content select=\"p-header\"></ng-content>\n </span>\n <div class=\"ui-dialog-titlebar-icons\">\n <a *ngIf=\"maximizable\" [ngClass]=\"{'ui-dialog-titlebar-icon ui-dialog-titlebar-maximize ui-corner-all':true}\" tabindex=\"0\" role=\"button\" (click)=\"maximize()\" (keydown.enter)=\"maximize()\">\n <span [ngClass]=\"maximized ? minimizeIcon : maximizeIcon\"></span>\n </a>\n <a *ngIf=\"closable\" [ngClass]=\"{'ui-dialog-titlebar-icon ui-dialog-titlebar-close ui-corner-all':true}\" tabindex=\"0\" role=\"button\" (click)=\"close($event)\" (keydown.enter)=\"close($event)\">\n <span [class]=\"closeIcon\"></span>\n </a>\n </div>\n </div>\n <div #content class=\"ui-dialog-content ui-widget-content\" [ngStyle]=\"contentStyle\">\n <ng-content></ng-content>\n </div>\n <div #footer class=\"ui-dialog-footer ui-widget-content\" *ngIf=\"footerFacet && footerFacet.first\">\n <ng-content select=\"p-footer\"></ng-content>\n </div>\n <div *ngIf=\"resizable\" class=\"ui-resizable-handle ui-resizable-se ui-icon ui-icon-gripsmall-diagonal-se\" style=\"z-index: 90;\" (mousedown)=\"initResize($event)\"></div>\n </div>\n </div>\n `,\n animations: [\n trigger('animation', [\n transition('void => visible', [\n useAnimation(showAnimation)\n ]),\n transition('visible => void', [\n useAnimation(hideAnimation)\n ])\n ])\n ],\n changeDetection: ChangeDetectionStrategy.Default\n})\nexport class Dialog implements OnDestroy {\n\n @Input() header: string;\n\n @Input() draggable: boolean = true;\n\n @Input() resizable: boolean = true;\n\n\n @Input() get positionLeft(): number {\n return 0;\n };\n\n set positionLeft(_positionLeft: number) {\n console.log(\"positionLeft property is deprecated.\");\n }\n\n @Input() get positionTop(): number {\n return 0;\n };\n\n set positionTop(_positionTop: number) {\n console.log(\"positionTop property is deprecated.\");\n }\n\n @Input() contentStyle: any;\n\n @Input() modal: boolean;\n\n @Input() closeOnEscape: boolean = true;\n\n @Input() dismissableMask: boolean;\n\n @Input() rtl: boolean;\n\n @Input() closable: boolean = true;\n\n @Input() get responsive(): boolean {\n return false;\n };\n\n set responsive(_responsive: boolean) {\n console.log(\"Responsive property is deprecated.\");\n }\n\n @Input() appendTo: any;\n\n @Input() styleClass: string;\n\n @Input() maskStyleClass: string;\n\n @Input() showHeader: boolean = true;\n\n @Input() get breakpoint(): number {\n return 649;\n };\n\n set breakpoint(_breakpoint: number) {\n console.log(\"Breakpoint property is not utilized and deprecated, use CSS media queries instead.\");\n }\n\n @Input() blockScroll: boolean = false;\n\n @Input() autoZIndex: boolean = true;\n\n @Input() baseZIndex: number = 0;\n\n @Input() minX: number = 0;\n\n @Input() minY: number = 0;\n\n @Input() focusOnShow: boolean = true;\n\n @Input() maximizable: boolean;\n\n @Input() keepInViewport: boolean = true;\n\n @Input() focusTrap: boolean = true;\n\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n\n @Input() closeIcon: string = 'pi pi-times';\n\n @Input() minimizeIcon: string = 'pi pi-window-minimize';\n\n @Input() maximizeIcon: string = 'pi pi-window-maximize';\n\n @ContentChildren(Header, {descendants: false}) headerFacet: QueryList<Header>;\n\n @ContentChildren(Footer, {descendants: false}) footerFacet: QueryList<Header>;\n\n @ViewChild('titlebar') headerViewChild: ElementRef;\n\n @ViewChild('content') contentViewChild: ElementRef;\n\n @ViewChild('footer') footerViewChild: ElementRef;\n\n @Output() onShow: EventEmitter<any> = new EventEmitter();\n\n @Output() onHide: EventEmitter<any> = new EventEmitter();\n\n @Output() visibleChange:EventEmitter<any> = new EventEmitter();\n\n @Output() onResizeInit: EventEmitter<any> = new EventEmitter();\n\n @Output() onResizeEnd: EventEmitter<any> = new EventEmitter();\n\n _visible: boolean;\n\n maskVisible: boolean;\n\n container: HTMLDivElement;\n\n wrapper: HTMLElement;\n\n dragging: boolean;\n\n documentDragListener: any;\n\n documentDragEndListener: any;\n\n resizing: boolean;\n\n documentResizeListener: any;\n\n documentResizeEndListener: any;\n\n documentEscapeListener: Function;\n\n maskClickListener: Function;\n\n lastPageX: number;\n\n lastPageY: number;\n\n preventVisibleChangePropagation: boolean;\n\n maximized: boolean;\n\n preMaximizeContentHeight: number;\n\n preMaximizeContainerWidth: number;\n\n preMaximizeContainerHeight: number;\n\n preMaximizePageX: number;\n\n preMaximizePageY: number;\n\n id: string = `ui-dialog-${idx++}`;\n\n _style: any = {};\n\n _position: string = \"center\";\n\n originalStyle: any;\n\n transformOptions: any = \"scale(0.7)\";\n\n constructor(public el: ElementRef, public renderer: Renderer2, public zone: NgZone, private cd: ChangeDetectorRef) { }\n\n @Input() get visible(): any {\n return this._visible;\n }\n set visible(value:any) {\n this._visible = value;\n\n if (this._visible && !this.maskVisible) {\n this.maskVisible = true;\n }\n }\n\n @Input() get style(): any {\n return this._style;\n }\n set style(value:any) {\n if (value) {\n this._style = {...value};\n this.originalStyle = value;\n }\n }\n\n @Input() get position(): string {\n return this._position;\n };\n\n set position(value: string) {\n this._position = value;\n\n switch (value) {\n case 'topleft':\n case 'bottomleft':\n case 'left':\n this.transformOptions = \"translate3d(-100%, 0px, 0px)\";\n break;\n case 'topright':\n case 'bottomright':\n case 'right':\n this.transformOptions = \"translate3d(100%, 0px, 0px)\";\n break;\n case 'bottom':\n this.transformOptions = \"translate3d(0px, 100%, 0px)\";\n break;\n case 'top':\n this.transformOptions = \"translate3d(0px, -100%, 0px)\";\n break;\n default:\n this.transformOptions = \"scale(0.7)\";\n break;\n }\n }\n\n focus() {\n let focusable = DomHandler.findSingle(this.container, 'button');\n if (focusable) {\n this.zone.runOutsideAngular(() => {\n setTimeout(() => focusable.focus(), 5);\n });\n }\n }\n\n close(event: Event) {\n this.visibleChange.emit(false);\n event.preventDefault();\n }\n\n enableModality() {\n if (this.closable && this.dismissableMask) {\n this.maskClickListener = this.renderer.listen(this.wrapper, 'click', (event: any) => {\n if (!this.container.isSameNode(event.target) && !this.container.contains(event.target)) {\n this.close(event);\n }\n });\n }\n\n if (this.modal) {\n DomHandler.addClass(document.body, 'ui-overflow-hidden');\n }\n }\n\n disableModality() {\n if (this.wrapper) {\n if (this.dismissableMask) {\n this.unbindMaskClickListener();\n }\n\n if (this.modal) {\n DomHandler.removeClass(document.body, 'ui-overflow-hidden');\n }\n\n if (!(this.cd as ViewRef).destroyed) {\n this.cd.detectChanges();\n }\n }\n }\n\n maximize() {\n this.maximized = !this.maximized;\n\n if (!this.modal && !this.blockScroll) {\n if (this.maximized)\n DomHandler.addClass(document.body, 'ui-overflow-hidden');\n else\n DomHandler.removeClass(document.body, 'ui-overflow-hidden');\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n moveOnTop() {\n if (this.autoZIndex) {\n this.container.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n this.wrapper.style.zIndex = String(this.baseZIndex + (DomHandler.zindex - 1));\n }\n }\n\n getMaskClass() {\n let maskClass = {'ui-dialog-mask': true, 'ui-widget-overlay': this.modal, 'ui-dialog-visible': this.maskVisible, 'ui-dialog-mask-scrollblocker': this.modal || this.blockScroll};\n maskClass[this.getPositionClass().toString()] = true;\n return maskClass;\n }\n\n getPositionClass() {\n const positions = ['left', 'right', 'top', 'topleft', 'topright', 'bottom', 'bottomleft', 'bottomright'];\n const pos = positions.find(item => item === this.position);\n\n return pos ? `ui-dialog-${pos}` : '';\n }\n\n initDrag(event: MouseEvent) {\n if (DomHandler.hasClass(event.target, 'ui-dialog-titlebar-icon') || DomHandler.hasClass((<HTMLElement> event.target).parentElement, 'ui-dialog-titlebar-icon')) {\n return;\n }\n\n if (this.draggable) {\n this.dragging = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n\n this.container.style.margin = '0';\n DomHandler.addClass(document.body, 'ui-unselectable-text');\n }\n }\n\n onKeydown(event: KeyboardEvent) {\n if (this.focusTrap) {\n if (event.which === 9) {\n event.preventDefault();\n\n let focusableElements = DomHandler.getFocusableElements(this.container);\n\n if (focusableElements && focusableElements.length > 0) {\n if (!document.activeElement) {\n focusableElements[0].focus();\n }\n else {\n let focusedIndex = focusableElements.indexOf(document.activeElement);\n\n if (event.shiftKey) {\n if (focusedIndex == -1 || focusedIndex === 0)\n focusableElements[focusableElements.length - 1].focus();\n else\n focusableElements[focusedIndex - 1].focus();\n }\n else {\n if (focusedIndex == -1 || focusedIndex === (focusableElements.length - 1))\n focusableElements[0].focus();\n else\n focusableElements[focusedIndex + 1].focus();\n }\n }\n }\n }\n }\n }\n\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;\n let deltaY = event.pageY - this.lastPageY;\n let offset = DomHandler.getOffset(this.container);\n let leftPos = offset.left + deltaX;\n let topPos = offset.top + deltaY;\n let viewport = DomHandler.getViewport();\n\n this.container.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.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.style.top = topPos + 'px';\n }\n }\n else {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos + 'px';\n this.lastPageY = event.pageY;\n this.container.style.top = topPos + 'px';\n }\n }\n }\n\n endDrag(event: MouseEvent) {\n if (this.draggable) {\n this.dragging = false;\n DomHandler.removeClass(document.body, 'ui-unselectable-text');\n this.cd.detectChanges();\n }\n }\n\n resetPosition() {\n this.container.style.position = '';\n this.container.style.left = '';\n this.container.style.top = '';\n this.container.style.margin = '';\n }\n\n initResize(event: MouseEvent) {\n if (this.resizable) {\n this.resizing = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n DomHandler.addClass(document.body, 'ui-unselectable-text');\n this.onResizeInit.emit(event);\n }\n }\n\n onResize(event: MouseEvent) {\n if (this.resizing) {\n let deltaX = event.pageX - this.lastPageX;\n let deltaY = event.pageY - this.lastPageY;\n let containerWidth = DomHandler.getOuterWidth(this.container);\n let containerHeight = DomHandler.getOuterHeight(this.container);\n let contentHeight = DomHandler.getOuterHeight(this.contentViewChild.nativeElement);\n let newWidth = containerWidth + deltaX;\n let newHeight = containerHeight + deltaY;\n let minWidth = this.container.style.minWidth;\n let minHeight = this.container.style.minHeight;\n let offset = DomHandler.getOffset(this.container);\n let viewport = DomHandler.getViewport();\n\n if ((!minWidth || newWidth > parseInt(minWidth)) && (offset.left + newWidth) < viewport.width) {\n this._style.width = newWidth + 'px';\n this.container.style.width = this._style.width;\n }\n\n if ((!minHeight || newHeight > parseInt(minHeight)) && (offset.top + newHeight) < viewport.height) {\n this.contentViewChild.nativeElement.style.height = contentHeight + deltaY + 'px';\n }\n\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n }\n }\n\n resizeEnd(event) {\n if (this.resizing) {\n this.resizing = false;\n DomHandler.removeClass(document.body, 'ui-unselectable-text');\n this.onResizeEnd.emit(event);\n }\n }\n\n bindGlobalListeners() {\n if (this.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n\n if (this.resizable) {\n this.bindDocumentResizeListeners();\n }\n\n if (this.closeOnEscape && this.closable) {\n this.bindDocumentEscapeListener();\n }\n }\n\n unbindGlobalListeners() {\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n this.unbindDocumentResizeListeners();\n this.unbindDocumentEscapeListener();\n }\n\n bindDocumentDragListener() {\n this.zone.runOutsideAngular(() => {\n this.documentDragListener = this.onDrag.bind(this);\n window.document.addEventListener('mousemove', this.documentDragListener);\n });\n }\n\n unbindDocumentDragListener() {\n if (this.documentDragListener) {\n window.document.removeEventListener('mousemove', this.documentDragListener);\n this.documentDragListener = null;\n }\n }\n\n bindDocumentDragEndListener() {\n this.zone.runOutsideAngular(() => {\n this.documentDragEndListener = this.endDrag.bind(this);\n window.document.addEventListener('mouseup', this.documentDragEndListener);\n });\n }\n\n unbindDocumentDragEndListener() {\n if (this.documentDragEndListener) {\n window.document.removeEventListener('mouseup', this.documentDragEndListener);\n this.documentDragEndListener = null;\n }\n }\n\n bindDocumentResizeListeners() {\n this.zone.runOutsideAngular(() => {\n this.documentResizeListener = this.onResize.bind(this);\n this.documentResizeEndListener = this.resizeEnd.bind(this);\n window.document.addEventListener('mousemove', this.documentResizeListener);\n window.document.addEventListener('mouseup', this.documentResizeEndListener);\n });\n }\n\n unbindDocumentResizeListeners() {\n if (this.documentResizeListener && this.documentResizeEndListener) {\n window.document.removeEventListener('mousemove', this.documentResizeListener);\n window.document.removeEventListener('mouseup', this.documentResizeEndListener);\n this.documentResizeListener = null;\n this.documentResizeEndListener = null;\n }\n }\n\n bindDocumentEscapeListener() {\n this.documentEscapeListener = this.renderer.listen('document', 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt(this.container.style.zIndex) === (DomHandler.zindex + this.baseZIndex)) {\n this.close(event);\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.wrapper);\n else\n DomHandler.appendChild(this.wrapper, this.appendTo);\n }\n }\n\n restoreAppend() {\n if (this.container && this.appendTo) {\n this.el.nativeElement.appendChild(this.wrapper);\n }\n }\n\n onAnimationStart(event: AnimationEvent) {\n switch(event.toState) {\n case 'visible':\n this.container = event.element;\n this.wrapper = this.container.parentElement;\n this.onShow.emit({});\n this.appendContainer();\n this.moveOnTop();\n this.bindGlobalListeners();\n\n if (this.modal) {\n this.enableModality();\n }\n\n if (!this.modal && this.blockScroll) {\n DomHandler.addClass(document.body, 'ui-overflow-hidden');\n }\n\n if (this.focusOnShow) {\n this.focus();\n }\n break;\n }\n }\n\n onAnimationEnd(event: AnimationEvent) {\n switch(event.toState) {\n case 'void':\n this.onContainerDestroy();\n this.onHide.emit({});\n break;\n }\n }\n\n onContainerDestroy() {\n this.unbindGlobalListeners();\n this.dragging = false;\n\n this.maskVisible = false;\n\n if (this.maximized) {\n DomHandler.removeClass(document.body, 'ui-overflow-hidden');\n this.maximized = false;\n }\n\n if (this.modal) {\n this.disableModality();\n }\n\n if (this.blockScroll) {\n DomHandler.removeClass(document.body, 'ui-overflow-hidden');\n }\n\n this.container = null;\n this.wrapper = null;\n\n this._style = this.originalStyle ? {...this.originalStyle} : {};\n }\n\n ngOnDestroy() {\n if (this.container) {\n this.restoreAppend();\n this.onContainerDestroy();\n }\n }\n\n}\n\n@NgModule({\n imports: [CommonModule,FocusTrapModule],\n exports: [Dialog,SharedModule],\n declarations: [Dialog]\n})\nexport class DialogModule { }\n"],"names":["animation","style","animate","EventEmitter","DomHandler","ElementRef","Renderer2","NgZone","ChangeDetectorRef","Input","ContentChildren","Header","Footer","ViewChild","Output","Component","trigger","transition","useAnimation","ChangeDetectionStrategy","NgModule","CommonModule","FocusTrapModule","SharedModule"],"mappings":"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"}
\No newline at end of file