UNPKG

ngx-modialog-7

Version:
220 lines (211 loc) 6.46 kB
import { Injectable, NgModule } from '@angular/core'; import { ModalOpenContext, DROP_IN_TYPE, ModalOpenContextBuilder, arrayUnion, Modal as Modal$1, Overlay } from 'ngx-modialog-7'; /** * @fileoverview added by tsickle * Generated from: lib/modal-context.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ const DEFAULT_SETTERS = [ 'promptDefault' ]; class JSNativeModalContext extends ModalOpenContext { /** * @return {?} */ normalize() { if (!this.message) this.message = ''; if (this.dialogType === undefined) this.dialogType = DROP_IN_TYPE.alert; } } if (false) { /** @type {?} */ JSNativeModalContext.prototype.promptDefault; /** @type {?} */ JSNativeModalContext.prototype.dialogType; } /** * @template T */ class JSNativeModalContextBuilder extends ModalOpenContextBuilder { /** * @param {?=} defaultValues * @param {?=} initialSetters * @param {?=} baseType */ constructor(defaultValues = undefined, initialSetters = undefined, baseType = undefined) { super(defaultValues || (/** @type {?} */ ({})), arrayUnion(DEFAULT_SETTERS, initialSetters || []), baseType || (/** @type {?} */ (JSNativeModalContext)) // https://github.com/Microsoft/TypeScript/issues/7234 ); } } if (false) { /** * The default value for the prompt input * @type {?} */ JSNativeModalContextBuilder.prototype.promptDefault; } /** * @fileoverview added by tsickle * Generated from: lib/js-native-modal-renderer.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class JSNativeModalRenderer { /** * @param {?} dialog * @param {?} vcRef * @return {?} */ render(dialog, vcRef) { /** @type {?} */ let result; switch (dialog.context.dialogType) { case DROP_IN_TYPE.alert: window.alert(dialog.context.message); result = true; break; case DROP_IN_TYPE.prompt: result = window.prompt(dialog.context.message, dialog.context.promptDefault); break; case DROP_IN_TYPE.confirm: result = window.confirm(dialog.context.message); break; } dialog.destroy = (/** * @return {?} */ () => { }); if (result === false) { dialog.dismiss(); } else { dialog.close(result); } // we need to return ComponentRef<ModalOverlay> but a native dialog does'nt have that // so we resolve an empty promise, the user of this renderer should expect that. return (/** @type {?} */ ({})); } } JSNativeModalRenderer.decorators = [ { type: Injectable } ]; /** * @fileoverview added by tsickle * Generated from: lib/presets/js-native-preset.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class JSNativePresetBuilder extends JSNativeModalContextBuilder { /** * @param {?} modal * @param {?} dialogType */ constructor(modal, dialogType) { super((/** @type {?} */ ({ modal, dialogType }))); } /** * Open a modal window based on the configuration of this config instance. * @param {?=} viewContainer If set opens the modal inside the supplied viewContainer * @return {?} */ open(viewContainer) { /** @type {?} */ let context = this.toJSON(); if (!(context.modal instanceof Modal)) { return (/** @type {?} */ (Promise.reject(new Error('Configuration Error: modal service not set.')))); } this.$$beforeOpen(context); /** @type {?} */ let overlayConfig = { context: context, renderer: new JSNativeModalRenderer(), viewContainer: viewContainer }; return context.modal.open(context.component, overlayConfig); } } /** * @fileoverview added by tsickle * Generated from: lib/modal.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ class Modal extends Modal$1 { /** * @param {?} overlay */ constructor(overlay) { super(overlay); } /** * @return {?} */ alert() { return new JSNativePresetBuilder(this, DROP_IN_TYPE.alert); } /** * @return {?} */ prompt() { return new JSNativePresetBuilder(this, DROP_IN_TYPE.prompt); } /** * @return {?} */ confirm() { return new JSNativePresetBuilder(this, DROP_IN_TYPE.confirm); } /** * @protected * @param {?} dialogRef * @param {?} type * @return {?} */ create(dialogRef, type) { return dialogRef; } } Modal.decorators = [ { type: Injectable } ]; /** @nocollapse */ Modal.ctorParameters = () => [ { type: Overlay } ]; /** * @fileoverview added by tsickle * Generated from: lib/js-native.module.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ const providers = [ { provide: Modal$1, useClass: Modal }, { provide: Modal, useClass: Modal } ]; class JSNativeModalModule { /** * @return {?} */ static getProviders() { return providers; } } JSNativeModalModule.decorators = [ { type: NgModule, args: [{ providers },] } ]; /** * @fileoverview added by tsickle * Generated from: public_api.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @fileoverview added by tsickle * Generated from: ngx-modialog-7-plugins-js-native.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ export { JSNativeModalContext, JSNativeModalContextBuilder, JSNativeModalModule, JSNativeModalRenderer, JSNativePresetBuilder, Modal, providers }; //# sourceMappingURL=ngx-modialog-7-plugins-js-native.js.map