UNPKG

ngx-modialog-7

Version:
72 lines 6.72 kB
/** * @fileoverview added by tsickle * Generated from: lib/models/modal-open-context.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Modal } from '../providers/index'; import { ModalContext, ModalContextBuilder } from './modal-context'; import { arrayUnion } from '../framework/utils'; /** @type {?} */ const DEFAULT_SETTERS = [ 'component' ]; export class ModalOpenContext extends ModalContext { } if (false) { /** @type {?} */ ModalOpenContext.prototype.component; /** @type {?} */ ModalOpenContext.prototype.modal; } /** * A Modal Context that knows about the modal service, and so can open a modal window on demand. * Use the fluent API to configure the preset and then invoke the 'open' method to open a modal * based on the context. * @abstract * @template T */ export class ModalOpenContextBuilder extends ModalContextBuilder { /** * @param {?=} defaultValues * @param {?=} initialSetters * @param {?=} baseType */ constructor(defaultValues, initialSetters, baseType) { super(defaultValues || (/** @type {?} */ ({})), arrayUnion(DEFAULT_SETTERS, initialSetters || []), baseType); } /** * Hook to alter config and return bindings. * @protected * @param {?} config * @return {?} */ $$beforeOpen(config) { } /** * 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 {?} */ const context = this.toJSON(); if (!(context.modal instanceof Modal)) { return (/** @type {?} */ (Promise.reject(new Error('Configuration Error: modal service not set.')))); } this.$$beforeOpen(context); /** @type {?} */ const overlayConfig = { context: context, viewContainer: viewContainer }; return context.modal.open(context.component, overlayConfig); } } if (false) { /** * A Class for the footer container. * Default: modal-footer * @type {?} */ ModalOpenContextBuilder.prototype.component; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtb3Blbi1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LW1vZGlhbG9nLTcvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL21vZGFsLW9wZW4tY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUlBLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHcEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztNQUUxQyxlQUFlLEdBQUc7SUFDdEIsV0FBVztDQUNaO0FBRUQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFlBQVk7Q0FHakQ7OztJQUZDLHFDQUFlOztJQUNmLGlDQUFhOzs7Ozs7Ozs7QUFRZixNQUFNLE9BQWdCLHVCQUNKLFNBQVEsbUJBQXNCOzs7Ozs7SUFROUMsWUFBWSxhQUFpQixFQUNqQixjQUF5QixFQUN6QixRQUFzQjtRQUNoQyxLQUFLLENBQ0gsYUFBYSxJQUFJLG1CQUFLLEVBQUUsRUFBQSxFQUN4QixVQUFVLENBQVMsZUFBZSxFQUFFLGNBQWMsSUFBSSxFQUFFLENBQUMsRUFDekQsUUFBUSxDQUNULENBQUM7SUFDSixDQUFDOzs7Ozs7O0lBTVMsWUFBWSxDQUFDLE1BQVMsSUFBVSxDQUFDOzs7Ozs7SUFNM0MsSUFBSSxDQUFDLGFBQXlCOztjQUN0QixPQUFPLEdBQU0sSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUVoQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxZQUFZLEtBQUssQ0FBQyxFQUFFO1lBQ3JDLE9BQU8sbUJBQUssT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDLEVBQUEsQ0FBQztTQUN0RjtRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7O2NBRXJCLGFBQWEsR0FBa0I7WUFDbkMsT0FBTyxFQUFFLE9BQU87WUFDaEIsYUFBYSxFQUFFLGFBQWE7U0FDN0I7UUFFRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDOUQsQ0FBQztDQUNGOzs7Ozs7O0lBdENDLDRDQUF1RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc29sdmVkUmVmbGVjdGl2ZVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZsdWVudEFzc2lnbk1ldGhvZCB9IGZyb20gJy4uL2ZyYW1ld29yay9mbHVlbnQtYXNzaWduJztcbmltcG9ydCB7IE1vZGFsQ29tcG9uZW50LCBPdmVybGF5Q29uZmlnLCBXaWRlVkNSZWYgfSBmcm9tICcuL3Rva2Vucyc7XG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gJy4uL3Byb3ZpZGVycy9pbmRleCc7XG5pbXBvcnQgeyBEaWFsb2dSZWYgfSBmcm9tICcuL2RpYWxvZy1yZWYnO1xuaW1wb3J0IHsgTW9kYWxDb250ZXh0LCBNb2RhbENvbnRleHRCdWlsZGVyIH0gZnJvbSAnLi9tb2RhbC1jb250ZXh0JztcbmltcG9ydCB7IE1vZGFsQ29udHJvbGxpbmdDb250ZXh0QnVpbGRlciB9IGZyb20gJy4vb3ZlcmxheS1jb250ZXh0JztcblxuaW1wb3J0IHsgYXJyYXlVbmlvbiB9IGZyb20gJy4uL2ZyYW1ld29yay91dGlscyc7XG5cbmNvbnN0IERFRkFVTFRfU0VUVEVSUyA9IFtcbiAgJ2NvbXBvbmVudCdcbl07XG5cbmV4cG9ydCBjbGFzcyBNb2RhbE9wZW5Db250ZXh0IGV4dGVuZHMgTW9kYWxDb250ZXh0IHtcbiAgY29tcG9uZW50OiBhbnk7XG4gIG1vZGFsOiBNb2RhbDtcbn1cblxuLyoqXG4gKiBBIE1vZGFsIENvbnRleHQgdGhhdCBrbm93cyBhYm91dCB0aGUgbW9kYWwgc2VydmljZSwgYW5kIHNvIGNhbiBvcGVuIGEgbW9kYWwgd2luZG93IG9uIGRlbWFuZC5cbiAqIFVzZSB0aGUgZmx1ZW50IEFQSSB0byBjb25maWd1cmUgdGhlIHByZXNldCBhbmQgdGhlbiBpbnZva2UgdGhlICdvcGVuJyBtZXRob2QgdG8gb3BlbiBhIG1vZGFsXG4gKiBiYXNlZCBvbiB0aGUgY29udGV4dC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE1vZGFsT3BlbkNvbnRleHRCdWlsZGVyPFQgZXh0ZW5kcyBNb2RhbE9wZW5Db250ZXh0PlxuICAgICAgICAgICAgICAgICAgZXh0ZW5kcyBNb2RhbENvbnRleHRCdWlsZGVyPFQ+IGltcGxlbWVudHMgTW9kYWxDb250cm9sbGluZ0NvbnRleHRCdWlsZGVyPFQ+IHtcblxuICAvKipcbiAgICogQSBDbGFzcyBmb3IgdGhlIGZvb3RlciBjb250YWluZXIuXG4gICAqIERlZmF1bHQ6IG1vZGFsLWZvb3RlclxuICAgKi9cbiAgY29tcG9uZW50OiBGbHVlbnRBc3NpZ25NZXRob2Q8TW9kYWxDb21wb25lbnQ8VD4sIHRoaXM+O1xuXG4gIGNvbnN0cnVjdG9yKGRlZmF1bHRWYWx1ZXM/OiBULFxuICAgICAgICAgICAgICBpbml0aWFsU2V0dGVycz86IHN0cmluZ1tdLFxuICAgICAgICAgICAgICBiYXNlVHlwZT86IG5ldyAoKSA9PiBUKSB7XG4gICAgc3VwZXIoXG4gICAgICBkZWZhdWx0VmFsdWVzIHx8IDxhbnk+e30sXG4gICAgICBhcnJheVVuaW9uPHN0cmluZz4oREVGQVVMVF9TRVRURVJTLCBpbml0aWFsU2V0dGVycyB8fCBbXSksXG4gICAgICBiYXNlVHlwZVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogSG9vayB0byBhbHRlciBjb25maWcgYW5kIHJldHVybiBiaW5kaW5ncy5cbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgcHJvdGVjdGVkICQkYmVmb3JlT3Blbihjb25maWc6IFQpOiB2b2lkIHsgfVxuXG4gIC8qKlxuICAgKiBPcGVuIGEgbW9kYWwgd2luZG93IGJhc2VkIG9uIHRoZSBjb25maWd1cmF0aW9uIG9mIHRoaXMgY29uZmlnIGluc3RhbmNlLlxuICAgKiBAcGFyYW0gdmlld0NvbnRhaW5lciBJZiBzZXQgb3BlbnMgdGhlIG1vZGFsIGluc2lkZSB0aGUgc3VwcGxpZWQgdmlld0NvbnRhaW5lclxuICAgKi9cbiAgb3Blbih2aWV3Q29udGFpbmVyPzogV2lkZVZDUmVmKTogRGlhbG9nUmVmPFQ+IHtcbiAgICBjb25zdCBjb250ZXh0OiBUID0gdGhpcy50b0pTT04oKTtcblxuICAgIGlmICghKGNvbnRleHQubW9kYWwgaW5zdGFuY2VvZiBNb2RhbCkpIHtcbiAgICAgIHJldHVybiA8YW55PlByb21pc2UucmVqZWN0KG5ldyBFcnJvcignQ29uZmlndXJhdGlvbiBFcnJvcjogbW9kYWwgc2VydmljZSBub3Qgc2V0LicpKTtcbiAgICB9XG5cbiAgICB0aGlzLiQkYmVmb3JlT3Blbihjb250ZXh0KTtcblxuICAgIGNvbnN0IG92ZXJsYXlDb25maWc6IE92ZXJsYXlDb25maWcgPSB7XG4gICAgICBjb250ZXh0OiBjb250ZXh0LFxuICAgICAgdmlld0NvbnRhaW5lcjogdmlld0NvbnRhaW5lclxuICAgIH07XG5cbiAgICByZXR1cm4gY29udGV4dC5tb2RhbC5vcGVuKGNvbnRleHQuY29tcG9uZW50LCBvdmVybGF5Q29uZmlnKTtcbiAgfVxufVxuIl19