UNPKG

ng-zorro-antd-mobile

Version:

An enterprise-class mobile UI components based on Ant Design and Angular

1 lines 23.5 kB
{"version":3,"file":"ng-zorro-antd-mobile-action-sheet.mjs","sources":["../../components/action-sheet/action-sheet-ref.class.ts","../../components/action-sheet/action-sheet.component.ts","../../components/action-sheet/action-sheet.component.html","../../components/action-sheet/action-sheet-options.provider.ts","../../components/action-sheet/action-sheet.service.ts","../../components/action-sheet/action-sheet.module.ts","../../components/action-sheet/ng-zorro-antd-mobile-action-sheet.ts"],"sourcesContent":["import { Observable } from 'rxjs';\n\nimport { ActionSheetComponent } from './action-sheet.component';\n\nexport abstract class ActionSheetRef<T = any, R = any> {\n abstract close(result?: R): void;\n abstract destroy(result?: R): void;\n abstract getElement(): HTMLElement;\n abstract getInstance(): ActionSheetComponent;\n}\n","import { OnInit, Component, OnDestroy, ElementRef, TemplateRef, ViewEncapsulation } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { LocaleProviderService } from 'ng-zorro-antd-mobile/locale-provider';\nimport { ActionSheetRef } from './action-sheet-ref.class';\n\n@Component({\n selector: 'ActionSheet',\n templateUrl: './action-sheet.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class ActionSheetComponent<T = any, R = any> extends ActionSheetRef<T, R> implements OnInit, OnDestroy {\n unsubscribe$ = new Subject<void>();\n option: any;\n constructor(private localeProviderService: LocaleProviderService, public elementRef: ElementRef) {\n super();\n }\n\n ngOnInit() {\n this.localeProvider();\n }\n\n localeProvider() {\n const self = this;\n if (self.option.locale || self.option.locale !== undefined) {\n self.localeProviderService.setLocale(self.option.locale);\n }\n self.localeProviderService.localeChange.pipe(takeUntil(self.unsubscribe$)).subscribe(_ => {\n if (self.option.cancelButtonText) {\n self.option.cancelButtonText = self.localeProviderService.getLocaleSubObj('ActionSheet')['dismissText'];\n }\n });\n }\n\n onPress(index: any, rowIndex = 0, event) {}\n showShare(option) {\n const cls = { [`${option.prefixCls}-share`]: option.flag === 'SHARE' };\n return cls;\n }\n\n setActiveClassName(option, suffix) {\n return [`${option.prefixCls}-${suffix}-active`];\n }\n\n isNoTitle(value: string | TemplateRef<any>) {\n return value === '' || value === null || value === undefined;\n }\n\n isTemplateRef(value) {\n return value instanceof TemplateRef;\n }\n\n isArray(options: any, value: any) {\n if (options.length > 0 && value) {\n return value instanceof Array;\n }\n return false;\n }\n\n getInstance(): ActionSheetComponent {\n return this;\n }\n\n getElement(): HTMLElement {\n return this.elementRef && this.elementRef.nativeElement;\n }\n\n close(): void {\n if (this.option.close) {\n this.option.close();\n }\n }\n\n destroy(): void {\n this.close();\n }\n\n ngOnDestroy() {\n this.unsubscribe$.next();\n this.unsubscribe$.complete();\n }\n}\n","<div class=\"{{ option.prefixCls }}-mask {{ option.maskTransitionName }}\"></div>\n<div\n role=\"dialog\"\n class=\"{{ option.prefixCls }}-wrap {{ option.transitionName }}\"\n (click)=\"option.maskClose(-1, 0, $event)\"\n>\n <div role=\"document\" class=\"{{ option.prefixCls }}\" [ngClass]=\"showShare(option)\">\n <div class=\"{{ option.prefixCls }}-content\">\n <button aria-label=\"Close\" class=\"{{ option.prefixCls }}-close\">\n <span class=\"{{ option.prefixCls }}-close-x\"></span>\n </button>\n <div class=\"{{ option.prefixCls }}-body\">\n <div>\n <ng-container *ngIf=\"!isNoTitle(option.title)\">\n <ng-template *ngIf=\"isTemplateRef(option.title)\" [ngTemplateOutlet]=\"option.title\"></ng-template>\n <h3 *ngIf=\"!isTemplateRef(option.title)\" class=\"{{ option.prefixCls }}-title\">{{ option.title }}</h3>\n </ng-container>\n <ng-container *ngIf=\"!isNoTitle(option.message)\">\n <ng-template *ngIf=\"isTemplateRef(option.message)\" [ngTemplateOutlet]=\"option.message\"></ng-template>\n <div *ngIf=\"!isTemplateRef(option.message)\" class=\"{{ option.prefixCls }}-message\">\n {{ option.message }}\n </div>\n </ng-container>\n <ng-container [ngSwitch]=\"option.flag\">\n <div *ngSwitchCase=\"'NORMAL'\" class=\"{{ option.prefixCls }}-button-list\" role=\"group\">\n <ng-container *ngFor=\"let item of option.options; let i = index\">\n <div\n TouchFeedbackDirective\n class=\"{{ option.prefixCls }}-button-list-item\"\n [className]=\"setActiveClassName(option, 'button-list-item')\"\n >\n <div\n *ngIf=\"option.destructiveButtonIndex !== i && option.cancelButtonIndex !== i\"\n class=\"{{ option.prefixCls }}-button-list-item\"\n (click)=\"option.onPress(i, 0, $event)\"\n >\n {{ item }}\n </div>\n <div\n *ngIf=\"option.destructiveButtonIndex === i\"\n class=\"{{ option.prefixCls }}-button-list-item {{ option.prefixCls }}-destructive-button\"\n (click)=\"option.onPress(i, 0, $event)\"\n >\n {{ item }}\n </div>\n <div\n *ngIf=\"option.cancelButtonIndex === i\"\n class=\"{{ option.prefixCls }}-button-list-item {{ option.prefixCls }}-cancel-button\"\n (click)=\"option.onPress(i, 0, $event)\"\n >\n {{ item }}\n <span class=\"{{ option.prefixCls }}-cancel-button-mask\"></span>\n </div>\n </div>\n </ng-container>\n </div>\n <div *ngSwitchCase=\"'SHARE'\" class=\"{{ option.prefixCls }}-share {{ option.prefixCls }}-share-content\">\n <div *ngIf=\"!isArray(option.options, option.options[0])\" class=\"{{ option.prefixCls }}-share-list\">\n <ng-container *ngFor=\"let item of option.options; let i = index\">\n <div class=\"{{ option.prefixCls }}-share-list-item\" (click)=\"option.onPress(i, 0, $event)\">\n <div class=\"{{ option.prefixCls }}-share-list-item-icon\">\n <ng-template *ngIf=\"isTemplateRef(item.icon)\" [ngTemplateOutlet]=\"item.icon\"></ng-template>\n <div *ngIf=\"!isTemplateRef(item.icon)\" [innerHTML]=\"item.icon | safeHTML\"></div>\n </div>\n <div class=\"{{ option.prefixCls }}-share-list-item-title\">{{ item.title }}</div>\n </div>\n </ng-container>\n </div>\n <ng-container *ngIf=\"isArray(option.options, option.options[0])\">\n <div\n *ngFor=\"let items of option.options; let rowIndex = index\"\n class=\"{{ option.prefixCls }}-share-list\"\n >\n <ng-container *ngFor=\"let item of items; let i = index\">\n <div class=\"{{ option.prefixCls }}-share-list-item\" (click)=\"option.onPress(i, rowIndex, $event)\">\n <div class=\"{{ option.prefixCls }}-share-list-item-icon\">\n <ng-template *ngIf=\"isTemplateRef(item.icon)\" [ngTemplateOutlet]=\"item.icon\"></ng-template>\n <div *ngIf=\"!isTemplateRef(item.icon)\" [innerHTML]=\"item.icon | safeHTML\"></div>\n </div>\n <div class=\"{{ option.prefixCls }}-share-list-item-title\">{{ item.title }}</div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n <div\n TouchFeedbackDirective\n [className]=\"setActiveClassName(option, 'share-cancel-button')\"\n class=\"{{ option.prefixCls }}-share-cancel-button\"\n >\n {{ option.cancelButtonText }}\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n</div>\n","import { Injectable, TemplateRef } from '@angular/core';\n\n@Injectable()\nexport class ActionSheetOptions {\n prefixCls?: string = 'am-action-sheet';\n maskClosable?: boolean = true;\n cancelButtonIndex?: number;\n destructiveButtonIndex?: number;\n title?: string | TemplateRef<any>;\n message?: string | TemplateRef<any>;\n className?: string;\n transitionName?: string = 'am-slide-up';\n maskTransitionName?: string = 'am-fade';\n locale?;\n close?: () => void;\n}\n\n@Injectable()\nexport class ShareOption {\n icon: string | TemplateRef<any>;\n title: string;\n}\n\n@Injectable()\nexport class ShareActionSheetWithOptions extends ActionSheetOptions {\n options: ShareOption[] | ShareOption[][];\n cancelButtonText?: string = 'Cancel';\n}\n\n@Injectable()\nexport class ActionSheetWithOptions extends ActionSheetOptions {\n options: string[];\n}\n\nexport type ActionCallBack = (index: number, rowIndex?: number) => PromiseLike<any> | void;\n","import { Injectable, ComponentRef, ComponentFactory, ApplicationRef } from '@angular/core';\nimport { ActionSheetComponent } from './action-sheet.component';\nimport {\n ActionCallBack,\n ActionSheetOptions,\n ActionSheetWithOptions,\n ShareActionSheetWithOptions\n} from './action-sheet-options.provider';\nimport { PopupService } from 'ng-zorro-antd-mobile/core';\n\nconst NORMAL = 'NORMAL';\nconst SHARE = 'SHARE';\nfunction noop() {}\n@Injectable({\n providedIn: 'root'\n})\nexport class ActionSheetService extends PopupService {\n compRef: ComponentRef<any> = null;\n _actionSheetCompFactory: ComponentFactory<ActionSheetComponent> = null;\n appRef: ApplicationRef = null;\n comRef: ComponentRef<ActionSheetComponent> = null;\n\n instance = null;\n\n _initConfig(config: ActionSheetOptions, options: Object = {}): ActionSheetOptions {\n const props: ActionSheetOptions = new ActionSheetOptions();\n const optionalParams: string[] = [\n 'prefixCls',\n 'maskClosable',\n 'cancelButtonText',\n 'cancelButtonIndex',\n 'destructiveButtonIndex',\n 'title',\n 'message',\n 'className',\n 'transitionName',\n 'maskTransitionName',\n 'options',\n 'locale',\n 'close'\n ];\n const self = this;\n config = Object.assign(options, config, {\n close: (): void => {\n if (config.maskClosable) {\n self.closeWithAnimation(config.transitionName, config.maskTransitionName);\n }\n }\n });\n optionalParams.forEach(key => {\n if (config[key] !== undefined) {\n props[key] = config[key];\n }\n });\n return props;\n }\n\n _open(props: ActionSheetOptions) {\n this.comRef = this.showPopup(ActionSheetComponent);\n this.comRef.instance.option = props;\n return this.comRef && this.comRef.instance;\n }\n\n createActionSheet(\n flag: string,\n config: ActionSheetWithOptions | ShareActionSheetWithOptions,\n callback: ActionCallBack\n ) {\n const options = flag === NORMAL ? new ActionSheetOptions() : new ShareActionSheetWithOptions();\n const transitionName = config.transitionName ? config.transitionName : options.transitionName;\n options.transitionName = `${transitionName}-enter ${transitionName}-enter-active`;\n const maskTransitionName = config.maskTransitionName ? config.maskTransitionName : options.maskTransitionName;\n options.maskTransitionName = `${maskTransitionName}-enter ${maskTransitionName}-enter-active`;\n const props = this._initConfig(config, options);\n Object.assign(props, { onPress: cb }, { flag: flag }, { maskClose: props.maskClosable ? cb : () => {} });\n const self = this;\n function cb(index: any, rowIndex = 0, event) {\n event.stopPropagation();\n const res = callback(index, rowIndex);\n if (res && res.then) {\n res.then(() => {\n self.closeWithAnimation(transitionName, maskTransitionName);\n });\n } else {\n self.closeWithAnimation(transitionName, maskTransitionName);\n }\n }\n return this._open(props);\n }\n\n closeWithAnimation(transitionName, maskTransitionName) {\n this.comRef.instance.option.transitionName = `${transitionName}-leave ${transitionName}-leave-active`;\n this.comRef.instance.option.maskTransitionName = `${maskTransitionName}-leave ${maskTransitionName}-leave-active`;\n setTimeout(() => {\n this.close();\n }, 200);\n }\n\n showActionSheetWithOptions(config: ActionSheetWithOptions, callback: ActionCallBack = noop) {\n return this.createActionSheet(NORMAL, config, callback);\n }\n\n showShareActionSheetWithOptions(config: ShareActionSheetWithOptions, callback: ActionCallBack = noop) {\n return this.createActionSheet(SHARE, config, callback);\n }\n\n close() {\n this.hidePopup();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ListModule } from 'ng-zorro-antd-mobile/list';\nimport { NgZorroAntdMobilePipesModule } from 'ng-zorro-antd-mobile/pipes';\nimport { ActionSheetComponent } from './action-sheet.component';\nimport { WingBlankModule } from 'ng-zorro-antd-mobile/wing-blank';\nimport { WhiteSpaceModule } from 'ng-zorro-antd-mobile/white-space';\nimport { LocaleProviderModule } from 'ng-zorro-antd-mobile/locale-provider';\nimport { TouchFeedbackModule } from 'ng-zorro-antd-mobile/core';\nimport { PopupService } from 'ng-zorro-antd-mobile/core';\nimport { ActionSheetService } from './action-sheet.service';\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n NgZorroAntdMobilePipesModule,\n ListModule,\n WhiteSpaceModule,\n WingBlankModule,\n LocaleProviderModule,\n TouchFeedbackModule\n ],\n declarations: [ActionSheetComponent],\n exports: [ActionSheetComponent],\n providers: [PopupService, ActionSheetService]\n})\nexport class ActionSheetModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}