@seniorsistemas/exclusion-process-component 0.2.0 → 0.2.1
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.
- package/bundles/seniorsistemas-exclusion-process-component.umd.js +2 -2
- package/bundles/seniorsistemas-exclusion-process-component.umd.js.map +1 -1
- package/bundles/seniorsistemas-exclusion-process-component.umd.min.js +2 -2
- package/bundles/seniorsistemas-exclusion-process-component.umd.min.js.map +1 -1
- package/esm2015/exclusion-details/exclusion-details.component.js +3 -3
- package/esm5/exclusion-details/exclusion-details.component.js +3 -3
- package/fesm2015/seniorsistemas-exclusion-process-component.js +2 -2
- package/fesm2015/seniorsistemas-exclusion-process-component.js.map +1 -1
- package/fesm5/seniorsistemas-exclusion-process-component.js +2 -2
- package/fesm5/seniorsistemas-exclusion-process-component.js.map +1 -1
- package/package.json +1 -1
|
@@ -272,8 +272,8 @@ var ExclusionDetailsComponent = /** @class */ (function () {
|
|
|
272
272
|
});
|
|
273
273
|
this._exclusionProcessStatusChangedSubscribe = this._websocketService
|
|
274
274
|
.onEvent({
|
|
275
|
-
domain:
|
|
276
|
-
service:
|
|
275
|
+
domain: this.projectConfigs.getDomain(),
|
|
276
|
+
service: this.projectConfigs.getService(),
|
|
277
277
|
primitive: "exclusionProcessStatusChanged"
|
|
278
278
|
})
|
|
279
279
|
.pipe(takeUntil(this.ngUnsubscribe))
|
|
@@ -324,4 +324,4 @@ var ExclusionDetailsComponent = /** @class */ (function () {
|
|
|
324
324
|
return ExclusionDetailsComponent;
|
|
325
325
|
}());
|
|
326
326
|
export { ExclusionDetailsComponent };
|
|
327
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9uLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2V4Y2x1c2lvbi1wcm9jZXNzLWNvbXBvbmVudC8iLCJzb3VyY2VzIjpbImV4Y2x1c2lvbi1kZXRhaWxzL2V4Y2x1c2lvbi1kZXRhaWxzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUE0QixNQUFNLG9DQUFvQyxDQUFDO0FBQ3BILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBV3ZGO0lBdUNJLG1DQUNxQixNQUFjLEVBQ2QsS0FBcUIsRUFDckIsU0FBMkIsRUFDM0Isb0JBQTBDLEVBQzFDLGNBQTBDO1FBSjFDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQix5QkFBb0IsR0FB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QkFDbkYsS0FBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO2dCQUNoRCxPQUFPO2FBQ1Y7WUFFRCxJQUFJLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxLQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFO2dCQUN0RixLQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7YUFDbkQ7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7O2dCQXpSNEIsTUFBTTtnQkFDUCxjQUFjO2dCQUNWLGdCQUFnQjtnQkFDTCxvQkFBb0I7Z0JBQzFCLDBCQUEwQjs7SUF4Qy9EO1FBREMsTUFBTSxFQUFFOzhEQUdSO0lBR0Q7UUFEQyxNQUFNLEVBQUU7OERBR1I7SUFHRDtRQURDLE1BQU0sRUFBRTt1RUFHUjtJQUdEO1FBREMsTUFBTSxFQUFFOzBFQUdSO0lBR0Q7UUFEQyxNQUFNLEVBQUU7cUVBQytCO0lBR3hDO1FBREMsTUFBTSxFQUFFO3dFQUN3QjtJQTNCeEIseUJBQXlCO1FBTnJDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsdTFIQUFpRDtZQUVqRCxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTs7U0FDeEMsQ0FBQztPQUNXLHlCQUF5QixDQWtVckM7SUFBRCxnQ0FBQztDQUFBLEFBbFVELElBa1VDO1NBbFVZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG1vbWVudCBmcm9tIFwibW9tZW50XCI7XG5pbXBvcnQgeyBDb21wb25lbnQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24sIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBmaW5hbGl6ZSwgdGFrZVVudGlsIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5pbXBvcnQgeyBFbnVtQmFkZ2VDb2xvcnMsIEVudW1Db2x1bW5GaWVsZFR5cGUsIFRhYmxlQ29sdW1uTG9jYWxlT3B0aW9ucyB9IGZyb20gXCJAc2VuaW9yc2lzdGVtYXMvYW5ndWxhci1jb21wb25lbnRzXCI7XG5pbXBvcnQgeyBXZWJzb2NrZXRTZXJ2aWNlIH0gZnJvbSBcIkBzZW5pb3ItZ2VzdGFvLWVtcHJlc2FyaWFsL2FuZ3VsYXItY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMgfSBmcm9tIFwiLi4vZW51bXMvZW51bS1leGNsdXNpb24tcHJvY2Vzcy1zdGF0dXNcIjtcbmltcG9ydCB7IEV4Y2x1c2lvbkRldGFpbHMgfSBmcm9tIFwiLi9wcm90b2NvbHMvZXhjbHVzaW9uLWRldGFpbHNcIjtcbmltcG9ydCB7IExvZ2ljYWxEZWxldGVTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2xvZ2ljYWwtZGVsZXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IEV4Y2x1c2lvblByb2Nlc3MsIEV4Y2x1c2lvblByb2Nlc3NTdGVwLCBFeGNsdXNpb25Qcm9jZXNzU3RlcEdyb3VwIH0gZnJvbSBcIi4uL21vZGVscy9pbmRleFwiO1xuaW1wb3J0IHsgTG9naWNhbERlbGV0ZUNvbmZpZ1NlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvbG9naWNhbC1kZWxldGUtY29uZmlnLnNlcnZpY2VcIjtcbmltcG9ydCB7IFNob3dEZXRhaWxzSW5mb3JtYXRpb24gfSBmcm9tIFwiLi9wcm90b2NvbHNcIjtcbmltcG9ydCB7IEV4Y2x1c2lvblByb2Nlc3NTdGF0dXNDaGFuZ2VkIH0gZnJvbSBcIi4vcHJvdG9jb2xzL2V4Y2x1c2lvbi1wcm9jZXNzLXN0YXR1cy1jaGFuZ2VkXCI7XG5pbXBvcnQgeyBXZWJzb2NrZXRFdmVudERhdGEgfSBmcm9tIFwiLi9wcm90b2NvbHMvd2ViLXNvY2tldC1ldmVudC1kYXRhXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcInMtZXhjbHVzaW9uLWRldGFpbHNcIixcbiAgICB0ZW1wbGF0ZVVybDogXCIuL2V4Y2x1c2lvbi1kZXRhaWxzLmNvbXBvbmVudC5odG1sXCIsXG4gICAgc3R5bGVVcmxzOiBbXCIuL2V4Y2x1c2lvbi1kZXRhaWxzLmNvbXBvbmVudC5zY3NzXCJdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgRXhjbHVzaW9uRGV0YWlsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBwdWJsaWMgbG9jYWxlITogVGFibGVDb2x1bW5Mb2NhbGVPcHRpb25zO1xuXG4gICAgQE91dHB1dCgpXG4gICAgZ2V0IGlzVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzVmlzaWJsZTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KClcbiAgICBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNMb2FkaW5nO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIGdldCBwcm9jZXNzU3VtbWFyeURhdGEoKTogRXhjbHVzaW9uRGV0YWlsc1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb2Nlc3NTdW1tYXJ5RGF0YTtcbiAgICB9XG5cbiAgICBAT3V0cHV0KClcbiAgICBnZXQgcHJvY2Vzc1N1bW1hcnlDb2x1bW5zKCk6IGFueVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Byb2Nlc3NTdW1tYXJ5Q29sdW1ucztcbiAgICB9XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgcHJvY2Vzc0RldGFpbHM6IEV4Y2x1c2lvblByb2Nlc3M7XG5cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgZW50aXR5RGVzY3JpcHRpb246IHN0cmluZztcblxuICAgIHByaXZhdGUgX2VudGl0eU5hbWUgPSBcIlwiO1xuICAgIHByaXZhdGUgX2lzVmlzaWJsZSA9IGZhbHNlO1xuICAgIHByaXZhdGUgX2lzTG9hZGluZyA9IGZhbHNlO1xuICAgIHByaXZhdGUgX3Byb2Nlc3NTdW1tYXJ5RGF0YTogRXhjbHVzaW9uRGV0YWlsc1tdID0gW107XG4gICAgcHJpdmF0ZSBfcHJvY2Vzc1N1bW1hcnlDb2x1bW5zOiBhbnlbXSA9IFtdO1xuICAgIHByaXZhdGUgX3dlYnNvY2tldFNlcnZpY2U6IFdlYnNvY2tldFNlcnZpY2U7XG4gICAgcHJpdmF0ZSBfZXhjbHVzaW9uUHJvY2Vzc1N0YXR1c0NoYW5nZWRTdWJzY3JpYmU6IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIF9leGNsdXNpb25EZXRhaWxzOiBTaG93RGV0YWlsc0luZm9ybWF0aW9uO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGxvZ2ljYWxEZWxldGVTZXJ2aWNlOiBMb2dpY2FsRGVsZXRlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwcm9qZWN0Q29uZmlnczogTG9naWNhbERlbGV0ZUNvbmZpZ1NlcnZpY2VcbiAgICApIHtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yb3V0ZS5kYXRhXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IHsgW2NvbmZpZ3M6IHN0cmluZ106IGFueSwgbG9jYWxlQ29uZmlnOiBUYWJsZUNvbHVtbkxvY2FsZU9wdGlvbnMgfSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubG9jYWxlID0gZGF0YS5sb2NhbGVDb25maWc7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fcHJvY2Vzc1N1bW1hcnlDb2x1bW5zID0gdGhpcy5nZXRTdW1tYXJ5Q29sdW1ucygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICAgICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG5cbiAgICAgICAgdGhpcy5kaXNjb25uZWN0V2ViU29ja2V0KCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNob3dEZXRhaWxzKGRldGFpbHM6IFNob3dEZXRhaWxzSW5mb3JtYXRpb24pIHtcbiAgICAgICAgdGhpcy5fZXhjbHVzaW9uRGV0YWlscyA9IGRldGFpbHM7XG4gICAgICAgIHRoaXMuX2VudGl0eU5hbWUgPSBkZXRhaWxzLmVudGl0eU5hbWU7XG4gICAgICAgIHRoaXMuX2lzVmlzaWJsZSA9IHRydWU7XG4gICAgICAgIHRoaXMuX3Byb2Nlc3NTdW1tYXJ5RGF0YSA9IFtdO1xuXG4gICAgICAgIHRoaXMucHJvY2Vzc0RldGFpbHMgPSBudWxsO1xuICAgICAgICB0aGlzLmVudGl0eURlc2NyaXB0aW9uID0gZGV0YWlscy5lbnRpdHlEZXNjcmlwdGlvbjtcblxuICAgICAgICB0aGlzLmxvYWRQcm9jZXNzRGV0YWlscyhkZXRhaWxzKTtcblxuICAgICAgICB0aGlzLmNvbm5lY3RXZWJTb2NrZXQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25WaXNpYmlsaXR5Q2hhbmdlZChldmVudDogYW55KSB7XG4gICAgICAgIHRoaXMuY2xvc2VEZXRhaWxzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNsb3NlRGV0YWlscygpIHtcbiAgICAgICAgdGhpcy5faXNWaXNpYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX2V4Y2x1c2lvbkRldGFpbHMgPSBudWxsO1xuICAgICAgICB0aGlzLl9wcm9jZXNzU3VtbWFyeURhdGEgPSBbXTtcbiAgICAgICAgdGhpcy5kaXNjb25uZWN0V2ViU29ja2V0KCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5FeGNsdXNpb25zKCkge1xuICAgICAgICB0aGlzLmNsb3NlRGV0YWlscygpO1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShcbiAgICAgICAgICAgIFtcImV4Y2x1c2lvbnMtbGlzdFwiLCB0aGlzLl9lbnRpdHlOYW1lXSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczoge1xuICAgICAgICAgICAgICAgICAgICBlbnRpdHlEZXNjcmlwdGlvbjogdGhpcy5lbnRpdHlEZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0UmVjb3JkRGVzY3JpcHRpb24oKSB7XG4gICAgICAgIGlmICghdGhpcy5wcm9jZXNzRGV0YWlscz8uZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvY2Vzc0RldGFpbHMuZGVzY3JpcHRpb247XG4gICAgfVxuXG4gICAgcHVibGljIGdldEluaWNpYWxEYXRlKCkge1xuICAgICAgICBpZiAoIXRoaXMucHJvY2Vzc0RldGFpbHM/LnN0YXJ0RGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbW9tZW50KHRoaXMucHJvY2Vzc0RldGFpbHMuc3RhcnREYXRlKS5mb3JtYXQoXCJERC9NTS9ZWVlZIEhIOm1tOnNzXCIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRGaW5pc2hEYXRlKCkge1xuICAgICAgICBpZiAoIXRoaXMucHJvY2Vzc0RldGFpbHM/LmZpbmlzaERhdGUpIHtcbiAgICAgICAgICAgIHJldHVybiBcIlwiO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1vbWVudCh0aGlzLnByb2Nlc3NEZXRhaWxzLmZpbmlzaERhdGUpLmZvcm1hdChcIkREL01NL1lZWVkgSEg6bW06c3NcIik7XG4gICAgfVxuXG4gICAgcHVibGljIGlzRmluaXNoZWQoKSB7XG4gICAgICAgIHJldHVybiAhIXRoaXMucHJvY2Vzc0RldGFpbHM/LmZpbmlzaERhdGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFNob3dFeGNsdXNpb25zQnV0dG9uTGFiZWwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfc2hvd19kZWxldGlvbnNgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q2xvc2VCdXR0b25MYWJlbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9jbG9zZWApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRTdW1tYXJ5TGFiZWwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfc3VtbWFyeWApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRTdGFydERhdGVMYWJlbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9zdGFydGApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRGaW5pc2hEYXRlTGFiZWwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZmluaXNoYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFNpZGViYXJUaXRsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9kZXRhaWxzX3RpdGxlYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEVtcHR5U3RhdGVUaXRsZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9lbXB0eV9zdGF0ZV90aXRsZWApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRFbXB0eVN0YXRlRGVzY3JpcHRpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZW1wdHlfc3RhdGVfZGVzY3JpcHRpb25gKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFN1bW1hcnlDb2x1bW5zKCkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZpZWxkOiBcImRlc2NyaXB0aW9uXCIsXG4gICAgICAgICAgICAgICAgYXR0cmlidXRlczogW1wiZGVzY3JpcHRpb25cIl0sXG4gICAgICAgICAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZGVzY3JpcHRpb25gKSxcbiAgICAgICAgICAgICAgICB0eXBlOiBFbnVtQ29sdW1uRmllbGRUeXBlLlNUUklORyxcbiAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogXCIzMDBweFwiXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBmaWVsZDogXCJzdGF0dXNcIixcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBbXCJzdGF0dXNcIl0sXG4gICAgICAgICAgICAgICAgaGVhZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfc3RhdHVzYCksXG4gICAgICAgICAgICAgICAgdHlwZTogRW51bUNvbHVtbkZpZWxkVHlwZS5FTlVNLFxuICAgICAgICAgICAgICAgIGVudW1QcmVmaXg6IGAke3RoaXMucHJvamVjdENvbmZpZ3MuZ2V0VHJhbnNsYXRpb25QcmVmaXgoKX0ubG9naWNhbF9kZWxldGVfZW51bV9leGNsdXNpb25fcHJvY2Vzc19zdGF0dXNfYCxcbiAgICAgICAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogXCIxMDBweFwiXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB0b29sdGlwOiB0aGlzLmdldENvbHVtblN0YXR1c1Rvb2x0aXAsXG4gICAgICAgICAgICAgICAgYmFkZ2VDb25maWdzOiBbXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVudW1WYWx1ZTogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMuRVJST1IsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogRW51bUJhZGdlQ29sb3JzLlJFRFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnVtVmFsdWU6IEVudW1FeGNsdXNpb25Qcm9jZXNzU3RhdHVzLlBFTkRJTkcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogRW51bUJhZGdlQ29sb3JzLllFTExPV1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnVtVmFsdWU6IEVudW1FeGNsdXNpb25Qcm9jZXNzU3RhdHVzLlBST0NFU1NJTkcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogRW51bUJhZGdlQ29sb3JzLkJMVUVcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZW51bVZhbHVlOiBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cy5TVUNDRVNTLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IEVudW1CYWRnZUNvbG9ycy5HUkVFTlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0Q29sdW1uU3RhdHVzVG9vbHRpcChyb3dWYWx1ZTogRXhjbHVzaW9uRGV0YWlscykge1xuICAgICAgICBpZiAocm93VmFsdWUuZXJyb3JNZXNzYWdlKSB7XG4gICAgICAgICAgICByZXR1cm4gcm93VmFsdWUuZXJyb3JNZXNzYWdlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2FkUHJvY2Vzc0RldGFpbHMoZGV0YWlsczogU2hvd0RldGFpbHNJbmZvcm1hdGlvbikge1xuICAgICAgICB0aGlzLl9pc0xvYWRpbmcgPSB0cnVlO1xuXG4gICAgICAgIGNvbnN0IHByb2Nlc3NPYnNlcnZhYmxlID0gZGV0YWlscy5wcm9jZXNzSWRcbiAgICAgICAgICAgID8gdGhpcy5sb2dpY2FsRGVsZXRlU2VydmljZS5nZXRQcm9jZXNzRGV0YWlscyhkZXRhaWxzLnByb2Nlc3NJZClcbiAgICAgICAgICAgIDogdGhpcy5sb2dpY2FsRGVsZXRlU2VydmljZS5nZXRMYXRlc3RQcm9jZXNzRGV0YWlscyhkZXRhaWxzLnJlY29yZElkKTtcblxuICAgICAgICBwcm9jZXNzT2JzZXJ2YWJsZVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiB0aGlzLl9pc0xvYWRpbmcgPSBmYWxzZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChwcm9jZXNzOiBFeGNsdXNpb25Qcm9jZXNzKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFwcm9jZXNzKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NEZXRhaWxzID0gcHJvY2VzcztcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRQcm9jZXNzU3VtbWFyeShwcm9jZXNzKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc29ydEJ5RGF0ZShzdGFydERhdGU6IERhdGUsIGZpbmlzaERhdGU6IERhdGUpIHtcbiAgICAgICAgaWYgKHN0YXJ0RGF0ZS5nZXRUaW1lKCkgPiBmaW5pc2hEYXRlLmdldFRpbWUoKSkge1xuICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0YXJ0RGF0ZS5nZXRUaW1lKCkgPCBmaW5pc2hEYXRlLmdldFRpbWUoKSkge1xuICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIHByaXZhdGUgc29ydEdyb3Vwc0J5U3RhcnREYXRlKGdyb3VwczogRXhjbHVzaW9uUHJvY2Vzc1N0ZXBHcm91cFtdKSB7XG4gICAgICAgIHJldHVybiBncm91cHMuc29ydCgoYSwgYikgPT4gdGhpcy5zb3J0QnlEYXRlKGEuc3RhcnREYXRlLCBiLmZpbmlzaERhdGUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNvcnRTdGVwc0J5U3RhcnREYXRlKHN0ZXBzOiBFeGNsdXNpb25Qcm9jZXNzU3RlcFtdKSB7XG4gICAgICAgIHJldHVybiBzdGVwcy5zb3J0KChhLCBiKSA9PiB0aGlzLnNvcnRCeURhdGUoYS5zdGFydERhdGUsIGIuZmluaXNoRGF0ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbG9hZFByb2Nlc3NTdW1tYXJ5KHByb2Nlc3M6IEV4Y2x1c2lvblByb2Nlc3MpIHtcbiAgICAgICAgY29uc3Qgc3RlcExvZ3M6IEV4Y2x1c2lvbkRldGFpbHNbXSA9IFtdO1xuXG4gICAgICAgIHRoaXMuc29ydEdyb3Vwc0J5U3RhcnREYXRlKHByb2Nlc3MuZ3JvdXBzKVxuICAgICAgICAgICAgLmZvckVhY2goZ3JvdXAgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0ZXBzID0gdGhpcy5zb3J0U3RlcHNCeVN0YXJ0RGF0ZShncm91cC5zdGVwcylcbiAgICAgICAgICAgICAgICAgICAgLm1hcChzdGVwID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogc3RlcC5kZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1czogc3RlcC5zdGF0dXMsXG4gICAgICAgICAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2U6IHN0ZXAuZXJyb3JNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgIH0gYXMgRXhjbHVzaW9uRGV0YWlscykpO1xuXG4gICAgICAgICAgICAgICAgc3RlcExvZ3MucHVzaCguLi5zdGVwcyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9wcm9jZXNzU3VtbWFyeURhdGEgPSBzdGVwTG9ncztcbiAgICB9XG5cbiAgICBwcml2YXRlIGRpc2Nvbm5lY3RXZWJTb2NrZXQoKSB7XG4gICAgICAgIGlmICh0aGlzLl9leGNsdXNpb25Qcm9jZXNzU3RhdHVzQ2hhbmdlZFN1YnNjcmliZSkge1xuICAgICAgICAgICAgdGhpcy5fZXhjbHVzaW9uUHJvY2Vzc1N0YXR1c0NoYW5nZWRTdWJzY3JpYmUudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIHRoaXMuX2V4Y2x1c2lvblByb2Nlc3NTdGF0dXNDaGFuZ2VkU3Vic2NyaWJlID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLl93ZWJzb2NrZXRTZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLl93ZWJzb2NrZXRTZXJ2aWNlLmRpc2Nvbm5lY3QoKTtcbiAgICAgICAgICAgIHRoaXMuX3dlYnNvY2tldFNlcnZpY2UgPSBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb25uZWN0V2ViU29ja2V0KCkge1xuICAgICAgICBpZiAodGhpcy5fd2Vic29ja2V0U2VydmljZSkge1xuICAgICAgICAgICAgdGhpcy5kaXNjb25uZWN0V2ViU29ja2V0KCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl93ZWJzb2NrZXRTZXJ2aWNlID0gbmV3IFdlYnNvY2tldFNlcnZpY2UoKTtcbiAgICAgICAgdGhpcy5fd2Vic29ja2V0U2VydmljZVxuICAgICAgICAgICAgLm9uQ29ubmVjdCgpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhcnRMaXN0ZW5pbmdXZWJob29rRXZlbnRzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXJ0TGlzdGVuaW5nV2ViaG9va0V2ZW50cygpIHtcbiAgICAgICAgdGhpcy5fd2Vic29ja2V0U2VydmljZVxuICAgICAgICAgICAgLm9uRXJyb3IoKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdvbkVycm9yJywgZGF0YSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9leGNsdXNpb25Qcm9jZXNzU3RhdHVzQ2hhbmdlZFN1YnNjcmliZSA9IHRoaXMuX3dlYnNvY2tldFNlcnZpY2VcbiAgICAgICAgICAgIC5vbkV2ZW50PFdlYnNvY2tldEV2ZW50RGF0YTxFeGNsdXNpb25Qcm9jZXNzU3RhdHVzQ2hhbmdlZD4+KHtcbiAgICAgICAgICAgICAgICBkb21haW46IFwiZXJweF9mbmRcIixcbiAgICAgICAgICAgICAgICBzZXJ2aWNlOiBcInByb2R1dG9cIixcbiAgICAgICAgICAgICAgICBwcmltaXRpdmU6IFwiZXhjbHVzaW9uUHJvY2Vzc1N0YXR1c0NoYW5nZWRcIlxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IFdlYnNvY2tldEV2ZW50RGF0YTxFeGNsdXNpb25Qcm9jZXNzU3RhdHVzQ2hhbmdlZD4pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGV2ZW50O1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2V4Y2x1c2lvbkRldGFpbHMucHJvY2Vzc0lkICYmIGRhdGEucGlkID09PSB0aGlzLl9leGNsdXNpb25EZXRhaWxzLnByb2Nlc3NJZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRQcm9jZXNzRGV0YWlscyh0aGlzLl9leGNsdXNpb25EZXRhaWxzKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9leGNsdXNpb25EZXRhaWxzLnJlY29yZElkICYmIGRhdGEucmVjb3JkSWQgPT09IHRoaXMuX2V4Y2x1c2lvbkRldGFpbHMucmVjb3JkSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUHJvY2Vzc0RldGFpbHModGhpcy5fZXhjbHVzaW9uRGV0YWlscyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
|
327
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVzaW9uLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHNlbmlvcnNpc3RlbWFzL2V4Y2x1c2lvbi1wcm9jZXNzLWNvbXBvbmVudC8iLCJzb3VyY2VzIjpbImV4Y2x1c2lvbi1kZXRhaWxzL2V4Y2x1c2lvbi1kZXRhaWxzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDN0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUE0QixNQUFNLG9DQUFvQyxDQUFDO0FBQ3BILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRTFFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBV3ZGO0lBdUNJLG1DQUNxQixNQUFjLEVBQ2QsS0FBcUIsRUFDckIsU0FBMkIsRUFDM0Isb0JBQTBDLEVBQzFDLGNBQTBDO1FBSjFDLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixjQUFTLEdBQVQsU0FBUyxDQUFrQjtRQUMzQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLG1CQUFjLEdBQWQsY0FBYyxDQUE0QjtRQWZ2RCxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsd0JBQW1CLEdBQXVCLEVBQUUsQ0FBQztRQUM3QywyQkFBc0IsR0FBVSxFQUFFLENBQUM7UUFJMUIsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBUy9DLENBQUM7SUExQ0Qsc0JBQUksZ0RBQVM7YUFBYjtZQUNJLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUMzQixDQUFDOzs7T0FBQTtJQUdELHNCQUFJLGdEQUFTO2FBQWI7WUFDSSxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDM0IsQ0FBQzs7O09BQUE7SUFHRCxzQkFBSSx5REFBa0I7YUFBdEI7WUFDSSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztRQUNwQyxDQUFDOzs7T0FBQTtJQUdELHNCQUFJLDREQUFxQjthQUF6QjtZQUNJLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDO1FBQ3ZDLENBQUM7OztPQUFBO0lBMkJELDRDQUFRLEdBQVI7UUFBQSxpQkFPQztRQU5HLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSTthQUNWLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxVQUFDLElBQXdFO1lBQ2hGLEtBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztRQUNQLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzRCxDQUFDO0lBRU0sK0NBQVcsR0FBbEI7UUFDSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFOUIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLCtDQUFXLEdBQWxCLFVBQW1CLE9BQStCO1FBQzlDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxPQUFPLENBQUM7UUFDakMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7UUFFOUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDM0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztRQUVuRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFakMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVNLHVEQUFtQixHQUExQixVQUEyQixLQUFVO1FBQ2pDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sZ0RBQVksR0FBbkI7UUFDSSxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1FBQzlCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLGtEQUFjLEdBQXJCO1FBQ0ksSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUNoQixDQUFDLGlCQUFpQixFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsRUFDckM7WUFDSSxXQUFXLEVBQUU7Z0JBQ1QsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjthQUM1QztTQUNKLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFTSx3REFBb0IsR0FBM0I7O1FBQ0ksSUFBSSxRQUFDLElBQUksQ0FBQyxjQUFjLDBDQUFFLFdBQVcsQ0FBQSxFQUFFO1lBQ25DLE9BQU8sRUFBRSxDQUFDO1NBQ2I7UUFFRCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDO0lBQzNDLENBQUM7SUFFTSxrREFBYyxHQUFyQjs7UUFDSSxJQUFJLFFBQUMsSUFBSSxDQUFDLGNBQWMsMENBQUUsU0FBUyxDQUFBLEVBQUU7WUFDakMsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUVELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVNLGlEQUFhLEdBQXBCOztRQUNJLElBQUksUUFBQyxJQUFJLENBQUMsY0FBYywwQ0FBRSxVQUFVLENBQUEsRUFBRTtZQUNsQyxPQUFPLEVBQUUsQ0FBQztTQUNiO1FBRUQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRU0sOENBQVUsR0FBakI7O1FBQ0ksT0FBTyxDQUFDLFFBQUMsSUFBSSxDQUFDLGNBQWMsMENBQUUsVUFBVSxDQUFBLENBQUM7SUFDN0MsQ0FBQztJQUVNLGdFQUE0QixHQUFuQztRQUNJLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSxtQ0FBZ0MsQ0FBQyxDQUFDO0lBQ2pILENBQUM7SUFFTSx1REFBbUIsR0FBMUI7UUFDSSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsMEJBQXVCLENBQUMsQ0FBQztJQUN4RyxDQUFDO0lBRU0sbURBQWUsR0FBdEI7UUFDSSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsNEJBQXlCLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRU0scURBQWlCLEdBQXhCO1FBQ0ksT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBSSxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixFQUFFLDBCQUF1QixDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVNLHNEQUFrQixHQUF6QjtRQUNJLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSwyQkFBd0IsQ0FBQyxDQUFDO0lBQ3pHLENBQUM7SUFFTSxtREFBZSxHQUF0QjtRQUNJLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSxrQ0FBK0IsQ0FBQyxDQUFDO0lBQ2hILENBQUM7SUFFTSxzREFBa0IsR0FBekI7UUFDSSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsc0NBQW1DLENBQUMsQ0FBQztJQUNwSCxDQUFDO0lBRU0sNERBQXdCLEdBQS9CO1FBQ0ksT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBSSxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixFQUFFLDRDQUF5QyxDQUFDLENBQUM7SUFDMUgsQ0FBQztJQUVPLHFEQUFpQixHQUF6QjtRQUNJLE9BQU87WUFDSDtnQkFDSSxLQUFLLEVBQUUsYUFBYTtnQkFDcEIsVUFBVSxFQUFFLENBQUMsYUFBYSxDQUFDO2dCQUMzQixNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSxnQ0FBNkIsQ0FBQztnQkFDMUcsSUFBSSxFQUFFLG1CQUFtQixDQUFDLE1BQU07Z0JBQ2hDLEtBQUssRUFBRTtvQkFDSCxLQUFLLEVBQUUsT0FBTztpQkFDakI7YUFDSjtZQUNEO2dCQUNJLEtBQUssRUFBRSxRQUFRO2dCQUNmLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFDdEIsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLEVBQUUsMkJBQXdCLENBQUM7Z0JBQ3JHLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxJQUFJO2dCQUM5QixVQUFVLEVBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsRUFBRSxtREFBZ0Q7Z0JBQ3pHLEtBQUssRUFBRTtvQkFDSCxLQUFLLEVBQUUsT0FBTztpQkFDakI7Z0JBQ0QsT0FBTyxFQUFFLElBQUksQ0FBQyxzQkFBc0I7Z0JBQ3BDLFlBQVksRUFBRTtvQkFDVjt3QkFDSSxTQUFTLEVBQUUsMEJBQTBCLENBQUMsS0FBSzt3QkFDM0MsS0FBSyxFQUFFLGVBQWUsQ0FBQyxHQUFHO3FCQUM3QjtvQkFDRDt3QkFDSSxTQUFTLEVBQUUsMEJBQTBCLENBQUMsT0FBTzt3QkFDN0MsS0FBSyxFQUFFLGVBQWUsQ0FBQyxNQUFNO3FCQUNoQztvQkFDRDt3QkFDSSxTQUFTLEVBQUUsMEJBQTBCLENBQUMsVUFBVTt3QkFDaEQsS0FBSyxFQUFFLGVBQWUsQ0FBQyxJQUFJO3FCQUM5QjtvQkFDRDt3QkFDSSxTQUFTLEVBQUUsMEJBQTBCLENBQUMsT0FBTzt3QkFDN0MsS0FBSyxFQUFFLGVBQWUsQ0FBQyxLQUFLO3FCQUMvQjtpQkFDSjthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7SUFFTywwREFBc0IsR0FBOUIsVUFBK0IsUUFBMEI7UUFDckQsSUFBSSxRQUFRLENBQUMsWUFBWSxFQUFFO1lBQ3ZCLE9BQU8sUUFBUSxDQUFDLFlBQVksQ0FBQztTQUNoQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFTyxzREFBa0IsR0FBMUIsVUFBMkIsT0FBK0I7UUFBMUQsaUJBa0JDO1FBakJHLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBRXZCLElBQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDLFNBQVM7WUFDdkMsQ0FBQyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO1lBQ2hFLENBQUMsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsdUJBQXVCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRTFFLGlCQUFpQjthQUNaLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxFQUF2QixDQUF1QixDQUFDLENBQUM7YUFDN0MsU0FBUyxDQUFDLFVBQUMsT0FBeUI7WUFDakMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDVixPQUFPO2FBQ1Y7WUFFRCxLQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQztZQUM5QixLQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRU8sOENBQVUsR0FBbEIsVUFBbUIsU0FBZSxFQUFFLFVBQWdCO1FBQ2hELElBQUksU0FBUyxDQUFDLE9BQU8sRUFBRSxHQUFHLFVBQVUsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUM1QyxPQUFPLENBQUMsQ0FBQztTQUNaO1FBQ0QsSUFBSSxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsVUFBVSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQzVDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDYjtRQUNELE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVPLHlEQUFxQixHQUE3QixVQUE4QixNQUFtQztRQUFqRSxpQkFFQztRQURHLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxFQUExQyxDQUEwQyxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVPLHdEQUFvQixHQUE1QixVQUE2QixLQUE2QjtRQUExRCxpQkFFQztRQURHLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxLQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxFQUExQyxDQUEwQyxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVPLHNEQUFrQixHQUExQixVQUEyQixPQUF5QjtRQUFwRCxpQkFnQkM7UUFmRyxJQUFNLFFBQVEsR0FBdUIsRUFBRSxDQUFDO1FBRXhDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2FBQ3JDLE9BQU8sQ0FBQyxVQUFBLEtBQUs7WUFDVixJQUFNLEtBQUssR0FBRyxLQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztpQkFDL0MsR0FBRyxDQUFDLFVBQUEsSUFBSSxJQUFJLE9BQUEsQ0FBQztnQkFDVixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7Z0JBQzdCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDbkIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO2FBQ2IsQ0FBQSxFQUpULENBSVMsQ0FBQyxDQUFDO1lBRTVCLFFBQVEsQ0FBQyxJQUFJLE9BQWIsUUFBUSxXQUFTLEtBQUssR0FBRTtRQUM1QixDQUFDLENBQUMsQ0FBQztRQUVQLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxRQUFRLENBQUM7SUFDeEMsQ0FBQztJQUVPLHVEQUFtQixHQUEzQjtRQUNJLElBQUksSUFBSSxDQUFDLHVDQUF1QyxFQUFFO1lBQzlDLElBQUksQ0FBQyx1Q0FBdUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMzRCxJQUFJLENBQUMsdUNBQXVDLEdBQUcsSUFBSSxDQUFDO1NBQ3ZEO1FBRUQsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7U0FDakM7SUFDTCxDQUFDO0lBRU8sb0RBQWdCLEdBQXhCO1FBQUEsaUJBWUM7UUFYRyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUN4QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztTQUM5QjtRQUVELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQjthQUNqQixTQUFTLEVBQUU7YUFDWCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUM7WUFDUCxLQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFTywrREFBMkIsR0FBbkM7UUFBQSxpQkEyQkM7UUExQkcsSUFBSSxDQUFDLGlCQUFpQjthQUNqQixPQUFPLEVBQUU7YUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsVUFBQyxJQUFTO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO1FBRVAsSUFBSSxDQUFDLHVDQUF1QyxHQUFHLElBQUksQ0FBQyxpQkFBaUI7YUFDaEUsT0FBTyxDQUFvRDtZQUN4RCxNQUFNLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUU7WUFDdkMsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxFQUFFO1lBQ3pDLFNBQVMsRUFBRSwrQkFBK0I7U0FDN0MsQ0FBQzthQUNELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxVQUFDLEtBQXdEO1lBQ3hELElBQUEsaUJBQUksQ0FBVztZQUV2QixJQUFJLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxLQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxFQUFFO2dCQUNuRixLQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7Z0JBQ2hELE9BQU87YUFDVjtZQUVELElBQUksS0FBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLEtBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3RGLEtBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQzthQUNuRDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7Z0JBelI0QixNQUFNO2dCQUNQLGNBQWM7Z0JBQ1YsZ0JBQWdCO2dCQUNMLG9CQUFvQjtnQkFDMUIsMEJBQTBCOztJQXhDL0Q7UUFEQyxNQUFNLEVBQUU7OERBR1I7SUFHRDtRQURDLE1BQU0sRUFBRTs4REFHUjtJQUdEO1FBREMsTUFBTSxFQUFFO3VFQUdSO0lBR0Q7UUFEQyxNQUFNLEVBQUU7MEVBR1I7SUFHRDtRQURDLE1BQU0sRUFBRTtxRUFDK0I7SUFHeEM7UUFEQyxNQUFNLEVBQUU7d0VBQ3dCO0lBM0J4Qix5QkFBeUI7UUFOckMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLHFCQUFxQjtZQUMvQix1MUhBQWlEO1lBRWpELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJOztTQUN4QyxDQUFDO09BQ1cseUJBQXlCLENBa1VyQztJQUFELGdDQUFDO0NBQUEsQUFsVUQsSUFrVUM7U0FsVVkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbW9tZW50IGZyb20gXCJtb21lbnRcIjtcbmltcG9ydCB7IENvbXBvbmVudCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgT25Jbml0LCBPbkRlc3Ryb3kgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IGZpbmFsaXplLCB0YWtlVW50aWwgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcbmltcG9ydCB7IEVudW1CYWRnZUNvbG9ycywgRW51bUNvbHVtbkZpZWxkVHlwZSwgVGFibGVDb2x1bW5Mb2NhbGVPcHRpb25zIH0gZnJvbSBcIkBzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHNcIjtcbmltcG9ydCB7IFdlYnNvY2tldFNlcnZpY2UgfSBmcm9tIFwiQHNlbmlvci1nZXN0YW8tZW1wcmVzYXJpYWwvYW5ndWxhci1jb21wb25lbnRzXCI7XG5pbXBvcnQgeyBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cyB9IGZyb20gXCIuLi9lbnVtcy9lbnVtLWV4Y2x1c2lvbi1wcm9jZXNzLXN0YXR1c1wiO1xuaW1wb3J0IHsgRXhjbHVzaW9uRGV0YWlscyB9IGZyb20gXCIuL3Byb3RvY29scy9leGNsdXNpb24tZGV0YWlsc1wiO1xuaW1wb3J0IHsgTG9naWNhbERlbGV0ZVNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvbG9naWNhbC1kZWxldGUuc2VydmljZVwiO1xuaW1wb3J0IHsgRXhjbHVzaW9uUHJvY2VzcywgRXhjbHVzaW9uUHJvY2Vzc1N0ZXAsIEV4Y2x1c2lvblByb2Nlc3NTdGVwR3JvdXAgfSBmcm9tIFwiLi4vbW9kZWxzL2luZGV4XCI7XG5pbXBvcnQgeyBMb2dpY2FsRGVsZXRlQ29uZmlnU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9sb2dpY2FsLWRlbGV0ZS1jb25maWcuc2VydmljZVwiO1xuaW1wb3J0IHsgU2hvd0RldGFpbHNJbmZvcm1hdGlvbiB9IGZyb20gXCIuL3Byb3RvY29sc1wiO1xuaW1wb3J0IHsgRXhjbHVzaW9uUHJvY2Vzc1N0YXR1c0NoYW5nZWQgfSBmcm9tIFwiLi9wcm90b2NvbHMvZXhjbHVzaW9uLXByb2Nlc3Mtc3RhdHVzLWNoYW5nZWRcIjtcbmltcG9ydCB7IFdlYnNvY2tldEV2ZW50RGF0YSB9IGZyb20gXCIuL3Byb3RvY29scy93ZWItc29ja2V0LWV2ZW50LWRhdGFcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwicy1leGNsdXNpb24tZGV0YWlsc1wiLFxuICAgIHRlbXBsYXRlVXJsOiBcIi4vZXhjbHVzaW9uLWRldGFpbHMuY29tcG9uZW50Lmh0bWxcIixcbiAgICBzdHlsZVVybHM6IFtcIi4vZXhjbHVzaW9uLWRldGFpbHMuY29tcG9uZW50LnNjc3NcIl0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBFeGNsdXNpb25EZXRhaWxzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHB1YmxpYyBsb2NhbGUhOiBUYWJsZUNvbHVtbkxvY2FsZU9wdGlvbnM7XG5cbiAgICBAT3V0cHV0KClcbiAgICBnZXQgaXNWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNWaXNpYmxlO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIGdldCBpc0xvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0xvYWRpbmc7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpXG4gICAgZ2V0IHByb2Nlc3NTdW1tYXJ5RGF0YSgpOiBFeGNsdXNpb25EZXRhaWxzW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvY2Vzc1N1bW1hcnlEYXRhO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIGdldCBwcm9jZXNzU3VtbWFyeUNvbHVtbnMoKTogYW55W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvY2Vzc1N1bW1hcnlDb2x1bW5zO1xuICAgIH1cblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBwcm9jZXNzRGV0YWlsczogRXhjbHVzaW9uUHJvY2VzcztcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBlbnRpdHlEZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gICAgcHJpdmF0ZSBfZW50aXR5TmFtZSA9IFwiXCI7XG4gICAgcHJpdmF0ZSBfaXNWaXNpYmxlID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBfcHJvY2Vzc1N1bW1hcnlEYXRhOiBFeGNsdXNpb25EZXRhaWxzW10gPSBbXTtcbiAgICBwcml2YXRlIF9wcm9jZXNzU3VtbWFyeUNvbHVtbnM6IGFueVtdID0gW107XG4gICAgcHJpdmF0ZSBfd2Vic29ja2V0U2VydmljZTogV2Vic29ja2V0U2VydmljZTtcbiAgICBwcml2YXRlIF9leGNsdXNpb25Qcm9jZXNzU3RhdHVzQ2hhbmdlZFN1YnNjcmliZTogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgX2V4Y2x1c2lvbkRldGFpbHM6IFNob3dEZXRhaWxzSW5mb3JtYXRpb247XG4gICAgcHJpdmF0ZSByZWFkb25seSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbG9naWNhbERlbGV0ZVNlcnZpY2U6IExvZ2ljYWxEZWxldGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHByb2plY3RDb25maWdzOiBMb2dpY2FsRGVsZXRlQ29uZmlnU2VydmljZVxuICAgICkge1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJvdXRlLmRhdGFcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZGF0YTogeyBbY29uZmlnczogc3RyaW5nXTogYW55LCBsb2NhbGVDb25maWc6IFRhYmxlQ29sdW1uTG9jYWxlT3B0aW9ucyB9KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5sb2NhbGUgPSBkYXRhLmxvY2FsZUNvbmZpZztcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9wcm9jZXNzU3VtbWFyeUNvbHVtbnMgPSB0aGlzLmdldFN1bW1hcnlDb2x1bW5zKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgICAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcblxuICAgICAgICB0aGlzLmRpc2Nvbm5lY3RXZWJTb2NrZXQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2hvd0RldGFpbHMoZGV0YWlsczogU2hvd0RldGFpbHNJbmZvcm1hdGlvbikge1xuICAgICAgICB0aGlzLl9leGNsdXNpb25EZXRhaWxzID0gZGV0YWlscztcbiAgICAgICAgdGhpcy5fZW50aXR5TmFtZSA9IGRldGFpbHMuZW50aXR5TmFtZTtcbiAgICAgICAgdGhpcy5faXNWaXNpYmxlID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5fcHJvY2Vzc1N1bW1hcnlEYXRhID0gW107XG5cbiAgICAgICAgdGhpcy5wcm9jZXNzRGV0YWlscyA9IG51bGw7XG4gICAgICAgIHRoaXMuZW50aXR5RGVzY3JpcHRpb24gPSBkZXRhaWxzLmVudGl0eURlc2NyaXB0aW9uO1xuXG4gICAgICAgIHRoaXMubG9hZFByb2Nlc3NEZXRhaWxzKGRldGFpbHMpO1xuXG4gICAgICAgIHRoaXMuY29ubmVjdFdlYlNvY2tldCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblZpc2liaWxpdHlDaGFuZ2VkKGV2ZW50OiBhbnkpIHtcbiAgICAgICAgdGhpcy5jbG9zZURldGFpbHMoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xvc2VEZXRhaWxzKCkge1xuICAgICAgICB0aGlzLl9pc1Zpc2libGUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fZXhjbHVzaW9uRGV0YWlscyA9IG51bGw7XG4gICAgICAgIHRoaXMuX3Byb2Nlc3NTdW1tYXJ5RGF0YSA9IFtdO1xuICAgICAgICB0aGlzLmRpc2Nvbm5lY3RXZWJTb2NrZXQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3BlbkV4Y2x1c2lvbnMoKSB7XG4gICAgICAgIHRoaXMuY2xvc2VEZXRhaWxzKCk7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxuICAgICAgICAgICAgW1wiZXhjbHVzaW9ucy1saXN0XCIsIHRoaXMuX2VudGl0eU5hbWVdLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgICAgIGVudGl0eURlc2NyaXB0aW9uOiB0aGlzLmVudGl0eURlc2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRSZWNvcmREZXNjcmlwdGlvbigpIHtcbiAgICAgICAgaWYgKCF0aGlzLnByb2Nlc3NEZXRhaWxzPy5kZXNjcmlwdGlvbikge1xuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5wcm9jZXNzRGV0YWlscy5kZXNjcmlwdGlvbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW5pY2lhbERhdGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5wcm9jZXNzRGV0YWlscz8uc3RhcnREYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4gXCJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBtb21lbnQodGhpcy5wcm9jZXNzRGV0YWlscy5zdGFydERhdGUpLmZvcm1hdChcIkREL01NL1lZWVkgSEg6bW06c3NcIik7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbmlzaERhdGUoKSB7XG4gICAgICAgIGlmICghdGhpcy5wcm9jZXNzRGV0YWlscz8uZmluaXNoRGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbW9tZW50KHRoaXMucHJvY2Vzc0RldGFpbHMuZmluaXNoRGF0ZSkuZm9ybWF0KFwiREQvTU0vWVlZWSBISDptbTpzc1wiKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNGaW5pc2hlZCgpIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5wcm9jZXNzRGV0YWlscz8uZmluaXNoRGF0ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U2hvd0V4Y2x1c2lvbnNCdXR0b25MYWJlbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9zaG93X2RlbGV0aW9uc2ApO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRDbG9zZUJ1dHRvbkxhYmVsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2Nsb3NlYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFN1bW1hcnlMYWJlbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9zdW1tYXJ5YCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldFN0YXJ0RGF0ZUxhYmVsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX3N0YXJ0YCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEZpbmlzaERhdGVMYWJlbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9maW5pc2hgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0U2lkZWJhclRpdGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2RldGFpbHNfdGl0bGVgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0RW1wdHlTdGF0ZVRpdGxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2xhdGUuaW5zdGFudChgJHt0aGlzLnByb2plY3RDb25maWdzLmdldFRyYW5zbGF0aW9uUHJlZml4KCl9LmxvZ2ljYWxfZGVsZXRlX2VtcHR5X3N0YXRlX3RpdGxlYCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEVtcHR5U3RhdGVEZXNjcmlwdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9lbXB0eV9zdGF0ZV9kZXNjcmlwdGlvbmApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0U3VtbWFyeUNvbHVtbnMoKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgZmllbGQ6IFwiZGVzY3JpcHRpb25cIixcbiAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiBbXCJkZXNjcmlwdGlvblwiXSxcbiAgICAgICAgICAgICAgICBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9kZXNjcmlwdGlvbmApLFxuICAgICAgICAgICAgICAgIHR5cGU6IEVudW1Db2x1bW5GaWVsZFR5cGUuU1RSSU5HLFxuICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBcIjMwMHB4XCJcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGZpZWxkOiBcInN0YXR1c1wiLFxuICAgICAgICAgICAgICAgIGF0dHJpYnV0ZXM6IFtcInN0YXR1c1wiXSxcbiAgICAgICAgICAgICAgICBoZWFkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9zdGF0dXNgKSxcbiAgICAgICAgICAgICAgICB0eXBlOiBFbnVtQ29sdW1uRmllbGRUeXBlLkVOVU0sXG4gICAgICAgICAgICAgICAgZW51bVByZWZpeDogYCR7dGhpcy5wcm9qZWN0Q29uZmlncy5nZXRUcmFuc2xhdGlvblByZWZpeCgpfS5sb2dpY2FsX2RlbGV0ZV9lbnVtX2V4Y2x1c2lvbl9wcm9jZXNzX3N0YXR1c19gLFxuICAgICAgICAgICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBcIjEwMHB4XCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHRvb2x0aXA6IHRoaXMuZ2V0Q29sdW1uU3RhdHVzVG9vbHRpcCxcbiAgICAgICAgICAgICAgICBiYWRnZUNvbmZpZ3M6IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZW51bVZhbHVlOiBFbnVtRXhjbHVzaW9uUHJvY2Vzc1N0YXR1cy5FUlJPUixcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBFbnVtQmFkZ2VDb2xvcnMuUkVEXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVudW1WYWx1ZTogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMuUEVORElORyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBFbnVtQmFkZ2VDb2xvcnMuWUVMTE9XXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGVudW1WYWx1ZTogRW51bUV4Y2x1c2lvblByb2Nlc3NTdGF0dXMuUFJPQ0VTU0lORyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBFbnVtQmFkZ2VDb2xvcnMuQkxVRVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbnVtVmFsdWU6IEVudW1FeGNsdXNpb25Qcm9jZXNzU3RhdHVzLlNVQ0NFU1MsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogRW51bUJhZGdlQ29sb3JzLkdSRUVOXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9XG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRDb2x1bW5TdGF0dXNUb29sdGlwKHJvd1ZhbHVlOiBFeGNsdXNpb25EZXRhaWxzKSB7XG4gICAgICAgIGlmIChyb3dWYWx1ZS5lcnJvck1lc3NhZ2UpIHtcbiAgICAgICAgICAgIHJldHVybiByb3dWYWx1ZS5lcnJvck1lc3NhZ2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxvYWRQcm9jZXNzRGV0YWlscyhkZXRhaWxzOiBTaG93RGV0YWlsc0luZm9ybWF0aW9uKSB7XG4gICAgICAgIHRoaXMuX2lzTG9hZGluZyA9IHRydWU7XG5cbiAgICAgICAgY29uc3QgcHJvY2Vzc09ic2VydmFibGUgPSBkZXRhaWxzLnByb2Nlc3NJZFxuICAgICAgICAgICAgPyB0aGlzLmxvZ2ljYWxEZWxldGVTZXJ2aWNlLmdldFByb2Nlc3NEZXRhaWxzKGRldGFpbHMucHJvY2Vzc0lkKVxuICAgICAgICAgICAgOiB0aGlzLmxvZ2ljYWxEZWxldGVTZXJ2aWNlLmdldExhdGVzdFByb2Nlc3NEZXRhaWxzKGRldGFpbHMucmVjb3JkSWQpO1xuXG4gICAgICAgIHByb2Nlc3NPYnNlcnZhYmxlXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+IHRoaXMuX2lzTG9hZGluZyA9IGZhbHNlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHByb2Nlc3M6IEV4Y2x1c2lvblByb2Nlc3MpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXByb2Nlc3MpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMucHJvY2Vzc0RldGFpbHMgPSBwcm9jZXNzO1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZFByb2Nlc3NTdW1tYXJ5KHByb2Nlc3MpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzb3J0QnlEYXRlKHN0YXJ0RGF0ZTogRGF0ZSwgZmluaXNoRGF0ZTogRGF0ZSkge1xuICAgICAgICBpZiAoc3RhcnREYXRlLmdldFRpbWUoKSA+IGZpbmlzaERhdGUuZ2V0VGltZSgpKSB7XG4gICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoc3RhcnREYXRlLmdldFRpbWUoKSA8IGZpbmlzaERhdGUuZ2V0VGltZSgpKSB7XG4gICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzb3J0R3JvdXBzQnlTdGFydERhdGUoZ3JvdXBzOiBFeGNsdXNpb25Qcm9jZXNzU3RlcEdyb3VwW10pIHtcbiAgICAgICAgcmV0dXJuIGdyb3Vwcy5zb3J0KChhLCBiKSA9PiB0aGlzLnNvcnRCeURhdGUoYS5zdGFydERhdGUsIGIuZmluaXNoRGF0ZSkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc29ydFN0ZXBzQnlTdGFydERhdGUoc3RlcHM6IEV4Y2x1c2lvblByb2Nlc3NTdGVwW10pIHtcbiAgICAgICAgcmV0dXJuIHN0ZXBzLnNvcnQoKGEsIGIpID0+IHRoaXMuc29ydEJ5RGF0ZShhLnN0YXJ0RGF0ZSwgYi5maW5pc2hEYXRlKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBsb2FkUHJvY2Vzc1N1bW1hcnkocHJvY2VzczogRXhjbHVzaW9uUHJvY2Vzcykge1xuICAgICAgICBjb25zdCBzdGVwTG9nczogRXhjbHVzaW9uRGV0YWlsc1tdID0gW107XG5cbiAgICAgICAgdGhpcy5zb3J0R3JvdXBzQnlTdGFydERhdGUocHJvY2Vzcy5ncm91cHMpXG4gICAgICAgICAgICAuZm9yRWFjaChncm91cCA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RlcHMgPSB0aGlzLnNvcnRTdGVwc0J5U3RhcnREYXRlKGdyb3VwLnN0ZXBzKVxuICAgICAgICAgICAgICAgICAgICAubWFwKHN0ZXAgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBzdGVwLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiBzdGVwLnN0YXR1cyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZTogc3RlcC5lcnJvck1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgfSBhcyBFeGNsdXNpb25EZXRhaWxzKSk7XG5cbiAgICAgICAgICAgICAgICBzdGVwTG9ncy5wdXNoKC4uLnN0ZXBzKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX3Byb2Nlc3NTdW1tYXJ5RGF0YSA9IHN0ZXBMb2dzO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGlzY29ubmVjdFdlYlNvY2tldCgpIHtcbiAgICAgICAgaWYgKHRoaXMuX2V4Y2x1c2lvblByb2Nlc3NTdGF0dXNDaGFuZ2VkU3Vic2NyaWJlKSB7XG4gICAgICAgICAgICB0aGlzLl9leGNsdXNpb25Qcm9jZXNzU3RhdHVzQ2hhbmdlZFN1YnNjcmliZS51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgdGhpcy5fZXhjbHVzaW9uUHJvY2Vzc1N0YXR1c0NoYW5nZWRTdWJzY3JpYmUgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuX3dlYnNvY2tldFNlcnZpY2UpIHtcbiAgICAgICAgICAgIHRoaXMuX3dlYnNvY2tldFNlcnZpY2UuZGlzY29ubmVjdCgpO1xuICAgICAgICAgICAgdGhpcy5fd2Vic29ja2V0U2VydmljZSA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbm5lY3RXZWJTb2NrZXQoKSB7XG4gICAgICAgIGlmICh0aGlzLl93ZWJzb2NrZXRTZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLmRpc2Nvbm5lY3RXZWJTb2NrZXQoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3dlYnNvY2tldFNlcnZpY2UgPSBuZXcgV2Vic29ja2V0U2VydmljZSgpO1xuICAgICAgICB0aGlzLl93ZWJzb2NrZXRTZXJ2aWNlXG4gICAgICAgICAgICAub25Db25uZWN0KClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGFydExpc3RlbmluZ1dlYmhvb2tFdmVudHMoKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhcnRMaXN0ZW5pbmdXZWJob29rRXZlbnRzKCkge1xuICAgICAgICB0aGlzLl93ZWJzb2NrZXRTZXJ2aWNlXG4gICAgICAgICAgICAub25FcnJvcigpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ29uRXJyb3InLCBkYXRhKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2V4Y2x1c2lvblByb2Nlc3NTdGF0dXNDaGFuZ2VkU3Vic2NyaWJlID0gdGhpcy5fd2Vic29ja2V0U2VydmljZVxuICAgICAgICAgICAgLm9uRXZlbnQ8V2Vic29ja2V0RXZlbnREYXRhPEV4Y2x1c2lvblByb2Nlc3NTdGF0dXNDaGFuZ2VkPj4oe1xuICAgICAgICAgICAgICAgIGRvbWFpbjogdGhpcy5wcm9qZWN0Q29uZmlncy5nZXREb21haW4oKSxcbiAgICAgICAgICAgICAgICBzZXJ2aWNlOiB0aGlzLnByb2plY3RDb25maWdzLmdldFNlcnZpY2UoKSxcbiAgICAgICAgICAgICAgICBwcmltaXRpdmU6IFwiZXhjbHVzaW9uUHJvY2Vzc1N0YXR1c0NoYW5nZWRcIlxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IFdlYnNvY2tldEV2ZW50RGF0YTxFeGNsdXNpb25Qcm9jZXNzU3RhdHVzQ2hhbmdlZD4pID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGEgfSA9IGV2ZW50O1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2V4Y2x1c2lvbkRldGFpbHMucHJvY2Vzc0lkICYmIGRhdGEucGlkID09PSB0aGlzLl9leGNsdXNpb25EZXRhaWxzLnByb2Nlc3NJZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRQcm9jZXNzRGV0YWlscyh0aGlzLl9leGNsdXNpb25EZXRhaWxzKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9leGNsdXNpb25EZXRhaWxzLnJlY29yZElkICYmIGRhdGEucmVjb3JkSWQgPT09IHRoaXMuX2V4Y2x1c2lvbkRldGFpbHMucmVjb3JkSWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkUHJvY2Vzc0RldGFpbHModGhpcy5fZXhjbHVzaW9uRGV0YWlscyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
|
@@ -405,8 +405,8 @@ let ExclusionDetailsComponent = class ExclusionDetailsComponent {
|
|
|
405
405
|
});
|
|
406
406
|
this._exclusionProcessStatusChangedSubscribe = this._websocketService
|
|
407
407
|
.onEvent({
|
|
408
|
-
domain:
|
|
409
|
-
service:
|
|
408
|
+
domain: this.projectConfigs.getDomain(),
|
|
409
|
+
service: this.projectConfigs.getService(),
|
|
410
410
|
primitive: "exclusionProcessStatusChanged"
|
|
411
411
|
})
|
|
412
412
|
.pipe(takeUntil(this.ngUnsubscribe))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seniorsistemas-exclusion-process-component.js","sources":["ng://@seniorsistemas/exclusion-process-component/enums/enum-exclusion-process-status.ts","ng://@seniorsistemas/exclusion-process-component/models/project-config.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete-config.service.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.module.ts","ng://@seniorsistemas/exclusion-process-component/services/filter.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.routing.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.module.ts","ng://@seniorsistemas/exclusion-process-component/logical-delete.module.ts","ng://@seniorsistemas/exclusion-process-component/seniorsistemas-exclusion-process-component.ts"],"sourcesContent":["export enum EnumExclusionProcessStatus {\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n ERROR = \"ERROR\",\n SUCCESS = \"SUCCESS\"\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const ProjectConfigsInjectionToken = new InjectionToken<ProjectConfigs>(\"projectConfigs\");\n\nexport interface ProjectConfigs {\n domain: string;\n service: string;\n translationPrefix?: string;\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"../models/project-config\";\n\n@Injectable()\nexport class LogicalDeleteConfigService {\n constructor(\n @Inject(ProjectConfigsInjectionToken)\n private readonly projectConfigs: ProjectConfigs) {\n }\n\n public getDomain() {\n return this.projectConfigs.domain;\n }\n\n public getService() {\n return this.projectConfigs.service;\n }\n\n public getTranslationPrefix() {\n if (this.projectConfigs.translationPrefix) {\n return this.projectConfigs.translationPrefix;\n }\n return `${this.projectConfigs.domain}.${this.projectConfigs.service}`;\n }\n}\n","import * as moment from \"moment\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { MessageService } from \"primeng/api\";\nimport { Observable, throwError } from \"rxjs\";\nimport { catchError, map } from \"rxjs/operators\";\nimport { ListResult, ExclusionProcess } from \"../models/index\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\nimport { ListParams } from \"../models/list-params\";\n\nconst HTTP_UNAUTHORIZED_CODE = 401;\nconst DEFAULT_PAGE_SIZE = 10;\n\n@Injectable()\nexport class LogicalDeleteService {\n private readonly exclusionProcessUrl: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly messageService: MessageService,\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService) {\n\n const entityUrl = `${projectConfigs.getDomain()}/${projectConfigs.getService()}`;\n this.exclusionProcessUrl = `${entityUrl}/entities/exclusionProcess`;\n this.defaultCatch = this.defaultCatch.bind(this);\n }\n\n public defaultCatch() {\n return catchError<any, any>((err: any) => {\n if (err) {\n let summary = err.status ? String(err.status) : \"Error\";\n let detail = err.error?.message || err.statusText || err.message;\n\n if (err.status === HTTP_UNAUTHORIZED_CODE) {\n const prefix = this.projectConfigs.getTranslationPrefix();\n summary = this.translate.instant(`${prefix}.error_unauthorized_title`);\n detail = this.translate.instant(`${prefix}.error_unauthorized_description`);\n }\n\n this.messageService.add({\n severity: \"error\",\n summary,\n detail: detail || \"Error\"\n });\n }\n\n return throwError(err);\n });\n }\n\n public getListQueryParams(listParams: ListParams) {\n const { page = 0, size = DEFAULT_PAGE_SIZE, sort = [], filterQuery = \"\", displayFields = [] } = listParams;\n\n let params = new HttpParams();\n params = params.append(\"size\", String(size));\n params = params.append(\"offset\", String(page));\n\n if (sort && sort.length) {\n params = params.append(\n \"orderby\",\n sort\n .map(s => {\n if (s.order === -1) {\n return `${s.field} desc`;\n }\n\n return `${s.field} asc`;\n })\n .join(\", \")\n );\n }\n\n if (filterQuery) {\n params = params.append(\"filter\", filterQuery);\n }\n\n if (displayFields && displayFields.length) {\n params = params.append(\"displayfields\", displayFields.join());\n }\n\n return params;\n }\n\n public getProcessDetails(id: string): Observable<ExclusionProcess> {\n return this.doGetProcessDetails({\n filter: `id eq '${id}'`,\n size: \"1\",\n offset: \"0\",\n });\n }\n\n public getLatestProcessDetails(recordId: string): Observable<ExclusionProcess> {\n return this.doGetProcessDetails({\n filter: `recordId eq '${recordId}'`,\n size: \"1\",\n offset: \"0\",\n orderby: \"startDate desc\"\n });\n }\n\n private doGetProcessDetails(filterParams: HttpParams | {\n [param: string]: string | string[];\n }): Observable<ExclusionProcess> {\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: filterParams })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe(map(value => {\n if (!value.contents?.length) {\n return null;\n }\n return this.mapExclusionsDates(value.contents[0]);\n }));\n }\n\n private mapExclusionsDates(exclusionProcess: ExclusionProcess) {\n return {\n ...exclusionProcess,\n startDate: exclusionProcess.startDate ? moment(exclusionProcess.startDate).toDate() : null,\n finishDate: exclusionProcess.finishDate ? moment(exclusionProcess.finishDate).toDate() : null,\n groups: exclusionProcess.groups?.map(group => ({\n ...group,\n startDate: group.startDate ? moment(group.startDate).toDate() : null,\n finishDate: group.finishDate ? moment(group.finishDate).toDate() : null,\n steps: group.steps?.map(step => ({\n ...step,\n startDate: step.startDate ? moment(step.startDate).toDate() : null,\n finishDate: step.finishDate ? moment(step.finishDate).toDate() : null,\n }))\n }))\n };\n }\n\n public listExclusions(entityName: string, params: ListParams = {}): Observable<ListResult<ExclusionProcess>> {\n if (params.filterQuery) {\n params.filterQuery += ` and lower(entityName) eq lower('${entityName}')`;\n } else {\n params.filterQuery = `lower(entityName) eq lower('${entityName}')`;\n }\n\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: this.getListQueryParams(params) })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe<ListResult<ExclusionProcess>>(map(value => {\n value.contents = value.contents.map(this.mapExclusionsDates);\n return value;\n }));\n }\n}\n","import * as moment from \"moment\";\nimport { Component, Output, ViewEncapsulation, OnInit, OnDestroy } from \"@angular/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { Subject, Subscription } from \"rxjs\";\nimport { finalize, takeUntil } from \"rxjs/operators\";\nimport { EnumBadgeColors, EnumColumnFieldType, TableColumnLocaleOptions } from \"@seniorsistemas/angular-components\";\nimport { WebsocketService } from \"@senior-gestao-empresarial/angular-components\";\nimport { EnumExclusionProcessStatus } from \"../enums/enum-exclusion-process-status\";\nimport { ExclusionDetails } from \"./protocols/exclusion-details\";\nimport { LogicalDeleteService } from \"../services/logical-delete.service\";\nimport { ExclusionProcess, ExclusionProcessStep, ExclusionProcessStepGroup } from \"../models/index\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\nimport { ShowDetailsInformation } from \"./protocols\";\nimport { ExclusionProcessStatusChanged } from \"./protocols/exclusion-process-status-changed\";\nimport { WebsocketEventData } from \"./protocols/web-socket-event-data\";\n\n@Component({\n selector: \"s-exclusion-details\",\n templateUrl: \"./exclusion-details.component.html\",\n styleUrls: [\"./exclusion-details.component.scss\"],\n encapsulation: ViewEncapsulation.None\n})\nexport class ExclusionDetailsComponent implements OnInit, OnDestroy {\n public locale!: TableColumnLocaleOptions;\n\n @Output()\n get isVisible(): boolean {\n return this._isVisible;\n }\n\n @Output()\n get isLoading(): boolean {\n return this._isLoading;\n }\n\n @Output()\n get processSummaryData(): ExclusionDetails[] {\n return this._processSummaryData;\n }\n\n @Output()\n get processSummaryColumns(): any[] {\n return this._processSummaryColumns;\n }\n\n @Output()\n public processDetails: ExclusionProcess;\n\n @Output()\n public entityDescription: string;\n\n private _entityName = \"\";\n private _isVisible = false;\n private _isLoading = false;\n private _processSummaryData: ExclusionDetails[] = [];\n private _processSummaryColumns: any[] = [];\n private _websocketService: WebsocketService;\n private _exclusionProcessStatusChangedSubscribe: Subscription;\n private _exclusionDetails: ShowDetailsInformation;\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly router: Router,\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n ngOnInit(): void {\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this._processSummaryColumns = this.getSummaryColumns();\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n\n this.disconnectWebSocket();\n }\n\n public showDetails(details: ShowDetailsInformation) {\n this._exclusionDetails = details;\n this._entityName = details.entityName;\n this._isVisible = true;\n this._processSummaryData = [];\n\n this.processDetails = null;\n this.entityDescription = details.entityDescription;\n\n this.loadProcessDetails(details);\n\n this.connectWebSocket();\n }\n\n public onVisibilityChanged(event: any) {\n this.closeDetails();\n }\n\n public closeDetails() {\n this._isVisible = false;\n this._exclusionDetails = null;\n this._processSummaryData = [];\n this.disconnectWebSocket();\n }\n\n public openExclusions() {\n this.closeDetails();\n this.router.navigate(\n [\"exclusions-list\", this._entityName],\n {\n queryParams: {\n entityDescription: this.entityDescription\n }\n }\n );\n }\n\n public getRecordDescription() {\n if (!this.processDetails?.description) {\n return \"\";\n }\n\n return this.processDetails.description;\n }\n\n public getInicialDate() {\n if (!this.processDetails?.startDate) {\n return \"\";\n }\n\n return moment(this.processDetails.startDate).format(\"DD/MM/YYYY HH:mm:ss\");\n }\n\n public getFinishDate() {\n if (!this.processDetails?.finishDate) {\n return \"\";\n }\n\n return moment(this.processDetails.finishDate).format(\"DD/MM/YYYY HH:mm:ss\");\n }\n\n public isFinished() {\n return !!this.processDetails?.finishDate;\n }\n\n public getShowExclusionsButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_show_deletions`);\n }\n\n public getCloseButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_close`);\n }\n\n public getSummaryLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_summary`);\n }\n\n public getStartDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`);\n }\n\n public getFinishDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`);\n }\n\n public getSidebarTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details_title`);\n }\n\n public getEmptyStateTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);\n }\n\n public getEmptyStateDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);\n }\n\n private getSummaryColumns() {\n return [\n {\n field: \"description\",\n attributes: [\"description\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: \"300px\"\n }\n },\n {\n field: \"status\",\n attributes: [\"status\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: \"100px\"\n },\n tooltip: this.getColumnStatusTooltip,\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n }\n ];\n }\n\n private getColumnStatusTooltip(rowValue: ExclusionDetails) {\n if (rowValue.errorMessage) {\n return rowValue.errorMessage;\n }\n\n return null;\n }\n\n private loadProcessDetails(details: ShowDetailsInformation) {\n this._isLoading = true;\n\n const processObservable = details.processId\n ? this.logicalDeleteService.getProcessDetails(details.processId)\n : this.logicalDeleteService.getLatestProcessDetails(details.recordId);\n\n processObservable\n .pipe(takeUntil(this.ngUnsubscribe))\n .pipe(finalize(() => this._isLoading = false))\n .subscribe((process: ExclusionProcess) => {\n if (!process) {\n return;\n }\n\n this.processDetails = process;\n this.loadProcessSummary(process);\n });\n }\n\n private sortByDate(startDate: Date, finishDate: Date) {\n if (startDate.getTime() > finishDate.getTime()) {\n return 1;\n }\n if (startDate.getTime() < finishDate.getTime()) {\n return -1;\n }\n return 0;\n }\n\n private sortGroupsByStartDate(groups: ExclusionProcessStepGroup[]) {\n return groups.sort((a, b) => this.sortByDate(a.startDate, b.finishDate));\n }\n\n private sortStepsByStartDate(steps: ExclusionProcessStep[]) {\n return steps.sort((a, b) => this.sortByDate(a.startDate, b.finishDate));\n }\n\n private loadProcessSummary(process: ExclusionProcess) {\n const stepLogs: ExclusionDetails[] = [];\n\n this.sortGroupsByStartDate(process.groups)\n .forEach(group => {\n const steps = this.sortStepsByStartDate(group.steps)\n .map(step => ({\n description: step.description,\n status: step.status,\n errorMessage: step.errorMessage\n } as ExclusionDetails));\n\n stepLogs.push(...steps);\n });\n\n this._processSummaryData = stepLogs;\n }\n\n private disconnectWebSocket() {\n if (this._exclusionProcessStatusChangedSubscribe) {\n this._exclusionProcessStatusChangedSubscribe.unsubscribe();\n this._exclusionProcessStatusChangedSubscribe = null;\n }\n\n if (this._websocketService) {\n this._websocketService.disconnect();\n this._websocketService = null;\n }\n }\n\n private connectWebSocket() {\n if (this._websocketService) {\n this.disconnectWebSocket();\n }\n\n this._websocketService = new WebsocketService();\n this._websocketService\n .onConnect()\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.startListeningWebhookEvents();\n });\n }\n\n private startListeningWebhookEvents() {\n this._websocketService\n .onError()\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: any) => {\n console.error('onError', data);\n });\n\n this._exclusionProcessStatusChangedSubscribe = this._websocketService\n .onEvent<WebsocketEventData<ExclusionProcessStatusChanged>>({\n domain: \"erpx_fnd\",\n service: \"produto\",\n primitive: \"exclusionProcessStatusChanged\"\n })\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((event: WebsocketEventData<ExclusionProcessStatusChanged>) => {\n const { data } = event;\n\n if (this._exclusionDetails.processId && data.pid === this._exclusionDetails.processId) {\n this.loadProcessDetails(this._exclusionDetails);\n return;\n }\n\n if (this._exclusionDetails.recordId && data.recordId === this._exclusionDetails.recordId) {\n this.loadProcessDetails(this._exclusionDetails);\n }\n });\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport {\n ButtonModule,\n LoadingStateModule,\n TableModule,\n SidebarModule,\n LocaleModule,\n EmptyStateModule\n} from \"@seniorsistemas/angular-components\";\nimport { ExclusionDetailsComponent } from \"./exclusion-details.component\";\n\n@NgModule({\n imports: [\n CommonModule,\n SidebarModule,\n ButtonModule,\n PanelModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n LocaleModule,\n EmptyStateModule\n ],\n declarations: [ExclusionDetailsComponent],\n exports: [ExclusionDetailsComponent],\n entryComponents: [ExclusionDetailsComponent]\n})\nexport class ExclusionDetailsModule {}\n","import * as moment from \"moment\";\nimport { Injectable } from \"@angular/core\";\nimport { FieldType, FormField, Option } from \"@seniorsistemas/angular-components\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\n\n@Injectable()\nexport class FilterService {\n private readonly numberTypes = [FieldType.Integer, FieldType.Double];\n\n constructor(\n private readonly logicalDeleteConfigService: LogicalDeleteConfigService,\n private readonly translate: TranslateService\n ) {}\n\n getEnumQuery(name: string, value: any, multiple: boolean = false) {\n if (multiple) {\n const filter = value.map((selected: any) => `${name} eq '${selected}'`).join(\" or \");\n return `(${filter})`;\n }\n return `${name} eq '${value}'`;\n }\n\n createFilterString(formField: FormField, value: any) {\n const { name, type, multiple } = formField;\n if (typeof value == \"number\") {\n return `${name} eq ${value}`;\n }\n\n switch (type) {\n case FieldType.Date:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD\")}'`;\n case FieldType.Time:\n return `${name} eq '${moment(value).format(\"HH:mm:ss\")}'`;\n case FieldType.DateTime:\n return `${name} eq '${moment(value).format()}'`;\n case FieldType.LocalDateTime:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD[T]HH:mm:ss.SSS\")}'`;\n case FieldType.Enum:\n return this.getEnumQuery(name, value, multiple);\n case FieldType.String:\n return `containing(upper(${name}), upper('${value.replace(/'/g, \"'\")}'))`;\n case FieldType.Lookup:\n return `${name} eq '${value.id}'`;\n default:\n return `${name} eq '${value}'`;\n }\n }\n\n createFilterTokens(formField: FormField, value: any) {\n const { name, type, label, searchFields, options } = formField as any;\n let labelValue = value;\n\n switch (type) {\n case FieldType.Date:\n labelValue = moment(value).format(\"L\");\n break;\n case FieldType.Time:\n labelValue = moment(value).format(\"LTS\");\n break;\n case FieldType.LocalDateTime:\n case FieldType.DateTime:\n labelValue = moment(value).format(\"L LTS\");\n break;\n case FieldType.Lookup:\n labelValue = searchFields.map((field: FormField) => this.getProp(value, field.name)).join(\" - \");\n break;\n case FieldType.Enum:\n if (Array.isArray(value)) {\n labelValue = value.map((element: string) => {\n return options.filter((en: any) => en.value === element)[0].label;\n });\n } else {\n labelValue = options.filter((option: Option) => option.value === labelValue)[0].label;\n }\n break;\n case FieldType.Boolean:\n labelValue = value\n ? this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_true`)\n : this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_false`);\n break;\n default:\n labelValue = value;\n break;\n }\n\n return { id: name, label: `${label}: ${labelValue}` };\n }\n\n getSuggestionValue(displayFields: string[], ownerEntity: string, value: any, separator: string) {\n return displayFields.map(field => this.getProp(value, `${ownerEntity}.${field}`))\n .reduce((acc: any, val: any) => `${acc}${separator}${val}`) + \"\";\n }\n\n getProp(obj: any, path: any) {\n return path.split(\".\").reduce((result: any, prop: any) => (result[prop] === undefined ? \"\" : result[prop]), obj);\n }\n\n getLabelValueRequest(contents: any[], displayFields: any[]) {\n return contents.map((item: any) => ({\n ...item,\n label: displayFields.map(field => this.getProp(item, field)).join(\" - \")\n }));\n }\n\n isValidFilter(type: FieldType, value: any) {\n const isTypeNumber = this.numberTypes.includes(type);\n const numberPattern = /^\\d+\\b$/;\n const isNumber = value.match(numberPattern);\n return !(isTypeNumber && !isNumber);\n }\n}\n","import * as moment from \"moment\";\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewChild } from \"@angular/core\";\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LazyLoadEvent } from \"primeng/api\";\nimport { Subject } from \"rxjs\";\nimport { catchError, finalize, takeUntil } from \"rxjs/operators\";\nimport {\n EnumBadgeColors,\n EnumColumnFieldType,\n FieldType,\n FormField,\n IToken,\n TableColumnLocaleOptions\n} from \"@seniorsistemas/angular-components\";\nimport { EnumExclusionProcessStatus } from \"../enums/enum-exclusion-process-status\";\nimport { ExclusionProcess } from \"../models\";\nimport { Table } from \"primeng/table\";\nimport { LogicalDeleteService } from \"../services\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { ListParams } from \"../models/list-params\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\nimport { ExclusionDetailsComponent } from \"../exclusion-details\";\nimport { FilterService } from \"../services/filter.service\";\n\nconst HTTP_CODE_SERVER_ERROR_START = 500;\nconst HTTP_CODE_SERVER_ERROR_END = 600;\n\n@Component({\n templateUrl: \"./exclusions-list.component.html\",\n styleUrls: [],\n providers: []\n})\nexport class ExclusionsListComponent implements OnInit, OnDestroy {\n\n private static readonly DATE_FORMAT = \"YYYY-MM-DD\";\n\n public locale!: TableColumnLocaleOptions;\n public entityName: string;\n public entityDescription: string;\n public processId: string;\n\n public currentListParams: ListParams = { page: 0, size: 10, sort: [], filterData: {} };\n public gridData: ExclusionProcess[];\n public gridColumns: any[];\n public showLoader = false;\n public totalRecords = 0;\n\n public filterFields: FormField[];\n public filterFormGroup: FormGroup;\n public filtersPanelCollapsed = true;\n public searchTokens: IToken[] = [];\n public serverError = false;\n\n @ViewChild(\"exclusionsTable\")\n public table: Table;\n\n @ViewChild(ExclusionDetailsComponent)\n public exclusionDetailsComponent: ExclusionDetailsComponent;\n\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly formBuilder: FormBuilder,\n private readonly changeDetectorRef: ChangeDetectorRef,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly filterService: FilterService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n public ngOnInit() {\n this.filterFormGroup = this.getFormBuilder();\n this.filterFields = this.getFilterFields();\n this.gridColumns = this.getGridColumns();\n\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this.route.params\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((params: any) => {\n this.entityName = params.entityName;\n this.showBasedOnRoute();\n });\n this.route.queryParams\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((queryParams: any) => {\n this.entityDescription = queryParams.entityDescription;\n this.processId = queryParams.processId;\n this.showBasedOnRoute();\n });\n }\n\n private showBasedOnRoute() {\n if (this.entityName && this.entityDescription && this.processId) {\n this.exclusionDetailsComponent.showDetails({\n processId: this.processId,\n entityDescription: this.entityDescription,\n entityName: this.entityName\n });\n }\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n private getFormBuilder() {\n return this.formBuilder.group({\n description: [undefined, Validators.compose([])],\n status: [undefined, Validators.compose([])],\n startDate: [{ value: undefined, disabled: false }, Validators.compose([])],\n endDate: [{ value: undefined, disabled: false }, Validators.compose([])]\n });\n }\n\n private getGridColumns() {\n return [\n {\n field: \"description\",\n attributes: [\"description\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: \"300px\"\n }\n },\n {\n field: \"status\",\n attributes: [\"status\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: \"100px\"\n },\n tooltip: this.getColumnStatusTooltip,\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n },\n {\n field: \"startDate\",\n attributes: [\"startDate\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm:ss\",\n style: {\n width: \"100px\"\n }\n },\n {\n field: \"finishDate\",\n attributes: [\"finishDate\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm:ss\",\n style: {\n width: \"100px\"\n }\n }\n ];\n }\n\n private getColumnStatusTooltip(rowValue: ExclusionProcess) {\n if (rowValue.errorMessage) {\n return rowValue.errorMessage;\n }\n\n return null;\n }\n\n private getFilterFields() {\n const translationPrefix = this.projectConfigs.getTranslationPrefix();\n\n return [\n new FormField({\n type: FieldType.String,\n name: \"description\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_description`)\n }),\n new FormField({\n type: FieldType.Enum,\n name: \"status\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_status`),\n placeholder: this.translate.instant(`${translationPrefix}.logical_delete_status`),\n multiple: true,\n options: [\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_error`),\n value: EnumExclusionProcessStatus.ERROR\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_pending`),\n value: EnumExclusionProcessStatus.PENDING\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_processing`),\n value: EnumExclusionProcessStatus.PROCESSING\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_success`),\n value: EnumExclusionProcessStatus.SUCCESS\n }\n ]\n }),\n new FormField({\n type: FieldType.Date,\n name: \"startDate\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_start`)\n }),\n\n new FormField({\n type: FieldType.Date,\n name: \"endDate\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_finish`)\n })\n ];\n }\n\n public getEmptyStateTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);\n }\n\n public getEmptyStateDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);\n }\n\n public getTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n\n public getDetailsButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details`);\n }\n\n public getFiltersTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.filters`);\n }\n\n public getFilterButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.filter`);\n }\n\n public getClearButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.clear`);\n }\n\n public getErrorInvalid() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_invalid`);\n }\n\n public getErrorServerTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_server_title`);\n }\n\n public getErrorServerDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_server_description`);\n }\n\n public getActionsColumnLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.actions`);\n }\n\n public onSearch() {\n const filterData = this.filterFormGroup.getRawValue();\n this.filtersPanelCollapsed = true;\n this.resetGrid({ filterData });\n }\n\n public onClear() {\n this.filterFormGroup.reset();\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onRemoveToken(token: IToken) {\n this.filterFormGroup.get(token.id).setValue(undefined);\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onGridChange(event: LazyLoadEvent) {\n const size = event.rows;\n const page = event.first / size;\n const sort = event.multiSortMeta ? event.multiSortMeta : [];\n return this.updateGrid({ page, size, sort });\n }\n\n private getFilterTokens() {\n const filterData = this.filterFormGroup.value;\n\n return this.filterFields\n .filter(({ name }) => filterData[name] !== undefined && filterData[name] !== \"\" && filterData[name] !== null)\n .map(formField => this.filterService.createFilterTokens(formField, filterData[formField.name]));\n }\n\n private getFilterQuery(): string {\n const { filterData } = this.currentListParams;\n const dateFields = [\"startDate\", \"endDate\"];\n\n let filterQuery = this.filterFields\n .filter(({ name }) => !dateFields.includes(name))\n .filter(({ name }) => filterData[name] !== undefined && filterData[name] !== \"\" && filterData[name] !== null)\n .map(formField => this.filterService.createFilterString(formField, filterData[formField.name]))\n .join(\" and \");\n\n let dateQuery: string;\n if (filterData.startDate && filterData.endDate) {\n const startDate = moment(filterData.startDate).format(ExclusionsListComponent.DATE_FORMAT);\n const endDate = moment(filterData.endDate).format(ExclusionsListComponent.DATE_FORMAT);\n dateQuery = `startDate between '${startDate}T00:00:00Z' and '${endDate}T23:59:59Z'`;\n } else if (filterData.startDate) {\n const startDate = moment(filterData.startDate).format(ExclusionsListComponent.DATE_FORMAT);\n dateQuery = `startDate >= '${startDate}T00:00:00Z'`;\n } else if (filterData.endDate) {\n const endDate = moment(filterData.endDate).format(ExclusionsListComponent.DATE_FORMAT);\n dateQuery = `finishDate <= '${endDate}T23:59:59Z'`;\n } else {\n // Não é necessário nenhuma condição a mais no filtro.\n }\n\n if (dateQuery) {\n filterQuery += filterQuery ? ` and ${dateQuery}` : dateQuery;\n }\n\n return filterQuery;\n }\n\n private updateGrid(listParams: ListParams = {}) {\n this.currentListParams = { ...this.currentListParams, ...listParams };\n const { page, size, sort } = this.currentListParams;\n\n this.searchTokens = this.getFilterTokens();\n const filterQuery = this.getFilterQuery();\n const displayFields = [\n \"recordId\",\n \"errorMessage\",\n ...this.gridColumns.map(column => column.field)\n ];\n\n if (!sort.length) {\n sort.push({ field: 'startDate', order: -1 });\n }\n\n this.listExclusions({ page, size, sort, filterQuery, displayFields });\n }\n\n public listExclusions(params: any) {\n this.showLoader = true;\n this.serverError = false;\n\n this.changeDetectorRef.detectChanges();\n\n this.logicalDeleteService\n .listExclusions(this.entityName, params)\n .pipe(\n takeUntil(this.ngUnsubscribe),\n catchError((err: any) => {\n if (err.status >= HTTP_CODE_SERVER_ERROR_START && err.status < HTTP_CODE_SERVER_ERROR_END) {\n this.serverError = true;\n }\n throw err;\n }),\n finalize(() => this.showLoader = false)\n )\n .subscribe((list: any) => {\n this.gridData = list.contents;\n this.totalRecords = list.totalElements;\n });\n }\n\n public focusInput(elementId: string) {\n const element: any = document.getElementById(`${elementId}`);\n if (element) {\n element.focus();\n }\n }\n\n public resetGrid(listParams?: ListParams) {\n if (listParams) {\n this.currentListParams = { ...this.currentListParams, ...listParams };\n }\n this.currentListParams = { ...this.currentListParams, page: 0, sort: [] };\n this.table.reset();\n }\n\n public onClickDetails(rowData: ExclusionProcess) {\n this.exclusionDetailsComponent.showDetails({\n processId: rowData.id,\n entityDescription: this.entityDescription,\n entityName: this.entityName\n });\n }\n}\n","import { NgModule, Injectable, Component } from \"@angular/core\";\nimport { RouterModule, Routes, CanActivate } from \"@angular/router\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { PermissionsService } from \"@seniorsistemas/platform-components\";\nimport { LocaleService } from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingGuard implements CanActivate {\n public canActivate() {\n return true;\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingListTitleResolver {\n constructor(\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {}\n\n public resolve() {\n return this.translate.get(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingPermissionResolver {\n constructor(private readonly permissionsService: PermissionsService) {}\n\n public resolve() {\n return this.permissionsService.get();\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingLocaleResolver {\n constructor(private readonly localeService: LocaleService) {}\n\n public resolve() {\n return this.localeService.get();\n }\n}\n\n@Component({\n template: `<router-outlet></router-outlet>`\n})\nexport class EmptyComponent {}\n\nexport const routes: Routes = [\n {\n path: \"exclusions-list\",\n component: EmptyComponent,\n canActivate: [\n ExclusionsListFeatureRoutingGuard\n ],\n resolve: {\n allPermissions: ExclusionsListFeatureRoutingPermissionResolver,\n localeConfig: ExclusionsListFeatureRoutingLocaleResolver,\n routeTitle: ExclusionsListFeatureRoutingListTitleResolver\n },\n children: [\n {\n path: \":entityName\",\n component: ExclusionsListComponent\n }\n ]\n }\n];\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes)\n ],\n exports: [\n RouterModule\n ],\n providers: [\n ExclusionsListFeatureRoutingGuard,\n ExclusionsListFeatureRoutingPermissionResolver,\n ExclusionsListFeatureRoutingLocaleResolver,\n ExclusionsListFeatureRoutingListTitleResolver\n ],\n declarations: [\n EmptyComponent\n ]\n})\nexport class ExclusionsListFeatureRouting {}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport {\n ButtonModule,\n LoadingStateModule,\n TableModule,\n LocaleModule,\n TokenListModule,\n DynamicFormModule,\n EmptyStateModule,\n ControlErrorsModule,\n InfoSignModule\n} from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\nimport { DialogModule } from \"primeng/dialog\";\nimport { ConfirmDialogModule } from \"primeng/confirmdialog\";\nimport { InputTextModule } from \"primeng/inputtext\";\nimport { ExclusionDetailsModule } from \"../exclusion-details\";\nimport { ExclusionsListFeatureRouting } from \"./exclusions-list.routing\";\n\n@NgModule({\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n CommonModule,\n ControlErrorsModule,\n ButtonModule,\n PanelModule,\n InputTextModule,\n InfoSignModule,\n ConfirmDialogModule,\n DialogModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n EmptyStateModule,\n DynamicFormModule,\n TokenListModule,\n LocaleModule.forChild(),\n ExclusionDetailsModule,\n ExclusionsListFeatureRouting\n ],\n declarations: [ExclusionsListComponent],\n exports: [ExclusionsListComponent],\n entryComponents: [ExclusionsListComponent]\n})\nexport class ExclusionsListModule {}\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"./models/project-config\";\nimport { FilterService } from \"./services/filter.service\";\nimport { LogicalDeleteConfigService } from \"./services/logical-delete-config.service\";\nimport { LogicalDeleteService } from \"./services/logical-delete.service\";\n\n@NgModule({\n providers: [LogicalDeleteService, LogicalDeleteConfigService, FilterService]\n})\nexport class LogicalDeleteModule {\n static forRoot(config: ProjectConfigs): ModuleWithProviders<LogicalDeleteModule> {\n return {\n ngModule: LogicalDeleteModule,\n providers: [\n {\n provide: ProjectConfigsInjectionToken,\n useValue: config\n }\n ]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {ExclusionDetailsComponent as ɵf,ExclusionDetailsModule as ɵe} from './exclusion-details';\nexport {ProjectConfigs as ɵd,ProjectConfigsInjectionToken as ɵc} from './models/project-config';\nexport {LogicalDeleteService as ɵg} from './services';\nexport {FilterService as ɵh} from './services/filter.service';\nexport {LogicalDeleteConfigService as ɵb} from './services/logical-delete-config.service';\nexport {LogicalDeleteService as ɵa} from './services/logical-delete.service';"],"names":["PrimeTableModule","TableModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seniorsistemas-exclusion-process-component.js","sources":["ng://@seniorsistemas/exclusion-process-component/enums/enum-exclusion-process-status.ts","ng://@seniorsistemas/exclusion-process-component/models/project-config.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete-config.service.ts","ng://@seniorsistemas/exclusion-process-component/services/logical-delete.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusion-details/exclusion-details.module.ts","ng://@seniorsistemas/exclusion-process-component/services/filter.service.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.component.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.routing.ts","ng://@seniorsistemas/exclusion-process-component/exclusions-list/exclusions-list.module.ts","ng://@seniorsistemas/exclusion-process-component/logical-delete.module.ts","ng://@seniorsistemas/exclusion-process-component/seniorsistemas-exclusion-process-component.ts"],"sourcesContent":["export enum EnumExclusionProcessStatus {\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n ERROR = \"ERROR\",\n SUCCESS = \"SUCCESS\"\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const ProjectConfigsInjectionToken = new InjectionToken<ProjectConfigs>(\"projectConfigs\");\n\nexport interface ProjectConfigs {\n domain: string;\n service: string;\n translationPrefix?: string;\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"../models/project-config\";\n\n@Injectable()\nexport class LogicalDeleteConfigService {\n constructor(\n @Inject(ProjectConfigsInjectionToken)\n private readonly projectConfigs: ProjectConfigs) {\n }\n\n public getDomain() {\n return this.projectConfigs.domain;\n }\n\n public getService() {\n return this.projectConfigs.service;\n }\n\n public getTranslationPrefix() {\n if (this.projectConfigs.translationPrefix) {\n return this.projectConfigs.translationPrefix;\n }\n return `${this.projectConfigs.domain}.${this.projectConfigs.service}`;\n }\n}\n","import * as moment from \"moment\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { Injectable } from \"@angular/core\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { MessageService } from \"primeng/api\";\nimport { Observable, throwError } from \"rxjs\";\nimport { catchError, map } from \"rxjs/operators\";\nimport { ListResult, ExclusionProcess } from \"../models/index\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\nimport { ListParams } from \"../models/list-params\";\n\nconst HTTP_UNAUTHORIZED_CODE = 401;\nconst DEFAULT_PAGE_SIZE = 10;\n\n@Injectable()\nexport class LogicalDeleteService {\n private readonly exclusionProcessUrl: string;\n\n constructor(\n private readonly http: HttpClient,\n private readonly messageService: MessageService,\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService) {\n\n const entityUrl = `${projectConfigs.getDomain()}/${projectConfigs.getService()}`;\n this.exclusionProcessUrl = `${entityUrl}/entities/exclusionProcess`;\n this.defaultCatch = this.defaultCatch.bind(this);\n }\n\n public defaultCatch() {\n return catchError<any, any>((err: any) => {\n if (err) {\n let summary = err.status ? String(err.status) : \"Error\";\n let detail = err.error?.message || err.statusText || err.message;\n\n if (err.status === HTTP_UNAUTHORIZED_CODE) {\n const prefix = this.projectConfigs.getTranslationPrefix();\n summary = this.translate.instant(`${prefix}.error_unauthorized_title`);\n detail = this.translate.instant(`${prefix}.error_unauthorized_description`);\n }\n\n this.messageService.add({\n severity: \"error\",\n summary,\n detail: detail || \"Error\"\n });\n }\n\n return throwError(err);\n });\n }\n\n public getListQueryParams(listParams: ListParams) {\n const { page = 0, size = DEFAULT_PAGE_SIZE, sort = [], filterQuery = \"\", displayFields = [] } = listParams;\n\n let params = new HttpParams();\n params = params.append(\"size\", String(size));\n params = params.append(\"offset\", String(page));\n\n if (sort && sort.length) {\n params = params.append(\n \"orderby\",\n sort\n .map(s => {\n if (s.order === -1) {\n return `${s.field} desc`;\n }\n\n return `${s.field} asc`;\n })\n .join(\", \")\n );\n }\n\n if (filterQuery) {\n params = params.append(\"filter\", filterQuery);\n }\n\n if (displayFields && displayFields.length) {\n params = params.append(\"displayfields\", displayFields.join());\n }\n\n return params;\n }\n\n public getProcessDetails(id: string): Observable<ExclusionProcess> {\n return this.doGetProcessDetails({\n filter: `id eq '${id}'`,\n size: \"1\",\n offset: \"0\",\n });\n }\n\n public getLatestProcessDetails(recordId: string): Observable<ExclusionProcess> {\n return this.doGetProcessDetails({\n filter: `recordId eq '${recordId}'`,\n size: \"1\",\n offset: \"0\",\n orderby: \"startDate desc\"\n });\n }\n\n private doGetProcessDetails(filterParams: HttpParams | {\n [param: string]: string | string[];\n }): Observable<ExclusionProcess> {\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: filterParams })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe(map(value => {\n if (!value.contents?.length) {\n return null;\n }\n return this.mapExclusionsDates(value.contents[0]);\n }));\n }\n\n private mapExclusionsDates(exclusionProcess: ExclusionProcess) {\n return {\n ...exclusionProcess,\n startDate: exclusionProcess.startDate ? moment(exclusionProcess.startDate).toDate() : null,\n finishDate: exclusionProcess.finishDate ? moment(exclusionProcess.finishDate).toDate() : null,\n groups: exclusionProcess.groups?.map(group => ({\n ...group,\n startDate: group.startDate ? moment(group.startDate).toDate() : null,\n finishDate: group.finishDate ? moment(group.finishDate).toDate() : null,\n steps: group.steps?.map(step => ({\n ...step,\n startDate: step.startDate ? moment(step.startDate).toDate() : null,\n finishDate: step.finishDate ? moment(step.finishDate).toDate() : null,\n }))\n }))\n };\n }\n\n public listExclusions(entityName: string, params: ListParams = {}): Observable<ListResult<ExclusionProcess>> {\n if (params.filterQuery) {\n params.filterQuery += ` and lower(entityName) eq lower('${entityName}')`;\n } else {\n params.filterQuery = `lower(entityName) eq lower('${entityName}')`;\n }\n\n return this.http.get<ListResult<ExclusionProcess>>(this.exclusionProcessUrl, { params: this.getListQueryParams(params) })\n .pipe<ListResult<ExclusionProcess>>(this.defaultCatch())\n .pipe<ListResult<ExclusionProcess>>(map(value => {\n value.contents = value.contents.map(this.mapExclusionsDates);\n return value;\n }));\n }\n}\n","import * as moment from \"moment\";\nimport { Component, Output, ViewEncapsulation, OnInit, OnDestroy } from \"@angular/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { Subject, Subscription } from \"rxjs\";\nimport { finalize, takeUntil } from \"rxjs/operators\";\nimport { EnumBadgeColors, EnumColumnFieldType, TableColumnLocaleOptions } from \"@seniorsistemas/angular-components\";\nimport { WebsocketService } from \"@senior-gestao-empresarial/angular-components\";\nimport { EnumExclusionProcessStatus } from \"../enums/enum-exclusion-process-status\";\nimport { ExclusionDetails } from \"./protocols/exclusion-details\";\nimport { LogicalDeleteService } from \"../services/logical-delete.service\";\nimport { ExclusionProcess, ExclusionProcessStep, ExclusionProcessStepGroup } from \"../models/index\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\nimport { ShowDetailsInformation } from \"./protocols\";\nimport { ExclusionProcessStatusChanged } from \"./protocols/exclusion-process-status-changed\";\nimport { WebsocketEventData } from \"./protocols/web-socket-event-data\";\n\n@Component({\n selector: \"s-exclusion-details\",\n templateUrl: \"./exclusion-details.component.html\",\n styleUrls: [\"./exclusion-details.component.scss\"],\n encapsulation: ViewEncapsulation.None\n})\nexport class ExclusionDetailsComponent implements OnInit, OnDestroy {\n public locale!: TableColumnLocaleOptions;\n\n @Output()\n get isVisible(): boolean {\n return this._isVisible;\n }\n\n @Output()\n get isLoading(): boolean {\n return this._isLoading;\n }\n\n @Output()\n get processSummaryData(): ExclusionDetails[] {\n return this._processSummaryData;\n }\n\n @Output()\n get processSummaryColumns(): any[] {\n return this._processSummaryColumns;\n }\n\n @Output()\n public processDetails: ExclusionProcess;\n\n @Output()\n public entityDescription: string;\n\n private _entityName = \"\";\n private _isVisible = false;\n private _isLoading = false;\n private _processSummaryData: ExclusionDetails[] = [];\n private _processSummaryColumns: any[] = [];\n private _websocketService: WebsocketService;\n private _exclusionProcessStatusChangedSubscribe: Subscription;\n private _exclusionDetails: ShowDetailsInformation;\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly router: Router,\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n ngOnInit(): void {\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this._processSummaryColumns = this.getSummaryColumns();\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n\n this.disconnectWebSocket();\n }\n\n public showDetails(details: ShowDetailsInformation) {\n this._exclusionDetails = details;\n this._entityName = details.entityName;\n this._isVisible = true;\n this._processSummaryData = [];\n\n this.processDetails = null;\n this.entityDescription = details.entityDescription;\n\n this.loadProcessDetails(details);\n\n this.connectWebSocket();\n }\n\n public onVisibilityChanged(event: any) {\n this.closeDetails();\n }\n\n public closeDetails() {\n this._isVisible = false;\n this._exclusionDetails = null;\n this._processSummaryData = [];\n this.disconnectWebSocket();\n }\n\n public openExclusions() {\n this.closeDetails();\n this.router.navigate(\n [\"exclusions-list\", this._entityName],\n {\n queryParams: {\n entityDescription: this.entityDescription\n }\n }\n );\n }\n\n public getRecordDescription() {\n if (!this.processDetails?.description) {\n return \"\";\n }\n\n return this.processDetails.description;\n }\n\n public getInicialDate() {\n if (!this.processDetails?.startDate) {\n return \"\";\n }\n\n return moment(this.processDetails.startDate).format(\"DD/MM/YYYY HH:mm:ss\");\n }\n\n public getFinishDate() {\n if (!this.processDetails?.finishDate) {\n return \"\";\n }\n\n return moment(this.processDetails.finishDate).format(\"DD/MM/YYYY HH:mm:ss\");\n }\n\n public isFinished() {\n return !!this.processDetails?.finishDate;\n }\n\n public getShowExclusionsButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_show_deletions`);\n }\n\n public getCloseButtonLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_close`);\n }\n\n public getSummaryLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_summary`);\n }\n\n public getStartDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`);\n }\n\n public getFinishDateLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`);\n }\n\n public getSidebarTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details_title`);\n }\n\n public getEmptyStateTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);\n }\n\n public getEmptyStateDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);\n }\n\n private getSummaryColumns() {\n return [\n {\n field: \"description\",\n attributes: [\"description\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: \"300px\"\n }\n },\n {\n field: \"status\",\n attributes: [\"status\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: \"100px\"\n },\n tooltip: this.getColumnStatusTooltip,\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n }\n ];\n }\n\n private getColumnStatusTooltip(rowValue: ExclusionDetails) {\n if (rowValue.errorMessage) {\n return rowValue.errorMessage;\n }\n\n return null;\n }\n\n private loadProcessDetails(details: ShowDetailsInformation) {\n this._isLoading = true;\n\n const processObservable = details.processId\n ? this.logicalDeleteService.getProcessDetails(details.processId)\n : this.logicalDeleteService.getLatestProcessDetails(details.recordId);\n\n processObservable\n .pipe(takeUntil(this.ngUnsubscribe))\n .pipe(finalize(() => this._isLoading = false))\n .subscribe((process: ExclusionProcess) => {\n if (!process) {\n return;\n }\n\n this.processDetails = process;\n this.loadProcessSummary(process);\n });\n }\n\n private sortByDate(startDate: Date, finishDate: Date) {\n if (startDate.getTime() > finishDate.getTime()) {\n return 1;\n }\n if (startDate.getTime() < finishDate.getTime()) {\n return -1;\n }\n return 0;\n }\n\n private sortGroupsByStartDate(groups: ExclusionProcessStepGroup[]) {\n return groups.sort((a, b) => this.sortByDate(a.startDate, b.finishDate));\n }\n\n private sortStepsByStartDate(steps: ExclusionProcessStep[]) {\n return steps.sort((a, b) => this.sortByDate(a.startDate, b.finishDate));\n }\n\n private loadProcessSummary(process: ExclusionProcess) {\n const stepLogs: ExclusionDetails[] = [];\n\n this.sortGroupsByStartDate(process.groups)\n .forEach(group => {\n const steps = this.sortStepsByStartDate(group.steps)\n .map(step => ({\n description: step.description,\n status: step.status,\n errorMessage: step.errorMessage\n } as ExclusionDetails));\n\n stepLogs.push(...steps);\n });\n\n this._processSummaryData = stepLogs;\n }\n\n private disconnectWebSocket() {\n if (this._exclusionProcessStatusChangedSubscribe) {\n this._exclusionProcessStatusChangedSubscribe.unsubscribe();\n this._exclusionProcessStatusChangedSubscribe = null;\n }\n\n if (this._websocketService) {\n this._websocketService.disconnect();\n this._websocketService = null;\n }\n }\n\n private connectWebSocket() {\n if (this._websocketService) {\n this.disconnectWebSocket();\n }\n\n this._websocketService = new WebsocketService();\n this._websocketService\n .onConnect()\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe(() => {\n this.startListeningWebhookEvents();\n });\n }\n\n private startListeningWebhookEvents() {\n this._websocketService\n .onError()\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: any) => {\n console.error('onError', data);\n });\n\n this._exclusionProcessStatusChangedSubscribe = this._websocketService\n .onEvent<WebsocketEventData<ExclusionProcessStatusChanged>>({\n domain: this.projectConfigs.getDomain(),\n service: this.projectConfigs.getService(),\n primitive: \"exclusionProcessStatusChanged\"\n })\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((event: WebsocketEventData<ExclusionProcessStatusChanged>) => {\n const { data } = event;\n\n if (this._exclusionDetails.processId && data.pid === this._exclusionDetails.processId) {\n this.loadProcessDetails(this._exclusionDetails);\n return;\n }\n\n if (this._exclusionDetails.recordId && data.recordId === this._exclusionDetails.recordId) {\n this.loadProcessDetails(this._exclusionDetails);\n }\n });\n }\n}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport {\n ButtonModule,\n LoadingStateModule,\n TableModule,\n SidebarModule,\n LocaleModule,\n EmptyStateModule\n} from \"@seniorsistemas/angular-components\";\nimport { ExclusionDetailsComponent } from \"./exclusion-details.component\";\n\n@NgModule({\n imports: [\n CommonModule,\n SidebarModule,\n ButtonModule,\n PanelModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n LocaleModule,\n EmptyStateModule\n ],\n declarations: [ExclusionDetailsComponent],\n exports: [ExclusionDetailsComponent],\n entryComponents: [ExclusionDetailsComponent]\n})\nexport class ExclusionDetailsModule {}\n","import * as moment from \"moment\";\nimport { Injectable } from \"@angular/core\";\nimport { FieldType, FormField, Option } from \"@seniorsistemas/angular-components\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LogicalDeleteConfigService } from \"./logical-delete-config.service\";\n\n@Injectable()\nexport class FilterService {\n private readonly numberTypes = [FieldType.Integer, FieldType.Double];\n\n constructor(\n private readonly logicalDeleteConfigService: LogicalDeleteConfigService,\n private readonly translate: TranslateService\n ) {}\n\n getEnumQuery(name: string, value: any, multiple: boolean = false) {\n if (multiple) {\n const filter = value.map((selected: any) => `${name} eq '${selected}'`).join(\" or \");\n return `(${filter})`;\n }\n return `${name} eq '${value}'`;\n }\n\n createFilterString(formField: FormField, value: any) {\n const { name, type, multiple } = formField;\n if (typeof value == \"number\") {\n return `${name} eq ${value}`;\n }\n\n switch (type) {\n case FieldType.Date:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD\")}'`;\n case FieldType.Time:\n return `${name} eq '${moment(value).format(\"HH:mm:ss\")}'`;\n case FieldType.DateTime:\n return `${name} eq '${moment(value).format()}'`;\n case FieldType.LocalDateTime:\n return `${name} eq '${moment(value).format(\"YYYY-MM-DD[T]HH:mm:ss.SSS\")}'`;\n case FieldType.Enum:\n return this.getEnumQuery(name, value, multiple);\n case FieldType.String:\n return `containing(upper(${name}), upper('${value.replace(/'/g, \"'\")}'))`;\n case FieldType.Lookup:\n return `${name} eq '${value.id}'`;\n default:\n return `${name} eq '${value}'`;\n }\n }\n\n createFilterTokens(formField: FormField, value: any) {\n const { name, type, label, searchFields, options } = formField as any;\n let labelValue = value;\n\n switch (type) {\n case FieldType.Date:\n labelValue = moment(value).format(\"L\");\n break;\n case FieldType.Time:\n labelValue = moment(value).format(\"LTS\");\n break;\n case FieldType.LocalDateTime:\n case FieldType.DateTime:\n labelValue = moment(value).format(\"L LTS\");\n break;\n case FieldType.Lookup:\n labelValue = searchFields.map((field: FormField) => this.getProp(value, field.name)).join(\" - \");\n break;\n case FieldType.Enum:\n if (Array.isArray(value)) {\n labelValue = value.map((element: string) => {\n return options.filter((en: any) => en.value === element)[0].label;\n });\n } else {\n labelValue = options.filter((option: Option) => option.value === labelValue)[0].label;\n }\n break;\n case FieldType.Boolean:\n labelValue = value\n ? this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_true`)\n : this.translate.instant(`${this.logicalDeleteConfigService.getTranslationPrefix()}.list_grid_boolean_false`);\n break;\n default:\n labelValue = value;\n break;\n }\n\n return { id: name, label: `${label}: ${labelValue}` };\n }\n\n getSuggestionValue(displayFields: string[], ownerEntity: string, value: any, separator: string) {\n return displayFields.map(field => this.getProp(value, `${ownerEntity}.${field}`))\n .reduce((acc: any, val: any) => `${acc}${separator}${val}`) + \"\";\n }\n\n getProp(obj: any, path: any) {\n return path.split(\".\").reduce((result: any, prop: any) => (result[prop] === undefined ? \"\" : result[prop]), obj);\n }\n\n getLabelValueRequest(contents: any[], displayFields: any[]) {\n return contents.map((item: any) => ({\n ...item,\n label: displayFields.map(field => this.getProp(item, field)).join(\" - \")\n }));\n }\n\n isValidFilter(type: FieldType, value: any) {\n const isTypeNumber = this.numberTypes.includes(type);\n const numberPattern = /^\\d+\\b$/;\n const isNumber = value.match(numberPattern);\n return !(isTypeNumber && !isNumber);\n }\n}\n","import * as moment from \"moment\";\nimport { ChangeDetectorRef, Component, OnDestroy, OnInit, ViewChild } from \"@angular/core\";\nimport { FormBuilder, FormGroup, Validators } from \"@angular/forms\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { LazyLoadEvent } from \"primeng/api\";\nimport { Subject } from \"rxjs\";\nimport { catchError, finalize, takeUntil } from \"rxjs/operators\";\nimport {\n EnumBadgeColors,\n EnumColumnFieldType,\n FieldType,\n FormField,\n IToken,\n TableColumnLocaleOptions\n} from \"@seniorsistemas/angular-components\";\nimport { EnumExclusionProcessStatus } from \"../enums/enum-exclusion-process-status\";\nimport { ExclusionProcess } from \"../models\";\nimport { Table } from \"primeng/table\";\nimport { LogicalDeleteService } from \"../services\";\nimport { ActivatedRoute } from \"@angular/router\";\nimport { ListParams } from \"../models/list-params\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\nimport { ExclusionDetailsComponent } from \"../exclusion-details\";\nimport { FilterService } from \"../services/filter.service\";\n\nconst HTTP_CODE_SERVER_ERROR_START = 500;\nconst HTTP_CODE_SERVER_ERROR_END = 600;\n\n@Component({\n templateUrl: \"./exclusions-list.component.html\",\n styleUrls: [],\n providers: []\n})\nexport class ExclusionsListComponent implements OnInit, OnDestroy {\n\n private static readonly DATE_FORMAT = \"YYYY-MM-DD\";\n\n public locale!: TableColumnLocaleOptions;\n public entityName: string;\n public entityDescription: string;\n public processId: string;\n\n public currentListParams: ListParams = { page: 0, size: 10, sort: [], filterData: {} };\n public gridData: ExclusionProcess[];\n public gridColumns: any[];\n public showLoader = false;\n public totalRecords = 0;\n\n public filterFields: FormField[];\n public filterFormGroup: FormGroup;\n public filtersPanelCollapsed = true;\n public searchTokens: IToken[] = [];\n public serverError = false;\n\n @ViewChild(\"exclusionsTable\")\n public table: Table;\n\n @ViewChild(ExclusionDetailsComponent)\n public exclusionDetailsComponent: ExclusionDetailsComponent;\n\n private readonly ngUnsubscribe = new Subject();\n\n constructor(\n private readonly route: ActivatedRoute,\n private readonly translate: TranslateService,\n private readonly formBuilder: FormBuilder,\n private readonly changeDetectorRef: ChangeDetectorRef,\n private readonly logicalDeleteService: LogicalDeleteService,\n private readonly filterService: FilterService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {\n }\n\n public ngOnInit() {\n this.filterFormGroup = this.getFormBuilder();\n this.filterFields = this.getFilterFields();\n this.gridColumns = this.getGridColumns();\n\n this.route.data\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((data: { [configs: string]: any, localeConfig: TableColumnLocaleOptions }) => {\n this.locale = data.localeConfig;\n });\n this.route.params\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((params: any) => {\n this.entityName = params.entityName;\n this.showBasedOnRoute();\n });\n this.route.queryParams\n .pipe(takeUntil(this.ngUnsubscribe))\n .subscribe((queryParams: any) => {\n this.entityDescription = queryParams.entityDescription;\n this.processId = queryParams.processId;\n this.showBasedOnRoute();\n });\n }\n\n private showBasedOnRoute() {\n if (this.entityName && this.entityDescription && this.processId) {\n this.exclusionDetailsComponent.showDetails({\n processId: this.processId,\n entityDescription: this.entityDescription,\n entityName: this.entityName\n });\n }\n }\n\n public ngOnDestroy() {\n this.ngUnsubscribe.next();\n this.ngUnsubscribe.complete();\n }\n\n private getFormBuilder() {\n return this.formBuilder.group({\n description: [undefined, Validators.compose([])],\n status: [undefined, Validators.compose([])],\n startDate: [{ value: undefined, disabled: false }, Validators.compose([])],\n endDate: [{ value: undefined, disabled: false }, Validators.compose([])]\n });\n }\n\n private getGridColumns() {\n return [\n {\n field: \"description\",\n attributes: [\"description\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_description`),\n type: EnumColumnFieldType.STRING,\n style: {\n width: \"300px\"\n }\n },\n {\n field: \"status\",\n attributes: [\"status\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_status`),\n type: EnumColumnFieldType.ENUM,\n enumPrefix: `${this.projectConfigs.getTranslationPrefix()}.logical_delete_enum_exclusion_process_status_`,\n style: {\n width: \"100px\"\n },\n tooltip: this.getColumnStatusTooltip,\n badgeConfigs: [\n {\n enumValue: EnumExclusionProcessStatus.ERROR,\n color: EnumBadgeColors.RED\n },\n {\n enumValue: EnumExclusionProcessStatus.PENDING,\n color: EnumBadgeColors.YELLOW\n },\n {\n enumValue: EnumExclusionProcessStatus.PROCESSING,\n color: EnumBadgeColors.BLUE\n },\n {\n enumValue: EnumExclusionProcessStatus.SUCCESS,\n color: EnumBadgeColors.GREEN\n }\n ]\n },\n {\n field: \"startDate\",\n attributes: [\"startDate\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_start`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm:ss\",\n style: {\n width: \"100px\"\n }\n },\n {\n field: \"finishDate\",\n attributes: [\"finishDate\"],\n header: this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_finish`),\n type: EnumColumnFieldType.DATE,\n dateFormat: \"DD/MM/YYYY HH:mm:ss\",\n style: {\n width: \"100px\"\n }\n }\n ];\n }\n\n private getColumnStatusTooltip(rowValue: ExclusionProcess) {\n if (rowValue.errorMessage) {\n return rowValue.errorMessage;\n }\n\n return null;\n }\n\n private getFilterFields() {\n const translationPrefix = this.projectConfigs.getTranslationPrefix();\n\n return [\n new FormField({\n type: FieldType.String,\n name: \"description\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_description`)\n }),\n new FormField({\n type: FieldType.Enum,\n name: \"status\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_status`),\n placeholder: this.translate.instant(`${translationPrefix}.logical_delete_status`),\n multiple: true,\n options: [\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_error`),\n value: EnumExclusionProcessStatus.ERROR\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_pending`),\n value: EnumExclusionProcessStatus.PENDING\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_processing`),\n value: EnumExclusionProcessStatus.PROCESSING\n },\n {\n label: this.translate.instant(`${translationPrefix}.logical_delete_enum_exclusion_process_status_success`),\n value: EnumExclusionProcessStatus.SUCCESS\n }\n ]\n }),\n new FormField({\n type: FieldType.Date,\n name: \"startDate\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_start`)\n }),\n\n new FormField({\n type: FieldType.Date,\n name: \"endDate\",\n label: this.translate.instant(`${translationPrefix}.logical_delete_finish`)\n })\n ];\n }\n\n public getEmptyStateTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_title`);\n }\n\n public getEmptyStateDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_empty_state_description`);\n }\n\n public getTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n\n public getDetailsButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_details`);\n }\n\n public getFiltersTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.filters`);\n }\n\n public getFilterButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.filter`);\n }\n\n public getClearButtonTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.clear`);\n }\n\n public getErrorInvalid() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_invalid`);\n }\n\n public getErrorServerTitle() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_server_title`);\n }\n\n public getErrorServerDescription() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.error_server_description`);\n }\n\n public getActionsColumnLabel() {\n return this.translate.instant(`${this.projectConfigs.getTranslationPrefix()}.actions`);\n }\n\n public onSearch() {\n const filterData = this.filterFormGroup.getRawValue();\n this.filtersPanelCollapsed = true;\n this.resetGrid({ filterData });\n }\n\n public onClear() {\n this.filterFormGroup.reset();\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onRemoveToken(token: IToken) {\n this.filterFormGroup.get(token.id).setValue(undefined);\n const filterData = this.filterFormGroup.getRawValue();\n this.resetGrid({ filterData });\n }\n\n public onGridChange(event: LazyLoadEvent) {\n const size = event.rows;\n const page = event.first / size;\n const sort = event.multiSortMeta ? event.multiSortMeta : [];\n return this.updateGrid({ page, size, sort });\n }\n\n private getFilterTokens() {\n const filterData = this.filterFormGroup.value;\n\n return this.filterFields\n .filter(({ name }) => filterData[name] !== undefined && filterData[name] !== \"\" && filterData[name] !== null)\n .map(formField => this.filterService.createFilterTokens(formField, filterData[formField.name]));\n }\n\n private getFilterQuery(): string {\n const { filterData } = this.currentListParams;\n const dateFields = [\"startDate\", \"endDate\"];\n\n let filterQuery = this.filterFields\n .filter(({ name }) => !dateFields.includes(name))\n .filter(({ name }) => filterData[name] !== undefined && filterData[name] !== \"\" && filterData[name] !== null)\n .map(formField => this.filterService.createFilterString(formField, filterData[formField.name]))\n .join(\" and \");\n\n let dateQuery: string;\n if (filterData.startDate && filterData.endDate) {\n const startDate = moment(filterData.startDate).format(ExclusionsListComponent.DATE_FORMAT);\n const endDate = moment(filterData.endDate).format(ExclusionsListComponent.DATE_FORMAT);\n dateQuery = `startDate between '${startDate}T00:00:00Z' and '${endDate}T23:59:59Z'`;\n } else if (filterData.startDate) {\n const startDate = moment(filterData.startDate).format(ExclusionsListComponent.DATE_FORMAT);\n dateQuery = `startDate >= '${startDate}T00:00:00Z'`;\n } else if (filterData.endDate) {\n const endDate = moment(filterData.endDate).format(ExclusionsListComponent.DATE_FORMAT);\n dateQuery = `finishDate <= '${endDate}T23:59:59Z'`;\n } else {\n // Não é necessário nenhuma condição a mais no filtro.\n }\n\n if (dateQuery) {\n filterQuery += filterQuery ? ` and ${dateQuery}` : dateQuery;\n }\n\n return filterQuery;\n }\n\n private updateGrid(listParams: ListParams = {}) {\n this.currentListParams = { ...this.currentListParams, ...listParams };\n const { page, size, sort } = this.currentListParams;\n\n this.searchTokens = this.getFilterTokens();\n const filterQuery = this.getFilterQuery();\n const displayFields = [\n \"recordId\",\n \"errorMessage\",\n ...this.gridColumns.map(column => column.field)\n ];\n\n if (!sort.length) {\n sort.push({ field: 'startDate', order: -1 });\n }\n\n this.listExclusions({ page, size, sort, filterQuery, displayFields });\n }\n\n public listExclusions(params: any) {\n this.showLoader = true;\n this.serverError = false;\n\n this.changeDetectorRef.detectChanges();\n\n this.logicalDeleteService\n .listExclusions(this.entityName, params)\n .pipe(\n takeUntil(this.ngUnsubscribe),\n catchError((err: any) => {\n if (err.status >= HTTP_CODE_SERVER_ERROR_START && err.status < HTTP_CODE_SERVER_ERROR_END) {\n this.serverError = true;\n }\n throw err;\n }),\n finalize(() => this.showLoader = false)\n )\n .subscribe((list: any) => {\n this.gridData = list.contents;\n this.totalRecords = list.totalElements;\n });\n }\n\n public focusInput(elementId: string) {\n const element: any = document.getElementById(`${elementId}`);\n if (element) {\n element.focus();\n }\n }\n\n public resetGrid(listParams?: ListParams) {\n if (listParams) {\n this.currentListParams = { ...this.currentListParams, ...listParams };\n }\n this.currentListParams = { ...this.currentListParams, page: 0, sort: [] };\n this.table.reset();\n }\n\n public onClickDetails(rowData: ExclusionProcess) {\n this.exclusionDetailsComponent.showDetails({\n processId: rowData.id,\n entityDescription: this.entityDescription,\n entityName: this.entityName\n });\n }\n}\n","import { NgModule, Injectable, Component } from \"@angular/core\";\nimport { RouterModule, Routes, CanActivate } from \"@angular/router\";\nimport { TranslateService } from \"@ngx-translate/core\";\nimport { PermissionsService } from \"@seniorsistemas/platform-components\";\nimport { LocaleService } from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { LogicalDeleteConfigService } from \"../services/logical-delete-config.service\";\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingGuard implements CanActivate {\n public canActivate() {\n return true;\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingListTitleResolver {\n constructor(\n private readonly translate: TranslateService,\n private readonly projectConfigs: LogicalDeleteConfigService\n ) {}\n\n public resolve() {\n return this.translate.get(`${this.projectConfigs.getTranslationPrefix()}.logical_delete_list_title`);\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingPermissionResolver {\n constructor(private readonly permissionsService: PermissionsService) {}\n\n public resolve() {\n return this.permissionsService.get();\n }\n}\n\n@Injectable()\nexport class ExclusionsListFeatureRoutingLocaleResolver {\n constructor(private readonly localeService: LocaleService) {}\n\n public resolve() {\n return this.localeService.get();\n }\n}\n\n@Component({\n template: `<router-outlet></router-outlet>`\n})\nexport class EmptyComponent {}\n\nexport const routes: Routes = [\n {\n path: \"exclusions-list\",\n component: EmptyComponent,\n canActivate: [\n ExclusionsListFeatureRoutingGuard\n ],\n resolve: {\n allPermissions: ExclusionsListFeatureRoutingPermissionResolver,\n localeConfig: ExclusionsListFeatureRoutingLocaleResolver,\n routeTitle: ExclusionsListFeatureRoutingListTitleResolver\n },\n children: [\n {\n path: \":entityName\",\n component: ExclusionsListComponent\n }\n ]\n }\n];\n\n@NgModule({\n imports: [\n RouterModule.forChild(routes)\n ],\n exports: [\n RouterModule\n ],\n providers: [\n ExclusionsListFeatureRoutingGuard,\n ExclusionsListFeatureRoutingPermissionResolver,\n ExclusionsListFeatureRoutingLocaleResolver,\n ExclusionsListFeatureRoutingListTitleResolver\n ],\n declarations: [\n EmptyComponent\n ]\n})\nexport class ExclusionsListFeatureRouting {}\n","import { CommonModule } from \"@angular/common\";\nimport { NgModule } from \"@angular/core\";\nimport { PanelModule } from \"primeng/panel\";\nimport { TableModule as PrimeTableModule } from \"primeng/table\";\nimport {\n ButtonModule,\n LoadingStateModule,\n TableModule,\n LocaleModule,\n TokenListModule,\n DynamicFormModule,\n EmptyStateModule,\n ControlErrorsModule,\n InfoSignModule\n} from \"@seniorsistemas/angular-components\";\nimport { ExclusionsListComponent } from \"./exclusions-list.component\";\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\nimport { DialogModule } from \"primeng/dialog\";\nimport { ConfirmDialogModule } from \"primeng/confirmdialog\";\nimport { InputTextModule } from \"primeng/inputtext\";\nimport { ExclusionDetailsModule } from \"../exclusion-details\";\nimport { ExclusionsListFeatureRouting } from \"./exclusions-list.routing\";\n\n@NgModule({\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TranslateModule,\n CommonModule,\n ControlErrorsModule,\n ButtonModule,\n PanelModule,\n InputTextModule,\n InfoSignModule,\n ConfirmDialogModule,\n DialogModule,\n PrimeTableModule,\n TableModule,\n LoadingStateModule,\n EmptyStateModule,\n DynamicFormModule,\n TokenListModule,\n LocaleModule.forChild(),\n ExclusionDetailsModule,\n ExclusionsListFeatureRouting\n ],\n declarations: [ExclusionsListComponent],\n exports: [ExclusionsListComponent],\n entryComponents: [ExclusionsListComponent]\n})\nexport class ExclusionsListModule {}\n","import { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { ProjectConfigs, ProjectConfigsInjectionToken } from \"./models/project-config\";\nimport { FilterService } from \"./services/filter.service\";\nimport { LogicalDeleteConfigService } from \"./services/logical-delete-config.service\";\nimport { LogicalDeleteService } from \"./services/logical-delete.service\";\n\n@NgModule({\n providers: [LogicalDeleteService, LogicalDeleteConfigService, FilterService]\n})\nexport class LogicalDeleteModule {\n static forRoot(config: ProjectConfigs): ModuleWithProviders<LogicalDeleteModule> {\n return {\n ngModule: LogicalDeleteModule,\n providers: [\n {\n provide: ProjectConfigsInjectionToken,\n useValue: config\n }\n ]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {ExclusionDetailsComponent as ɵf,ExclusionDetailsModule as ɵe} from './exclusion-details';\nexport {ProjectConfigs as ɵd,ProjectConfigsInjectionToken as ɵc} from './models/project-config';\nexport {LogicalDeleteService as ɵg} from './services';\nexport {FilterService as ɵh} from './services/filter.service';\nexport {LogicalDeleteConfigService as ɵb} from './services/logical-delete-config.service';\nexport {LogicalDeleteService as ɵa} from './services/logical-delete.service';"],"names":["PrimeTableModule","TableModule"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,IAAY,0BAKX;AALD,WAAY,0BAA0B;IAClC,iDAAmB,CAAA;IACnB,uDAAyB,CAAA;IACzB,6CAAe,CAAA;IACf,iDAAmB,CAAA;AACvB,CAAC,EALW,0BAA0B,KAA1B,0BAA0B;;MCEzB,4BAA4B,GAAG,IAAI,cAAc,CAAiB,gBAAgB;;ICElF,0BAA0B,GAAvC,MAAa,0BAA0B;IACnC,YAEqB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;KAClD;IAEM,SAAS;QACZ,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;KACrC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;KACtC;IAEM,oBAAoB;QACvB,IAAI,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE;YACvC,OAAO,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC;SAChD;QACD,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;KACzE;EACJ;;4CAlBQ,MAAM,SAAC,4BAA4B;;AAF/B,0BAA0B;IADtC,UAAU,EAAE;IAGJ,WAAA,MAAM,CAAC,4BAA4B,CAAC,CAAA;GAFhC,0BAA0B,CAoBtC;;ACbD,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAGhB,oBAAoB,GAAjC,MAAa,oBAAoB;IAG7B,YACqB,IAAgB,EAChB,cAA8B,EAC9B,SAA2B,EAC3B,cAA0C;QAH1C,SAAI,GAAJ,IAAI,CAAY;QAChB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,cAAS,GAAT,SAAS,CAAkB;QAC3B,mBAAc,GAAd,cAAc,CAA4B;QAE3D,MAAM,SAAS,GAAG,GAAG,cAAc,CAAC,SAAS,EAAE,IAAI,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC;QACjF,IAAI,CAAC,mBAAmB,GAAG,GAAG,SAAS,4BAA4B,CAAC;QACpE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACpD;IAEM,YAAY;QACf,OAAO,UAAU,CAAW,CAAC,GAAQ;;YACjC,IAAI,GAAG,EAAE;gBACL,IAAI,OAAO,GAAG,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;gBACxD,IAAI,MAAM,GAAG,OAAA,GAAG,CAAC,KAAK,0CAAE,OAAO,KAAI,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,OAAO,CAAC;gBAEjE,IAAI,GAAG,CAAC,MAAM,KAAK,sBAAsB,EAAE;oBACvC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC;oBAC1D,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,MAAM,2BAA2B,CAAC,CAAC;oBACvE,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,MAAM,iCAAiC,CAAC,CAAC;iBAC/E;gBAED,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;oBACpB,QAAQ,EAAE,OAAO;oBACjB,OAAO;oBACP,MAAM,EAAE,MAAM,IAAI,OAAO;iBAC5B,CAAC,CAAC;aACN;YAED,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;SAC1B,CAAC,CAAC;KACN;IAEM,kBAAkB,CAAC,UAAsB;QAC5C,MAAM,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,iBAAiB,EAAE,IAAI,GAAG,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,aAAa,GAAG,EAAE,EAAE,GAAG,UAAU,CAAC;QAE3G,IAAI,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/C,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE;YACrB,MAAM,GAAG,MAAM,CAAC,MAAM,CAClB,SAAS,EACT,IAAI;iBACC,GAAG,CAAC,CAAC;gBACF,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE;oBAChB,OAAO,GAAG,CAAC,CAAC,KAAK,OAAO,CAAC;iBAC5B;gBAED,OAAO,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC;aAC3B,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAClB,CAAC;SACL;QAED,IAAI,WAAW,EAAE;YACb,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SACjD;QAED,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,EAAE;YACvC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;SACjE;QAED,OAAO,MAAM,CAAC;KACjB;IAEM,iBAAiB,CAAC,EAAU;QAC/B,OAAO,IAAI,CAAC,mBAAmB,CAAC;YAC5B,MAAM,EAAE,UAAU,EAAE,GAAG;YACvB,IAAI,EAAE,GAAG;YACT,MAAM,EAAE,GAAG;SACd,CAAC,CAAC;KACN;IAEM,uBAAuB,CAAC,QAAgB;QAC3C,OAAO,IAAI,CAAC,mBAAmB,CAAC;YAC5B,MAAM,EAAE,gBAAgB,QAAQ,GAAG;YACnC,IAAI,EAAE,GAAG;YACT,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,gBAAgB;SAC5B,CAAC,CAAC;KACN;IAEO,mBAAmB,CAAC,YAE3B;QACG,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA+B,IAAI,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;aACjG,IAAI,CAA+B,IAAI,CAAC,YAAY,EAAE,CAAC;aACvD,IAAI,CAAC,GAAG,CAAC,KAAK;;YACX,IAAI,QAAC,KAAK,CAAC,QAAQ,0CAAE,MAAM,CAAA,EAAE;gBACzB,OAAO,IAAI,CAAC;aACf;YACD,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SACrD,CAAC,CAAC,CAAC;KACX;IAEO,kBAAkB,CAAC,gBAAkC;;QACzD,uCACO,gBAAgB,KACnB,SAAS,EAAE,gBAAgB,CAAC,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,EAC1F,UAAU,EAAE,gBAAgB,CAAC,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,EAC7F,MAAM,QAAE,gBAAgB,CAAC,MAAM,0CAAE,GAAG,CAAC,KAAK;;gBAAI,wCACvC,KAAK,KACR,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,EACpE,UAAU,EAAE,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,EACvE,KAAK,QAAE,KAAK,CAAC,KAAK,0CAAE,GAAG,CAAC,IAAI,qCACrB,IAAI,KACP,SAAS,EAAE,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,EAClE,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,IACvE,MACJ;aAAA,KACJ;KACL;IAEM,cAAc,CAAC,UAAkB,EAAE,SAAqB,EAAE;QAC7D,IAAI,MAAM,CAAC,WAAW,EAAE;YACpB,MAAM,CAAC,WAAW,IAAI,oCAAoC,UAAU,IAAI,CAAC;SAC5E;aAAM;YACH,MAAM,CAAC,WAAW,GAAG,+BAA+B,UAAU,IAAI,CAAC;SACtE;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA+B,IAAI,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;aACpH,IAAI,CAA+B,IAAI,CAAC,YAAY,EAAE,CAAC;aACvD,IAAI,CAA+B,GAAG,CAAC,KAAK;YACzC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC7D,OAAO,KAAK,CAAC;SAChB,CAAC,CAAC,CAAC;KACX;EACJ;;YAhI8B,UAAU;YACA,cAAc;YACnB,gBAAgB;YACX,0BAA0B;;AAPtD,oBAAoB;IADhC,UAAU,EAAE;GACA,oBAAoB,CAoIhC;;IC5HY,yBAAyB,GAAtC,MAAa,yBAAyB;IAuClC,YACqB,MAAc,EACd,KAAqB,EACrB,SAA2B,EAC3B,oBAA0C,EAC1C,cAA0C;QAJ1C,WAAM,GAAN,MAAM,CAAQ;QACd,UAAK,GAAL,KAAK,CAAgB;QACrB,cAAS,GAAT,SAAS,CAAkB;QAC3B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,mBAAc,GAAd,cAAc,CAA4B;QAfvD,gBAAW,GAAG,EAAE,CAAC;QACjB,eAAU,GAAG,KAAK,CAAC;QACnB,eAAU,GAAG,KAAK,CAAC;QACnB,wBAAmB,GAAuB,EAAE,CAAC;QAC7C,2BAAsB,GAAU,EAAE,CAAC;QAI1B,kBAAa,GAAG,IAAI,OAAO,EAAE,CAAC;KAS9C;IA1CD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;KAC1B;IAGD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;KAC1B;IAGD,IAAI,kBAAkB;QAClB,OAAO,IAAI,CAAC,mBAAmB,CAAC;KACnC;IAGD,IAAI,qBAAqB;QACrB,OAAO,IAAI,CAAC,sBAAsB,CAAC;KACtC;IA2BD,QAAQ;QACJ,IAAI,CAAC,KAAK,CAAC,IAAI;aACV,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,SAAS,CAAC,CAAC,IAAwE;YAChF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;SACnC,CAAC,CAAC;QACP,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1D;IAEM,WAAW;QACd,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;QAE9B,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC9B;IAEM,WAAW,CAAC,OAA+B;QAC9C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAE9B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;QAEnD,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEjC,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;IAEM,mBAAmB,CAAC,KAAU;QACjC,IAAI,CAAC,YAAY,EAAE,CAAC;KACvB;IAEM,YAAY;QACf,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;QAC9B,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC9B;IAEM,cAAc;QACjB,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAChB,CAAC,iBAAiB,EAAE,IAAI,CAAC,WAAW,CAAC,EACrC;YACI,WAAW,EAAE;gBACT,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;aAC5C;SACJ,CACJ,CAAC;KACL;IAEM,oBAAoB;;QACvB,IAAI,QAAC,IAAI,CAAC,cAAc,0CAAE,WAAW,CAAA,EAAE;YACnC,OAAO,EAAE,CAAC;SACb;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;KAC1C;IAEM,cAAc;;QACjB,IAAI,QAAC,IAAI,CAAC,cAAc,0CAAE,SAAS,CAAA,EAAE;YACjC,OAAO,EAAE,CAAC;SACb;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;KAC9E;IAEM,aAAa;;QAChB,IAAI,QAAC,IAAI,CAAC,cAAc,0CAAE,UAAU,CAAA,EAAE;YAClC,OAAO,EAAE,CAAC;SACb;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;KAC/E;IAEM,UAAU;;QACb,OAAO,CAAC,QAAC,IAAI,CAAC,cAAc,0CAAE,UAAU,CAAA,CAAC;KAC5C;IAEM,4BAA4B;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,gCAAgC,CAAC,CAAC;KAChH;IAEM,mBAAmB;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,CAAC;KACvG;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,yBAAyB,CAAC,CAAC;KACzG;IAEM,iBAAiB;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,CAAC;KACvG;IAEM,kBAAkB;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,wBAAwB,CAAC,CAAC;KACxG;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,+BAA+B,CAAC,CAAC;KAC/G;IAEM,kBAAkB;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,mCAAmC,CAAC,CAAC;KACnH;IAEM,wBAAwB;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,yCAAyC,CAAC,CAAC;KACzH;IAEO,iBAAiB;QACrB,OAAO;YACH;gBACI,KAAK,EAAE,aAAa;gBACpB,UAAU,EAAE,CAAC,aAAa,CAAC;gBAC3B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,6BAA6B,CAAC;gBAC1G,IAAI,EAAE,mBAAmB,CAAC,MAAM;gBAChC,KAAK,EAAE;oBACH,KAAK,EAAE,OAAO;iBACjB;aACJ;YACD;gBACI,KAAK,EAAE,QAAQ;gBACf,UAAU,EAAE,CAAC,QAAQ,CAAC;gBACtB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;gBACrG,IAAI,EAAE,mBAAmB,CAAC,IAAI;gBAC9B,UAAU,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,gDAAgD;gBACzG,KAAK,EAAE;oBACH,KAAK,EAAE,OAAO;iBACjB;gBACD,OAAO,EAAE,IAAI,CAAC,sBAAsB;gBACpC,YAAY,EAAE;oBACV;wBACI,SAAS,EAAE,0BAA0B,CAAC,KAAK;wBAC3C,KAAK,EAAE,eAAe,CAAC,GAAG;qBAC7B;oBACD;wBACI,SAAS,EAAE,0BAA0B,CAAC,OAAO;wBAC7C,KAAK,EAAE,eAAe,CAAC,MAAM;qBAChC;oBACD;wBACI,SAAS,EAAE,0BAA0B,CAAC,UAAU;wBAChD,KAAK,EAAE,eAAe,CAAC,IAAI;qBAC9B;oBACD;wBACI,SAAS,EAAE,0BAA0B,CAAC,OAAO;wBAC7C,KAAK,EAAE,eAAe,CAAC,KAAK;qBAC/B;iBACJ;aACJ;SACJ,CAAC;KACL;IAEO,sBAAsB,CAAC,QAA0B;QACrD,IAAI,QAAQ,CAAC,YAAY,EAAE;YACvB,OAAO,QAAQ,CAAC,YAAY,CAAC;SAChC;QAED,OAAO,IAAI,CAAC;KACf;IAEO,kBAAkB,CAAC,OAA+B;QACtD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS;cACrC,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC;cAC9D,IAAI,CAAC,oBAAoB,CAAC,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE1E,iBAAiB;aACZ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;aAC7C,SAAS,CAAC,CAAC,OAAyB;YACjC,IAAI,CAAC,OAAO,EAAE;gBACV,OAAO;aACV;YAED,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;YAC9B,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;SACpC,CAAC,CAAC;KACV;IAEO,UAAU,CAAC,SAAe,EAAE,UAAgB;QAChD,IAAI,SAAS,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE;YAC5C,OAAO,CAAC,CAAC;SACZ;QACD,IAAI,SAAS,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE;YAC5C,OAAO,CAAC,CAAC,CAAC;SACb;QACD,OAAO,CAAC,CAAC;KACZ;IAEO,qBAAqB,CAAC,MAAmC;QAC7D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;KAC5E;IAEO,oBAAoB,CAAC,KAA6B;QACtD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;KAC3E;IAEO,kBAAkB,CAAC,OAAyB;QAChD,MAAM,QAAQ,GAAuB,EAAE,CAAC;QAExC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC;aACrC,OAAO,CAAC,KAAK;YACV,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC;iBAC/C,GAAG,CAAC,IAAI,KAAK;gBACV,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,YAAY,EAAE,IAAI,CAAC,YAAY;aACb,CAAA,CAAC,CAAC;YAE5B,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;SAC3B,CAAC,CAAC;QAEP,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;KACvC;IAEO,mBAAmB;QACvB,IAAI,IAAI,CAAC,uCAAuC,EAAE;YAC9C,IAAI,CAAC,uCAAuC,CAAC,WAAW,EAAE,CAAC;YAC3D,IAAI,CAAC,uCAAuC,GAAG,IAAI,CAAC;SACvD;QAED,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SACjC;KACJ;IAEO,gBAAgB;QACpB,IAAI,IAAI,CAAC,iBAAiB,EAAE;YACxB,IAAI,CAAC,mBAAmB,EAAE,CAAC;SAC9B;QAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,gBAAgB,EAAE,CAAC;QAChD,IAAI,CAAC,iBAAiB;aACjB,SAAS,EAAE;aACX,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,SAAS,CAAC;YACP,IAAI,CAAC,2BAA2B,EAAE,CAAC;SACtC,CAAC,CAAC;KACV;IAEO,2BAA2B;QAC/B,IAAI,CAAC,iBAAiB;aACjB,OAAO,EAAE;aACT,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,SAAS,CAAC,CAAC,IAAS;YACjB,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;SAClC,CAAC,CAAC;QAEP,IAAI,CAAC,uCAAuC,GAAG,IAAI,CAAC,iBAAiB;aAChE,OAAO,CAAoD;YACxD,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE;YACvC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE;YACzC,SAAS,EAAE,+BAA+B;SAC7C,CAAC;aACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,SAAS,CAAC,CAAC,KAAwD;YAChE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;YAEvB,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE;gBACnF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBAChD,OAAO;aACV;YAED,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE;gBACtF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;aACnD;SACJ,CAAC,CAAC;KACV;EACJ;;YA1RgC,MAAM;YACP,cAAc;YACV,gBAAgB;YACL,oBAAoB;YAC1B,0BAA0B;;AAxC/D;IADC,MAAM,EAAE;0DAGR;AAGD;IADC,MAAM,EAAE;0DAGR;AAGD;IADC,MAAM,EAAE;mEAGR;AAGD;IADC,MAAM,EAAE;sEAGR;AAGD;IADC,MAAM,EAAE;iEAC+B;AAGxC;IADC,MAAM,EAAE;oEACwB;AA3BxB,yBAAyB;IANrC,SAAS,CAAC;QACP,QAAQ,EAAE,qBAAqB;QAC/B,u1HAAiD;QAEjD,aAAa,EAAE,iBAAiB,CAAC,IAAI;;KACxC,CAAC;GACW,yBAAyB,CAkUrC;;IC3TY,sBAAsB,GAAnC,MAAa,sBAAsB;EAAG;AAAzB,sBAAsB;IAhBlC,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY;YACZ,aAAa;YACb,YAAY;YACZ,WAAW;YACXA,WAAgB;YAChBC,aAAW;YACX,kBAAkB;YAClB,YAAY;YACZ,gBAAgB;SACnB;QACD,YAAY,EAAE,CAAC,yBAAyB,CAAC;QACzC,OAAO,EAAE,CAAC,yBAAyB,CAAC;QACpC,eAAe,EAAE,CAAC,yBAAyB,CAAC;KAC/C,CAAC;GACW,sBAAsB,CAAG;;ICvBzB,aAAa,GAA1B,MAAa,aAAa;IAGtB,YACqB,0BAAsD,EACtD,SAA2B;QAD3B,+BAA0B,GAA1B,0BAA0B,CAA4B;QACtD,cAAS,GAAT,SAAS,CAAkB;QAJ/B,gBAAW,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;KAKjE;IAEJ,YAAY,CAAC,IAAY,EAAE,KAAU,EAAE,WAAoB,KAAK;QAC5D,IAAI,QAAQ,EAAE;YACV,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,QAAa,KAAK,GAAG,IAAI,QAAQ,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrF,OAAO,IAAI,MAAM,GAAG,CAAC;SACxB;QACD,OAAO,GAAG,IAAI,QAAQ,KAAK,GAAG,CAAC;KAClC;IAED,kBAAkB,CAAC,SAAoB,EAAE,KAAU;QAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;QAC3C,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE;YAC1B,OAAO,GAAG,IAAI,OAAO,KAAK,EAAE,CAAC;SAChC;QAED,QAAQ,IAAI;YACR,KAAK,SAAS,CAAC,IAAI;gBACf,OAAO,GAAG,IAAI,QAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC;YAChE,KAAK,SAAS,CAAC,IAAI;gBACf,OAAO,GAAG,IAAI,QAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;YAC9D,KAAK,SAAS,CAAC,QAAQ;gBACnB,OAAO,GAAG,IAAI,QAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC;YACpD,KAAK,SAAS,CAAC,aAAa;gBACxB,OAAO,GAAG,IAAI,QAAQ,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,2BAA2B,CAAC,GAAG,CAAC;YAC/E,KAAK,SAAS,CAAC,IAAI;gBACf,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACpD,KAAK,SAAS,CAAC,MAAM;gBACjB,OAAO,oBAAoB,IAAI,aAAa,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC;YAC9E,KAAK,SAAS,CAAC,MAAM;gBACjB,OAAO,GAAG,IAAI,QAAQ,KAAK,CAAC,EAAE,GAAG,CAAC;YACtC;gBACI,OAAO,GAAG,IAAI,QAAQ,KAAK,GAAG,CAAC;SACtC;KACJ;IAED,kBAAkB,CAAC,SAAoB,EAAE,KAAU;QAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,SAAgB,CAAC;QACtE,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,QAAQ,IAAI;YACR,KAAK,SAAS,CAAC,IAAI;gBACf,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACvC,MAAM;YACV,KAAK,SAAS,CAAC,IAAI;gBACf,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzC,MAAM;YACV,KAAK,SAAS,CAAC,aAAa,CAAC;YAC7B,KAAK,SAAS,CAAC,QAAQ;gBACnB,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC3C,MAAM;YACV,KAAK,SAAS,CAAC,MAAM;gBACjB,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,KAAgB,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjG,MAAM;YACV,KAAK,SAAS,CAAC,IAAI;gBACf,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBACtB,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAe;wBACnC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,EAAO,KAAK,EAAE,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;qBACrE,CAAC,CAAC;iBACN;qBAAM;oBACH,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAc,KAAK,MAAM,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;iBACzF;gBACD,MAAM;YACV,KAAK,SAAS,CAAC,OAAO;gBAClB,UAAU,GAAG,KAAK;sBACZ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,0BAA0B,CAAC,oBAAoB,EAAE,yBAAyB,CAAC;sBAC1G,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,0BAA0B,CAAC,oBAAoB,EAAE,0BAA0B,CAAC,CAAC;gBAClH,MAAM;YACV;gBACI,UAAU,GAAG,KAAK,CAAC;gBACnB,MAAM;SACb;QAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,KAAK,UAAU,EAAE,EAAE,CAAC;KACzD;IAED,kBAAkB,CAAC,aAAuB,EAAE,WAAmB,EAAE,KAAU,EAAE,SAAiB;QAC1F,OAAO,aAAa,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,WAAW,IAAI,KAAK,EAAE,CAAC,CAAC;aAC5D,MAAM,CAAC,CAAC,GAAQ,EAAE,GAAQ,KAAK,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;KACxF;IAED,OAAO,CAAC,GAAQ,EAAE,IAAS;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,MAAW,EAAE,IAAS,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;KACpH;IAED,oBAAoB,CAAC,QAAe,EAAE,aAAoB;QACtD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAS,sCACvB,IAAI,KACP,KAAK,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAC1E,CAAC,CAAC;KACP;IAED,aAAa,CAAC,IAAe,EAAE,KAAU;QACrC,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,SAAS,CAAC;QAChC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5C,OAAO,EAAE,YAAY,IAAI,CAAC,QAAQ,CAAC,CAAC;KACvC;EACJ;;YApGoD,0BAA0B;YAC3C,gBAAgB;;AALvC,aAAa;IADzB,UAAU,EAAE;GACA,aAAa,CAwGzB;;;ACtFD,MAAM,4BAA4B,GAAG,GAAG,CAAC;AACzC,MAAM,0BAA0B,GAAG,GAAG,CAAC;IAO1B,uBAAuB,+BAApC,MAAa,uBAAuB;IA6BhC,YACqB,KAAqB,EACrB,SAA2B,EAC3B,WAAwB,EACxB,iBAAoC,EACpC,oBAA0C,EAC1C,aAA4B,EAC5B,cAA0C;QAN1C,UAAK,GAAL,KAAK,CAAgB;QACrB,cAAS,GAAT,SAAS,CAAkB;QAC3B,gBAAW,GAAX,WAAW,CAAa;QACxB,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAA4B;QA3BxD,sBAAiB,GAAe,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QAGhF,eAAU,GAAG,KAAK,CAAC;QACnB,iBAAY,GAAG,CAAC,CAAC;QAIjB,0BAAqB,GAAG,IAAI,CAAC;QAC7B,iBAAY,GAAa,EAAE,CAAC;QAC5B,gBAAW,GAAG,KAAK,CAAC;QAQV,kBAAa,GAAG,IAAI,OAAO,EAAE,CAAC;KAW9C;IAEM,QAAQ;QACX,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAEzC,IAAI,CAAC,KAAK,CAAC,IAAI;aACV,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,SAAS,CAAC,CAAC,IAAwE;YAChF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC;SACnC,CAAC,CAAC;QACP,IAAI,CAAC,KAAK,CAAC,MAAM;aACZ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,SAAS,CAAC,CAAC,MAAW;YACnB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACpC,IAAI,CAAC,gBAAgB,EAAE,CAAC;SAC3B,CAAC,CAAC;QACP,IAAI,CAAC,KAAK,CAAC,WAAW;aACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aACnC,SAAS,CAAC,CAAC,WAAgB;YACxB,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,iBAAiB,CAAC;YACvD,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;YACvC,IAAI,CAAC,gBAAgB,EAAE,CAAC;SAC3B,CAAC,CAAC;KACV;IAEO,gBAAgB;QACpB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,SAAS,EAAE;YAC7D,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC;gBACvC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,UAAU,EAAE,IAAI,CAAC,UAAU;aAC9B,CAAC,CAAC;SACN;KACJ;IAEM,WAAW;QACd,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;KACjC;IAEO,cAAc;QAClB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC1B,WAAW,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3C,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC1E,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAC3E,CAAC,CAAC;KACN;IAEO,cAAc;QAClB,OAAO;YACH;gBACI,KAAK,EAAE,aAAa;gBACpB,UAAU,EAAE,CAAC,aAAa,CAAC;gBAC3B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,6BAA6B,CAAC;gBAC1G,IAAI,EAAE,mBAAmB,CAAC,MAAM;gBAChC,KAAK,EAAE;oBACH,KAAK,EAAE,OAAO;iBACjB;aACJ;YACD;gBACI,KAAK,EAAE,QAAQ;gBACf,UAAU,EAAE,CAAC,QAAQ,CAAC;gBACtB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;gBACrG,IAAI,EAAE,mBAAmB,CAAC,IAAI;gBAC9B,UAAU,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,gDAAgD;gBACzG,KAAK,EAAE;oBACH,KAAK,EAAE,OAAO;iBACjB;gBACD,OAAO,EAAE,IAAI,CAAC,sBAAsB;gBACpC,YAAY,EAAE;oBACV;wBACI,SAAS,EAAE,0BAA0B,CAAC,KAAK;wBAC3C,KAAK,EAAE,eAAe,CAAC,GAAG;qBAC7B;oBACD;wBACI,SAAS,EAAE,0BAA0B,CAAC,OAAO;wBAC7C,KAAK,EAAE,eAAe,CAAC,MAAM;qBAChC;oBACD;wBACI,SAAS,EAAE,0BAA0B,CAAC,UAAU;wBAChD,KAAK,EAAE,eAAe,CAAC,IAAI;qBAC9B;oBACD;wBACI,SAAS,EAAE,0BAA0B,CAAC,OAAO;wBAC7C,KAAK,EAAE,eAAe,CAAC,KAAK;qBAC/B;iBACJ;aACJ;YACD;gBACI,KAAK,EAAE,WAAW;gBAClB,UAAU,EAAE,CAAC,WAAW,CAAC;gBACzB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,uBAAuB,CAAC;gBACpG,IAAI,EAAE,mBAAmB,CAAC,IAAI;gBAC9B,UAAU,EAAE,qBAAqB;gBACjC,KAAK,EAAE;oBACH,KAAK,EAAE,OAAO;iBACjB;aACJ;YACD;gBACI,KAAK,EAAE,YAAY;gBACnB,UAAU,EAAE,CAAC,YAAY,CAAC;gBAC1B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;gBACrG,IAAI,EAAE,mBAAmB,CAAC,IAAI;gBAC9B,UAAU,EAAE,qBAAqB;gBACjC,KAAK,EAAE;oBACH,KAAK,EAAE,OAAO;iBACjB;aACJ;SACJ,CAAC;KACL;IAEO,sBAAsB,CAAC,QAA0B;QACrD,IAAI,QAAQ,CAAC,YAAY,EAAE;YACvB,OAAO,QAAQ,CAAC,YAAY,CAAC;SAChC;QAED,OAAO,IAAI,CAAC;KACf;IAEO,eAAe;QACnB,MAAM,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC;QAErE,OAAO;YACH,IAAI,SAAS,CAAC;gBACV,IAAI,EAAE,SAAS,CAAC,MAAM;gBACtB,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,6BAA6B,CAAC;aACnF,CAAC;YACF,IAAI,SAAS,CAAC;gBACV,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,wBAAwB,CAAC;gBAC3E,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,wBAAwB,CAAC;gBACjF,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE;oBACL;wBACI,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,qDAAqD,CAAC;wBACxG,KAAK,EAAE,0BAA0B,CAAC,KAAK;qBAC1C;oBACD;wBACI,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,uDAAuD,CAAC;wBAC1G,KAAK,EAAE,0BAA0B,CAAC,OAAO;qBAC5C;oBACD;wBACI,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,0DAA0D,CAAC;wBAC7G,KAAK,EAAE,0BAA0B,CAAC,UAAU;qBAC/C;oBACD;wBACI,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,uDAAuD,CAAC;wBAC1G,KAAK,EAAE,0BAA0B,CAAC,OAAO;qBAC5C;iBACJ;aACJ,CAAC;YACF,IAAI,SAAS,CAAC;gBACV,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,uBAAuB,CAAC;aAC7E,CAAC;YAEF,IAAI,SAAS,CAAC;gBACV,IAAI,EAAE,SAAS,CAAC,IAAI;gBACpB,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,iBAAiB,wBAAwB,CAAC;aAC9E,CAAC;SACL,CAAC;KACL;IAEM,kBAAkB;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,mCAAmC,CAAC,CAAC;KACnH;IAEM,wBAAwB;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,yCAAyC,CAAC,CAAC;KACzH;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,4BAA4B,CAAC,CAAC;KAC5G;IAEM,qBAAqB;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,yBAAyB,CAAC,CAAC;KACzG;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;KAC1F;IAEM,oBAAoB;QACvB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;KACzF;IAEM,mBAAmB;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;KACxF;IAEM,eAAe;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;KAChG;IAEM,mBAAmB;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,CAAC;KACrG;IAEM,yBAAyB;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,2BAA2B,CAAC,CAAC;KAC3G;IAEM,qBAAqB;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;KAC1F;IAEM,QAAQ;QACX,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QACtD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;KAClC;IAEM,OAAO;QACV,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QACtD,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;KAClC;IAEM,aAAa,CAAC,KAAa;QAC9B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;QACtD,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;KAClC;IAEM,YAAY,CAAC,KAAoB;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;QAChC,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;QAC5D,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;KAChD;IAEO,eAAe;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;QAE9C,OAAO,IAAI,CAAC,YAAY;aACnB,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;aAC5G,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACvG;IAEO,cAAc;QAClB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAC9C,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAE5C,IAAI,WAAW,GAAG,IAAI,CAAC,YAAY;aAC9B,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAChD,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,UAAU,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;aAC5G,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;aAC9F,IAAI,CAAC,OAAO,CAAC,CAAC;QAEnB,IAAI,SAAiB,CAAC;QACtB,IAAI,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,OAAO,EAAE;YAC5C,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,yBAAuB,CAAC,WAAW,CAAC,CAAC;YAC3F,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,yBAAuB,CAAC,WAAW,CAAC,CAAC;YACvF,SAAS,GAAG,sBAAsB,SAAS,oBAAoB,OAAO,aAAa,CAAC;SACvF;aAAM,IAAI,UAAU,CAAC,SAAS,EAAE;YAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,yBAAuB,CAAC,WAAW,CAAC,CAAC;YAC3F,SAAS,GAAG,iBAAiB,SAAS,aAAa,CAAC;SACvD;aAAM,IAAI,UAAU,CAAC,OAAO,EAAE;YAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,yBAAuB,CAAC,WAAW,CAAC,CAAC;YACvF,SAAS,GAAG,kBAAkB,OAAO,aAAa,CAAC;SACtD;aAAM;;SAEN;QAED,IAAI,SAAS,EAAE;YACX,WAAW,IAAI,WAAW,GAAG,QAAQ,SAAS,EAAE,GAAG,SAAS,CAAC;SAChE;QAED,OAAO,WAAW,CAAC;KACtB;IAEO,UAAU,CAAC,aAAyB,EAAE;QAC1C,IAAI,CAAC,iBAAiB,mCAAQ,IAAI,CAAC,iBAAiB,GAAK,UAAU,CAAE,CAAC;QACtE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAEpD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG;YAClB,UAAU;YACV,cAAc;YACd,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC;SAClD,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACd,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;SAChD;QAED,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;KACzE;IAEM,cAAc,CAAC,MAAW;QAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAEzB,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;QAEvC,IAAI,CAAC,oBAAoB;aACpB,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC;aACvC,IAAI,CACD,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,UAAU,CAAC,CAAC,GAAQ;YAChB,IAAI,GAAG,CAAC,MAAM,IAAI,4BAA4B,IAAI,GAAG,CAAC,MAAM,GAAG,0BAA0B,EAAE;gBACvF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;aAC3B;YACD,MAAM,GAAG,CAAC;SACb,CAAC,EACF,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAC1C;aACA,SAAS,CAAC,CAAC,IAAS;YACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC9B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;SAC1C,CAAC,CAAC;KACV;IAEM,UAAU,CAAC,SAAiB;QAC/B,MAAM,OAAO,GAAQ,QAAQ,CAAC,cAAc,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;QAC7D,IAAI,OAAO,EAAE;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;SACnB;KACJ;IAEM,SAAS,CAAC,UAAuB;QACpC,IAAI,UAAU,EAAE;YACZ,IAAI,CAAC,iBAAiB,mCAAQ,IAAI,CAAC,iBAAiB,GAAK,UAAU,CAAE,CAAC;SACzE;QACD,IAAI,CAAC,iBAAiB,mCAAQ,IAAI,CAAC,iBAAiB,KAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,GAAE,CAAC;QAC1E,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;KACtB;IAEM,cAAc,CAAC,OAAyB;QAC3C,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC;YACvC,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,UAAU,EAAE,IAAI,CAAC,UAAU;SAC9B,CAAC,CAAC;KACN;EACJ;AA5X2B,mCAAW,GAAG,YAAY,CAAC;;YA4BvB,cAAc;YACV,gBAAgB;YACd,WAAW;YACL,iBAAiB;YACd,oBAAoB;YAC3B,aAAa;YACZ,0BAA0B;;AAd/D;IADC,SAAS,CAAC,iBAAiB,CAAC;sDACT;AAGpB;IADC,SAAS,CAAC,yBAAyB,CAAC;0EACuB;AAzBnD,uBAAuB;IALnC,SAAS,CAAC;QACP,49NAA+C;QAE/C,SAAS,EAAE,EAAE;KAChB,CAAC;GACW,uBAAuB,CA8XnC;;ICtZY,iCAAiC,GAA9C,MAAa,iCAAiC;IACnC,WAAW;QACd,OAAO,IAAI,CAAC;KACf;EACJ;AAJY,iCAAiC;IAD7C,UAAU,EAAE;GACA,iCAAiC,CAI7C;IAGY,6CAA6C,GAA1D,MAAa,6CAA6C;IACtD,YACqB,SAA2B,EAC3B,cAA0C;QAD1C,cAAS,GAAT,SAAS,CAAkB;QAC3B,mBAAc,GAAd,cAAc,CAA4B;KAC3D;IAEG,OAAO;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,EAAE,4BAA4B,CAAC,CAAC;KACxG;EACJ;;YAPmC,gBAAgB;YACX,0BAA0B;;AAHtD,6CAA6C;IADzD,UAAU,EAAE;GACA,6CAA6C,CASzD;IAGY,8CAA8C,GAA3D,MAAa,8CAA8C;IACvD,YAA6B,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;KAAI;IAEhE,OAAO;QACV,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC;KACxC;EACJ;;YALoD,kBAAkB;;AAD1D,8CAA8C;IAD1D,UAAU,EAAE;GACA,8CAA8C,CAM1D;IAGY,0CAA0C,GAAvD,MAAa,0CAA0C;IACnD,YAA6B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;KAAI;IAEtD,OAAO;QACV,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;KACnC;EACJ;;YAL+C,aAAa;;AADhD,0CAA0C;IADtD,UAAU,EAAE;GACA,0CAA0C,CAMtD;IAKY,cAAc,GAA3B,MAAa,cAAc;EAAG;AAAjB,cAAc;IAH1B,SAAS,CAAC;QACP,QAAQ,EAAE,iCAAiC;KAC9C,CAAC;GACW,cAAc,CAAG;MAEjB,MAAM,GAAW;IAC1B;QACI,IAAI,EAAE,iBAAiB;QACvB,SAAS,EAAE,cAAc;QACzB,WAAW,EAAE;YACT,iCAAiC;SACpC;QACD,OAAO,EAAE;YACL,cAAc,EAAE,8CAA8C;YAC9D,YAAY,EAAE,0CAA0C;YACxD,UAAU,EAAE,6CAA6C;SAC5D;QACD,QAAQ,EAAE;YACN;gBACI,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,uBAAuB;aACrC;SACJ;KACJ;EACH;IAmBW,4BAA4B,GAAzC,MAAa,4BAA4B;EAAG;AAA/B,4BAA4B;IAjBxC,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC;SAChC;QACD,OAAO,EAAE;YACL,YAAY;SACf;QACD,SAAS,EAAE;YACP,iCAAiC;YACjC,8CAA8C;YAC9C,0CAA0C;YAC1C,6CAA6C;SAChD;QACD,YAAY,EAAE;YACV,cAAc;SACjB;KACJ,CAAC;GACW,4BAA4B,CAAG;;ICrC/B,oBAAoB,GAAjC,MAAa,oBAAoB;EAAG;AAAvB,oBAAoB;IA3BhC,QAAQ,CAAC;QACN,OAAO,EAAE;YACL,WAAW;YACX,mBAAmB;YACnB,eAAe;YACf,YAAY;YACZ,mBAAmB;YACnB,YAAY;YACZ,WAAW;YACX,eAAe;YACf,cAAc;YACd,mBAAmB;YACnB,YAAY;YACZD,WAAgB;YAChBC,aAAW;YACX,kBAAkB;YAClB,gBAAgB;YAChB,iBAAiB;YACjB,eAAe;YACf,YAAY,CAAC,QAAQ,EAAE;YACvB,sBAAsB;YACtB,4BAA4B;SAC/B;QACD,YAAY,EAAE,CAAC,uBAAuB,CAAC;QACvC,OAAO,EAAE,CAAC,uBAAuB,CAAC;QAClC,eAAe,EAAE,CAAC,uBAAuB,CAAC;KAC7C,CAAC;GACW,oBAAoB,CAAG;;;IC1CvB,mBAAmB,2BAAhC,MAAa,mBAAmB;IAC5B,OAAO,OAAO,CAAC,MAAsB;QACjC,OAAO;YACH,QAAQ,EAAE,qBAAmB;YAC7B,SAAS,EAAE;gBACP;oBACI,OAAO,EAAE,4BAA4B;oBACrC,QAAQ,EAAE,MAAM;iBACnB;aACJ;SACJ,CAAC;KACL;EACJ;AAZY,mBAAmB;IAH/B,QAAQ,CAAC;QACN,SAAS,EAAE,CAAC,oBAAoB,EAAE,0BAA0B,EAAE,aAAa,CAAC;KAC/E,CAAC;GACW,mBAAmB,CAY/B;;ACrBD;;;;;;"}
|
|
@@ -434,8 +434,8 @@ var ExclusionDetailsComponent = /** @class */ (function () {
|
|
|
434
434
|
});
|
|
435
435
|
this._exclusionProcessStatusChangedSubscribe = this._websocketService
|
|
436
436
|
.onEvent({
|
|
437
|
-
domain:
|
|
438
|
-
service:
|
|
437
|
+
domain: this.projectConfigs.getDomain(),
|
|
438
|
+
service: this.projectConfigs.getService(),
|
|
439
439
|
primitive: "exclusionProcessStatusChanged"
|
|
440
440
|
})
|
|
441
441
|
.pipe(takeUntil(this.ngUnsubscribe))
|