UNPKG

ngx-modialog-10

Version:
223 lines 11.9 kB
/** * @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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLXJlZi1zdGFjay5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25neC1tb2RpYWxvZy0xMC8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbHMvZGlhbG9nLXJlZi1zdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7SUFFTSxZQUFZLEdBQUcsRUFBRTs7Ozs7QUFLdkI7Ozs7O0lBUUU7UUFDRSxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxFQUFxQixDQUFDO0lBQ2hELENBQUM7SUFQRCxzQkFBSSxrQ0FBTTs7OztRQUFWO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixDQUFDOzs7T0FBQTs7Ozs7SUFPRCxpQ0FBUTs7OztJQUFSLFVBQVMsTUFBa0I7UUFBbEIsdUJBQUEsRUFBQSxhQUFrQjtRQUN6QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN0RCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNqQztJQUNILENBQUM7Ozs7OztJQUVELDZCQUFJOzs7OztJQUFKLFVBQUssU0FBdUIsRUFBRSxLQUFXO1FBQ3ZDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssSUFBSSxZQUFZLENBQUMsQ0FBQztTQUN0RDtJQUNILENBQUM7SUFFRDs7OztPQUlHOzs7Ozs7OztJQUNILG9DQUFXOzs7Ozs7O0lBQVgsVUFBWSxTQUF1QixFQUFFLEtBQVc7UUFBaEQsaUJBR0M7UUFGQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixTQUFTLENBQUMsU0FBUyxDQUFDLFNBQVM7OztRQUFDLGNBQU0sT0FBQSxLQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUF0QixDQUFzQixFQUFDLENBQUM7SUFDOUQsQ0FBQzs7OztJQUVELDRCQUFHOzs7SUFBSDs7WUFDUSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUU7UUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDakMsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVEOzs7T0FHRzs7Ozs7O0lBQ0gsK0JBQU07Ozs7O0lBQU4sVUFBTyxTQUF1Qjs7WUFDeEIsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ2xDO0lBQ0gsQ0FBQzs7Ozs7SUFFRCw4QkFBSzs7OztJQUFMLFVBQU0sS0FBYTtRQUNqQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQzs7Ozs7SUFFRCxnQ0FBTzs7OztJQUFQLFVBQVEsU0FBdUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4QyxDQUFDOzs7OztJQUVELGdDQUFPOzs7O0lBQVAsVUFBUSxTQUF1QjtRQUM3QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Ozs7O0lBRUQsZ0NBQU87Ozs7SUFBUCxVQUFRLEtBQVU7O1lBQ1YsR0FBRyxHQUFHLEVBQUU7UUFDZCxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTzs7Ozs7WUFBQyxVQUFDLEtBQUssRUFBRSxHQUFHO2dCQUNoQyxJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUU7b0JBQ25CLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ2Y7WUFDSCxDQUFDLEVBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOzs7OztJQUVELG9DQUFXOzs7O0lBQVgsVUFBWSxLQUFVOztZQUNoQixLQUFLLEdBQUcsQ0FBQztRQUNiLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPOzs7O1lBQUMsVUFBQyxLQUFLO2dCQUMzQixJQUFJLEtBQUssS0FBSyxLQUFLLEVBQUU7b0JBQ25CLEtBQUssRUFBRSxDQUFDO2lCQUNUO1lBQ0gsQ0FBQyxFQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNILHFCQUFDO0FBQUQsQ0FBQyxBQXpGRCxJQXlGQzs7Ozs7Ozs7Ozs7SUF4RkMsZ0NBQStCOzs7OztJQUMvQixtQ0FBMEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaWFsb2dSZWYgfSBmcm9tICcuL2RpYWxvZy1yZWYnO1xuXG5jb25zdCBCQVNLRVRfR1JPVVAgPSB7fTtcblxuLyoqXG4gKiBBIGR1bWIgc3RhY2sgaW1wbGVtZW50YXRpb24gb3ZlciBhbiBhcnJheS5cbiAqL1xuZXhwb3J0IGNsYXNzIERpYWxvZ1JlZlN0YWNrPFQ+IHtcbiAgcHJpdmF0ZSBfc3RhY2s6IERpYWxvZ1JlZjxUPltdO1xuICBwcml2YXRlIF9zdGFja01hcDogTWFwPERpYWxvZ1JlZjxUPiwgYW55PjtcblxuICBnZXQgbGVuZ3RoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YWNrLmxlbmd0aDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuX3N0YWNrID0gW107XG4gICAgdGhpcy5fc3RhY2tNYXAgPSBuZXcgTWFwPERpYWxvZ1JlZjxUPiwgYW55PigpO1xuICB9XG5cbiAgY2xvc2VBbGwocmVzdWx0OiBhbnkgPSBudWxsKTogdm9pZCB7XG4gICAgZm9yIChsZXQgaSA9IDAsIGxlbiA9IHRoaXMuX3N0YWNrLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICB0aGlzLl9zdGFjay5wb3AoKS5jbG9zZShyZXN1bHQpO1xuICAgIH1cbiAgfVxuXG4gIHB1c2goZGlhbG9nUmVmOiBEaWFsb2dSZWY8VD4sIGdyb3VwPzogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N0YWNrLmluZGV4T2YoZGlhbG9nUmVmKSA9PT0gLTEpIHtcbiAgICAgIHRoaXMuX3N0YWNrLnB1c2goZGlhbG9nUmVmKTtcbiAgICAgIHRoaXMuX3N0YWNrTWFwLnNldChkaWFsb2dSZWYsIGdyb3VwIHx8IEJBU0tFVF9HUk9VUCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFB1c2ggYSBEaWFsb2dSZWYgaW50byB0aGUgc3RhY2sgYW5kIG1hbmFnZSBpdCBzbyB3aGVuIGl0J3MgZG9uZVxuICAgKiBpdCB3aWxsIGF1dG9tYXRpY2FsbHkga2ljayBpdHNlbGYgb3V0IG9mIHRoZSBzdGFjay5cbiAgICogQHBhcmFtIGRpYWxvZ1JlZlxuICAgKi9cbiAgcHVzaE1hbmFnZWQoZGlhbG9nUmVmOiBEaWFsb2dSZWY8VD4sIGdyb3VwPzogYW55KTogdm9pZCB7XG4gICAgdGhpcy5wdXNoKGRpYWxvZ1JlZiwgZ3JvdXApO1xuICAgIGRpYWxvZ1JlZi5vbkRlc3Ryb3kuc3Vic2NyaWJlKCgpID0+IHRoaXMucmVtb3ZlKGRpYWxvZ1JlZikpO1xuICB9XG5cbiAgcG9wKCk6IERpYWxvZ1JlZjxUPiB7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5fc3RhY2sucG9wKCk7XG4gICAgdGhpcy5fc3RhY2tNYXAuZGVsZXRlKGRpYWxvZ1JlZik7XG4gICAgcmV0dXJuIGRpYWxvZ1JlZjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgYSBEaWFsb2dSZWYgZnJvbSB0aGUgc3RhY2suXG4gICAqIEBwYXJhbSBkaWFsb2dSZWZcbiAgICovXG4gIHJlbW92ZShkaWFsb2dSZWY6IERpYWxvZ1JlZjxUPik6IHZvaWQge1xuICAgIGxldCBpZHggPSB0aGlzLmluZGV4T2YoZGlhbG9nUmVmKTtcbiAgICBpZiAoaWR4ID4gLTEpIHtcbiAgICAgIHRoaXMuX3N0YWNrLnNwbGljZShpZHgsIDEpO1xuICAgICAgdGhpcy5fc3RhY2tNYXAuZGVsZXRlKGRpYWxvZ1JlZik7XG4gICAgfVxuICB9XG5cbiAgaW5kZXgoaW5kZXg6IG51bWJlcik6IERpYWxvZ1JlZjxUPiB7XG4gICAgcmV0dXJuIHRoaXMuX3N0YWNrW2luZGV4XTtcbiAgfVxuXG4gIGluZGV4T2YoZGlhbG9nUmVmOiBEaWFsb2dSZWY8VD4pOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zdGFjay5pbmRleE9mKGRpYWxvZ1JlZik7XG4gIH1cblxuICBncm91cE9mKGRpYWxvZ1JlZjogRGlhbG9nUmVmPFQ+KTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fc3RhY2tNYXAuZ2V0KGRpYWxvZ1JlZik7XG4gIH1cblxuICBncm91cEJ5KGdyb3VwOiBhbnkpOiBEaWFsb2dSZWY8VD5bXSB7XG4gICAgY29uc3QgYXJyID0gW107XG4gICAgaWYgKGdyb3VwKSB7XG4gICAgICB0aGlzLl9zdGFja01hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmICh2YWx1ZSA9PT0gZ3JvdXApIHtcbiAgICAgICAgICBhcnIucHVzaChrZXkpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGFycjtcbiAgfVxuXG4gIGdyb3VwTGVuZ3RoKGdyb3VwOiBhbnkpOiBudW1iZXIge1xuICAgIGxldCBjb3VudCA9IDA7XG4gICAgaWYgKGdyb3VwKSB7XG4gICAgICB0aGlzLl9zdGFja01hcC5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAodmFsdWUgPT09IGdyb3VwKSB7XG4gICAgICAgICAgY291bnQrKztcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBjb3VudDtcbiAgfVxufVxuIl19