{"version":3,"file":"ng-zorro-antd-modal.mjs","sources":["../../components/modal/modal-types.ts","../../components/modal/modal-config.ts","../../components/modal/modal-animations.ts","../../components/modal/modal-close.component.ts","../../components/modal/utils.ts","../../components/modal/modal-container.directive.ts","../../components/modal/modal-confirm-container.component.ts","../../components/modal/modal-footer.component.ts","../../components/modal/modal-title.component.ts","../../components/modal/modal-container.component.ts","../../components/modal/modal-ref.ts","../../components/modal/modal.service.ts","../../components/modal/modal-content.directive.ts","../../components/modal/modal-footer.directive.ts","../../components/modal/modal-title.directive.ts","../../components/modal/modal.component.ts","../../components/modal/modal.module.ts","../../components/modal/modal-legacy-api.ts","../../components/modal/public-api.ts","../../components/modal/ng-zorro-antd-modal.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction } from '@angular/cdk/bidi';\nimport { EventEmitter, TemplateRef, Type, ViewContainerRef } from '@angular/core';\n\nimport { NzButtonShape, NzButtonSize, NzButtonType } from 'ng-zorro-antd/button';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport type OnClickCallback = (instance: T) => (false | void | {}) | Promise;\n\nexport type ModalTypes = 'default' | 'confirm'; // Different modal styles we have supported\n\nexport type ConfirmType = 'confirm' | 'info' | 'success' | 'error' | 'warning'; // Subtypes of Confirm Modal\n\nexport interface StyleObjectLike {\n [key: string]: string;\n}\n\nconst noopFun = () => void 0;\n\nexport class ModalOptions {\n nzCentered?: boolean = false;\n nzClosable?: boolean = true;\n nzOkLoading?: boolean = false;\n nzOkDisabled?: boolean = false;\n nzCancelDisabled?: boolean = false;\n nzCancelLoading?: boolean = false;\n nzDraggable?: boolean = false;\n nzNoAnimation?: boolean = false;\n nzAutofocus?: 'ok' | 'cancel' | 'auto' | null = 'auto';\n nzMask?: boolean;\n nzMaskClosable?: boolean;\n nzKeyboard?: boolean = true;\n nzZIndex?: number = 1000;\n nzWidth?: number | string = 520;\n nzCloseIcon?: string | TemplateRef = 'close';\n nzOkType?: NzButtonType = 'primary';\n nzOkDanger?: boolean = false;\n nzModalType?: ModalTypes = 'default';\n nzOnCancel?: EventEmitter | OnClickCallback = noopFun;\n nzOnOk?: EventEmitter | OnClickCallback = noopFun;\n nzData?: D;\n nzMaskStyle?: StyleObjectLike;\n nzBodyStyle?: StyleObjectLike;\n nzWrapClassName?: string;\n nzClassName?: string;\n nzStyle?: object;\n nzTitle?: string | TemplateRef<{}>;\n nzFooter?: string | TemplateRef<{}> | Array> | null; // Default Modal ONLY\n nzCancelText?: string | null;\n nzOkText?: string | null;\n nzContent?: string | TemplateRef | Type;\n nzCloseOnNavigation?: boolean;\n nzViewContainerRef?: ViewContainerRef;\n // Template use only\n nzAfterOpen?: EventEmitter;\n nzAfterClose?: EventEmitter;\n\n // Confirm\n nzIconType?: string = 'question-circle';\n nzDirection?: Direction;\n}\n\nexport interface ModalButtonOptions {\n label: string;\n type?: NzButtonType;\n danger?: boolean;\n shape?: NzButtonShape;\n ghost?: boolean;\n size?: NzButtonSize;\n autoLoading?: boolean; // Default: true, indicate whether show loading automatically while onClick returned a Promise\n\n // [NOTE] \"componentInstance\" will refer to the component's instance when using Component\n show?: boolean | ((this: ModalButtonOptions, contentComponentInstance?: T) => boolean);\n loading?: boolean | ((this: ModalButtonOptions, contentComponentInstance?: T) => boolean); // This prop CAN'T use with autoLoading=true\n disabled?: boolean | ((this: ModalButtonOptions, contentComponentInstance?: T) => boolean);\n onClick?(this: ModalButtonOptions, contentComponentInstance?: T): NzSafeAny | Promise;\n [key: string]: NzSafeAny;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { InjectionToken } from '@angular/core';\n\nimport { NzConfigKey } from 'ng-zorro-antd/core/config';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nexport const ZOOM_CLASS_NAME_MAP = {\n enter: 'ant-zoom-enter',\n enterActive: 'ant-zoom-enter-active',\n leave: 'ant-zoom-leave',\n leaveActive: 'ant-zoom-leave-active'\n};\n\nexport const FADE_CLASS_NAME_MAP = {\n enter: 'ant-fade-enter',\n enterActive: 'ant-fade-enter-active',\n leave: 'ant-fade-leave',\n leaveActive: 'ant-fade-leave-active'\n};\n\nexport const MODAL_MASK_CLASS_NAME = 'ant-modal-mask';\nexport const NZ_CONFIG_MODULE_NAME: NzConfigKey = 'modal';\nexport const NZ_MODAL_DATA = new InjectionToken('NZ_MODAL_DATA');\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { animate, AnimationTriggerMetadata, state, style, transition, trigger } from '@angular/animations';\n\nexport const nzModalAnimations: {\n readonly modalContainer: AnimationTriggerMetadata;\n} = {\n modalContainer: trigger('modalContainer', [\n state('void, exit', style({})),\n state('enter', style({})),\n transition('* => enter', animate('.24s', style({}))),\n transition('* => void, * => exit', animate('.2s', style({})))\n ])\n};\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { ModalOptions } from './modal-types';\n\n@Component({\n selector: 'button[nz-modal-close]',\n exportAs: 'NzModalCloseBuiltin',\n template: `\n \n \n \n \n \n `,\n host: {\n class: 'ant-modal-close',\n 'aria-label': 'Close'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NzIconModule, NzOutletModule]\n})\nexport class NzModalCloseComponent {\n constructor(public config: ModalOptions) {}\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ModalOptions } from './modal-types';\n\nexport function applyConfigDefaults(config: ModalOptions, defaultOptions: ModalOptions): ModalOptions {\n return { ...defaultOptions, ...config };\n}\n\nexport function getValueWithConfig(\n userValue: T | undefined,\n configValue: T | undefined,\n defaultValue: T\n): T | undefined {\n return typeof userValue === 'undefined'\n ? typeof configValue === 'undefined'\n ? defaultValue\n : configValue\n : userValue;\n}\n\nexport function getConfigFromComponent(component: T): ModalOptions {\n const {\n nzCentered,\n nzMask,\n nzMaskClosable,\n nzClosable,\n nzOkLoading,\n nzOkDisabled,\n nzCancelDisabled,\n nzCancelLoading,\n nzKeyboard,\n nzNoAnimation,\n nzDraggable,\n nzContent,\n nzFooter,\n nzZIndex,\n nzWidth,\n nzWrapClassName,\n nzClassName,\n nzStyle,\n nzTitle,\n nzCloseIcon,\n nzMaskStyle,\n nzBodyStyle,\n nzOkText,\n nzCancelText,\n nzOkType,\n nzOkDanger,\n nzIconType,\n nzModalType,\n nzOnOk,\n nzOnCancel,\n nzAfterOpen,\n nzAfterClose,\n nzCloseOnNavigation,\n nzAutofocus\n } = component;\n return {\n nzCentered,\n nzMask,\n nzMaskClosable,\n nzDraggable,\n nzClosable,\n nzOkLoading,\n nzOkDisabled,\n nzCancelDisabled,\n nzCancelLoading,\n nzKeyboard,\n nzNoAnimation,\n nzContent,\n nzFooter,\n nzZIndex,\n nzWidth,\n nzWrapClassName,\n nzClassName,\n nzStyle,\n nzTitle,\n nzCloseIcon,\n nzMaskStyle,\n nzBodyStyle,\n nzOkText,\n nzCancelText,\n nzOkType,\n nzOkDanger,\n nzIconType,\n nzModalType,\n nzOnOk,\n nzOnCancel,\n nzAfterOpen,\n nzAfterClose,\n nzCloseOnNavigation,\n nzAutofocus\n };\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { AnimationEvent } from '@angular/animations';\nimport { FocusTrap, FocusTrapFactory } from '@angular/cdk/a11y';\nimport { Direction } from '@angular/cdk/bidi';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { BasePortalOutlet, CdkPortalOutlet, ComponentPortal, TemplatePortal } from '@angular/cdk/portal';\nimport { DOCUMENT } from '@angular/common';\nimport {\n ANIMATION_MODULE_TYPE,\n ChangeDetectorRef,\n ComponentRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n EventEmitter,\n NgZone,\n OnDestroy,\n Renderer2,\n inject\n} from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzConfigService } from 'ng-zorro-antd/core/config';\nimport { reqAnimFrame } from 'ng-zorro-antd/core/polyfill';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { fromEventOutsideAngular, getElementOffset, isNotNil } from 'ng-zorro-antd/core/util';\n\nimport { FADE_CLASS_NAME_MAP, MODAL_MASK_CLASS_NAME, NZ_CONFIG_MODULE_NAME, ZOOM_CLASS_NAME_MAP } from './modal-config';\nimport { NzModalRef } from './modal-ref';\nimport { ModalOptions } from './modal-types';\nimport { getValueWithConfig } from './utils';\n\nexport function throwNzModalContentAlreadyAttachedError(): never {\n throw Error('Attempting to attach modal content after content is already attached');\n}\n\n@Directive()\nexport class BaseModalContainerComponent extends BasePortalOutlet implements OnDestroy {\n portalOutlet!: CdkPortalOutlet;\n modalElementRef!: ElementRef;\n\n animationStateChanged = new EventEmitter();\n containerClick = new EventEmitter();\n cancelTriggered = new EventEmitter();\n okTriggered = new EventEmitter();\n\n state: 'void' | 'enter' | 'exit' = 'enter';\n document: Document = inject(DOCUMENT);\n modalRef!: NzModalRef;\n isStringContent: boolean = false;\n dir: Direction = 'ltr';\n private elementFocusedBeforeModalWasOpened: HTMLElement | null = null;\n private focusTrap!: FocusTrap;\n private mouseDown = false;\n private oldMaskStyle: Record | null = null;\n cdr: ChangeDetectorRef = inject(ChangeDetectorRef);\n config: ModalOptions = inject(ModalOptions);\n protected destroy$ = new Subject();\n protected ngZone: NgZone = inject(NgZone);\n protected host: ElementRef = inject(ElementRef);\n protected focusTrapFactory: FocusTrapFactory = inject(FocusTrapFactory);\n protected render: Renderer2 = inject(Renderer2);\n protected overlayRef: OverlayRef = inject(OverlayRef);\n protected nzConfigService: NzConfigService = inject(NzConfigService);\n protected animationType = inject(ANIMATION_MODULE_TYPE, { optional: true });\n\n get showMask(): boolean {\n const defaultConfig: NzSafeAny = this.nzConfigService.getConfigForComponent(NZ_CONFIG_MODULE_NAME) || {};\n\n return !!getValueWithConfig(this.config.nzMask, defaultConfig.nzMask, true);\n }\n\n get maskClosable(): boolean {\n const defaultConfig: NzSafeAny = this.nzConfigService.getConfigForComponent(NZ_CONFIG_MODULE_NAME) || {};\n\n return !!getValueWithConfig(this.config.nzMaskClosable, defaultConfig.nzMaskClosable, true);\n }\n\n constructor() {\n super();\n this.dir = this.overlayRef.getDirection();\n this.isStringContent = typeof this.config.nzContent === 'string';\n this.nzConfigService\n .getConfigChangeEventForComponent(NZ_CONFIG_MODULE_NAME)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.updateMaskClassname();\n });\n }\n\n onContainerClick(e: MouseEvent): void {\n if (e.target === e.currentTarget && !this.mouseDown && this.showMask && this.maskClosable) {\n this.containerClick.emit();\n }\n }\n\n onCloseClick(): void {\n this.cancelTriggered.emit();\n }\n\n onOkClick(): void {\n this.okTriggered.emit();\n }\n\n attachComponentPortal(portal: ComponentPortal): ComponentRef {\n if (this.portalOutlet.hasAttached()) {\n throwNzModalContentAlreadyAttachedError();\n }\n this.savePreviouslyFocusedElement();\n this.setZIndexForBackdrop();\n return this.portalOutlet.attachComponentPortal(portal);\n }\n\n attachTemplatePortal(portal: TemplatePortal): EmbeddedViewRef {\n if (this.portalOutlet.hasAttached()) {\n throwNzModalContentAlreadyAttachedError();\n }\n this.savePreviouslyFocusedElement();\n this.setZIndexForBackdrop();\n return this.portalOutlet.attachTemplatePortal(portal);\n }\n\n attachStringContent(): void {\n this.savePreviouslyFocusedElement();\n this.setZIndexForBackdrop();\n }\n\n getNativeElement(): HTMLElement {\n return this.host.nativeElement;\n }\n\n private animationDisabled(): boolean {\n return this.config.nzNoAnimation || this.animationType === 'NoopAnimations';\n }\n\n private setModalTransformOrigin(): void {\n const modalElement = this.modalElementRef.nativeElement;\n if (this.elementFocusedBeforeModalWasOpened as HTMLElement) {\n const previouslyDOMRect = this.elementFocusedBeforeModalWasOpened!.getBoundingClientRect();\n const lastPosition = getElementOffset(this.elementFocusedBeforeModalWasOpened!);\n const x = lastPosition.left + previouslyDOMRect.width / 2;\n const y = lastPosition.top + previouslyDOMRect.height / 2;\n const transformOrigin = `${x - modalElement.offsetLeft}px ${y - modalElement.offsetTop}px 0px`;\n this.render.setStyle(modalElement, 'transform-origin', transformOrigin);\n }\n }\n\n private savePreviouslyFocusedElement(): void {\n if (!this.focusTrap) {\n this.focusTrap = this.focusTrapFactory.create(this.host.nativeElement);\n }\n\n if (this.document) {\n this.elementFocusedBeforeModalWasOpened = this.document.activeElement as HTMLElement;\n if (this.host.nativeElement.focus) {\n this.ngZone.runOutsideAngular(() => reqAnimFrame(() => this.host.nativeElement.focus()));\n }\n }\n }\n\n private trapFocus(): void {\n const element = this.host.nativeElement;\n\n if (this.config.nzAutofocus) {\n this.focusTrap.focusInitialElementWhenReady();\n } else {\n const activeElement = this.document.activeElement;\n if (activeElement !== element && !element.contains(activeElement)) {\n element.focus();\n }\n }\n }\n\n private restoreFocus(): void {\n const toFocus = this.elementFocusedBeforeModalWasOpened as HTMLElement;\n\n // We need the extra check, because IE can set the `activeElement` to null in some cases.\n if (toFocus && typeof toFocus.focus === 'function') {\n const activeElement = this.document.activeElement as Element;\n const element = this.host.nativeElement;\n\n if (\n !activeElement ||\n activeElement === this.document.body ||\n activeElement === element ||\n element.contains(activeElement)\n ) {\n toFocus.focus();\n }\n }\n\n if (this.focusTrap) {\n this.focusTrap.destroy();\n }\n }\n\n private setEnterAnimationClass(): void {\n if (this.animationDisabled()) {\n return;\n }\n // Make sure to set the `TransformOrigin` style before set the modelElement's class names\n this.setModalTransformOrigin();\n const modalElement = this.modalElementRef.nativeElement;\n const backdropElement = this.overlayRef.backdropElement;\n modalElement.classList.add(ZOOM_CLASS_NAME_MAP.enter);\n modalElement.classList.add(ZOOM_CLASS_NAME_MAP.enterActive);\n if (backdropElement) {\n backdropElement.classList.add(FADE_CLASS_NAME_MAP.enter);\n backdropElement.classList.add(FADE_CLASS_NAME_MAP.enterActive);\n }\n }\n\n private setExitAnimationClass(): void {\n const modalElement = this.modalElementRef.nativeElement;\n\n modalElement.classList.add(ZOOM_CLASS_NAME_MAP.leave);\n modalElement.classList.add(ZOOM_CLASS_NAME_MAP.leaveActive);\n\n this.setMaskExitAnimationClass();\n }\n\n private setMaskExitAnimationClass(force: boolean = false): void {\n const backdropElement = this.overlayRef.backdropElement;\n if (backdropElement) {\n if (this.animationDisabled() || force) {\n // https://github.com/angular/components/issues/18645\n backdropElement.classList.remove(MODAL_MASK_CLASS_NAME);\n return;\n }\n backdropElement.classList.add(FADE_CLASS_NAME_MAP.leave);\n backdropElement.classList.add(FADE_CLASS_NAME_MAP.leaveActive);\n }\n }\n\n private cleanAnimationClass(): void {\n if (this.animationDisabled()) {\n return;\n }\n const backdropElement = this.overlayRef.backdropElement;\n const modalElement = this.modalElementRef.nativeElement;\n if (backdropElement) {\n backdropElement.classList.remove(FADE_CLASS_NAME_MAP.enter);\n backdropElement.classList.remove(FADE_CLASS_NAME_MAP.enterActive);\n }\n modalElement.classList.remove(ZOOM_CLASS_NAME_MAP.enter);\n modalElement.classList.remove(ZOOM_CLASS_NAME_MAP.enterActive);\n modalElement.classList.remove(ZOOM_CLASS_NAME_MAP.leave);\n modalElement.classList.remove(ZOOM_CLASS_NAME_MAP.leaveActive);\n }\n\n private setZIndexForBackdrop(): void {\n const backdropElement = this.overlayRef.backdropElement;\n if (backdropElement) {\n if (isNotNil(this.config.nzZIndex)) {\n this.render.setStyle(backdropElement, 'z-index', this.config.nzZIndex);\n }\n }\n }\n\n bindBackdropStyle(): void {\n const backdropElement = this.overlayRef.backdropElement;\n if (backdropElement) {\n if (this.oldMaskStyle) {\n const styles = this.oldMaskStyle as Record;\n Object.keys(styles).forEach(key => {\n this.render.removeStyle(backdropElement, key);\n });\n this.oldMaskStyle = null;\n }\n\n this.setZIndexForBackdrop();\n\n if (typeof this.config.nzMaskStyle === 'object' && Object.keys(this.config.nzMaskStyle).length) {\n const styles: Record = { ...this.config.nzMaskStyle };\n Object.keys(styles).forEach(key => {\n this.render.setStyle(backdropElement, key, styles[key]);\n });\n this.oldMaskStyle = styles;\n }\n }\n }\n\n updateMaskClassname(): void {\n const backdropElement = this.overlayRef.backdropElement;\n if (backdropElement) {\n if (this.showMask) {\n backdropElement.classList.add(MODAL_MASK_CLASS_NAME);\n } else {\n backdropElement.classList.remove(MODAL_MASK_CLASS_NAME);\n }\n }\n }\n\n onAnimationDone(event: AnimationEvent): void {\n if (event.toState === 'enter') {\n this.trapFocus();\n } else if (event.toState === 'exit') {\n this.restoreFocus();\n }\n this.cleanAnimationClass();\n this.animationStateChanged.emit(event);\n }\n\n onAnimationStart(event: AnimationEvent): void {\n if (event.toState === 'enter') {\n this.setEnterAnimationClass();\n this.bindBackdropStyle();\n } else if (event.toState === 'exit') {\n this.setExitAnimationClass();\n }\n this.animationStateChanged.emit(event);\n }\n\n startExitAnimation(): void {\n this.state = 'exit';\n this.cdr.markForCheck();\n }\n\n ngOnDestroy(): void {\n this.setMaskExitAnimationClass(true);\n this.destroy$.next(true);\n this.destroy$.complete();\n }\n\n protected setupMouseListeners(modalContainer: ElementRef): void {\n fromEventOutsideAngular(this.host.nativeElement, 'mouseup')\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n if (this.mouseDown) {\n setTimeout(() => {\n this.mouseDown = false;\n });\n }\n });\n\n fromEventOutsideAngular(modalContainer.nativeElement, 'mousedown')\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.mouseDown = true;\n });\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { CdkScrollable } from '@angular/cdk/overlay';\nimport { CdkPortalOutlet, PortalModule } from '@angular/cdk/portal';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n OnInit,\n Output,\n ViewChild,\n inject\n} from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzI18nService, NzModalI18nInterface } from 'ng-zorro-antd/i18n';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\n\nimport { nzModalAnimations } from './modal-animations';\nimport { NzModalCloseComponent } from './modal-close.component';\nimport { BaseModalContainerComponent } from './modal-container.directive';\n\n@Component({\n selector: 'nz-modal-confirm-container',\n exportAs: 'nzModalConfirmContainer',\n template: `\n \n
\n @if (config.nzClosable) {\n \n }\n\n
\n
\n
\n \n \n \n \n \n \n
\n \n @if (isStringContent) {\n
\n }\n
\n
\n
\n @if (config.nzCancelText !== null) {\n \n {{ config.nzCancelText || locale.cancelText }}\n \n }\n @if (config.nzOkText !== null) {\n \n {{ config.nzOkText || locale.okText }}\n \n }\n
\n
\n
\n
\n \n `,\n hostDirectives: [CdkScrollable],\n animations: [nzModalAnimations.modalContainer],\n // Using OnPush for modal caused footer can not to detect changes. we can fix it when 8.x.\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n tabindex: '-1',\n role: 'dialog',\n '[class]': 'config.nzWrapClassName ? \"ant-modal-wrap \" + config.nzWrapClassName : \"ant-modal-wrap\"',\n '[class.ant-modal-wrap-rtl]': `dir === 'rtl'`,\n '[class.ant-modal-centered]': 'config.nzCentered',\n '[style.zIndex]': 'config.nzZIndex',\n '[@.disabled]': 'config.nzNoAnimation',\n '[@modalContainer]': 'state',\n '(@modalContainer.start)': 'onAnimationStart($event)',\n '(@modalContainer.done)': 'onAnimationDone($event)',\n '(click)': 'onContainerClick($event)'\n },\n imports: [NzPipesModule, NzIconModule, NzModalCloseComponent, NzOutletModule, PortalModule, NzButtonModule]\n})\nexport class NzModalConfirmContainerComponent extends BaseModalContainerComponent implements OnInit {\n @ViewChild(CdkPortalOutlet, { static: true }) set _portalOutlet(portalOutlet: CdkPortalOutlet) {\n this.portalOutlet = portalOutlet;\n }\n @ViewChild('modalElement', { static: true }) set _modalElementRef(elementRef: ElementRef) {\n this.modalElementRef = elementRef;\n }\n @Output() override readonly cancelTriggered = new EventEmitter();\n @Output() override readonly okTriggered = new EventEmitter();\n locale!: NzModalI18nInterface;\n private i18n = inject(NzI18nService);\n\n constructor() {\n super();\n\n this.i18n.localeChange.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.locale = this.i18n.getLocaleData('Modal');\n });\n }\n\n ngOnInit(): void {\n this.setupMouseListeners(this.modalElementRef);\n }\n\n onCancel(): void {\n this.cancelTriggered.emit();\n }\n\n onOk(): void {\n this.okTriggered.emit();\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { isPromise } from 'ng-zorro-antd/core/util';\nimport { NzI18nService, NzModalI18nInterface } from 'ng-zorro-antd/i18n';\n\nimport { NzModalRef } from './modal-ref';\nimport { ModalButtonOptions, ModalOptions } from './modal-types';\n\n@Component({\n selector: 'div[nz-modal-footer]',\n exportAs: 'NzModalFooterBuiltin',\n template: `\n @if (config.nzFooter) {\n \n @if (buttonsFooter) {\n @for (button of buttons; track button) {\n \n {{ button.label }}\n \n }\n } @else {\n
\n }\n \n } @else {\n @if (config.nzCancelText !== null) {\n \n {{ config.nzCancelText || locale.cancelText }}\n \n }\n @if (config.nzOkText !== null) {\n \n {{ config.nzOkText || locale.okText }}\n \n }\n }\n `,\n host: {\n class: 'ant-modal-footer'\n },\n changeDetection: ChangeDetectionStrategy.Default,\n imports: [NzOutletModule, NzButtonModule]\n})\nexport class NzModalFooterComponent implements OnDestroy {\n buttonsFooter = false;\n buttons: ModalButtonOptions[] = [];\n locale!: NzModalI18nInterface;\n @Output() readonly cancelTriggered = new EventEmitter();\n @Output() readonly okTriggered = new EventEmitter();\n @Input() modalRef!: NzModalRef;\n private destroy$ = new Subject();\n\n constructor(\n private i18n: NzI18nService,\n public config: ModalOptions\n ) {\n if (Array.isArray(config.nzFooter)) {\n this.buttonsFooter = true;\n this.buttons = (config.nzFooter as ModalButtonOptions[]).map(mergeDefaultOption);\n }\n this.i18n.localeChange.pipe(takeUntil(this.destroy$)).subscribe(() => {\n this.locale = this.i18n.getLocaleData('Modal');\n });\n }\n\n onCancel(): void {\n this.cancelTriggered.emit();\n }\n\n onOk(): void {\n this.okTriggered.emit();\n }\n\n /**\n * Returns the value of the specified key.\n * If it is a function, run and return the return value of the function.\n */\n getButtonCallableProp(options: ModalButtonOptions, prop: keyof ModalButtonOptions): boolean {\n const value = options[prop];\n const componentInstance = this.modalRef.getContentComponent();\n return typeof value === 'function' ? value.apply(options, componentInstance && [componentInstance]) : value;\n }\n\n /**\n * Run function based on the type and set its `loading` prop if needed.\n */\n onButtonClick(options: ModalButtonOptions): void {\n const loading = this.getButtonCallableProp(options, 'loading');\n if (!loading) {\n const result = this.getButtonCallableProp(options, 'onClick');\n if (options.autoLoading && isPromise(result)) {\n options.loading = true;\n result\n .then(() => (options.loading = false))\n .catch(e => {\n options.loading = false;\n throw e;\n });\n }\n }\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n\nfunction mergeDefaultOption(options: ModalButtonOptions): ModalButtonOptions {\n return {\n type: null,\n size: 'default',\n autoLoading: true,\n show: true,\n loading: false,\n disabled: false,\n ...options\n };\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\n\nimport { ModalOptions } from './modal-types';\n\n@Component({\n selector: 'div[nz-modal-title]',\n exportAs: 'NzModalTitleBuiltin',\n template: `\n
\n \n
\n
\n
\n `,\n host: {\n class: 'ant-modal-header'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NzOutletModule]\n})\nexport class NzModalTitleComponent {\n constructor(public config: ModalOptions) {}\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { CdkDrag, CdkDragHandle } from '@angular/cdk/drag-drop';\nimport { CdkScrollable } from '@angular/cdk/overlay';\nimport { CdkPortalOutlet, PortalModule } from '@angular/cdk/portal';\nimport { ChangeDetectionStrategy, Component, ElementRef, OnInit, ViewChild } from '@angular/core';\n\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\n\nimport { nzModalAnimations } from './modal-animations';\nimport { NzModalCloseComponent } from './modal-close.component';\nimport { BaseModalContainerComponent } from './modal-container.directive';\nimport { NzModalFooterComponent } from './modal-footer.component';\nimport { NzModalTitleComponent } from './modal-title.component';\n\n@Component({\n selector: 'nz-modal-container',\n exportAs: 'nzModalContainer',\n hostDirectives: [CdkScrollable],\n template: `\n \n
\n @if (config.nzClosable) {\n \n }\n @if (config.nzTitle) {\n
\n }\n\n
\n \n @if (isStringContent) {\n
\n }\n
\n @if (config.nzFooter !== null) {\n
\n }\n \n \n `,\n animations: [nzModalAnimations.modalContainer],\n // Using OnPush for modal caused footer can not to detect changes. we can fix it when 8.x.\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n tabindex: '-1',\n role: 'dialog',\n '[class]': 'config.nzWrapClassName ? \"ant-modal-wrap \" + config.nzWrapClassName : \"ant-modal-wrap\"',\n '[class.ant-modal-wrap-rtl]': `dir === 'rtl'`,\n '[class.ant-modal-centered]': 'config.nzCentered',\n '[style.zIndex]': 'config.nzZIndex',\n '[@.disabled]': 'config.nzNoAnimation',\n '[@modalContainer]': 'state',\n '(@modalContainer.start)': 'onAnimationStart($event)',\n '(@modalContainer.done)': 'onAnimationDone($event)',\n '(click)': 'onContainerClick($event)'\n },\n imports: [\n NzModalCloseComponent,\n NzModalTitleComponent,\n PortalModule,\n NzModalFooterComponent,\n NzPipesModule,\n CdkDrag,\n CdkDragHandle\n ]\n})\nexport class NzModalContainerComponent extends BaseModalContainerComponent implements OnInit {\n @ViewChild(CdkPortalOutlet, { static: true }) set _portalOutlet(portalOutlet: CdkPortalOutlet) {\n this.portalOutlet = portalOutlet;\n }\n @ViewChild('modalElement', { static: true }) set _modalElementRef(elementRef: ElementRef) {\n this.modalElementRef = elementRef;\n }\n\n ngOnInit(): void {\n this.setupMouseListeners(this.modalElementRef);\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { ESCAPE, hasModifierKey } from '@angular/cdk/keycodes';\nimport { OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentRef, EventEmitter } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { filter, take, takeUntil } from 'rxjs/operators';\n\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { isPromise } from 'ng-zorro-antd/core/util';\n\nimport { BaseModalContainerComponent } from './modal-container.directive';\nimport { NzModalLegacyAPI } from './modal-legacy-api';\nimport { ModalOptions } from './modal-types';\n\nexport const enum NzModalState {\n OPEN,\n CLOSING,\n CLOSED\n}\n\nexport const enum NzTriggerAction {\n CANCEL = 'cancel',\n OK = 'ok'\n}\n\nexport class NzModalRef implements NzModalLegacyAPI {\n componentInstance: T | null = null;\n componentRef: ComponentRef | null = null;\n result?: R;\n state: NzModalState = NzModalState.OPEN;\n afterClose = new Subject();\n afterOpen = new Subject();\n\n private closeTimeout?: ReturnType;\n\n private destroy$ = new Subject();\n\n constructor(\n private overlayRef: OverlayRef,\n private config: ModalOptions,\n public containerInstance: BaseModalContainerComponent\n ) {\n containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'enter'),\n take(1)\n )\n .subscribe(() => {\n this.afterOpen.next();\n this.afterOpen.complete();\n if (config.nzAfterOpen instanceof EventEmitter) {\n config.nzAfterOpen.emit();\n }\n });\n\n containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'done' && event.toState === 'exit'),\n take(1)\n )\n .subscribe(() => {\n clearTimeout(this.closeTimeout);\n this._finishDialogClose();\n });\n\n containerInstance.containerClick.pipe(takeUntil(this.destroy$)).subscribe(() => {\n const cancelable = !this.config.nzCancelLoading && !this.config.nzOkLoading;\n if (cancelable) {\n this.trigger(NzTriggerAction.CANCEL);\n }\n });\n\n overlayRef\n .keydownEvents()\n .pipe(\n filter(\n event =>\n (this.config.nzKeyboard as boolean) &&\n !this.config.nzCancelLoading &&\n !this.config.nzOkLoading &&\n event.keyCode === ESCAPE &&\n !hasModifierKey(event)\n )\n )\n .subscribe(event => {\n event.preventDefault();\n this.trigger(NzTriggerAction.CANCEL);\n });\n\n containerInstance.cancelTriggered\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => this.trigger(NzTriggerAction.CANCEL));\n\n containerInstance.okTriggered.pipe(takeUntil(this.destroy$)).subscribe(() => this.trigger(NzTriggerAction.OK));\n\n overlayRef.detachments().subscribe(() => {\n this.afterClose.next(this.result);\n this.afterClose.complete();\n if (config.nzAfterClose instanceof EventEmitter) {\n config.nzAfterClose.emit(this.result);\n }\n this.componentInstance = null;\n this.componentRef = null;\n this.overlayRef.dispose();\n });\n }\n\n getContentComponent(): T {\n return this.componentInstance as T;\n }\n\n getContentComponentRef(): Readonly | null> {\n return this.componentRef as Readonly | null>;\n }\n\n getElement(): HTMLElement {\n return this.containerInstance.getNativeElement();\n }\n\n destroy(result?: R): void {\n this.close(result);\n }\n\n triggerOk(): Promise {\n return this.trigger(NzTriggerAction.OK);\n }\n\n triggerCancel(): Promise {\n return this.trigger(NzTriggerAction.CANCEL);\n }\n\n close(result?: R): void {\n if (this.state !== NzModalState.OPEN) {\n return;\n }\n this.result = result;\n this.containerInstance.animationStateChanged\n .pipe(\n filter(event => event.phaseName === 'start'),\n take(1)\n )\n .subscribe(event => {\n this.overlayRef.detachBackdrop();\n this.closeTimeout = setTimeout(() => {\n this._finishDialogClose();\n }, event.totalTime + 100);\n });\n\n this.containerInstance.startExitAnimation();\n this.state = NzModalState.CLOSING;\n }\n\n updateConfig(config: ModalOptions): void {\n Object.assign(this.config, config);\n this.containerInstance.bindBackdropStyle();\n this.containerInstance.cdr.markForCheck();\n }\n\n getState(): NzModalState {\n return this.state;\n }\n\n getConfig(): ModalOptions {\n return this.config;\n }\n\n getBackdropElement(): HTMLElement | null {\n return this.overlayRef.backdropElement;\n }\n\n private async trigger(action: NzTriggerAction): Promise {\n if (this.state === NzModalState.CLOSING) {\n return;\n }\n const trigger = { ok: this.config.nzOnOk, cancel: this.config.nzOnCancel }[action];\n const loadingKey = { ok: 'nzOkLoading', cancel: 'nzCancelLoading' }[action] as 'nzOkLoading' | 'nzCancelLoading';\n const loading = this.config[loadingKey];\n if (loading) {\n return;\n }\n if (trigger instanceof EventEmitter) {\n trigger.emit(this.getContentComponent());\n } else if (typeof trigger === 'function') {\n const result = trigger(this.getContentComponent());\n if (isPromise(result)) {\n this.config[loadingKey] = true;\n let doClose: boolean | void | {} = false;\n try {\n doClose = (await result) as typeof result;\n } finally {\n this.config[loadingKey] = false;\n this.closeWhitResult(doClose);\n }\n } else {\n this.closeWhitResult(result);\n }\n }\n }\n\n private closeWhitResult(result: NzSafeAny): void {\n if (result !== false) {\n this.close(result);\n }\n }\n\n _finishDialogClose(): void {\n this.state = NzModalState.CLOSED;\n this.overlayRef.dispose();\n this.destroy$.next();\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directionality } from '@angular/cdk/bidi';\nimport { ComponentType, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { ComponentPortal, TemplatePortal } from '@angular/cdk/portal';\nimport { Injectable, Injector, OnDestroy, TemplateRef, inject } from '@angular/core';\nimport { Observable, Subject, defer } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { NzConfigService } from 'ng-zorro-antd/core/config';\nimport { warn } from 'ng-zorro-antd/core/logger';\nimport { overlayZIndexSetter } from 'ng-zorro-antd/core/overlay';\nimport { IndexableObject, NzSafeAny } from 'ng-zorro-antd/core/types';\nimport { isNotNil } from 'ng-zorro-antd/core/util';\n\nimport { MODAL_MASK_CLASS_NAME, NZ_CONFIG_MODULE_NAME, NZ_MODAL_DATA } from './modal-config';\nimport { NzModalConfirmContainerComponent } from './modal-confirm-container.component';\nimport { NzModalContainerComponent } from './modal-container.component';\nimport { BaseModalContainerComponent } from './modal-container.directive';\nimport { NzModalRef } from './modal-ref';\nimport { ConfirmType, ModalOptions } from './modal-types';\nimport { applyConfigDefaults, getValueWithConfig } from './utils';\n\ntype ContentType = ComponentType | TemplateRef | string;\n\n@Injectable()\nexport class NzModalService implements OnDestroy {\n private openModalsAtThisLevel: NzModalRef[] = [];\n private readonly afterAllClosedAtThisLevel = new Subject();\n\n get openModals(): NzModalRef[] {\n return this.parentModal ? this.parentModal.openModals : this.openModalsAtThisLevel;\n }\n\n get _afterAllClosed(): Subject {\n const parent = this.parentModal;\n return parent ? parent._afterAllClosed : this.afterAllClosedAtThisLevel;\n }\n\n readonly afterAllClose: Observable = defer(() =>\n this.openModals.length ? this._afterAllClosed : this._afterAllClosed.pipe(startWith(undefined))\n ) as Observable;\n\n private parentModal = inject(NzModalService, { skipSelf: true, optional: true });\n\n constructor(\n private overlay: Overlay,\n private injector: Injector,\n private nzConfigService: NzConfigService,\n private directionality: Directionality\n ) {}\n\n create(config: ModalOptions): NzModalRef {\n return this.open(config.nzContent as ComponentType, config);\n }\n\n closeAll(): void {\n this.closeModals(this.openModals);\n }\n\n confirm(options: ModalOptions = {}, confirmType: ConfirmType = 'confirm'): NzModalRef {\n if ('nzFooter' in options) {\n warn(`The Confirm-Modal doesn't support \"nzFooter\", this property will be ignored.`);\n }\n if (!('nzWidth' in options)) {\n options.nzWidth = 416;\n }\n if (!('nzMaskClosable' in options)) {\n options.nzMaskClosable = false;\n }\n\n options.nzModalType = 'confirm';\n options.nzClassName = `ant-modal-confirm ant-modal-confirm-${confirmType} ${options.nzClassName || ''}`;\n return this.create(options);\n }\n\n info(options: ModalOptions = {}): NzModalRef {\n return this.confirmFactory(options, 'info');\n }\n\n success(options: ModalOptions = {}): NzModalRef {\n return this.confirmFactory(options, 'success');\n }\n\n error(options: ModalOptions = {}): NzModalRef {\n return this.confirmFactory(options, 'error');\n }\n\n warning(options: ModalOptions = {}): NzModalRef {\n return this.confirmFactory(options, 'warning');\n }\n\n private open(componentOrTemplateRef: ContentType, config?: ModalOptions): NzModalRef {\n const configMerged = applyConfigDefaults(config || {}, new ModalOptions());\n const overlayRef = this.createOverlay(configMerged);\n const modalContainer = this.attachModalContainer(overlayRef, configMerged);\n const modalRef = this.attachModalContent(componentOrTemplateRef, modalContainer, overlayRef, configMerged);\n modalContainer.modalRef = modalRef;\n\n overlayZIndexSetter(overlayRef, config?.nzZIndex);\n\n this.openModals.push(modalRef);\n modalRef.afterClose.subscribe(() => this.removeOpenModal(modalRef));\n\n return modalRef;\n }\n\n private removeOpenModal(modalRef: NzModalRef): void {\n const index = this.openModals.indexOf(modalRef);\n if (index > -1) {\n this.openModals.splice(index, 1);\n\n if (!this.openModals.length) {\n this._afterAllClosed.next();\n }\n }\n }\n\n private closeModals(dialogs: NzModalRef[]): void {\n let i = dialogs.length;\n while (i--) {\n dialogs[i].close();\n if (!this.openModals.length) {\n this._afterAllClosed.next();\n }\n }\n }\n\n private createOverlay(config: ModalOptions): OverlayRef {\n const globalConfig: NzSafeAny = this.nzConfigService.getConfigForComponent(NZ_CONFIG_MODULE_NAME) || {};\n const overlayConfig = new OverlayConfig({\n hasBackdrop: true,\n scrollStrategy: this.overlay.scrollStrategies.block(),\n backdropClass: getValueWithConfig(config.nzMask, globalConfig.nzMask, true) ? MODAL_MASK_CLASS_NAME : '',\n positionStrategy: this.overlay.position().global(),\n disposeOnNavigation: getValueWithConfig(config.nzCloseOnNavigation, globalConfig.nzCloseOnNavigation, true),\n direction: getValueWithConfig(config.nzDirection, globalConfig.nzDirection, this.directionality.value)\n });\n\n return this.overlay.create(overlayConfig);\n }\n\n private attachModalContainer(overlayRef: OverlayRef, config: ModalOptions): BaseModalContainerComponent {\n const userInjector = config && config.nzViewContainerRef && config.nzViewContainerRef.injector;\n const injector = Injector.create({\n parent: userInjector || this.injector,\n providers: [\n { provide: OverlayRef, useValue: overlayRef },\n { provide: ModalOptions, useValue: config }\n ]\n });\n\n const ContainerComponent =\n config.nzModalType === 'confirm'\n ? // If the mode is `confirm`, use `NzModalConfirmContainerComponent`\n NzModalConfirmContainerComponent\n : // If the mode is not `confirm`, use `NzModalContainerComponent`\n NzModalContainerComponent;\n\n const containerPortal = new ComponentPortal(\n ContainerComponent,\n config.nzViewContainerRef,\n injector\n );\n const containerRef = overlayRef.attach(containerPortal);\n\n return containerRef.instance;\n }\n\n private attachModalContent(\n componentOrTemplateRef: ContentType,\n modalContainer: BaseModalContainerComponent,\n overlayRef: OverlayRef,\n config: ModalOptions\n ): NzModalRef {\n const modalRef = new NzModalRef(overlayRef, config, modalContainer);\n\n if (componentOrTemplateRef instanceof TemplateRef) {\n modalContainer.attachTemplatePortal(\n new TemplatePortal(componentOrTemplateRef, null!, {\n $implicit: config.nzData,\n modalRef\n } as NzSafeAny)\n );\n } else if (isNotNil(componentOrTemplateRef) && typeof componentOrTemplateRef !== 'string') {\n const injector = this.createInjector(modalRef, config);\n const contentRef = modalContainer.attachComponentPortal(\n new ComponentPortal(componentOrTemplateRef, config.nzViewContainerRef, injector)\n );\n modalRef.componentRef = contentRef;\n modalRef.componentInstance = contentRef.instance;\n } else {\n modalContainer.attachStringContent();\n }\n return modalRef;\n }\n\n private createInjector(modalRef: NzModalRef, config: ModalOptions): Injector {\n const userInjector = config && config.nzViewContainerRef && config.nzViewContainerRef.injector;\n\n return Injector.create({\n parent: userInjector || this.injector,\n providers: [\n { provide: NzModalRef, useValue: modalRef },\n { provide: NZ_MODAL_DATA, useValue: config.nzData }\n ]\n });\n }\n\n private confirmFactory(options: ModalOptions = {}, confirmType: ConfirmType): NzModalRef {\n const iconMap: IndexableObject = {\n info: 'info-circle',\n success: 'check-circle',\n error: 'close-circle',\n warning: 'exclamation-circle'\n };\n if (!('nzIconType' in options)) {\n options.nzIconType = iconMap[confirmType];\n }\n if (!('nzCancelText' in options)) {\n // Remove the Cancel button if the user not specify a Cancel button\n options.nzCancelText = null;\n }\n return this.confirm(options, confirmType);\n }\n\n ngOnDestroy(): void {\n this.closeModals(this.openModalsAtThisLevel);\n this.afterAllClosedAtThisLevel.complete();\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[nzModalContent]',\n exportAs: 'nzModalContent'\n})\nexport class NzModalContentDirective {\n constructor(public templateRef: TemplateRef<{}>) {}\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, TemplateRef, inject } from '@angular/core';\n\nimport { NzModalRef } from './modal-ref';\n\n@Directive({\n selector: '[nzModalFooter]',\n exportAs: 'nzModalFooter'\n})\nexport class NzModalFooterDirective {\n private nzModalRef = inject(NzModalRef, { optional: true });\n\n constructor(public templateRef: TemplateRef<{}>) {\n if (this.nzModalRef) {\n this.nzModalRef.updateConfig({\n nzFooter: this.templateRef\n });\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Directive, TemplateRef, inject } from '@angular/core';\n\nimport { NzModalRef } from './modal-ref';\n\n@Directive({\n selector: '[nzModalTitle]',\n exportAs: 'nzModalTitle'\n})\nexport class NzModalTitleDirective {\n private nzModalRef = inject(NzModalRef, { optional: true });\n\n constructor(public templateRef: TemplateRef<{}>) {\n if (this.nzModalRef) {\n this.nzModalRef.updateConfig({\n nzTitle: this.templateRef\n });\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChanges,\n TemplateRef,\n Type,\n ViewContainerRef,\n booleanAttribute,\n numberAttribute\n} from '@angular/core';\nimport { Observable, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { NzButtonType } from 'ng-zorro-antd/button';\nimport { NzSafeAny } from 'ng-zorro-antd/core/types';\n\nimport { NzModalContentDirective } from './modal-content.directive';\nimport { NzModalFooterDirective } from './modal-footer.directive';\nimport { NzModalLegacyAPI } from './modal-legacy-api';\nimport { NzModalRef } from './modal-ref';\nimport { NzModalTitleDirective } from './modal-title.directive';\nimport { ModalButtonOptions, ModalOptions, ModalTypes, OnClickCallback, StyleObjectLike } from './modal-types';\nimport { NzModalService } from './modal.service';\nimport { getConfigFromComponent } from './utils';\n\n@Component({\n selector: 'nz-modal',\n exportAs: 'nzModal',\n template: ``,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class NzModalComponent\n implements OnChanges, NzModalLegacyAPI, OnDestroy\n{\n @Input({ transform: booleanAttribute }) nzMask?: boolean;\n @Input({ transform: booleanAttribute }) nzMaskClosable?: boolean;\n @Input({ transform: booleanAttribute }) nzCloseOnNavigation?: boolean;\n @Input({ transform: booleanAttribute }) nzVisible: boolean = false;\n @Input({ transform: booleanAttribute }) nzClosable: boolean = true;\n @Input({ transform: booleanAttribute }) nzOkLoading: boolean = false;\n @Input({ transform: booleanAttribute }) nzOkDisabled: boolean = false;\n @Input({ transform: booleanAttribute }) nzCancelDisabled: boolean = false;\n @Input({ transform: booleanAttribute }) nzCancelLoading: boolean = false;\n @Input({ transform: booleanAttribute }) nzKeyboard: boolean = true;\n @Input({ transform: booleanAttribute }) nzNoAnimation = false;\n @Input({ transform: booleanAttribute }) nzCentered = false;\n @Input({ transform: booleanAttribute }) nzDraggable = false;\n @Input() nzContent?: string | TemplateRef<{}> | Type;\n @Input() nzFooter?: string | TemplateRef<{}> | Array> | null;\n @Input({ transform: numberAttribute }) nzZIndex: number = 1000;\n @Input() nzWidth: number | string = 520;\n @Input() nzWrapClassName?: string;\n @Input() nzClassName?: string;\n @Input() nzStyle?: object;\n @Input() nzTitle?: string | TemplateRef<{}>;\n @Input() nzCloseIcon: string | TemplateRef = 'close';\n @Input() nzMaskStyle?: StyleObjectLike;\n @Input() nzBodyStyle?: StyleObjectLike;\n @Input() nzOkText?: string | null;\n @Input() nzCancelText?: string | null;\n @Input() nzOkType: NzButtonType = 'primary';\n @Input({ transform: booleanAttribute }) nzOkDanger: boolean = false;\n @Input() nzIconType: string = 'question-circle'; // Confirm Modal ONLY\n @Input() nzModalType: ModalTypes = 'default';\n @Input() nzAutofocus: 'ok' | 'cancel' | 'auto' | null = 'auto';\n\n // TODO(@hsuanxyz) Input will not be supported\n @Input()\n @Output()\n readonly nzOnOk: EventEmitter | OnClickCallback | NzSafeAny = new EventEmitter();\n\n // TODO(@hsuanxyz) Input will not be supported\n @Input()\n @Output()\n readonly nzOnCancel: EventEmitter | OnClickCallback | NzSafeAny = new EventEmitter();\n\n @Output() readonly nzAfterOpen = new EventEmitter();\n @Output() readonly nzAfterClose = new EventEmitter();\n @Output() readonly nzVisibleChange = new EventEmitter();\n\n @ContentChild(NzModalTitleDirective, { static: true, read: TemplateRef })\n set modalTitle(value: TemplateRef) {\n if (value) {\n this.setTitleWithTemplate(value);\n }\n }\n\n @ContentChild(NzModalContentDirective, { static: true, read: TemplateRef })\n contentFromContentChild!: TemplateRef;\n\n @ContentChild(NzModalFooterDirective, { static: true, read: TemplateRef })\n set modalFooter(value: TemplateRef) {\n if (value) {\n this.setFooterWithTemplate(value);\n }\n }\n\n private modalRef: NzModalRef | null = null;\n private destroy$ = new Subject();\n\n get afterOpen(): Observable {\n // Observable alias for nzAfterOpen\n return this.nzAfterOpen.asObservable();\n }\n\n get afterClose(): Observable {\n // Observable alias for nzAfterClose\n return this.nzAfterClose.asObservable();\n }\n\n constructor(\n private cdr: ChangeDetectorRef,\n private modal: NzModalService,\n private viewContainerRef: ViewContainerRef\n ) {}\n\n open(): void {\n if (!this.nzVisible) {\n this.nzVisible = true;\n this.nzVisibleChange.emit(true);\n }\n\n if (!this.modalRef) {\n const config = this.getConfig();\n this.modalRef = this.modal.create(config);\n\n // When the modal is implicitly closed (e.g. closeAll) the nzVisible needs to be set to the correct value and emit.\n this.modalRef.afterClose\n .asObservable()\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.close();\n });\n }\n }\n\n close(result?: R): void {\n if (this.nzVisible) {\n this.nzVisible = false;\n this.nzVisibleChange.emit(false);\n }\n\n if (this.modalRef) {\n this.modalRef.close(result);\n this.modalRef = null;\n }\n }\n\n destroy(result?: R): void {\n this.close(result);\n }\n\n triggerOk(): void {\n this.modalRef?.triggerOk();\n }\n\n triggerCancel(): void {\n this.modalRef?.triggerCancel();\n }\n\n getContentComponent(): T | void {\n return this.modalRef?.getContentComponent();\n }\n\n getElement(): HTMLElement | void {\n return this.modalRef?.getElement();\n }\n\n getModalRef(): NzModalRef | null {\n return this.modalRef;\n }\n\n private setTitleWithTemplate(templateRef: TemplateRef<{}>): void {\n this.nzTitle = templateRef;\n if (this.modalRef) {\n // If modalRef already created, set the title in next tick\n Promise.resolve().then(() => {\n this.modalRef!.updateConfig({\n nzTitle: this.nzTitle\n });\n });\n }\n }\n\n private setFooterWithTemplate(templateRef: TemplateRef<{}>): void {\n this.nzFooter = templateRef;\n if (this.modalRef) {\n // If modalRef already created, set the footer in next tick\n Promise.resolve().then(() => {\n this.modalRef!.updateConfig({\n nzFooter: this.nzFooter\n });\n });\n }\n\n this.cdr.markForCheck();\n }\n\n private getConfig(): ModalOptions {\n const componentConfig = getConfigFromComponent(this);\n componentConfig.nzViewContainerRef = this.viewContainerRef;\n componentConfig.nzContent = this.nzContent || this.contentFromContentChild;\n return componentConfig;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const { nzVisible, ...otherChanges } = changes;\n\n if (Object.keys(otherChanges).length && this.modalRef) {\n this.modalRef.updateConfig(getConfigFromComponent(this));\n }\n\n if (nzVisible) {\n if (this.nzVisible) {\n this.open();\n } else {\n this.close();\n }\n }\n }\n\n ngOnDestroy(): void {\n this.modalRef?._finishDialogClose();\n this.destroy$.next();\n this.destroy$.complete();\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzModalCloseComponent } from './modal-close.component';\nimport { NzModalConfirmContainerComponent } from './modal-confirm-container.component';\nimport { NzModalContainerComponent } from './modal-container.component';\nimport { NzModalContentDirective } from './modal-content.directive';\nimport { NzModalFooterComponent } from './modal-footer.component';\nimport { NzModalFooterDirective } from './modal-footer.directive';\nimport { NzModalTitleComponent } from './modal-title.component';\nimport { NzModalTitleDirective } from './modal-title.directive';\nimport { NzModalComponent } from './modal.component';\nimport { NzModalService } from './modal.service';\n\n@NgModule({\n imports: [\n NzModalComponent,\n NzModalFooterDirective,\n NzModalContentDirective,\n NzModalCloseComponent,\n NzModalFooterComponent,\n NzModalTitleComponent,\n NzModalTitleDirective,\n NzModalContainerComponent,\n NzModalConfirmContainerComponent\n ],\n exports: [NzModalComponent, NzModalFooterDirective, NzModalContentDirective, NzModalTitleDirective],\n providers: [NzModalService]\n})\nexport class NzModalModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Observable } from 'rxjs';\n\nexport abstract class NzModalLegacyAPI {\n abstract afterOpen: Observable;\n abstract afterClose: Observable;\n\n abstract close(result?: R): void;\n abstract destroy(result?: R): void;\n\n /**\n * Trigger the nzOnOk/nzOnCancel by manual\n */\n abstract triggerOk(): void;\n abstract triggerCancel(): void;\n /**\n * Return the component instance of nzContent when specify nzContent as a Component\n */\n abstract getContentComponent(): T | void;\n\n /**\n * Get the dom element of this Modal\n */\n abstract getElement(): HTMLElement | void;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './modal-types';\nexport * from './modal.service';\nexport * from './modal-ref';\nexport * from './modal-config';\nexport * from './modal.component';\nexport * from './modal-title.directive';\nexport * from './modal-footer.directive';\nexport * from './modal-content.directive';\nexport * from './modal.module';\nexport * from './modal-confirm-container.component';\nexport * from './modal-container.component';\nexport * from './modal-container.directive';\nexport * from './modal-close.component';\nexport * from './modal-title.component';\nexport * from './modal-legacy-api';\nexport * from './modal-types';\nexport * from './modal-animations';\nexport * from './modal-footer.component';\nexport * from './utils';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.ModalOptions","i2","i3","i4","i1","i2.ModalOptions","i5","i6","i1.NzModalService"],"mappings":"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"}