ng-zorro-antd-mobile
Version:
An enterprise-class mobile UI components based on Ant Design and Angular
1 lines • 43.3 kB
Source Map (JSON)
{"version":3,"file":"ng-zorro-antd-mobile-modal.mjs","sources":["../../components/modal/modal-options.provider.ts","../../components/modal/modal-ref.class.ts","../../components/modal/modal.component.ts","../../components/modal/modal.component.html","../../components/modal/modal.service.ts","../../components/modal/modal.module.ts","../../components/modal/ng-zorro-antd-mobile-modal.ts"],"sourcesContent":["import { Injectable, TemplateRef } from '@angular/core';\n\nexport class ModalBaseOptions {\n visible?: boolean = false;\n focus?: boolean = true;\n prefixCls?: string = 'am-modal';\n animated?: boolean = true;\n closable?: boolean = false;\n maskClosable?: boolean = true;\n onClose?: any;\n transparent?: boolean = false;\n popup?: boolean = false;\n animationType?: string = 'slide-down';\n title?: string | TemplateRef<any>;\n footer?: Array<any> = [];\n platform?: string = 'ios';\n className?: string;\n wrapClassName?: string;\n message?: string | TemplateRef<any>;\n actions?: Array<any>;\n callbackOrActions?: Array<any>;\n type?: string;\n defaultValue?: Array<string> = [];\n placeholders?: Array<string> = [];\n operation?: boolean;\n transitionName?: string = 'am-zoom';\n maskTransitionName?: string = 'am-fade';\n close: () => void;\n closeWithAnimation: () => void;\n}\n\nexport class ModalServiceCustomOptions {\n maskClosable?: boolean = false;\n}\n\n@Injectable()\nexport class ModalOptions extends ModalBaseOptions {\n transitionName?: string = 'am-fade';\n maskTransitionName?: string = 'am-fade';\n}\n\n@Injectable()\nexport class Action {\n text?: string;\n onPress?: Function;\n style?: {};\n}\n","import { Observable } from 'rxjs';\n\nimport { ModalComponent } from './modal.component';\n\nexport abstract class ModalRef<T = any, R = any> {\n abstract afterOpen: Observable<void>;\n abstract afterClose: Observable<R>;\n\n abstract close(result?: R): void;\n abstract destroy(result?: R): void;\n abstract triggerOk(): void;\n abstract triggerCancel(): void;\n abstract getElement(): HTMLElement;\n abstract getInstance(): ModalComponent;\n}\n","import {\n Input,\n Output,\n Component,\n forwardRef,\n ElementRef,\n TemplateRef,\n EventEmitter,\n HostListener,\n ViewEncapsulation\n} from '@angular/core';\nimport { ModalOptions } from './modal-options.provider';\nimport { Observable } from 'rxjs';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { ModalRef } from './modal-ref.class';\n@Component({\n selector: 'Modal',\n templateUrl: './modal.component.html',\n encapsulation: ViewEncapsulation.None,\n providers: [\n ModalOptions,\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ModalComponent),\n multi: true\n }\n ]\n})\nexport class ModalComponent<T = any, R = any> extends ModalRef<T, R> implements ControlValueAccessor {\n autoFocus = { focus: true, date: new Date() };\n transitionName: string = '';\n maskTransitionName: string = '';\n wrapCls: object = {};\n cls: object = {};\n btnGroupClass: object = {};\n data = {\n text: '',\n password: ''\n };\n\n onChanged: (visiable: boolean) => {};\n onTouched: () => {};\n\n @Input()\n set title(value: string | TemplateRef<any>) {\n this.option.title = value;\n }\n\n @Input()\n set closable(value: boolean) {\n this.option.closable = value;\n }\n @Input()\n set maskClosable(value: boolean) {\n this.option.maskClosable = value;\n }\n @Input()\n set popup(value: boolean) {\n this.option.popup = value;\n this.setClassMap();\n }\n @Input()\n set animationType(value: string) {\n this.option.animationType = value;\n this.setClassMap();\n }\n @Input()\n set transparent(value: boolean) {\n this.option.transparent = value;\n this.setClassMap();\n }\n @Input()\n set footer(value: Array<any>) {\n this.option.footer = value;\n }\n @Input()\n set platform(value: string) {\n this.option.platform = value;\n this.setClassMap();\n }\n @Input()\n set className(value: string) {\n this.option.className = value;\n this.setClassMap();\n }\n @Input()\n set wrapClassName(value: string) {\n this.option.wrapClassName = value;\n this.setClassMap();\n }\n @Input()\n set actions(value: Array<any>) {\n this.option.footer = value;\n this.setClassMap();\n }\n @Input()\n set defaultValue(value: Array<string>) {\n this.option.defaultValue = value !== undefined ? value : ['', ''];\n }\n @Input()\n set type(value: string) {\n this.option.type = value;\n }\n @Input()\n set placeholders(value: Array<string>) {\n this.option.placeholders = value;\n }\n @Input()\n set operation(value: boolean) {\n this.option.operation = value;\n this.setClassMap();\n }\n @Output()\n onClose: EventEmitter<any> = new EventEmitter();\n @Output()\n afterOpenEmitter: EventEmitter<any> = new EventEmitter<void>();\n @Output()\n afterCloseEmitter: EventEmitter<any> = new EventEmitter<void>();\n\n @HostListener('mouseup', ['$event'])\n @HostListener('touchend', ['$event'])\n panend(event) {\n if (this.option.closable || this.option.maskClosable) {\n if (\n (event && event.target && event.target.getAttribute('role') === 'dialog') ||\n event.target.getAttribute('role') === 'close'\n ) {\n event.preventDefault();\n event.stopPropagation();\n if (this.option.close) {\n this.option.close();\n } else {\n this.onClose.emit();\n this.leaveAnimation();\n }\n }\n }\n }\n\n constructor(public option: ModalOptions, public elementRef: ElementRef) {\n super();\n }\n\n isTemplateRef(value: string | TemplateRef<any>) {\n return value instanceof TemplateRef;\n }\n\n isNoTitle(value: string | TemplateRef<any>) {\n return value === '' || value === null || value === undefined;\n }\n\n setTransitionName(visible: boolean) {\n if (!visible) {\n this.leaveAnimation();\n } else {\n if (this.option.animated) {\n if (this.option.transparent) {\n if (this.setActiveName(this.option.transitionName)) {\n this.transitionName = this.setActiveName(this.option.transitionName);\n this.maskTransitionName = this.setActiveName(this.option.maskTransitionName);\n } else {\n this.transitionName = this.maskTransitionName = this.setActiveName('am-fade');\n }\n } else {\n if (this.setActiveName(this.option.transitionName)) {\n this.transitionName = this.setActiveName(this.option.transitionName);\n this.maskTransitionName = this.setActiveName(this.option.maskTransitionName);\n } else {\n this.transitionName = this.maskTransitionName = this.setActiveName('am-slide-up');\n }\n }\n if (this.option.popup) {\n this.transitionName =\n this.option.animationType === 'slide-up'\n ? this.setActiveName('am-slide-up')\n : this.setActiveName('am-slide-down');\n this.maskTransitionName = this.setActiveName('am-fade');\n }\n }\n this.setClassMap();\n }\n }\n\n setActiveName(name: string) {\n return name.length > 0 ? `${name}-enter ${name}-enter-active` : null;\n }\n\n setLeaveActiveName(name: string) {\n return name.length > 0 ? `${name}-leave ${name}-leave-active` : null;\n }\n\n setClassMap() {\n this.wrapCls = {\n [this.option.wrapClassName]: true,\n [`${this.option.prefixCls}-wrap-popup`]: this.option.popup\n };\n\n this.cls = {\n [this.option.className]: true,\n [`${this.option.prefixCls}-transparent`]: this.option.transparent,\n [`${this.option.prefixCls}-popup`]: this.option.popup,\n [`${this.option.prefixCls}-popup-${this.option.animationType}`]: this.option.popup && this.option.animationType,\n [`${this.option.prefixCls}-android`]: this.option.platform === 'android'\n };\n\n this.btnGroupClass = {\n [`${this.option.prefixCls}-button-group-${\n this.option.footer.length === 2 && !this.option.operation ? 'h' : 'v'\n }`]: true,\n [`${this.option.prefixCls}-button-group-${this.option.operation ? 'operation' : 'normal'}`]: true\n };\n }\n\n inputChange(type: string, value: string) {\n this.data[type] = value;\n }\n\n leaveAnimation() {\n if (this.option.animated) {\n if (this.option.transparent) {\n if (this.setLeaveActiveName(this.option.transitionName)) {\n this.transitionName = this.setLeaveActiveName(this.option.transitionName);\n this.maskTransitionName = this.setLeaveActiveName(this.option.maskTransitionName);\n } else {\n this.transitionName = this.maskTransitionName = this.setLeaveActiveName('am-fade');\n }\n } else {\n if (this.setLeaveActiveName(this.option.transitionName)) {\n this.transitionName = this.setLeaveActiveName(this.option.transitionName);\n this.maskTransitionName = this.setLeaveActiveName(this.option.maskTransitionName);\n } else {\n this.transitionName = this.maskTransitionName = this.setLeaveActiveName('am-slide-up');\n }\n }\n if (this.option.popup) {\n this.transitionName =\n this.option.animationType === 'slide-up'\n ? this.setLeaveActiveName('am-slide-up')\n : this.setLeaveActiveName('am-slide-down');\n this.maskTransitionName = this.setLeaveActiveName('am-fade');\n }\n }\n setTimeout(() => {\n this.option.visible = false;\n if (this.onChanged) {\n this.onChanged(this.option.visible);\n }\n }, 200);\n }\n\n writeValue(value: boolean): void {\n if (value) {\n this.option.visible = value;\n }\n this.setTransitionName(value);\n }\n\n registerOnChange(fn: (_: boolean) => {}): void {\n this.onChanged = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n get afterOpen(): Observable<void> {\n return this.afterOpenEmitter.asObservable();\n }\n\n get afterClose(): Observable<R> {\n return this.afterCloseEmitter.asObservable();\n }\n\n getInstance(): ModalComponent {\n return this;\n }\n\n getElement(): HTMLElement {\n return this.elementRef && this.elementRef.nativeElement;\n }\n\n close(): void {\n if (this.option.closeWithAnimation) {\n this.option.closeWithAnimation();\n } else {\n this.onClose.emit();\n this.leaveAnimation();\n }\n }\n\n triggerOk(): void {\n if (this.option.footer.length > 1) {\n const button = this.option.footer[1];\n button.onPress();\n }\n }\n\n triggerCancel(): void {\n if (this.option.footer.length > 0) {\n const button = this.option.footer[0];\n button.onPress();\n }\n }\n\n destroy(): void {\n this.close();\n }\n}\n\n@Component({\n selector: 'ModalService',\n templateUrl: './modal.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class ModalServiceComponent extends ModalComponent {\n constructor(public option: ModalOptions, public elementRef: ElementRef) {\n super(option, elementRef);\n this.setTransitionName(this.option.visible);\n }\n}\n","<div *ngIf=\"option.visible\">\n <div class=\"{{ option.prefixCls }}-mask {{ maskTransitionName }}\"></div>\n <div role=\"dialog\" class=\"{{ option.prefixCls }}-wrap {{ transitionName }}\" [ngClass]=\"wrapCls\">\n <div role=\"document\" class=\"{{ option.prefixCls }}\" [ngClass]=\"cls\">\n <div class=\"{{ option.prefixCls }}-content\">\n <div *ngIf=\"option.closable\" style=\"width: 100%; height: 21px;\">\n <div role=\"close\" class=\"{{ option.prefixCls }}-close\">\n <span role=\"close\" class=\"{{ option.prefixCls }}-close-x\"></span>\n </div>\n </div>\n <div *ngIf=\"!isNoTitle(option.title)\" class=\"{{ option.prefixCls }}-header\">\n <div *ngIf=\"!isTemplateRef(option.title)\" class=\"{{ option.prefixCls }}-title\">{{ option.title }}</div>\n <ng-template *ngIf=\"isTemplateRef(option.title)\" [ngTemplateOutlet]=\"option.title\"></ng-template>\n </div>\n <div class=\"{{ option.prefixCls }}-body\">\n <ng-content></ng-content>\n <div *ngIf=\"!isTemplateRef(option.message)\" class=\"{{ option.prefixCls }}-alert-content\">\n {{ option.message }}\n </div>\n <ng-template *ngIf=\"isTemplateRef(option.message)\" [ngTemplateOutlet]=\"option.message\"></ng-template>\n <ng-template *ngIf=\"option.type === 'default'\" [ngTemplateOutlet]=\"promptDefault\"></ng-template>\n <ng-template *ngIf=\"option.type === 'secure-text'\" [ngTemplateOutlet]=\"promptSecure\"></ng-template>\n <ng-template *ngIf=\"option.type === 'login-password'\" [ngTemplateOutlet]=\"promptPassword\"></ng-template>\n </div>\n <div class=\"{{ option.prefixCls }}-footer\">\n <div [ngClass]=\"btnGroupClass\" role=\"group\">\n <div\n Button\n role=\"button\"\n *ngFor=\"let button of option.footer\"\n [className]=\"'am-modal-button'\"\n [ngStyle]=\"button.style\"\n (onClick)=\"button.onPress()\"\n >\n {{ button.text }}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #promptPassword>\n <div class=\"{{ option.prefixCls }}-input-container\">\n <div class=\"{{ option.prefixCls }}-input\">\n <input\n #inputElement\n autofocus\n [type]=\"'text'\"\n [placeholder]=\"option.placeholders[0] || ''\"\n [(ngModel)]=\"option.defaultValue[0]\"\n (ngModelChange)=\"inputChange('text', $event)\"\n />\n </div>\n <div className=\"{{ option.prefixCls }}-input\">\n <input\n #inputElement\n [type]=\"'password'\"\n [placeholder]=\"option.placeholders[1] || ''\"\n [(ngModel)]=\"option.defaultValue[1]\"\n (ngModelChange)=\"inputChange('password', $event)\"\n />\n </div>\n </div>\n</ng-template>\n<ng-template #promptSecure>\n <div className=\"{{ option.prefixCls }}-input-container\">\n <div className=\"{{ option.prefixCls }}-input\">\n <input\n #inputElement\n autofocus\n [type]=\"'password'\"\n [placeholder]=\"option.placeholders[0] || ''\"\n [(ngModel)]=\"option.defaultValue[0]\"\n (ngModelChange)=\"inputChange('password', $event)\"\n />\n </div>\n </div>\n</ng-template>\n<ng-template #promptDefault>\n <div className=\"{{ option.prefixCls }}-input-container\">\n <div className=\"{{ option.prefixCls }}-input\">\n <input\n #inputElement\n autofocus\n [type]=\"'text'\"\n [placeholder]=\"option.placeholders[0] || ''\"\n [(ngModel)]=\"option.defaultValue[0]\"\n (ngModelChange)=\"inputChange('text', $event)\"\n />\n </div>\n </div>\n</ng-template>\n","import { Injectable, Injector, ComponentRef, TemplateRef } from '@angular/core';\n\nimport { ModalServiceComponent } from './modal.component';\nimport { ModalBaseOptions, ModalOptions, ModalServiceCustomOptions, Action } from './modal-options.provider';\nimport { PopupService } from 'ng-zorro-antd-mobile/core';\n\n@Injectable({\n providedIn: 'root'\n})\n@Injectable()\nexport class ModalService extends PopupService {\n modalRef: ComponentRef<ModalServiceComponent> = null;\n\n _open(props: ModalBaseOptions): any {\n const childInjector = Injector.create({\n providers: [{ provide: ModalOptions, useValue: props }]\n });\n\n this.modalRef = this.showPopup(ModalServiceComponent, childInjector);\n return this.modalRef && this.modalRef.instance;\n }\n\n closeWithAnimation() {\n const options: ModalBaseOptions = new ModalBaseOptions();\n this.modalRef.instance.transitionName = `${options.transitionName}-leave ${options.transitionName}-leave-active`;\n this.modalRef.instance.maskTransitionName = `${options.maskTransitionName}-leave ${options.maskTransitionName}-leave-active`;\n setTimeout(() => {\n this.close();\n }, 200);\n }\n\n alert(\n title?: string | TemplateRef<any>,\n message?: string | TemplateRef<any>,\n actions?: Array<any>,\n platform?: string\n ): any {\n const options: ModalOptions = new ModalOptions();\n const footer = getFooter.call(this, actions);\n const defaultOptions = {\n visible: true,\n transparent: true,\n closable: false,\n maskClosable: false,\n platform: platform || 'ios',\n title: title || '',\n message: message || '',\n footer,\n actions: footer,\n close: () => {\n this.closeWithAnimation();\n },\n closeWithAnimation: () => {\n this.closeWithAnimation();\n }\n };\n\n const props = {\n ...options,\n ...defaultOptions\n };\n\n return this._open(props);\n }\n\n prompt(\n title?: string | TemplateRef<any>,\n message?: string | TemplateRef<any>,\n callbackOrActions?: any,\n type?: string,\n defaultValue?: Array<string>,\n placeholders?: Array<any>,\n platform?: string\n ): any {\n const options: ModalOptions = new ModalOptions();\n\n function getArgs(self: any, func: any) {\n let text: any, password: any;\n if (self.modalRef) {\n text = self.modalRef.instance.data.text || options.defaultValue[0];\n password = self.modalRef.instance.data.password || options.defaultValue[1];\n } else {\n text = options.defaultValue[0];\n password = options.defaultValue[1];\n }\n\n if (type === 'login-password') {\n return func(text, password);\n } else if (type === 'secure-text') {\n return func(password);\n }\n return func(text);\n }\n\n const actions =\n typeof callbackOrActions === 'function'\n ? [\n { text: 'Cancel' },\n {\n text: 'OK',\n onPress: () => {\n getArgs(this, callbackOrActions);\n }\n }\n ]\n : callbackOrActions.map(item => {\n return {\n text: item.text,\n onPress: () => {\n if (item.onPress) {\n return getArgs(this, item.onPress);\n }\n }\n };\n });\n\n const footer = getFooter.call(this, actions);\n const defaultOptions = {\n visible: true,\n transparent: true,\n closable: false,\n maskClosable: false,\n operation: true,\n className: 'm-modal-alert-content',\n defaultValue: defaultValue || ['', ''],\n placeholders: placeholders || [],\n type: type || 'default',\n title: title || '',\n message: message || '',\n footer,\n actions: footer,\n platform: platform ? platform : 'ios',\n close: () => {\n this.closeWithAnimation();\n },\n closeWithAnimation: () => {\n this.closeWithAnimation();\n }\n };\n\n const props = {\n ...options,\n ...defaultOptions\n };\n\n return this._open(props);\n }\n\n operation(actions?: any, platform?: string, customOptions?: ModalServiceCustomOptions): any {\n const options: ModalOptions = new ModalOptions();\n const footer = getFooter.call(this, actions);\n const defaultOptions = {\n visible: true,\n transparent: true,\n closable: false,\n maskClosable: false,\n operation: true,\n className: 'am-modal-operation',\n footer,\n platform: platform ? platform : 'ios',\n close: () => {\n this.closeWithAnimation();\n },\n closeWithAnimation: () => {\n this.closeWithAnimation();\n }\n };\n\n const props = {\n ...options,\n ...defaultOptions,\n ...customOptions\n };\n\n return this._open(props);\n }\n\n close() {\n this.hidePopup();\n }\n}\n\nfunction getFooter(actions) {\n let _actions = actions ? actions : [{ text: 'OK', onPress: () => {} }];\n\n return _actions.map((button: Action) => {\n const originPress = button.onPress || function() {};\n button.onPress = () => {\n const res = originPress();\n if (res && res.then) {\n res.then(() => {\n this.closeWithAnimation();\n });\n } else {\n this.closeWithAnimation();\n }\n };\n return button;\n });\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ModalComponent, ModalServiceComponent } from './modal.component';\nimport { ModalService } from './modal.service';\nimport { ListModule } from 'ng-zorro-antd-mobile/list';\nimport { WingBlankModule } from 'ng-zorro-antd-mobile/wing-blank';\nimport { WhiteSpaceModule } from 'ng-zorro-antd-mobile/white-space';\nimport { ButtonModule } from 'ng-zorro-antd-mobile/button';\nimport { InputItemModule } from 'ng-zorro-antd-mobile/input-item';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { PopupService } from 'ng-zorro-antd-mobile/core';\n\n@NgModule({\n imports: [\n CommonModule,\n ListModule,\n WingBlankModule,\n WhiteSpaceModule,\n ButtonModule,\n InputItemModule,\n FormsModule,\n ReactiveFormsModule,\n OverlayModule\n ],\n exports: [ModalComponent, ModalServiceComponent],\n declarations: [ModalComponent, ModalServiceComponent],\n providers: [ModalService, PopupService]\n})\nexport class ModalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.ModalOptions"],"mappings":"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"}