ngx-modialog-7
Version:
Modal / Dialog for Angular
223 lines • 11.7 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/models/dialog-ref-stack.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** @type {?} */
var BASKET_GROUP = {};
/**
* A dumb stack implementation over an array.
* @template T
*/
var /**
* A dumb stack implementation over an array.
* @template T
*/
DialogRefStack = /** @class */ (function () {
function DialogRefStack() {
this._stack = [];
this._stackMap = new Map();
}
Object.defineProperty(DialogRefStack.prototype, "length", {
get: /**
* @return {?}
*/
function () {
return this._stack.length;
},
enumerable: true,
configurable: true
});
/**
* @param {?=} result
* @return {?}
*/
DialogRefStack.prototype.closeAll = /**
* @param {?=} result
* @return {?}
*/
function (result) {
if (result === void 0) { result = null; }
for (var i = 0, len = this._stack.length; i < len; i++) {
this._stack.pop().close(result);
}
};
/**
* @param {?} dialogRef
* @param {?=} group
* @return {?}
*/
DialogRefStack.prototype.push = /**
* @param {?} dialogRef
* @param {?=} group
* @return {?}
*/
function (dialogRef, group) {
if (this._stack.indexOf(dialogRef) === -1) {
this._stack.push(dialogRef);
this._stackMap.set(dialogRef, group || BASKET_GROUP);
}
};
/**
* Push a DialogRef into the stack and manage it so when it's done
* it will automatically kick itself out of the stack.
* @param dialogRef
*/
/**
* Push a DialogRef into the stack and manage it so when it's done
* it will automatically kick itself out of the stack.
* @param {?} dialogRef
* @param {?=} group
* @return {?}
*/
DialogRefStack.prototype.pushManaged = /**
* Push a DialogRef into the stack and manage it so when it's done
* it will automatically kick itself out of the stack.
* @param {?} dialogRef
* @param {?=} group
* @return {?}
*/
function (dialogRef, group) {
var _this = this;
this.push(dialogRef, group);
dialogRef.onDestroy.subscribe((/**
* @return {?}
*/
function () { return _this.remove(dialogRef); }));
};
/**
* @return {?}
*/
DialogRefStack.prototype.pop = /**
* @return {?}
*/
function () {
/** @type {?} */
var dialogRef = this._stack.pop();
this._stackMap.delete(dialogRef);
return dialogRef;
};
/**
* Remove a DialogRef from the stack.
* @param dialogRef
*/
/**
* Remove a DialogRef from the stack.
* @param {?} dialogRef
* @return {?}
*/
DialogRefStack.prototype.remove = /**
* Remove a DialogRef from the stack.
* @param {?} dialogRef
* @return {?}
*/
function (dialogRef) {
/** @type {?} */
var idx = this.indexOf(dialogRef);
if (idx > -1) {
this._stack.splice(idx, 1);
this._stackMap.delete(dialogRef);
}
};
/**
* @param {?} index
* @return {?}
*/
DialogRefStack.prototype.index = /**
* @param {?} index
* @return {?}
*/
function (index) {
return this._stack[index];
};
/**
* @param {?} dialogRef
* @return {?}
*/
DialogRefStack.prototype.indexOf = /**
* @param {?} dialogRef
* @return {?}
*/
function (dialogRef) {
return this._stack.indexOf(dialogRef);
};
/**
* @param {?} dialogRef
* @return {?}
*/
DialogRefStack.prototype.groupOf = /**
* @param {?} dialogRef
* @return {?}
*/
function (dialogRef) {
return this._stackMap.get(dialogRef);
};
/**
* @param {?} group
* @return {?}
*/
DialogRefStack.prototype.groupBy = /**
* @param {?} group
* @return {?}
*/
function (group) {
/** @type {?} */
var arr = [];
if (group) {
this._stackMap.forEach((/**
* @param {?} value
* @param {?} key
* @return {?}
*/
function (value, key) {
if (value === group) {
arr.push(key);
}
}));
}
return arr;
};
/**
* @param {?} group
* @return {?}
*/
DialogRefStack.prototype.groupLength = /**
* @param {?} group
* @return {?}
*/
function (group) {
/** @type {?} */
var count = 0;
if (group) {
this._stackMap.forEach((/**
* @param {?} value
* @return {?}
*/
function (value) {
if (value === group) {
count++;
}
}));
}
return count;
};
return DialogRefStack;
}());
/**
* A dumb stack implementation over an array.
* @template T
*/
export { DialogRefStack };
if (false) {
/**
* @type {?}
* @private
*/
DialogRefStack.prototype._stack;
/**
* @type {?}
* @private
*/
DialogRefStack.prototype._stackMap;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXJlZi1zdGFjay5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1tb2RpYWxvZy03LyIsInNvdXJjZXMiOlsibGliL21vZGVscy9kaWFsb2ctcmVmLXN0YWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztJQUVNLFlBQVksR0FBRyxFQUFFOzs7OztBQUt2Qjs7Ozs7SUFRRTtRQUNFLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQXFCLENBQUM7SUFDaEQsQ0FBQztJQVBELHNCQUFJLGtDQUFNOzs7O1FBQVY7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQzVCLENBQUM7OztPQUFBOzs7OztJQU9ELGlDQUFROzs7O0lBQVIsVUFBUyxNQUFrQjtRQUFsQix1QkFBQSxFQUFBLGFBQWtCO1FBQ3pCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3RELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQzs7Ozs7O0lBRUQsNkJBQUk7Ozs7O0lBQUosVUFBSyxTQUF1QixFQUFFLEtBQVc7UUFDdkMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUN6QyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsS0FBSyxJQUFJLFlBQVksQ0FBQyxDQUFDO1NBQ3REO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7Ozs7Ozs7O0lBQ0gsb0NBQVc7Ozs7Ozs7SUFBWCxVQUFZLFNBQXVCLEVBQUUsS0FBVztRQUFoRCxpQkFHQztRQUZDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzVCLFNBQVMsQ0FBQyxTQUFTLENBQUMsU0FBUzs7O1FBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQXRCLENBQXNCLEVBQUMsQ0FBQztJQUM5RCxDQUFDOzs7O0lBRUQsNEJBQUc7OztJQUFIOztZQUNRLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtRQUNuQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqQyxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQ7OztPQUdHOzs7Ozs7SUFDSCwrQkFBTTs7Ozs7SUFBTixVQUFPLFNBQXVCOztZQUN4QixHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDWixJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDbEM7SUFDSCxDQUFDOzs7OztJQUVELDhCQUFLOzs7O0lBQUwsVUFBTSxLQUFhO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDOzs7OztJQUVELGdDQUFPOzs7O0lBQVAsVUFBUSxTQUF1QjtRQUM3QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7Ozs7O0lBRUQsZ0NBQU87Ozs7SUFBUCxVQUFRLFNBQXVCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQzs7Ozs7SUFFRCxnQ0FBTzs7OztJQUFQLFVBQVEsS0FBVTs7WUFDVixHQUFHLEdBQUcsRUFBRTtRQUNkLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPOzs7OztZQUFDLFVBQUMsS0FBSyxFQUFFLEdBQUc7Z0JBQ2hDLElBQUksS0FBSyxLQUFLLEtBQUssRUFBRTtvQkFDbkIsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDZjtZQUNILENBQUMsRUFBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7Ozs7O0lBRUQsb0NBQVc7Ozs7SUFBWCxVQUFZLEtBQVU7O1lBQ2hCLEtBQUssR0FBRyxDQUFDO1FBQ2IsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU87Ozs7WUFBQyxVQUFDLEtBQUs7Z0JBQzNCLElBQUksS0FBSyxLQUFLLEtBQUssRUFBRTtvQkFDbkIsS0FBSyxFQUFFLENBQUM7aUJBQ1Q7WUFDSCxDQUFDLEVBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ0gscUJBQUM7QUFBRCxDQUFDLEFBekZELElBeUZDOzs7Ozs7Ozs7OztJQXhGQyxnQ0FBK0I7Ozs7O0lBQy9CLG1DQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpYWxvZ1JlZiB9IGZyb20gJy4vZGlhbG9nLXJlZic7XG5cbmNvbnN0IEJBU0tFVF9HUk9VUCA9IHt9O1xuXG4vKipcbiAqIEEgZHVtYiBzdGFjayBpbXBsZW1lbnRhdGlvbiBvdmVyIGFuIGFycmF5LlxuICovXG5leHBvcnQgY2xhc3MgRGlhbG9nUmVmU3RhY2s8VD4ge1xuICBwcml2YXRlIF9zdGFjazogRGlhbG9nUmVmPFQ+W107XG4gIHByaXZhdGUgX3N0YWNrTWFwOiBNYXA8RGlhbG9nUmVmPFQ+LCBhbnk+O1xuXG4gIGdldCBsZW5ndGgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fc3RhY2subGVuZ3RoO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5fc3RhY2sgPSBbXTtcbiAgICB0aGlzLl9zdGFja01hcCA9IG5ldyBNYXA8RGlhbG9nUmVmPFQ+LCBhbnk+KCk7XG4gIH1cblxuICBjbG9zZUFsbChyZXN1bHQ6IGFueSA9IG51bGwpOiB2b2lkIHtcbiAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gdGhpcy5fc3RhY2subGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcbiAgICAgIHRoaXMuX3N0YWNrLnBvcCgpLmNsb3NlKHJlc3VsdCk7XG4gICAgfVxuICB9XG5cbiAgcHVzaChkaWFsb2dSZWY6IERpYWxvZ1JlZjxUPiwgZ3JvdXA/OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3RhY2suaW5kZXhPZihkaWFsb2dSZWYpID09PSAtMSkge1xuICAgICAgdGhpcy5fc3RhY2sucHVzaChkaWFsb2dSZWYpO1xuICAgICAgdGhpcy5fc3RhY2tNYXAuc2V0KGRpYWxvZ1JlZiwgZ3JvdXAgfHwgQkFTS0VUX0dST1VQKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUHVzaCBhIERpYWxvZ1JlZiBpbnRvIHRoZSBzdGFjayBhbmQgbWFuYWdlIGl0IHNvIHdoZW4gaXQncyBkb25lXG4gICAqIGl0IHdpbGwgYXV0b21hdGljYWxseSBraWNrIGl0c2VsZiBvdXQgb2YgdGhlIHN0YWNrLlxuICAgKiBAcGFyYW0gZGlhbG9nUmVmXG4gICAqL1xuICBwdXNoTWFuYWdlZChkaWFsb2dSZWY6IERpYWxvZ1JlZjxUPiwgZ3JvdXA/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnB1c2goZGlhbG9nUmVmLCBncm91cCk7XG4gICAgZGlhbG9nUmVmLm9uRGVzdHJveS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZW1vdmUoZGlhbG9nUmVmKSk7XG4gIH1cblxuICBwb3AoKTogRGlhbG9nUmVmPFQ+IHtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLl9zdGFjay5wb3AoKTtcbiAgICB0aGlzLl9zdGFja01hcC5kZWxldGUoZGlhbG9nUmVmKTtcbiAgICByZXR1cm4gZGlhbG9nUmVmO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIERpYWxvZ1JlZiBmcm9tIHRoZSBzdGFjay5cbiAgICogQHBhcmFtIGRpYWxvZ1JlZlxuICAgKi9cbiAgcmVtb3ZlKGRpYWxvZ1JlZjogRGlhbG9nUmVmPFQ+KTogdm9pZCB7XG4gICAgbGV0IGlkeCA9IHRoaXMuaW5kZXhPZihkaWFsb2dSZWYpO1xuICAgIGlmIChpZHggPiAtMSkge1xuICAgICAgdGhpcy5fc3RhY2suc3BsaWNlKGlkeCwgMSk7XG4gICAgICB0aGlzLl9zdGFja01hcC5kZWxldGUoZGlhbG9nUmVmKTtcbiAgICB9XG4gIH1cblxuICBpbmRleChpbmRleDogbnVtYmVyKTogRGlhbG9nUmVmPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhY2tbaW5kZXhdO1xuICB9XG5cbiAgaW5kZXhPZihkaWFsb2dSZWY6IERpYWxvZ1JlZjxUPik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YWNrLmluZGV4T2YoZGlhbG9nUmVmKTtcbiAgfVxuXG4gIGdyb3VwT2YoZGlhbG9nUmVmOiBEaWFsb2dSZWY8VD4pOiBhbnkge1xuICAgIHJldHVybiB0aGlzLl9zdGFja01hcC5nZXQoZGlhbG9nUmVmKTtcbiAgfVxuXG4gIGdyb3VwQnkoZ3JvdXA6IGFueSk6IERpYWxvZ1JlZjxUPltdIHtcbiAgICBjb25zdCBhcnIgPSBbXTtcbiAgICBpZiAoZ3JvdXApIHtcbiAgICAgIHRoaXMuX3N0YWNrTWFwLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlID09PSBncm91cCkge1xuICAgICAgICAgIGFyci5wdXNoKGtleSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gYXJyO1xuICB9XG5cbiAgZ3JvdXBMZW5ndGgoZ3JvdXA6IGFueSk6IG51bWJlciB7XG4gICAgbGV0IGNvdW50ID0gMDtcbiAgICBpZiAoZ3JvdXApIHtcbiAgICAgIHRoaXMuX3N0YWNrTWFwLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gZ3JvdXApIHtcbiAgICAgICAgICBjb3VudCsrO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGNvdW50O1xuICB9XG59XG4iXX0=