UNPKG

ng-zorro-antd-mobile

Version:

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

47 lines 5.26 kB
import { Injectable, Injector } from '@angular/core'; import { PickerComponent } from './picker.component'; import { PickerOptions } from './picker-options.provider'; import { PopupService } from 'ng-zorro-antd-mobile/core'; import * as i0 from "@angular/core"; export class PickerService extends PopupService { constructor() { super(...arguments); this.comRef = null; this.defaultOptions = new PickerOptions(); } showPicker(config = this.defaultOptions, confirmCallback, cancelCallback) { const options = new PickerOptions(); Object.assign(options, config, { hidePicker: (event) => { this.hidePicker(); }, confirm: (event) => { if (confirmCallback) { confirmCallback(event); } }, cancel: () => { if (cancelCallback) { cancelCallback(); } } }); const childInjector = Injector.create([ { provide: PickerOptions, useValue: options } ]); this.comRef = this.showPopup(PickerComponent, childInjector); return this.comRef && this.comRef.instance; } hidePicker() { this.hidePopup(); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PickerService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); } static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PickerService }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PickerService, decorators: [{ type: Injectable }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9jb21wb25lbnRzL3BpY2tlci9waWNrZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBa0IsYUFBYSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUd6RCxNQUFNLE9BQU8sYUFBYyxTQUFRLFlBQVk7SUFEL0M7O1FBRUUsV0FBTSxHQUFrQyxJQUFJLENBQUM7UUFDN0MsbUJBQWMsR0FBa0IsSUFBSSxhQUFhLEVBQUUsQ0FBQztLQXFDckQ7SUFuQ0MsVUFBVSxDQUNSLFNBQXdCLElBQUksQ0FBQyxjQUFjLEVBQzNDLGVBQWdDLEVBQ2hDLGNBQStCO1FBRS9CLE1BQU0sT0FBTyxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7UUFDcEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFO1lBQzdCLFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBUSxFQUFFO2dCQUMxQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsQ0FBQztZQUNELE9BQU8sRUFBRSxDQUFDLEtBQUssRUFBUSxFQUFFO2dCQUN2QixJQUFJLGVBQWUsRUFBRTtvQkFDbkIsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2lCQUN4QjtZQUNILENBQUM7WUFDRCxNQUFNLEVBQUUsR0FBUyxFQUFFO2dCQUNqQixJQUFJLGNBQWMsRUFBRTtvQkFDbEIsY0FBYyxFQUFFLENBQUM7aUJBQ2xCO1lBQ0gsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUVILE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDcEM7Z0JBQ0UsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFFBQVEsRUFBRSxPQUFPO2FBQ2xCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUM3RCxPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUM7SUFDN0MsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQzs4R0F0Q1UsYUFBYTtrSEFBYixhQUFhOzsyRkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFBpY2tlckNhbGxCYWNrLCBQaWNrZXJPcHRpb25zIH0gZnJvbSAnLi9waWNrZXItb3B0aW9ucy5wcm92aWRlcic7XG5pbXBvcnQgeyBQb3B1cFNlcnZpY2UgfSBmcm9tICduZy16b3Jyby1hbnRkLW1vYmlsZS9jb3JlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBpY2tlclNlcnZpY2UgZXh0ZW5kcyBQb3B1cFNlcnZpY2Uge1xuICBjb21SZWY6IENvbXBvbmVudFJlZjxQaWNrZXJDb21wb25lbnQ+ID0gbnVsbDtcbiAgZGVmYXVsdE9wdGlvbnM6IFBpY2tlck9wdGlvbnMgPSBuZXcgUGlja2VyT3B0aW9ucygpO1xuXG4gIHNob3dQaWNrZXIoXG4gICAgY29uZmlnOiBQaWNrZXJPcHRpb25zID0gdGhpcy5kZWZhdWx0T3B0aW9ucyxcbiAgICBjb25maXJtQ2FsbGJhY2s/OiBQaWNrZXJDYWxsQmFjayxcbiAgICBjYW5jZWxDYWxsYmFjaz86IFBpY2tlckNhbGxCYWNrXG4gICk6IGFueSB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IG5ldyBQaWNrZXJPcHRpb25zKCk7XG4gICAgT2JqZWN0LmFzc2lnbihvcHRpb25zLCBjb25maWcsIHtcbiAgICAgIGhpZGVQaWNrZXI6IChldmVudCk6IHZvaWQgPT4ge1xuICAgICAgICB0aGlzLmhpZGVQaWNrZXIoKTtcbiAgICAgIH0sXG4gICAgICBjb25maXJtOiAoZXZlbnQpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKGNvbmZpcm1DYWxsYmFjaykge1xuICAgICAgICAgIGNvbmZpcm1DYWxsYmFjayhldmVudCk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBjYW5jZWw6ICgpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKGNhbmNlbENhbGxiYWNrKSB7XG4gICAgICAgICAgY2FuY2VsQ2FsbGJhY2soKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3QgY2hpbGRJbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZShbXG4gICAgICB7XG4gICAgICAgIHByb3ZpZGU6IFBpY2tlck9wdGlvbnMsXG4gICAgICAgIHVzZVZhbHVlOiBvcHRpb25zXG4gICAgICB9XG4gICAgXSk7XG4gICAgdGhpcy5jb21SZWYgPSB0aGlzLnNob3dQb3B1cChQaWNrZXJDb21wb25lbnQsIGNoaWxkSW5qZWN0b3IpO1xuICAgIHJldHVybiB0aGlzLmNvbVJlZiAmJiB0aGlzLmNvbVJlZi5pbnN0YW5jZTtcbiAgfVxuXG4gIGhpZGVQaWNrZXIoKTogdm9pZCB7XG4gICAgdGhpcy5oaWRlUG9wdXAoKTtcbiAgfVxufVxuIl19