ngx-modialog-7
Version:
Modal / Dialog for Angular
110 lines • 8.42 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/models/modal-open-context.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { __extends } from "tslib";
import { Modal } from '../providers/index';
import { ModalContext, ModalContextBuilder } from './modal-context';
import { arrayUnion } from '../framework/utils';
/** @type {?} */
var DEFAULT_SETTERS = [
'component'
];
var ModalOpenContext = /** @class */ (function (_super) {
__extends(ModalOpenContext, _super);
function ModalOpenContext() {
return _super !== null && _super.apply(this, arguments) || this;
}
return ModalOpenContext;
}(ModalContext));
export { ModalOpenContext };
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
*/
var /**
* 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
*/
ModalOpenContextBuilder = /** @class */ (function (_super) {
__extends(ModalOpenContextBuilder, _super);
function ModalOpenContextBuilder(defaultValues, initialSetters, baseType) {
return _super.call(this, defaultValues || (/** @type {?} */ ({})), arrayUnion(DEFAULT_SETTERS, initialSetters || []), baseType) || this;
}
/**
* Hook to alter config and return bindings.
* @param config
*/
/**
* Hook to alter config and return bindings.
* @protected
* @param {?} config
* @return {?}
*/
ModalOpenContextBuilder.prototype.$$beforeOpen = /**
* Hook to alter config and return bindings.
* @protected
* @param {?} config
* @return {?}
*/
function (config) { };
/**
* Open a modal window based on the configuration of this config instance.
* @param viewContainer If set opens the modal inside the supplied viewContainer
*/
/**
* Open a modal window based on the configuration of this config instance.
* @param {?=} viewContainer If set opens the modal inside the supplied viewContainer
* @return {?}
*/
ModalOpenContextBuilder.prototype.open = /**
* Open a modal window based on the configuration of this config instance.
* @param {?=} viewContainer If set opens the modal inside the supplied viewContainer
* @return {?}
*/
function (viewContainer) {
/** @type {?} */
var context = this.toJSON();
if (!(context.modal instanceof Modal)) {
return (/** @type {?} */ (Promise.reject(new Error('Configuration Error: modal service not set.'))));
}
this.$$beforeOpen(context);
/** @type {?} */
var overlayConfig = {
context: context,
viewContainer: viewContainer
};
return context.modal.open(context.component, overlayConfig);
};
return ModalOpenContextBuilder;
}(ModalContextBuilder));
/**
* 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 { ModalOpenContextBuilder };
if (false) {
/**
* A Class for the footer container.
* Default: modal-footer
* @type {?}
*/
ModalOpenContextBuilder.prototype.component;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtb3Blbi1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LW1vZGlhbG9nLTcvIiwic291cmNlcyI6WyJsaWIvbW9kZWxzL21vZGFsLW9wZW4tY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFJQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3BFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7SUFFMUMsZUFBZSxHQUFHO0lBQ3RCLFdBQVc7Q0FDWjtBQUVEO0lBQXNDLG9DQUFZO0lBQWxEOztJQUdBLENBQUM7SUFBRCx1QkFBQztBQUFELENBQUMsQUFIRCxDQUFzQyxZQUFZLEdBR2pEOzs7O0lBRkMscUNBQWU7O0lBQ2YsaUNBQWE7Ozs7Ozs7OztBQVFmOzs7Ozs7OztJQUMwQiwyQ0FBc0I7SUFROUMsaUNBQVksYUFBaUIsRUFDakIsY0FBeUIsRUFDekIsUUFBc0I7ZUFDaEMsa0JBQ0UsYUFBYSxJQUFJLG1CQUFLLEVBQUUsRUFBQSxFQUN4QixVQUFVLENBQVMsZUFBZSxFQUFFLGNBQWMsSUFBSSxFQUFFLENBQUMsRUFDekQsUUFBUSxDQUNUO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRzs7Ozs7OztJQUNPLDhDQUFZOzs7Ozs7SUFBdEIsVUFBdUIsTUFBUyxJQUFVLENBQUM7SUFFM0M7OztPQUdHOzs7Ozs7SUFDSCxzQ0FBSTs7Ozs7SUFBSixVQUFLLGFBQXlCOztZQUN0QixPQUFPLEdBQU0sSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUVoQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxZQUFZLEtBQUssQ0FBQyxFQUFFO1lBQ3JDLE9BQU8sbUJBQUssT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDLEVBQUEsQ0FBQztTQUN0RjtRQUVELElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7O1lBRXJCLGFBQWEsR0FBa0I7WUFDbkMsT0FBTyxFQUFFLE9BQU87WUFDaEIsYUFBYSxFQUFFLGFBQWE7U0FDN0I7UUFFRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUNILDhCQUFDO0FBQUQsQ0FBQyxBQTdDRCxDQUMwQixtQkFBbUIsR0E0QzVDOzs7Ozs7Ozs7Ozs7Ozs7SUF0Q0MsNENBQXVEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVzb2x2ZWRSZWZsZWN0aXZlUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRmx1ZW50QXNzaWduTWV0aG9kIH0gZnJvbSAnLi4vZnJhbWV3b3JrL2ZsdWVudC1hc3NpZ24nO1xuaW1wb3J0IHsgTW9kYWxDb21wb25lbnQsIE92ZXJsYXlDb25maWcsIFdpZGVWQ1JlZiB9IGZyb20gJy4vdG9rZW5zJztcbmltcG9ydCB7IE1vZGFsIH0gZnJvbSAnLi4vcHJvdmlkZXJzL2luZGV4JztcbmltcG9ydCB7IERpYWxvZ1JlZiB9IGZyb20gJy4vZGlhbG9nLXJlZic7XG5pbXBvcnQgeyBNb2RhbENvbnRleHQsIE1vZGFsQ29udGV4dEJ1aWxkZXIgfSBmcm9tICcuL21vZGFsLWNvbnRleHQnO1xuaW1wb3J0IHsgTW9kYWxDb250cm9sbGluZ0NvbnRleHRCdWlsZGVyIH0gZnJvbSAnLi9vdmVybGF5LWNvbnRleHQnO1xuXG5pbXBvcnQgeyBhcnJheVVuaW9uIH0gZnJvbSAnLi4vZnJhbWV3b3JrL3V0aWxzJztcblxuY29uc3QgREVGQVVMVF9TRVRURVJTID0gW1xuICAnY29tcG9uZW50J1xuXTtcblxuZXhwb3J0IGNsYXNzIE1vZGFsT3BlbkNvbnRleHQgZXh0ZW5kcyBNb2RhbENvbnRleHQge1xuICBjb21wb25lbnQ6IGFueTtcbiAgbW9kYWw6IE1vZGFsO1xufVxuXG4vKipcbiAqIEEgTW9kYWwgQ29udGV4dCB0aGF0IGtub3dzIGFib3V0IHRoZSBtb2RhbCBzZXJ2aWNlLCBhbmQgc28gY2FuIG9wZW4gYSBtb2RhbCB3aW5kb3cgb24gZGVtYW5kLlxuICogVXNlIHRoZSBmbHVlbnQgQVBJIHRvIGNvbmZpZ3VyZSB0aGUgcHJlc2V0IGFuZCB0aGVuIGludm9rZSB0aGUgJ29wZW4nIG1ldGhvZCB0byBvcGVuIGEgbW9kYWxcbiAqIGJhc2VkIG9uIHRoZSBjb250ZXh0LlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTW9kYWxPcGVuQ29udGV4dEJ1aWxkZXI8VCBleHRlbmRzIE1vZGFsT3BlbkNvbnRleHQ+XG4gICAgICAgICAgICAgICAgICBleHRlbmRzIE1vZGFsQ29udGV4dEJ1aWxkZXI8VD4gaW1wbGVtZW50cyBNb2RhbENvbnRyb2xsaW5nQ29udGV4dEJ1aWxkZXI8VD4ge1xuXG4gIC8qKlxuICAgKiBBIENsYXNzIGZvciB0aGUgZm9vdGVyIGNvbnRhaW5lci5cbiAgICogRGVmYXVsdDogbW9kYWwtZm9vdGVyXG4gICAqL1xuICBjb21wb25lbnQ6IEZsdWVudEFzc2lnbk1ldGhvZDxNb2RhbENvbXBvbmVudDxUPiwgdGhpcz47XG5cbiAgY29uc3RydWN0b3IoZGVmYXVsdFZhbHVlcz86IFQsXG4gICAgICAgICAgICAgIGluaXRpYWxTZXR0ZXJzPzogc3RyaW5nW10sXG4gICAgICAgICAgICAgIGJhc2VUeXBlPzogbmV3ICgpID0+IFQpIHtcbiAgICBzdXBlcihcbiAgICAgIGRlZmF1bHRWYWx1ZXMgfHwgPGFueT57fSxcbiAgICAgIGFycmF5VW5pb248c3RyaW5nPihERUZBVUxUX1NFVFRFUlMsIGluaXRpYWxTZXR0ZXJzIHx8IFtdKSxcbiAgICAgIGJhc2VUeXBlXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBIb29rIHRvIGFsdGVyIGNvbmZpZyBhbmQgcmV0dXJuIGJpbmRpbmdzLlxuICAgKiBAcGFyYW0gY29uZmlnXG4gICAqL1xuICBwcm90ZWN0ZWQgJCRiZWZvcmVPcGVuKGNvbmZpZzogVCk6IHZvaWQgeyB9XG5cbiAgLyoqXG4gICAqIE9wZW4gYSBtb2RhbCB3aW5kb3cgYmFzZWQgb24gdGhlIGNvbmZpZ3VyYXRpb24gb2YgdGhpcyBjb25maWcgaW5zdGFuY2UuXG4gICAqIEBwYXJhbSB2aWV3Q29udGFpbmVyIElmIHNldCBvcGVucyB0aGUgbW9kYWwgaW5zaWRlIHRoZSBzdXBwbGllZCB2aWV3Q29udGFpbmVyXG4gICAqL1xuICBvcGVuKHZpZXdDb250YWluZXI/OiBXaWRlVkNSZWYpOiBEaWFsb2dSZWY8VD4ge1xuICAgIGNvbnN0IGNvbnRleHQ6IFQgPSB0aGlzLnRvSlNPTigpO1xuXG4gICAgaWYgKCEoY29udGV4dC5tb2RhbCBpbnN0YW5jZW9mIE1vZGFsKSkge1xuICAgICAgcmV0dXJuIDxhbnk+UHJvbWlzZS5yZWplY3QobmV3IEVycm9yKCdDb25maWd1cmF0aW9uIEVycm9yOiBtb2RhbCBzZXJ2aWNlIG5vdCBzZXQuJykpO1xuICAgIH1cblxuICAgIHRoaXMuJCRiZWZvcmVPcGVuKGNvbnRleHQpO1xuXG4gICAgY29uc3Qgb3ZlcmxheUNvbmZpZzogT3ZlcmxheUNvbmZpZyA9IHtcbiAgICAgIGNvbnRleHQ6IGNvbnRleHQsXG4gICAgICB2aWV3Q29udGFpbmVyOiB2aWV3Q29udGFpbmVyXG4gICAgfTtcblxuICAgIHJldHVybiBjb250ZXh0Lm1vZGFsLm9wZW4oY29udGV4dC5jb21wb25lbnQsIG92ZXJsYXlDb25maWcpO1xuICB9XG59XG4iXX0=