@lowcodeunit/applications-flow-common 1.37.180-merge → 1.37.181-integration

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.
@@ -118,13 +118,12 @@ export class RouteCardComponent {
118
118
  let tempRouteChildren = [];
119
119
  tempApps.forEach((appLookup) => {
120
120
  let tempApp = this.RoutedApplications[this.AppRoute][appLookup];
121
- let appPath = tempApp.LookupConfig?.PathRegex.substring(0, tempApp.LookupConfig?.PathRegex.length - 2);
122
121
  let tempAppNode = {
123
122
  lookup: appLookup,
124
123
  name: tempApp.Application.Name,
125
124
  url: 'https://' +
126
125
  this.Project?.Hosts[this.Project?.Hosts?.length - 1] +
127
- appPath,
126
+ this.AppRoute,
128
127
  description: tempApp.Application.Description,
129
128
  routerLink: [
130
129
  '/application',
@@ -180,4 +179,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImpor
180
179
  type: Input,
181
180
  args: ['active-environment-lookup']
182
181
  }] } });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9lbGVtZW50cy9yb3V0ZS1jYXJkL3JvdXRlLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvcm91dGUtY2FyZC9yb3V0ZS1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLGdCQUFnQixHQUNuQixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDOzs7Ozs7Ozs7OztBQVF0SCxNQUFNLE9BQU8sa0JBQWtCO0lBNkkzQixZQUFzQixNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBNUkvQixnQkFBVyxHQUFHLENBQUMsSUFBYyxFQUFFLEtBQWEsRUFBRSxFQUFFO1lBQ3BELE9BQU87Z0JBQ0gsVUFBVSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQ3ZELElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDZixLQUFLLEVBQUUsS0FBSztnQkFDWixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztnQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ25CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVzthQUNoQyxDQUFDO1FBQ04sQ0FBQyxDQUFDO1FBb0dL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dCB7IEZsYXRUcmVlQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7XG4gICAgTWF0VHJlZUZsYXREYXRhU291cmNlLFxuICAgIE1hdFRyZWVGbGF0dGVuZXIsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RyZWUnO1xuaW1wb3J0IHsgRWFDQXBwbGljYXRpb25Bc0NvZGUsIEVhQ1Byb2plY3RBc0NvZGUgfSBmcm9tICdAc2VtYW50aWNqcy9jb21tb24nO1xuaW1wb3J0IHsgTmV3QXBwbGljYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9kaWFsb2dzL25ldy1hcHBsaWNhdGlvbi1kaWFsb2cvbmV3LWFwcGxpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmxhdE5vZGUsIFRyZWVOb2RlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RyZWUtbm9kZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGN1LXJvdXRlLWNhcmQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9yb3V0ZS1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9yb3V0ZS1jYXJkLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFJvdXRlQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSB0cmFuc2Zvcm1lciA9IChub2RlOiBUcmVlTm9kZSwgbGV2ZWw6IG51bWJlcikgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZXhwYW5kYWJsZTogISFub2RlLmNoaWxkcmVuICYmIG5vZGUuY2hpbGRyZW4ubGVuZ3RoID4gMCxcbiAgICAgICAgICAgIG5hbWU6IG5vZGUubmFtZSxcbiAgICAgICAgICAgIGxldmVsOiBsZXZlbCxcbiAgICAgICAgICAgIHJvdXRlckxpbms6IG5vZGUucm91dGVyTGluayxcbiAgICAgICAgICAgIHVybDogbm9kZS51cmwsXG4gICAgICAgICAgICBsb29rdXA6IG5vZGUubG9va3VwLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IG5vZGUuZGVzY3JpcHRpb24sXG4gICAgICAgIH07XG4gICAgfTtcblxuICAgIEBJbnB1dCgnYXBwbGljYXRpb25zLWJhbmsnKVxuICAgIHB1YmxpYyBBcHBsaWNhdGlvbnNCYW5rOiBBcnJheTxFYUNBcHBsaWNhdGlvbkFzQ29kZT47XG5cbiAgICBASW5wdXQoJ2xvYWRpbmcnKVxuICAgIHB1YmxpYyBMb2FkaW5nOiBib29sZWFuO1xuXG4gICAgcHJvdGVjdGVkIGdldCBBcHBsaWNhdGlvbnMoKToge1xuICAgICAgICBbbG9va3VwOiBzdHJpbmddOiBFYUNBcHBsaWNhdGlvbkFzQ29kZTtcbiAgICB9IHtcbiAgICAgICAgY29uc3QgYXBwczogeyBbbG9va3VwOiBzdHJpbmddOiBFYUNBcHBsaWNhdGlvbkFzQ29kZSB9ID0ge307XG5cbiAgICAgICAgdGhpcy5Qcm9qZWN0Py5BcHBsaWNhdGlvbkxvb2t1cHM/LmZvckVhY2goKGFwcExvb2t1cDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBhcHBzW2FwcExvb2t1cF0gPSB0aGlzLkFwcGxpY2F0aW9uc0JhbmtbYXBwTG9va3VwXTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBhcHBzO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgQ3VycmVudFJvdXRlQXBwbGljYXRpb25Mb29rdXBzKCk6IEFycmF5PHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5Sb3V0ZWRBcHBsaWNhdGlvbnNbdGhpcy5BcHBSb3V0ZV0gfHwge30pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgUm91dGVkQXBwbGljYXRpb25zKCk6IHtcbiAgICAgICAgW3JvdXRlOiBzdHJpbmddOiB7IFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH07XG4gICAgfSB7XG4gICAgICAgIGNvbnN0IGFwcExvb2t1cHMgPSBPYmplY3Qua2V5cyh0aGlzLkFwcGxpY2F0aW9ucyk7XG5cbiAgICAgICAgY29uc3QgYXBwcyA9IGFwcExvb2t1cHMubWFwKFxuICAgICAgICAgICAgKGFwcExvb2t1cCkgPT4gdGhpcy5BcHBsaWNhdGlvbnNbYXBwTG9va3VwXVxuICAgICAgICApO1xuXG4gICAgICAgIGxldCBhcHBSb3V0ZXMgPVxuICAgICAgICAgICAgYXBwcy5tYXAoKGFwcCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKFwiQXBwIGZyb20gcHJvamVjdHM6IFwiLCBhcHApO1xuICAgICAgICAgICAgICAgIHJldHVybiBhcHA/Lkxvb2t1cENvbmZpZz8uUGF0aFJlZ2V4LnJlcGxhY2UoJy4qJywgJycpO1xuICAgICAgICAgICAgfSkgfHwgW107XG5cbiAgICAgICAgYXBwUm91dGVzID0gYXBwUm91dGVzLmZpbHRlcigoYXIpID0+IGFyICE9IG51bGwpO1xuXG4gICAgICAgIGxldCByb3V0ZUJhc2VzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICAgIGFwcFJvdXRlcy5mb3JFYWNoKChhcHBSb3V0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYXBwUm91dGVQYXJ0cyA9IGFwcFJvdXRlLnNwbGl0KCcvJyk7XG5cbiAgICAgICAgICAgIGNvbnN0IGFwcFJvdXRlQmFzZSA9IGAvJHthcHBSb3V0ZVBhcnRzWzFdfWA7XG5cbiAgICAgICAgICAgIGlmIChyb3V0ZUJhc2VzLmluZGV4T2YoYXBwUm91dGVCYXNlKSA8IDApIHtcbiAgICAgICAgICAgICAgICByb3V0ZUJhc2VzLnB1c2goYXBwUm91dGVCYXNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGV0IHdvcmtpbmdBcHBMb29rdXBzID0gWy4uLihhcHBMb29rdXBzIHx8IFtdKV07XG5cbiAgICAgICAgcm91dGVCYXNlcyA9IHJvdXRlQmFzZXMuc29ydCgoYSwgYikgPT4gYi5sb2NhbGVDb21wYXJlKGEpKTtcblxuICAgICAgICBjb25zdCByb3V0ZVNldCA9XG4gICAgICAgICAgICByb3V0ZUJhc2VzLnJlZHVjZSgocHJldlJvdXRlTWFwLCBjdXJyZW50Um91dGVCYXNlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgcm91dGVNYXAgPSB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnByZXZSb3V0ZU1hcCxcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgZmlsdGVyZWRBcHBMb29rdXBzID0gd29ya2luZ0FwcExvb2t1cHMuZmlsdGVyKCh3YWwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgd2EgPSB0aGlzLkFwcGxpY2F0aW9uc1t3YWxdO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB3YT8uTG9va3VwQ29uZmlnPy5QYXRoUmVnZXguc3RhcnRzV2l0aChcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRSb3V0ZUJhc2VcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHJvdXRlTWFwW2N1cnJlbnRSb3V0ZUJhc2VdID1cbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyZWRBcHBMb29rdXBzLnJlZHVjZSgocHJldkFwcE1hcCwgYXBwTG9va3VwKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhcHBNYXA6IGFueSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2QXBwTWFwLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYXBwTWFwW2FwcExvb2t1cF0gPSB0aGlzLkFwcGxpY2F0aW9uc1thcHBMb29rdXBdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYXBwTWFwO1xuICAgICAgICAgICAgICAgICAgICB9LCB7fSkgfHwge307XG5cbiAgICAgICAgICAgICAgICB3b3JraW5nQXBwTG9va3VwcyA9IHdvcmtpbmdBcHBMb29rdXBzLmZpbHRlcigod2EpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpbHRlcmVkQXBwTG9va3Vwcy5pbmRleE9mKHdhKSA8IDA7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gcm91dGVNYXA7XG4gICAgICAgICAgICB9LCB7fSkgfHwge307XG5cbiAgICAgICAgbGV0IHJvdXRlU2V0S2V5cyA9IE9iamVjdC5rZXlzKHJvdXRlU2V0KTtcblxuICAgICAgICByb3V0ZVNldEtleXMgPSByb3V0ZVNldEtleXMuc29ydCgoYSwgYikgPT4gYS5sb2NhbGVDb21wYXJlKGIpKTtcblxuICAgICAgICBjb25zdCByb3V0ZVNldFJlc3VsdCA9IHt9O1xuXG4gICAgICAgIHJvdXRlU2V0S2V5cy5mb3JFYWNoKChyc2spID0+IChyb3V0ZVNldFJlc3VsdFtyc2tdID0gcm91dGVTZXRbcnNrXSkpO1xuXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwiQXBwIFJvdXRlczogXCIscm91dGVTZXRSZXN1bHQpXG5cbiAgICAgICAgcmV0dXJuIHJvdXRlU2V0UmVzdWx0O1xuICAgIH1cbiAgICBwdWJsaWMgdHJlZUNvbnRyb2wgPSBuZXcgRmxhdFRyZWVDb250cm9sPEZsYXROb2RlPihcbiAgICAgICAgKG5vZGU6IGFueSkgPT4gbm9kZS5sZXZlbCxcbiAgICAgICAgKG5vZGU6IGFueSkgPT4gbm9kZS5leHBhbmRhYmxlXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCB0cmVlRmxhdHRlbmVyID0gbmV3IE1hdFRyZWVGbGF0dGVuZXIoXG4gICAgICAgIHRoaXMudHJhbnNmb3JtZXIsXG4gICAgICAgIChub2RlOiBhbnkpID0+IG5vZGUubGV2ZWwsXG4gICAgICAgIChub2RlOiBhbnkpID0+IG5vZGUuZXhwYW5kYWJsZSxcbiAgICAgICAgKG5vZGU6IGFueSkgPT4gbm9kZS5jaGlsZHJlblxuICAgICk7XG5cbiAgICBwdWJsaWMgRGF0YVNvdXJjZSA9IG5ldyBNYXRUcmVlRmxhdERhdGFTb3VyY2UoXG4gICAgICAgIHRoaXMudHJlZUNvbnRyb2wsXG4gICAgICAgIHRoaXMudHJlZUZsYXR0ZW5lclxuICAgICk7XG5cbiAgICBASW5wdXQoJ3Byb2plY3QnKVxuICAgIHB1YmxpYyBQcm9qZWN0OiBFYUNQcm9qZWN0QXNDb2RlO1xuXG4gICAgQElucHV0KCdwcm9qZWN0LWxvb2t1cCcpXG4gICAgcHVibGljIFByb2plY3RMb29rdXA6IHN0cmluZztcblxuICAgIEBJbnB1dCgnYWN0aXZlLWVudmlyb25tZW50LWxvb2t1cCcpXG4gICAgcHVibGljIEFjdGl2ZUVudmlyb25tZW50TG9va3VwOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgQXBwbGljYXRpb25Sb3V0ZXM6IEFycmF5PHN0cmluZz47XG5cbiAgICBwdWJsaWMgQXBwUm91dGU6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBkaWFsb2c6IE1hdERpYWxvZykge31cblxuICAgIHB1YmxpYyBIYXNDaGlsZCA9IChfOiBudW1iZXIsIG5vZGU6IEZsYXROb2RlKSA9PiBub2RlLmV4cGFuZGFibGU7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgICBuZ09uQ2hhbmdlcygpIHtcbiAgICAgICAgaWYgKHRoaXMuUHJvamVjdExvb2t1cCAmJiB0aGlzLlByb2plY3QpIHtcbiAgICAgICAgICAgIGxldCB0ZW1wID0gdGhpcy5CdWlsZFJvdXRlVHJlZSgpO1xuXG4gICAgICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy5EYXRhU291cmNlLmRhdGEpICE9PSBKU09OLnN0cmluZ2lmeSh0ZW1wKSkge1xuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdJdHMgZGlmZmVyZW50OiAnLCBKU09OLnN0cmluZ2lmeSh0ZW1wKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5EYXRhU291cmNlLmRhdGEgPSB0ZW1wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIEJ1aWxkUm91dGVUcmVlKCkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnY2FsbGVkIHJvdXRlIHRyZWUnKTtcbiAgICAgICAgbGV0IHRlbXBUcmVlRGF0YTogQXJyYXk8VHJlZU5vZGU+ID0gW107XG5cbiAgICAgICAgdGhpcy5BcHBsaWNhdGlvblJvdXRlcyA9IE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zIHx8IHt9KTtcbiAgICAgICAgaWYgKHRoaXMuQXBwbGljYXRpb25Sb3V0ZXMpIHtcbiAgICAgICAgICAgIC8vIGxldCB0ZW1wUHJvakNoaWxkcmVuOiBBcnJheTxUcmVlTm9kZT4gPSBbXTtcbiAgICAgICAgICAgIHRoaXMuQXBwbGljYXRpb25Sb3V0ZXMuZm9yRWFjaCgoYXBwUm91dGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuQXBwUm91dGUgPSBhcHBSb3V0ZTtcbiAgICAgICAgICAgICAgICAvLyByb3V0ZXJMaW5rOiBbJy9yb3V0ZScsIHRoaXMuQXBwUm91dGUsIHRoaXMuUHJvamVjdExvb2t1cF0sXG5cbiAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlTm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgIHVybDpcbiAgICAgICAgICAgICAgICAgICAgICAgICdodHRwczovLycgK1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Qcm9qZWN0Py5Ib3N0c1t0aGlzLlByb2plY3Q/Lkhvc3RzPy5sZW5ndGggLSAxXSArXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLkFwcFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9yb3V0ZScsIHRoaXMuQXBwUm91dGUsIHRoaXMuUHJvamVjdExvb2t1cF0sXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIGxldCB0ZW1wQXBwcyA9IHRoaXMuQ3VycmVudFJvdXRlQXBwbGljYXRpb25Mb29rdXBzO1xuICAgICAgICAgICAgICAgIGlmICh0ZW1wQXBwcykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlQ2hpbGRyZW46IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuICAgICAgICAgICAgICAgICAgICB0ZW1wQXBwcy5mb3JFYWNoKChhcHBMb29rdXA6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXBBcHAgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUm91dGVkQXBwbGljYXRpb25zW3RoaXMuQXBwUm91dGVdW2FwcExvb2t1cF07XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgYXBwUGF0aCA9IHRlbXBBcHAuTG9va3VwQ29uZmlnPy5QYXRoUmVnZXguc3Vic3RyaW5nKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVtcEFwcC5Mb29rdXBDb25maWc/LlBhdGhSZWdleC5sZW5ndGggLSAyXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcEFwcE5vZGU6IFRyZWVOb2RlID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvb2t1cDogYXBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IHRlbXBBcHAuQXBwbGljYXRpb24uTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdodHRwczovLycgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLlByb2plY3Q/Lkhvc3RzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Qcm9qZWN0Py5Ib3N0cz8ubGVuZ3RoIC0gMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGVtcEFwcC5BcHBsaWNhdGlvbi5EZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvYXBwbGljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBMb29rdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUHJvamVjdExvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBSb3V0ZUNoaWxkcmVuLnB1c2godGVtcEFwcE5vZGUpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGVtcFJvdXRlTm9kZS5jaGlsZHJlbiA9IHRlbXBSb3V0ZUNoaWxkcmVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0ZW1wVHJlZURhdGEucHVzaCh0ZW1wUm91dGVOb2RlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0ZW1wVHJlZURhdGE7XG4gICAgfVxuXG4gICAgcHVibGljIEhhbmRsZVJvdXRlKHJvdXRlOiBzdHJpbmcpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ3JvdXRlOiAnLCByb3V0ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIE9wZW5OZXdBcHBEaWFsb2coZXZlbnQ6IGFueSkge1xuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKE5ld0FwcGxpY2F0aW9uRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICB3aWR0aDogJzYwMHB4JyxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBwcm9qZWN0TG9va3VwOiB0aGlzLlByb2plY3RMb29rdXAsXG4gICAgICAgICAgICAgICAgZW52aXJvbm1lbnRMb29rdXA6IHRoaXMuQWN0aXZlRW52aXJvbm1lbnRMb29rdXAsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnVGhlIGRpYWxvZyB3YXMgY2xvc2VkJyk7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcInJlc3VsdDpcIiwgcmVzdWx0KVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8IS0tIFRSRUUgLS0+XG48bGN1LXNsb3R0ZWQtY2FyZC1sZ1xuICAgICpuZ0lmPVwiUHJvamVjdExvb2t1cFwiXG4gICAgY2xhc3M9XCJmaXQtY29udGVudFwiXG4gICAgY2FyZC10aXRsZT1cIlJvdXRlXCJcbiAgICBidXR0b24tdGV4dD1cIkFkZCBSb3V0ZVwiXG4gICAgaWNvbj1cInJvdXRlXCJcbiAgICBbbG9hZGluZ109XCJMb2FkaW5nXCJcbiAgICBbbWFpbi1zbG90LWRlc2NyaXB0aW9uXT1cIkFwcGxpY2F0aW9uUm91dGVzPy5sZW5ndGggKyAnIHJvdXRlKHMpIGNvbmZpZ3VyZWQnXCJcbiAgICAobWFpbi1hY3Rpb24tY2xpY2tlZCk9XCJPcGVuTmV3QXBwRGlhbG9nKCRldmVudClcIlxuPlxuICAgIDwhLS0gPGRpdj4gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkRhdGFTb3VyY2VcIj5cbiAgICAgICAgPG1hdC10cmVlIFtkYXRhU291cmNlXT1cIkRhdGFTb3VyY2VcIiBbdHJlZUNvbnRyb2xdPVwidHJlZUNvbnRyb2xcIj5cbiAgICAgICAgICAgIDxtYXQtdHJlZS1ub2RlICptYXRUcmVlTm9kZURlZj1cImxldCBub2RlXCIgbWF0VHJlZU5vZGVQYWRkaW5nPlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWhlYWRlci1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidHJlZS1oZWFkZXJcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbnMtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwic3BhY2UtYXJvdW5kIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkVkaXQge3sgbm9kZS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+ZWRpdDwvbWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibm9kZS51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkxhdW5jaCB7eyBub2RlLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5sYXVuY2g8L21hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tIDxidXR0b24gbWF0LWljb24tYnV0dG9uPjwvYnV0dG9uPiAtLT5cbiAgICAgICAgICAgIDwvbWF0LXRyZWUtbm9kZT5cbiAgICAgICAgICAgIDxtYXQtdHJlZS1ub2RlXG4gICAgICAgICAgICAgICAgKm1hdFRyZWVOb2RlRGVmPVwibGV0IG5vZGU7IHdoZW46IEhhc0NoaWxkXCJcbiAgICAgICAgICAgICAgICBtYXRUcmVlTm9kZVBhZGRpbmdcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXRUcmVlTm9kZVRvZ2dsZVxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidUb2dnbGUgJyArIG5vZGUubmFtZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyZWVDb250cm9sLmlzRXhwYW5kZWQobm9kZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBcImV4cGFuZF9tb3JlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcImNoZXZyb25fcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1oZWFkZXItYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLm5hbWVcIiBjbGFzcz1cInNsb3QtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5kZXNjcmlwdGlvblwiIGNsYXNzPVwic2xvdC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRyZWUtaGVhZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLm5hbWVcIiBjbGFzcz1cInNsb3QtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5kZXNjcmlwdGlvblwiIGNsYXNzPVwic2xvdC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb25zLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWFyb3VuZCBjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb24tYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJFZGl0IHt7IG5vZGUubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPmVkaXQ8L21hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb24tYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIm5vZGUudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJMYXVuY2gge3sgbm9kZS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+bGF1bmNoPC9tYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC10cmVlLW5vZGU+XG4gICAgICAgIDwvbWF0LXRyZWU+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2xjdS1zbG90dGVkLWNhcmQtbGc+XG4iXX0=
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb24vc3JjL2xpYi9lbGVtZW50cy9yb3V0ZS1jYXJkL3JvdXRlLWNhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9uL3NyYy9saWIvZWxlbWVudHMvcm91dGUtY2FyZC9yb3V0ZS1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLGdCQUFnQixHQUNuQixNQUFNLHdCQUF3QixDQUFDO0FBRWhDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHVFQUF1RSxDQUFDOzs7Ozs7Ozs7OztBQVF0SCxNQUFNLE9BQU8sa0JBQWtCO0lBNkkzQixZQUFzQixNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO1FBNUkvQixnQkFBVyxHQUFHLENBQUMsSUFBYyxFQUFFLEtBQWEsRUFBRSxFQUFFO1lBQ3BELE9BQU87Z0JBQ0gsVUFBVSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQ3ZELElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtnQkFDZixLQUFLLEVBQUUsS0FBSztnQkFDWixVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQzNCLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztnQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ25CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVzthQUNoQyxDQUFDO1FBQ04sQ0FBQyxDQUFDO1FBb0dL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QUFHLGlCQUFpQixDQUFDO2lCQUM5QztnQkFDRCxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ3JDLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFDRCxPQUFPLFlBQVksQ0FBQztJQUN4QixDQUFDO0lBRU0sV0FBVyxDQUFDLEtBQWE7UUFDNUIsaUNBQWlDO0lBQ3JDLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxLQUFVO1FBQzlCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDZCQUE2QixFQUFFO1lBQzlELEtBQUssRUFBRSxPQUFPO1lBQ2QsSUFBSSxFQUFFO2dCQUNGLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtnQkFDakMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLHVCQUF1QjthQUNsRDtTQUNKLENBQUMsQ0FBQztRQUVILFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUM5Qyx3Q0FBd0M7WUFDeEMsaUNBQWlDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7K0dBcE9RLGtCQUFrQjttR0FBbEIsa0JBQWtCLDZWQ2hCL0IsNGhMQThJQTsyRkQ5SGEsa0JBQWtCO2tCQUw5QixTQUFTOytCQUNJLGdCQUFnQjtnR0FrQm5CLGdCQUFnQjtzQkFEdEIsS0FBSzt1QkFBQyxtQkFBbUI7Z0JBSW5CLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxTQUFTO2dCQWlIVCxPQUFPO3NCQURiLEtBQUs7dUJBQUMsU0FBUztnQkFJVCxhQUFhO3NCQURuQixLQUFLO3VCQUFDLGdCQUFnQjtnQkFJaEIsdUJBQXVCO3NCQUQ3QixLQUFLO3VCQUFDLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZsYXRUcmVlQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90cmVlJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7XG4gICAgTWF0VHJlZUZsYXREYXRhU291cmNlLFxuICAgIE1hdFRyZWVGbGF0dGVuZXIsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RyZWUnO1xuaW1wb3J0IHsgRWFDQXBwbGljYXRpb25Bc0NvZGUsIEVhQ1Byb2plY3RBc0NvZGUgfSBmcm9tICdAc2VtYW50aWNqcy9jb21tb24nO1xuaW1wb3J0IHsgTmV3QXBwbGljYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi8uLi9kaWFsb2dzL25ldy1hcHBsaWNhdGlvbi1kaWFsb2cvbmV3LWFwcGxpY2F0aW9uLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmxhdE5vZGUsIFRyZWVOb2RlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RyZWUtbm9kZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbGN1LXJvdXRlLWNhcmQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9yb3V0ZS1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9yb3V0ZS1jYXJkLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFJvdXRlQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSB0cmFuc2Zvcm1lciA9IChub2RlOiBUcmVlTm9kZSwgbGV2ZWw6IG51bWJlcikgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZXhwYW5kYWJsZTogISFub2RlLmNoaWxkcmVuICYmIG5vZGUuY2hpbGRyZW4ubGVuZ3RoID4gMCxcbiAgICAgICAgICAgIG5hbWU6IG5vZGUubmFtZSxcbiAgICAgICAgICAgIGxldmVsOiBsZXZlbCxcbiAgICAgICAgICAgIHJvdXRlckxpbms6IG5vZGUucm91dGVyTGluayxcbiAgICAgICAgICAgIHVybDogbm9kZS51cmwsXG4gICAgICAgICAgICBsb29rdXA6IG5vZGUubG9va3VwLFxuICAgICAgICAgICAgZGVzY3JpcHRpb246IG5vZGUuZGVzY3JpcHRpb24sXG4gICAgICAgIH07XG4gICAgfTtcblxuICAgIEBJbnB1dCgnYXBwbGljYXRpb25zLWJhbmsnKVxuICAgIHB1YmxpYyBBcHBsaWNhdGlvbnNCYW5rOiBBcnJheTxFYUNBcHBsaWNhdGlvbkFzQ29kZT47XG5cbiAgICBASW5wdXQoJ2xvYWRpbmcnKVxuICAgIHB1YmxpYyBMb2FkaW5nOiBib29sZWFuO1xuXG4gICAgcHJvdGVjdGVkIGdldCBBcHBsaWNhdGlvbnMoKToge1xuICAgICAgICBbbG9va3VwOiBzdHJpbmddOiBFYUNBcHBsaWNhdGlvbkFzQ29kZTtcbiAgICB9IHtcbiAgICAgICAgY29uc3QgYXBwczogeyBbbG9va3VwOiBzdHJpbmddOiBFYUNBcHBsaWNhdGlvbkFzQ29kZSB9ID0ge307XG5cbiAgICAgICAgdGhpcy5Qcm9qZWN0Py5BcHBsaWNhdGlvbkxvb2t1cHM/LmZvckVhY2goKGFwcExvb2t1cDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBhcHBzW2FwcExvb2t1cF0gPSB0aGlzLkFwcGxpY2F0aW9uc0JhbmtbYXBwTG9va3VwXTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBhcHBzO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgQ3VycmVudFJvdXRlQXBwbGljYXRpb25Mb29rdXBzKCk6IEFycmF5PHN0cmluZz4ge1xuICAgICAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5Sb3V0ZWRBcHBsaWNhdGlvbnNbdGhpcy5BcHBSb3V0ZV0gfHwge30pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgUm91dGVkQXBwbGljYXRpb25zKCk6IHtcbiAgICAgICAgW3JvdXRlOiBzdHJpbmddOiB7IFtsb29rdXA6IHN0cmluZ106IEVhQ0FwcGxpY2F0aW9uQXNDb2RlIH07XG4gICAgfSB7XG4gICAgICAgIGNvbnN0IGFwcExvb2t1cHMgPSBPYmplY3Qua2V5cyh0aGlzLkFwcGxpY2F0aW9ucyk7XG5cbiAgICAgICAgY29uc3QgYXBwcyA9IGFwcExvb2t1cHMubWFwKFxuICAgICAgICAgICAgKGFwcExvb2t1cCkgPT4gdGhpcy5BcHBsaWNhdGlvbnNbYXBwTG9va3VwXVxuICAgICAgICApO1xuXG4gICAgICAgIGxldCBhcHBSb3V0ZXMgPVxuICAgICAgICAgICAgYXBwcy5tYXAoKGFwcCkgPT4ge1xuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKFwiQXBwIGZyb20gcHJvamVjdHM6IFwiLCBhcHApO1xuICAgICAgICAgICAgICAgIHJldHVybiBhcHA/Lkxvb2t1cENvbmZpZz8uUGF0aFJlZ2V4LnJlcGxhY2UoJy4qJywgJycpO1xuICAgICAgICAgICAgfSkgfHwgW107XG5cbiAgICAgICAgYXBwUm91dGVzID0gYXBwUm91dGVzLmZpbHRlcigoYXIpID0+IGFyICE9IG51bGwpO1xuXG4gICAgICAgIGxldCByb3V0ZUJhc2VzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgICAgIGFwcFJvdXRlcy5mb3JFYWNoKChhcHBSb3V0ZSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgYXBwUm91dGVQYXJ0cyA9IGFwcFJvdXRlLnNwbGl0KCcvJyk7XG5cbiAgICAgICAgICAgIGNvbnN0IGFwcFJvdXRlQmFzZSA9IGAvJHthcHBSb3V0ZVBhcnRzWzFdfWA7XG5cbiAgICAgICAgICAgIGlmIChyb3V0ZUJhc2VzLmluZGV4T2YoYXBwUm91dGVCYXNlKSA8IDApIHtcbiAgICAgICAgICAgICAgICByb3V0ZUJhc2VzLnB1c2goYXBwUm91dGVCYXNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgbGV0IHdvcmtpbmdBcHBMb29rdXBzID0gWy4uLihhcHBMb29rdXBzIHx8IFtdKV07XG5cbiAgICAgICAgcm91dGVCYXNlcyA9IHJvdXRlQmFzZXMuc29ydCgoYSwgYikgPT4gYi5sb2NhbGVDb21wYXJlKGEpKTtcblxuICAgICAgICBjb25zdCByb3V0ZVNldCA9XG4gICAgICAgICAgICByb3V0ZUJhc2VzLnJlZHVjZSgocHJldlJvdXRlTWFwLCBjdXJyZW50Um91dGVCYXNlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgcm91dGVNYXAgPSB7XG4gICAgICAgICAgICAgICAgICAgIC4uLnByZXZSb3V0ZU1hcCxcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgY29uc3QgZmlsdGVyZWRBcHBMb29rdXBzID0gd29ya2luZ0FwcExvb2t1cHMuZmlsdGVyKCh3YWwpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgd2EgPSB0aGlzLkFwcGxpY2F0aW9uc1t3YWxdO1xuXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB3YT8uTG9va3VwQ29uZmlnPy5QYXRoUmVnZXguc3RhcnRzV2l0aChcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRSb3V0ZUJhc2VcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHJvdXRlTWFwW2N1cnJlbnRSb3V0ZUJhc2VdID1cbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyZWRBcHBMb29rdXBzLnJlZHVjZSgocHJldkFwcE1hcCwgYXBwTG9va3VwKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBhcHBNYXA6IGFueSA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2QXBwTWFwLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYXBwTWFwW2FwcExvb2t1cF0gPSB0aGlzLkFwcGxpY2F0aW9uc1thcHBMb29rdXBdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYXBwTWFwO1xuICAgICAgICAgICAgICAgICAgICB9LCB7fSkgfHwge307XG5cbiAgICAgICAgICAgICAgICB3b3JraW5nQXBwTG9va3VwcyA9IHdvcmtpbmdBcHBMb29rdXBzLmZpbHRlcigod2EpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpbHRlcmVkQXBwTG9va3Vwcy5pbmRleE9mKHdhKSA8IDA7XG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gcm91dGVNYXA7XG4gICAgICAgICAgICB9LCB7fSkgfHwge307XG5cbiAgICAgICAgbGV0IHJvdXRlU2V0S2V5cyA9IE9iamVjdC5rZXlzKHJvdXRlU2V0KTtcblxuICAgICAgICByb3V0ZVNldEtleXMgPSByb3V0ZVNldEtleXMuc29ydCgoYSwgYikgPT4gYS5sb2NhbGVDb21wYXJlKGIpKTtcblxuICAgICAgICBjb25zdCByb3V0ZVNldFJlc3VsdCA9IHt9O1xuXG4gICAgICAgIHJvdXRlU2V0S2V5cy5mb3JFYWNoKChyc2spID0+IChyb3V0ZVNldFJlc3VsdFtyc2tdID0gcm91dGVTZXRbcnNrXSkpO1xuXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwiQXBwIFJvdXRlczogXCIscm91dGVTZXRSZXN1bHQpXG5cbiAgICAgICAgcmV0dXJuIHJvdXRlU2V0UmVzdWx0O1xuICAgIH1cbiAgICBwdWJsaWMgdHJlZUNvbnRyb2wgPSBuZXcgRmxhdFRyZWVDb250cm9sPEZsYXROb2RlPihcbiAgICAgICAgKG5vZGU6IGFueSkgPT4gbm9kZS5sZXZlbCxcbiAgICAgICAgKG5vZGU6IGFueSkgPT4gbm9kZS5leHBhbmRhYmxlXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCB0cmVlRmxhdHRlbmVyID0gbmV3IE1hdFRyZWVGbGF0dGVuZXIoXG4gICAgICAgIHRoaXMudHJhbnNmb3JtZXIsXG4gICAgICAgIChub2RlOiBhbnkpID0+IG5vZGUubGV2ZWwsXG4gICAgICAgIChub2RlOiBhbnkpID0+IG5vZGUuZXhwYW5kYWJsZSxcbiAgICAgICAgKG5vZGU6IGFueSkgPT4gbm9kZS5jaGlsZHJlblxuICAgICk7XG5cbiAgICBwdWJsaWMgRGF0YVNvdXJjZSA9IG5ldyBNYXRUcmVlRmxhdERhdGFTb3VyY2UoXG4gICAgICAgIHRoaXMudHJlZUNvbnRyb2wsXG4gICAgICAgIHRoaXMudHJlZUZsYXR0ZW5lclxuICAgICk7XG5cbiAgICBASW5wdXQoJ3Byb2plY3QnKVxuICAgIHB1YmxpYyBQcm9qZWN0OiBFYUNQcm9qZWN0QXNDb2RlO1xuXG4gICAgQElucHV0KCdwcm9qZWN0LWxvb2t1cCcpXG4gICAgcHVibGljIFByb2plY3RMb29rdXA6IHN0cmluZztcblxuICAgIEBJbnB1dCgnYWN0aXZlLWVudmlyb25tZW50LWxvb2t1cCcpXG4gICAgcHVibGljIEFjdGl2ZUVudmlyb25tZW50TG9va3VwOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgQXBwbGljYXRpb25Sb3V0ZXM6IEFycmF5PHN0cmluZz47XG5cbiAgICBwdWJsaWMgQXBwUm91dGU6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBkaWFsb2c6IE1hdERpYWxvZykge31cblxuICAgIHB1YmxpYyBIYXNDaGlsZCA9IChfOiBudW1iZXIsIG5vZGU6IEZsYXROb2RlKSA9PiBub2RlLmV4cGFuZGFibGU7XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgICBuZ09uQ2hhbmdlcygpIHtcbiAgICAgICAgaWYgKHRoaXMuUHJvamVjdExvb2t1cCAmJiB0aGlzLlByb2plY3QpIHtcbiAgICAgICAgICAgIGxldCB0ZW1wID0gdGhpcy5CdWlsZFJvdXRlVHJlZSgpO1xuXG4gICAgICAgICAgICBpZiAoSlNPTi5zdHJpbmdpZnkodGhpcy5EYXRhU291cmNlLmRhdGEpICE9PSBKU09OLnN0cmluZ2lmeSh0ZW1wKSkge1xuICAgICAgICAgICAgICAgIC8vIGNvbnNvbGUubG9nKCdJdHMgZGlmZmVyZW50OiAnLCBKU09OLnN0cmluZ2lmeSh0ZW1wKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5EYXRhU291cmNlLmRhdGEgPSB0ZW1wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIEJ1aWxkUm91dGVUcmVlKCkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnY2FsbGVkIHJvdXRlIHRyZWUnKTtcbiAgICAgICAgbGV0IHRlbXBUcmVlRGF0YTogQXJyYXk8VHJlZU5vZGU+ID0gW107XG5cbiAgICAgICAgdGhpcy5BcHBsaWNhdGlvblJvdXRlcyA9IE9iamVjdC5rZXlzKHRoaXMuUm91dGVkQXBwbGljYXRpb25zIHx8IHt9KTtcbiAgICAgICAgaWYgKHRoaXMuQXBwbGljYXRpb25Sb3V0ZXMpIHtcbiAgICAgICAgICAgIC8vIGxldCB0ZW1wUHJvakNoaWxkcmVuOiBBcnJheTxUcmVlTm9kZT4gPSBbXTtcbiAgICAgICAgICAgIHRoaXMuQXBwbGljYXRpb25Sb3V0ZXMuZm9yRWFjaCgoYXBwUm91dGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuQXBwUm91dGUgPSBhcHBSb3V0ZTtcbiAgICAgICAgICAgICAgICAvLyByb3V0ZXJMaW5rOiBbJy9yb3V0ZScsIHRoaXMuQXBwUm91dGUsIHRoaXMuUHJvamVjdExvb2t1cF0sXG5cbiAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlTm9kZTogVHJlZU5vZGUgPSB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgIHVybDpcbiAgICAgICAgICAgICAgICAgICAgICAgICdodHRwczovLycgK1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Qcm9qZWN0Py5Ib3N0c1t0aGlzLlByb2plY3Q/Lkhvc3RzPy5sZW5ndGggLSAxXSArXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLkFwcFJvdXRlLFxuICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbJy9yb3V0ZScsIHRoaXMuQXBwUm91dGUsIHRoaXMuUHJvamVjdExvb2t1cF0sXG4gICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgIGxldCB0ZW1wQXBwcyA9IHRoaXMuQ3VycmVudFJvdXRlQXBwbGljYXRpb25Mb29rdXBzO1xuICAgICAgICAgICAgICAgIGlmICh0ZW1wQXBwcykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcFJvdXRlQ2hpbGRyZW46IEFycmF5PFRyZWVOb2RlPiA9IFtdO1xuICAgICAgICAgICAgICAgICAgICB0ZW1wQXBwcy5mb3JFYWNoKChhcHBMb29rdXA6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXBBcHAgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUm91dGVkQXBwbGljYXRpb25zW3RoaXMuQXBwUm91dGVdW2FwcExvb2t1cF07XG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGVtcEFwcE5vZGU6IFRyZWVOb2RlID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvb2t1cDogYXBwTG9va3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IHRlbXBBcHAuQXBwbGljYXRpb24uTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdodHRwczovLycgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLlByb2plY3Q/Lkhvc3RzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5Qcm9qZWN0Py5Ib3N0cz8ubGVuZ3RoIC0gMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5BcHBSb3V0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdGVtcEFwcC5BcHBsaWNhdGlvbi5EZXNjcmlwdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcvYXBwbGljYXRpb24nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBMb29rdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuQXBwUm91dGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuUHJvamVjdExvb2t1cCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBSb3V0ZUNoaWxkcmVuLnB1c2godGVtcEFwcE5vZGUpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgdGVtcFJvdXRlTm9kZS5jaGlsZHJlbiA9IHRlbXBSb3V0ZUNoaWxkcmVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0ZW1wVHJlZURhdGEucHVzaCh0ZW1wUm91dGVOb2RlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0ZW1wVHJlZURhdGE7XG4gICAgfVxuXG4gICAgcHVibGljIEhhbmRsZVJvdXRlKHJvdXRlOiBzdHJpbmcpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ3JvdXRlOiAnLCByb3V0ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIE9wZW5OZXdBcHBEaWFsb2coZXZlbnQ6IGFueSkge1xuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKE5ld0FwcGxpY2F0aW9uRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICB3aWR0aDogJzYwMHB4JyxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBwcm9qZWN0TG9va3VwOiB0aGlzLlByb2plY3RMb29rdXAsXG4gICAgICAgICAgICAgICAgZW52aXJvbm1lbnRMb29rdXA6IHRoaXMuQWN0aXZlRW52aXJvbm1lbnRMb29rdXAsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZygnVGhlIGRpYWxvZyB3YXMgY2xvc2VkJyk7XG4gICAgICAgICAgICAvLyBjb25zb2xlLmxvZyhcInJlc3VsdDpcIiwgcmVzdWx0KVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8IS0tIFRSRUUgLS0+XG48bGN1LXNsb3R0ZWQtY2FyZC1sZ1xuICAgICpuZ0lmPVwiUHJvamVjdExvb2t1cFwiXG4gICAgY2xhc3M9XCJmaXQtY29udGVudFwiXG4gICAgY2FyZC10aXRsZT1cIlJvdXRlXCJcbiAgICBidXR0b24tdGV4dD1cIkFkZCBSb3V0ZVwiXG4gICAgaWNvbj1cInJvdXRlXCJcbiAgICBbbG9hZGluZ109XCJMb2FkaW5nXCJcbiAgICBbbWFpbi1zbG90LWRlc2NyaXB0aW9uXT1cIkFwcGxpY2F0aW9uUm91dGVzPy5sZW5ndGggKyAnIHJvdXRlKHMpIGNvbmZpZ3VyZWQnXCJcbiAgICAobWFpbi1hY3Rpb24tY2xpY2tlZCk9XCJPcGVuTmV3QXBwRGlhbG9nKCRldmVudClcIlxuPlxuICAgIDwhLS0gPGRpdj4gLS0+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIkRhdGFTb3VyY2VcIj5cbiAgICAgICAgPG1hdC10cmVlIFtkYXRhU291cmNlXT1cIkRhdGFTb3VyY2VcIiBbdHJlZUNvbnRyb2xdPVwidHJlZUNvbnRyb2xcIj5cbiAgICAgICAgICAgIDxtYXQtdHJlZS1ub2RlICptYXRUcmVlTm9kZURlZj1cImxldCBub2RlXCIgbWF0VHJlZU5vZGVQYWRkaW5nPlxuICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWhlYWRlci1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIW5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidHJlZS1oZWFkZXJcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm5vZGUubmFtZVwiIGNsYXNzPVwic2xvdC1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLm5hbWUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLmRlc2NyaXB0aW9uXCIgY2xhc3M9XCJzbG90LWRlc2NyaXB0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBub2RlLmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbnMtY29udGFpbmVyXCJcbiAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXQ9XCJyb3dcIlxuICAgICAgICAgICAgICAgICAgICBmeExheW91dEFsaWduPVwic3BhY2UtYXJvdW5kIGNlbnRlclwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkVkaXQge3sgbm9kZS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+ZWRpdDwvbWF0LWljb25cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzbG90LWFjdGlvbi1hbmNob3JcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2hyZWZdPVwibm9kZS51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cIkxhdW5jaCB7eyBub2RlLm5hbWUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5sYXVuY2g8L21hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8IS0tIDxidXR0b24gbWF0LWljb24tYnV0dG9uPjwvYnV0dG9uPiAtLT5cbiAgICAgICAgICAgIDwvbWF0LXRyZWUtbm9kZT5cbiAgICAgICAgICAgIDxtYXQtdHJlZS1ub2RlXG4gICAgICAgICAgICAgICAgKm1hdFRyZWVOb2RlRGVmPVwibGV0IG5vZGU7IHdoZW46IEhhc0NoaWxkXCJcbiAgICAgICAgICAgICAgICBtYXRUcmVlTm9kZVBhZGRpbmdcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBtYXRUcmVlTm9kZVRvZ2dsZVxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidUb2dnbGUgJyArIG5vZGUubmFtZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyZWVDb250cm9sLmlzRXhwYW5kZWQobm9kZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBcImV4cGFuZF9tb3JlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBcImNoZXZyb25fcmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1oZWFkZXItYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLm5hbWVcIiBjbGFzcz1cInNsb3QtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5kZXNjcmlwdGlvblwiIGNsYXNzPVwic2xvdC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFub2RlLnJvdXRlckxpbmtcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRyZWUtaGVhZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub2RlLm5hbWVcIiBjbGFzcz1cInNsb3QtbmFtZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5uYW1lIH19XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm9kZS5kZXNjcmlwdGlvblwiIGNsYXNzPVwic2xvdC1kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgbm9kZS5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb25zLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgICAgICAgIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgICAgICAgICAgICAgICAgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWFyb3VuZCBjZW50ZXJcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm9kZS5yb3V0ZXJMaW5rXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb24tYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIm5vZGUucm91dGVyTGlua1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJFZGl0IHt7IG5vZGUubmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPmVkaXQ8L21hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2xvdC1hY3Rpb24tYW5jaG9yXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtocmVmXT1cIm5vZGUudXJsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldD1cIl9ibGFua1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWljb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJMYXVuY2gge3sgbm9kZS5uYW1lIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+bGF1bmNoPC9tYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L21hdC10cmVlLW5vZGU+XG4gICAgICAgIDwvbWF0LXRyZWU+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2xjdS1zbG90dGVkLWNhcmQtbGc+XG4iXX0=
@@ -4265,12 +4265,9 @@ class DevopsSourceControlFormComponent {
4265
4265
  }
4266
4266
  SaveSourceControl() {
4267
4267
  const saveEnvReq = {
4268
- Environment: {
4269
- // ...this.Environment,
4270
- Sources: this.Environment.Sources || {},
4271
- },
4272
- // EnvironmentLookup: this.EnvironmentLookup,
4273
- // EnterpriseDataTokens: {},
4268
+ Environment: Object.assign(Object.assign({}, this.Environment), { Sources: this.Environment.Sources || {} }),
4269
+ EnvironmentLookup: this.EnvironmentLookup,
4270
+ EnterpriseDataTokens: {},
4274
4271
  };
4275
4272
  let source = Object.assign(Object.assign({}, this.EditingSourceControl), { Branches: this.SelectedBranches, MainBranch: this.MainBranchFormControl.value });
4276
4273
  source = Object.assign(Object.assign({}, source), { Type: 'GitHub', Name: `@${this.OrganizationFormControl.value}/${this.RepositoryFormControl.value}`, DevOpsActionTriggerLookups: [this.DevOpsActionLookup], Organization: this.OrganizationFormControl.value, Repository: this.RepositoryFormControl.value });
@@ -5504,21 +5501,12 @@ class BuildPipelineFormComponent {
5504
5501
  SaveEnvironment() {
5505
5502
  var _a;
5506
5503
  const saveEnvReq = {
5507
- Environment: {
5508
- // ...this.Environment,
5509
- Artifacts: this.Environment.Artifacts || {},
5510
- // DevOpsActions: this.Environment.DevOpsActions || {},
5511
- // Secrets: this.Environment.Secrets || {},
5512
- // Sources: this.Environment.Sources || {},
5513
- },
5514
- // EnvironmentLookup: this.EnvironmentLookup,
5515
- // EnterpriseDataTokens: {},
5504
+ Environment: Object.assign(Object.assign({}, this.Environment), { Artifacts: this.Environment.Artifacts || {}, DevOpsActions: this.Environment.DevOpsActions || {}, Secrets: this.Environment.Secrets || {}, Sources: this.Environment.Sources || {} }),
5505
+ EnvironmentLookup: this.EnvironmentLookup,
5506
+ EnterpriseDataTokens: {},
5516
5507
  };
5517
5508
  let artifactLookup;
5518
- let artifact = {
5519
- // ...this.Artifact,
5520
- // ...this.SelectedHostingOptionInputControlValues,
5521
- };
5509
+ let artifact = Object.assign(Object.assign({}, this.Artifact), this.SelectedHostingOptionInputControlValues);
5522
5510
  if (!this.ArtifactLookup) {
5523
5511
  artifactLookup = Guid.CreateRaw();
5524
5512
  artifact = Object.assign(Object.assign({}, artifact), { Type: this.SelectedHostingOption.ArtifactType, Name: this.SelectedHostingOption.Name, NPMRegistry: 'https://registry.npmjs.org/' });
@@ -5534,14 +5522,14 @@ class BuildPipelineFormComponent {
5534
5522
  if ((_a = this.NPMTokenFormControl) === null || _a === void 0 ? void 0 : _a.value) {
5535
5523
  const secretLookup = 'npm-access-token';
5536
5524
  doa.SecretLookups = [secretLookup];
5537
- if (!saveEnvReq.Environment.Secrets[secretLookup]) {
5538
- saveEnvReq.Environment.Secrets[secretLookup] = {
5539
- Name: 'NPM Access Token',
5540
- DataTokenLookup: secretLookup,
5541
- KnownAs: 'NPM_TOKEN',
5542
- };
5543
- }
5525
+ saveEnvReq.Environment.Secrets[secretLookup] = {
5526
+ Name: 'NPM Access Token',
5527
+ DataTokenLookup: secretLookup,
5528
+ KnownAs: 'NPM_TOKEN',
5529
+ };
5544
5530
  saveEnvReq.EnterpriseDataTokens[secretLookup] = {
5531
+ Name: saveEnvReq.Environment.Secrets[secretLookup].Name,
5532
+ Description: saveEnvReq.Environment.Secrets[secretLookup].Name,
5545
5533
  Value: this.NPMTokenFormControl.value,
5546
5534
  };
5547
5535
  }
@@ -5552,7 +5540,6 @@ class BuildPipelineFormComponent {
5552
5540
  const doa = Object.assign(Object.assign({}, this.DevOpsAction), { Name: this.DevOpsActionNameFormControl.value });
5553
5541
  saveEnvReq.Environment.DevOpsActions[devOpsActionLookup] = doa;
5554
5542
  }
5555
- console.log('env req: ', saveEnvReq);
5556
5543
  this.eacSvc.SaveEnvironmentAsCode(saveEnvReq).then((res) => {
5557
5544
  this.ResponseEvent.emit(res);
5558
5545
  });
@@ -8346,10 +8333,10 @@ class DashboardToolbarComponent {
8346
8333
  }
8347
8334
  }
8348
8335
  DashboardToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: DashboardToolbarComponent, deps: [{ token: i1$4.BreakpointObserver }, { token: EaCService }], target: i0.ɵɵFactoryTarget.Component });
8349
- DashboardToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: DashboardToolbarComponent, selector: "lcu-dashboard-toolbar", inputs: { AppLookup: ["app-lookup", "AppLookup"], ProjectLookups: ["project-lookups", "ProjectLookups"], Loading: ["loading", "Loading"], ProjectLookup: ["project-lookup", "ProjectLookup"] }, ngImport: i0, template: "<mat-toolbar class=\"dashboard-toolbar\">\n <a class=\"toolbar-item\" href=\"/dashboard\" fxLayoutAlign=\"center center\">\n <mat-icon>home</mat-icon>\n </a>\n\n <div class=\"vl\"></div>\n\n <ng-container *ngIf=\"ProjectLookups && !ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams/{{ ProjectLookup }}\"\n >Teams</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <!-- <a class=\"toolbar-item disabled\" href=\"/dashboard/state-config\"\n >State Config</a\n >\n <div class=\"vl\"></div> -->\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container>\n\n <!-- <ng-container *ngIf=\"AppLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/state-config/{{ ProjectLookup }}/{{ AppLookup }}\"\n >State Config</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container> -->\n</mat-toolbar>\n", styles: [".dashboard-toolbar{background-color:#fff}.toolbar-item{margin:10px;text-decoration:none;color:#000}.vl{border-left:2px solid black;height:20px}.disabled{color:gray;pointer-events:none}@media only screen and (max-width: 959px){.dashboard-toolbar{height:45px}.toolbar-item{font-size:11px;margin:5px}.vl{border-left:1px solid black;height:12px}}\n"], components: [{ type: i4$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7$3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7$2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
8336
+ DashboardToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.2", type: DashboardToolbarComponent, selector: "lcu-dashboard-toolbar", inputs: { AppLookup: ["app-lookup", "AppLookup"], ProjectLookups: ["project-lookups", "ProjectLookups"], Loading: ["loading", "Loading"], ProjectLookup: ["project-lookup", "ProjectLookup"] }, ngImport: i0, template: "<mat-toolbar class=\"dashboard-toolbar\">\n <a class=\"toolbar-item\" href=\"/dashboard\" fxLayoutAlign=\"center center\">\n <mat-icon>home</mat-icon>\n </a>\n\n <div class=\"vl\"></div>\n\n <ng-container *ngIf=\"ProjectLookups\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <!-- <a class=\"toolbar-item disabled\" href=\"/dashboard/state-config\"\n >State Config</a\n >\n <div class=\"vl\"></div> -->\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container>\n\n <!-- <ng-container *ngIf=\"AppLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/state-config/{{ ProjectLookup }}/{{ AppLookup }}\"\n >State Config</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container> -->\n</mat-toolbar>\n", styles: [".dashboard-toolbar{background-color:#fff}.toolbar-item{margin:10px;text-decoration:none;color:#000}.vl{border-left:2px solid black;height:20px}.disabled{color:gray;pointer-events:none}@media only screen and (max-width: 959px){.dashboard-toolbar{height:45px}.toolbar-item{font-size:11px;margin:5px}.vl{border-left:1px solid black;height:12px}}\n"], components: [{ type: i4$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i7$3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7$2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
8350
8337
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: DashboardToolbarComponent, decorators: [{
8351
8338
  type: Component,
8352
- args: [{ selector: 'lcu-dashboard-toolbar', template: "<mat-toolbar class=\"dashboard-toolbar\">\n <a class=\"toolbar-item\" href=\"/dashboard\" fxLayoutAlign=\"center center\">\n <mat-icon>home</mat-icon>\n </a>\n\n <div class=\"vl\"></div>\n\n <ng-container *ngIf=\"ProjectLookups && !ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams/{{ ProjectLookup }}\"\n >Teams</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <!-- <a class=\"toolbar-item disabled\" href=\"/dashboard/state-config\"\n >State Config</a\n >\n <div class=\"vl\"></div> -->\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container>\n\n <!-- <ng-container *ngIf=\"AppLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/state-config/{{ ProjectLookup }}/{{ AppLookup }}\"\n >State Config</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container> -->\n</mat-toolbar>\n", styles: [".dashboard-toolbar{background-color:#fff}.toolbar-item{margin:10px;text-decoration:none;color:#000}.vl{border-left:2px solid black;height:20px}.disabled{color:gray;pointer-events:none}@media only screen and (max-width: 959px){.dashboard-toolbar{height:45px}.toolbar-item{font-size:11px;margin:5px}.vl{border-left:1px solid black;height:12px}}\n"] }]
8339
+ args: [{ selector: 'lcu-dashboard-toolbar', template: "<mat-toolbar class=\"dashboard-toolbar\">\n <a class=\"toolbar-item\" href=\"/dashboard\" fxLayoutAlign=\"center center\">\n <mat-icon>home</mat-icon>\n </a>\n\n <div class=\"vl\"></div>\n\n <ng-container *ngIf=\"ProjectLookups\">\n <a class=\"toolbar-item\" href=\"/dashboard/enterprise\">Overview</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/projects\">Projects</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a\n *ngIf=\"ProjectLookups?.length > 0 || Loading\"\n class=\"toolbar-item\"\n href=\"/dashboard/devops\"\n >DevOps</a\n >\n <a\n *ngIf=\"ProjectLookups?.length <= 0 && !Loading\"\n matTooltip=\"Add a project to unlock this feature\"\n class=\"toolbar-item disabled\"\n >DevOps</a\n >\n <div class=\"vl\"></div>\n\n <!-- <span>Domains</span> -->\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers\">Mods</a>\n <!-- <span>Manage (krakyn)</span> -->\n </ng-container>\n\n <ng-container *ngIf=\"ProjectLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <!-- <a class=\"toolbar-item disabled\" href=\"/dashboard/state-config\"\n >State Config</a\n >\n <div class=\"vl\"></div> -->\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container>\n\n <!-- <ng-container *ngIf=\"AppLookup\">\n <a class=\"toolbar-item\" href=\"/dashboard/project/{{ ProjectLookup }}\"\n >Project Overview</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/applications/{{ ProjectLookup }}\"\n >Routes</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/teams\">Teams</a>\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/domains/{{ ProjectLookup }}\"\n >Domains</a\n >\n <div class=\"vl\"></div>\n\n <a\n class=\"toolbar-item\"\n href=\"/dashboard/state-config/{{ ProjectLookup }}/{{ AppLookup }}\"\n >State Config</a\n >\n <div class=\"vl\"></div>\n\n <a class=\"toolbar-item\" href=\"/dashboard/modifiers/{{ ProjectLookup }}\"\n >Mods</a\n >\n </ng-container> -->\n</mat-toolbar>\n", styles: [".dashboard-toolbar{background-color:#fff}.toolbar-item{margin:10px;text-decoration:none;color:#000}.vl{border-left:2px solid black;height:20px}.disabled{color:gray;pointer-events:none}@media only screen and (max-width: 959px){.dashboard-toolbar{height:45px}.toolbar-item{font-size:11px;margin:5px}.vl{border-left:1px solid black;height:12px}}\n"] }]
8353
8340
  }], ctorParameters: function () { return [{ type: i1$4.BreakpointObserver }, { type: EaCService }]; }, propDecorators: { AppLookup: [{
8354
8341
  type: Input,
8355
8342
  args: ['app-lookup']
@@ -8488,15 +8475,14 @@ class ProjectCardComponent {
8488
8475
  if (tempApps) {
8489
8476
  let tempRouteChildren = [];
8490
8477
  tempApps.forEach((appLookup) => {
8491
- var _a, _b, _c;
8478
+ var _a;
8492
8479
  let tempApp = this.RoutedApplications[this.AppRoute][appLookup];
8493
- let appPath = (_a = tempApp.LookupConfig) === null || _a === void 0 ? void 0 : _a.PathRegex.substring(0, ((_b = tempApp.LookupConfig) === null || _b === void 0 ? void 0 : _b.PathRegex.length) - 2);
8494
8480
  let tempAppNode = {
8495
8481
  lookup: appLookup,
8496
8482
  name: tempApp.Application.Name,
8497
8483
  url: 'https://' +
8498
- (tempProj === null || tempProj === void 0 ? void 0 : tempProj.Hosts[((_c = tempProj === null || tempProj === void 0 ? void 0 : tempProj.Hosts) === null || _c === void 0 ? void 0 : _c.length) - 1]) +
8499
- appPath,
8484
+ (tempProj === null || tempProj === void 0 ? void 0 : tempProj.Hosts[((_a = tempProj === null || tempProj === void 0 ? void 0 : tempProj.Hosts) === null || _a === void 0 ? void 0 : _a.length) - 1]) +
8485
+ this.AppRoute,
8500
8486
  description: tempApp.Application.Description,
8501
8487
  routerLink: [
8502
8488
  '/application',
@@ -8698,15 +8684,14 @@ class RouteCardComponent {
8698
8684
  if (tempApps) {
8699
8685
  let tempRouteChildren = [];
8700
8686
  tempApps.forEach((appLookup) => {
8701
- var _a, _b, _c, _d, _e;
8687
+ var _a, _b, _c;
8702
8688
  let tempApp = this.RoutedApplications[this.AppRoute][appLookup];
8703
- let appPath = (_a = tempApp.LookupConfig) === null || _a === void 0 ? void 0 : _a.PathRegex.substring(0, ((_b = tempApp.LookupConfig) === null || _b === void 0 ? void 0 : _b.PathRegex.length) - 2);
8704
8689
  let tempAppNode = {
8705
8690
  lookup: appLookup,
8706
8691
  name: tempApp.Application.Name,
8707
8692
  url: 'https://' +
8708
- ((_c = this.Project) === null || _c === void 0 ? void 0 : _c.Hosts[((_e = (_d = this.Project) === null || _d === void 0 ? void 0 : _d.Hosts) === null || _e === void 0 ? void 0 : _e.length) - 1]) +
8709
- appPath,
8693
+ ((_a = this.Project) === null || _a === void 0 ? void 0 : _a.Hosts[((_c = (_b = this.Project) === null || _b === void 0 ? void 0 : _b.Hosts) === null || _c === void 0 ? void 0 : _c.length) - 1]) +
8694
+ this.AppRoute,
8710
8695
  description: tempApp.Application.Description,
8711
8696
  routerLink: [
8712
8697
  '/application',
@@ -8843,10 +8828,10 @@ class ApplicationsCardComponent {
8843
8828
  }
8844
8829
  ngOnInit() { }
8845
8830
  ngOnChanges() {
8846
- // console.log('app bank: ', this.ApplicationsBank);
8831
+ console.log('app bank: ', this.ApplicationsBank);
8847
8832
  if (this.ApplicationsBank) {
8848
8833
  let temp = this.BuildProjectTree();
8849
- // console.log('to string: ', JSON.stringify(temp));
8834
+ console.log('to string: ', JSON.stringify(temp));
8850
8835
  if (JSON.stringify(this.DataSource.data) !== JSON.stringify(temp)) {
8851
8836
  // console.log('Its different')
8852
8837
  this.DataSource.data = temp;
@@ -8863,16 +8848,14 @@ class ApplicationsCardComponent {
8863
8848
  if (tempApps) {
8864
8849
  let tempRouteChildren = [];
8865
8850
  tempApps.forEach((appLookup) => {
8866
- var _a, _b, _c, _d, _e;
8851
+ var _a, _b, _c;
8867
8852
  let tempApp = this.RoutedApplications[this.AppRoute][appLookup];
8868
- console.log('tempApp: ', tempApp);
8869
- let appPath = (_a = tempApp.LookupConfig) === null || _a === void 0 ? void 0 : _a.PathRegex.substring(0, ((_b = tempApp.LookupConfig) === null || _b === void 0 ? void 0 : _b.PathRegex.length) - 2);
8870
8853
  let tempAppNode = {
8871
8854
  lookup: appLookup,
8872
8855
  name: tempApp.Application.Name,
8873
8856
  url: 'https://' +
8874
- ((_c = this.Project) === null || _c === void 0 ? void 0 : _c.Hosts[((_e = (_d = this.Project) === null || _d === void 0 ? void 0 : _d.Hosts) === null || _e === void 0 ? void 0 : _e.length) - 1]) +
8875
- appPath,
8857
+ ((_a = this.Project) === null || _a === void 0 ? void 0 : _a.Hosts[((_c = (_b = this.Project) === null || _b === void 0 ? void 0 : _b.Hosts) === null || _c === void 0 ? void 0 : _c.length) - 1]) +
8858
+ this.AppRoute,
8876
8859
  description: tempApp.Application.Description,
8877
8860
  routerLink: [
8878
8861
  '/application',