@openziti/ziti-console-lib 0.4.5 → 0.4.7

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.
Files changed (70) hide show
  1. package/assets/images/visualizer/node-click.png +0 -0
  2. package/assets/styles/ziti.css +1 -0
  3. package/assets/svgs/cursor-pointer.svg +1 -0
  4. package/esm2022/lib/features/config-editor/config-editor.component.mjs +2 -1
  5. package/esm2022/lib/features/data-table/data-table-filter.service.mjs +2 -2
  6. package/esm2022/lib/features/data-table/data-table.component.mjs +24 -3
  7. package/esm2022/lib/features/data-table/data-table.service.mjs +10 -10
  8. package/esm2022/lib/features/data-table/table-filter-bar/filter-bar.component.mjs +4 -2
  9. package/esm2022/lib/features/data-table/table-hidden-columns-bar/hidden-columns-bar.component.mjs +3 -3
  10. package/esm2022/lib/features/extendable/extensions-noop.service.mjs +3 -1
  11. package/esm2022/lib/features/json-view/json-view.component.mjs +13 -3
  12. package/esm2022/lib/features/projectable-forms/configuration/configuration-form.component.mjs +9 -2
  13. package/esm2022/lib/features/projectable-forms/edge-router/edge-router-form.component.mjs +3 -3
  14. package/esm2022/lib/features/projectable-forms/edge-router-policy/edge-router-policy-form.service.mjs +3 -19
  15. package/esm2022/lib/features/projectable-forms/service/service-form.component.mjs +3 -3
  16. package/esm2022/lib/features/projectable-forms/service-edge-router-policy/service-edge-router-policy-form.component.mjs +7 -7
  17. package/esm2022/lib/features/projectable-forms/service-edge-router-policy/service-edge-router-policy-form.service.mjs +3 -19
  18. package/esm2022/lib/features/projectable-forms/service-policy/service-policy-form.service.mjs +4 -28
  19. package/esm2022/lib/features/tag-selector/tag-selector.component.mjs +3 -3
  20. package/esm2022/lib/features/visualizer/network-visualizer/network-visualizer.component.mjs +441 -259
  21. package/esm2022/lib/features/visualizer/network-visualizer/network-visualizer.helper.mjs +180 -63
  22. package/esm2022/lib/features/visualizer/network-visualizer/network-visualizer.treenodeprocessor.mjs +307 -118
  23. package/esm2022/lib/pages/configurations/configurations-page.service.mjs +2 -1
  24. package/esm2022/lib/pages/identities/identities-page.component.mjs +4 -4
  25. package/esm2022/lib/pages/identities/identities-page.service.mjs +11 -1
  26. package/esm2022/lib/services/login-service.class.mjs +1 -1
  27. package/esm2022/lib/services/ziti-controller-data.service.mjs +6 -3
  28. package/esm2022/lib/services/ziti-data.service.mjs +22 -1
  29. package/esm2022/lib/shared/list-page-component.class.mjs +6 -4
  30. package/esm2022/lib/shared/list-page-service.class.mjs +3 -3
  31. package/esm2022/lib/version.mjs +2 -2
  32. package/esm2022/public-api.mjs +2 -1
  33. package/fesm2022/openziti-ziti-console-lib.mjs +1054 -544
  34. package/fesm2022/openziti-ziti-console-lib.mjs.map +1 -1
  35. package/lib/features/config-editor/config-editor.component.d.ts.map +1 -1
  36. package/lib/features/data-table/data-table-filter.service.d.ts +1 -0
  37. package/lib/features/data-table/data-table-filter.service.d.ts.map +1 -1
  38. package/lib/features/data-table/data-table.component.d.ts +5 -1
  39. package/lib/features/data-table/data-table.component.d.ts.map +1 -1
  40. package/lib/features/data-table/data-table.service.d.ts +1 -1
  41. package/lib/features/data-table/data-table.service.d.ts.map +1 -1
  42. package/lib/features/data-table/table-filter-bar/filter-bar.component.d.ts.map +1 -1
  43. package/lib/features/extendable/extensions-noop.service.d.ts +2 -0
  44. package/lib/features/extendable/extensions-noop.service.d.ts.map +1 -1
  45. package/lib/features/json-view/json-view.component.d.ts +1 -0
  46. package/lib/features/json-view/json-view.component.d.ts.map +1 -1
  47. package/lib/features/projectable-forms/configuration/configuration-form.component.d.ts.map +1 -1
  48. package/lib/features/projectable-forms/edge-router-policy/edge-router-policy-form.service.d.ts.map +1 -1
  49. package/lib/features/projectable-forms/service-edge-router-policy/service-edge-router-policy-form.service.d.ts.map +1 -1
  50. package/lib/features/projectable-forms/service-policy/service-policy-form.service.d.ts.map +1 -1
  51. package/lib/features/visualizer/network-visualizer/network-visualizer.component.d.ts +36 -20
  52. package/lib/features/visualizer/network-visualizer/network-visualizer.component.d.ts.map +1 -1
  53. package/lib/features/visualizer/network-visualizer/network-visualizer.helper.d.ts +42 -1
  54. package/lib/features/visualizer/network-visualizer/network-visualizer.helper.d.ts.map +1 -1
  55. package/lib/features/visualizer/network-visualizer/network-visualizer.treenodeprocessor.d.ts +6 -2
  56. package/lib/features/visualizer/network-visualizer/network-visualizer.treenodeprocessor.d.ts.map +1 -1
  57. package/lib/pages/configurations/configurations-page.service.d.ts.map +1 -1
  58. package/lib/pages/identities/identities-page.component.d.ts +1 -1
  59. package/lib/pages/identities/identities-page.component.d.ts.map +1 -1
  60. package/lib/pages/identities/identities-page.service.d.ts.map +1 -1
  61. package/lib/services/login-service.class.d.ts +1 -0
  62. package/lib/services/login-service.class.d.ts.map +1 -1
  63. package/lib/services/ziti-controller-data.service.d.ts.map +1 -1
  64. package/lib/services/ziti-data.service.d.ts +1 -0
  65. package/lib/services/ziti-data.service.d.ts.map +1 -1
  66. package/lib/shared/list-page-component.class.d.ts +3 -1
  67. package/lib/shared/list-page-component.class.d.ts.map +1 -1
  68. package/package.json +1 -1
  69. package/public-api.d.ts +1 -0
  70. package/public-api.d.ts.map +1 -1
@@ -36,27 +36,27 @@ class DataTableService {
36
36
  const tableStateCookie = JSON.stringify(tableState);
37
37
  localStorage.setItem(`ziti_${this.tableId}_table_state`, tableStateCookie);
38
38
  }
39
- onColumnsResized(tableId, gridObj, column) {
40
- this.saveColumnWidths(tableId, gridObj, column);
39
+ onColumnsResized(column) {
40
+ this.saveColumnWidths(column);
41
41
  }
42
- saveColumnWidths(tableId, gridObj, column) {
42
+ saveColumnWidths(column) {
43
43
  if (!column) {
44
44
  return;
45
45
  }
46
46
  const columnId = column.colId;
47
47
  const columnWidth = column.actualWidth;
48
- let colWidthsCookie = localStorage.getItem(`ziti_${tableId}_column_widths`);
48
+ let colWidthsCookie = localStorage.getItem(`ziti_${this.tableId}_column_widths`);
49
49
  let colWidths = {};
50
50
  if (!_.isEmpty(colWidthsCookie)) {
51
51
  colWidths = JSON.parse(colWidthsCookie);
52
52
  }
53
53
  colWidths[columnId] = columnWidth;
54
54
  colWidthsCookie = JSON.stringify(colWidths);
55
- localStorage.setItem(`ziti_${tableId}_column_widths`, colWidthsCookie);
56
- let tableStateCookie = localStorage.getItem(`ziti_${tableId}_table_state`);
55
+ localStorage.setItem(`ziti_${this.tableId}_column_widths`, colWidthsCookie);
56
+ let tableStateCookie = localStorage.getItem(`ziti_${this.tableId}_table_state`);
57
57
  let tableState;
58
58
  if (_.isEmpty(tableStateCookie)) {
59
- tableState = gridObj.columnApi.getColumnState();
59
+ tableState = this.gridObj.columnApi.getColumnState();
60
60
  }
61
61
  else {
62
62
  tableState = JSON.parse(tableStateCookie);
@@ -68,8 +68,8 @@ class DataTableService {
68
68
  }
69
69
  });
70
70
  tableStateCookie = JSON.stringify(tableState);
71
- localStorage.setItem(`ziti_${tableId}_table_state`, tableStateCookie);
72
- _.forEach(gridObj.columnApi.columnModel.columnDefs, (colDef) => {
71
+ localStorage.setItem(`ziti_${this.tableId}_table_state`, tableStateCookie);
72
+ _.forEach(this.gridObj.columnApi.columnModel.columnDefs, (colDef) => {
73
73
  if (colDef.colId === columnId) {
74
74
  colDef.suppressSizeToFit = true;
75
75
  }
@@ -96,4 +96,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
96
96
  providedIn: 'root'
97
97
  }]
98
98
  }], ctorParameters: function () { return []; } });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvZGF0YS10YWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDOztBQUV2QixNQUdhLGdCQUFnQjtJQUkzQjtRQTZFQSxzQkFBaUIsR0FBRyxVQUFVLFFBQVE7WUFDcEMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztRQUN6RCxDQUFDLENBQUM7UUFDRiwwQkFBcUIsR0FBRyxVQUFVLFFBQVE7WUFDeEMsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDO1FBQzVCLENBQUMsQ0FBQztJQWxGYyxDQUFDO0lBRWpCLFlBQVksQ0FBQyxPQUFPLEVBQUUsT0FBTztRQUMzQixJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTztTQUNSO1FBQ0QsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzlFLElBQUksV0FBVyxFQUFFO1lBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7WUFDdkYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztTQUN6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QUFXLENBQUMsVUFBVSxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDN0QsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRTtnQkFDN0IsTUFBTSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQzthQUNqQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFlBQVksQ0FBQyxHQUFHO1FBQ2QsT0FBTyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDO0lBQy9HLENBQUM7SUFFRCxpQkFBaUI7UUFDZixZQUFZLENBQUMsVUFBVSxDQUFDLFFBQVEsSUFBSSxDQUFDLE9BQU8sY0FBYyxDQUFDLENBQUM7UUFDNUQsWUFBWSxDQUFDLFVBQVUsQ0FBQyxRQUFRLElBQUksQ0FBQyxPQUFPLGdCQUFnQixDQUFDLENBQUM7SUFDaEUsQ0FBQztJQU9ELFdBQVcsQ0FBRSxJQUFJO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFBQSxDQUFDOytHQXpGUyxnQkFBZ0I7bUhBQWhCLGdCQUFnQixjQUZmLE1BQU07O1NBRVAsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IF8gZnJvbSBcImxvZGFzaFwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEYXRhVGFibGVTZXJ2aWNlIHtcbiAgdGFibGVJZDtcbiAgZ3JpZE9iajtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHJlZnJlc2hDZWxscyhncmlkT2JqLCByb3dEYXRhKSB7XG4gICAgaWYgKCFncmlkT2JqKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRhdGFDaGFuZ2VkID0gIV8uaXNFcXVhbChyb3dEYXRhPy5wcmV2aW91c1ZhbHVlLCByb3dEYXRhPy5jdXJyZW50VmFsdWUpO1xuICAgIGlmIChkYXRhQ2hhbmdlZCkge1xuICAgICAgZ3JpZE9iai5hcGkueml0aUFsbFRvZ2dsZWQgPSAhXy5pc0VtcHR5KHJvd0RhdGEpICYmIF8uZXZlcnkocm93RGF0YSwge3NlbGVjdGVkOiB0cnVlfSk7XG4gICAgICBncmlkT2JqLmFwaS5yZWZyZXNoQ2VsbHMoe2ZvcmNlOiB0cnVlfSk7XG4gICAgfVxuICB9XG5cbiAgcGluQ29sdW1uKGNvbHVtbiwgcGlubmVkKSB7XG4gICAgdGhpcy5ncmlkT2JqLmNvbHVtbkFwaS5zZXRDb2x1bW5QaW5uZWQoY29sdW1uLCBwaW5uZWQpO1xuICB9XG4gIHJlc2l6ZUdyaWRDb2x1bW5zKGV2ZW50ID0ge30pIHtcbiAgICBpZiAoIXRoaXMuZ3JpZE9iaikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBfLmRlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuZ3JpZE9iai5hcGkuc2l6ZUNvbHVtbnNUb0ZpdCgpO1xuICAgIH0pO1xuICB9XG4gIHNhdmVDb2x1bW5TdGF0ZSgpIHtcbiAgICBjb25zdCB0YWJsZVN0YXRlID0gdGhpcy5ncmlkT2JqLmNvbHVtbkFwaS5nZXRDb2x1bW5TdGF0ZSgpO1xuICAgIGNvbnN0IHRhYmxlU3RhdGVDb29raWUgPSBKU09OLnN0cmluZ2lmeSh0YWJsZVN0YXRlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fdGFibGVfc3RhdGVgLCB0YWJsZVN0YXRlQ29va2llKTtcbiAgfVxuXG4gIG9uQ29sdW1uc1Jlc2l6ZWQodGFibGVJZCwgZ3JpZE9iaiwgY29sdW1uKSB7XG4gICAgdGhpcy5zYXZlQ29sdW1uV2lkdGhzKHRhYmxlSWQsIGdyaWRPYmosIGNvbHVtbik7XG4gIH1cbiAgcHJpdmF0ZSBzYXZlQ29sdW1uV2lkdGhzKHRhYmxlSWQsIGdyaWRPYmosIGNvbHVtbikge1xuICAgIGlmICghY29sdW1uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNvbHVtbklkID0gY29sdW1uLmNvbElkO1xuICAgIGNvbnN0IGNvbHVtbldpZHRoID0gY29sdW1uLmFjdHVhbFdpZHRoO1xuICAgIGxldCBjb2xXaWR0aHNDb29raWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShgeml0aV8ke3RhYmxlSWR9X2NvbHVtbl93aWR0aHNgKTtcbiAgICBsZXQgY29sV2lkdGhzOiBhbnkgPSB7fTtcbiAgICBpZiAoIV8uaXNFbXB0eShjb2xXaWR0aHNDb29raWUpKSB7XG4gICAgICBjb2xXaWR0aHMgPSBKU09OLnBhcnNlKGNvbFdpZHRoc0Nvb2tpZSk7XG4gICAgfVxuICAgIGNvbFdpZHRoc1tjb2x1bW5JZF0gPSBjb2x1bW5XaWR0aDtcbiAgICBjb2xXaWR0aHNDb29raWUgPSBKU09OLnN0cmluZ2lmeShjb2xXaWR0aHMpO1xuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGB6aXRpXyR7dGFibGVJZH1fY29sdW1uX3dpZHRoc2AsIGNvbFdpZHRoc0Nvb2tpZSk7XG5cbiAgICBsZXQgdGFibGVTdGF0ZUNvb2tpZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKGB6aXRpXyR7dGFibGVJZH1fdGFibGVfc3RhdGVgKTtcbiAgICBsZXQgdGFibGVTdGF0ZTtcbiAgICBpZiAoXy5pc0VtcHR5KHRhYmxlU3RhdGVDb29raWUpKSB7XG4gICAgICB0YWJsZVN0YXRlID0gZ3JpZE9iai5jb2x1bW5BcGkuZ2V0Q29sdW1uU3RhdGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGFibGVTdGF0ZSA9IEpTT04ucGFyc2UodGFibGVTdGF0ZUNvb2tpZSk7XG4gICAgfVxuICAgIF8uZm9yRWFjaCh0YWJsZVN0YXRlLCAoY29sdW1uKSA9PiB7XG4gICAgICBpZiAoY29sdW1uSWQgPT09IGNvbHVtbi5jb2xJZCkge1xuICAgICAgICBjb2x1bW4uc3VwcHJlc3NTaXplVG9GaXQgPSB0cnVlO1xuICAgICAgICBjb2x1bW4ud2lkdGggPSBjb2x1bW5XaWR0aDtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0YWJsZVN0YXRlQ29va2llID0gSlNPTi5zdHJpbmdpZnkodGFibGVTdGF0ZSk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oYHppdGlfJHt0YWJsZUlkfV90YWJsZV9zdGF0ZWAsIHRhYmxlU3RhdGVDb29raWUpO1xuICAgIF8uZm9yRWFjaChncmlkT2JqLmNvbHVtbkFwaS5jb2x1bW5Nb2RlbC5jb2x1bW5EZWZzLCAoY29sRGVmKSA9PiB7XG4gICAgICBpZiAoY29sRGVmLmNvbElkID09PSBjb2x1bW5JZCkge1xuICAgICAgICBjb2xEZWYuc3VwcHJlc3NTaXplVG9GaXQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIGdldFJvd05vZGVJZChyb3cpIHtcbiAgICByZXR1cm4gcm93Py5kYXRhPy5pZCA/IHJvdz8uZGF0YT8uaWQgOiByb3c/LmRhdGE/Lm5hbWUgPyByb3c/LmRhdGE/Lm5hbWUgOiAnbmV3X3Jvd18nICsgcm93Py5kYXRhPy5pdGVtSW5kZXg7XG4gIH1cblxuICByZXNldENvb2tpZUNvbmZpZygpIHtcbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fdGFibGVfc3RhdGVgKTtcbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fY29sdW1uX3dpZHRoc2ApO1xuICB9XG4gIGlzU2VydmVyU2lkZUdyb3VwID0gZnVuY3Rpb24gKGRhdGFJdGVtKSB7XG4gICAgcmV0dXJuIF8uZ2V0KGRhdGFJdGVtLCAncHJvY2Vzc1RyZWUnLCBbXSkubGVuZ3RoID09PSAxO1xuICB9O1xuICBnZXRTZXJ2ZXJTaWRlR3JvdXBLZXkgPSBmdW5jdGlvbiAoZGF0YUl0ZW0pIHtcbiAgICByZXR1cm4gZGF0YUl0ZW0ucHJvY2Vzc0lkO1xuICB9O1xuICBnZXREYXRhUGF0aCAoZGF0YSkge1xuICAgIHJldHVybiBkYXRhLnByb2Nlc3NUcmVlO1xuICB9O1xufVxuIl19
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvZGF0YS10YWJsZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDOztBQUV2QixNQUdhLGdCQUFnQjtJQUkzQjtRQTZFQSxzQkFBaUIsR0FBRyxVQUFVLFFBQVE7WUFDcEMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQztRQUN6RCxDQUFDLENBQUM7UUFDRiwwQkFBcUIsR0FBRyxVQUFVLFFBQVE7WUFDeEMsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDO1FBQzVCLENBQUMsQ0FBQztJQWxGYyxDQUFDO0lBRWpCLFlBQVksQ0FBQyxPQUFPLEVBQUUsT0FBTztRQUMzQixJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTztTQUNSO1FBQ0QsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQzlFLElBQUksV0FBVyxFQUFFO1lBQ2YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7WUFDdkYsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztTQUN6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QUFXLENBQUMsVUFBVSxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDbEUsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRTtnQkFDN0IsTUFBTSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQzthQUNqQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFlBQVksQ0FBQyxHQUFHO1FBQ2QsT0FBTyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDO0lBQy9HLENBQUM7SUFFRCxpQkFBaUI7UUFDZixZQUFZLENBQUMsVUFBVSxDQUFDLFFBQVEsSUFBSSxDQUFDLE9BQU8sY0FBYyxDQUFDLENBQUM7UUFDNUQsWUFBWSxDQUFDLFVBQVUsQ0FBQyxRQUFRLElBQUksQ0FBQyxPQUFPLGdCQUFnQixDQUFDLENBQUM7SUFDaEUsQ0FBQztJQU9ELFdBQVcsQ0FBRSxJQUFJO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFBQSxDQUFDOytHQXpGUyxnQkFBZ0I7bUhBQWhCLGdCQUFnQixjQUZmLE1BQU07O1NBRVAsZ0JBQWdCOzRGQUFoQixnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IF8gZnJvbSBcImxvZGFzaFwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEYXRhVGFibGVTZXJ2aWNlIHtcbiAgdGFibGVJZDtcbiAgZ3JpZE9iajtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHJlZnJlc2hDZWxscyhncmlkT2JqLCByb3dEYXRhKSB7XG4gICAgaWYgKCFncmlkT2JqKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGRhdGFDaGFuZ2VkID0gIV8uaXNFcXVhbChyb3dEYXRhPy5wcmV2aW91c1ZhbHVlLCByb3dEYXRhPy5jdXJyZW50VmFsdWUpO1xuICAgIGlmIChkYXRhQ2hhbmdlZCkge1xuICAgICAgZ3JpZE9iai5hcGkueml0aUFsbFRvZ2dsZWQgPSAhXy5pc0VtcHR5KHJvd0RhdGEpICYmIF8uZXZlcnkocm93RGF0YSwge3NlbGVjdGVkOiB0cnVlfSk7XG4gICAgICBncmlkT2JqLmFwaS5yZWZyZXNoQ2VsbHMoe2ZvcmNlOiB0cnVlfSk7XG4gICAgfVxuICB9XG5cbiAgcGluQ29sdW1uKGNvbHVtbiwgcGlubmVkKSB7XG4gICAgdGhpcy5ncmlkT2JqLmNvbHVtbkFwaS5zZXRDb2x1bW5QaW5uZWQoY29sdW1uLCBwaW5uZWQpO1xuICB9XG4gIHJlc2l6ZUdyaWRDb2x1bW5zKGV2ZW50ID0ge30pIHtcbiAgICBpZiAoIXRoaXMuZ3JpZE9iaikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBfLmRlZmVyKCgpID0+IHtcbiAgICAgIHRoaXMuZ3JpZE9iai5hcGkuc2l6ZUNvbHVtbnNUb0ZpdCgpO1xuICAgIH0pO1xuICB9XG4gIHNhdmVDb2x1bW5TdGF0ZSgpIHtcbiAgICBjb25zdCB0YWJsZVN0YXRlID0gdGhpcy5ncmlkT2JqLmNvbHVtbkFwaS5nZXRDb2x1bW5TdGF0ZSgpO1xuICAgIGNvbnN0IHRhYmxlU3RhdGVDb29raWUgPSBKU09OLnN0cmluZ2lmeSh0YWJsZVN0YXRlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fdGFibGVfc3RhdGVgLCB0YWJsZVN0YXRlQ29va2llKTtcbiAgfVxuXG4gIG9uQ29sdW1uc1Jlc2l6ZWQoY29sdW1uKSB7XG4gICAgdGhpcy5zYXZlQ29sdW1uV2lkdGhzKGNvbHVtbik7XG4gIH1cbiAgcHJpdmF0ZSBzYXZlQ29sdW1uV2lkdGhzKGNvbHVtbikge1xuICAgIGlmICghY29sdW1uKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGNvbHVtbklkID0gY29sdW1uLmNvbElkO1xuICAgIGNvbnN0IGNvbHVtbldpZHRoID0gY29sdW1uLmFjdHVhbFdpZHRoO1xuICAgIGxldCBjb2xXaWR0aHNDb29raWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fY29sdW1uX3dpZHRoc2ApO1xuICAgIGxldCBjb2xXaWR0aHM6IGFueSA9IHt9O1xuICAgIGlmICghXy5pc0VtcHR5KGNvbFdpZHRoc0Nvb2tpZSkpIHtcbiAgICAgIGNvbFdpZHRocyA9IEpTT04ucGFyc2UoY29sV2lkdGhzQ29va2llKTtcbiAgICB9XG4gICAgY29sV2lkdGhzW2NvbHVtbklkXSA9IGNvbHVtbldpZHRoO1xuICAgIGNvbFdpZHRoc0Nvb2tpZSA9IEpTT04uc3RyaW5naWZ5KGNvbFdpZHRocyk7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oYHppdGlfJHt0aGlzLnRhYmxlSWR9X2NvbHVtbl93aWR0aHNgLCBjb2xXaWR0aHNDb29raWUpO1xuXG4gICAgbGV0IHRhYmxlU3RhdGVDb29raWUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fdGFibGVfc3RhdGVgKTtcbiAgICBsZXQgdGFibGVTdGF0ZTtcbiAgICBpZiAoXy5pc0VtcHR5KHRhYmxlU3RhdGVDb29raWUpKSB7XG4gICAgICB0YWJsZVN0YXRlID0gdGhpcy5ncmlkT2JqLmNvbHVtbkFwaS5nZXRDb2x1bW5TdGF0ZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0YWJsZVN0YXRlID0gSlNPTi5wYXJzZSh0YWJsZVN0YXRlQ29va2llKTtcbiAgICB9XG4gICAgXy5mb3JFYWNoKHRhYmxlU3RhdGUsIChjb2x1bW4pID0+IHtcbiAgICAgIGlmIChjb2x1bW5JZCA9PT0gY29sdW1uLmNvbElkKSB7XG4gICAgICAgIGNvbHVtbi5zdXBwcmVzc1NpemVUb0ZpdCA9IHRydWU7XG4gICAgICAgIGNvbHVtbi53aWR0aCA9IGNvbHVtbldpZHRoO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRhYmxlU3RhdGVDb29raWUgPSBKU09OLnN0cmluZ2lmeSh0YWJsZVN0YXRlKTtcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fdGFibGVfc3RhdGVgLCB0YWJsZVN0YXRlQ29va2llKTtcbiAgICBfLmZvckVhY2godGhpcy5ncmlkT2JqLmNvbHVtbkFwaS5jb2x1bW5Nb2RlbC5jb2x1bW5EZWZzLCAoY29sRGVmKSA9PiB7XG4gICAgICBpZiAoY29sRGVmLmNvbElkID09PSBjb2x1bW5JZCkge1xuICAgICAgICBjb2xEZWYuc3VwcHJlc3NTaXplVG9GaXQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIGdldFJvd05vZGVJZChyb3cpIHtcbiAgICByZXR1cm4gcm93Py5kYXRhPy5pZCA/IHJvdz8uZGF0YT8uaWQgOiByb3c/LmRhdGE/Lm5hbWUgPyByb3c/LmRhdGE/Lm5hbWUgOiAnbmV3X3Jvd18nICsgcm93Py5kYXRhPy5pdGVtSW5kZXg7XG4gIH1cblxuICByZXNldENvb2tpZUNvbmZpZygpIHtcbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fdGFibGVfc3RhdGVgKTtcbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShgeml0aV8ke3RoaXMudGFibGVJZH1fY29sdW1uX3dpZHRoc2ApO1xuICB9XG4gIGlzU2VydmVyU2lkZUdyb3VwID0gZnVuY3Rpb24gKGRhdGFJdGVtKSB7XG4gICAgcmV0dXJuIF8uZ2V0KGRhdGFJdGVtLCAncHJvY2Vzc1RyZWUnLCBbXSkubGVuZ3RoID09PSAxO1xuICB9O1xuICBnZXRTZXJ2ZXJTaWRlR3JvdXBLZXkgPSBmdW5jdGlvbiAoZGF0YUl0ZW0pIHtcbiAgICByZXR1cm4gZGF0YUl0ZW0ucHJvY2Vzc0lkO1xuICB9O1xuICBnZXREYXRhUGF0aCAoZGF0YSkge1xuICAgIHJldHVybiBkYXRhLnByb2Nlc3NUcmVlO1xuICB9O1xufVxuIl19
@@ -30,7 +30,9 @@ class FilterBarComponent {
30
30
  this.filterString = '';
31
31
  this.inputChangedDebounced = debounce(this.inputChanged.bind(this), 400);
32
32
  this.filterService.filtersChanged.subscribe(filters => {
33
- this._filters = [...filters];
33
+ this._filters = filters.filter((filter) => {
34
+ return filter.hidden !== true;
35
+ });
34
36
  let tmp = '';
35
37
  for (let idx = 0; idx < filters.length; idx++) {
36
38
  if (filters[idx].columnId === 'name') {
@@ -92,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
92
94
  }], currentPage: [{
93
95
  type: Input
94
96
  }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvZGF0YS10YWJsZS90YWJsZS1maWx0ZXItYmFyL2ZpbHRlci1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvdGFibGUtZmlsdGVyLWJhci9maWx0ZXItYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsT0FBTyxFQUFDLFNBQVMsRUFBZ0IsS0FBSyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLFFBQVEsQ0FBQzs7Ozs7QUFHMUMsTUFLYSxrQkFBa0I7SUFZN0IsWUFBbUIsYUFBcUM7UUFBckMsa0JBQWEsR0FBYixhQUFhLENBQXdCO1FBVnhELGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFTCxlQUFVLEdBQVcsR0FBRyxDQUFDO1FBQ3pCLGFBQVEsR0FBVyxHQUFHLENBQUM7UUFDdkIsZUFBVSxHQUFXLEdBQUcsQ0FBQztRQUN6QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUVqQyxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQiwwQkFBcUIsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFHbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDO1lBQzdCLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUNiLEtBQUssSUFBSSxHQUFHLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxFQUFFO2dCQUM3QyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEtBQUssTUFBTSxFQUFFO29CQUNwQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztvQkFDekIsTUFBTTtpQkFDUDthQUNGO1lBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDMUQsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sS0FBSyxHQUFRLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sR0FBRyxHQUFRLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hELE9BQU8sR0FBRyxJQUFJLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzVELE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDbkQsT0FBTyxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxZQUFZO1FBQ1YsTUFBTSxTQUFTLEdBQWM7WUFDM0IsVUFBVSxFQUFFLE1BQU07WUFDbEIsUUFBUSxFQUFFLE1BQU07WUFDaEIsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQ3hCLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWTtTQUN6QixDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDNUMsQ0FBQztJQUdELFlBQVksQ0FBQyxTQUFvQjtRQUMvQixJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM3QyxDQUFDOytHQWxFVSxrQkFBa0I7bUdBQWxCLGtCQUFrQiw4S0N6Qi9CLHM2Q0E4QkE7O1NETGEsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0Usc0JBQXNCOzZHQVF2QixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgICBDb3B5cmlnaHQgTmV0Rm91bmRyeSBJbmMuXG5cbiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7ZGVib3VuY2UsIGlzTnVtYmVyfSBmcm9tIFwibG9kYXNoXCI7XG5pbXBvcnQge0RhdGFUYWJsZUZpbHRlclNlcnZpY2UsIEZpbHRlck9ian0gZnJvbSBcIi4uL2RhdGEtdGFibGUtZmlsdGVyLnNlcnZpY2VcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXRhYmxlLWZpbHRlci1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbHRlci1iYXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJCYXJDb21wb25lbnQge1xuXG4gIF9maWx0ZXJzID0gW107XG5cbiAgQElucHV0KCkgc3RhcnRDb3VudDogc3RyaW5nID0gJy0nO1xuICBASW5wdXQoKSBlbmRDb3VudDogc3RyaW5nID0gJy0nO1xuICBASW5wdXQoKSB0b3RhbENvdW50OiBzdHJpbmcgPSAnLSc7XG4gIEBJbnB1dCgpIGN1cnJlbnRQYWdlOiBudW1iZXIgPSAxO1xuXG4gIGZpbHRlclN0cmluZyA9ICcnO1xuICBpbnB1dENoYW5nZWREZWJvdW5jZWQgPSBkZWJvdW5jZSh0aGlzLmlucHV0Q2hhbmdlZC5iaW5kKHRoaXMpLCA0MDApO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBmaWx0ZXJTZXJ2aWNlOiBEYXRhVGFibGVGaWx0ZXJTZXJ2aWNlKSB7XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLmZpbHRlcnNDaGFuZ2VkLnN1YnNjcmliZShmaWx0ZXJzID0+IHtcbiAgICAgIHRoaXMuX2ZpbHRlcnMgPSBbLi4uZmlsdGVyc107XG4gICAgICBsZXQgdG1wID0gJyc7XG4gICAgICBmb3IgKGxldCBpZHggPSAwOyBpZHggPCBmaWx0ZXJzLmxlbmd0aDsgaWR4KyspIHtcbiAgICAgICAgaWYgKGZpbHRlcnNbaWR4XS5jb2x1bW5JZCA9PT0gJ25hbWUnKSB7XG4gICAgICAgICAgdG1wID0gZmlsdGVyc1tpZHhdLnZhbHVlO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLmZpbHRlclN0cmluZyA9IHRtcDtcbiAgICB9KTtcbiAgfVxuXG4gIG5leHRQYWdlKCkge1xuICAgIHRoaXMuY3VycmVudFBhZ2UrKztcbiAgICB0aGlzLmZpbHRlclNlcnZpY2UuY2hhbmdlUGFnZSh0aGlzLmN1cnJlbnRQYWdlKTtcbiAgfVxuXG4gIHByZXZQYWdlKCkge1xuICAgIHRoaXMuY3VycmVudFBhZ2UtLTtcbiAgICB0aGlzLmZpbHRlclNlcnZpY2UuY2hhbmdlUGFnZSh0aGlzLmN1cnJlbnRQYWdlKTtcbiAgfVxuXG4gIGdldCBuZXh0RGlzYWJsZWQoKSB7XG4gICAgaWYgKCFpc051bWJlcih0aGlzLnRvdGFsQ291bnQpIHx8ICFpc051bWJlcih0aGlzLmVuZENvdW50KSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGNvbnN0IHRvdGFsOiBhbnkgPSBOdW1iZXIucGFyc2VJbnQodGhpcy50b3RhbENvdW50KTtcbiAgICBjb25zdCBlbmQ6IGFueSA9IE51bWJlci5wYXJzZUludCh0aGlzLmVuZENvdW50KTtcbiAgICByZXR1cm4gZW5kID49IHRvdGFsO1xuICB9XG5cbiAgZ2V0IHByZXZEaXNhYmxlZCgpIHtcbiAgICBpZiAoIWlzTnVtYmVyKHRoaXMuc3RhcnRDb3VudCkgfHwgIWlzTnVtYmVyKHRoaXMudG90YWxDb3VudCkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBzdGFydCA9IE51bWJlci5wYXJzZUludCh0aGlzLnN0YXJ0Q291bnQsIDEwKTtcbiAgICByZXR1cm4gc3RhcnQgPD0gMTtcbiAgfVxuXG4gIGlucHV0Q2hhbmdlZCgpIHtcbiAgICBjb25zdCBmaWx0ZXJPYmo6IEZpbHRlck9iaiA9IHtcbiAgICAgIGZpbHRlck5hbWU6ICduYW1lJyxcbiAgICAgIGNvbHVtbklkOiAnbmFtZScsXG4gICAgICB2YWx1ZTogdGhpcy5maWx0ZXJTdHJpbmcsXG4gICAgICBsYWJlbDogdGhpcy5maWx0ZXJTdHJpbmcsXG4gICAgfTtcbiAgICB0aGlzLmZpbHRlclNlcnZpY2UudXBkYXRlRmlsdGVyKGZpbHRlck9iailcbiAgfVxuXG5cbiAgcmVtb3ZlRmlsdGVyKGZpbHRlck9iajogRmlsdGVyT2JqKSB7XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLnJlbW92ZUZpbHRlcihmaWx0ZXJPYmopO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmlsdGVyc1wiPlxuICAgIDxpbnB1dFxuICAgICAgICBpZD1cIlNlYXJjaEZpbHRlclwiXG4gICAgICAgIGRhdGEtZGVmaW5lZD1cInNlYXJjaFwiXG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgY2xhc3M9XCJzZWFyY2hcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cIlR5cGUgdG8gRmlsdGVyXCJcbiAgICAgICAgKGtleXVwKT1cImlucHV0Q2hhbmdlZERlYm91bmNlZCgpXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJmaWx0ZXJTdHJpbmdcIlxuICAgIC8+XG4gICAgPGRpdiBjbGFzcz1cImNsZWFyIGljb24tY2xlYXJcIiBkYXRhLWRlZmluZWQ9XCJjbGVhclwiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hCdXR0b24gaWNvbi1zZWFyY2hcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyZWQtY29sdW1ucy1saXN0XCIgaWQ9XCJDb2x1bW5GaWx0ZXJDb250YWluZXJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVGaWx0ZXIoZmlsdGVyKVwiXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGZpbHRlciBvZiBfZmlsdGVyc1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmaWx0ZXJlZC1jb2x1bW4taXRlbSBhZy1kbmQtZ2hvc3QgYWctdW5zZWxlY3RhYmxlIGFnLXRoZW1lLWFscGluZVwiXG4gICAgICAgICAgICAgICAgaWQ9XCJDb2x1bW5WaXNpYmlsaXR5X3t7IGZpbHRlci5maWx0ZXJOYW1lIH19XCJcbiAgICAgICAgICAgICAgICB0aXRsZT1cIlJlbW92ZSBmaWx0ZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFnLWRuZC1naG9zdC1pY29uXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1pY29uIGFnLWljb24tZmlsdGVyXCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFnLWRuZC1naG9zdC1sYWJlbFwiPnt7IGZpbHRlci5maWx0ZXJOYW1lIH19OiB7eyBmaWx0ZXIubGFiZWwgfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvdW50ZXJzXCI+PHNwYW4gaWQ9XCJTdGFydFwiPnt7c3RhcnRDb3VudH19PC9zcGFuPi08c3BhbiBpZD1cIkVuZFwiPnt7ZW5kQ291bnR9fTwvc3Bhbj4gb2YgPHNwYW4gaWQ9XCJUb3RhbFwiPnt7dG90YWxDb3VudH19PC9zcGFuPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJuYXZpZ2F0ZSBwcmV2IGljb24tcHJldlwiIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogcHJldkRpc2FibGVkfVwiIChjbGljayk9XCJwcmV2UGFnZSgpXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cIm5hdmlnYXRlIG5leHQgaWNvbi1uZXh0XCIgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBuZXh0RGlzYWJsZWR9XCIgKGNsaWNrKT1cIm5leHRQYWdlKClcIj48L2Rpdj5cbjwvZGl2PlxuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvZGF0YS10YWJsZS90YWJsZS1maWx0ZXItYmFyL2ZpbHRlci1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvdGFibGUtZmlsdGVyLWJhci9maWx0ZXItYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsT0FBTyxFQUFDLFNBQVMsRUFBZ0IsS0FBSyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLFFBQVEsQ0FBQzs7Ozs7QUFHMUMsTUFLYSxrQkFBa0I7SUFZN0IsWUFBbUIsYUFBcUM7UUFBckMsa0JBQWEsR0FBYixhQUFhLENBQXdCO1FBVnhELGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFTCxlQUFVLEdBQVcsR0FBRyxDQUFDO1FBQ3pCLGFBQVEsR0FBVyxHQUFHLENBQUM7UUFDdkIsZUFBVSxHQUFXLEdBQUcsQ0FBQztRQUN6QixnQkFBVyxHQUFXLENBQUMsQ0FBQztRQUVqQyxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQiwwQkFBcUIsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFHbEUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ3BELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQVcsRUFBRSxFQUFFO2dCQUM3QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDO1lBQ2hDLENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ2IsS0FBSyxJQUFJLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQzdDLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsS0FBSyxNQUFNLEVBQUU7b0JBQ3BDLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO29CQUN6QixNQUFNO2lCQUNQO2FBQ0Y7WUFDRCxJQUFJLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMxRCxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxLQUFLLEdBQVEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEQsTUFBTSxHQUFHLEdBQVEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEQsT0FBTyxHQUFHLElBQUksS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDNUQsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRCxPQUFPLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQVk7UUFDVixNQUFNLFNBQVMsR0FBYztZQUMzQixVQUFVLEVBQUUsTUFBTTtZQUNsQixRQUFRLEVBQUUsTUFBTTtZQUNoQixLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDeEIsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZO1NBQ3pCLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUM1QyxDQUFDO0lBR0QsWUFBWSxDQUFDLFNBQW9CO1FBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBcEVVLGtCQUFrQjttR0FBbEIsa0JBQWtCLDhLQ3pCL0IsczZDQThCQTs7U0RMYSxrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxzQkFBc0I7NkdBUXZCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIENvcHlyaWdodCBOZXRGb3VuZHJ5IEluYy5cblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtkZWJvdW5jZSwgaXNOdW1iZXJ9IGZyb20gXCJsb2Rhc2hcIjtcbmltcG9ydCB7RGF0YVRhYmxlRmlsdGVyU2VydmljZSwgRmlsdGVyT2JqfSBmcm9tIFwiLi4vZGF0YS10YWJsZS1maWx0ZXIuc2VydmljZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItdGFibGUtZmlsdGVyLWJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXItYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsdGVyLWJhci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlckJhckNvbXBvbmVudCB7XG5cbiAgX2ZpbHRlcnMgPSBbXTtcblxuICBASW5wdXQoKSBzdGFydENvdW50OiBzdHJpbmcgPSAnLSc7XG4gIEBJbnB1dCgpIGVuZENvdW50OiBzdHJpbmcgPSAnLSc7XG4gIEBJbnB1dCgpIHRvdGFsQ291bnQ6IHN0cmluZyA9ICctJztcbiAgQElucHV0KCkgY3VycmVudFBhZ2U6IG51bWJlciA9IDE7XG5cbiAgZmlsdGVyU3RyaW5nID0gJyc7XG4gIGlucHV0Q2hhbmdlZERlYm91bmNlZCA9IGRlYm91bmNlKHRoaXMuaW5wdXRDaGFuZ2VkLmJpbmQodGhpcyksIDQwMCk7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGZpbHRlclNlcnZpY2U6IERhdGFUYWJsZUZpbHRlclNlcnZpY2UpIHtcbiAgICB0aGlzLmZpbHRlclNlcnZpY2UuZmlsdGVyc0NoYW5nZWQuc3Vic2NyaWJlKGZpbHRlcnMgPT4ge1xuICAgICAgdGhpcy5fZmlsdGVycyA9IGZpbHRlcnMuZmlsdGVyKChmaWx0ZXI6IGFueSkgPT4ge1xuICAgICAgICByZXR1cm4gZmlsdGVyLmhpZGRlbiAhPT0gdHJ1ZTtcbiAgICAgIH0pO1xuICAgICAgbGV0IHRtcCA9ICcnO1xuICAgICAgZm9yIChsZXQgaWR4ID0gMDsgaWR4IDwgZmlsdGVycy5sZW5ndGg7IGlkeCsrKSB7XG4gICAgICAgIGlmIChmaWx0ZXJzW2lkeF0uY29sdW1uSWQgPT09ICduYW1lJykge1xuICAgICAgICAgIHRtcCA9IGZpbHRlcnNbaWR4XS52YWx1ZTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5maWx0ZXJTdHJpbmcgPSB0bXA7XG4gICAgfSk7XG4gIH1cblxuICBuZXh0UGFnZSgpIHtcbiAgICB0aGlzLmN1cnJlbnRQYWdlKys7XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLmNoYW5nZVBhZ2UodGhpcy5jdXJyZW50UGFnZSk7XG4gIH1cblxuICBwcmV2UGFnZSgpIHtcbiAgICB0aGlzLmN1cnJlbnRQYWdlLS07XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLmNoYW5nZVBhZ2UodGhpcy5jdXJyZW50UGFnZSk7XG4gIH1cblxuICBnZXQgbmV4dERpc2FibGVkKCkge1xuICAgIGlmICghaXNOdW1iZXIodGhpcy50b3RhbENvdW50KSB8fCAhaXNOdW1iZXIodGhpcy5lbmRDb3VudCkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCB0b3RhbDogYW55ID0gTnVtYmVyLnBhcnNlSW50KHRoaXMudG90YWxDb3VudCk7XG4gICAgY29uc3QgZW5kOiBhbnkgPSBOdW1iZXIucGFyc2VJbnQodGhpcy5lbmRDb3VudCk7XG4gICAgcmV0dXJuIGVuZCA+PSB0b3RhbDtcbiAgfVxuXG4gIGdldCBwcmV2RGlzYWJsZWQoKSB7XG4gICAgaWYgKCFpc051bWJlcih0aGlzLnN0YXJ0Q291bnQpIHx8ICFpc051bWJlcih0aGlzLnRvdGFsQ291bnQpKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgY29uc3Qgc3RhcnQgPSBOdW1iZXIucGFyc2VJbnQodGhpcy5zdGFydENvdW50LCAxMCk7XG4gICAgcmV0dXJuIHN0YXJ0IDw9IDE7XG4gIH1cblxuICBpbnB1dENoYW5nZWQoKSB7XG4gICAgY29uc3QgZmlsdGVyT2JqOiBGaWx0ZXJPYmogPSB7XG4gICAgICBmaWx0ZXJOYW1lOiAnbmFtZScsXG4gICAgICBjb2x1bW5JZDogJ25hbWUnLFxuICAgICAgdmFsdWU6IHRoaXMuZmlsdGVyU3RyaW5nLFxuICAgICAgbGFiZWw6IHRoaXMuZmlsdGVyU3RyaW5nLFxuICAgIH07XG4gICAgdGhpcy5maWx0ZXJTZXJ2aWNlLnVwZGF0ZUZpbHRlcihmaWx0ZXJPYmopXG4gIH1cblxuXG4gIHJlbW92ZUZpbHRlcihmaWx0ZXJPYmo6IEZpbHRlck9iaikge1xuICAgIHRoaXMuZmlsdGVyU2VydmljZS5yZW1vdmVGaWx0ZXIoZmlsdGVyT2JqKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZpbHRlcnNcIj5cbiAgICA8aW5wdXRcbiAgICAgICAgaWQ9XCJTZWFyY2hGaWx0ZXJcIlxuICAgICAgICBkYXRhLWRlZmluZWQ9XCJzZWFyY2hcIlxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGNsYXNzPVwic2VhcmNoXCJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJUeXBlIHRvIEZpbHRlclwiXG4gICAgICAgIChrZXl1cCk9XCJpbnB1dENoYW5nZWREZWJvdW5jZWQoKVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwiZmlsdGVyU3RyaW5nXCJcbiAgICAvPlxuICAgIDxkaXYgY2xhc3M9XCJjbGVhciBpY29uLWNsZWFyXCIgZGF0YS1kZWZpbmVkPVwiY2xlYXJcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoQnV0dG9uIGljb24tc2VhcmNoXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbHRlcmVkLWNvbHVtbnMtbGlzdFwiIGlkPVwiQ29sdW1uRmlsdGVyQ29udGFpbmVyXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlRmlsdGVyKGZpbHRlcilcIlxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWx0ZXIgb2YgX2ZpbHRlcnNcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmlsdGVyZWQtY29sdW1uLWl0ZW0gYWctZG5kLWdob3N0IGFnLXVuc2VsZWN0YWJsZSBhZy10aGVtZS1hbHBpbmVcIlxuICAgICAgICAgICAgICAgIGlkPVwiQ29sdW1uVmlzaWJpbGl0eV97eyBmaWx0ZXIuZmlsdGVyTmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJSZW1vdmUgZmlsdGVyXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1kbmQtZ2hvc3QtaWNvblwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWctaWNvbiBhZy1pY29uLWZpbHRlclwiPjwvc3Bhbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZy1kbmQtZ2hvc3QtbGFiZWxcIj57eyBmaWx0ZXIuZmlsdGVyTmFtZSB9fToge3sgZmlsdGVyLmxhYmVsIH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb3VudGVyc1wiPjxzcGFuIGlkPVwiU3RhcnRcIj57e3N0YXJ0Q291bnR9fTwvc3Bhbj4tPHNwYW4gaWQ9XCJFbmRcIj57e2VuZENvdW50fX08L3NwYW4+IG9mIDxzcGFuIGlkPVwiVG90YWxcIj57e3RvdGFsQ291bnR9fTwvc3Bhbj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibmF2aWdhdGUgcHJldiBpY29uLXByZXZcIiBbbmdDbGFzc109XCJ7ZGlzYWJsZWQ6IHByZXZEaXNhYmxlZH1cIiAoY2xpY2spPVwicHJldlBhZ2UoKVwiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJuYXZpZ2F0ZSBuZXh0IGljb24tbmV4dFwiIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogbmV4dERpc2FibGVkfVwiIChjbGljayk9XCJuZXh0UGFnZSgpXCI+PC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -13,15 +13,15 @@ class HiddenColumnsBarComponent {
13
13
  this.columnVisibilityChanged.emit(event);
14
14
  }
15
15
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HiddenColumnsBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: HiddenColumnsBarComponent, selector: "lib-table-hidden-columns-bar", inputs: { hiddenColumns: "hiddenColumns" }, outputs: { columnVisibilityChanged: "columnVisibilityChanged" }, ngImport: i0, template: "<div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n <div\n (click)=\"setColumnVisibilityColumn(col, true)\"\n *ngFor=\"let col of hiddenColumns\"\n class=\"hidden-column-item ag-dnd-ghost ag-unselectable ag-theme-alpine\"\n id=\"ColumnVisibility_{{ col.headerName }}\"\n title=\"Show column\"\n >\n <span class=\"ag-dnd-ghost-icon\">\n <span class=\"ag-icon ag-icon-eye-slash\"></span>\n </span>\n <div class=\"ag-dnd-ghost-label\">{{ col.headerName }}</div>\n </div>\n</div>", styles: [".hidden-columns-list{align-items:center;display:flex;flex-direction:row;margin-left:7px;min-height:30px;flex-wrap:wrap;flex:0 1 auto}.hidden-columns-list.hidden-results{flex-wrap:nowrap;overflow:auto}.hidden-columns-list.hidden-results .hidden-column-item{flex:1 0 auto}.hidden-columns-list::-webkit-scrollbar{height:14px}.hidden-columns-list .hidden-column-item{align-items:center;background-color:var(--background);border:2px solid var(--background);border-radius:12px;cursor:pointer;color:var(--inputBorder);font-weight:600;font-family:Open Sans,sans-serif;display:flex;flex:0 1 auto;height:25px!important;margin-left:10px;margin-top:5px;padding:2px 10px 2px 5px;position:relative;text-align:center;box-shadow:unset;transform:translateY(0)}.hidden-columns-list .ag-dnd-ghost:hover{border:2px solid var(--primaryColor)!important}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-label,.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash{color:var(--ag-alpine-active-color, var(--primaryColor))}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash:before{content:\"\\f113\"}.hidden-columns-list .ag-dnd-ghost-label{line-height:initial;color:var(--text)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: HiddenColumnsBarComponent, selector: "lib-table-hidden-columns-bar", inputs: { hiddenColumns: "hiddenColumns" }, outputs: { columnVisibilityChanged: "columnVisibilityChanged" }, ngImport: i0, template: "<div class=\"hidden-columns-bar-container\">\n <div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n <div\n (click)=\"setColumnVisibilityColumn(col, true)\"\n *ngFor=\"let col of hiddenColumns\"\n class=\"hidden-column-item ag-dnd-ghost ag-unselectable ag-theme-alpine\"\n id=\"ColumnVisibility_{{ col.headerName }}\"\n title=\"Show column\"\n >\n <span class=\"ag-dnd-ghost-icon\">\n <span class=\"ag-icon ag-icon-eye-slash\"></span>\n </span>\n <div class=\"ag-dnd-ghost-label\">{{ col.headerName }}</div>\n </div>\n </div>\n</div>", styles: [".hidden-columns-bar-container{display:flex;align-items:center;justify-content:space-between;flex-direction:row;width:100%}.hidden-columns-list{align-items:center;display:flex;flex-direction:row;margin-left:7px;min-height:30px;flex-wrap:wrap;flex:0 1 auto}.hidden-columns-list.hidden-results{flex-wrap:nowrap;overflow:auto}.hidden-columns-list.hidden-results .hidden-column-item{flex:1 0 auto}.hidden-columns-list::-webkit-scrollbar{height:14px}.hidden-columns-list .hidden-column-item{align-items:center;background-color:var(--background);border:2px solid var(--background);border-radius:12px;cursor:pointer;color:var(--inputBorder);font-weight:600;font-family:Open Sans,sans-serif;display:flex;flex:0 1 auto;height:25px!important;margin-left:10px;margin-top:5px;padding:2px 10px 2px 5px;position:relative;text-align:center;box-shadow:unset;transform:translateY(0)}.hidden-columns-list .ag-dnd-ghost:hover{border:2px solid var(--primaryColor)!important}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-label,.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash{color:var(--ag-alpine-active-color, var(--primaryColor))}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash:before{content:\"\\f113\"}.hidden-columns-list .ag-dnd-ghost-label{line-height:initial;color:var(--text)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
17
17
  }
18
18
  export { HiddenColumnsBarComponent };
19
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: HiddenColumnsBarComponent, decorators: [{
20
20
  type: Component,
21
- args: [{ selector: 'lib-table-hidden-columns-bar', template: "<div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n <div\n (click)=\"setColumnVisibilityColumn(col, true)\"\n *ngFor=\"let col of hiddenColumns\"\n class=\"hidden-column-item ag-dnd-ghost ag-unselectable ag-theme-alpine\"\n id=\"ColumnVisibility_{{ col.headerName }}\"\n title=\"Show column\"\n >\n <span class=\"ag-dnd-ghost-icon\">\n <span class=\"ag-icon ag-icon-eye-slash\"></span>\n </span>\n <div class=\"ag-dnd-ghost-label\">{{ col.headerName }}</div>\n </div>\n</div>", styles: [".hidden-columns-list{align-items:center;display:flex;flex-direction:row;margin-left:7px;min-height:30px;flex-wrap:wrap;flex:0 1 auto}.hidden-columns-list.hidden-results{flex-wrap:nowrap;overflow:auto}.hidden-columns-list.hidden-results .hidden-column-item{flex:1 0 auto}.hidden-columns-list::-webkit-scrollbar{height:14px}.hidden-columns-list .hidden-column-item{align-items:center;background-color:var(--background);border:2px solid var(--background);border-radius:12px;cursor:pointer;color:var(--inputBorder);font-weight:600;font-family:Open Sans,sans-serif;display:flex;flex:0 1 auto;height:25px!important;margin-left:10px;margin-top:5px;padding:2px 10px 2px 5px;position:relative;text-align:center;box-shadow:unset;transform:translateY(0)}.hidden-columns-list .ag-dnd-ghost:hover{border:2px solid var(--primaryColor)!important}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-label,.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash{color:var(--ag-alpine-active-color, var(--primaryColor))}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash:before{content:\"\\f113\"}.hidden-columns-list .ag-dnd-ghost-label{line-height:initial;color:var(--text)}\n"] }]
21
+ args: [{ selector: 'lib-table-hidden-columns-bar', template: "<div class=\"hidden-columns-bar-container\">\n <div class=\"hidden-columns-list\" id=\"ColumnVisibilityHeader\">\n <div\n (click)=\"setColumnVisibilityColumn(col, true)\"\n *ngFor=\"let col of hiddenColumns\"\n class=\"hidden-column-item ag-dnd-ghost ag-unselectable ag-theme-alpine\"\n id=\"ColumnVisibility_{{ col.headerName }}\"\n title=\"Show column\"\n >\n <span class=\"ag-dnd-ghost-icon\">\n <span class=\"ag-icon ag-icon-eye-slash\"></span>\n </span>\n <div class=\"ag-dnd-ghost-label\">{{ col.headerName }}</div>\n </div>\n </div>\n</div>", styles: [".hidden-columns-bar-container{display:flex;align-items:center;justify-content:space-between;flex-direction:row;width:100%}.hidden-columns-list{align-items:center;display:flex;flex-direction:row;margin-left:7px;min-height:30px;flex-wrap:wrap;flex:0 1 auto}.hidden-columns-list.hidden-results{flex-wrap:nowrap;overflow:auto}.hidden-columns-list.hidden-results .hidden-column-item{flex:1 0 auto}.hidden-columns-list::-webkit-scrollbar{height:14px}.hidden-columns-list .hidden-column-item{align-items:center;background-color:var(--background);border:2px solid var(--background);border-radius:12px;cursor:pointer;color:var(--inputBorder);font-weight:600;font-family:Open Sans,sans-serif;display:flex;flex:0 1 auto;height:25px!important;margin-left:10px;margin-top:5px;padding:2px 10px 2px 5px;position:relative;text-align:center;box-shadow:unset;transform:translateY(0)}.hidden-columns-list .ag-dnd-ghost:hover{border:2px solid var(--primaryColor)!important}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-label,.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash{color:var(--ag-alpine-active-color, var(--primaryColor))}.hidden-columns-list .ag-dnd-ghost:hover .ag-dnd-ghost-icon .ag-icon-eye-slash:before{content:\"\\f113\"}.hidden-columns-list .ag-dnd-ghost-label{line-height:initial;color:var(--text)}\n"] }]
22
22
  }], propDecorators: { hiddenColumns: [{
23
23
  type: Input
24
24
  }], columnVisibilityChanged: [{
25
25
  type: Output
26
26
  }] } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9kYXRhLXRhYmxlL3RhYmxlLWhpZGRlbi1jb2x1bW5zLWJhci9oaWRkZW4tY29sdW1ucy1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvdGFibGUtaGlkZGVuLWNvbHVtbnMtYmFyL2hpZGRlbi1jb2x1bW5zLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFFckUsTUFLYSx5QkFBeUI7SUFMdEM7UUFRWSw0QkFBdUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBU3hEO0lBUEMseUJBQXlCLENBQUMsTUFBTSxFQUFFLE9BQU87UUFDdkMsTUFBTSxLQUFLLEdBQUc7WUFDWixNQUFNO1lBQ04sT0FBTztTQUNSLENBQUM7UUFDRixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7K0dBWFUseUJBQXlCO21HQUF6Qix5QkFBeUIsaUxDUHRDLDZrQkFhTTs7U0ROTyx5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSw4QkFBOEI7OEJBTS9CLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksdUJBQXVCO3NCQUFoQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi10YWJsZS1oaWRkZW4tY29sdW1ucy1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSGlkZGVuQ29sdW1uc0JhckNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgaGlkZGVuQ29sdW1uczogYW55O1xuICBAT3V0cHV0KCkgY29sdW1uVmlzaWJpbGl0eUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgc2V0Q29sdW1uVmlzaWJpbGl0eUNvbHVtbihjb2x1bW4sIHZpc2libGUpIHtcbiAgICBjb25zdCBldmVudCA9IHtcbiAgICAgIGNvbHVtbixcbiAgICAgIHZpc2libGVcbiAgICB9O1xuICAgIHRoaXMuY29sdW1uVmlzaWJpbGl0eUNoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoaWRkZW4tY29sdW1ucy1saXN0XCIgaWQ9XCJDb2x1bW5WaXNpYmlsaXR5SGVhZGVyXCI+XG4gICAgPGRpdlxuICAgICAgICAgICAgKGNsaWNrKT1cInNldENvbHVtblZpc2liaWxpdHlDb2x1bW4oY29sLCB0cnVlKVwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgY29sIG9mIGhpZGRlbkNvbHVtbnNcIlxuICAgICAgICAgICAgY2xhc3M9XCJoaWRkZW4tY29sdW1uLWl0ZW0gYWctZG5kLWdob3N0IGFnLXVuc2VsZWN0YWJsZSBhZy10aGVtZS1hbHBpbmVcIlxuICAgICAgICAgICAgaWQ9XCJDb2x1bW5WaXNpYmlsaXR5X3t7IGNvbC5oZWFkZXJOYW1lIH19XCJcbiAgICAgICAgICAgIHRpdGxlPVwiU2hvdyBjb2x1bW5cIlxuICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1kbmQtZ2hvc3QtaWNvblwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1pY29uIGFnLWljb24tZXllLXNsYXNoXCI+PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZy1kbmQtZ2hvc3QtbGFiZWxcIj57eyBjb2wuaGVhZGVyTmFtZSB9fTwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9kYXRhLXRhYmxlL3RhYmxlLWhpZGRlbi1jb2x1bW5zLWJhci9oaWRkZW4tY29sdW1ucy1iYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMveml0aS1jb25zb2xlLWxpYi9zcmMvbGliL2ZlYXR1cmVzL2RhdGEtdGFibGUvdGFibGUtaGlkZGVuLWNvbHVtbnMtYmFyL2hpZGRlbi1jb2x1bW5zLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDOzs7QUFFckUsTUFLYSx5QkFBeUI7SUFMdEM7UUFRWSw0QkFBdUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBU3hEO0lBUEMseUJBQXlCLENBQUMsTUFBTSxFQUFFLE9BQU87UUFDdkMsTUFBTSxLQUFLLEdBQUc7WUFDWixNQUFNO1lBQ04sT0FBTztTQUNSLENBQUM7UUFDRixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7K0dBWFUseUJBQXlCO21HQUF6Qix5QkFBeUIsaUxDUHRDLCtxQkFlTTs7U0RSTyx5QkFBeUI7NEZBQXpCLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSw4QkFBOEI7OEJBTS9CLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksdUJBQXVCO3NCQUFoQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi10YWJsZS1oaWRkZW4tY29sdW1ucy1iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaGlkZGVuLWNvbHVtbnMtYmFyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgSGlkZGVuQ29sdW1uc0JhckNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgaGlkZGVuQ29sdW1uczogYW55O1xuICBAT3V0cHV0KCkgY29sdW1uVmlzaWJpbGl0eUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgc2V0Q29sdW1uVmlzaWJpbGl0eUNvbHVtbihjb2x1bW4sIHZpc2libGUpIHtcbiAgICBjb25zdCBldmVudCA9IHtcbiAgICAgIGNvbHVtbixcbiAgICAgIHZpc2libGVcbiAgICB9O1xuICAgIHRoaXMuY29sdW1uVmlzaWJpbGl0eUNoYW5nZWQuZW1pdChldmVudCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoaWRkZW4tY29sdW1ucy1iYXItY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImhpZGRlbi1jb2x1bW5zLWxpc3RcIiBpZD1cIkNvbHVtblZpc2liaWxpdHlIZWFkZXJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXRDb2x1bW5WaXNpYmlsaXR5Q29sdW1uKGNvbCwgdHJ1ZSlcIlxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2wgb2YgaGlkZGVuQ29sdW1uc1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJoaWRkZW4tY29sdW1uLWl0ZW0gYWctZG5kLWdob3N0IGFnLXVuc2VsZWN0YWJsZSBhZy10aGVtZS1hbHBpbmVcIlxuICAgICAgICAgICAgICAgIGlkPVwiQ29sdW1uVmlzaWJpbGl0eV97eyBjb2wuaGVhZGVyTmFtZSB9fVwiXG4gICAgICAgICAgICAgICAgdGl0bGU9XCJTaG93IGNvbHVtblwiXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1kbmQtZ2hvc3QtaWNvblwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhZy1pY29uIGFnLWljb24tZXllLXNsYXNoXCI+PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWctZG5kLWdob3N0LWxhYmVsXCI+e3sgY29sLmhlYWRlck5hbWUgfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
@@ -24,6 +24,8 @@ class ExtensionsNoopService {
24
24
  this.closeAfterSave = true;
25
25
  this.moreActions = [];
26
26
  }
27
+ extendOnInit() {
28
+ }
27
29
  extendAfterViewInits(extentionPoints) {
28
30
  }
29
31
  updateFormData(data) {
@@ -47,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
47
49
  providedIn: 'root'
48
50
  }]
49
51
  }], ctorParameters: function () { return []; } });
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9ucy1ub29wLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvZXh0ZW5kYWJsZS9leHRlbnNpb25zLW5vb3Auc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE9BQU8sRUFBQyxVQUFVLEVBQUUsY0FBYyxFQUFvQixZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLGVBQWUsRUFBVSxNQUFNLE1BQU0sQ0FBQzs7QUFFOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQU0sbUJBQW1CLENBQUMsQ0FBQztBQWU5RSxNQUdhLHFCQUFxQjtJQU9oQztRQUxBLG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQU0sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQztRQUM1RCxXQUFNLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDcEQsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxFQUFFLENBQUM7SUFFRCxDQUFDO0lBRWpCLG9CQUFvQixDQUFDLGVBQW9CO0lBQ3pDLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBUztJQUN4QixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVM7UUFDckIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxZQUFpQjtRQUNuQyxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDOytHQXpCVSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOztTQUVQLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gICAgQ29weXJpZ2h0IE5ldEZvdW5kcnkgSW5jLlxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbmltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIFZpZXdDb250YWluZXJSZWYsIEV2ZW50RW1pdHRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcblxuZXhwb3J0IGNvbnN0IFNIQVJFRFpfRVhURU5TSU9OID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ1NIQVJFRFpfRVhURU5TSU9OJyk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5zaW9uU2VydmljZSB7XG4gIGZvcm1EYXRhQ2hhbmdlZDogQmVoYXZpb3JTdWJqZWN0PGFueT47XG4gIGNsb3NlZDogRXZlbnRFbWl0dGVyPGFueT47XG4gIGNsb3NlQWZ0ZXJTYXZlOiBib29sZWFuO1xuICBtb3JlQWN0aW9ucz86IGFueVtdO1xuICBsaXN0QWN0aW9ucz86IGFueVtdO1xuICBleHRlbmRBZnRlclZpZXdJbml0cyhleHRlbnRpb25Qb2ludHM6IGFueSk6IHZvaWQ7XG4gIHVwZGF0ZUZvcm1EYXRhKGRhdGE6IGFueSk6IHZvaWQ7XG4gIHZhbGlkYXRlRGF0YSgpOiBQcm9taXNlPGFueT47XG4gIGZvcm1EYXRhU2F2ZWQoZGF0YTogYW55KTogUHJvbWlzZTxhbnk+O1xuICBwcm9jZXNzVGFibGVDb2x1bW5zKHRhYmxlQ29sdW1uczogYW55KTogYW55W107XG59XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEV4dGVuc2lvbnNOb29wU2VydmljZSBpbXBsZW1lbnRzIEV4dGVuc2lvblNlcnZpY2Uge1xuXG4gIGZvcm1EYXRhQ2hhbmdlZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55Pih7aXNFbXB0eTogdHJ1ZX0pO1xuICBjbG9zZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIGNsb3NlQWZ0ZXJTYXZlID0gdHJ1ZTtcbiAgbW9yZUFjdGlvbnMgPSBbXTtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIGV4dGVuZEFmdGVyVmlld0luaXRzKGV4dGVudGlvblBvaW50czogYW55KTogdm9pZCB7XG4gIH1cblxuICB1cGRhdGVGb3JtRGF0YShkYXRhOiBhbnkpOiB2b2lkIHtcbiAgfVxuXG4gIGZvcm1EYXRhU2F2ZWQoZGF0YTogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGRhdGEpO1xuICB9XG5cbiAgdmFsaWRhdGVEYXRhKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0cnVlKTtcbiAgfVxuXG4gIHByb2Nlc3NUYWJsZUNvbHVtbnModGFibGVDb2x1bW5zOiBhbnkpOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRhYmxlQ29sdW1ucztcbiAgfVxufVxuIl19
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5zaW9ucy1ub29wLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvZXh0ZW5kYWJsZS9leHRlbnNpb25zLW5vb3Auc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7RUFjRTtBQUVGLE9BQU8sRUFBQyxVQUFVLEVBQUUsY0FBYyxFQUFvQixZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLGVBQWUsRUFBVSxNQUFNLE1BQU0sQ0FBQzs7QUFFOUMsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxjQUFjLENBQU0sbUJBQW1CLENBQUMsQ0FBQztBQWdCOUUsTUFHYSxxQkFBcUI7SUFPaEM7UUFMQSxvQkFBZSxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFDNUQsV0FBTSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3BELG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO0lBRUQsQ0FBQztJQUVqQixZQUFZO0lBQ1osQ0FBQztJQUVELG9CQUFvQixDQUFDLGVBQW9CO0lBQ3pDLENBQUM7SUFFRCxjQUFjLENBQUMsSUFBUztJQUN4QixDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVM7UUFDckIsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxZQUFpQjtRQUNuQyxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDOytHQTVCVSxxQkFBcUI7bUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOztTQUVQLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gICAgQ29weXJpZ2h0IE5ldEZvdW5kcnkgSW5jLlxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbmltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIFZpZXdDb250YWluZXJSZWYsIEV2ZW50RW1pdHRlcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcblxuZXhwb3J0IGNvbnN0IFNIQVJFRFpfRVhURU5TSU9OID0gbmV3IEluamVjdGlvblRva2VuPGFueT4oJ1NIQVJFRFpfRVhURU5TSU9OJyk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5zaW9uU2VydmljZSB7XG4gIGZvcm1EYXRhQ2hhbmdlZDogQmVoYXZpb3JTdWJqZWN0PGFueT47XG4gIGNsb3NlZDogRXZlbnRFbWl0dGVyPGFueT47XG4gIGNsb3NlQWZ0ZXJTYXZlOiBib29sZWFuO1xuICBtb3JlQWN0aW9ucz86IGFueVtdO1xuICBsaXN0QWN0aW9ucz86IGFueVtdO1xuICBleHRlbmRPbkluaXQoKTogdm9pZDtcbiAgZXh0ZW5kQWZ0ZXJWaWV3SW5pdHMoZXh0ZW50aW9uUG9pbnRzOiBhbnkpOiB2b2lkO1xuICB1cGRhdGVGb3JtRGF0YShkYXRhOiBhbnkpOiB2b2lkO1xuICB2YWxpZGF0ZURhdGEoKTogUHJvbWlzZTxhbnk+O1xuICBmb3JtRGF0YVNhdmVkKGRhdGE6IGFueSk6IFByb21pc2U8YW55PjtcbiAgcHJvY2Vzc1RhYmxlQ29sdW1ucyh0YWJsZUNvbHVtbnM6IGFueSk6IGFueVtdO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBFeHRlbnNpb25zTm9vcFNlcnZpY2UgaW1wbGVtZW50cyBFeHRlbnNpb25TZXJ2aWNlIHtcblxuICBmb3JtRGF0YUNoYW5nZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueT4oe2lzRW1wdHk6IHRydWV9KTtcbiAgY2xvc2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBjbG9zZUFmdGVyU2F2ZSA9IHRydWU7XG4gIG1vcmVBY3Rpb25zID0gW107XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBleHRlbmRPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBleHRlbmRBZnRlclZpZXdJbml0cyhleHRlbnRpb25Qb2ludHM6IGFueSk6IHZvaWQge1xuICB9XG5cbiAgdXBkYXRlRm9ybURhdGEoZGF0YTogYW55KTogdm9pZCB7XG4gIH1cblxuICBmb3JtRGF0YVNhdmVkKGRhdGE6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShkYXRhKTtcbiAgfVxuXG4gIHZhbGlkYXRlRGF0YSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7XG4gIH1cblxuICBwcm9jZXNzVGFibGVDb2x1bW5zKHRhYmxlQ29sdW1uczogYW55KTogYW55W10ge1xuICAgIHJldHVybiB0YWJsZUNvbHVtbnM7XG4gIH1cbn1cbiJdfQ==
@@ -31,6 +31,7 @@ class JsonViewComponent {
31
31
  this.dataChange = new EventEmitter();
32
32
  this.jsonChange = new EventEmitter();
33
33
  this.jsonInvalidChange = new EventEmitter();
34
+ this.editorInit = false;
34
35
  this.onChangeDebounced = _.debounce(this.onChange.bind(this), 400);
35
36
  }
36
37
  ngAfterViewInit() {
@@ -47,10 +48,13 @@ class JsonViewComponent {
47
48
  }
48
49
  }
49
50
  initEditor() {
51
+ if (!this.editorDiv || !this.data || this.editorInit) {
52
+ return;
53
+ }
50
54
  this.currentData = this.data;
51
55
  this.content = {
52
56
  text: undefined,
53
- json: this.data
57
+ json: this.data || {}
54
58
  };
55
59
  this.editor = new JSONEditor({
56
60
  target: this.editorDiv.nativeElement,
@@ -85,6 +89,7 @@ class JsonViewComponent {
85
89
  }
86
90
  }
87
91
  });
92
+ this.editorInit = true;
88
93
  }
89
94
  updateEditor() {
90
95
  if (_.isEqual(this.oldData, this.data)) {
@@ -92,7 +97,7 @@ class JsonViewComponent {
92
97
  }
93
98
  this.oldData = _.cloneDeep(this.data);
94
99
  this.content = {
95
- json: this.oldData
100
+ json: this.oldData || {}
96
101
  };
97
102
  this.editor.update(this.content);
98
103
  }
@@ -153,6 +158,11 @@ class JsonViewComponent {
153
158
  }
154
159
  }
155
160
  }
161
+ else if (changes['data']) {
162
+ if (!this.editorInit) {
163
+ this.initEditor();
164
+ }
165
+ }
156
166
  }
157
167
  validate(newData = undefined) {
158
168
  return this.editor.validate();
@@ -197,4 +207,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
197
207
  type: ViewChild,
198
208
  args: ['editor', { static: false }]
199
209
  }] } });
200
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9qc29uLXZpZXcvanNvbi12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9qc29uLXZpZXcvanNvbi12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRXhELE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxNQUFNLG9CQUFvQixDQUFDOzs7O0FBRXhFLE1BS2EsaUJBQWlCO0lBbUI1QixZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFqQnpDLFNBQUksR0FBUSxFQUFFLENBQUM7UUFDZixXQUFNLEdBQVEsRUFBRSxDQUFDO1FBQ2pCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUN6QixlQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbkQsZUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ25ELHNCQUFpQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBV2xFLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FB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QyxNQUFNLEVBQUUsS0FBSyxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAgICBDb3B5cmlnaHQgTmV0Rm91bmRyeSBJbmMuXG5cbiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgIGh0dHBzOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcblxuICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LCBPbkNoYW5nZXMsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7R3Jvd2xlclNlcnZpY2V9IGZyb20gJy4uL21lc3NhZ2luZy9ncm93bGVyLnNlcnZpY2UnO1xuaW1wb3J0IHtHcm93bGVyTW9kZWx9IGZyb20gJy4uL21lc3NhZ2luZy9ncm93bGVyLm1vZGVsJztcblxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7Y3JlYXRlQWp2VmFsaWRhdG9yLCBKU09ORWRpdG9yLCBNb2RlfSBmcm9tIFwidmFuaWxsYS1qc29uZWRpdG9yXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1qc29uLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vanNvbi12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vanNvbi12aWV3LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEpzb25WaWV3Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBkYXRhOiBhbnkgPSB7fTtcbiAgQElucHV0KCkgc2NoZW1hOiBhbnkgPSB7fTtcbiAgQElucHV0KCkgcmVhZE9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkganNvbkludmFsaWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgc2hvd0NvcHk6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQE91dHB1dCgpIGRhdGFDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkganNvbkNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBqc29uSW52YWxpZENoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIG9uQ2hhbmdlRGVib3VuY2VkO1xuICBzY2hlbWFSZWZzOiBhbnk7XG4gIGNvbnRlbnQ6IGFueTtcbiAgQFZpZXdDaGlsZCgnZWRpdG9yJywge3N0YXRpYzogZmFsc2V9KSBlZGl0b3JEaXYhOiBFbGVtZW50UmVmO1xuICB2YWxpZGF0b3I6IGFueTtcbiAgcHJpdmF0ZSBlZGl0b3I6IEpTT05FZGl0b3I7XG4gIHByaXZhdGUgc2NoZW1hRGVmaW5pdGlvbnM6IGFueTtcbiAgb2xkRGF0YTogYW55O1xuICBjdXJyZW50RGF0YTogYW55O1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGdyb3dsZXJTZXJ2aWNlOiBHcm93bGVyU2VydmljZSkge1xuICAgIHRoaXMub25DaGFuZ2VEZWJvdW5jZWQgPSBfLmRlYm91bmNlKHRoaXMub25DaGFuZ2UuYmluZCh0aGlzKSwgNDAwKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5zY2hlbWEpIHtcbiAgICAgIHRoaXMudmFsaWRhdG9yID0gY3JlYXRlQWp2VmFsaWRhdG9yKHtcbiAgICAgICAgc2NoZW1hOiB0aGlzLnNjaGVtYSxcbiAgICAgICAgc2NoZW1hRGVmaW5pdGlvbnM6IHRoaXMuc2NoZW1hRGVmaW5pdGlvbnMsXG4gICAgICAgIGFqdk9wdGlvbnM6IHt9XG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5pbml0RWRpdG9yKCk7XG4gICAgaWYgKHRoaXMucmVhZE9ubHkpIHtcbiAgICAgIHRoaXMud2F0Y2hEYXRhKCk7XG4gICAgfVxuICB9XG5cbiAgaW5pdEVkaXRvcigpIHtcbiAgICB0aGlzLmN1cnJlbnREYXRhID0gdGhpcy5kYXRhO1xuICAgIHRoaXMuY29udGVudCA9IHtcbiAgICAgIHRleHQ6IHVuZGVmaW5lZCxcbiAgICAgIGpzb246IHRoaXMuZGF0YVxuICAgIH07XG4gICAgdGhpcy5lZGl0b3IgPSBuZXcgSlNPTkVkaXRvcih7XG4gICAgICB0YXJnZXQ6IHRoaXMuZWRpdG9yRGl2Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICBwcm9wczoge1xuICAgICAgICB2YWxpZGF0b3I6IHRoaXMudmFsaWRhdG9yLFxuICAgICAgICBjb250ZW50OiB0aGlzLmNvbnRlbnQsXG4gICAgICAgIHJlYWRPbmx5OiB0aGlzLnJlYWRPbmx5LFxuICAgICAgICBtb2RlOiBNb2RlLnRleHQsXG4gICAgICAgIG9uQ2hhbmdlOiAodXBkYXRlZENvbnRlbnQsIHByZXZpb3VzQ29udGVudCwge2NvbnRlbnRFcnJvcnMsIHBhdGNoUmVzdWx0fSkgPT4ge1xuICAgICAgICAgIHRoaXMuY29udGVudCA9IHVwZGF0ZWRDb250ZW50XG4gICAgICAgICAgaWYgKHRoaXMuY29udGVudD8uanNvbikge1xuICAgICAgICAgICAgdGhpcy5kYXRhQ2hhbmdlLmVtaXQodGhpcy5jb250ZW50Lmpzb24pO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50RGF0YSA9IHRoaXMuY29udGVudC5qc29uO1xuICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5jb250ZW50Py50ZXh0KSB7XG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICBjb25zdCBuZXdEYXRhID0gSlNPTi5wYXJzZSh0aGlzLmNvbnRlbnQudGV4dClcbiAgICAgICAgICAgICAgdGhpcy5kYXRhQ2hhbmdlLmVtaXQobmV3RGF0YSk7XG4gICAgICAgICAgICAgIHRoaXMuY3VycmVudERhdGEgPSBuZXdEYXRhO1xuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICB0aGlzLmpzb25JbnZhbGlkQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCBlcnJvcnMgPSB0aGlzLnZhbGlkYXRlKHRoaXMuY3VycmVudERhdGEpO1xuICAgICAgICAgIGlmICghZXJyb3JzICYmICFfLmlzRW1wdHkodGhpcy5jb250ZW50LnRleHQpKSB7XG4gICAgICAgICAgICB0aGlzLmpzb25JbnZhbGlkQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmpzb25JbnZhbGlkQ2hhbmdlLmVtaXQodHJ1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICB1cGRhdGVFZGl0b3IoKSB7XG4gICAgaWYgKF8uaXNFcXVhbCh0aGlzLm9sZERhdGEsIHRoaXMuZGF0YSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vbGREYXRhID0gXy5jbG9uZURlZXAodGhpcy5kYXRhKTtcbiAgICB0aGlzLmNvbnRlbnQgPSB7XG4gICAgICBqc29uOiB0aGlzLm9sZERhdGFcbiAgICB9O1xuICAgIHRoaXMuZWRpdG9yLnVwZGF0ZSh0aGlzLmNvbnRlbnQpO1xuICB9XG5cbiAgd2F0Y2hEYXRhKCkge1xuICAgIGNvbnN0IHdhdGNoRGF0YU9iaiA9IChvcmlnaW5hbERhdGEsIHNlbGYsIGNhbGxiYWNrKSA9PiB7XG4gICAgICBfLmRlbGF5KCgpID0+IHtcbiAgICAgICAgY29uc3QgY3VycmVudERhdGEgPSBzZWxmLmRhdGE7XG4gICAgICAgIGlmICghXy5pc0VxdWFsKG9yaWdpbmFsRGF0YSwgY3VycmVudERhdGEpKSB7XG4gICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgICBvcmlnaW5hbERhdGEgPSBfLmNsb25lRGVlcChjdXJyZW50RGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgd2F0Y2hEYXRhT2JqKG9yaWdpbmFsRGF0YSwgc2VsZiwgY2FsbGJhY2spO1xuICAgICAgfSwgMTAwKTtcbiAgICB9O1xuICAgIGNvbnN0IG9yaWdpbmFsRGF0YSA9IF8uY2xvbmVEZWVwKHRoaXMuZGF0YSk7XG4gICAgd2F0Y2hEYXRhT2JqKG9yaWdpbmFsRGF0YSwgdGhpcywgKHZhbCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVFZGl0b3IoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIG9uQ2hhbmdlKCkge1xuICAgIGxldCBuZXdEYXRhO1xuICAgIHRyeSB7XG4gICAgICBuZXdEYXRhID0gdGhpcy5lZGl0b3IuZ2V0KCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgfVxuXG4gICAgaWYgKG5ld0RhdGEpIHtcbiAgICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KG5ld0RhdGEpO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9ycyA9IGF3YWl0IHRoaXMudmFsaWRhdGUobmV3RGF0YSk7XG4gICAgaWYgKCFlcnJvcnMpIHtcbiAgICAgIGlmIChuZXdEYXRhKSB7XG4gICAgICAgIHRoaXMuanNvbkNoYW5nZS5lbWl0KG5ld0RhdGEpO1xuICAgICAgfVxuICAgICAgdGhpcy5qc29uSW52YWxpZENoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5qc29uSW52YWxpZENoYW5nZS5lbWl0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXREYXRhKCkge1xuICAgIHJldHVybiB0aGlzLmVkaXRvci5nZXQoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snc2NoZW1hJ10pIHtcbiAgICAgIHRoaXMuc2NoZW1hID0gY2hhbmdlc1snc2NoZW1hJ10uY3VycmVudFZhbHVlO1xuXG4gICAgICBpZih0aGlzLnNjaGVtYSkge1xuICAgICAgICBpZiAodGhpcy52YWxpZGF0b3IpIHtcbiAgICAgICAgICB0aGlzLnZhbGlkYXRvci5zY2hlbWEgPSB0aGlzLnNjaGVtYTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnZhbGlkYXRvciA9IGNyZWF0ZUFqdlZhbGlkYXRvcih7XG4gICAgICAgICAgICBzY2hlbWE6IGNoYW5nZXNbJ3NjaGVtYSddLmN1cnJlbnRWYWx1ZSxcbiAgICAgICAgICAgIHNjaGVtYURlZmluaXRpb25zOiB0aGlzLnNjaGVtYURlZmluaXRpb25zLFxuICAgICAgICAgICAgYWp2T3B0aW9uczoge31cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZShuZXdEYXRhOiBhbnkgPSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdGhpcy5lZGl0b3IudmFsaWRhdGUoKTtcbiAgfVxuXG4gIGVudGVyS2V5UHJlc3NlZChldmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gIH1cblxuICBqc29uQ2hhbmdlZChldmVudCkge1xuICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KHRoaXMuZGF0YSk7XG4gIH1cblxuICBjb3B5VG9DbGlwYm9hZCgpIHtcbiAgICB2YXIgY2xpcERhdGEgPSBKU09OLnN0cmluZ2lmeShKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuZGF0YSkpLG51bGwsMik7XG4gICAgbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQoY2xpcERhdGEpO1xuICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgJ3N1Y2Nlc3MnLFxuICAgICAgICAnU3VjY2VzcycsXG4gICAgICAgIGBUZXh0IENvcGllZGAsXG4gICAgICAgIGBBUEkgY2FsbCBKU09OIGJvZHkgY29waWVkIHRvIGNsaXBib2FyZGAsXG4gICAgKTtcbiAgICB0aGlzLmdyb3dsZXJTZXJ2aWNlLnNob3coZ3Jvd2xlckRhdGEpO1xuICB9XG59XG4iLCI8ZGl2IGlkPVwianNvbmVkaXRvclwiIFtuZ0NsYXNzXT1cInsncmVhZC1vbmx5JzogcmVhZE9ubHl9XCIgI2VkaXRvciAoa2V5dXAuZW50ZXIpPVwiZW50ZXJLZXlQcmVzc2VkKCRldmVudClcIiAoa2V5dXApPVwianNvbkNoYW5nZWQoJGV2ZW50KVwiPjwvZGl2PlxuPGRpdiAqbmdJZj1cInNob3dDb3B5XCIgY2xhc3M9XCJpY29uLWNvcHkgY29weVwiIChjbGljayk9XCJjb3B5VG9DbGlwYm9hZCgpXCI+PC9kaXY+Il19
210
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9qc29uLXZpZXcvanNvbi12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9qc29uLXZpZXcvanNvbi12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRXhELE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBQyxNQUFNLG9CQUFvQixDQUFDOzs7O0FBRXhFLE1BS2EsaUJBQWlCO0lBcUI1QixZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFuQnpDLFNBQUksR0FBUSxFQUFFLENBQUM7UUFDZixXQUFNLEdBQVEsRUFBRSxDQUFDO1FBQ2pCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUN6QixlQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbkQsZUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ25ELHNCQUFpQixHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBVXBFLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFHakIsSUFBSSxDQUFDLGlCQUFpQixHQUFHLENB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dEM5Qiw2T0FDOEU7O1NEcUNqRSxpQkFBaUI7NEZBQWpCLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxlQUFlO3FHQU1oQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBSStCLFNBQVM7c0JBQTlDLFNBQVM7dUJBQUMsUUFBUSxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gICAgQ29weXJpZ2h0IE5ldEZvdW5kcnkgSW5jLlxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCwgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5pbXBvcnQge0dyb3dsZXJTZXJ2aWNlfSBmcm9tICcuLi9tZXNzYWdpbmcvZ3Jvd2xlci5zZXJ2aWNlJztcbmltcG9ydCB7R3Jvd2xlck1vZGVsfSBmcm9tICcuLi9tZXNzYWdpbmcvZ3Jvd2xlci5tb2RlbCc7XG5cbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge2NyZWF0ZUFqdlZhbGlkYXRvciwgSlNPTkVkaXRvciwgTW9kZX0gZnJvbSBcInZhbmlsbGEtanNvbmVkaXRvclwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItanNvbi12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2pzb24tdmlldy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2pzb24tdmlldy5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBKc29uVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG5cbiAgQElucHV0KCkgZGF0YTogYW55ID0ge307XG4gIEBJbnB1dCgpIHNjaGVtYTogYW55ID0ge307XG4gIEBJbnB1dCgpIHJlYWRPbmx5OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGpzb25JbnZhbGlkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNob3dDb3B5OiBib29sZWFuID0gZmFsc2U7XG4gIEBPdXRwdXQoKSBkYXRhQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGpzb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkganNvbkludmFsaWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBvbkNoYW5nZURlYm91bmNlZDtcbiAgc2NoZW1hUmVmczogYW55O1xuICBjb250ZW50OiBhbnk7XG4gIEBWaWV3Q2hpbGQoJ2VkaXRvcicsIHtzdGF0aWM6IGZhbHNlfSkgZWRpdG9yRGl2ITogRWxlbWVudFJlZjtcbiAgdmFsaWRhdG9yOiBhbnk7XG4gIHByaXZhdGUgZWRpdG9yOiBKU09ORWRpdG9yO1xuICBwcml2YXRlIHNjaGVtYURlZmluaXRpb25zOiBhbnk7XG4gIG9sZERhdGE6IGFueTtcbiAgY3VycmVudERhdGE6IGFueTtcbiAgZWRpdG9ySW5pdCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZ3Jvd2xlclNlcnZpY2U6IEdyb3dsZXJTZXJ2aWNlKSB7XG4gICAgdGhpcy5vbkNoYW5nZURlYm91bmNlZCA9IF8uZGVib3VuY2UodGhpcy5vbkNoYW5nZS5iaW5kKHRoaXMpLCA0MDApO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLnNjaGVtYSkge1xuICAgICAgdGhpcy52YWxpZGF0b3IgPSBjcmVhdGVBanZWYWxpZGF0b3Ioe1xuICAgICAgICBzY2hlbWE6IHRoaXMuc2NoZW1hLFxuICAgICAgICBzY2hlbWFEZWZpbml0aW9uczogdGhpcy5zY2hlbWFEZWZpbml0aW9ucyxcbiAgICAgICAgYWp2T3B0aW9uczoge31cbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLmluaXRFZGl0b3IoKTtcbiAgICBpZiAodGhpcy5yZWFkT25seSkge1xuICAgICAgdGhpcy53YXRjaERhdGEoKTtcbiAgICB9XG4gIH1cblxuICBpbml0RWRpdG9yKCkge1xuICAgIGlmICghdGhpcy5lZGl0b3JEaXYgfHwgIXRoaXMuZGF0YSB8fCB0aGlzLmVkaXRvckluaXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jdXJyZW50RGF0YSA9IHRoaXMuZGF0YTtcbiAgICB0aGlzLmNvbnRlbnQgPSB7XG4gICAgICB0ZXh0OiB1bmRlZmluZWQsXG4gICAgICBqc29uOiB0aGlzLmRhdGEgfHwge31cbiAgICB9O1xuICAgIHRoaXMuZWRpdG9yID0gbmV3IEpTT05FZGl0b3Ioe1xuICAgICAgdGFyZ2V0OiB0aGlzLmVkaXRvckRpdi5uYXRpdmVFbGVtZW50LFxuICAgICAgcHJvcHM6IHtcbiAgICAgICAgdmFsaWRhdG9yOiB0aGlzLnZhbGlkYXRvcixcbiAgICAgICAgY29udGVudDogdGhpcy5jb250ZW50LFxuICAgICAgICByZWFkT25seTogdGhpcy5yZWFkT25seSxcbiAgICAgICAgbW9kZTogTW9kZS50ZXh0LFxuICAgICAgICBvbkNoYW5nZTogKHVwZGF0ZWRDb250ZW50LCBwcmV2aW91c0NvbnRlbnQsIHtjb250ZW50RXJyb3JzLCBwYXRjaFJlc3VsdH0pID0+IHtcbiAgICAgICAgICB0aGlzLmNvbnRlbnQgPSB1cGRhdGVkQ29udGVudFxuICAgICAgICAgIGlmICh0aGlzLmNvbnRlbnQ/Lmpzb24pIHtcbiAgICAgICAgICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KHRoaXMuY29udGVudC5qc29uKTtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudERhdGEgPSB0aGlzLmNvbnRlbnQuanNvbjtcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuY29udGVudD8udGV4dCkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgY29uc3QgbmV3RGF0YSA9IEpTT04ucGFyc2UodGhpcy5jb250ZW50LnRleHQpXG4gICAgICAgICAgICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KG5ld0RhdGEpO1xuICAgICAgICAgICAgICB0aGlzLmN1cnJlbnREYXRhID0gbmV3RGF0YTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgdGhpcy5qc29uSW52YWxpZENoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgZXJyb3JzID0gdGhpcy52YWxpZGF0ZSh0aGlzLmN1cnJlbnREYXRhKTtcbiAgICAgICAgICBpZiAoIWVycm9ycyAmJiAhXy5pc0VtcHR5KHRoaXMuY29udGVudC50ZXh0KSkge1xuICAgICAgICAgICAgdGhpcy5qc29uSW52YWxpZENoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5qc29uSW52YWxpZENoYW5nZS5lbWl0KHRydWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMuZWRpdG9ySW5pdCA9IHRydWU7XG4gIH1cblxuICB1cGRhdGVFZGl0b3IoKSB7XG4gICAgaWYgKF8uaXNFcXVhbCh0aGlzLm9sZERhdGEsIHRoaXMuZGF0YSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5vbGREYXRhID0gXy5jbG9uZURlZXAodGhpcy5kYXRhKTtcbiAgICB0aGlzLmNvbnRlbnQgPSB7XG4gICAgICBqc29uOiB0aGlzLm9sZERhdGEgfHwge31cbiAgICB9O1xuICAgIHRoaXMuZWRpdG9yLnVwZGF0ZSh0aGlzLmNvbnRlbnQpO1xuICB9XG5cbiAgd2F0Y2hEYXRhKCkge1xuICAgIGNvbnN0IHdhdGNoRGF0YU9iaiA9IChvcmlnaW5hbERhdGEsIHNlbGYsIGNhbGxiYWNrKSA9PiB7XG4gICAgICBfLmRlbGF5KCgpID0+IHtcbiAgICAgICAgY29uc3QgY3VycmVudERhdGEgPSBzZWxmLmRhdGE7XG4gICAgICAgIGlmICghXy5pc0VxdWFsKG9yaWdpbmFsRGF0YSwgY3VycmVudERhdGEpKSB7XG4gICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgICBvcmlnaW5hbERhdGEgPSBfLmNsb25lRGVlcChjdXJyZW50RGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgd2F0Y2hEYXRhT2JqKG9yaWdpbmFsRGF0YSwgc2VsZiwgY2FsbGJhY2spO1xuICAgICAgfSwgMTAwKTtcbiAgICB9O1xuICAgIGNvbnN0IG9yaWdpbmFsRGF0YSA9IF8uY2xvbmVEZWVwKHRoaXMuZGF0YSk7XG4gICAgd2F0Y2hEYXRhT2JqKG9yaWdpbmFsRGF0YSwgdGhpcywgKHZhbCkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVFZGl0b3IoKTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIG9uQ2hhbmdlKCkge1xuICAgIGxldCBuZXdEYXRhO1xuICAgIHRyeSB7XG4gICAgICBuZXdEYXRhID0gdGhpcy5lZGl0b3IuZ2V0KCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5sb2coZSk7XG4gICAgfVxuXG4gICAgaWYgKG5ld0RhdGEpIHtcbiAgICAgIHRoaXMuZGF0YUNoYW5nZS5lbWl0KG5ld0RhdGEpO1xuICAgIH1cblxuICAgIGNvbnN0IGVycm9ycyA9IGF3YWl0IHRoaXMudmFsaWRhdGUobmV3RGF0YSk7XG4gICAgaWYgKCFlcnJvcnMpIHtcbiAgICAgIGlmIChuZXdEYXRhKSB7XG4gICAgICAgIHRoaXMuanNvbkNoYW5nZS5lbWl0KG5ld0RhdGEpO1xuICAgICAgfVxuICAgICAgdGhpcy5qc29uSW52YWxpZENoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5qc29uSW52YWxpZENoYW5nZS5lbWl0KHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXREYXRhKCkge1xuICAgIHJldHVybiB0aGlzLmVkaXRvci5nZXQoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snc2NoZW1hJ10pIHtcbiAgICAgIHRoaXMuc2NoZW1hID0gY2hhbmdlc1snc2NoZW1hJ10uY3VycmVudFZhbHVlO1xuXG4gICAgICBpZih0aGlzLnNjaGVtYSkge1xuICAgICAgICBpZiAodGhpcy52YWxpZGF0b3IpIHtcbiAgICAgICAgICB0aGlzLnZhbGlkYXRvci5zY2hlbWEgPSB0aGlzLnNjaGVtYTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnZhbGlkYXRvciA9IGNyZWF0ZUFqdlZhbGlkYXRvcih7XG4gICAgICAgICAgICBzY2hlbWE6IGNoYW5nZXNbJ3NjaGVtYSddLmN1cnJlbnRWYWx1ZSxcbiAgICAgICAgICAgIHNjaGVtYURlZmluaXRpb25zOiB0aGlzLnNjaGVtYURlZmluaXRpb25zLFxuICAgICAgICAgICAgYWp2T3B0aW9uczoge31cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoY2hhbmdlc1snZGF0YSddKSB7XG4gICAgICBpZiAoIXRoaXMuZWRpdG9ySW5pdCkge1xuICAgICAgICB0aGlzLmluaXRFZGl0b3IoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdmFsaWRhdGUobmV3RGF0YTogYW55ID0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHRoaXMuZWRpdG9yLnZhbGlkYXRlKCk7XG4gIH1cblxuICBlbnRlcktleVByZXNzZWQoZXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAganNvbkNoYW5nZWQoZXZlbnQpIHtcbiAgICB0aGlzLmRhdGFDaGFuZ2UuZW1pdCh0aGlzLmRhdGEpO1xuICB9XG5cbiAgY29weVRvQ2xpcGJvYWQoKSB7XG4gICAgdmFyIGNsaXBEYXRhID0gSlNPTi5zdHJpbmdpZnkoSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGEpKSxudWxsLDIpO1xuICAgIG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGNsaXBEYXRhKTtcbiAgICBjb25zdCBncm93bGVyRGF0YSA9IG5ldyBHcm93bGVyTW9kZWwoXG4gICAgICAgICdzdWNjZXNzJyxcbiAgICAgICAgJ1N1Y2Nlc3MnLFxuICAgICAgICBgVGV4dCBDb3BpZWRgLFxuICAgICAgICBgQVBJIGNhbGwgSlNPTiBib2R5IGNvcGllZCB0byBjbGlwYm9hcmRgLFxuICAgICk7XG4gICAgdGhpcy5ncm93bGVyU2VydmljZS5zaG93KGdyb3dsZXJEYXRhKTtcbiAgfVxufVxuIiwiPGRpdiBpZD1cImpzb25lZGl0b3JcIiBbbmdDbGFzc109XCJ7J3JlYWQtb25seSc6IHJlYWRPbmx5fVwiICNlZGl0b3IgKGtleXVwLmVudGVyKT1cImVudGVyS2V5UHJlc3NlZCgkZXZlbnQpXCIgKGtleXVwKT1cImpzb25DaGFuZ2VkKCRldmVudClcIj48L2Rpdj5cbjxkaXYgKm5nSWY9XCJzaG93Q29weVwiIGNsYXNzPVwiaWNvbi1jb3B5IGNvcHlcIiAoY2xpY2spPVwiY29weVRvQ2xpcGJvYWQoKVwiPjwvZGl2PiJdfQ==
@@ -156,7 +156,14 @@ class ConfigurationFormComponent extends ProjectableForm {
156
156
  this.isLoading = false;
157
157
  });
158
158
  if (configId) {
159
- this.closeModal(true, true);
159
+ this.initData = this.formData;
160
+ this._dataChange = false;
161
+ if (this.isModal) {
162
+ this.closeModal(true, true);
163
+ }
164
+ else {
165
+ this.returnToListPage();
166
+ }
160
167
  }
161
168
  ;
162
169
  }
@@ -236,4 +243,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
236
243
  type: ViewChild,
237
244
  args: ["configEditor", { read: ConfigEditorComponent }]
238
245
  }] } });
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9wcm9qZWN0YWJsZS1mb3Jtcy9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb24tZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvcHJvamVjdGFibGUtZm9ybXMvY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFBRSxNQUFNLEVBQ3BCLEtBQUssRUFFRyxNQUFNLEVBQ2QsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxPQUFPLEVBQW1CLGlCQUFpQixFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDN0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFFbEYsT0FBTyxFQUFDLFNBQVMsRUFBUyxPQUFPLEVBQVEsTUFBTSxRQUFRLENBQUM7QUFDeEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBQyxnQkFBZ0IsRUFBa0IsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRixPQUFPLEVBQUMsaUJBQWlCLEVBQWtCLE1BQU0scUNBQXFDLENBQUM7QUFFdkYsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsTUFLYSwwQkFBMkIsU0FBUSxlQUFlO0lBdUIzRCxZQUNXLEdB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QUFDLENBQUM7SUFDNUMsQ0FBQzsrR0F6TVEsMEJBQTBCLGlIQTJCdkIsaUJBQWlCLGFBQ2pCLGdCQUFnQixhQUNoQixpQkFBaUI7bUdBN0JwQiwwQkFBMEIsbU9Bc0JELHFCQUFxQixvRENsRTNELHFtTEF3R0E7O1NENURhLDBCQUEwQjs0RkFBMUIsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNJLG1CQUFtQjs7MEJBK0J4QixNQUFNOzJCQUFDLGlCQUFpQjs7MEJBQ3hCLE1BQU07MkJBQUMsZ0JBQWdCOzswQkFDdkIsTUFBTTsyQkFBQyxpQkFBaUI7OEZBM0JYLFFBQVE7c0JBQXpCLEtBQUs7Z0JBQ1ksTUFBTTtzQkFBdkIsS0FBSztnQkFDSSxLQUFLO3NCQUFkLE1BQU07Z0JBa0JtRCxZQUFZO3NCQUFyRSxTQUFTO3VCQUFDLGNBQWMsRUFBRSxFQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gICAgQ29weXJpZ2h0IE5ldEZvdW5kcnkgSW5jLlxuXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG5cbiAgICBodHRwczovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG5cbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiovXG5cbmltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIEV2ZW50RW1pdHRlciwgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb25maWd1cmF0aW9uU2VydmljZX0gZnJvbSBcIi4vY29uZmlndXJhdGlvbi5zZXJ2aWNlXCI7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7U2NoZW1hU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzL3NjaGVtYS5zZXJ2aWNlXCI7XG5pbXBvcnQge1Byb2plY3RhYmxlRm9ybX0gZnJvbSBcIi4uL3Byb2plY3RhYmxlLWZvcm0uY2xhc3NcIjtcbmltcG9ydCB7R3Jvd2xlclNlcnZpY2V9IGZyb20gXCIuLi8uLi9tZXNzYWdpbmcvZ3Jvd2xlci5zZXJ2aWNlXCI7XG5pbXBvcnQge0V4dGVuc2lvblNlcnZpY2UsIFNIQVJFRFpfRVhURU5TSU9OfSBmcm9tIFwiLi4vLi4vZXh0ZW5kYWJsZS9leHRlbnNpb25zLW5vb3Auc2VydmljZVwiO1xuaW1wb3J0IHtDb25maWdFZGl0b3JDb21wb25lbnR9IGZyb20gXCIuLi8uLi9jb25maWctZWRpdG9yL2NvbmZpZy1lZGl0b3IuY29tcG9uZW50XCI7XG5cbmltcG9ydCB7Y2xvbmVEZWVwLCBkZWZlciwgaXNFbXB0eSwgdW5zZXR9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge0dyb3dsZXJNb2RlbH0gZnJvbSBcIi4uLy4uL21lc3NhZ2luZy9ncm93bGVyLm1vZGVsXCI7XG5pbXBvcnQge1NFVFRJTkdTX1NFUlZJQ0UsIFNldHRpbmdzU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzL3NldHRpbmdzLnNlcnZpY2VcIjtcbmltcG9ydCB7WklUSV9EQVRBX1NFUlZJQ0UsIFppdGlEYXRhU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2VzL3ppdGktZGF0YS5zZXJ2aWNlXCI7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlLCBSb3V0ZXJ9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7Q29uZmlnfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2NvbmZpZ1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2xpYi1jb25maWd1cmF0aW9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb25maWd1cmF0aW9uLWZvcm0uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDb25maWd1cmF0aW9uRm9ybUNvbXBvbmVudCBleHRlbmRzIFByb2plY3RhYmxlRm9ybSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIEBJbnB1dCgpIG92ZXJyaWRlIGZvcm1EYXRhOiBhbnkgPSB7fTtcbiAgICBASW5wdXQoKSBvdmVycmlkZSBlcnJvcnM6IGFueSA9IHt9O1xuICAgIEBPdXRwdXQoKSBjbG9zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gICAgb3B0aW9uczogYW55W10gPSBbXTtcbiAgICBpc0VkaXRpbmcgPSAhaXNFbXB0eSh0aGlzLmZvcm1EYXRhLmlkKTtcbiAgICBmb3JtVmlldyA9ICdzaW1wbGUnO1xuICAgIGZvcm1EYXRhSW52YWxpZCA9IGZhbHNlO1xuICAgIGVkaXRNb2RlID0gZmFsc2U7XG4gICAgaXRlbXM6IGFueSA9IFtdO1xuICAgIHNlbGVjdGVkU2NoZW1hOiBhbnkgPSAnJztcbiAgICBhc3NvY2lhdGVkU2VydmljZXMgPSBbXTtcbiAgICBhc3NvY2lhdGVkU2VydmljZU5hbWVzID0gW107XG4gICAgc2VydmljZXNMb2FkaW5nID0gZmFsc2U7XG4gICAgc2V0dGluZ3M6IGFueSA9IHt9O1xuICAgIHNlbGVjdGVkQ29uZmlnVHlwZUlkID0gJyc7XG5cbiAgICBvdmVycmlkZSBlbnRpdHlUeXBlID0gJ2NvbmZpZ3MnO1xuICAgIG92ZXJyaWRlIGVudGl0eUNsYXNzID0gQ29uZmlnO1xuXG4gICAgQFZpZXdDaGlsZChcImNvbmZpZ0VkaXRvclwiLCB7cmVhZDogQ29uZmlnRWRpdG9yQ29tcG9uZW50fSkgY29uZmlnRWRpdG9yITogQ29uZmlnRWRpdG9yQ29tcG9uZW50O1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgc3ZjOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBzY2hlbWFTdmM6IFNjaGVtYVNlcnZpY2UsXG4gICAgICAgIGdyb3dsZXJTZXJ2aWNlOiBHcm93bGVyU2VydmljZSxcbiAgICAgICAgQEluamVjdChTSEFSRURaX0VYVEVOU0lPTikgZXh0U2VydmljZTogRXh0ZW5zaW9uU2VydmljZSxcbiAgICAgICAgQEluamVjdChTRVRUSU5HU19TRVJWSUNFKSBwdWJsaWMgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoWklUSV9EQVRBX1NFUlZJQ0UpIG92ZXJyaWRlIHppdGlTZXJ2aWNlOiBaaXRpRGF0YVNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBvdmVycmlkZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJvdGVjdGVkIG92ZXJyaWRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZ3Jvd2xlclNlcnZpY2UsIGV4dFNlcnZpY2UsIHppdGlTZXJ2aWNlLCByb3V0ZXIsIHJvdXRlKTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5zZXR0aW5nc1NlcnZpY2Uuc2V0dGluZ3NDaGFuZ2Uuc3Vic2NyaWJlKChyZXN1bHRzOmFueSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXR0aW5ncyA9IHJlc3VsdHM7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGVudGl0eVVwZGF0ZWQoKSB7XG4gICAgICAgIGlmIChpc0VtcHR5KHRoaXMuZm9ybURhdGE/LmRhdGEpKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1EYXRhLmRhdGEgPSB7fTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNFbXB0eSh0aGlzLmZvcm1EYXRhPy5jb25maWdUeXBlSWQpKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb25maWdUeXBlSWQgPSB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZDtcbiAgICAgICAgdGhpcy5pbml0RGF0YSA9IGNsb25lRGVlcCh0aGlzLmZvcm1EYXRhKTtcbiAgICAgICAgdGhpcy5zdmMuY29uZmlnSnNvblZpZXcgPSBmYWxzZTtcbiAgICAgICAgLy90aGlzLmdldEFzc29jaWF0ZWRTZXJ2aWNlcygpO1xuICAgICAgICB0aGlzLnN2Yy5nZXRDb25maWdUeXBlcygpXG4gICAgICAgICAgICAudGhlbihjb25maWdUeXBlcyA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zID0gY29uZmlnVHlwZXMuc29ydCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuZ2V0U2NoZW1hKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5pc0VkaXRpbmcgPSAhaXNFbXB0eSh0aGlzLmZvcm1EYXRhLmlkKTtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnVHlwZUVtcHR5KSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCA9ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0QXNzb2NpYXRlZFNlcnZpY2VzKCkge1xuICAgICAgICB0aGlzLnN2Yy5nZXRBc3NvY2lhdGVkU2VydmljZXModGhpcy5mb3JtRGF0YS5pZCkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmFzc29jaWF0ZWRTZXJ2aWNlcyA9IHJlc3VsdC5hc3NvY2lhdGVkU2VydmljZXM7XG4gICAgICAgICAgICB0aGlzLmFzc29jaWF0ZWRTZXJ2aWNlTmFtZXMgPSByZXN1bHQuYXNzb2NpYXRlZFNlcnZpY2VOYW1lcztcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2xlYXJGb3JtKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbmZpZ1R5cGVFbXB0eSgpIHtcbiAgICAgICAgcmV0dXJuIGlzRW1wdHkodGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQpO1xuICAgIH1cblxuICAgIGhlYWRlckFjdGlvblJlcXVlc3RlZChldmVudCkge1xuICAgICAgICBzd2l0Y2goZXZlbnQubmFtZSkge1xuICAgICAgICAgICAgY2FzZSAnc2F2ZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5zYXZlKGV2ZW50KTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2Nsb3NlJzpcbiAgICAgICAgICAgICAgICB0aGlzLnJldHVyblRvTGlzdFBhZ2UoKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3RvZ2dsZS12aWV3JzpcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1WaWV3ID0gZXZlbnQuZGF0YTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG92ZXJyaWRlIGNsZWFyKCkge1xuICAgICAgICB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCA9ICcnO1xuICAgICAgICB0aGlzLmNsZWFyRm9ybSgpO1xuICAgIH1cblxuICAgIGNsZWFyRm9ybSgpIHtcbiAgICAgICAgdGhpcy5pdGVtcy5mb3JFYWNoKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmIChpdGVtPy5jb21wb25lbnQpIGl0ZW0uY29tcG9uZW50LmRlc3Ryb3koKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZXJyb3JzID0ge307XG4gICAgICAgIHRoaXMuaXRlbXMgPSBbXTtcbiAgICAgICAgdGhpcy5mb3JtRGF0YSA9IHt9O1xuICAgICAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgYXN5bmMgc2F2ZShldmVudD86IGFueSkge1xuICAgICAgICB0aGlzLmVycm9ycyA9IHt9O1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZ0VkaXRvci5nZXRDb25maWdEYXRhRnJvbUZvcm0oKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKXtcbiAgICAgICAgICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgICAgICAgICAnZXJyb3InLFxuICAgICAgICAgICAgICAgICdFcnJvcicsXG4gICAgICAgICAgICAgICAgYEVycm9yIEdldHRpbmcgQ29uZmlnIERhdGFgLFxuICAgICAgICAgICAgICAgICdFcnJvciBnZXR0aW5nIGNvbmZpZ3VyYXRpb24gZGF0YSBmcm9tIGZyb20uJyxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmdyb3dsZXJTZXJ2aWNlLnNob3coZ3Jvd2xlckRhdGEpO1xuICAgICAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy52YWxpZGF0ZSgpKSB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNvbmZpZ0lkID0gYXdhaXQgdGhpcy5zdmMuc2F2ZSh0aGlzLmZvcm1EYXRhKS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgIGlmICghaXNFbXB0eShyZXN1bHQ/LmlkKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybURhdGEgPSByZXN1bHQ7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0RGF0YSA9IHRoaXMuZm9ybURhdGE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gcmVzdWx0Py5pZDtcbiAgICAgICAgfSkuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICAgICAgaWYgKGNvbmZpZ0lkKSB7XG4gICAgICAgICAgICB0aGlzLmNsb3NlTW9kYWwodHJ1ZSwgdHJ1ZSk7XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgdmFsaWRhdGUoKSB7XG4gICAgICAgIHRoaXMuZXJyb3JzID0ge307XG4gICAgICAgIHRoaXMuY29uZmlnRWRpdG9yLnZhbGlkYXRlQ29uZmlnKCk7XG4gICAgICAgIGlmIChpc0VtcHR5KHRoaXMuZm9ybURhdGEubmFtZSkpIHtcbiAgICAgICAgICAgIHRoaXMuZXJyb3JzWyduYW1lJ10gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpc0VtcHR5KHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkKSkge1xuICAgICAgICAgICAgdGhpcy5lcnJvcnNbJ2NvbmZpZ1R5cGVJZCddID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzRW1wdHkodGhpcy5lcnJvcnMpKSB7XG4gICAgICAgICAgICBjb25zdCBncm93bGVyRGF0YSA9IG5ldyBHcm93bGVyTW9kZWwoXG4gICAgICAgICAgICAgICAgJ2Vycm9yJyxcbiAgICAgICAgICAgICAgICAnRXJyb3InLFxuICAgICAgICAgICAgICAgIGBFcnJvciBWYWxpZGF0aW5nIENvbmZpZ2AsXG4gICAgICAgICAgICAgICAgJ1RoZSBlbnRlcmVkIGNvbmZpZ3VyYXRpb24gaXMgaW52YWxpZC4gUGxlYXNlIHVwZGF0ZSBtaXNzaW5nL2ludmFsaWQgZmllbGRzIGFuZCB0cnkgYWdhaW4uJyxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmdyb3dsZXJTZXJ2aWNlLnNob3coZ3Jvd2xlckRhdGEpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpc0VtcHR5KHRoaXMuZXJyb3JzKTtcbiAgICB9XG4gICAgZ2V0IHNhdmVCdXR0b25Ub29sdGlwKCkge1xuICAgICAgICBpZiAodGhpcy5mb3JtRGF0YUludmFsaWQpIHtcbiAgICAgICAgICAgIHJldHVybiAnQ29uZmlnIGRhdGEgaXMgaW52YWxpZC4gUGxlYXNlIHVwZGF0ZSBhbmQgdHJ5IGFnYWluLidcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAnQ29tcGxldGUgYW5kIGF0dGFjaCBjb25maWcgZGVmaW5pdGlvbiwgb3IgcmVtb3ZlIGJlZm9yZSBzYXZpbmcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0U2NoZW1hKCkge1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZENvbmZpZ1R5cGVJZCAhPT0gdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRDb25maWdUeXBlSWQgPSB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZDtcbiAgICAgICAgICAgIHRoaXMuZm9ybURhdGEuZGF0YSA9IHt9O1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc3ZjLmdldFNjaGVtYSh0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkU2NoZW1hID0gcmVzdWx0O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXQgYXBpQ2FsbFVSTCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2V0dGluZ3Muc2VsZWN0ZWRFZGdlQ29udHJvbGxlciArICcvZWRnZS9tYW5hZ2VtZW50L3YxL2NvbmZpZ3MnICsgKHRoaXMuZm9ybURhdGEuaWQgPyBgLyR7dGhpcy5mb3JtRGF0YS5pZH1gIDogJycpO1xuICAgIH1cblxuICAgIGdldCBhcGlEYXRhKCk6IGFueSB7XG4gICAgICAgIGNvbnN0IGRhdGE6IGFueSA9IHtcbiAgICAgICAgICAgIG5hbWU6IHRoaXMuZm9ybURhdGE/Lm5hbWUgfHwgJycsXG4gICAgICAgICAgICBjb25maWdUeXBlSWQ6IHRoaXMuZm9ybURhdGE/LmNvbmZpZ1R5cGVJZCB8fCAnJyxcbiAgICAgICAgICAgIGRhdGE6IHRoaXMuZm9ybURhdGE/LmRhdGEgfHwge30sXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuX2FwaURhdGEgPSBkYXRhO1xuICAgICAgICByZXR1cm4gdGhpcy5fYXBpRGF0YTtcbiAgICB9XG5cbiAgICBfYXBpRGF0YTogYW55ID0ge307XG4gICAgc2V0IGFwaURhdGEoZGF0YSkge1xuICAgICAgICB0aGlzLl9hcGlEYXRhID0gZGF0YTtcbiAgICB9XG5cbiAgICBkYXRhQ2hhbmdlZChldmVudCkge1xuICAgICAgICB0aGlzLl9hcGlEYXRhID0gY2xvbmVEZWVwKHRoaXMuYXBpRGF0YSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInByb2plY3RhYmxlLWZvcm0td3JhcHBlclwiXG4gICAgIChrZXl1cC5lbnRlcik9XCJzYXZlKCRldmVudClcIlxuICAgICAoa2V5dXAuZXNjYXBlKT1cImNsb3NlTW9kYWwoZmFsc2UpXCJcbiAgICAgdGFiaW5kZXg9XCIwXCJcbj5cbiAgICA8bGliLWZvcm0taGVhZGVyXG4gICAgICAgICAgICBbZGF0YV09XCJmb3JtRGF0YVwiXG4gICAgICAgICAgICBbdGl0bGVdPVwiKGZvcm1EYXRhLmlkID8gJ0VkaXQgQ29uZmlnJyA6ICdDcmVhdGUgQ29uZmlnJylcIlxuICAgICAgICAgICAgW21vcmVBY3Rpb25zXT1cImZvcm1EYXRhLm1vcmVBY3Rpb25zXCJcbiAgICAgICAgICAgIChhY3Rpb25SZXF1ZXN0ZWQpPVwiaGVhZGVyQWN0aW9uUmVxdWVzdGVkKCRldmVudClcIlxuICAgICAgICAgICAgWyhmb3JtVmlldyldPVwiZm9ybVZpZXdcIlxuICAgICAgICAgICAgW3NhdmVEaXNhYmxlZF09XCJzdmMuc2F2ZURpc2FibGVkIHx8IGZvcm1EYXRhSW52YWxpZFwiXG4gICAgICAgICAgICBbc2F2ZVRvb2x0aXBdPVwic2F2ZUJ1dHRvblRvb2x0aXBcIlxuICAgID48L2xpYi1mb3JtLWhlYWRlcj5cbiAgICA8ZGl2IGNsYXNzPVwiY29uZmlnLWZvcm0tY29udGFpbmVyIHByb2plY3RhYmxlLWZvcm0tY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9qZWN0YWJsZS1mb3JtLW1haW4tY29sdW1uIGZvcm0tZ3JvdXAtcm93XCIgW2hpZGRlbl09XCJmb3JtVmlldyAhPT0gJ3NpbXBsZSdcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLWNvbHVtbiB0aHJlZS1maWZ0aHNcIj5cbiAgICAgICAgICAgICAgICA8bGliLWZvcm0tZmllbGQtY29udGFpbmVyIFt0aXRsZV09XCInQ29uZmlnIE5hbWUnXCIgW2xhYmVsXT1cIidSZXF1aXJlZCdcIj5cbiAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICBpZD1cIkNvbmZpZ05hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiNTAwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiTmFtZSB0aGlzIGNvbmZpZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ZXJyb3I6IGVycm9yc1snbmFtZSddfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cImZvcm1EYXRhLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleXVwKT1cImFwaURhdGEoKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L2xpYi1mb3JtLWZpZWxkLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bGliLWZvcm0tZmllbGQtY29udGFpbmVyIFtzaG93SGVhZGVyXT1cImZhbHNlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb25maWctdGl0bGUtcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvcm0tZmllbGQtdGl0bGVcIj5Db25maWd1cmF0aW9uIERhdGE8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1oZWFkZXItdG9nZ2xlLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRvZ2dsZS1vcHRpb24tdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RvZ2dsZS1vcHRpb24tc2VsZWN0ZWQnOiAhc3ZjLmNvbmZpZ0pzb25WaWV3fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3ZjLnRvZ2dsZUpTT05WaWV3KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRk9STVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1oZWFkZXItdG9nZ2xlXCIgKGNsaWNrKT1cInN2Yy50b2dnbGVKU09OVmlldygpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tdG9nZ2xlLXN3aXRjaFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyd0b2dnbGUtbGVmdCc6ICFzdmMuY29uZmlnSnNvblZpZXcsICd0b2dnbGUtcmlnaHQnOiBzdmMuY29uZmlnSnNvblZpZXd9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tdG9nZ2xlLWluZGljYXRvclwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tdG9nZ2xlLWluZGljYXRvclwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0b2dnbGUtb3B0aW9uLXRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyd0b2dnbGUtb3B0aW9uLXNlbGVjdGVkJzogc3ZjLmNvbmZpZ0pzb25WaWV3fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic3ZjLnRvZ2dsZUpTT05WaWV3KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSlNPTlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZmllbGQtaW5wdXQtZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb25maWctdGl0bGUtcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb3JtLWZpZWxkLXRpdGxlXCI+e3tpc0VkaXRpbmcgPyAnQ29uZmlnIFR5cGUnIDogJ1NlbGVjdCBhIENvbmZpZyBUeXBlJ319PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiQ29uZmlnVHlwZXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbmZpZy10eXBlLXNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZm9ybURhdGEuY29uZmlnVHlwZUlkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJnZXRTY2hlbWEoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntkaXNhYmxlZDogaXNFZGl0aW5nLCBlcnJvcjogZXJyb3JzWydjb25maWdUeXBlSWQnXX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9XCJcIj5TZWxlY3QgQSBUeXBlLi4uPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgY29uZmlnIG9mIG9wdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImNvbmZpZy5pZFwiPnt7Y29uZmlnLm5hbWV9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zZWxlY3Q+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGliLWNvbmZpZy1lZGl0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGRlbl09XCJjb25maWdUeXBlRW1wdHlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2NoZW1hXT1cInNlbGVjdGVkU2NoZW1hXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhjb25maWdEYXRhKV09XCJmb3JtRGF0YS5kYXRhXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3Nob3dKc29uVmlld109XCJzdmMuY29uZmlnSnNvblZpZXdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKGNvbmZpZ0Vycm9ycyldPVwiZXJyb3JzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbmZpZ0RhdGFDaGFuZ2UpPVwiZGF0YUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNjb25maWdFZGl0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2xpYi1jb25maWctZWRpdG9yPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2xpYi1mb3JtLWZpZWxkLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAtY29sdW1uIHR3by1maWZ0aHNcIj5cbiAgICAgICAgICAgICAgICA8bGliLWZvcm0tZmllbGQtY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwiJ0FQSSBDYWxscydcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIicnXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiZm9ybS1maWVsZC1pbnB1dFwiIFt2YWx1ZV09XCJhcGlDYWxsVVJMXCIgcmVhZG9ubHkvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVybC1jb3B5IGljb24tY29weSBjb3B5XCIgKGNsaWNrKT1cImNvcHlUb0NsaXBib2FyZChhcGlDYWxsVVJMKVwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGxpYi1qc29uLXZpZXcgKm5nSWY9XCJmb3JtRGF0YVwiIFsoZGF0YSldPVwiX2FwaURhdGFcIiBbcmVhZE9ubHldPVwidHJ1ZVwiIFtzaG93Q29weV09XCJ0cnVlXCI+PC9saWItanNvbi12aWV3PlxuICAgICAgICAgICAgICAgIDwvbGliLWZvcm0tZmllbGQtY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1jb2x1bW5cIiAqbmdJZj1cImZvcm1WaWV3ID09PSAncmF3J1wiPlxuICAgICAgICAgICAgPGxpYi1qc29uLXZpZXcgKm5nSWY9XCJmb3JtRGF0YVwiIFsoZGF0YSldPVwiZm9ybURhdGFcIj48L2xpYi1qc29uLXZpZXc+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG48bGliLWxvYWRpbmctaW5kaWNhdG9yICpuZ0lmPVwiaXNMb2FkaW5nXCIgW2lzTG9hZGluZ109XCJpc0xvYWRpbmdcIj48L2xpYi1sb2FkaW5nLWluZGljYXRvcj5cbiJdfQ==
246
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ppdGktY29uc29sZS1saWIvc3JjL2xpYi9mZWF0dXJlcy9wcm9qZWN0YWJsZS1mb3Jtcy9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb24tZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96aXRpLWNvbnNvbGUtbGliL3NyYy9saWIvZmVhdHVyZXMvcHJvamVjdGFibGUtZm9ybXMvY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0VBY0U7QUFFRixPQUFPLEVBQ0gsU0FBUyxFQUNULFlBQVksRUFBRSxNQUFNLEVBQ3BCLEtBQUssRUFFRyxNQUFNLEVBQ2QsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUUxRCxPQUFPLEVBQW1CLGlCQUFpQixFQUFDLE1BQU0sMENBQTBDLENBQUM7QUFDN0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFFbEYsT0FBTyxFQUFDLFNBQVMsRUFBUyxPQUFPLEVBQVEsTUFBTSxRQUFRLENBQUM7QUFDeEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzNELE9BQU8sRUFBQyxnQkFBZ0IsRUFBa0IsTUFBTSxvQ0FBb0MsQ0FBQztBQUNyRixPQUFPLEVBQUMsaUJBQWlCLEVBQWtCLE1BQU0scUNBQXFDLENBQUM7QUFFdkYsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFFOUMsTUFLYSwwQkFBMkIsU0FBUSxlQUFlO0lBdUIzRCxZQUNXLEdB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UUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxJQUFJLE9BQU8sQ0FBQyxJQUFJO1FBQ1osSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFLO1FBQ2IsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7K0dBL01RLDBCQUEwQixpSEEyQnZCLGlCQUFpQixhQUNqQixnQkFBZ0IsYUFDaEIsaUJBQWlCO21HQTdCcEIsMEJBQTBCLG1PQXNCRCxxQkFBcUIsb0RDbEUzRCxxbUxBd0dBOztTRDVEYSwwQkFBMEI7NEZBQTFCLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDSSxtQkFBbUI7OzBCQStCeEIsTUFBTTsyQkFBQyxpQkFBaUI7OzBCQUN4QixNQUFNOzJCQUFDLGdCQUFnQjs7MEJBQ3ZCLE1BQU07MkJBQUMsaUJBQWlCOzhGQTNCWCxRQUFRO3NCQUF6QixLQUFLO2dCQUNZLE1BQU07c0JBQXZCLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNO2dCQWtCbUQsWUFBWTtzQkFBckUsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICAgIENvcHlyaWdodCBOZXRGb3VuZHJ5IEluYy5cblxuICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuXG4gICAgaHR0cHM6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG4gICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4qL1xuXG5pbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsIEluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LCBPdXRwdXQsXG4gICAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29uZmlndXJhdGlvblNlcnZpY2V9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb24uc2VydmljZVwiO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQge1NjaGVtYVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9zY2hlbWEuc2VydmljZVwiO1xuaW1wb3J0IHtQcm9qZWN0YWJsZUZvcm19IGZyb20gXCIuLi9wcm9qZWN0YWJsZS1mb3JtLmNsYXNzXCI7XG5pbXBvcnQge0dyb3dsZXJTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vbWVzc2FnaW5nL2dyb3dsZXIuc2VydmljZVwiO1xuaW1wb3J0IHtFeHRlbnNpb25TZXJ2aWNlLCBTSEFSRURaX0VYVEVOU0lPTn0gZnJvbSBcIi4uLy4uL2V4dGVuZGFibGUvZXh0ZW5zaW9ucy1ub29wLnNlcnZpY2VcIjtcbmltcG9ydCB7Q29uZmlnRWRpdG9yQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vY29uZmlnLWVkaXRvci9jb25maWctZWRpdG9yLmNvbXBvbmVudFwiO1xuXG5pbXBvcnQge2Nsb25lRGVlcCwgZGVmZXIsIGlzRW1wdHksIHVuc2V0fSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtHcm93bGVyTW9kZWx9IGZyb20gXCIuLi8uLi9tZXNzYWdpbmcvZ3Jvd2xlci5tb2RlbFwiO1xuaW1wb3J0IHtTRVRUSU5HU19TRVJWSUNFLCBTZXR0aW5nc1NlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy9zZXR0aW5ncy5zZXJ2aWNlXCI7XG5pbXBvcnQge1pJVElfREFUQV9TRVJWSUNFLCBaaXRpRGF0YVNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zZXJ2aWNlcy96aXRpLWRhdGEuc2VydmljZVwiO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XG5pbXBvcnQge0NvbmZpZ30gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9jb25maWdcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdsaWItY29uZmlndXJhdGlvbicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpZ3VyYXRpb24tZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY29uZmlndXJhdGlvbi1mb3JtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ29uZmlndXJhdGlvbkZvcm1Db21wb25lbnQgZXh0ZW5kcyBQcm9qZWN0YWJsZUZvcm0gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICBASW5wdXQoKSBvdmVycmlkZSBmb3JtRGF0YTogYW55ID0ge307XG4gICAgQElucHV0KCkgb3ZlcnJpZGUgZXJyb3JzOiBhbnkgPSB7fTtcbiAgICBAT3V0cHV0KCkgY2xvc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIG9wdGlvbnM6IGFueVtdID0gW107XG4gICAgaXNFZGl0aW5nID0gIWlzRW1wdHkodGhpcy5mb3JtRGF0YS5pZCk7XG4gICAgZm9ybVZpZXcgPSAnc2ltcGxlJztcbiAgICBmb3JtRGF0YUludmFsaWQgPSBmYWxzZTtcbiAgICBlZGl0TW9kZSA9IGZhbHNlO1xuICAgIGl0ZW1zOiBhbnkgPSBbXTtcbiAgICBzZWxlY3RlZFNjaGVtYTogYW55ID0gJyc7XG4gICAgYXNzb2NpYXRlZFNlcnZpY2VzID0gW107XG4gICAgYXNzb2NpYXRlZFNlcnZpY2VOYW1lcyA9IFtdO1xuICAgIHNlcnZpY2VzTG9hZGluZyA9IGZhbHNlO1xuICAgIHNldHRpbmdzOiBhbnkgPSB7fTtcbiAgICBzZWxlY3RlZENvbmZpZ1R5cGVJZCA9ICcnO1xuXG4gICAgb3ZlcnJpZGUgZW50aXR5VHlwZSA9ICdjb25maWdzJztcbiAgICBvdmVycmlkZSBlbnRpdHlDbGFzcyA9IENvbmZpZztcblxuICAgIEBWaWV3Q2hpbGQoXCJjb25maWdFZGl0b3JcIiwge3JlYWQ6IENvbmZpZ0VkaXRvckNvbXBvbmVudH0pIGNvbmZpZ0VkaXRvciE6IENvbmZpZ0VkaXRvckNvbXBvbmVudDtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHN2YzogQ29uZmlndXJhdGlvblNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgc2NoZW1hU3ZjOiBTY2hlbWFTZXJ2aWNlLFxuICAgICAgICBncm93bGVyU2VydmljZTogR3Jvd2xlclNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoU0hBUkVEWl9FWFRFTlNJT04pIGV4dFNlcnZpY2U6IEV4dGVuc2lvblNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoU0VUVElOR1NfU0VSVklDRSkgcHVibGljIHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KFpJVElfREFUQV9TRVJWSUNFKSBvdmVycmlkZSB6aXRpU2VydmljZTogWml0aURhdGFTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByb3RlY3RlZCBvdmVycmlkZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGdyb3dsZXJTZXJ2aWNlLCBleHRTZXJ2aWNlLCB6aXRpU2VydmljZSwgcm91dGVyLCByb3V0ZSk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnNldHRpbmdzQ2hhbmdlLnN1YnNjcmliZSgocmVzdWx0czphbnkpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0dGluZ3MgPSByZXN1bHRzO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBlbnRpdHlVcGRhdGVkKCkge1xuICAgICAgICBpZiAoaXNFbXB0eSh0aGlzLmZvcm1EYXRhPy5kYXRhKSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5kYXRhID0ge307XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YT8uY29uZmlnVHlwZUlkKSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQgPSAnJztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnNlbGVjdGVkQ29uZmlnVHlwZUlkID0gdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQ7XG4gICAgICAgIHRoaXMuaW5pdERhdGEgPSBjbG9uZURlZXAodGhpcy5mb3JtRGF0YSk7XG4gICAgICAgIHRoaXMuc3ZjLmNvbmZpZ0pzb25WaWV3ID0gZmFsc2U7XG4gICAgICAgIC8vdGhpcy5nZXRBc3NvY2lhdGVkU2VydmljZXMoKTtcbiAgICAgICAgdGhpcy5zdmMuZ2V0Q29uZmlnVHlwZXMoKVxuICAgICAgICAgICAgLnRoZW4oY29uZmlnVHlwZXMgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9ucyA9IGNvbmZpZ1R5cGVzLnNvcnQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmdldFNjaGVtYSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuaXNFZGl0aW5nID0gIWlzRW1wdHkodGhpcy5mb3JtRGF0YS5pZCk7XG4gICAgICAgIGlmICh0aGlzLmNvbmZpZ1R5cGVFbXB0eSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQgPSAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldEFzc29jaWF0ZWRTZXJ2aWNlcygpIHtcbiAgICAgICAgdGhpcy5zdmMuZ2V0QXNzb2NpYXRlZFNlcnZpY2VzKHRoaXMuZm9ybURhdGEuaWQpLnRoZW4oKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hc3NvY2lhdGVkU2VydmljZXMgPSByZXN1bHQuYXNzb2NpYXRlZFNlcnZpY2VzO1xuICAgICAgICAgICAgdGhpcy5hc3NvY2lhdGVkU2VydmljZU5hbWVzID0gcmVzdWx0LmFzc29jaWF0ZWRTZXJ2aWNlTmFtZXM7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsZWFyRm9ybSgpO1xuICAgIH1cblxuICAgIGdldCBjb25maWdUeXBlRW1wdHkoKSB7XG4gICAgICAgIHJldHVybiBpc0VtcHR5KHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkKTtcbiAgICB9XG5cbiAgICBoZWFkZXJBY3Rpb25SZXF1ZXN0ZWQoZXZlbnQpIHtcbiAgICAgICAgc3dpdGNoKGV2ZW50Lm5hbWUpIHtcbiAgICAgICAgICAgIGNhc2UgJ3NhdmUnOlxuICAgICAgICAgICAgICAgIHRoaXMuc2F2ZShldmVudCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdjbG9zZSc6XG4gICAgICAgICAgICAgICAgdGhpcy5yZXR1cm5Ub0xpc3RQYWdlKCk7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICd0b2dnbGUtdmlldyc6XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtVmlldyA9IGV2ZW50LmRhdGE7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvdmVycmlkZSBjbGVhcigpIHtcbiAgICAgICAgdGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQgPSAnJztcbiAgICAgICAgdGhpcy5jbGVhckZvcm0oKTtcbiAgICB9XG5cbiAgICBjbGVhckZvcm0oKSB7XG4gICAgICAgIHRoaXMuaXRlbXMuZm9yRWFjaCgoaXRlbTogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAoaXRlbT8uY29tcG9uZW50KSBpdGVtLmNvbXBvbmVudC5kZXN0cm95KCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmVycm9ycyA9IHt9O1xuICAgICAgICB0aGlzLml0ZW1zID0gW107XG4gICAgICAgIHRoaXMuZm9ybURhdGEgPSB7fTtcbiAgICAgICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIGFzeW5jIHNhdmUoZXZlbnQ/OiBhbnkpIHtcbiAgICAgICAgdGhpcy5lcnJvcnMgPSB7fTtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5jb25maWdFZGl0b3IuZ2V0Q29uZmlnRGF0YUZyb21Gb3JtKCk7XG4gICAgICAgIH0gY2F0Y2ggKGVycil7XG4gICAgICAgICAgICBjb25zdCBncm93bGVyRGF0YSA9IG5ldyBHcm93bGVyTW9kZWwoXG4gICAgICAgICAgICAgICAgJ2Vycm9yJyxcbiAgICAgICAgICAgICAgICAnRXJyb3InLFxuICAgICAgICAgICAgICAgIGBFcnJvciBHZXR0aW5nIENvbmZpZyBEYXRhYCxcbiAgICAgICAgICAgICAgICAnRXJyb3IgZ2V0dGluZyBjb25maWd1cmF0aW9uIGRhdGEgZnJvbSBmcm9tLicsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgdGhpcy5ncm93bGVyU2VydmljZS5zaG93KGdyb3dsZXJEYXRhKTtcbiAgICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMudmFsaWRhdGUoKSkge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjb25maWdJZCA9IGF3YWl0IHRoaXMuc3ZjLnNhdmUodGhpcy5mb3JtRGF0YSkudGhlbigocmVzdWx0KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWlzRW1wdHkocmVzdWx0Py5pZCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1EYXRhID0gcmVzdWx0O1xuICAgICAgICAgICAgICAgIHRoaXMuaW5pdERhdGEgPSB0aGlzLmZvcm1EYXRhO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdD8uaWQ7XG4gICAgICAgIH0pLmZpbmFsbHkoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmIChjb25maWdJZCkge1xuICAgICAgICAgICAgdGhpcy5pbml0RGF0YSA9IHRoaXMuZm9ybURhdGE7XG4gICAgICAgICAgICB0aGlzLl9kYXRhQ2hhbmdlID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5pc01vZGFsKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZU1vZGFsKHRydWUsIHRydWUpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJldHVyblRvTGlzdFBhZ2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZSgpIHtcbiAgICAgICAgdGhpcy5lcnJvcnMgPSB7fTtcbiAgICAgICAgdGhpcy5jb25maWdFZGl0b3IudmFsaWRhdGVDb25maWcoKTtcbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YS5uYW1lKSkge1xuICAgICAgICAgICAgdGhpcy5lcnJvcnNbJ25hbWUnXSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRW1wdHkodGhpcy5mb3JtRGF0YS5jb25maWdUeXBlSWQpKSB7XG4gICAgICAgICAgICB0aGlzLmVycm9yc1snY29uZmlnVHlwZUlkJ10gPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaXNFbXB0eSh0aGlzLmVycm9ycykpIHtcbiAgICAgICAgICAgIGNvbnN0IGdyb3dsZXJEYXRhID0gbmV3IEdyb3dsZXJNb2RlbChcbiAgICAgICAgICAgICAgICAnZXJyb3InLFxuICAgICAgICAgICAgICAgICdFcnJvcicsXG4gICAgICAgICAgICAgICAgYEVycm9yIFZhbGlkYXRpbmcgQ29uZmlnYCxcbiAgICAgICAgICAgICAgICAnVGhlIGVudGVyZWQgY29uZmlndXJhdGlvbiBpcyBpbnZhbGlkLiBQbGVhc2UgdXBkYXRlIG1pc3NpbmcvaW52YWxpZCBmaWVsZHMgYW5kIHRyeSBhZ2Fpbi4nLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHRoaXMuZ3Jvd2xlclNlcnZpY2Uuc2hvdyhncm93bGVyRGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzRW1wdHkodGhpcy5lcnJvcnMpO1xuICAgIH1cbiAgICBnZXQgc2F2ZUJ1dHRvblRvb2x0aXAoKSB7XG4gICAgICAgIGlmICh0aGlzLmZvcm1EYXRhSW52YWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuICdDb25maWcgZGF0YSBpcyBpbnZhbGlkLiBQbGVhc2UgdXBkYXRlIGFuZCB0cnkgYWdhaW4uJ1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICdDb21wbGV0ZSBhbmQgYXR0YWNoIGNvbmZpZyBkZWZpbml0aW9uLCBvciByZW1vdmUgYmVmb3JlIHNhdmluZyc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRTY2hlbWEoKSB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ29uZmlnVHlwZUlkICE9PSB0aGlzLmZvcm1EYXRhLmNvbmZpZ1R5cGVJZCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZENvbmZpZ1R5cGVJZCA9IHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkO1xuICAgICAgICAgICAgdGhpcy5mb3JtRGF0YS5kYXRhID0ge307XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zdmMuZ2V0U2NoZW1hKHRoaXMuZm9ybURhdGEuY29uZmlnVHlwZUlkKS50aGVuKChyZXN1bHQpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRTY2hlbWEgPSByZXN1bHQ7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGdldCBhcGlDYWxsVVJMKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zZXR0aW5ncy5zZWxlY3RlZEVkZ2VDb250cm9sbGVyICsgJy9lZGdlL21hbmFnZW1lbnQvdjEvY29uZmlncycgKyAodGhpcy5mb3JtRGF0YS5pZCA/IGAvJHt0aGlzLmZvcm1EYXRhLmlkfWAgOiAnJyk7XG4gICAgfVxuXG4gICAgZ2V0IGFwaURhdGEoKTogYW55IHtcbiAgICAgICAgY29uc3QgZGF0YTogYW55ID0ge1xuICAgICAgICAgICAgbmFtZTogdGhpcy5mb3JtRGF0YT8ubmFtZSB8fCAnJyxcbiAgICAgICAgICAgIGNvbmZpZ1R5cGVJZDogdGhpcy5mb3JtRGF0YT8uY29uZmlnVHlwZUlkIHx8ICcnLFxuICAgICAgICAgICAgZGF0YTogdGhpcy5mb3JtRGF0YT8uZGF0YSB8fCB7fSxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5fYXBpRGF0YSA9IGRhdGE7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcGlEYXRhO1xuICAgIH1cblxuICAgIF9hcGlEYXRhOiBhbnkgPSB7fTtcbiAgICBzZXQgYXBpRGF0YShkYXRhKSB7XG4gICAgICAgIHRoaXMuX2FwaURhdGEgPSBkYXRhO1xuICAgIH1cblxuICAgIGRhdGFDaGFuZ2VkKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuX2FwaURhdGEgPSBjbG9uZURlZXAodGhpcy5hcGlEYXRhKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHJvamVjdGFibGUtZm9ybS13cmFwcGVyXCJcbiAgICAgKGtleXVwLmVudGVyKT1cInNhdmUoJGV2ZW50KVwiXG4gICAgIChrZXl1cC5lc2NhcGUpPVwiY2xvc2VNb2RhbChmYWxzZSlcIlxuICAgICB0YWJpbmRleD1cIjBcIlxuPlxuICAgIDxsaWItZm9ybS1oZWFkZXJcbiAgICAgICAgICAgIFtkYXRhXT1cImZvcm1EYXRhXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCIoZm9ybURhdGEuaWQgPyAnRWRpdCBDb25maWcnIDogJ0NyZWF0ZSBDb25maWcnKVwiXG4gICAgICAgICAgICBbbW9yZUFjdGlvbnNdPVwiZm9ybURhdGEubW9yZUFjdGlvbnNcIlxuICAgICAgICAgICAgKGFjdGlvblJlcXVlc3RlZCk9XCJoZWFkZXJBY3Rpb25SZXF1ZXN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICBbKGZvcm1WaWV3KV09XCJmb3JtVmlld1wiXG4gICAgICAgICAgICBbc2F2ZURpc2FibGVkXT1cInN2Yy5zYXZlRGlzYWJsZWQgfHwgZm9ybURhdGFJbnZhbGlkXCJcbiAgICAgICAgICAgIFtzYXZlVG9vbHRpcF09XCJzYXZlQnV0dG9uVG9vbHRpcFwiXG4gICAgPjwvbGliLWZvcm0taGVhZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJjb25maWctZm9ybS1jb250YWluZXIgcHJvamVjdGFibGUtZm9ybS1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInByb2plY3RhYmxlLWZvcm0tbWFpbi1jb2x1bW4gZm9ybS1ncm91cC1yb3dcIiBbaGlkZGVuXT1cImZvcm1WaWV3ICE9PSAnc2ltcGxlJ1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tZ3JvdXAtY29sdW1uIHRocmVlLWZpZnRoc1wiPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXIgW3RpdGxlXT1cIidDb25maWcgTmFtZSdcIiBbbGFiZWxdPVwiJ1JlcXVpcmVkJ1wiPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiQ29uZmlnTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCI1MDBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJOYW1lIHRoaXMgY29uZmlnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntlcnJvcjogZXJyb3JzWyduYW1lJ119XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiZm9ybURhdGEubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5dXApPVwiYXBpRGF0YSgpXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvbGliLWZvcm0tZmllbGQtY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXIgW3Nob3dIZWFkZXJdPVwiZmFsc2VcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZy10aXRsZS1yb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9ybS1maWVsZC10aXRsZVwiPkNvbmZpZ3VyYXRpb24gRGF0YTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWhlYWRlci10b2dnbGUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidG9nZ2xlLW9wdGlvbi10ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsndG9nZ2xlLW9wdGlvbi1zZWxlY3RlZCc6ICFzdmMuY29uZmlnSnNvblZpZXd9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdmMudG9nZ2xlSlNPTlZpZXcoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGT1JNXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWhlYWRlci10b2dnbGVcIiAoY2xpY2spPVwic3ZjLnRvZ2dsZUpTT05WaWV3KClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS10b2dnbGUtc3dpdGNoXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RvZ2dsZS1sZWZ0JzogIXN2Yy5jb25maWdKc29uVmlldywgJ3RvZ2dsZS1yaWdodCc6IHN2Yy5jb25maWdKc29uVmlld31cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS10b2dnbGUtaW5kaWNhdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS10b2dnbGUtaW5kaWNhdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRvZ2dsZS1vcHRpb24tdGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3RvZ2dsZS1vcHRpb24tc2VsZWN0ZWQnOiBzdmMuY29uZmlnSnNvblZpZXd9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzdmMudG9nZ2xlSlNPTlZpZXcoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKU09OXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1maWVsZC1pbnB1dC1ncm91cFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZy10aXRsZS1yb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvcm0tZmllbGQtdGl0bGVcIj57e2lzRWRpdGluZyA/ICdDb25maWcgVHlwZScgOiAnU2VsZWN0IGEgQ29uZmlnIFR5cGUnfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxzZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJDb25maWdUeXBlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29uZmlnLXR5cGUtc2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmb3JtRGF0YS5jb25maWdUeXBlSWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cImdldFNjaGVtYSgpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwie2Rpc2FibGVkOiBpc0VkaXRpbmcsIGVycm9yOiBlcnJvcnNbJ2NvbmZpZ1R5cGVJZCddfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPlNlbGVjdCBBIFR5cGUuLi48L29wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBjb25maWcgb2Ygb3B0aW9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiY29uZmlnLmlkXCI+e3tjb25maWcubmFtZX19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NlbGVjdD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaWItY29uZmlnLWVkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZGVuXT1cImNvbmZpZ1R5cGVFbXB0eVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzY2hlbWFdPVwic2VsZWN0ZWRTY2hlbWFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKGNvbmZpZ0RhdGEpXT1cImZvcm1EYXRhLmRhdGFcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbc2hvd0pzb25WaWV3XT1cInN2Yy5jb25maWdKc29uVmlld1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsoY29uZmlnRXJyb3JzKV09XCJlcnJvcnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uZmlnRGF0YUNoYW5nZSk9XCJkYXRhQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2NvbmZpZ0VkaXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvbGliLWNvbmZpZy1lZGl0b3I+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbGliLWZvcm0tZmllbGQtY29udGFpbmVyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cC1jb2x1bW4gdHdvLWZpZnRoc1wiPlxuICAgICAgICAgICAgICAgIDxsaWItZm9ybS1maWVsZC1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInQVBJIENhbGxzJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJydcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tcm93XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWZpZWxkLWlucHV0XCIgW3ZhbHVlXT1cImFwaUNhbGxVUkxcIiByZWFkb25seS8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidXJsLWNvcHkgaWNvbi1jb3B5IGNvcHlcIiAoY2xpY2spPVwiY29weVRvQ2xpcGJvYXJkKGFwaUNhbGxVUkwpXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8bGliLWpzb24tdmlldyAqbmdJZj1cImZvcm1EYXRhXCIgWyhkYXRhKV09XCJfYXBpRGF0YVwiIFtyZWFkT25seV09XCJ0cnVlXCIgW3Nob3dDb3B5XT1cInRydWVcIj48L2xpYi1qc29uLXZpZXc+XG4gICAgICAgICAgICAgICAgPC9saWItZm9ybS1maWVsZC1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwLWNvbHVtblwiICpuZ0lmPVwiZm9ybVZpZXcgPT09ICdyYXcnXCI+XG4gICAgICAgICAgICA8bGliLWpzb24tdmlldyAqbmdJZj1cImZvcm1EYXRhXCIgWyhkYXRhKV09XCJmb3JtRGF0YVwiPjwvbGliLWpzb24tdmlldz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxsaWItbG9hZGluZy1pbmRpY2F0b3IgKm5nSWY9XCJpc0xvYWRpbmdcIiBbaXNMb2FkaW5nXT1cImlzTG9hZGluZ1wiPjwvbGliLWxvYWRpbmctaW5kaWNhdG9yPlxuIl19