ngx-modialog-7
Version:
Modal / Dialog for Angular
267 lines (258 loc) • 8.47 kB
JavaScript
import { __extends } from 'tslib';
import { Injectable, NgModule } from '@angular/core';
import { DROP_IN_TYPE, ModalOpenContext, arrayUnion, ModalOpenContextBuilder, Overlay, Modal as Modal$1 } 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 {?} */
var DEFAULT_SETTERS = [
'promptDefault'
];
var JSNativeModalContext = /** @class */ (function (_super) {
__extends(JSNativeModalContext, _super);
function JSNativeModalContext() {
return _super !== null && _super.apply(this, arguments) || this;
}
/**
* @return {?}
*/
JSNativeModalContext.prototype.normalize = /**
* @return {?}
*/
function () {
if (!this.message)
this.message = '';
if (this.dialogType === undefined)
this.dialogType = DROP_IN_TYPE.alert;
};
return JSNativeModalContext;
}(ModalOpenContext));
if (false) {
/** @type {?} */
JSNativeModalContext.prototype.promptDefault;
/** @type {?} */
JSNativeModalContext.prototype.dialogType;
}
/**
* @template T
*/
var /**
* @template T
*/
JSNativeModalContextBuilder = /** @class */ (function (_super) {
__extends(JSNativeModalContextBuilder, _super);
function JSNativeModalContextBuilder(defaultValues, initialSetters, baseType) {
if (defaultValues === void 0) { defaultValues = undefined; }
if (initialSetters === void 0) { initialSetters = undefined; }
if (baseType === void 0) { baseType = undefined; }
return _super.call(this, defaultValues || (/** @type {?} */ ({})), arrayUnion(DEFAULT_SETTERS, initialSetters || []), baseType || (/** @type {?} */ (JSNativeModalContext))
// https://github.com/Microsoft/TypeScript/issues/7234
) || this;
}
return JSNativeModalContextBuilder;
}(ModalOpenContextBuilder));
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
*/
var JSNativeModalRenderer = /** @class */ (function () {
function JSNativeModalRenderer() {
}
/**
* @param {?} dialog
* @param {?} vcRef
* @return {?}
*/
JSNativeModalRenderer.prototype.render = /**
* @param {?} dialog
* @param {?} vcRef
* @return {?}
*/
function (dialog, vcRef) {
/** @type {?} */
var 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 {?}
*/
function () {
});
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 }
];
return JSNativeModalRenderer;
}());
/**
* @fileoverview added by tsickle
* Generated from: lib/presets/js-native-preset.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var JSNativePresetBuilder = /** @class */ (function (_super) {
__extends(JSNativePresetBuilder, _super);
function JSNativePresetBuilder(modal, dialogType) {
return _super.call(this, (/** @type {?} */ ({ modal: modal, dialogType: dialogType }))) || this;
}
/**
* 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 {?}
*/
JSNativePresetBuilder.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,
renderer: new JSNativeModalRenderer(),
viewContainer: viewContainer
};
return context.modal.open(context.component, overlayConfig);
};
return JSNativePresetBuilder;
}(JSNativeModalContextBuilder));
/**
* @fileoverview added by tsickle
* Generated from: lib/modal.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var Modal = /** @class */ (function (_super) {
__extends(Modal, _super);
function Modal(overlay) {
return _super.call(this, overlay) || this;
}
/**
* @return {?}
*/
Modal.prototype.alert = /**
* @return {?}
*/
function () {
return new JSNativePresetBuilder(this, DROP_IN_TYPE.alert);
};
/**
* @return {?}
*/
Modal.prototype.prompt = /**
* @return {?}
*/
function () {
return new JSNativePresetBuilder(this, DROP_IN_TYPE.prompt);
};
/**
* @return {?}
*/
Modal.prototype.confirm = /**
* @return {?}
*/
function () {
return new JSNativePresetBuilder(this, DROP_IN_TYPE.confirm);
};
/**
* @protected
* @param {?} dialogRef
* @param {?} type
* @return {?}
*/
Modal.prototype.create = /**
* @protected
* @param {?} dialogRef
* @param {?} type
* @return {?}
*/
function (dialogRef, type) {
return dialogRef;
};
Modal.decorators = [
{ type: Injectable }
];
/** @nocollapse */
Modal.ctorParameters = function () { return [
{ type: Overlay }
]; };
return Modal;
}(Modal$1));
/**
* @fileoverview added by tsickle
* Generated from: lib/js-native.module.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
var providers = [
{ provide: Modal$1, useClass: Modal },
{ provide: Modal, useClass: Modal }
];
var JSNativeModalModule = /** @class */ (function () {
function JSNativeModalModule() {
}
/**
* @return {?}
*/
JSNativeModalModule.getProviders = /**
* @return {?}
*/
function () {
return providers;
};
JSNativeModalModule.decorators = [
{ type: NgModule, args: [{
providers: providers
},] }
];
return JSNativeModalModule;
}());
/**
* @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