ngx-snotifire 15.0.9-beta → 15.0.10-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -77,7 +77,6 @@ export class NgxSnotifireComponent {
77
77
  result[searchedString]?.push(toast);
78
78
  }
79
79
  });
80
- console.log(result);
81
80
  return result;
82
81
  }
83
82
  getNotificationArray(notifications, position) {
@@ -127,4 +126,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImpor
127
126
  type: Component,
128
127
  args: [{ selector: 'ngx-snotifire', encapsulation: ViewEncapsulation.None, template: "<div\n class=\"snotifire-backdrop\"\n *ngIf=\"backdrop && backdrop >= 0\"\n [style.opacity]=\"backdrop\"\n></div>\n\n<div\n *ngFor=\"let position of notifications | keys\"\n class=\"snotify snotify-{{ position }}\"\n>\n <ngx-toast\n *ngFor=\"let notification of getNotificationArray(notifications, position) | slice: blockSizeA:blockSizeB\"\n [toast]=\"notification\"\n (stateChanged)=\"stateChanged($event)\"\n >\n </ngx-toast>\n\n</div>\n" }]
129
128
  }], ctorParameters: function () { return [{ type: i1.SnotifireService }]; } });
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXNub3RpZmlyZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvY29tcG9uZW50cy9uZ3gtbm90aWZpcmUvbmd4LXNub3RpZmlyZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvY29tcG9uZW50cy9uZ3gtbm90aWZpcmUvbmd4LXNub3RpZmlyZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUdULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFVN0UsTUFBTSxPQUFPLHFCQUFxQjtJQW1DaEMsWUFBcUIsT0FBeUI7UUFBekIsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUFsQzdCLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQXlCcEQ7O1dBRUc7UUFDSCxhQUFRLEdBQXVCLENBQUMsQ0FBQyxDQUFDO1FBQ2xDOztXQUVHO1FBQ0gsaUJBQVksR0FBMEIsRUFBRSxDQUFDO0lBRVEsQ0FBQztJQUNsRCxlQUFlLEtBQVUsQ0FBQztJQUUxQixRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPO2FBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDLFNBQVMsQ0FBQyxDQUFDLE1BQTZCLEVBQUUsRUFBRTtZQUMzQyxJQUNFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYTtnQkFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsTUFBTTtn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SyxRQUFRO2dCQUNYLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO29CQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUNwQjtnQkFDRCxNQUFNO1NBQ1Q7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMvQixDQUFDOztrSEFuS1UscUJBQXFCO3NHQUFyQixxQkFBcUIscURDbEJsQyx1ZUFrQkE7MkZEQWEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGVBQWUsaUJBRVYsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTbm90aWZpcmVFdmVudFR5cGUsIFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGUgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgU25vdGlmaXJlTm90aWZpY2F0aW9ucyB9IGZyb20gJy4uLy4uL21vZGVscy9zbm90aWZpcmUtbm90aWZpY2F0aW9ucy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU25vdGlmaXJlVG9hc3RNb2RlbCB9IGZyb20gJy4uL3RvYXN0L25vdGlmaXJlLXRvYXN0Lm1vZGVsJztcbmltcG9ydCB7IFNub3RpZmlyZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC1zbm90aWZpcmUnLFxuICB0ZW1wbGF0ZVVybDogJy4vbmd4LXNub3RpZmlyZS5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIE5neFNub3RpZmlyZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAvKipcbiAgICogVG9hc3RzIGFycmF5XG4gICAqL1xuICBub3RpZmljYXRpb25zITogU25vdGlmaXJlTm90aWZpY2F0aW9ucztcbiAgLyoqXG4gICAqIFRvYXN0cyBlbWl0dGVyXG4gICAqL1xuICBlbWl0dGVyITogU3Vic2NyaXB0aW9uO1xuICAvKipcbiAgICogSGVscGVyIGZvciBzbGljZSBwaXBlIChtYXhPblNjcmVlbilcbiAgICovXG4gIGRvY2tTaXplQSE6IG51bWJlcjtcbiAgLyoqXG4gICAqIEhlbHBlciBmb3Igc2xpY2UgcGlwZSAobWF4T25TY3JlZW4pXG4gICAqL1xuICBkb2NrU2l6ZUIhOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBIZWxwZXIgZm9yIHNsaWNlIHBpcGUgKG1heEF0UG9zaXRpb24pXG4gICAqL1xuICBibG9ja1NpemVBITogbnVtYmVyO1xuICAvKipcbiAgICogSGVscGVyIGZvciBzbGljZSBwaXBlIChtYXhBdFBvc2l0aW9uKVxuICAgKi9cbiAgYmxvY2tTaXplQiE6IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgLyoqXG4gICAqIEJhY2tkcm9wIE9wYWNpdHlcbiAgICovXG4gIGJhY2tkcm9wOiBudW1iZXIgfCB1bmRlZmluZWQgPSAtMTtcbiAgLyoqXG4gICAqIEhvdyBtYW55IHRvYXN0cyB3aXRoIGJhY2tkcm9wIGluIGN1cnJlbnQgcXVldWVcbiAgICovXG4gIHdpdGhCYWNrZHJvcDogU25vdGlmaXJlVG9hc3RNb2RlbFtdID0gW107XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgc2VydmljZTogU25vdGlmaXJlU2VydmljZSkge31cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNlcnZpY2UuZW1pdHRlclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHRvYXN0czogU25vdGlmaXJlVG9hc3RNb2RlbFtdKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZyAmJlxuICAgICAgICAgIHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbCAmJlxuICAgICAgICAgIHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbC5uZXdPblRvcFxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLmRvY2tTaXplQSA9IHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbC5tYXhPblNjcmVlblxuICAgICAgICAgICAgPyAtdGhpcy5zZXJ2aWNlLmRlZmF1bHRDb25maWcuZ2xvYmFsLm1heE9uU2NyZWVuXG4gICAgICAgICAgICA6IDY7XG4gICAgICAgICAgdGhpcy5kb2NrU2l6ZUIgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgdGhpcy5ibG9ja1NpemVBID0gdGhpcy5zZXJ2aWNlLmRlZmF1bHRDb25maWcuZ2xvYmFsLm1heEF0UG9zaXRpb25cbiAgICAgICAgICAgID8gLXRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbC5tYXhBdFBvc2l0aW9uXG4gICAgICAgICAgICA6IDQ7XG4gICAgICAgICAgdGhpcy5ibG9ja1NpemVCID0gdW5kZWZpbmVkO1xuICAgICAgICAgIHRoaXMud2l0aEJhY2tkcm9wID0gdG9hc3RzLmZpbHRlcihcbiAgICAgICAgICAgICh0b2FzdCkgPT5cbiAgICAgICAgICAgICAgdG9hc3QuY29uZmlnICYmXG4gICAgICAgICAgICAgIHRvYXN0LmNvbmZpZy5iYWNrZHJvcCAmJlxuICAgICAgICAgICAgICB0b2FzdC5jb25maWcuYmFja2Ryb3AgPj0gMFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5kb2NrU2l6ZUEgPSAwO1xuICAgICAgICAgIHRoaXMuZG9ja1NpemVCID1cbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbCAmJlxuICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLmRlZmF1bHRDb25maWcuZ2xvYmFsLm1heE9uU2NyZWVuO1xuICAgICAgICAgIHRoaXMuYmxvY2tTaXplQSA9IDA7XG4gICAgICAgICAgdGhpcy5ibG9ja1NpemVCID1cbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbCAmJlxuICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLmRlZmF1bHRDb25maWcuZ2xvYmFsLm1heEF0UG9zaXRpb247XG4gICAgICAgICAgdGhpcy53aXRoQmFja2Ryb3AgPSB0b2FzdHNcbiAgICAgICAgICAgIC5maWx0ZXIoXG4gICAgICAgICAgICAgICh0b2FzdCkgPT5cbiAgICAgICAgICAgICAgICB0b2FzdC5jb25maWcgJiZcbiAgICAgICAgICAgICAgICB0b2FzdC5jb25maWcuYmFja2Ryb3AgJiZcbiAgICAgICAgICAgICAgICB0b2FzdC5jb25maWcuYmFja2Ryb3AgPj0gMFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnJldmVyc2UoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbnMgPSB0aGlzLnNwbGl0VG9hc3RzKFxuICAgICAgICAgIHRvYXN0cy5zbGljZSh0aGlzLmRvY2tTaXplQSwgdGhpcy5kb2NrU2l6ZUIpXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuc3RhdGVDaGFuZ2VkKFNub3RpZmlyZUV2ZW50VHlwZS5NT1VOVEVEKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwbGl0IHRvYXN0cyB0b2FzdHMgaW50byBkaWZmZXJlbnQgb2JqZWN0c1xuICAgKiBAcGFyYW0gdG9hc3RzIG5vdGlmaXJlLXRvYXN0W11cbiAgICogQHJldHVybnMgU25vdGlmeU5vdGlmaWNhdGlvbnNcbiAgICovXG4gIHNwbGl0VG9hc3RzKHRvYXN0czogU25vdGlmaXJlVG9hc3RNb2RlbFtdKTogU25vdGlmaXJlTm90aWZpY2F0aW9ucyB7XG4gICAgY29uc3QgcmVzdWx0OiBTbm90aWZpcmVOb3RpZmljYXRpb25zID0ge307XG5cbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGUpIHtcbiAgICAgIGlmIChTbm90aWZpY2F0aW9uUG9zaXRpb25UeXBlLmhhc093blByb3BlcnR5KHByb3BlcnR5KSkge1xuICAgICAgICByZXN1bHRbXG4gICAgICAgICAgU25vdGlmaWNhdGlvblBvc2l0aW9uVHlwZVtcbiAgICAgICAgICAgIHByb3BlcnR5IGFzIGtleW9mIHR5cGVvZiBTbm90aWZpY2F0aW9uUG9zaXRpb25UeXBlXG4gICAgICAgICAgXVxuICAgICAgICBdID0gW107XG4gICAgICB9XG4gICAgfVxuXG4gICAgdG9hc3RzLmZvckVhY2goKHRvYXN0OiBTbm90aWZpcmVUb2FzdE1vZGVsKSA9PiB7XG4gICAgICBpZiAodG9hc3QuY29uZmlnLnBvc2l0aW9uKSB7XG4gICAgICAgIGNvbnN0IGtleUluZGV4ID0gT2JqZWN0LmtleXMoU25vdGlmaWNhdGlvblBvc2l0aW9uVHlwZSkuaW5kZXhPZihcbiAgICAgICAgICB0b2FzdC5jb25maWcucG9zaXRpb25cbiAgICAgICAgKTtcbiAgICAgICAgY29uc3Qgc2VhcmNoZWRTdHJpbmcgPSBPYmplY3QudmFsdWVzKFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGUpW1xuICAgICAgICAgIGtleUluZGV4XG4gICAgICAgIF07XG4gICAgICAgIHJlc3VsdFtzZWFyY2hlZFN0cmluZ10/LnB1c2godG9hc3QpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGNvbnNvbGUubG9nKHJlc3VsdCk7XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIGdldE5vdGlmaWNhdGlvbkFycmF5KFxuICAgIG5vdGlmaWNhdGlvbnM6IFNub3RpZmlyZU5vdGlmaWNhdGlvbnMsXG4gICAgcG9zaXRpb246IFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGVcbiAgKTogU25vdGlmaXJlVG9hc3RNb2RlbFtdIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gbm90aWZpY2F0aW9uc1twb3NpdGlvbl07XG4gIH1cblxuICAvKipcbiAgICogQ2hhbmdlcyB0aGUgYmFja2Ryb3Agb3BhY2l0eVxuICAgKiBAcGFyYW0gZXZlbnQgTm90aWZpY2F0aW9uRXZlbnRUeXBlXG4gICAqL1xuICBzdGF0ZUNoYW5nZWQoZXZlbnQ6IFNub3RpZmlyZUV2ZW50VHlwZSkge1xuICAgIGlmICghdGhpcy53aXRoQmFja2Ryb3AubGVuZ3RoKSB7XG4gICAgICBpZiAodGhpcy5iYWNrZHJvcCAmJiB0aGlzLmJhY2tkcm9wID49IDApIHtcbiAgICAgICAgdGhpcy5iYWNrZHJvcCA9IC0xO1xuICAgICAgfVxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBzd2l0Y2ggKGV2ZW50KSB7XG4gICAgICBjYXNlICdtb3VudGVkJzpcbiAgICAgICAgaWYgKHRoaXMuYmFja2Ryb3AgJiYgdGhpcy5iYWNrZHJvcCA8IDApIHtcbiAgICAgICAgICB0aGlzLmJhY2tkcm9wID0gMDtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JlZm9yZVNob3cnOlxuICAgICAgICB0aGlzLmJhY2tkcm9wID1cbiAgICAgICAgICB0aGlzLndpdGhCYWNrZHJvcFt0aGlzLndpdGhCYWNrZHJvcC5sZW5ndGggLSAxXS5jb25maWc/LmJhY2tkcm9wO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JlZm9yZUhpZGUnOlxuICAgICAgICBpZiAodGhpcy53aXRoQmFja2Ryb3AubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgdGhpcy5iYWNrZHJvcCA9IDA7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdoaWRkZW4nOlxuICAgICAgICBpZiAodGhpcy53aXRoQmFja2Ryb3AubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgdGhpcy5iYWNrZHJvcCA9IC0xO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMudW5zdWJzY3JpYmUkLm5leHQoKTtcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJzbm90aWZpcmUtYmFja2Ryb3BcIlxuICAgICpuZ0lmPVwiYmFja2Ryb3AgJiYgYmFja2Ryb3AgPj0gMFwiXG4gICAgW3N0eWxlLm9wYWNpdHldPVwiYmFja2Ryb3BcIlxuPjwvZGl2PlxuXG48ZGl2XG4gICAgKm5nRm9yPVwibGV0IHBvc2l0aW9uIG9mIG5vdGlmaWNhdGlvbnMgfCBrZXlzXCJcbiAgICBjbGFzcz1cInNub3RpZnkgc25vdGlmeS17eyBwb3NpdGlvbiB9fVwiXG4+XG4gICAgPG5neC10b2FzdFxuICAgICAgICAqbmdGb3I9XCJsZXQgbm90aWZpY2F0aW9uIG9mIGdldE5vdGlmaWNhdGlvbkFycmF5KG5vdGlmaWNhdGlvbnMsIHBvc2l0aW9uKSB8IHNsaWNlOiBibG9ja1NpemVBOmJsb2NrU2l6ZUJcIlxuICAgICAgICBbdG9hc3RdPVwibm90aWZpY2F0aW9uXCJcbiAgICAgICAgKHN0YXRlQ2hhbmdlZCk9XCJzdGF0ZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgPlxuICAgIDwvbmd4LXRvYXN0PlxuXG48L2Rpdj5cbiJdfQ==
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXNub3RpZmlyZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvY29tcG9uZW50cy9uZ3gtbm90aWZpcmUvbmd4LXNub3RpZmlyZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvY29tcG9uZW50cy9uZ3gtbm90aWZpcmUvbmd4LXNub3RpZmlyZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUdULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7QUFVN0UsTUFBTSxPQUFPLHFCQUFxQjtJQW1DaEMsWUFBcUIsT0FBeUI7UUFBekIsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUFsQzdCLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQXlCcEQ7O1dBRUc7UUFDSCxhQUFRLEdBQXVCLENBQUMsQ0FBQyxDQUFDO1FBQ2xDOztXQUVHO1FBQ0gsaUJBQVksR0FBMEIsRUFBRSxDQUFDO0lBRVEsQ0FBQztJQUNsRCxlQUFlLEtBQVUsQ0FBQztJQUUxQixRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPO2FBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDLFNBQVMsQ0FBQyxDQUFDLE1BQTZCLEVBQUUsRUFBRTtZQUMzQyxJQUNFLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYTtnQkFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsTUFBTTtn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TSxLQUFLLENBQUMsRUFBRTtvQkFDbEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQztpQkFDcEI7Z0JBQ0QsTUFBTTtTQUNUO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQzs7a0hBbEtVLHFCQUFxQjtzR0FBckIscUJBQXFCLHFEQ2xCbEMsdWVBa0JBOzJGREFhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxlQUFlLGlCQUVWLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU25vdGlmaXJlRXZlbnRUeXBlLCBTbm90aWZpY2F0aW9uUG9zaXRpb25UeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFNub3RpZmlyZU5vdGlmaWNhdGlvbnMgfSBmcm9tICcuLi8uLi9tb2RlbHMvc25vdGlmaXJlLW5vdGlmaWNhdGlvbnMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNub3RpZmlyZVRvYXN0TW9kZWwgfSBmcm9tICcuLi90b2FzdC9ub3RpZmlyZS10b2FzdC5tb2RlbCc7XG5pbXBvcnQgeyBTbm90aWZpcmVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtc25vdGlmaXJlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25neC1zbm90aWZpcmUuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3hTbm90aWZpcmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgdW5zdWJzY3JpYmUkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgLyoqXG4gICAqIFRvYXN0cyBhcnJheVxuICAgKi9cbiAgbm90aWZpY2F0aW9ucyE6IFNub3RpZmlyZU5vdGlmaWNhdGlvbnM7XG4gIC8qKlxuICAgKiBUb2FzdHMgZW1pdHRlclxuICAgKi9cbiAgZW1pdHRlciE6IFN1YnNjcmlwdGlvbjtcbiAgLyoqXG4gICAqIEhlbHBlciBmb3Igc2xpY2UgcGlwZSAobWF4T25TY3JlZW4pXG4gICAqL1xuICBkb2NrU2l6ZUEhOiBudW1iZXI7XG4gIC8qKlxuICAgKiBIZWxwZXIgZm9yIHNsaWNlIHBpcGUgKG1heE9uU2NyZWVuKVxuICAgKi9cbiAgZG9ja1NpemVCITogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICogSGVscGVyIGZvciBzbGljZSBwaXBlIChtYXhBdFBvc2l0aW9uKVxuICAgKi9cbiAgYmxvY2tTaXplQSE6IG51bWJlcjtcbiAgLyoqXG4gICAqIEhlbHBlciBmb3Igc2xpY2UgcGlwZSAobWF4QXRQb3NpdGlvbilcbiAgICovXG4gIGJsb2NrU2l6ZUIhOiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBCYWNrZHJvcCBPcGFjaXR5XG4gICAqL1xuICBiYWNrZHJvcDogbnVtYmVyIHwgdW5kZWZpbmVkID0gLTE7XG4gIC8qKlxuICAgKiBIb3cgbWFueSB0b2FzdHMgd2l0aCBiYWNrZHJvcCBpbiBjdXJyZW50IHF1ZXVlXG4gICAqL1xuICB3aXRoQmFja2Ryb3A6IFNub3RpZmlyZVRvYXN0TW9kZWxbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHNlcnZpY2U6IFNub3RpZmlyZVNlcnZpY2UpIHt9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXJ2aWNlLmVtaXR0ZXJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpXG4gICAgICAuc3Vic2NyaWJlKCh0b2FzdHM6IFNub3RpZmlyZVRvYXN0TW9kZWxbXSkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgdGhpcy5zZXJ2aWNlLmRlZmF1bHRDb25maWcgJiZcbiAgICAgICAgICB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5nbG9iYWwgJiZcbiAgICAgICAgICB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5nbG9iYWwubmV3T25Ub3BcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5kb2NrU2l6ZUEgPSB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5nbG9iYWwubWF4T25TY3JlZW5cbiAgICAgICAgICAgID8gLXRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbC5tYXhPblNjcmVlblxuICAgICAgICAgICAgOiA2O1xuICAgICAgICAgIHRoaXMuZG9ja1NpemVCID0gdW5kZWZpbmVkO1xuICAgICAgICAgIHRoaXMuYmxvY2tTaXplQSA9IHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbC5tYXhBdFBvc2l0aW9uXG4gICAgICAgICAgICA/IC10aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5nbG9iYWwubWF4QXRQb3NpdGlvblxuICAgICAgICAgICAgOiA0O1xuICAgICAgICAgIHRoaXMuYmxvY2tTaXplQiA9IHVuZGVmaW5lZDtcbiAgICAgICAgICB0aGlzLndpdGhCYWNrZHJvcCA9IHRvYXN0cy5maWx0ZXIoXG4gICAgICAgICAgICAodG9hc3QpID0+XG4gICAgICAgICAgICAgIHRvYXN0LmNvbmZpZyAmJlxuICAgICAgICAgICAgICB0b2FzdC5jb25maWcuYmFja2Ryb3AgJiZcbiAgICAgICAgICAgICAgdG9hc3QuY29uZmlnLmJhY2tkcm9wID49IDBcbiAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuZG9ja1NpemVBID0gMDtcbiAgICAgICAgICB0aGlzLmRvY2tTaXplQiA9XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5nbG9iYWwgJiZcbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbC5tYXhPblNjcmVlbjtcbiAgICAgICAgICB0aGlzLmJsb2NrU2l6ZUEgPSAwO1xuICAgICAgICAgIHRoaXMuYmxvY2tTaXplQiA9XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5nbG9iYWwgJiZcbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5kZWZhdWx0Q29uZmlnLmdsb2JhbC5tYXhBdFBvc2l0aW9uO1xuICAgICAgICAgIHRoaXMud2l0aEJhY2tkcm9wID0gdG9hc3RzXG4gICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAodG9hc3QpID0+XG4gICAgICAgICAgICAgICAgdG9hc3QuY29uZmlnICYmXG4gICAgICAgICAgICAgICAgdG9hc3QuY29uZmlnLmJhY2tkcm9wICYmXG4gICAgICAgICAgICAgICAgdG9hc3QuY29uZmlnLmJhY2tkcm9wID49IDBcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5yZXZlcnNlKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25zID0gdGhpcy5zcGxpdFRvYXN0cyhcbiAgICAgICAgICB0b2FzdHMuc2xpY2UodGhpcy5kb2NrU2l6ZUEsIHRoaXMuZG9ja1NpemVCKVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnN0YXRlQ2hhbmdlZChTbm90aWZpcmVFdmVudFR5cGUuTU9VTlRFRCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGxpdCB0b2FzdHMgdG9hc3RzIGludG8gZGlmZmVyZW50IG9iamVjdHNcbiAgICogQHBhcmFtIHRvYXN0cyBub3RpZmlyZS10b2FzdFtdXG4gICAqIEByZXR1cm5zIFNub3RpZnlOb3RpZmljYXRpb25zXG4gICAqL1xuICBzcGxpdFRvYXN0cyh0b2FzdHM6IFNub3RpZmlyZVRvYXN0TW9kZWxbXSk6IFNub3RpZmlyZU5vdGlmaWNhdGlvbnMge1xuICAgIGNvbnN0IHJlc3VsdDogU25vdGlmaXJlTm90aWZpY2F0aW9ucyA9IHt9O1xuXG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBTbm90aWZpY2F0aW9uUG9zaXRpb25UeXBlKSB7XG4gICAgICBpZiAoU25vdGlmaWNhdGlvblBvc2l0aW9uVHlwZS5oYXNPd25Qcm9wZXJ0eShwcm9wZXJ0eSkpIHtcbiAgICAgICAgcmVzdWx0W1xuICAgICAgICAgIFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGVbXG4gICAgICAgICAgICBwcm9wZXJ0eSBhcyBrZXlvZiB0eXBlb2YgU25vdGlmaWNhdGlvblBvc2l0aW9uVHlwZVxuICAgICAgICAgIF1cbiAgICAgICAgXSA9IFtdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRvYXN0cy5mb3JFYWNoKCh0b2FzdDogU25vdGlmaXJlVG9hc3RNb2RlbCkgPT4ge1xuICAgICAgaWYgKHRvYXN0LmNvbmZpZy5wb3NpdGlvbikge1xuICAgICAgICBjb25zdCBrZXlJbmRleCA9IE9iamVjdC5rZXlzKFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGUpLmluZGV4T2YoXG4gICAgICAgICAgdG9hc3QuY29uZmlnLnBvc2l0aW9uXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IHNlYXJjaGVkU3RyaW5nID0gT2JqZWN0LnZhbHVlcyhTbm90aWZpY2F0aW9uUG9zaXRpb25UeXBlKVtcbiAgICAgICAgICBrZXlJbmRleFxuICAgICAgICBdO1xuICAgICAgICByZXN1bHRbc2VhcmNoZWRTdHJpbmddPy5wdXNoKHRvYXN0KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgZ2V0Tm90aWZpY2F0aW9uQXJyYXkoXG4gICAgbm90aWZpY2F0aW9uczogU25vdGlmaXJlTm90aWZpY2F0aW9ucyxcbiAgICBwb3NpdGlvbjogU25vdGlmaWNhdGlvblBvc2l0aW9uVHlwZVxuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsW10gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBub3RpZmljYXRpb25zW3Bvc2l0aW9uXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGFuZ2VzIHRoZSBiYWNrZHJvcCBvcGFjaXR5XG4gICAqIEBwYXJhbSBldmVudCBOb3RpZmljYXRpb25FdmVudFR5cGVcbiAgICovXG4gIHN0YXRlQ2hhbmdlZChldmVudDogU25vdGlmaXJlRXZlbnRUeXBlKSB7XG4gICAgaWYgKCF0aGlzLndpdGhCYWNrZHJvcC5sZW5ndGgpIHtcbiAgICAgIGlmICh0aGlzLmJhY2tkcm9wICYmIHRoaXMuYmFja2Ryb3AgPj0gMCkge1xuICAgICAgICB0aGlzLmJhY2tkcm9wID0gLTE7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHN3aXRjaCAoZXZlbnQpIHtcbiAgICAgIGNhc2UgJ21vdW50ZWQnOlxuICAgICAgICBpZiAodGhpcy5iYWNrZHJvcCAmJiB0aGlzLmJhY2tkcm9wIDwgMCkge1xuICAgICAgICAgIHRoaXMuYmFja2Ryb3AgPSAwO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmVmb3JlU2hvdyc6XG4gICAgICAgIHRoaXMuYmFja2Ryb3AgPVxuICAgICAgICAgIHRoaXMud2l0aEJhY2tkcm9wW3RoaXMud2l0aEJhY2tkcm9wLmxlbmd0aCAtIDFdLmNvbmZpZz8uYmFja2Ryb3A7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmVmb3JlSGlkZSc6XG4gICAgICAgIGlmICh0aGlzLndpdGhCYWNrZHJvcC5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICB0aGlzLmJhY2tkcm9wID0gMDtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2hpZGRlbic6XG4gICAgICAgIGlmICh0aGlzLndpdGhCYWNrZHJvcC5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICB0aGlzLmJhY2tkcm9wID0gLTE7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy51bnN1YnNjcmliZSQubmV4dCgpO1xuICAgIHRoaXMudW5zdWJzY3JpYmUkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgICBjbGFzcz1cInNub3RpZmlyZS1iYWNrZHJvcFwiXG4gICAgKm5nSWY9XCJiYWNrZHJvcCAmJiBiYWNrZHJvcCA+PSAwXCJcbiAgICBbc3R5bGUub3BhY2l0eV09XCJiYWNrZHJvcFwiXG4+PC9kaXY+XG5cbjxkaXZcbiAgICAqbmdGb3I9XCJsZXQgcG9zaXRpb24gb2Ygbm90aWZpY2F0aW9ucyB8IGtleXNcIlxuICAgIGNsYXNzPVwic25vdGlmeSBzbm90aWZ5LXt7IHBvc2l0aW9uIH19XCJcbj5cbiAgICA8bmd4LXRvYXN0XG4gICAgICAgICpuZ0Zvcj1cImxldCBub3RpZmljYXRpb24gb2YgZ2V0Tm90aWZpY2F0aW9uQXJyYXkobm90aWZpY2F0aW9ucywgcG9zaXRpb24pIHwgc2xpY2U6IGJsb2NrU2l6ZUE6YmxvY2tTaXplQlwiXG4gICAgICAgIFt0b2FzdF09XCJub3RpZmljYXRpb25cIlxuICAgICAgICAoc3RhdGVDaGFuZ2VkKT1cInN0YXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9uZ3gtdG9hc3Q+XG5cbjwvZGl2PlxuIl19
@@ -27,7 +27,6 @@ export class ToastComponent {
27
27
  this.service.toastChanged
28
28
  .pipe(takeUntil(this.unsubscribe$))
29
29
  .subscribe((toast) => {
30
- console.log('toast');
31
30
  if (this.toast.id === toast.id) {
32
31
  this.initToast();
33
32
  }
@@ -183,4 +182,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImpor
183
182
  }], stateChanged: [{
184
183
  type: Output
185
184
  }] } });
186
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNub3RpZmlyZS9zcmMvbGliL2NvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNub3RpZmlyZS9zcmMvbGliL2NvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7OztBQVNqRSxNQUFNLE9BQU8sY0FBYztJQXlCekIsWUFBNkIsT0FBeUI7UUFBekIsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUF4QjlDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQU1qQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBT2hFOztXQUVHO1FBQ0gsVUFBSyxHQUFHO1lBQ04sTUFBTSxFQUFFLEtBQUs7WUFDYixRQUFRLEVBQUUsQ0FBQztZQUNYLFNBQVMsRUFBRSxFQUFFO1lBQ2IsWUFBWSxFQUFFLEtBQUs7WUFDbkIsVUFBVSxFQUFFLGFBQWEsQ0FBQyxNQUFNO1NBQ2pDLENBQUM7SUFFdUQsQ0FBQztJQUUxRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZO2FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDLFNBQVMsQ0FBQyxDQUFDLEtBQTBCLEVBQUUsRUFBRTtZQUN4QyxP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QyxLQUFLLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztvQkFDL0IsU0FBUyxFQUFFLENBQUM7aUJBQ2I7cUJBQU07b0JBQ0wsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO29CQUN4QixvQkFBb0IsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7b0JBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ3BDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7UUFDRixTQUFTLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQy9CLENBQUM7OzJHQWpNVSxjQUFjOytGQUFkLGNBQWMsd0hDbkIzQix1M0ZBMkVBOzJGRHhEYSxjQUFjO2tCQUwxQixTQUFTOytCQUNFLFdBQVcsaUJBRU4saUJBQWlCLENBQUMsSUFBSTt1R0FRNUIsS0FBSztzQkFBYixLQUFLO2dCQUNJLFlBQVk7c0JBQXJCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU25vdGlmaXJlRXZlbnRUeXBlLCBTbm90aWZpcmVUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFNub3RpZmlyZVRvYXN0TW9kZWwgfSBmcm9tICcuL25vdGlmaXJlLXRvYXN0Lm1vZGVsJztcbmltcG9ydCB7IFNub3RpZmlyZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC10b2FzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdC5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFRvYXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHVuc3Vic2NyaWJlJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyoqXG4gICAqIEdldCB0b2FzdCBmcm9tIG5vdGlmaWNhdGlvbnMgYXJyYXlcbiAgICovXG4gIEBJbnB1dCgpIHRvYXN0ITogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgQE91dHB1dCgpIHN0YXRlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8U25vdGlmaXJlRXZlbnRUeXBlPigpO1xuXG4gIC8qKlxuICAgKiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUgaWRcbiAgICovXG4gIGFuaW1hdGlvbkZyYW1lITogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUb2FzdCBzdGF0ZVxuICAgKi9cbiAgc3RhdGUgPSB7XG4gICAgcGF1c2VkOiBmYWxzZSxcbiAgICBwcm9ncmVzczogMCxcbiAgICBhbmltYXRpb246ICcnLFxuICAgIGlzRGVzdHJveWluZzogZmFsc2UsXG4gICAgcHJvbXB0VHlwZTogU25vdGlmaXJlVHlwZS5QUk9NUFQsXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBzZXJ2aWNlOiBTbm90aWZpcmVTZXJ2aWNlKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VydmljZS50b2FzdENoYW5nZWRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlJCkpXG4gICAgICAuc3Vic2NyaWJlKCh0b2FzdDogU25vdGlmaXJlVG9hc3RNb2RlbCkgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZygndG9hc3QnKTtcbiAgICAgICAgaWYgKHRoaXMudG9hc3QuaWQgPT09IHRvYXN0LmlkKSB7XG4gICAgICAgICAgdGhpcy5pbml0VG9hc3QoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICB0aGlzLnNlcnZpY2UudG9hc3REZWxldGVkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxuICAgICAgLnN1YnNjcmliZSgoaWQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMudG9hc3QuaWQgPT09IGlkKSB7XG4gICAgICAgICAgdGhpcy5vblJlbW92ZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICBpZiAodGhpcy50b2FzdCAmJiB0aGlzLnRvYXN0LmNvbmZpZyAmJiAhdGhpcy50b2FzdC5jb25maWcudGltZW91dCkge1xuICAgICAgdGhpcy50b2FzdC5jb25maWcuc2hvd1Byb2dyZXNzQmFyID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuTU9VTlRFRCk7XG4gICAgdGhpcy5zdGF0ZS5hbmltYXRpb24gPSAnbm90aWZpcmUtdG9hc3QtLWluJztcbiAgfVxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5zZXJ2aWNlLmRlZmF1bHRDb25maWcuc25vdGlmaXJlQ29uZmlnICYmXG4gICAgICB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5zbm90aWZpcmVDb25maWcuYW5pbWF0aW9uXG4gICAgKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZWQuZW1pdChTbm90aWZpcmVFdmVudFR5cGUuQkVGT1JFX1NIT1cpO1xuICAgICAgICB0aGlzLnRvYXN0LmV2ZW50RW1pdHRlci5uZXh0KFNub3RpZmlyZUV2ZW50VHlwZS5CRUZPUkVfU0hPVyk7XG4gICAgICAgIHRoaXMuc3RhdGUuYW5pbWF0aW9uID1cbiAgICAgICAgICB0aGlzLnRvYXN0LmNvbmZpZyAmJlxuICAgICAgICAgIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbiAmJlxuICAgICAgICAgIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbi5lbnRlclxuICAgICAgICAgICAgPyB0aGlzLnRvYXN0LmNvbmZpZy5hbmltYXRpb24uZW50ZXJcbiAgICAgICAgICAgIDogJyc7XG4gICAgICB9LCB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5zbm90aWZpcmVDb25maWcuYW5pbWF0aW9uLnRpbWUgLyA1KTsgLy8gdGltZSB0byBzaG93IHRvYXN0IHB1c2ggYW5pbWF0aW9uIChub3RpZmlyZS10b2FzdC0taW4pXG4gICAgfVxuICB9XG4gIC8qKlxuICAgKiBUcmlnZ2VyIGJlZm9yZURlc3Ryb3kgbGlmZWN5Y2xlLiBSZW1vdmVzIHRvYXN0XG4gICAqL1xuICBvblJlbW92ZSgpIHtcbiAgICB0aGlzLnN0YXRlLmlzRGVzdHJveWluZyA9IHRydWU7XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuQkVGT1JFX0hJREUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VkLmVtaXQoU25vdGlmaXJlRXZlbnRUeXBlLkJFRk9SRV9ISURFKTtcbiAgICB0aGlzLnN0YXRlLmFuaW1hdGlvbiA9XG4gICAgICAodGhpcy50b2FzdC5jb25maWcgJiZcbiAgICAgICAgdGhpcy50b2FzdC5jb25maWcuYW5pbWF0aW9uICYmXG4gICAgICAgIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbi5leGl0KSB8fFxuICAgICAgJyc7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnN0YXRlQ2hhbmdlZC5lbWl0KFNub3RpZmlyZUV2ZW50VHlwZS5ISURERU4pO1xuICAgICAgdGhpcy5zdGF0ZS5hbmltYXRpb24gPSAnbm90aWZpcmUtdG9hc3QtLW91dCc7XG4gICAgICB0aGlzLnRvYXN0LmV2ZW50RW1pdHRlci5uZXh0KFNub3RpZmlyZUV2ZW50VHlwZS5ISURERU4pO1xuICAgICAgc2V0VGltZW91dChcbiAgICAgICAgKCkgPT4gdGhpcy5zZXJ2aWNlLnJlbW92ZSh0aGlzLnRvYXN0LmlkLCB0cnVlKSxcbiAgICAgICAgdGhpcy50b2FzdC5jb25maWcgJiZcbiAgICAgICAgICB0aGlzLnRvYXN0LmNvbmZpZy5hbmltYXRpb24gJiZcbiAgICAgICAgICB0aGlzLnRvYXN0LmNvbmZpZy5hbmltYXRpb24udGltZSAvIDJcbiAgICAgICk7XG4gICAgfSwgdGhpcy50b2FzdC5jb25maWcgJiYgdGhpcy50b2FzdC5jb25maWcuYW5pbWF0aW9uICYmIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbi50aW1lIC8gMik7XG4gIH1cbiAgLyoqXG4gICAqIFRyaWdnZXIgT25DbGljayBsaWZlY3ljbGVcbiAgICovXG4gIG9uQ2xpY2soKSB7XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuQ0xJQ0spO1xuICAgIGlmICh0aGlzLnRvYXN0ICYmIHRoaXMudG9hc3QuY29uZmlnICYmIHRoaXMudG9hc3QuY29uZmlnLmNsb3NlT25DbGljaykge1xuICAgICAgdGhpcy5zZXJ2aWNlLnJlbW92ZSh0aGlzLnRvYXN0LmlkKTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIFRyaWdnZXIgb25Ib3ZlckVudGVyIGxpZmVjeWNsZVxuICAgKi9cbiAgb25Nb3VzZUVudGVyKCkge1xuICAgIHRoaXMudG9hc3QuZXZlbnRFbWl0dGVyLm5leHQoU25vdGlmaXJlRXZlbnRUeXBlLk1PVVNFX0VOVEVSKTtcbiAgICBpZiAodGhpcy50b2FzdCAmJiB0aGlzLnRvYXN0LmNvbmZpZyAmJiB0aGlzLnRvYXN0LmNvbmZpZy5wYXVzZU9uSG92ZXIpIHtcbiAgICAgIHRoaXMuc3RhdGUucGF1c2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlciBvbkhvdmVyTGVhdmUgbGlmZWN5Y2xlXG4gICAqL1xuICBvbk1vdXNlTGVhdmUoKSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy50b2FzdCAmJlxuICAgICAgdGhpcy50b2FzdC5jb25maWcgJiZcbiAgICAgIHRoaXMudG9hc3QuY29uZmlnLnBhdXNlT25Ib3ZlciAmJlxuICAgICAgdGhpcy50b2FzdC5jb25maWcudGltZW91dFxuICAgICkge1xuICAgICAgdGhpcy5zdGF0ZS5wYXVzZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuc3RhcnRUaW1lb3V0KHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXQgKiB0aGlzLnN0YXRlLnByb2dyZXNzKTtcbiAgICB9XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuTU9VU0VfTEVBVkUpO1xuICB9XG4gIC8qKlxuICAgKiBSZW1vdmUgdG9hc3QgY29tcGxldGVseSBhZnRlciBhbmltYXRpb25cbiAgICovXG4gIG9uRXhpdFRyYW5zaXRpb25FbmQoKSB7XG4gICAgaWYgKHRoaXMuc3RhdGUuaXNEZXN0cm95aW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaW5pdFRvYXN0KCk7XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuU0hPV04pO1xuICB9XG5cbiAgLypcbiAgIENvbW1vblxuICAgKi9cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSBiYXNlIHRvYXN0IGNvbmZpZ1xuICAgKlxuICAgKi9cbiAgaW5pdFRvYXN0KCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICh0aGlzLnRvYXN0ICYmIHRoaXMudG9hc3QuY29uZmlnICYmIHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXRcbiAgICAgICAgPyB0aGlzLnRvYXN0LmNvbmZpZy50aW1lb3V0XG4gICAgICAgIDogMCkgPiAwXG4gICAgKSB7XG4gICAgICB0aGlzLnN0YXJ0VGltZW91dCgwKTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIFN0YXJ0IHByb2dyZXNzIGJhclxuICAgKiBAcGFyYW0gc3RhcnRUaW1lIG51bWJlclxuICAgKi9cbiAgc3RhcnRUaW1lb3V0KHN0YXJ0VGltZTogbnVtYmVyID0gMCkge1xuICAgIGNvbnN0IHN0YXJ0ID0gcGVyZm9ybWFuY2Uubm93KCk7XG4gICAgY29uc3QgY2FsY3VsYXRlID0gKCkgPT4ge1xuICAgICAgdGhpcy5hbmltYXRpb25GcmFtZSA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgodGltZXN0YW1wKSA9PiB7XG4gICAgICAgIGNvbnN0IHJ1bnRpbWUgPSB0aW1lc3RhbXAgKyBzdGFydFRpbWUgLSBzdGFydDtcbiAgICAgICAgY29uc3QgcHJvZ3Jlc3MgPSBNYXRoLm1pbihcbiAgICAgICAgICBydW50aW1lIC9cbiAgICAgICAgICAgICh0aGlzLnRvYXN0ICYmIHRoaXMudG9hc3QuY29uZmlnICYmIHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXRcbiAgICAgICAgICAgICAgPyB0aGlzLnRvYXN0LmNvbmZpZy50aW1lb3V0XG4gICAgICAgICAgICAgIDogMSksXG4gICAgICAgICAgMVxuICAgICAgICApO1xuICAgICAgICBpZiAodGhpcy5zdGF0ZS5wYXVzZWQpIHtcbiAgICAgICAgICBjYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLmFuaW1hdGlvbkZyYW1lKTtcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICBydW50aW1lIDxcbiAgICAgICAgICAodGhpcy50b2FzdCAmJiB0aGlzLnRvYXN0LmNvbmZpZyAmJiB0aGlzLnRvYXN0LmNvbmZpZy50aW1lb3V0XG4gICAgICAgICAgICA/IHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXRcbiAgICAgICAgICAgIDogMSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5zdGF0ZS5wcm9ncmVzcyA9IHByb2dyZXNzO1xuICAgICAgICAgIGNhbGN1bGF0ZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuc3RhdGUucHJvZ3Jlc3MgPSAxO1xuICAgICAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuYW5pbWF0aW9uRnJhbWUpO1xuICAgICAgICAgIHRoaXMuc2VydmljZS5yZW1vdmUodGhpcy50b2FzdC5pZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH07XG4gICAgY2FsY3VsYXRlKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5uZXh0KCk7XG4gICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInRvYXN0ICYmIHRvYXN0LmNvbmZpZ1wiPlxuICAgIDxkaXZcbiAgICAgICAgW2F0dHIucm9sZV09XCJ0b2FzdC5jb25maWcudHlwZSA9PT0gc3RhdGUucHJvbXB0VHlwZSA/ICdkaWFsb2cnIDogJ2FsZXJ0J1wiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCInc25vdGlmeV8nICsgdG9hc3QuaWRcIlxuICAgICAgICBbYXR0ci5hcmlhLW1vZGFsXT1cInRvYXN0LmNvbmZpZy50eXBlID09PSBzdGF0ZS5wcm9tcHRUeXBlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiW1xuICAnbm90aWZpcmUtdG9hc3QgYW5pbWF0ZWQnLFxuICAnc25vdGlmeS0nICsgdG9hc3QuY29uZmlnLnR5cGUsXG4gIHN0YXRlLmFuaW1hdGlvbiwgIHRvYXN0LnZhbGlkID09PSB1bmRlZmluZWQgPyAnJyA6IHRvYXN0LnZhbGlkID8gJ3Nub3RpZnlUb2FzdC0tdmFsaWQnIDogJ3Nub3RpZnlUb2FzdC0taW52YWxpZCdcbl1cIlxuICAgICAgICBbbmdTdHlsZV09XCJ7XG4gICctd2Via2l0LXRyYW5zaXRpb24nOiB0b2FzdC5jb25maWcuYW5pbWF0aW9uICYmIHRvYXN0LmNvbmZpZy5hbmltYXRpb24udGltZSAgKyAnbXMnLFxuICB0cmFuc2l0aW9uOiAgdG9hc3QuY29uZmlnLmFuaW1hdGlvbiAmJiB0b2FzdC5jb25maWcuYW5pbWF0aW9uLnRpbWUgKyAnbXMnLFxuICAnLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb24nOiAgdG9hc3QuY29uZmlnLmFuaW1hdGlvbiAmJiAgdG9hc3QuY29uZmlnLmFuaW1hdGlvbi50aW1lICsgJ21zJyxcbiAgJ2FuaW1hdGlvbi1kdXJhdGlvbic6ICB0b2FzdC5jb25maWcuYW5pbWF0aW9uICYmIHRvYXN0LmNvbmZpZy5hbmltYXRpb24udGltZSArICdtcydcbn1cIlxuICAgICAgICAoYW5pbWF0aW9uZW5kKT1cIm9uRXhpdFRyYW5zaXRpb25FbmQoKVwiXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrKClcIlxuICAgICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoKVwiXG4gICAgICAgIChtb3VzZWxlYXZlKT1cIm9uTW91c2VMZWF2ZSgpXCJcbiAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwibm90aWZpcmUtdG9hc3RfX3Byb2dyZXNzQmFyXCJcbiAgICAgICAgICAgICpuZ0lmPVwidG9hc3QuY29uZmlnLnNob3dQcm9ncmVzc0JhclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJub3RpZmlyZS10b2FzdF9fcHJvZ3Jlc3NCYXJfX3BlcmNlbnRhZ2VcIlxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgd2lkdGg6IHN0YXRlLnByb2dyZXNzICogMTAwICsgJyUnIH1cIlxuICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwibm90aWZpcmUtdG9hc3RfX2lubmVyXCJcbiAgICAgICAgICAgICpuZ0lmPVwiIXRvYXN0LmNvbmZpZy5odG1sOyBlbHNlIHRvYXN0SFRNTFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm5vdGlmaXJlLXRvYXN0X190aXRsZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiJ3Nub3RpZnlfJyArIHRvYXN0LmlkXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInRvYXN0LnRpdGxlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB0b2FzdC50aXRsZSB8IHRydW5jYXRlOiB0b2FzdC5jb25maWcudGl0bGVNYXhMZW5ndGggfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibm90aWZpcmUtdG9hc3RfX2JvZHlcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwidG9hc3QuYm9keVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdG9hc3QuYm9keSB8IHRydW5jYXRlOiB0b2FzdC5jb25maWcuYm9keU1heExlbmd0aCB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8bmd4LXNub3RpZnktcHJvbXB0XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJ0b2FzdC5jb25maWcudHlwZSA9PT0gc3RhdGUucHJvbXB0VHlwZVwiXG4gICAgICAgICAgICAgICAgW3RvYXN0XT1cInRvYXN0XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmd4LXNub3RpZnktcHJvbXB0PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiIXRvYXN0LmNvbmZpZy5pY29uOyBlbHNlIGVsc2VCbG9ja1wiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiWydzbm90aWZpcmUtaWNvbicsIHRvYXN0LmNvbmZpZy5pY29uQ2xhc3MgfHwgJ3Nub3RpZmlyZS1pY29uLS0nICsgdG9hc3QuY29uZmlnLnR5cGVdXCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUJsb2NrPlxuICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbm90aWZpcmUtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwidG9hc3QuY29uZmlnLmljb25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctdGVtcGxhdGUgI3RvYXN0SFRNTD5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm5vdGlmaXJlLXRvYXN0X19pbm5lclwiXG4gICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJ0b2FzdC5jb25maWcuaHRtbFwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxub3RpZmlyZS1idXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwidG9hc3QuY29uZmlnLmJ1dHRvbnNcIlxuICAgICAgICAgICAgW3RvYXN0XT1cInRvYXN0XCJcbiAgICAgICAgPjwvbm90aWZpcmUtYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNub3RpZmlyZS9zcmMvbGliL2NvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNub3RpZmlyZS9zcmMvbGliL2NvbXBvbmVudHMvdG9hc3QvdG9hc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUdMLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7OztBQVNqRSxNQUFNLE9BQU8sY0FBYztJQXlCekIsWUFBNkIsT0FBeUI7UUFBekIsWUFBTyxHQUFQLE9BQU8sQ0FBa0I7UUF4QjlDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQU1qQyxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBT2hFOztXQUVHO1FBQ0gsVUFBSyxHQUFHO1lBQ04sTUFBTSxFQUFFLEtBQUs7WUFDYixRQUFRLEVBQUUsQ0FBQztZQUNYLFNBQVMsRUFBRSxFQUFFO1lBQ2IsWUFBWSxFQUFFLEtBQUs7WUFDbkIsVUFBVSxFQUFFLGFBQWEsQ0FBQyxNQUFNO1NBQ2pDLENBQUM7SUFFdUQsQ0FBQztJQUUxRCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZO2FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDLFNBQVMsQ0FBQyxDQUFDLEtBQTBCLEVBQUUsRUFBRTtZQUN4QyxJ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QVMsRUFBRSxDQUFDO2lCQUNiO3FCQUFNO29CQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztvQkFDeEIsb0JBQW9CLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO29CQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUNwQztZQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBQ0YsU0FBUyxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMvQixDQUFDOzsyR0FoTVUsY0FBYzsrRkFBZCxjQUFjLHdIQ25CM0IsdTNGQTJFQTsyRkR4RGEsY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxXQUFXLGlCQUVOLGlCQUFpQixDQUFDLElBQUk7dUdBUTVCLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNub3RpZmlyZUV2ZW50VHlwZSwgU25vdGlmaXJlVHlwZSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBTbm90aWZpcmVUb2FzdE1vZGVsIH0gZnJvbSAnLi9ub3RpZmlyZS10b2FzdC5tb2RlbCc7XG5pbXBvcnQgeyBTbm90aWZpcmVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtdG9hc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9hc3QuY29tcG9uZW50Lmh0bWwnLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBUb2FzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSB1bnN1YnNjcmliZSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBHZXQgdG9hc3QgZnJvbSBub3RpZmljYXRpb25zIGFycmF5XG4gICAqL1xuICBASW5wdXQoKSB0b2FzdCE6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIEBPdXRwdXQoKSBzdGF0ZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFNub3RpZmlyZUV2ZW50VHlwZT4oKTtcblxuICAvKipcbiAgICogcmVxdWVzdEFuaW1hdGlvbkZyYW1lIGlkXG4gICAqL1xuICBhbmltYXRpb25GcmFtZSE6IG51bWJlcjtcblxuICAvKipcbiAgICogVG9hc3Qgc3RhdGVcbiAgICovXG4gIHN0YXRlID0ge1xuICAgIHBhdXNlZDogZmFsc2UsXG4gICAgcHJvZ3Jlc3M6IDAsXG4gICAgYW5pbWF0aW9uOiAnJyxcbiAgICBpc0Rlc3Ryb3lpbmc6IGZhbHNlLFxuICAgIHByb21wdFR5cGU6IFNub3RpZmlyZVR5cGUuUFJPTVBULFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgc2VydmljZTogU25vdGlmaXJlU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNlcnZpY2UudG9hc3RDaGFuZ2VkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxuICAgICAgLnN1YnNjcmliZSgodG9hc3Q6IFNub3RpZmlyZVRvYXN0TW9kZWwpID0+IHtcbiAgICAgICAgaWYgKHRoaXMudG9hc3QuaWQgPT09IHRvYXN0LmlkKSB7XG4gICAgICAgICAgdGhpcy5pbml0VG9hc3QoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICB0aGlzLnNlcnZpY2UudG9hc3REZWxldGVkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSQpKVxuICAgICAgLnN1YnNjcmliZSgoaWQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMudG9hc3QuaWQgPT09IGlkKSB7XG4gICAgICAgICAgdGhpcy5vblJlbW92ZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICBpZiAodGhpcy50b2FzdCAmJiB0aGlzLnRvYXN0LmNvbmZpZyAmJiAhdGhpcy50b2FzdC5jb25maWcudGltZW91dCkge1xuICAgICAgdGhpcy50b2FzdC5jb25maWcuc2hvd1Byb2dyZXNzQmFyID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuTU9VTlRFRCk7XG4gICAgdGhpcy5zdGF0ZS5hbmltYXRpb24gPSAnbm90aWZpcmUtdG9hc3QtLWluJztcbiAgfVxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5zZXJ2aWNlLmRlZmF1bHRDb25maWcuc25vdGlmaXJlQ29uZmlnICYmXG4gICAgICB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5zbm90aWZpcmVDb25maWcuYW5pbWF0aW9uXG4gICAgKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zdGF0ZUNoYW5nZWQuZW1pdChTbm90aWZpcmVFdmVudFR5cGUuQkVGT1JFX1NIT1cpO1xuICAgICAgICB0aGlzLnRvYXN0LmV2ZW50RW1pdHRlci5uZXh0KFNub3RpZmlyZUV2ZW50VHlwZS5CRUZPUkVfU0hPVyk7XG4gICAgICAgIHRoaXMuc3RhdGUuYW5pbWF0aW9uID1cbiAgICAgICAgICB0aGlzLnRvYXN0LmNvbmZpZyAmJlxuICAgICAgICAgIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbiAmJlxuICAgICAgICAgIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbi5lbnRlclxuICAgICAgICAgICAgPyB0aGlzLnRvYXN0LmNvbmZpZy5hbmltYXRpb24uZW50ZXJcbiAgICAgICAgICAgIDogJyc7XG4gICAgICB9LCB0aGlzLnNlcnZpY2UuZGVmYXVsdENvbmZpZy5zbm90aWZpcmVDb25maWcuYW5pbWF0aW9uLnRpbWUgLyA1KTsgLy8gdGltZSB0byBzaG93IHRvYXN0IHB1c2ggYW5pbWF0aW9uIChub3RpZmlyZS10b2FzdC0taW4pXG4gICAgfVxuICB9XG4gIC8qKlxuICAgKiBUcmlnZ2VyIGJlZm9yZURlc3Ryb3kgbGlmZWN5Y2xlLiBSZW1vdmVzIHRvYXN0XG4gICAqL1xuICBvblJlbW92ZSgpIHtcbiAgICB0aGlzLnN0YXRlLmlzRGVzdHJveWluZyA9IHRydWU7XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuQkVGT1JFX0hJREUpO1xuICAgIHRoaXMuc3RhdGVDaGFuZ2VkLmVtaXQoU25vdGlmaXJlRXZlbnRUeXBlLkJFRk9SRV9ISURFKTtcbiAgICB0aGlzLnN0YXRlLmFuaW1hdGlvbiA9XG4gICAgICAodGhpcy50b2FzdC5jb25maWcgJiZcbiAgICAgICAgdGhpcy50b2FzdC5jb25maWcuYW5pbWF0aW9uICYmXG4gICAgICAgIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbi5leGl0KSB8fFxuICAgICAgJyc7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnN0YXRlQ2hhbmdlZC5lbWl0KFNub3RpZmlyZUV2ZW50VHlwZS5ISURERU4pO1xuICAgICAgdGhpcy5zdGF0ZS5hbmltYXRpb24gPSAnbm90aWZpcmUtdG9hc3QtLW91dCc7XG4gICAgICB0aGlzLnRvYXN0LmV2ZW50RW1pdHRlci5uZXh0KFNub3RpZmlyZUV2ZW50VHlwZS5ISURERU4pO1xuICAgICAgc2V0VGltZW91dChcbiAgICAgICAgKCkgPT4gdGhpcy5zZXJ2aWNlLnJlbW92ZSh0aGlzLnRvYXN0LmlkLCB0cnVlKSxcbiAgICAgICAgdGhpcy50b2FzdC5jb25maWcgJiZcbiAgICAgICAgICB0aGlzLnRvYXN0LmNvbmZpZy5hbmltYXRpb24gJiZcbiAgICAgICAgICB0aGlzLnRvYXN0LmNvbmZpZy5hbmltYXRpb24udGltZSAvIDJcbiAgICAgICk7XG4gICAgfSwgdGhpcy50b2FzdC5jb25maWcgJiYgdGhpcy50b2FzdC5jb25maWcuYW5pbWF0aW9uICYmIHRoaXMudG9hc3QuY29uZmlnLmFuaW1hdGlvbi50aW1lIC8gMik7XG4gIH1cbiAgLyoqXG4gICAqIFRyaWdnZXIgT25DbGljayBsaWZlY3ljbGVcbiAgICovXG4gIG9uQ2xpY2soKSB7XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuQ0xJQ0spO1xuICAgIGlmICh0aGlzLnRvYXN0ICYmIHRoaXMudG9hc3QuY29uZmlnICYmIHRoaXMudG9hc3QuY29uZmlnLmNsb3NlT25DbGljaykge1xuICAgICAgdGhpcy5zZXJ2aWNlLnJlbW92ZSh0aGlzLnRvYXN0LmlkKTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIFRyaWdnZXIgb25Ib3ZlckVudGVyIGxpZmVjeWNsZVxuICAgKi9cbiAgb25Nb3VzZUVudGVyKCkge1xuICAgIHRoaXMudG9hc3QuZXZlbnRFbWl0dGVyLm5leHQoU25vdGlmaXJlRXZlbnRUeXBlLk1PVVNFX0VOVEVSKTtcbiAgICBpZiAodGhpcy50b2FzdCAmJiB0aGlzLnRvYXN0LmNvbmZpZyAmJiB0aGlzLnRvYXN0LmNvbmZpZy5wYXVzZU9uSG92ZXIpIHtcbiAgICAgIHRoaXMuc3RhdGUucGF1c2VkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlciBvbkhvdmVyTGVhdmUgbGlmZWN5Y2xlXG4gICAqL1xuICBvbk1vdXNlTGVhdmUoKSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy50b2FzdCAmJlxuICAgICAgdGhpcy50b2FzdC5jb25maWcgJiZcbiAgICAgIHRoaXMudG9hc3QuY29uZmlnLnBhdXNlT25Ib3ZlciAmJlxuICAgICAgdGhpcy50b2FzdC5jb25maWcudGltZW91dFxuICAgICkge1xuICAgICAgdGhpcy5zdGF0ZS5wYXVzZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuc3RhcnRUaW1lb3V0KHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXQgKiB0aGlzLnN0YXRlLnByb2dyZXNzKTtcbiAgICB9XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuTU9VU0VfTEVBVkUpO1xuICB9XG4gIC8qKlxuICAgKiBSZW1vdmUgdG9hc3QgY29tcGxldGVseSBhZnRlciBhbmltYXRpb25cbiAgICovXG4gIG9uRXhpdFRyYW5zaXRpb25FbmQoKSB7XG4gICAgaWYgKHRoaXMuc3RhdGUuaXNEZXN0cm95aW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuaW5pdFRvYXN0KCk7XG4gICAgdGhpcy50b2FzdC5ldmVudEVtaXR0ZXIubmV4dChTbm90aWZpcmVFdmVudFR5cGUuU0hPV04pO1xuICB9XG5cbiAgLypcbiAgIENvbW1vblxuICAgKi9cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSBiYXNlIHRvYXN0IGNvbmZpZ1xuICAgKlxuICAgKi9cbiAgaW5pdFRvYXN0KCk6IHZvaWQge1xuICAgIGlmIChcbiAgICAgICh0aGlzLnRvYXN0ICYmIHRoaXMudG9hc3QuY29uZmlnICYmIHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXRcbiAgICAgICAgPyB0aGlzLnRvYXN0LmNvbmZpZy50aW1lb3V0XG4gICAgICAgIDogMCkgPiAwXG4gICAgKSB7XG4gICAgICB0aGlzLnN0YXJ0VGltZW91dCgwKTtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIFN0YXJ0IHByb2dyZXNzIGJhclxuICAgKiBAcGFyYW0gc3RhcnRUaW1lIG51bWJlclxuICAgKi9cbiAgc3RhcnRUaW1lb3V0KHN0YXJ0VGltZTogbnVtYmVyID0gMCkge1xuICAgIGNvbnN0IHN0YXJ0ID0gcGVyZm9ybWFuY2Uubm93KCk7XG4gICAgY29uc3QgY2FsY3VsYXRlID0gKCkgPT4ge1xuICAgICAgdGhpcy5hbmltYXRpb25GcmFtZSA9IHJlcXVlc3RBbmltYXRpb25GcmFtZSgodGltZXN0YW1wKSA9PiB7XG4gICAgICAgIGNvbnN0IHJ1bnRpbWUgPSB0aW1lc3RhbXAgKyBzdGFydFRpbWUgLSBzdGFydDtcbiAgICAgICAgY29uc3QgcHJvZ3Jlc3MgPSBNYXRoLm1pbihcbiAgICAgICAgICBydW50aW1lIC9cbiAgICAgICAgICAgICh0aGlzLnRvYXN0ICYmIHRoaXMudG9hc3QuY29uZmlnICYmIHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXRcbiAgICAgICAgICAgICAgPyB0aGlzLnRvYXN0LmNvbmZpZy50aW1lb3V0XG4gICAgICAgICAgICAgIDogMSksXG4gICAgICAgICAgMVxuICAgICAgICApO1xuICAgICAgICBpZiAodGhpcy5zdGF0ZS5wYXVzZWQpIHtcbiAgICAgICAgICBjYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLmFuaW1hdGlvbkZyYW1lKTtcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICBydW50aW1lIDxcbiAgICAgICAgICAodGhpcy50b2FzdCAmJiB0aGlzLnRvYXN0LmNvbmZpZyAmJiB0aGlzLnRvYXN0LmNvbmZpZy50aW1lb3V0XG4gICAgICAgICAgICA/IHRoaXMudG9hc3QuY29uZmlnLnRpbWVvdXRcbiAgICAgICAgICAgIDogMSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5zdGF0ZS5wcm9ncmVzcyA9IHByb2dyZXNzO1xuICAgICAgICAgIGNhbGN1bGF0ZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuc3RhdGUucHJvZ3Jlc3MgPSAxO1xuICAgICAgICAgIGNhbmNlbEFuaW1hdGlvbkZyYW1lKHRoaXMuYW5pbWF0aW9uRnJhbWUpO1xuICAgICAgICAgIHRoaXMuc2VydmljZS5yZW1vdmUodGhpcy50b2FzdC5pZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH07XG4gICAgY2FsY3VsYXRlKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnVuc3Vic2NyaWJlJC5uZXh0KCk7XG4gICAgdGhpcy51bnN1YnNjcmliZSQuY29tcGxldGUoKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInRvYXN0ICYmIHRvYXN0LmNvbmZpZ1wiPlxuICAgIDxkaXZcbiAgICAgICAgW2F0dHIucm9sZV09XCJ0b2FzdC5jb25maWcudHlwZSA9PT0gc3RhdGUucHJvbXB0VHlwZSA/ICdkaWFsb2cnIDogJ2FsZXJ0J1wiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCInc25vdGlmeV8nICsgdG9hc3QuaWRcIlxuICAgICAgICBbYXR0ci5hcmlhLW1vZGFsXT1cInRvYXN0LmNvbmZpZy50eXBlID09PSBzdGF0ZS5wcm9tcHRUeXBlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiW1xuICAnbm90aWZpcmUtdG9hc3QgYW5pbWF0ZWQnLFxuICAnc25vdGlmeS0nICsgdG9hc3QuY29uZmlnLnR5cGUsXG4gIHN0YXRlLmFuaW1hdGlvbiwgIHRvYXN0LnZhbGlkID09PSB1bmRlZmluZWQgPyAnJyA6IHRvYXN0LnZhbGlkID8gJ3Nub3RpZnlUb2FzdC0tdmFsaWQnIDogJ3Nub3RpZnlUb2FzdC0taW52YWxpZCdcbl1cIlxuICAgICAgICBbbmdTdHlsZV09XCJ7XG4gICctd2Via2l0LXRyYW5zaXRpb24nOiB0b2FzdC5jb25maWcuYW5pbWF0aW9uICYmIHRvYXN0LmNvbmZpZy5hbmltYXRpb24udGltZSAgKyAnbXMnLFxuICB0cmFuc2l0aW9uOiAgdG9hc3QuY29uZmlnLmFuaW1hdGlvbiAmJiB0b2FzdC5jb25maWcuYW5pbWF0aW9uLnRpbWUgKyAnbXMnLFxuICAnLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb24nOiAgdG9hc3QuY29uZmlnLmFuaW1hdGlvbiAmJiAgdG9hc3QuY29uZmlnLmFuaW1hdGlvbi50aW1lICsgJ21zJyxcbiAgJ2FuaW1hdGlvbi1kdXJhdGlvbic6ICB0b2FzdC5jb25maWcuYW5pbWF0aW9uICYmIHRvYXN0LmNvbmZpZy5hbmltYXRpb24udGltZSArICdtcydcbn1cIlxuICAgICAgICAoYW5pbWF0aW9uZW5kKT1cIm9uRXhpdFRyYW5zaXRpb25FbmQoKVwiXG4gICAgICAgIChjbGljayk9XCJvbkNsaWNrKClcIlxuICAgICAgICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoKVwiXG4gICAgICAgIChtb3VzZWxlYXZlKT1cIm9uTW91c2VMZWF2ZSgpXCJcbiAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwibm90aWZpcmUtdG9hc3RfX3Byb2dyZXNzQmFyXCJcbiAgICAgICAgICAgICpuZ0lmPVwidG9hc3QuY29uZmlnLnNob3dQcm9ncmVzc0JhclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJub3RpZmlyZS10b2FzdF9fcHJvZ3Jlc3NCYXJfX3BlcmNlbnRhZ2VcIlxuICAgICAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsgd2lkdGg6IHN0YXRlLnByb2dyZXNzICogMTAwICsgJyUnIH1cIlxuICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwibm90aWZpcmUtdG9hc3RfX2lubmVyXCJcbiAgICAgICAgICAgICpuZ0lmPVwiIXRvYXN0LmNvbmZpZy5odG1sOyBlbHNlIHRvYXN0SFRNTFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm5vdGlmaXJlLXRvYXN0X190aXRsZVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiJ3Nub3RpZnlfJyArIHRvYXN0LmlkXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInRvYXN0LnRpdGxlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB0b2FzdC50aXRsZSB8IHRydW5jYXRlOiB0b2FzdC5jb25maWcudGl0bGVNYXhMZW5ndGggfX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwibm90aWZpcmUtdG9hc3RfX2JvZHlcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwidG9hc3QuYm9keVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgdG9hc3QuYm9keSB8IHRydW5jYXRlOiB0b2FzdC5jb25maWcuYm9keU1heExlbmd0aCB9fVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8bmd4LXNub3RpZnktcHJvbXB0XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJ0b2FzdC5jb25maWcudHlwZSA9PT0gc3RhdGUucHJvbXB0VHlwZVwiXG4gICAgICAgICAgICAgICAgW3RvYXN0XT1cInRvYXN0XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmd4LXNub3RpZnktcHJvbXB0PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiIXRvYXN0LmNvbmZpZy5pY29uOyBlbHNlIGVsc2VCbG9ja1wiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiWydzbm90aWZpcmUtaWNvbicsIHRvYXN0LmNvbmZpZy5pY29uQ2xhc3MgfHwgJ3Nub3RpZmlyZS1pY29uLS0nICsgdG9hc3QuY29uZmlnLnR5cGVdXCJcbiAgICAgICAgICAgID48L2Rpdj5cbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUJsb2NrPlxuICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbm90aWZpcmUtaWNvblwiXG4gICAgICAgICAgICAgICAgICAgIFtzcmNdPVwidG9hc3QuY29uZmlnLmljb25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8bmctdGVtcGxhdGUgI3RvYXN0SFRNTD5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cIm5vdGlmaXJlLXRvYXN0X19pbm5lclwiXG4gICAgICAgICAgICAgICAgW2lubmVySFRNTF09XCJ0b2FzdC5jb25maWcuaHRtbFwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxub3RpZmlyZS1idXR0b25cbiAgICAgICAgICAgICpuZ0lmPVwidG9hc3QuY29uZmlnLmJ1dHRvbnNcIlxuICAgICAgICAgICAgW3RvYXN0XT1cInRvYXN0XCJcbiAgICAgICAgPjwvbm90aWZpcmUtYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -21,7 +21,7 @@ export const ToastDefaults = {
21
21
  icon: undefined,
22
22
  iconClass: undefined,
23
23
  html: undefined,
24
- position: 'RIGHT_BOTTOM',
24
+ position: 'RIGHT_TOP',
25
25
  animation: { enter: 'fadeIn', exit: 'fadeOut', time: 400 },
26
26
  },
27
27
  type: {
@@ -65,4 +65,4 @@ export const ToastDefaults = {
65
65
  },
66
66
  },
67
67
  };
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvZGVmYXVsdHMvdG9hc3QtZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE2QixhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFckU7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsTUFBTSxFQUFFO1FBQ04sUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQUUsQ0FBQztRQUNkLGFBQWEsRUFBRSxDQUFDO1FBQ2hCLGdCQUFnQixFQUFFLEtBQUs7S0FDeEI7SUFDRCxlQUFlLEVBQUU7UUFDZixJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7UUFDeEIsZUFBZSxFQUFFLElBQUk7UUFDckIsT0FBTyxFQUFFLElBQUk7UUFDYixZQUFZLEVBQUUsSUFBSTtRQUNsQixZQUFZLEVBQUUsSUFBSTtRQUNsQixhQUFhLEVBQUUsR0FBRztRQUNsQixjQUFjLEVBQUUsRUFBRTtRQUNsQixRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ1osSUFBSSxFQUFFLFNBQVM7UUFDZixTQUFTLEVBQUUsU0FBUztRQUNwQixJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxjQUEyQztRQUNyRCxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtLQUMzRDtJQUNELElBQUksRUFBRTtRQUNKLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RCLE9BQU8sRUFBRSxDQUFDO1lBQ1YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsT0FBTyxFQUFFO2dCQUNQLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7Z0JBQ3hDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7YUFDOUM7WUFDRCxXQUFXLEVBQUUsc0JBQXNCO1lBQ25DLElBQUksRUFBRSxhQUFhLENBQUMsTUFBTTtTQUMzQjtRQUNELENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3ZCLE9BQU8sRUFBRSxDQUFDO1lBQ1YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsT0FBTyxFQUFFO2dCQUNQLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7Z0JBQ3hDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7YUFDOUM7WUFDRCxJQUFJLEVBQUUsYUFBYSxDQUFDLE9BQU87U0FDNUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN2QixJQUFJLEVBQUUsYUFBYSxDQUFDLE9BQU87U0FDNUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyQixJQUFJLEVBQUUsYUFBYSxDQUFDLEtBQUs7U0FDMUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN2QixJQUFJLEVBQUUsYUFBYSxDQUFDLE9BQU87U0FDNUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNwQixJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7U0FDekI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyQixZQUFZLEVBQUUsS0FBSztZQUNuQixZQUFZLEVBQUUsS0FBSztZQUNuQixPQUFPLEVBQUUsQ0FBQztZQUNWLGVBQWUsRUFBRSxLQUFLO1lBQ3RCLElBQUksRUFBRSxhQUFhLENBQUMsS0FBSztTQUMxQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGUsIFNub3RpZmlyZVR5cGUgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG4vKipcbiAqIFNub3RpZnkgZGVmYXVsdCBjb25maWd1cmF0aW9uIG9iamVjdFxuICovXG5leHBvcnQgY29uc3QgVG9hc3REZWZhdWx0cyA9IHtcbiAgZ2xvYmFsOiB7XG4gICAgbmV3T25Ub3A6IHRydWUsXG4gICAgbWF4T25TY3JlZW46IDgsXG4gICAgbWF4QXRQb3NpdGlvbjogOCxcbiAgICBmaWx0ZXJEdXBsaWNhdGVzOiBmYWxzZSxcbiAgfSxcbiAgc25vdGlmaXJlQ29uZmlnOiB7XG4gICAgdHlwZTogU25vdGlmaXJlVHlwZS5JTkZPLFxuICAgIHNob3dQcm9ncmVzc0JhcjogdHJ1ZSxcbiAgICB0aW1lb3V0OiA1MDAwLFxuICAgIGNsb3NlT25DbGljazogdHJ1ZSxcbiAgICBwYXVzZU9uSG92ZXI6IHRydWUsXG4gICAgYm9keU1heExlbmd0aDogMTUwLFxuICAgIHRpdGxlTWF4TGVuZ3RoOiAxNixcbiAgICBiYWNrZHJvcDogLTEsXG4gICAgaWNvbjogdW5kZWZpbmVkLFxuICAgIGljb25DbGFzczogdW5kZWZpbmVkLFxuICAgIGh0bWw6IHVuZGVmaW5lZCxcbiAgICBwb3NpdGlvbjogJ1JJR0hUX0JPVFRPTScgYXMgU25vdGlmaWNhdGlvblBvc2l0aW9uVHlwZSxcbiAgICBhbmltYXRpb246IHsgZW50ZXI6ICdmYWRlSW4nLCBleGl0OiAnZmFkZU91dCcsIHRpbWU6IDQwMCB9LFxuICB9LFxuICB0eXBlOiB7XG4gICAgW1Nub3RpZmlyZVR5cGUuUFJPTVBUXToge1xuICAgICAgdGltZW91dDogMCxcbiAgICAgIGNsb3NlT25DbGljazogZmFsc2UsXG4gICAgICBidXR0b25zOiBbXG4gICAgICAgIHsgdGV4dDogJ09rJywgYWN0aW9uOiBudWxsLCBib2xkOiB0cnVlIH0sXG4gICAgICAgIHsgdGV4dDogJ0NhbmNlbCcsIGFjdGlvbjogbnVsbCwgYm9sZDogZmFsc2UgfSxcbiAgICAgIF0sXG4gICAgICBwbGFjZWhvbGRlcjogJ0VudGVyIGFuc3dlciBoZXJlLi4uJyxcbiAgICAgIHR5cGU6IFNub3RpZmlyZVR5cGUuUFJPTVBULFxuICAgIH0sXG4gICAgW1Nub3RpZmlyZVR5cGUuQ09ORklSTV06IHtcbiAgICAgIHRpbWVvdXQ6IDAsXG4gICAgICBjbG9zZU9uQ2xpY2s6IGZhbHNlLFxuICAgICAgYnV0dG9uczogW1xuICAgICAgICB7IHRleHQ6ICdPaycsIGFjdGlvbjogbnVsbCwgYm9sZDogdHJ1ZSB9LFxuICAgICAgICB7IHRleHQ6ICdDYW5jZWwnLCBhY3Rpb246IG51bGwsIGJvbGQ6IGZhbHNlIH0sXG4gICAgICBdLFxuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5DT05GSVJNLFxuICAgIH0sXG4gICAgW1Nub3RpZmlyZVR5cGUuU1VDQ0VTU106IHtcbiAgICAgIHR5cGU6IFNub3RpZmlyZVR5cGUuU1VDQ0VTUyxcbiAgICB9LFxuICAgIFtTbm90aWZpcmVUeXBlLkVSUk9SXToge1xuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5FUlJPUixcbiAgICB9LFxuICAgIFtTbm90aWZpcmVUeXBlLldBUk5JTkddOiB7XG4gICAgICB0eXBlOiBTbm90aWZpcmVUeXBlLldBUk5JTkcsXG4gICAgfSxcbiAgICBbU25vdGlmaXJlVHlwZS5JTkZPXToge1xuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5JTkZPLFxuICAgIH0sXG4gICAgW1Nub3RpZmlyZVR5cGUuQVNZTkNdOiB7XG4gICAgICBwYXVzZU9uSG92ZXI6IGZhbHNlLFxuICAgICAgY2xvc2VPbkNsaWNrOiBmYWxzZSxcbiAgICAgIHRpbWVvdXQ6IDAsXG4gICAgICBzaG93UHJvZ3Jlc3NCYXI6IGZhbHNlLFxuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5BU1lOQyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtZGVmYXVsdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvZGVmYXVsdHMvdG9hc3QtZGVmYXVsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUE2QixhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFckU7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUc7SUFDM0IsTUFBTSxFQUFFO1FBQ04sUUFBUSxFQUFFLElBQUk7UUFDZCxXQUFXLEVBQUUsQ0FBQztRQUNkLGFBQWEsRUFBRSxDQUFDO1FBQ2hCLGdCQUFnQixFQUFFLEtBQUs7S0FDeEI7SUFDRCxlQUFlLEVBQUU7UUFDZixJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7UUFDeEIsZUFBZSxFQUFFLElBQUk7UUFDckIsT0FBTyxFQUFFLElBQUk7UUFDYixZQUFZLEVBQUUsSUFBSTtRQUNsQixZQUFZLEVBQUUsSUFBSTtRQUNsQixhQUFhLEVBQUUsR0FBRztRQUNsQixjQUFjLEVBQUUsRUFBRTtRQUNsQixRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ1osSUFBSSxFQUFFLFNBQVM7UUFDZixTQUFTLEVBQUUsU0FBUztRQUNwQixJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxXQUF3QztRQUNsRCxTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtLQUMzRDtJQUNELElBQUksRUFBRTtRQUNKLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3RCLE9BQU8sRUFBRSxDQUFDO1lBQ1YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsT0FBTyxFQUFFO2dCQUNQLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7Z0JBQ3hDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7YUFDOUM7WUFDRCxXQUFXLEVBQUUsc0JBQXNCO1lBQ25DLElBQUksRUFBRSxhQUFhLENBQUMsTUFBTTtTQUMzQjtRQUNELENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3ZCLE9BQU8sRUFBRSxDQUFDO1lBQ1YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsT0FBTyxFQUFFO2dCQUNQLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUU7Z0JBQ3hDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUU7YUFDOUM7WUFDRCxJQUFJLEVBQUUsYUFBYSxDQUFDLE9BQU87U0FDNUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN2QixJQUFJLEVBQUUsYUFBYSxDQUFDLE9BQU87U0FDNUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyQixJQUFJLEVBQUUsYUFBYSxDQUFDLEtBQUs7U0FDMUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN2QixJQUFJLEVBQUUsYUFBYSxDQUFDLE9BQU87U0FDNUI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNwQixJQUFJLEVBQUUsYUFBYSxDQUFDLElBQUk7U0FDekI7UUFDRCxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyQixZQUFZLEVBQUUsS0FBSztZQUNuQixZQUFZLEVBQUUsS0FBSztZQUNuQixPQUFPLEVBQUUsQ0FBQztZQUNWLGVBQWUsRUFBRSxLQUFLO1lBQ3RCLElBQUksRUFBRSxhQUFhLENBQUMsS0FBSztTQUMxQjtLQUNGO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNub3RpZmljYXRpb25Qb3NpdGlvblR5cGUsIFNub3RpZmlyZVR5cGUgfSBmcm9tICcuLi9tb2RlbHMnO1xuXG4vKipcbiAqIFNub3RpZnkgZGVmYXVsdCBjb25maWd1cmF0aW9uIG9iamVjdFxuICovXG5leHBvcnQgY29uc3QgVG9hc3REZWZhdWx0cyA9IHtcbiAgZ2xvYmFsOiB7XG4gICAgbmV3T25Ub3A6IHRydWUsXG4gICAgbWF4T25TY3JlZW46IDgsXG4gICAgbWF4QXRQb3NpdGlvbjogOCxcbiAgICBmaWx0ZXJEdXBsaWNhdGVzOiBmYWxzZSxcbiAgfSxcbiAgc25vdGlmaXJlQ29uZmlnOiB7XG4gICAgdHlwZTogU25vdGlmaXJlVHlwZS5JTkZPLFxuICAgIHNob3dQcm9ncmVzc0JhcjogdHJ1ZSxcbiAgICB0aW1lb3V0OiA1MDAwLFxuICAgIGNsb3NlT25DbGljazogdHJ1ZSxcbiAgICBwYXVzZU9uSG92ZXI6IHRydWUsXG4gICAgYm9keU1heExlbmd0aDogMTUwLFxuICAgIHRpdGxlTWF4TGVuZ3RoOiAxNixcbiAgICBiYWNrZHJvcDogLTEsXG4gICAgaWNvbjogdW5kZWZpbmVkLFxuICAgIGljb25DbGFzczogdW5kZWZpbmVkLFxuICAgIGh0bWw6IHVuZGVmaW5lZCxcbiAgICBwb3NpdGlvbjogJ1JJR0hUX1RPUCcgYXMgU25vdGlmaWNhdGlvblBvc2l0aW9uVHlwZSxcbiAgICBhbmltYXRpb246IHsgZW50ZXI6ICdmYWRlSW4nLCBleGl0OiAnZmFkZU91dCcsIHRpbWU6IDQwMCB9LFxuICB9LFxuICB0eXBlOiB7XG4gICAgW1Nub3RpZmlyZVR5cGUuUFJPTVBUXToge1xuICAgICAgdGltZW91dDogMCxcbiAgICAgIGNsb3NlT25DbGljazogZmFsc2UsXG4gICAgICBidXR0b25zOiBbXG4gICAgICAgIHsgdGV4dDogJ09rJywgYWN0aW9uOiBudWxsLCBib2xkOiB0cnVlIH0sXG4gICAgICAgIHsgdGV4dDogJ0NhbmNlbCcsIGFjdGlvbjogbnVsbCwgYm9sZDogZmFsc2UgfSxcbiAgICAgIF0sXG4gICAgICBwbGFjZWhvbGRlcjogJ0VudGVyIGFuc3dlciBoZXJlLi4uJyxcbiAgICAgIHR5cGU6IFNub3RpZmlyZVR5cGUuUFJPTVBULFxuICAgIH0sXG4gICAgW1Nub3RpZmlyZVR5cGUuQ09ORklSTV06IHtcbiAgICAgIHRpbWVvdXQ6IDAsXG4gICAgICBjbG9zZU9uQ2xpY2s6IGZhbHNlLFxuICAgICAgYnV0dG9uczogW1xuICAgICAgICB7IHRleHQ6ICdPaycsIGFjdGlvbjogbnVsbCwgYm9sZDogdHJ1ZSB9LFxuICAgICAgICB7IHRleHQ6ICdDYW5jZWwnLCBhY3Rpb246IG51bGwsIGJvbGQ6IGZhbHNlIH0sXG4gICAgICBdLFxuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5DT05GSVJNLFxuICAgIH0sXG4gICAgW1Nub3RpZmlyZVR5cGUuU1VDQ0VTU106IHtcbiAgICAgIHR5cGU6IFNub3RpZmlyZVR5cGUuU1VDQ0VTUyxcbiAgICB9LFxuICAgIFtTbm90aWZpcmVUeXBlLkVSUk9SXToge1xuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5FUlJPUixcbiAgICB9LFxuICAgIFtTbm90aWZpcmVUeXBlLldBUk5JTkddOiB7XG4gICAgICB0eXBlOiBTbm90aWZpcmVUeXBlLldBUk5JTkcsXG4gICAgfSxcbiAgICBbU25vdGlmaXJlVHlwZS5JTkZPXToge1xuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5JTkZPLFxuICAgIH0sXG4gICAgW1Nub3RpZmlyZVR5cGUuQVNZTkNdOiB7XG4gICAgICBwYXVzZU9uSG92ZXI6IGZhbHNlLFxuICAgICAgY2xvc2VPbkNsaWNrOiBmYWxzZSxcbiAgICAgIHRpbWVvdXQ6IDAsXG4gICAgICBzaG93UHJvZ3Jlc3NCYXI6IGZhbHNlLFxuICAgICAgdHlwZTogU25vdGlmaXJlVHlwZS5BU1lOQyxcbiAgICB9LFxuICB9LFxufTtcbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { Inject, Injectable } from '@angular/core';
3
- import { from, Subject } from 'rxjs';
3
+ import { catchError, finalize, from, Subject, tap, throwError, } from 'rxjs';
4
4
  import { SetToastType } from '../decorators/set-toast-type.decorator';
5
5
  import { TransformArgument } from '../decorators/transform-argument.decorator';
6
6
  import { SnotifireEventType, SnotifireType } from '../models';
@@ -31,7 +31,6 @@ export class SnotifireService {
31
31
  if (this.defaultConfig.type && notif.config && notif.config.type) {
32
32
  const config = mergeDeep(this.defaultConfig.snotifireConfig, this.defaultConfig.type[notif.config.type], notif.config);
33
33
  const toast = new SnotifireToastModel(uuid(), notif.title ? notif.title : '', notif.body ? notif.body : '', config);
34
- console.log(config);
35
34
  this.add(toast);
36
35
  return toast;
37
36
  }
@@ -171,22 +170,37 @@ export class SnotifireService {
171
170
  async = args.action;
172
171
  }
173
172
  const toast = this.create(args);
173
+ let failed = false;
174
+ const asyncAtion = async.pipe(tap((next) => {
175
+ console.log('called'), this.mergeToast(toast, next);
176
+ }), catchError((error) => {
177
+ failed = true;
178
+ return throwError(() => error);
179
+ }), finalize(() => {
180
+ this.mergeToast(toast, {}, failed === true ? SnotifireType.ERROR : SnotifireType.SUCCESS);
181
+ }));
174
182
  toast.on(SnotifireEventType.MOUNTED, () => {
175
- const subscription = async.subscribe({
176
- next: (next) => {
177
- this.mergeToast(toast, next);
178
- },
179
- error: (error) => {
180
- this.mergeToast(toast, error, SnotifireType.ERROR);
181
- subscription.unsubscribe();
182
- },
183
- complete: () => {
184
- this.mergeToast(toast, {}, SnotifireType.SUCCESS);
185
- subscription.unsubscribe();
186
- },
187
- });
183
+ console.log('mounted');
184
+ return asyncAtion;
188
185
  });
189
- return toast;
186
+ return asyncAtion;
187
+ // const toast = this.create(args);
188
+ // toast.on(SnotifireEventType.MOUNTED, () => {
189
+ // const subscription: Subscription = async.subscribe({
190
+ // next: (next?: SnotifireModel) => {
191
+ // this.mergeToast(toast, next);
192
+ // },
193
+ // error: (error?: SnotifireModel) => {
194
+ // this.mergeToast(toast, error, SnotifireType.ERROR);
195
+ // subscription.unsubscribe();
196
+ // },
197
+ // complete: () => {
198
+ // this.mergeToast(toast, {}, SnotifireType.SUCCESS);
199
+ // subscription.unsubscribe();
200
+ // },
201
+ // });
202
+ // });
203
+ // return toast;
190
204
  }
191
205
  mergeToast(toast, next, type) {
192
206
  if (next.body) {
@@ -196,6 +210,7 @@ export class SnotifireService {
196
210
  toast.title = next.title;
197
211
  }
198
212
  if (type && this.defaultConfig) {
213
+ console.log(type);
199
214
  toast.config = mergeDeep(toast.config, this.defaultConfig.global, this.defaultConfig.snotifireConfig?.type, { type }, next.config);
200
215
  }
201
216
  else {
@@ -280,4 +295,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.1", ngImpor
280
295
  type: Inject,
281
296
  args: ['snotifireConfig']
282
297
  }] }]; }, propDecorators: { success: [], error: [], info: [], warning: [], confirm: [], prompt: [], async: [] } });
283
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxJQUFJLEVBQWMsT0FBTyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDL0UsT0FBTyxFQUFtQixrQkFBa0IsRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHL0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBRzNDLE1BQU0sT0FBTyxnQkFBZ0I7SUFnQjNCLFlBQ29DLGFBQWdDO1FBQWhDLGtCQUFhLEdBQWIsYUFBYSxDQUFtQjtRQWhCcEU7O1dBRUc7UUFDYyx5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFFN0M7O1dBRUc7UUFDTSxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQXlCLENBQUM7UUFFL0MsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBQ3JDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQXVCLENBQUM7UUFFM0Qsa0JBQWEsR0FBK0IsRUFBRSxDQUFDO0lBSTVDLENBQUM7SUFFSjs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLEtBQXFCO1FBQzFCLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsTUFB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QUMvQjtRQUNELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDRDs7OztPQUlHO0lBQ0gsR0FBRyxDQUFDLEVBQVU7UUFDWixPQUFPLENBQ0wsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FDMUUsQ0FBQztJQUNKLENBQUM7OzZHQXBoQlUsZ0JBQWdCLGtCQWlCakIsaUJBQWlCO2lIQWpCaEIsZ0JBQWdCO0FBMkwzQjtJQUxDLGlCQUFpQjtJQUNsQjs7T0FFRzs7SUFDRixZQUFZOytDQU1aO0FBMENEO0lBTEMsaUJBQWlCO0lBQ2xCOztPQUVHOztJQUNGLFlBQVk7NkNBR1o7QUEwQ0Q7SUFMQyxpQkFBaUI7SUFDbEI7O09BRUc7O0lBQ0YsWUFBWTs0Q0FHWjtBQTBDRDtJQUxDLGlCQUFpQjtJQUNsQjs7T0FFRzs7SUFDRixZQUFZOytDQUdaO0FBMENEO0lBTEMsaUJBQWlCO0lBQ2xCOztPQUVHOztJQUNGLFlBQVk7K0NBR1o7QUEwQ0Q7SUFMQyxpQkFBaUI7SUFDbEI7O09BRUc7O0lBQ0YsWUFBWTs4Q0FHWjtBQTBERDtJQUxDLGlCQUFpQjtJQUNsQjs7T0FFRzs7SUFDRixZQUFZOzZDQTRCWjsyRkFqZlUsZ0JBQWdCO2tCQUQ1QixVQUFVOzswQkFrQk4sTUFBTTsyQkFBQyxpQkFBaUI7NENBMEszQixPQUFPLE1BK0NQLEtBQUssTUE0Q0wsSUFBSSxNQTRDSixPQUFPLE1BNENQLE9BQU8sTUE0Q1AsTUFBTSxNQTRETixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTYWZlSHRtbCB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTZXRUb2FzdFR5cGUgfSBmcm9tICcuLi9kZWNvcmF0b3JzL3NldC10b2FzdC10eXBlLmRlY29yYXRvcic7XG5pbXBvcnQgeyBUcmFuc2Zvcm1Bcmd1bWVudCB9IGZyb20gJy4uL2RlY29yYXRvcnMvdHJhbnNmb3JtLWFyZ3VtZW50LmRlY29yYXRvcic7XG5pbXBvcnQgeyBTbm90aWZpcmVDb25maWcsIFNub3RpZmlyZUV2ZW50VHlwZSwgU25vdGlmaXJlVHlwZSB9IGZyb20gJy4uL21vZGVscyc7XG5pbXBvcnQgeyBTbm90aWZpcmVEZWZhdWx0cyB9IGZyb20gJy4uL2RlZmF1bHRzL2RlZmF1bHRzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTbm90aWZpcmVNb2RlbCB9IGZyb20gJy4uL21vZGVscy9zbm90aWZpcmUubW9kZWwnO1xuaW1wb3J0IHsgU25vdGlmaXJlVG9hc3RNb2RlbCB9IGZyb20gJy4uL2NvbXBvbmVudHMvdG9hc3Qvbm90aWZpcmUtdG9hc3QubW9kZWwnO1xuaW1wb3J0IHsgbWVyZ2VEZWVwLCB1dWlkIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU25vdGlmaXJlU2VydmljZSB7XG4gIC8qKlxuICAgKiBNaW5pbXVtIGRpc3BsYXkgdGltZSBvZiB0aGUgbm90aWZpY2F0aW9uIG1lc3NhZ2VcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgbWluaW11bURpc3BsYXllZFRpbWUgPSAzMDAwO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBOb3RpZmlyZSBOb3RpZmljYXRpb25zXG4gICAqL1xuICByZWFkb25seSBlbWl0dGVyID0gbmV3IFN1YmplY3Q8U25vdGlmaXJlVG9hc3RNb2RlbFtdPigpO1xuXG4gIHJlYWRvbmx5IHRvYXN0RGVsZXRlZCA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcbiAgcmVhZG9ubHkgdG9hc3RDaGFuZ2VkID0gbmV3IFN1YmplY3Q8U25vdGlmaXJlVG9hc3RNb2RlbD4oKTtcblxuICBub3RpZmljYXRpb25zOiBBcnJheTxTbm90aWZpcmVUb2FzdE1vZGVsPiA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoJ3Nub3RpZmlyZUNvbmZpZycpIHB1YmxpYyBkZWZhdWx0Q29uZmlnOiBTbm90aWZpcmVEZWZhdWx0c1xuICApIHt9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgdG9hc3QgYW5kIGFkZCBpdCB0byBhcnJheSwgcmV0dXJucyB0b2FzdCBpZFxuICAgKiBAcGFyYW0gTm90aWZpY2F0aW9uTW9kZWwgTm90aWZpY2F0aW9uTW9kZWxcbiAgICogQHJldHVybiBudW1iZXJcbiAgICovXG4gIGNyZWF0ZShub3RpZjogU25vdGlmaXJlTW9kZWwpOiBTbm90aWZpcmVUb2FzdE1vZGVsIHtcbiAgICBpZiAodGhpcy5kZWZhdWx0Q29uZmlnLnR5cGUgJiYgbm90aWYuY29uZmlnICYmIG5vdGlmLmNvbmZpZy50eXBlKSB7XG4gICAgICBjb25zdCBjb25maWcgPSBtZXJnZURlZXAoXG4gICAgICAgIHRoaXMuZGVmYXVsdENvbmZpZy5zbm90aWZpcmVDb25maWcsXG4gICAgICAgIHRoaXMuZGVmYXVsdENvbmZpZy50eXBlW25vdGlmLmNvbmZpZy50eXBlXSxcbiAgICAgICAgbm90aWYuY29uZmlnXG4gICAgICApO1xuICAgICAgY29uc3QgdG9hc3QgPSBuZXcgU25vdGlmaXJlVG9hc3RNb2RlbChcbiAgICAgICAgdXVpZCgpLFxuICAgICAgICBub3RpZi50aXRsZSA/IG5vdGlmLnRpdGxlIDogJycsXG4gICAgICAgIG5vdGlmLmJvZHkgPyBub3RpZi5ib2R5IDogJycsXG4gICAgICAgIGNvbmZpZ1xuICAgICAgKTtcbiAgICAgIGNvbnNvbGUubG9nKGNvbmZpZyk7XG4gICAgICB0aGlzLmFkZCh0b2FzdCk7XG4gICAgICByZXR1cm4gdG9hc3Q7XG4gICAgfVxuICAgIGNvbnN0IGNvbmZpZyA9IG1lcmdlRGVlcCh0aGlzLmRlZmF1bHRDb25maWcuc25vdGlmaXJlQ29uZmlnLCBub3RpZi5jb25maWcpO1xuICAgIGNvbnN0IGRlZmF1bFRvYXN0ID0gbmV3IFNub3RpZmlyZVRvYXN0TW9kZWwoXG4gICAgICB1dWlkKCksXG4gICAgICBub3RpZi50aXRsZSA/IG5vdGlmLnRpdGxlIDogJycsXG4gICAgICBub3RpZi5ib2R5ID8gbm90aWYuYm9keSA6ICcnLFxuICAgICAgY29uZmlnXG4gICAgKTtcbiAgICB0aGlzLmFkZChkZWZhdWxUb2FzdCk7XG4gICAgcmV0dXJuIGRlZmF1bFRvYXN0O1xuICB9XG4gIC8qKlxuICAgKiBJZiBJRCBwYXNzZWQsIGVtaXRzIHRvYXN0IGFuaW1hdGlvbiByZW1vdmUsIGlmIElEICYgUkVNT1ZFIHBhc3NlZCwgcmVtb3ZlcyB0b2FzdCBmcm9tIG5vdGlmaWNhdGlvbnMgYXJyYXlcbiAgICogQHBhcmFtIGlkIG51bWJlclxuICAgKiBAcGFyYW0gcmVtb3ZlIGJvb2xlYW5cbiAgICovXG4gIHJlbW92ZShpZDogbnVtYmVyLCByZW1vdmU/OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCFpZCkge1xuICAgICAgcmV0dXJuIHRoaXMuY2xlYXIoKTtcbiAgICB9XG4gICAgaWYgKHJlbW92ZSkge1xuICAgICAgdGhpcy5ub3RpZmljYXRpb25zID0gdGhpcy5ub3RpZmljYXRpb25zLmZpbHRlcihcbiAgICAgICAgKHRvYXN0KSA9PiB0b2FzdC5pZCAhPT0gaWRcbiAgICAgICk7XG4gICAgICByZXR1cm4gdGhpcy5lbWl0KCk7XG4gICAgfVxuICAgIHRoaXMudG9hc3REZWxldGVkLm5leHQoaWQpO1xuICB9XG5cbiAgc2V0RGVmYXVsdHMoZGVmYXVsdHM6IFNub3RpZmlyZURlZmF1bHRzKTogU25vdGlmaXJlRGVmYXVsdHMge1xuICAgIGNvbnN0IG1lcmdlZENvbmZpZyA9ICh0aGlzLmRlZmF1bHRDb25maWcgPSBtZXJnZURlZXAoXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcsXG4gICAgICBkZWZhdWx0c1xuICAgICkgYXMgU25vdGlmaXJlRGVmYXVsdHMpO1xuICAgIHJldHVybiBtZXJnZWRDb25maWc7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXIgbm90aWZpY2F0aW9ucyBhcnJheVxuICAgKi9cbiAgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5ub3RpZmljYXRpb25zID0gW107XG4gICAgdGhpcy5lbWl0KCk7XG4gIH1cblxuICAvKipcbiAgICogYWRkIE5vdGlmaXJlVG9hc3QgdG8gbm90aWZpY2F0aW9ucyBhcnJheVxuICAgKiBAcGFyYW0gdG9hc3QgTm90aWZpcmVUb2FzdFxuICAgKi9cbiAgcHJpdmF0ZSBhZGQodG9hc3Q6IFNub3RpZmlyZVRvYXN0TW9kZWwpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcgJiZcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZy5nbG9iYWwgJiZcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZy5nbG9iYWwuZmlsdGVyRHVwbGljYXRlcyAmJlxuICAgICAgdGhpcy5jb250YWluc1RvYXN0KHRvYXN0KVxuICAgICkge1xuICAgICAgaWYgKCF0aGlzLmRlZmF1bHRDb25maWcuZ2xvYmFsLmZpbHRlckR1cGxpY2F0ZXMpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGdsb2JhbCBjb25maWcnKTtcbiAgICAgIH1cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnICYmXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcuZ2xvYmFsICYmXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcuZ2xvYmFsLm5ld09uVG9wXG4gICAgKSB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMudW5zaGlmdCh0b2FzdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy5wdXNoKHRvYXN0KTtcbiAgICB9XG4gICAgdGhpcy5lbWl0KCk7XG4gIH1cblxuICAvKipcbiAgICogZW1pdCBjaGFuZ2VzIGluIG5vdGlmaWNhdGlvbnMgYXJyYXlcbiAgICovXG4gIHByaXZhdGUgZW1pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmVtaXR0ZXIubmV4dCh0aGlzLm5vdGlmaWNhdGlvbnMuc2xpY2UoKSk7XG4gIH1cblxuICAvKipcbiAgICogY2hlY2tzIGlmIHRoZSB0b2FzdCBpcyBpbiB0aGUgY29sbGVjdGlvbi5cbiAgICogQHBhcmFtIGluVG9hc3QgTm90aWZpcmVUb2FzdFxuICAgKiBAcmV0dXJucyBib29sZWFuXG4gICAqL1xuICBwcml2YXRlIGNvbnRhaW5zVG9hc3QoaW5Ub2FzdDogU25vdGlmaXJlVG9hc3RNb2RlbCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm5vdGlmaWNhdGlvbnMuc29tZSgodG9hc3QpID0+IHRvYXN0LmVxdWFscyhpblRvYXN0KSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBlbXB0eSB0b2FzdCB3aXRoIGh0bWwgc3RyaW5nIGluc2lkZVxuICAgKiBAcGFyYW0gaHRtbCBzdHJpbmcgfCBTYWZlSHRtbFxuICAgKiBAcGFyYW0gY29uZmlnIE5vdGlmaXJlQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgaHRtbChodG1sOiBzdHJpbmcgfCBTYWZlSHRtbCwgY29uZmlnPzogU25vdGlmaXJlQ29uZmlnKTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKHtcbiAgICAgIHRpdGxlOiB1bmRlZmluZWQsXG4gICAgICBib2R5OiB1bmRlZmluZWQsXG4gICAgICBjb25maWc6IHtcbiAgICAgICAgLi4uY29uZmlnLFxuICAgICAgICAuLi57IGh0bWwgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHN1Y2Nlc3Mgc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgc3VjY2Vzcyhib2R5OiBzdHJpbmcpOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlIHRvYXN0IHdpdGggc3VjY2VzcyBzdHlsZSByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIHRpdGxlIHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHN1Y2Nlc3MoYm9keTogc3RyaW5nLCB0aXRsZTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHN1Y2Nlc3Mgc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSBjb25maWcgTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgc3VjY2Vzcyhib2R5OiBzdHJpbmcsIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHN1Y2Nlc3Mgc3R5bGUgIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBbYm9keV0gc3RyaW5nXG4gICAqIEBwYXJhbSBbdGl0bGVdIHN0cmluZ1xuICAgKiBAcGFyYW0gW2NvbmZpZ10gTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgc3VjY2VzcyhcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gdG9hc3QgYXJndW1lbnRzIGludG8gTm90aWZpY2F0aW9uTW9kZWwgb2JqZWN0XG4gICAqL1xuICBAVHJhbnNmb3JtQXJndW1lbnRcbiAgLyoqXG4gICAqIERldGVybWluZXMgY3VycmVudCB0b2FzdCB0eXBlIGFuZCBjb2xsZWN0cyBkZWZhdWx0IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIEBTZXRUb2FzdFR5cGVcbiAgc3VjY2VzcyhhcmdzOiBhbnkpOiBTbm90aWZpcmVUb2FzdE1vZGVsIHtcbiAgICBpZiAoIWFyZ3MuY29uZmlnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgY29uZmlnLCBwbGVhc2UgY29uZmlndXJlIHNlcnZpY2UgYWNjb3JkaW5nbHknKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKGFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGVycm9yIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGVycm9yKGJvZHk6IHN0cmluZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBlcnJvciBzdHlsZSByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIHRpdGxlIHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGVycm9yKGJvZHk6IHN0cmluZywgdGl0bGU6IHN0cmluZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBlcnJvciBzdHlsZSByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIGNvbmZpZyBOb3RpZmljYXRpb25Db25maWdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBlcnJvcihib2R5OiBzdHJpbmcsIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGVycm9yIHN0eWxlICByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gW2JvZHldIHN0cmluZ1xuICAgKiBAcGFyYW0gW3RpdGxlXSBzdHJpbmdcbiAgICogQHBhcmFtIFtjb25maWddIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGVycm9yKFxuICAgIGJvZHk6IHN0cmluZyxcbiAgICB0aXRsZTogc3RyaW5nLFxuICAgIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnXG4gICk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gdG9hc3QgYXJndW1lbnRzIGludG8gTm90aWZpY2F0aW9uTW9kZWwgb2JqZWN0XG4gICAqL1xuICBAVHJhbnNmb3JtQXJndW1lbnRcbiAgLyoqXG4gICAqIERldGVybWluZXMgY3VycmVudCB0b2FzdCB0eXBlIGFuZCBjb2xsZWN0cyBkZWZhdWx0IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIEBTZXRUb2FzdFR5cGVcbiAgZXJyb3IoYXJnczogYW55KTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKGFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGluZm8gc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgaW5mbyhib2R5OiBzdHJpbmcpOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlIHRvYXN0IHdpdGggaW5mbyBzdHlsZSByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIHRpdGxlIHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGluZm8oYm9keTogc3RyaW5nLCB0aXRsZTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGluZm8gc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSBjb25maWcgTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgaW5mbyhib2R5OiBzdHJpbmcsIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGluZm8gc3R5bGUgIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBbYm9keV0gc3RyaW5nXG4gICAqIEBwYXJhbSBbdGl0bGVdIHN0cmluZ1xuICAgKiBAcGFyYW0gW2NvbmZpZ10gTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgaW5mbyhcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogVHJhbnNmb3JtIHRvYXN0IGFyZ3VtZW50cyBpbnRvIE5vdGlmaWNhdGlvbk1vZGVsIG9iamVjdFxuICAgKi9cbiAgQFRyYW5zZm9ybUFyZ3VtZW50XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGN1cnJlbnQgdG9hc3QgdHlwZSBhbmQgY29sbGVjdHMgZGVmYXVsdCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBAU2V0VG9hc3RUeXBlXG4gIGluZm8oYXJnczogYW55KTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKGFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHdhcm5pbmcgc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgd2FybmluZyhib2R5OiBzdHJpbmcpOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlIHRvYXN0IHdpdGggd2FybmluZyBzdHlsZSByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIHRpdGxlIHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHdhcm5pbmcoYm9keTogc3RyaW5nLCB0aXRsZTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHdhcm5pbmcgc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSBjb25maWcgTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgd2FybmluZyhib2R5OiBzdHJpbmcsIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHdhcm5pbmcgc3R5bGUgIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBbYm9keV0gc3RyaW5nXG4gICAqIEBwYXJhbSBbdGl0bGVdIHN0cmluZ1xuICAgKiBAcGFyYW0gW2NvbmZpZ10gTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgd2FybmluZyhcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogVHJhbnNmb3JtIHRvYXN0IGFyZ3VtZW50cyBpbnRvIE5vdGlmaWNhdGlvbk1vZGVsIG9iamVjdFxuICAgKi9cbiAgQFRyYW5zZm9ybUFyZ3VtZW50XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGN1cnJlbnQgdG9hc3QgdHlwZSBhbmQgY29sbGVjdHMgZGVmYXVsdCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBAU2V0VG9hc3RUeXBlXG4gIHdhcm5pbmcoYXJnczogYW55KTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKGFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGNvbmZpcm0gc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgY29uZmlybShib2R5OiBzdHJpbmcpOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlIHRvYXN0IHdpdGggY29uZmlybSBzdHlsZSByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIHRpdGxlIHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGNvbmZpcm0oYm9keTogc3RyaW5nLCB0aXRsZTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGNvbmZpcm0gc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSBjb25maWcgTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgY29uZmlybShib2R5OiBzdHJpbmcsIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGNvbmZpcm0gc3R5bGUgIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBbYm9keV0gc3RyaW5nXG4gICAqIEBwYXJhbSBbdGl0bGVdIHN0cmluZ1xuICAgKiBAcGFyYW0gW2NvbmZpZ10gTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgY29uZmlybShcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogVHJhbnNmb3JtIHRvYXN0IGFyZ3VtZW50cyBpbnRvIE5vdGlmaWNhdGlvbk1vZGVsIG9iamVjdFxuICAgKi9cbiAgQFRyYW5zZm9ybUFyZ3VtZW50XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGN1cnJlbnQgdG9hc3QgdHlwZSBhbmQgY29sbGVjdHMgZGVmYXVsdCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBAU2V0VG9hc3RUeXBlXG4gIGNvbmZpcm0oYXJnczogYW55KTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKGFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIFByb21wdCBzdHlsZSB3aXRoIHR3byBidXR0b25zLCByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBwcm9tcHQoYm9keTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIFByb21wdCBzdHlsZSB3aXRoIHR3byBidXR0b25zLCByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIHRpdGxlIHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHByb21wdChib2R5OiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcpOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlIHRvYXN0IHdpdGggUHJvbXB0IHN0eWxlIHdpdGggdHdvIGJ1dHRvbnMsIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcGFyYW0gY29uZmlnIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHByb21wdChib2R5OiBzdHJpbmcsIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIFByb21wdCBzdHlsZSB3aXRoIHR3byBidXR0b25zLCByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gW2JvZHldIHN0cmluZ1xuICAgKiBAcGFyYW0gW3RpdGxlXSBzdHJpbmdcbiAgICogQHBhcmFtIFtjb25maWddIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHByb21wdChcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogVHJhbnNmb3JtIHRvYXN0IGFyZ3VtZW50cyBpbnRvIE5vdGlmaWNhdGlvbk1vZGVsIG9iamVjdFxuICAgKi9cbiAgQFRyYW5zZm9ybUFyZ3VtZW50XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGN1cnJlbnQgdG9hc3QgdHlwZSBhbmQgY29sbGVjdHMgZGVmYXVsdCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBAU2V0VG9hc3RUeXBlXG4gIHByb21wdChhcmdzOiBhbnkpOiBTbm90aWZpcmVUb2FzdE1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGUoYXJncyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhc3luYyB0b2FzdCB3aXRoIEluZm8gc3R5bGUuIFBhc3MgYWN0aW9uLCBhbmQgcmVzb2x2ZSBvciByZWplY3QgaXQuXG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcGFyYW0gYWN0aW9uIFByb21pc2U8Tm90aWZpY2F0aW9uTW9kZWw+IHwgT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25Nb2RlbD5cbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBhc3luYyhcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgYWN0aW9uOiBQcm9taXNlPFNub3RpZmlyZU1vZGVsPiB8IE9ic2VydmFibGU8U25vdGlmaXJlTW9kZWw+XG4gICk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGFzeW5jIHRvYXN0IHdpdGggSW5mbyBzdHlsZS4gUGFzcyBhY3Rpb24sIGFuZCByZXNvbHZlIG9yIHJlamVjdCBpdC5cbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHBhcmFtIGFjdGlvbiBQcm9taXNlPE5vdGlmaWNhdGlvbk1vZGVsPiB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uTW9kZWw+XG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgYXN5bmMoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgYWN0aW9uOiBQcm9taXNlPFNub3RpZmlyZU1vZGVsPiB8IE9ic2VydmFibGU8U25vdGlmaXJlTW9kZWw+XG4gICk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGFzeW5jIHRvYXN0IHdpdGggSW5mbyBzdHlsZS4gUGFzcyBhY3Rpb24sIGFuZCByZXNvbHZlIG9yIHJlamVjdCBpdC5cbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSBhY3Rpb24gUHJvbWlzZTxOb3RpZmljYXRpb25Nb2RlbD4gfCBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvbk1vZGVsPlxuICAgKiBAcGFyYW0gW2NvbmZpZ10gTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgYXN5bmMoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIGFjdGlvbjogUHJvbWlzZTxTbm90aWZpcmVNb2RlbD4gfCBPYnNlcnZhYmxlPFNub3RpZmlyZU1vZGVsPixcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlcyBhc3luYyB0b2FzdCB3aXRoIEluZm8gc3R5bGUuIFBhc3MgYWN0aW9uLCBhbmQgcmVzb2x2ZSBvciByZWplY3QgaXQuXG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcGFyYW0gdGl0bGUgc3RyaW5nXG4gICAqIEBwYXJhbSBhY3Rpb24gUHJvbWlzZTxOb3RpZmljYXRpb25Nb2RlbD4gfCBPYnNlcnZhYmxlPE5vdGlmaWNhdGlvbk1vZGVsPlxuICAgKiBAcGFyYW0gW2NvbmZpZ10gTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgYXN5bmMoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgYWN0aW9uOiBQcm9taXNlPFNub3RpZmlyZU1vZGVsPiB8IE9ic2VydmFibGU8U25vdGlmaXJlTW9kZWw+LFxuICAgIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnXG4gICk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gdG9hc3QgYXJndW1lbnRzIGludG8gTm90aWZpY2F0aW9uTW9kZWwgb2JqZWN0XG4gICAqL1xuICBAVHJhbnNmb3JtQXJndW1lbnRcbiAgLyoqXG4gICAqIERldGVybWluZXMgY3VycmVudCB0b2FzdCB0eXBlIGFuZCBjb2xsZWN0cyBkZWZhdWx0IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIEBTZXRUb2FzdFR5cGVcbiAgYXN5bmMoYXJnczogYW55KTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgbGV0IGFzeW5jOiBPYnNlcnZhYmxlPGFueT47XG4gICAgaWYgKGFyZ3MuYWN0aW9uIGluc3RhbmNlb2YgUHJvbWlzZSkge1xuICAgICAgYXN5bmMgPSBmcm9tKGFyZ3MuYWN0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXN5bmMgPSBhcmdzLmFjdGlvbjtcbiAgICB9XG5cbiAgICBjb25zdCB0b2FzdCA9IHRoaXMuY3JlYXRlKGFyZ3MpO1xuXG4gICAgdG9hc3Qub24oU25vdGlmaXJlRXZlbnRUeXBlLk1PVU5URUQsICgpID0+IHtcbiAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uID0gYXN5bmMuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKG5leHQ/OiBTbm90aWZpcmVNb2RlbCkgPT4ge1xuICAgICAgICAgIHRoaXMubWVyZ2VUb2FzdCh0b2FzdCwgbmV4dCk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoZXJyb3I/OiBTbm90aWZpcmVNb2RlbCkgPT4ge1xuICAgICAgICAgIHRoaXMubWVyZ2VUb2FzdCh0b2FzdCwgZXJyb3IsIFNub3RpZmlyZVR5cGUuRVJST1IpO1xuICAgICAgICAgIHN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9LFxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xuICAgICAgICAgIHRoaXMubWVyZ2VUb2FzdCh0b2FzdCwge30sIFNub3RpZmlyZVR5cGUuU1VDQ0VTUyk7XG4gICAgICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHJldHVybiB0b2FzdDtcbiAgfVxuXG4gIHByaXZhdGUgbWVyZ2VUb2FzdCh0b2FzdDogYW55LCBuZXh0OiBhbnksIHR5cGU/OiBTbm90aWZpcmVUeXBlKSB7XG4gICAgaWYgKG5leHQuYm9keSkge1xuICAgICAgdG9hc3QuYm9keSA9IG5leHQuYm9keTtcbiAgICB9XG4gICAgaWYgKG5leHQudGl0bGUpIHtcbiAgICAgIHRvYXN0LnRpdGxlID0gbmV4dC50aXRsZTtcbiAgICB9XG4gICAgaWYgKHR5cGUgJiYgdGhpcy5kZWZhdWx0Q29uZmlnKSB7XG4gICAgICB0b2FzdC5jb25maWcgPSBtZXJnZURlZXAoXG4gICAgICAgIHRvYXN0LmNvbmZpZyxcbiAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLmdsb2JhbCxcbiAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLnNub3RpZmlyZUNvbmZpZz8udHlwZSxcbiAgICAgICAgeyB0eXBlIH0sXG4gICAgICAgIG5leHQuY29uZmlnXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0b2FzdC5jb25maWcgPSBtZXJnZURlZXAodG9hc3QuY29uZmlnLCBuZXh0LmNvbmZpZyk7XG4gICAgfVxuICAgIGlmIChuZXh0Lmh0bWwpIHtcbiAgICAgIHRvYXN0LmNvbmZpZy5odG1sID0gbmV4dC5odG1sO1xuICAgIH1cbiAgICB0aGlzLmVtaXQoKTtcbiAgICB0aGlzLnRvYXN0Q2hhbmdlZC5uZXh0KHRvYXN0KTtcbiAgfVxuICAvKipcbiAgICogcmV0dXJucyBTbm90aWZ5VG9hc3Qgb2JqZWN0XG4gICAqIEBwYXJhbSBpZCBOdW1iZXJcbiAgICogQHJldHVybiBTbm90aWZ5VG9hc3R8dW5kZWZpbmVkXG4gICAqL1xuICBnZXQoaWQ6IG51bWJlcik6IFNub3RpZmlyZVRvYXN0TW9kZWwgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMgJiYgdGhpcy5ub3RpZmljYXRpb25zLmZpbmQoKHRvYXN0KSA9PiB0b2FzdC5pZCA9PT0gaWQpXG4gICAgKTtcbiAgfVxufVxuIl19
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc25vdGlmaXJlL3NyYy9saWIvc2VydmljZXMvbm90aWZpY2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFDTCxVQUFVLEVBQ1YsUUFBUSxFQUNSLElBQUksRUFHSixPQUFPLEVBQ1AsR0FBRyxFQUNILFVBQVUsR0FDWCxNQUFNLE1BQU0sQ0FBQztBQUNkLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMvRSxPQUFPLEVBQW1CLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUcvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLGdCQUFnQjtJQWdCM0IsWUFDb0MsYUFBZ0M7UUFBaEMsa0JBQWEsR0FBYixhQUFhLENBQW1CO1FBaEJwRTs7V0FFRztRQUNjLHlCQUFvQixHQUFHLElBQUksQ0FBQztRQUU3Qzs7V0FFRztRQUNNLFlBQU8sR0FBRyxJQUFJLE9BQU8sRUFBeUIsQ0FBQztRQUUvQyxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFVLENBQUM7UUFDckMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBdUIsQ0FBQztRQUUzRCxrQkFBYSxHQUErQixFQUFFLENBQUM7SUFJNUMsQ0FBQztJQUVKOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsS0FBcUI7UUFDMUIsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUks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OztJQUNGLFlBQVk7K0NBR1o7QUEwQ0Q7SUFMQyxpQkFBaUI7SUFDbEI7O09BRUc7O0lBQ0YsWUFBWTs4Q0FHWjtBQTBERDtJQUxDLGlCQUFpQjtJQUNsQjs7T0FFRzs7SUFDRixZQUFZOzZDQW9EWjsyRkF4Z0JVLGdCQUFnQjtrQkFENUIsVUFBVTs7MEJBa0JOLE1BQU07MkJBQUMsaUJBQWlCOzRDQXlLM0IsT0FBTyxNQStDUCxLQUFLLE1BNENMLElBQUksTUE0Q0osT0FBTyxNQTRDUCxPQUFPLE1BNENQLE1BQU0sTUE0RE4sS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7XG4gIGNhdGNoRXJyb3IsXG4gIGZpbmFsaXplLFxuICBmcm9tLFxuICBPYnNlcnZhYmxlLFxuICBvZixcbiAgU3ViamVjdCxcbiAgdGFwLFxuICB0aHJvd0Vycm9yLFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNldFRvYXN0VHlwZSB9IGZyb20gJy4uL2RlY29yYXRvcnMvc2V0LXRvYXN0LXR5cGUuZGVjb3JhdG9yJztcbmltcG9ydCB7IFRyYW5zZm9ybUFyZ3VtZW50IH0gZnJvbSAnLi4vZGVjb3JhdG9ycy90cmFuc2Zvcm0tYXJndW1lbnQuZGVjb3JhdG9yJztcbmltcG9ydCB7IFNub3RpZmlyZUNvbmZpZywgU25vdGlmaXJlRXZlbnRUeXBlLCBTbm90aWZpcmVUeXBlIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IFNub3RpZmlyZURlZmF1bHRzIH0gZnJvbSAnLi4vZGVmYXVsdHMvZGVmYXVsdHMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNub3RpZmlyZU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL3Nub3RpZmlyZS5tb2RlbCc7XG5pbXBvcnQgeyBTbm90aWZpcmVUb2FzdE1vZGVsIH0gZnJvbSAnLi4vY29tcG9uZW50cy90b2FzdC9ub3RpZmlyZS10b2FzdC5tb2RlbCc7XG5pbXBvcnQgeyBtZXJnZURlZXAsIHV1aWQgfSBmcm9tICcuLi91dGlscyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTbm90aWZpcmVTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIE1pbmltdW0gZGlzcGxheSB0aW1lIG9mIHRoZSBub3RpZmljYXRpb24gbWVzc2FnZVxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBtaW5pbXVtRGlzcGxheWVkVGltZSA9IDMwMDA7XG5cbiAgLyoqXG4gICAqIEVtaXRzIE5vdGlmaXJlIE5vdGlmaWNhdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGVtaXR0ZXIgPSBuZXcgU3ViamVjdDxTbm90aWZpcmVUb2FzdE1vZGVsW10+KCk7XG5cbiAgcmVhZG9ubHkgdG9hc3REZWxldGVkID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuICByZWFkb25seSB0b2FzdENoYW5nZWQgPSBuZXcgU3ViamVjdDxTbm90aWZpcmVUb2FzdE1vZGVsPigpO1xuXG4gIG5vdGlmaWNhdGlvbnM6IEFycmF5PFNub3RpZmlyZVRvYXN0TW9kZWw+ID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdCgnc25vdGlmaXJlQ29uZmlnJykgcHVibGljIGRlZmF1bHRDb25maWc6IFNub3RpZmlyZURlZmF1bHRzXG4gICkge31cblxuICAvKipcbiAgICogQ3JlYXRlcyB0b2FzdCBhbmQgYWRkIGl0IHRvIGFycmF5LCByZXR1cm5zIHRvYXN0IGlkXG4gICAqIEBwYXJhbSBOb3RpZmljYXRpb25Nb2RlbCBOb3RpZmljYXRpb25Nb2RlbFxuICAgKiBAcmV0dXJuIG51bWJlclxuICAgKi9cbiAgY3JlYXRlKG5vdGlmOiBTbm90aWZpcmVNb2RlbCk6IFNub3RpZmlyZVRvYXN0TW9kZWwge1xuICAgIGlmICh0aGlzLmRlZmF1bHRDb25maWcudHlwZSAmJiBub3RpZi5jb25maWcgJiYgbm90aWYuY29uZmlnLnR5cGUpIHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IG1lcmdlRGVlcChcbiAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLnNub3RpZmlyZUNvbmZpZyxcbiAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLnR5cGVbbm90aWYuY29uZmlnLnR5cGVdLFxuICAgICAgICBub3RpZi5jb25maWdcbiAgICAgICk7XG4gICAgICBjb25zdCB0b2FzdCA9IG5ldyBTbm90aWZpcmVUb2FzdE1vZGVsKFxuICAgICAgICB1dWlkKCksXG4gICAgICAgIG5vdGlmLnRpdGxlID8gbm90aWYudGl0bGUgOiAnJyxcbiAgICAgICAgbm90aWYuYm9keSA/IG5vdGlmLmJvZHkgOiAnJyxcbiAgICAgICAgY29uZmlnXG4gICAgICApO1xuICAgICAgdGhpcy5hZGQodG9hc3QpO1xuICAgICAgcmV0dXJuIHRvYXN0O1xuICAgIH1cbiAgICBjb25zdCBjb25maWcgPSBtZXJnZURlZXAodGhpcy5kZWZhdWx0Q29uZmlnLnNub3RpZmlyZUNvbmZpZywgbm90aWYuY29uZmlnKTtcbiAgICBjb25zdCBkZWZhdWxUb2FzdCA9IG5ldyBTbm90aWZpcmVUb2FzdE1vZGVsKFxuICAgICAgdXVpZCgpLFxuICAgICAgbm90aWYudGl0bGUgPyBub3RpZi50aXRsZSA6ICcnLFxuICAgICAgbm90aWYuYm9keSA/IG5vdGlmLmJvZHkgOiAnJyxcbiAgICAgIGNvbmZpZ1xuICAgICk7XG4gICAgdGhpcy5hZGQoZGVmYXVsVG9hc3QpO1xuICAgIHJldHVybiBkZWZhdWxUb2FzdDtcbiAgfVxuICAvKipcbiAgICogSWYgSUQgcGFzc2VkLCBlbWl0cyB0b2FzdCBhbmltYXRpb24gcmVtb3ZlLCBpZiBJRCAmIFJFTU9WRSBwYXNzZWQsIHJlbW92ZXMgdG9hc3QgZnJvbSBub3RpZmljYXRpb25zIGFycmF5XG4gICAqIEBwYXJhbSBpZCBudW1iZXJcbiAgICogQHBhcmFtIHJlbW92ZSBib29sZWFuXG4gICAqL1xuICByZW1vdmUoaWQ6IG51bWJlciwgcmVtb3ZlPzogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICghaWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmNsZWFyKCk7XG4gICAgfVxuICAgIGlmIChyZW1vdmUpIHtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucyA9IHRoaXMubm90aWZpY2F0aW9ucy5maWx0ZXIoXG4gICAgICAgICh0b2FzdCkgPT4gdG9hc3QuaWQgIT09IGlkXG4gICAgICApO1xuICAgICAgcmV0dXJuIHRoaXMuZW1pdCgpO1xuICAgIH1cbiAgICB0aGlzLnRvYXN0RGVsZXRlZC5uZXh0KGlkKTtcbiAgfVxuXG4gIHNldERlZmF1bHRzKGRlZmF1bHRzOiBTbm90aWZpcmVEZWZhdWx0cyk6IFNub3RpZmlyZURlZmF1bHRzIHtcbiAgICBjb25zdCBtZXJnZWRDb25maWcgPSAodGhpcy5kZWZhdWx0Q29uZmlnID0gbWVyZ2VEZWVwKFxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLFxuICAgICAgZGVmYXVsdHNcbiAgICApIGFzIFNub3RpZmlyZURlZmF1bHRzKTtcbiAgICByZXR1cm4gbWVyZ2VkQ29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFyIG5vdGlmaWNhdGlvbnMgYXJyYXlcbiAgICovXG4gIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMubm90aWZpY2F0aW9ucyA9IFtdO1xuICAgIHRoaXMuZW1pdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIGFkZCBOb3RpZmlyZVRvYXN0IHRvIG5vdGlmaWNhdGlvbnMgYXJyYXlcbiAgICogQHBhcmFtIHRvYXN0IE5vdGlmaXJlVG9hc3RcbiAgICovXG4gIHByaXZhdGUgYWRkKHRvYXN0OiBTbm90aWZpcmVUb2FzdE1vZGVsKTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnICYmXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcuZ2xvYmFsICYmXG4gICAgICB0aGlzLmRlZmF1bHRDb25maWcuZ2xvYmFsLmZpbHRlckR1cGxpY2F0ZXMgJiZcbiAgICAgIHRoaXMuY29udGFpbnNUb2FzdCh0b2FzdClcbiAgICApIHtcbiAgICAgIGlmICghdGhpcy5kZWZhdWx0Q29uZmlnLmdsb2JhbC5maWx0ZXJEdXBsaWNhdGVzKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignTWlzc2luZyBnbG9iYWwgY29uZmlnJyk7XG4gICAgICB9XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHRoaXMuZGVmYXVsdENvbmZpZyAmJlxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLmdsb2JhbCAmJlxuICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLmdsb2JhbC5uZXdPblRvcFxuICAgICkge1xuICAgICAgdGhpcy5ub3RpZmljYXRpb25zLnVuc2hpZnQodG9hc3QpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMucHVzaCh0b2FzdCk7XG4gICAgfVxuICAgIHRoaXMuZW1pdCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIGVtaXQgY2hhbmdlcyBpbiBub3RpZmljYXRpb25zIGFycmF5XG4gICAqL1xuICBwcml2YXRlIGVtaXQoKTogdm9pZCB7XG4gICAgdGhpcy5lbWl0dGVyLm5leHQodGhpcy5ub3RpZmljYXRpb25zLnNsaWNlKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIGNoZWNrcyBpZiB0aGUgdG9hc3QgaXMgaW4gdGhlIGNvbGxlY3Rpb24uXG4gICAqIEBwYXJhbSBpblRvYXN0IE5vdGlmaXJlVG9hc3RcbiAgICogQHJldHVybnMgYm9vbGVhblxuICAgKi9cbiAgcHJpdmF0ZSBjb250YWluc1RvYXN0KGluVG9hc3Q6IFNub3RpZmlyZVRvYXN0TW9kZWwpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5ub3RpZmljYXRpb25zLnNvbWUoKHRvYXN0KSA9PiB0b2FzdC5lcXVhbHMoaW5Ub2FzdCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgZW1wdHkgdG9hc3Qgd2l0aCBodG1sIHN0cmluZyBpbnNpZGVcbiAgICogQHBhcmFtIGh0bWwgc3RyaW5nIHwgU2FmZUh0bWxcbiAgICogQHBhcmFtIGNvbmZpZyBOb3RpZmlyZUNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGh0bWwoaHRtbDogc3RyaW5nIHwgU2FmZUh0bWwsIGNvbmZpZz86IFNub3RpZmlyZUNvbmZpZyk6IFNub3RpZmlyZVRvYXN0TW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZSh7XG4gICAgICB0aXRsZTogdW5kZWZpbmVkLFxuICAgICAgYm9keTogdW5kZWZpbmVkLFxuICAgICAgY29uZmlnOiB7XG4gICAgICAgIC4uLmNvbmZpZyxcbiAgICAgICAgLi4ueyBodG1sIH0sXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBzdWNjZXNzIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHN1Y2Nlc3MoYm9keTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHN1Y2Nlc3Mgc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBzdWNjZXNzKGJvZHk6IHN0cmluZywgdGl0bGU6IHN0cmluZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBzdWNjZXNzIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcGFyYW0gY29uZmlnIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHN1Y2Nlc3MoYm9keTogc3RyaW5nLCBjb25maWc6IFNub3RpZmlyZUNvbmZpZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBzdWNjZXNzIHN0eWxlICByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gW2JvZHldIHN0cmluZ1xuICAgKiBAcGFyYW0gW3RpdGxlXSBzdHJpbmdcbiAgICogQHBhcmFtIFtjb25maWddIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHN1Y2Nlc3MoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgY29uZmlnOiBTbm90aWZpcmVDb25maWdcbiAgKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcblxuICAvKipcbiAgICogVHJhbnNmb3JtIHRvYXN0IGFyZ3VtZW50cyBpbnRvIE5vdGlmaWNhdGlvbk1vZGVsIG9iamVjdFxuICAgKi9cbiAgQFRyYW5zZm9ybUFyZ3VtZW50XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGN1cnJlbnQgdG9hc3QgdHlwZSBhbmQgY29sbGVjdHMgZGVmYXVsdCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBAU2V0VG9hc3RUeXBlXG4gIHN1Y2Nlc3MoYXJnczogYW55KTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgaWYgKCFhcmdzLmNvbmZpZykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGNvbmZpZywgcGxlYXNlIGNvbmZpZ3VyZSBzZXJ2aWNlIGFjY29yZGluZ2x5Jyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmNyZWF0ZShhcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBlcnJvciBzdHlsZSByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBlcnJvcihib2R5OiBzdHJpbmcpOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlIHRvYXN0IHdpdGggZXJyb3Igc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBlcnJvcihib2R5OiBzdHJpbmcsIHRpdGxlOiBzdHJpbmcpOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogQ3JlYXRlIHRvYXN0IHdpdGggZXJyb3Igc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSBjb25maWcgTm90aWZpY2F0aW9uQ29uZmlnXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgZXJyb3IoYm9keTogc3RyaW5nLCBjb25maWc6IFNub3RpZmlyZUNvbmZpZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBlcnJvciBzdHlsZSAgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIFtib2R5XSBzdHJpbmdcbiAgICogQHBhcmFtIFt0aXRsZV0gc3RyaW5nXG4gICAqIEBwYXJhbSBbY29uZmlnXSBOb3RpZmljYXRpb25Db25maWdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBlcnJvcihcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgdGl0bGU6IHN0cmluZyxcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBTbm90aWZpcmVUb2FzdE1vZGVsO1xuICAvKipcbiAgICogVHJhbnNmb3JtIHRvYXN0IGFyZ3VtZW50cyBpbnRvIE5vdGlmaWNhdGlvbk1vZGVsIG9iamVjdFxuICAgKi9cbiAgQFRyYW5zZm9ybUFyZ3VtZW50XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGN1cnJlbnQgdG9hc3QgdHlwZSBhbmQgY29sbGVjdHMgZGVmYXVsdCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBAU2V0VG9hc3RUeXBlXG4gIGVycm9yKGFyZ3M6IGFueSk6IFNub3RpZmlyZVRvYXN0TW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShhcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBpbmZvIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGluZm8oYm9keTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGluZm8gc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBpbmZvKGJvZHk6IHN0cmluZywgdGl0bGU6IHN0cmluZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBpbmZvIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcGFyYW0gY29uZmlnIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGluZm8oYm9keTogc3RyaW5nLCBjb25maWc6IFNub3RpZmlyZUNvbmZpZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBpbmZvIHN0eWxlICByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gW2JvZHldIHN0cmluZ1xuICAgKiBAcGFyYW0gW3RpdGxlXSBzdHJpbmdcbiAgICogQHBhcmFtIFtjb25maWddIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGluZm8oXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgY29uZmlnOiBTbm90aWZpcmVDb25maWdcbiAgKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIFRyYW5zZm9ybSB0b2FzdCBhcmd1bWVudHMgaW50byBOb3RpZmljYXRpb25Nb2RlbCBvYmplY3RcbiAgICovXG4gIEBUcmFuc2Zvcm1Bcmd1bWVudFxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBjdXJyZW50IHRvYXN0IHR5cGUgYW5kIGNvbGxlY3RzIGRlZmF1bHQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgQFNldFRvYXN0VHlwZVxuICBpbmZvKGFyZ3M6IGFueSk6IFNub3RpZmlyZVRvYXN0TW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShhcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCB3YXJuaW5nIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHdhcm5pbmcoYm9keTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIHdhcm5pbmcgc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICB3YXJuaW5nKGJvZHk6IHN0cmluZywgdGl0bGU6IHN0cmluZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCB3YXJuaW5nIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcGFyYW0gY29uZmlnIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHdhcm5pbmcoYm9keTogc3RyaW5nLCBjb25maWc6IFNub3RpZmlyZUNvbmZpZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCB3YXJuaW5nIHN0eWxlICByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gW2JvZHldIHN0cmluZ1xuICAgKiBAcGFyYW0gW3RpdGxlXSBzdHJpbmdcbiAgICogQHBhcmFtIFtjb25maWddIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIHdhcm5pbmcoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgY29uZmlnOiBTbm90aWZpcmVDb25maWdcbiAgKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIFRyYW5zZm9ybSB0b2FzdCBhcmd1bWVudHMgaW50byBOb3RpZmljYXRpb25Nb2RlbCBvYmplY3RcbiAgICovXG4gIEBUcmFuc2Zvcm1Bcmd1bWVudFxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBjdXJyZW50IHRvYXN0IHR5cGUgYW5kIGNvbGxlY3RzIGRlZmF1bHQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgQFNldFRvYXN0VHlwZVxuICB3YXJuaW5nKGFyZ3M6IGFueSk6IFNub3RpZmlyZVRvYXN0TW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShhcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBjb25maXJtIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGNvbmZpcm0oYm9keTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIGNvbmZpcm0gc3R5bGUgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBjb25maXJtKGJvZHk6IHN0cmluZywgdGl0bGU6IHN0cmluZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBjb25maXJtIHN0eWxlIHJldHVybnMgdG9hc3QgaWQ7XG4gICAqIEBwYXJhbSBib2R5IHN0cmluZ1xuICAgKiBAcGFyYW0gY29uZmlnIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGNvbmZpcm0oYm9keTogc3RyaW5nLCBjb25maWc6IFNub3RpZmlyZUNvbmZpZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBjb25maXJtIHN0eWxlICByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gW2JvZHldIHN0cmluZ1xuICAgKiBAcGFyYW0gW3RpdGxlXSBzdHJpbmdcbiAgICogQHBhcmFtIFtjb25maWddIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGNvbmZpcm0oXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgY29uZmlnOiBTbm90aWZpcmVDb25maWdcbiAgKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIFRyYW5zZm9ybSB0b2FzdCBhcmd1bWVudHMgaW50byBOb3RpZmljYXRpb25Nb2RlbCBvYmplY3RcbiAgICovXG4gIEBUcmFuc2Zvcm1Bcmd1bWVudFxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBjdXJyZW50IHRvYXN0IHR5cGUgYW5kIGNvbGxlY3RzIGRlZmF1bHQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgQFNldFRvYXN0VHlwZVxuICBjb25maXJtKGFyZ3M6IGFueSk6IFNub3RpZmlyZVRvYXN0TW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShhcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBQcm9tcHQgc3R5bGUgd2l0aCB0d28gYnV0dG9ucywgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgcHJvbXB0KGJvZHk6IHN0cmluZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBQcm9tcHQgc3R5bGUgd2l0aCB0d28gYnV0dG9ucywgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBwcm9tcHQoYm9keTogc3RyaW5nLCB0aXRsZTogc3RyaW5nKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIENyZWF0ZSB0b2FzdCB3aXRoIFByb21wdCBzdHlsZSB3aXRoIHR3byBidXR0b25zLCByZXR1cm5zIHRvYXN0IGlkO1xuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIGNvbmZpZyBOb3RpZmljYXRpb25Db25maWdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBwcm9tcHQoYm9keTogc3RyaW5nLCBjb25maWc6IFNub3RpZmlyZUNvbmZpZyk6IFNub3RpZmlyZVRvYXN0TW9kZWw7XG4gIC8qKlxuICAgKiBDcmVhdGUgdG9hc3Qgd2l0aCBQcm9tcHQgc3R5bGUgd2l0aCB0d28gYnV0dG9ucywgcmV0dXJucyB0b2FzdCBpZDtcbiAgICogQHBhcmFtIFtib2R5XSBzdHJpbmdcbiAgICogQHBhcmFtIFt0aXRsZV0gc3RyaW5nXG4gICAqIEBwYXJhbSBbY29uZmlnXSBOb3RpZmljYXRpb25Db25maWdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBwcm9tcHQoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgY29uZmlnOiBTbm90aWZpcmVDb25maWdcbiAgKTogU25vdGlmaXJlVG9hc3RNb2RlbDtcbiAgLyoqXG4gICAqIFRyYW5zZm9ybSB0b2FzdCBhcmd1bWVudHMgaW50byBOb3RpZmljYXRpb25Nb2RlbCBvYmplY3RcbiAgICovXG4gIEBUcmFuc2Zvcm1Bcmd1bWVudFxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBjdXJyZW50IHRvYXN0IHR5cGUgYW5kIGNvbGxlY3RzIGRlZmF1bHQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgQFNldFRvYXN0VHlwZVxuICBwcm9tcHQoYXJnczogYW55KTogU25vdGlmaXJlVG9hc3RNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKGFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYXN5bmMgdG9hc3Qgd2l0aCBJbmZvIHN0eWxlLiBQYXNzIGFjdGlvbiwgYW5kIHJlc29sdmUgb3IgcmVqZWN0IGl0LlxuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIGFjdGlvbiBQcm9taXNlPE5vdGlmaWNhdGlvbk1vZGVsPiB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uTW9kZWw+XG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgYXN5bmMoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIGFjdGlvbjogUHJvbWlzZTxTbm90aWZpcmVNb2RlbD4gfCBPYnNlcnZhYmxlPFNub3RpZmlyZU1vZGVsPlxuICApOiBPYnNlcnZhYmxlPGFueT47XG4gIC8qKlxuICAgKiBDcmVhdGVzIGFzeW5jIHRvYXN0IHdpdGggSW5mbyBzdHlsZS4gUGFzcyBhY3Rpb24sIGFuZCByZXNvbHZlIG9yIHJlamVjdCBpdC5cbiAgICogQHBhcmFtIGJvZHkgc3RyaW5nXG4gICAqIEBwYXJhbSB0aXRsZSBzdHJpbmdcbiAgICogQHBhcmFtIGFjdGlvbiBQcm9taXNlPE5vdGlmaWNhdGlvbk1vZGVsPiB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uTW9kZWw+XG4gICAqIEByZXR1cm5zIG51bWJlclxuICAgKi9cbiAgYXN5bmMoXG4gICAgYm9keTogc3RyaW5nLFxuICAgIHRpdGxlOiBzdHJpbmcsXG4gICAgYWN0aW9uOiBQcm9taXNlPFNub3RpZmlyZU1vZGVsPiB8IE9ic2VydmFibGU8U25vdGlmaXJlTW9kZWw+XG4gICk6IE9ic2VydmFibGU8YW55PjtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYXN5bmMgdG9hc3Qgd2l0aCBJbmZvIHN0eWxlLiBQYXNzIGFjdGlvbiwgYW5kIHJlc29sdmUgb3IgcmVqZWN0IGl0LlxuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIGFjdGlvbiBQcm9taXNlPE5vdGlmaWNhdGlvbk1vZGVsPiB8IE9ic2VydmFibGU8Tm90aWZpY2F0aW9uTW9kZWw+XG4gICAqIEBwYXJhbSBbY29uZmlnXSBOb3RpZmljYXRpb25Db25maWdcbiAgICogQHJldHVybnMgbnVtYmVyXG4gICAqL1xuICBhc3luYyhcbiAgICBib2R5OiBzdHJpbmcsXG4gICAgYWN0aW9uOiBQcm9taXNlPFNub3RpZmlyZU1vZGVsPiB8IE9ic2VydmFibGU8U25vdGlmaXJlTW9kZWw+LFxuICAgIGNvbmZpZzogU25vdGlmaXJlQ29uZmlnXG4gICk6IE9ic2VydmFibGU8YW55PjtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYXN5bmMgdG9hc3Qgd2l0aCBJbmZvIHN0eWxlLiBQYXNzIGFjdGlvbiwgYW5kIHJlc29sdmUgb3IgcmVqZWN0IGl0LlxuICAgKiBAcGFyYW0gYm9keSBzdHJpbmdcbiAgICogQHBhcmFtIHRpdGxlIHN0cmluZ1xuICAgKiBAcGFyYW0gYWN0aW9uIFByb21pc2U8Tm90aWZpY2F0aW9uTW9kZWw+IHwgT2JzZXJ2YWJsZTxOb3RpZmljYXRpb25Nb2RlbD5cbiAgICogQHBhcmFtIFtjb25maWddIE5vdGlmaWNhdGlvbkNvbmZpZ1xuICAgKiBAcmV0dXJucyBudW1iZXJcbiAgICovXG4gIGFzeW5jKFxuICAgIGJvZHk6IHN0cmluZyxcbiAgICB0aXRsZTogc3RyaW5nLFxuICAgIGFjdGlvbjogUHJvbWlzZTxTbm90aWZpcmVNb2RlbD4gfCBPYnNlcnZhYmxlPFNub3RpZmlyZU1vZGVsPixcbiAgICBjb25maWc6IFNub3RpZmlyZUNvbmZpZ1xuICApOiBPYnNlcnZhYmxlPGFueT47XG4gIC8qKlxuICAgKiBUcmFuc2Zvcm0gdG9hc3QgYXJndW1lbnRzIGludG8gTm90aWZpY2F0aW9uTW9kZWwgb2JqZWN0XG4gICAqL1xuICBAVHJhbnNmb3JtQXJndW1lbnRcbiAgLyoqXG4gICAqIERldGVybWluZXMgY3VycmVudCB0b2FzdCB0eXBlIGFuZCBjb2xsZWN0cyBkZWZhdWx0IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIEBTZXRUb2FzdFR5cGVcbiAgYXN5bmMoYXJnczogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBsZXQgYXN5bmM6IE9ic2VydmFibGU8YW55PjtcbiAgICBpZiAoYXJncy5hY3Rpb24gaW5zdGFuY2VvZiBQcm9taXNlKSB7XG4gICAgICBhc3luYyA9IGZyb20oYXJncy5hY3Rpb24pO1xuICAgIH0gZWxzZSB7XG4gICAgICBhc3luYyA9IGFyZ3MuYWN0aW9uO1xuICAgIH1cblxuICAgIGNvbnN0IHRvYXN0ID0gdGhpcy5jcmVhdGUoYXJncyk7XG4gICAgbGV0IGZhaWxlZCA9IGZhbHNlO1xuICAgIGNvbnN0IGFzeW5jQXRpb24gPSBhc3luYy5waXBlKFxuICAgICAgdGFwKChuZXh0KSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdjYWxsZWQnKSwgdGhpcy5tZXJnZVRvYXN0KHRvYXN0LCBuZXh0KTtcbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgZmFpbGVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgfSksXG4gICAgICBmaW5hbGl6ZSgoKSA9PiB7XG4gICAgICAgIHRoaXMubWVyZ2VUb2FzdChcbiAgICAgICAgICB0b2FzdCxcbiAgICAgICAgICB7fSxcbiAgICAgICAgICBmYWlsZWQgPT09IHRydWUgPyBTbm90aWZpcmVUeXBlLkVSUk9SIDogU25vdGlmaXJlVHlwZS5TVUNDRVNTXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG4gICAgdG9hc3Qub24oU25vdGlmaXJlRXZlbnRUeXBlLk1PVU5URUQsICgpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKCdtb3VudGVkJyk7XG4gICAgICByZXR1cm4gYXN5bmNBdGlvbjtcbiAgICB9KTtcbiAgICByZXR1cm4gYXN5bmNBdGlvbjtcblxuICAgIC8vIGNvbnN0IHRvYXN0ID0gdGhpcy5jcmVhdGUoYXJncyk7XG5cbiAgICAvLyB0b2FzdC5vbihTbm90aWZpcmVFdmVudFR5cGUuTU9VTlRFRCwgKCkgPT4ge1xuICAgIC8vICAgY29uc3Qgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBhc3luYy5zdWJzY3JpYmUoe1xuICAgIC8vICAgICBuZXh0OiAobmV4dD86IFNub3RpZmlyZU1vZGVsKSA9PiB7XG4gICAgLy8gICAgICAgdGhpcy5tZXJnZVRvYXN0KHRvYXN0LCBuZXh0KTtcbiAgICAvLyAgICAgfSxcbiAgICAvLyAgICAgZXJyb3I6IChlcnJvcj86IFNub3RpZmlyZU1vZGVsKSA9PiB7XG4gICAgLy8gICAgICAgdGhpcy5tZXJnZVRvYXN0KHRvYXN0LCBlcnJvciwgU25vdGlmaXJlVHlwZS5FUlJPUik7XG4gICAgLy8gICAgICAgc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgLy8gICAgIH0sXG4gICAgLy8gICAgIGNvbXBsZXRlOiAoKSA9PiB7XG4gICAgLy8gICAgICAgdGhpcy5tZXJnZVRvYXN0KHRvYXN0LCB7fSwgU25vdGlmaXJlVHlwZS5TVUNDRVNTKTtcbiAgICAvLyAgICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAvLyAgICAgfSxcbiAgICAvLyAgIH0pO1xuICAgIC8vIH0pO1xuXG4gICAgLy8gcmV0dXJuIHRvYXN0O1xuICB9XG5cbiAgcHJpdmF0ZSBtZXJnZVRvYXN0KHRvYXN0OiBhbnksIG5leHQ6IGFueSwgdHlwZT86IFNub3RpZmlyZVR5cGUpIHtcbiAgICBpZiAobmV4dC5ib2R5KSB7XG4gICAgICB0b2FzdC5ib2R5ID0gbmV4dC5ib2R5O1xuICAgIH1cbiAgICBpZiAobmV4dC50aXRsZSkge1xuICAgICAgdG9hc3QudGl0bGUgPSBuZXh0LnRpdGxlO1xuICAgIH1cblxuICAgIGlmICh0eXBlICYmIHRoaXMuZGVmYXVsdENvbmZpZykge1xuICAgICAgY29uc29sZS5sb2codHlwZSk7XG4gICAgICB0b2FzdC5jb25maWcgPSBtZXJnZURlZXAoXG4gICAgICAgIHRvYXN0LmNvbmZpZyxcbiAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLmdsb2JhbCxcbiAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlnLnNub3RpZmlyZUNvbmZpZz8udHlwZSxcbiAgICAgICAgeyB0eXBlIH0sXG4gICAgICAgIG5leHQuY29uZmlnXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0b2FzdC5jb25maWcgPSBtZXJnZURlZXAodG9hc3QuY29uZmlnLCBuZXh0LmNvbmZpZyk7XG4gICAgfVxuICAgIGlmIChuZXh0Lmh0bWwpIHtcbiAgICAgIHRvYXN0LmNvbmZpZy5odG1sID0gbmV4dC5odG1sO1xuICAgIH1cbiAgICB0aGlzLmVtaXQoKTtcbiAgICB0aGlzLnRvYXN0Q2hhbmdlZC5uZXh0KHRvYXN0KTtcbiAgfVxuICAvKipcbiAgICogcmV0dXJucyBTbm90aWZ5VG9hc3Qgb2JqZWN0XG4gICAqIEBwYXJhbSBpZCBOdW1iZXJcbiAgICogQHJldHVybiBTbm90aWZ5VG9hc3R8dW5kZWZpbmVkXG4gICAqL1xuICBnZXQoaWQ6IG51bWJlcik6IFNub3RpZmlyZVRvYXN0TW9kZWwgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvbnMgJiYgdGhpcy5ub3RpZmljYXRpb25zLmZpbmQoKHRvYXN0KSA9PiB0b2FzdC5pZCA9PT0gaWQpXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -3,7 +3,7 @@ import { CommonModule } from '@angular/common';
3
3
  import * as i0 from '@angular/core';
4
4
  import { Injectable, Inject, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, Pipe, EventEmitter, Output, NgModule } from '@angular/core';
5
5
  import { __decorate } from 'tslib';
6
- import { Subject, from, takeUntil } from 'rxjs';
6
+ import { Subject, from, tap, catchError, throwError, finalize, takeUntil } from 'rxjs';
7
7
 
8
8
  /**
9
9
  * Defines toast style depending on method name
@@ -295,7 +295,6 @@ class SnotifireService {
295
295
  if (this.defaultConfig.type && notif.config && notif.config.type) {
296
296
  const config = mergeDeep(this.defaultConfig.snotifireConfig, this.defaultConfig.type[notif.config.type], notif.config);
297
297
  const toast = new SnotifireToastModel(uuid(), notif.title ? notif.title : '', notif.body ? notif.body : '', config);
298
- console.log(config);
299
298
  this.add(toast);
300
299
  return toast;
301
300
  }
@@ -432,22 +431,37 @@ class SnotifireService {
432
431
  async = args.action;
433
432
  }
434
433
  const toast = this.create(args);
434
+ let failed = false;
435
+ const asyncAtion = async.pipe(tap((next) => {
436
+ console.log('called'), this.mergeToast(toast, next);
437
+ }), catchError((error) => {
438
+ failed = true;
439
+ return throwError(() => error);
440
+ }), finalize(() => {
441
+ this.mergeToast(toast, {}, failed === true ? SnotifireType.ERROR : SnotifireType.SUCCESS);
442
+ }));
435
443
  toast.on(SnotifireEventType.MOUNTED, () => {
436
- const subscription = async.subscribe({
437
- next: (next) => {
438
- this.mergeToast(toast, next);
439
- },
440
- error: (error) => {
441
- this.mergeToast(toast, error, SnotifireType.ERROR);
442
- subscription.unsubscribe();
443
- },
444
- complete: () => {
445
- this.mergeToast(toast, {}, SnotifireType.SUCCESS);
446
- subscription.unsubscribe();
447
- },
448
- });
444
+ console.log('mounted');
445
+ return asyncAtion;
449
446
  });
450
- return toast;
447
+ return asyncAtion;
448
+ // const toast = this.create(args);
449
+ // toast.on(SnotifireEventType.MOUNTED, () => {
450
+ // const subscription: Subscription = async.subscribe({
451
+ // next: (next?: SnotifireModel) => {
452
+ // this.mergeToast(toast, next);
453
+ // },
454
+ // error: (error?: SnotifireModel) => {
455
+ // this.mergeToast(toast, error, SnotifireType.ERROR);
456
+ // subscription.unsubscribe();
457
+ // },
458
+ // complete: () => {
459
+ // this.mergeToast(toast, {}, SnotifireType.SUCCESS);
460
+ // subscription.unsubscribe();
461
+ // },
462
+ // });
463
+ // });
464
+ // return toast;
451
465
  }
452
466
  mergeToast(toast, next, type) {
453
467
  var _a;
@@ -458,6 +472,7 @@ class SnotifireService {
458
472
  toast.title = next.title;
459
473
  }
460
474
  if (type && this.defaultConfig) {
475
+ console.log(type);
461
476
  toast.config = mergeDeep(toast.config, this.defaultConfig.global, (_a = this.defaultConfig.snotifireConfig) === null || _a === void 0 ? void 0 : _a.type, { type }, next.config);
462
477
  }
463
478
  else {
@@ -634,7 +649,6 @@ class ToastComponent {
634
649
  this.service.toastChanged
635
650
  .pipe(takeUntil(this.unsubscribe$))
636
651
  .subscribe((toast) => {
637
- console.log('toast');
638
652
  if (this.toast.id === toast.id) {
639
653
  this.initToast();
640
654
  }
@@ -884,7 +898,6 @@ class NgxSnotifireComponent {
884
898
  (_a = result[searchedString]) === null || _a === void 0 ? void 0 : _a.push(toast);
885
899
  }
886
900
  });
887
- console.log(result);
888
901
  return result;
889
902
  }
890
903
  getNotificationArray(notifications, position) {
@@ -990,7 +1003,7 @@ const ToastDefaults = {
990
1003
  icon: undefined,
991
1004
  iconClass: undefined,
992
1005
  html: undefined,
993
- position: 'RIGHT_BOTTOM',
1006
+ position: 'RIGHT_TOP',
994
1007
  animation: { enter: 'fadeIn', exit: 'fadeOut', time: 400 },
995
1008
  },
996
1009
  type: {