UNPKG

ngx-modialog-7

Version:
97 lines 7.6 kB
/** * @fileoverview added by tsickle * Generated from: lib/providers/modal.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @param {?} dropInName * @return {?} */ export function unsupportedDropInError(dropInName) { return new Error(`Unsupported Drop-In ${dropInName}`); } /** * @abstract */ export class Modal { /** * @param {?} overlay */ constructor(overlay) { this.overlay = overlay; } /** * @return {?} */ alert() { throw unsupportedDropInError('alert'); } /** * @return {?} */ prompt() { throw unsupportedDropInError('prompt'); } /** * @return {?} */ confirm() { throw unsupportedDropInError('confirm'); } /** * Opens a modal window inside an existing component. * @param {?} content The content to display, either string, template ref or a component. * @param {?=} config Additional settings. * @return {?} */ open(content, config) { config = config || (/** @type {?} */ ({})); /** @type {?} */ const dialogs = this.overlay.open(config, this.constructor); if (dialogs.length > 1) { console.warn(`Attempt to open more then 1 overlay detected. Multiple modal copies are not supported at the moment, only the first viewContainer will display.`); } // TODO: Currently supporting 1 view container, hence working on dialogs[0]. // upgrade to multiple containers. return this.create(dialogs[0], content); } /** * @protected * @template T * @param {?} dialogRef * @param {?} BackdropComponent * @return {?} */ createBackdrop(dialogRef, BackdropComponent) { return dialogRef.overlayRef.instance.addComponent(BackdropComponent); } /** * @protected * @template T * @param {?} dialogRef * @param {?} ContainerComponent * @param {?} content * @return {?} */ createContainer(dialogRef, ContainerComponent, content) { /** @type {?} */ const nodes = dialogRef.overlayRef.instance.getProjectables(content); return dialogRef.overlayRef.instance.addComponent(ContainerComponent, nodes); } } if (false) { /** @type {?} */ Modal.prototype.overlay; /** * A Hook that enables derived classes to add content to the overlay. * @abstract * @protected * @param {?} dialogRef * @param {?} type * @return {?} */ Modal.prototype.create = function (dialogRef, type) { }; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtbW9kaWFsb2ctNy8iLCJzb3VyY2VzIjpbImxpYi9wcm92aWRlcnMvbW9kYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBUUEsTUFBTSxVQUFVLHNCQUFzQixDQUFDLFVBQWtCO0lBQ3ZELE9BQU8sSUFBSSxLQUFLLENBQUMsdUJBQXVCLFVBQVUsRUFBRSxDQUFDLENBQUM7QUFDeEQsQ0FBQzs7OztBQUVELE1BQU0sT0FBZ0IsS0FBSzs7OztJQUN6QixZQUFtQixPQUFnQjtRQUFoQixZQUFPLEdBQVAsT0FBTyxDQUFTO0lBQ25DLENBQUM7Ozs7SUFHRCxLQUFLO1FBQ0gsTUFBTSxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDOzs7O0lBRUQsTUFBTTtRQUNKLE1BQU0sc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDekMsQ0FBQzs7OztJQUVELE9BQU87UUFDTCxNQUFNLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Ozs7Ozs7SUFPRCxJQUFJLENBQUMsT0FBeUIsRUFBRSxNQUFzQjtRQUNwRCxNQUFNLEdBQUcsTUFBTSxJQUFJLG1CQUFBLEVBQUUsRUFBTyxDQUFDOztjQUN2QixPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUM7UUFFM0QsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN0QixPQUFPLENBQUMsSUFBSSxDQUFDOztpREFFOEIsQ0FBQyxDQUFDO1NBQzlDO1FBQ0QsNkVBQTZFO1FBQzdFLHlDQUF5QztRQUN6QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzFDLENBQUM7Ozs7Ozs7O0lBVVMsY0FBYyxDQUFJLFNBQXlCLEVBQUUsaUJBQTJCO1FBQ2hGLE9BQU8sU0FBUyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFJLGlCQUFpQixDQUFDLENBQUM7SUFDMUUsQ0FBQzs7Ozs7Ozs7O0lBRVMsZUFBZSxDQUN2QixTQUF5QixFQUN6QixrQkFBNEIsRUFDNUIsT0FBeUI7O2NBRW5CLEtBQUssR0FBVSxTQUFTLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDO1FBQzNFLE9BQU8sU0FBUyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFJLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xGLENBQUM7Q0FFRjs7O0lBeERhLHdCQUF1Qjs7Ozs7Ozs7O0lBd0NuQyx3REFBNkYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJy4uL292ZXJsYXkvaW5kZXgnO1xuaW1wb3J0IHsgQ2xhc3MgfSBmcm9tICcuLi9mcmFtZXdvcmsvdXRpbHMnO1xuaW1wb3J0IHsgT3ZlcmxheUNvbmZpZywgQ29udGFpbmVyQ29udGVudCB9IGZyb20gJy4uL21vZGVscy90b2tlbnMnO1xuaW1wb3J0IHsgRGlhbG9nUmVmIH0gZnJvbSAnLi4vbW9kZWxzL2RpYWxvZy1yZWYnO1xuaW1wb3J0IHsgTW9kYWxDb250cm9sbGluZ0NvbnRleHRCdWlsZGVyIH0gZnJvbSAnLi4vbW9kZWxzL292ZXJsYXktY29udGV4dCc7XG5cbmV4cG9ydCBmdW5jdGlvbiB1bnN1cHBvcnRlZERyb3BJbkVycm9yKGRyb3BJbk5hbWU6IHN0cmluZyk6IEVycm9yIHtcbiAgcmV0dXJuIG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgRHJvcC1JbiAke2Ryb3BJbk5hbWV9YCk7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNb2RhbCB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBvdmVybGF5OiBPdmVybGF5KSB7XG4gIH1cblxuXG4gIGFsZXJ0KCk6IE1vZGFsQ29udHJvbGxpbmdDb250ZXh0QnVpbGRlcjxhbnk+IHtcbiAgICB0aHJvdyB1bnN1cHBvcnRlZERyb3BJbkVycm9yKCdhbGVydCcpO1xuICB9XG5cbiAgcHJvbXB0KCk6IE1vZGFsQ29udHJvbGxpbmdDb250ZXh0QnVpbGRlcjxhbnk+IHtcbiAgICB0aHJvdyB1bnN1cHBvcnRlZERyb3BJbkVycm9yKCdwcm9tcHQnKTtcbiAgfVxuXG4gIGNvbmZpcm0oKTogTW9kYWxDb250cm9sbGluZ0NvbnRleHRCdWlsZGVyPGFueT4ge1xuICAgIHRocm93IHVuc3VwcG9ydGVkRHJvcEluRXJyb3IoJ2NvbmZpcm0nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhIG1vZGFsIHdpbmRvdyBpbnNpZGUgYW4gZXhpc3RpbmcgY29tcG9uZW50LlxuICAgKiBAcGFyYW0gY29udGVudCBUaGUgY29udGVudCB0byBkaXNwbGF5LCBlaXRoZXIgc3RyaW5nLCB0ZW1wbGF0ZSByZWYgb3IgYSBjb21wb25lbnQuXG4gICAqIEBwYXJhbSBjb25maWcgQWRkaXRpb25hbCBzZXR0aW5ncy5cbiAgICovXG4gIG9wZW4oY29udGVudDogQ29udGFpbmVyQ29udGVudCwgY29uZmlnPzogT3ZlcmxheUNvbmZpZyk6IERpYWxvZ1JlZjxhbnk+IHtcbiAgICBjb25maWcgPSBjb25maWcgfHwge30gYXMgYW55O1xuICAgIGNvbnN0IGRpYWxvZ3MgPSB0aGlzLm92ZXJsYXkub3Blbihjb25maWcsIHRoaXMuY29uc3RydWN0b3IpO1xuXG4gICAgaWYgKGRpYWxvZ3MubGVuZ3RoID4gMSkge1xuICAgICAgY29uc29sZS53YXJuKGBBdHRlbXB0IHRvIG9wZW4gbW9yZSB0aGVuIDEgb3ZlcmxheSBkZXRlY3RlZC5cbiAgICAgIE11bHRpcGxlIG1vZGFsIGNvcGllcyBhcmUgbm90IHN1cHBvcnRlZCBhdCB0aGUgbW9tZW50LFxuICAgICAgb25seSB0aGUgZmlyc3Qgdmlld0NvbnRhaW5lciB3aWxsIGRpc3BsYXkuYCk7XG4gICAgfVxuICAgIC8vIFRPRE86ICBDdXJyZW50bHkgc3VwcG9ydGluZyAxIHZpZXcgY29udGFpbmVyLCBoZW5jZSB3b3JraW5nIG9uIGRpYWxvZ3NbMF0uXG4gICAgLy8gICAgICAgIHVwZ3JhZGUgdG8gbXVsdGlwbGUgY29udGFpbmVycy5cbiAgICByZXR1cm4gdGhpcy5jcmVhdGUoZGlhbG9nc1swXSwgY29udGVudCk7XG4gIH1cblxuICAvKipcbiAgICogQSBIb29rIHRoYXQgZW5hYmxlcyBkZXJpdmVkIGNsYXNzZXMgdG8gYWRkIGNvbnRlbnQgdG8gdGhlIG92ZXJsYXkuXG4gICAqIEBwYXJhbSBkaWFsb2dSZWZcbiAgICogQHBhcmFtIHR5cGVcbiAgICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGUoZGlhbG9nUmVmOiBEaWFsb2dSZWY8YW55PiwgdHlwZTogQ29udGFpbmVyQ29udGVudCk6IERpYWxvZ1JlZjxhbnk+O1xuXG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUJhY2tkcm9wPFQ+KGRpYWxvZ1JlZjogRGlhbG9nUmVmPGFueT4sIEJhY2tkcm9wQ29tcG9uZW50OiBDbGFzczxUPik6IENvbXBvbmVudFJlZjxUPiB7XG4gICAgcmV0dXJuIGRpYWxvZ1JlZi5vdmVybGF5UmVmLmluc3RhbmNlLmFkZENvbXBvbmVudDxUPihCYWNrZHJvcENvbXBvbmVudCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQ29udGFpbmVyPFQ+KFxuICAgIGRpYWxvZ1JlZjogRGlhbG9nUmVmPGFueT4sXG4gICAgQ29udGFpbmVyQ29tcG9uZW50OiBDbGFzczxUPixcbiAgICBjb250ZW50OiBDb250YWluZXJDb250ZW50KTogQ29tcG9uZW50UmVmPFQ+IHtcblxuICAgIGNvbnN0IG5vZGVzOiBhbnlbXSA9IGRpYWxvZ1JlZi5vdmVybGF5UmVmLmluc3RhbmNlLmdldFByb2plY3RhYmxlcyhjb250ZW50KTtcbiAgICByZXR1cm4gZGlhbG9nUmVmLm92ZXJsYXlSZWYuaW5zdGFuY2UuYWRkQ29tcG9uZW50PFQ+KENvbnRhaW5lckNvbXBvbmVudCwgbm9kZXMpO1xuICB9XG5cbn1cbiJdfQ==