@openziti/ziti-console-lib 0.12.5 → 0.12.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 (39) hide show
  1. package/assets/fonts/icomoon.eot +0 -0
  2. package/assets/fonts/icomoon.svg +8 -0
  3. package/assets/fonts/icomoon.ttf +0 -0
  4. package/assets/fonts/icomoon.woff +0 -0
  5. package/assets/fonts/icomoon.woff2 +0 -0
  6. package/assets/html/terminators.htm +1 -1
  7. package/esm2022/lib/features/config-editor/config-editor.component.mjs +6 -2
  8. package/esm2022/lib/features/dynamic-widgets/text-list/text-list-input.component.mjs +4 -1
  9. package/esm2022/lib/features/preview-list/preview-list.component.mjs +10 -3
  10. package/esm2022/lib/features/progress-meter/progress-meter.component.mjs +44 -0
  11. package/esm2022/lib/features/progress-wizard/progress-wizard.component.mjs +91 -0
  12. package/esm2022/lib/features/visualizer/identity-service-path/identity-service-path.component.mjs +19 -19
  13. package/esm2022/lib/features/visualizer/identity-service-path/identity-service-path.helper.mjs +10 -4
  14. package/esm2022/lib/pages/identities/identities-page.service.mjs +7 -2
  15. package/esm2022/lib/services/schema.service.mjs +3 -3
  16. package/esm2022/lib/version.mjs +2 -2
  17. package/esm2022/lib/ziti-console-lib.module.mjs +19 -5
  18. package/esm2022/public-api.mjs +5 -1
  19. package/fesm2022/openziti-ziti-console-lib.mjs +195 -32
  20. package/fesm2022/openziti-ziti-console-lib.mjs.map +1 -1
  21. package/lib/features/config-editor/config-editor.component.d.ts.map +1 -1
  22. package/lib/features/dynamic-widgets/text-list/text-list-input.component.d.ts.map +1 -1
  23. package/lib/features/preview-list/preview-list.component.d.ts +1 -0
  24. package/lib/features/preview-list/preview-list.component.d.ts.map +1 -1
  25. package/lib/features/progress-meter/progress-meter.component.d.ts +19 -0
  26. package/lib/features/progress-meter/progress-meter.component.d.ts.map +1 -0
  27. package/lib/features/progress-wizard/progress-wizard.component.d.ts +31 -0
  28. package/lib/features/progress-wizard/progress-wizard.component.d.ts.map +1 -0
  29. package/lib/features/visualizer/identity-service-path/identity-service-path.component.d.ts +1 -0
  30. package/lib/features/visualizer/identity-service-path/identity-service-path.component.d.ts.map +1 -1
  31. package/lib/features/visualizer/identity-service-path/identity-service-path.helper.d.ts.map +1 -1
  32. package/lib/features/visualizer/network-visualizer/network-visualizer.component.d.ts +1 -1
  33. package/lib/pages/identities/identities-page.service.d.ts +1 -0
  34. package/lib/pages/identities/identities-page.service.d.ts.map +1 -1
  35. package/lib/ziti-console-lib.module.d.ts +20 -18
  36. package/lib/ziti-console-lib.module.d.ts.map +1 -1
  37. package/package.json +1 -1
  38. package/public-api.d.ts +4 -0
  39. package/public-api.d.ts.map +1 -1
@@ -1948,6 +1948,9 @@ class TextListInputComponent {
1948
1948
  this.emitEventsDebounced();
1949
1949
  }
1950
1950
  emitEvents() {
1951
+ if (this._fieldValue) {
1952
+ this._fieldValue = this._fieldValue?.map(item => item.trim());
1953
+ }
1951
1954
  this.fieldValueChange.emit(this.fieldValue);
1952
1955
  this.valueChange.next(this.fieldValue);
1953
1956
  }
@@ -4486,7 +4489,7 @@ class SchemaService {
4486
4489
  if (item.type !== 'array') {
4487
4490
  return;
4488
4491
  }
4489
- this.subscriptions.add(item?.component?.instance?.itemAdded.subscribe((event) => {
4492
+ this.subscriptions.add(item?.component?.instance?.itemAdded?.subscribe((event) => {
4490
4493
  if (!this.itemDataValid(item)) {
4491
4494
  const growlerData = new GrowlerModel('error', 'Error', `Error Validating Config`, 'The entered configuration is invalid. Please update missing/invalid fields and try again.');
4492
4495
  this.growlerService.show(growlerData);
@@ -4499,7 +4502,7 @@ class SchemaService {
4499
4502
  item.addedItems.push(itemData);
4500
4503
  item.component.instance.addedItems = item.addedItems;
4501
4504
  }));
4502
- this.subscriptions.add(item?.component?.instance?.itemRemoved.subscribe(() => {
4505
+ this.subscriptions.add(item?.component?.instance?.itemRemoved?.subscribe(() => {
4503
4506
  item.addedItems = item.component?.instance?.addedItems;
4504
4507
  }));
4505
4508
  }
@@ -5648,6 +5651,7 @@ class IdentitiesPageService extends ListPageServiceClass {
5648
5651
  this.csvDownloadService = csvDownloadService;
5649
5652
  this.growlerService = growlerService;
5650
5653
  this.dialogForm = dialogForm;
5654
+ this.extService = extService;
5651
5655
  this.router = router;
5652
5656
  this.paging = this.DEFAULT_PAGING;
5653
5657
  this.modalType = 'identities';
@@ -5779,7 +5783,7 @@ class IdentitiesPageService extends ListPageServiceClass {
5779
5783
  { label: 'Non-Admins', value: false },
5780
5784
  ]
5781
5785
  };
5782
- return [
5786
+ let tableColumns = [
5783
5787
  {
5784
5788
  colId: 'name',
5785
5789
  field: 'name',
@@ -5897,6 +5901,10 @@ class IdentitiesPageService extends ListPageServiceClass {
5897
5901
  },
5898
5902
  this.ID_COLUMN_DEF
5899
5903
  ];
5904
+ if (this.extService.processTableColumns) {
5905
+ tableColumns = this.extService.processTableColumns(tableColumns);
5906
+ }
5907
+ return tableColumns;
5900
5908
  }
5901
5909
  getData(filters, sort, page) {
5902
5910
  // we can customize filters or sorting here before moving on...
@@ -9895,8 +9903,14 @@ class IdentityServicePathHelper {
9895
9903
  node.id = ePoint.id;
9896
9904
  node.name = ePoint.name;
9897
9905
  node.type = 'Identity';
9898
- node.apiSession = ePoint.hasApiSession === false ? 'No' : 'Yes';
9899
- node.routerConnection = ePoint.hasEdgeRouterConnection === false ? 'No' : 'Yes';
9906
+ if (_.has(ePoint, 'edgeRouterConnectionStatus')) {
9907
+ node.routerConnection = ePoint.edgeRouterConnectionStatus === 'offline' ? 'No' : 'Yes';
9908
+ node.apiSession = node.routerConnection;
9909
+ }
9910
+ else {
9911
+ node.routerConnection = ePoint['hasEdgeRouterConnection'] === false ? 'No' : 'Yes';
9912
+ node.apiSession = ePoint['hasApiSession'] === false ? 'No' : 'Yes';
9913
+ }
9900
9914
  node.os = ePoint.envInfo ? ePoint.envInfo.os : '';
9901
9915
  node.mfaEnabled = ePoint.isMfaEnabled;
9902
9916
  node.status = ePoint.envInfo && ePoint.envInfo.os !== null ? 'Registered' : 'Un-Registered';
@@ -9955,7 +9969,7 @@ class IdentityServicePathHelper {
9955
9969
  else if (endpointNode.apiSession === 'No') {
9956
9970
  linkstate = 0;
9957
9971
  }
9958
- else if (endpointNode.status === 'Registered' && endpointNode.apiSession === 'Yes') {
9972
+ else if (endpointNode.status === 'Registered' && endpointNode.routerConnection === 'Yes') {
9959
9973
  linkstate = 1;
9960
9974
  }
9961
9975
  else {
@@ -10016,6 +10030,7 @@ class IdentityServicePathComponent {
10016
10030
  this.router = router;
10017
10031
  this.dialogRef = dialogRef;
10018
10032
  this.data = data;
10033
+ this.isDarkMode = false;
10019
10034
  this.refreshRotate = false;
10020
10035
  this.closeRotate = true;
10021
10036
  this.filterText = 'fetching services..';
@@ -10036,6 +10051,8 @@ class IdentityServicePathComponent {
10036
10051
  this.getEndpointNetworkAsCode();
10037
10052
  this.autocompleteOptions = [];
10038
10053
  this.isLoading = true;
10054
+ const bgCol = d3.color(d3.select('body').style("background-color")).formatHex();
10055
+ this.isDarkMode = bgCol == '#18191d' ? true : false;
10039
10056
  }
10040
10057
  getEndpointNetworkAsCode() {
10041
10058
  const pagesize = 500;
@@ -10295,16 +10312,15 @@ class IdentityServicePathComponent {
10295
10312
  link.each(function (d, i) {
10296
10313
  const _this = d3.select(this);
10297
10314
  if (d.status === 1) {
10298
- let doInUsage = true; // false;
10315
+ let doInUsage = true;
10299
10316
  _this
10300
10317
  .append('text')
10301
- // .text(d.netspeed)
10302
10318
  .style('fill', 'rgb(255,198,22)')
10303
10319
  .style('font-size', '11');
10304
10320
  _this
10305
10321
  .append('rect')
10306
10322
  .attr('fill', function (d) {
10307
- return '#555';
10323
+ return 'white';
10308
10324
  })
10309
10325
  .attr('width', function (d) {
10310
10326
  if (doInUsage) {
@@ -10386,14 +10402,12 @@ class IdentityServicePathComponent {
10386
10402
  .attr('y', -25)
10387
10403
  .attr('width', '40')
10388
10404
  .attr('height', '40');
10389
- // node.append('title') .text(function (d) {return d.name;});
10390
10405
  node
10391
10406
  .append('text')
10392
10407
  .attr('x', 10)
10393
10408
  .attr('y', 12)
10394
- .style('font-weight', '600')
10409
+ .attr('fill', 'var(--tableText)')
10395
10410
  .text(function (d) {
10396
- // const name = d.type.includes('Service') ? d.alias : d.name;
10397
10411
  return d.name;
10398
10412
  });
10399
10413
  simulation.nodes(nodes).on('tick', ticked);
@@ -10484,7 +10498,7 @@ class IdentityServicePathComponent {
10484
10498
  }
10485
10499
  }
10486
10500
  function drawTooltip(event, d, endpointUtlizationJson) {
10487
- document.getElementById('epTooltip').innerHTML = readKeyValues(d, endpointUtlizationJson); // readObjectValues(d);
10501
+ document.getElementById('epTooltip').innerHTML = readKeyValues(d, endpointUtlizationJson);
10488
10502
  tooltip.style('display', 'block');
10489
10503
  tooltip.style('white-space', 'pre-wrap');
10490
10504
  const x = event.pageX + 'px';
@@ -10517,35 +10531,35 @@ class IdentityServicePathComponent {
10517
10531
  else if (k === 'children') {
10518
10532
  const kVal = d[k];
10519
10533
  if (kVal && kVal !== '') {
10520
- info = info + '<div class="prop-row"><div class="prop-name">' + k + ':</div><div class="prop-val">' + kVal.length + '</div></div>';
10534
+ info = info + '<div class="prop-row">' + k + ': ' + kVal.length + '</div>';
10521
10535
  }
10522
10536
  }
10523
10537
  else {
10524
10538
  if (isAnObject(d[k])) {
10525
10539
  const kVal = d[k];
10526
10540
  if (kVal && kVal !== '') {
10527
- info = info + '<div class="prop-row"><div class="prop-name">' + k + ':</div><div class="prop-val">' + kVal.name + '</div></div>';
10541
+ info = info + '<div class="prop-row">' + k + ': ' + kVal.name + '</div>';
10528
10542
  }
10529
10543
  }
10530
10544
  else if (d[k] instanceof Array) {
10531
10545
  info =
10532
10546
  info +
10533
- '<div class="prop-row"><div class="prop-name">' +
10547
+ '<div class="prop-row">' +
10534
10548
  k +
10535
- ':</div><div class="prop-val">' +
10549
+ ': ' +
10536
10550
  d[k].join('<br> &nbsp;&nbsp; &nbsp;&nbsp;') +
10537
- '</div></div>';
10551
+ '</div>';
10538
10552
  }
10539
10553
  else {
10540
10554
  const vo = d[k];
10541
10555
  if (vo && vo !== '') {
10542
10556
  info =
10543
10557
  info +
10544
- '<div class="prop-row"><div class="prop-name">' +
10558
+ '<div class="prop-row">' +
10545
10559
  k +
10546
- ':</div><div class="prop-val">' +
10560
+ ': ' +
10547
10561
  (vo !== null || vo !== '' ? d[k] : 'N/A') +
10548
- '</div></div>';
10562
+ '</div>';
10549
10563
  }
10550
10564
  }
10551
10565
  }
@@ -10558,11 +10572,11 @@ class IdentityServicePathComponent {
10558
10572
  this.refreshRotate = false;
10559
10573
  } // end of initTopoView
10560
10574
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IdentityServicePathComponent, deps: [{ token: IdentityServicePathHelper }, { token: SETTINGS_SERVICE }, { token: ZITI_DATA_SERVICE }, { token: i4.Router }, { token: i5$1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
10561
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IdentityServicePathComponent, selector: "app-identity-visualizer", ngImport: i0, template: "<div [ngClass]=\"{ 'full-screen': fullScreen }\" class=\"modal solid\" id=\"IdentityVisualizerDataModal\">\n <div class=\"tp-data-header\">\n <div class=\"modaltitle\">Identity Service Path</div>\n <div (click)=\"hide()\" class=\"buttonBall icon-close\" id=\"EscZEndpointClose\"></div>\n <div (click)=\"toggleModalSize()\" class=\"buttonBall resize\" id=\"ResizeModalButton\"></div>\n </div>\n\n <div class=\"identity-topology-container\">\n\n <div style=\"width: 100%; height: 80px; float: left\">\n <div class=\"ep-topology-filter-container listBox row\">\n <input\n (keyup)=\"filterSearchArray()\"\n [(ngModel)]=\"selectedService\"\n [matAutocomplete]=\"auto\"\n class=\"topology-filter-input\"\n id=\"filterText\"\n matInput\n placeholder=\"Type to search identity accessible services.\"\n />\n\n <div\n (click)=\"clearSearchFilter()\"\n *ngIf=\"filterText\"\n class=\"clear-svc-icon icon-close\"\n id=\"ClearSearchFilter\"\n ></div>\n <div [hidden]=\"!noSearchResults\" class=\"no-results-warning\">No Results Found</div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"autocompleteSearch($event)\">\n <mat-option *ngFor=\"let option of autocompleteOptions\" [value]=\"option.name\">\n {{ option.name }}\n </mat-option>\n </mat-autocomplete>\n </div>\n </div>\n\n <div class=\"topotip\" id=\"epTooltip\"></div>\n\n <svg style='pointer-events:all' height=\"1000\" id=\"IdentityTopology\" width=\"1200\">\n </svg>\n <lib-loading-indicator *ngIf=\"isLoading\" [isLoading]=\"isLoading\"></lib-loading-indicator>\n\n <div class=\"topology-legendA\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Component Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Unregistered / Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">Registered, Online</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle errored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n <div class=\"topology-legendB\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Link Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">In Usage</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_not_in_use\"></div>\n <div class=\"legend-text\">Usage Date N/A</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle linkerrored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n </div>\n</div>\n", styles: ["#IdentityVisualizerDataModal{overflow:hidden;width:75%;height:85%;background-color:var(--background);border-radius:1.5625rem;z-index:1001;margin:auto;inset:0rem;position:fixed}#IdentityVisualizerDataModal .buttonBall{cursor:pointer;font-weight:600}#IdentityVisualizerDataModal .buttonBall.icon-close{position:absolute;top:1.25rem;right:1.25rem;font-size:1.4375rem;color:var(--icon)}#IdentityVisualizerDataModal .buttonBall:hover{filter:brightness(50%)}#IdentityVisualizerDataModal .clear-svc-icon{font-size:1.4375rem;font-weight:600;position:absolute;top:.9375rem;right:2.5rem;color:var(--icon);cursor:pointer}#IdentityVisualizerDataModal .clear-svc-icon:hover{filter:brightness(50%)}#IdentityVisualizerDataModal.full-screen{width:100%;height:100%;border-radius:0}#IdentityVisualizerDataModal .ep-topology-filter-container{width:37%;display:flex;flex-direction:row;position:absolute;margin:1.25rem;padding:0}#IdentityVisualizerDataModal .buttonBall.resize{top:1.25rem;width:1.4375rem;height:1.4375rem;right:3.4375rem;background-image:url(/assets/svgs/Resize.svg);background-size:1.4375rem 1.4375rem;position:absolute;cursor:pointer}#IdentityVisualizerDataModal .identity-topology-container{display:flex;margin-left:-.3125rem;margin-top:.625rem;flex-direction:column;cursor:grab;background:#f5e9f2;background-image:linear-gradient(#ecd3e6 .125rem,transparent 0),linear-gradient(90deg,#ecd3e6 .125rem,transparent 0),linear-gradient(#ecd3e6 .0625rem,transparent 0),linear-gradient(90deg,#ecd3e6 .0625rem,transparent 0);background-size:2.5rem 2.5rem,2.5rem 2.5rem,.625rem .625rem,.625rem .625rem}#IdentityVisualizerDataModal .tp-data-header{height:2.5rem;font-size:1.5625rem;font-weight:600;margin-left:1.25rem;margin-top:.625rem;margin-bottom:.3125rem;font-family:Russo One;color:var(--primaryColor);font-size:1.875rem;text-transform:uppercase;font-weight:400}#IdentityVisualizerDataModal .node text{font:.75rem Open Sans,Arial,sans-serif}#IdentityVisualizerDataModal .modaltitle{filter:brightness(50%);padding-top:.375rem;padding-left:.3125rem}#IdentityVisualizerDataModal .modalbuttons{padding-right:1.25rem}#IdentityVisualizerDataModal .listBox.row .close{position:fixed;display:flex;flex-direction:column;font-family:icomoon!important;font-style:normal;font-weight:600;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--icon);text-align:center;font-size:2.1875rem;line-height:2.5rem;left:35%;top:17%;width:2.5rem;height:2.5rem;background-image:url(/assets/svgs/close.svg);z-index:600;background-position:center center;background-size:75%;cursor:pointer;transition:.3s;justify-content:end;align-items:center}#IdentityVisualizerDataModal .tp-topo-data-header{border:0rem solid black;height:75rem;font-size:.75rem;font-weight:400;margin-left:.75rem;margin-top:.1875rem;color:var(--primaryColor)}#IdentityVisualizerDataModal .services-select{width:25rem;flex-shrink:0;border-radius:1.6875rem;height:3.1875rem;margin-left:1.375rem;margin-top:.625rem;background-color:#fff;border-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);color:var(--tableText);padding-left:1.25rem}#IdentityVisualizerDataModal select{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .9375rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:2.9375rem}#IdentityVisualizerDataModal .topology-filter-input{height:3.125rem;width:95%;border-radius:1.5625rem;border-color:var(--navigation);background-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding-left:1.25rem}#IdentityVisualizerDataModal .topotip{display:none;position:fixed;background:var(--navigation);border:0rem;border-radius:.75rem;pointer-events:none;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);transition:background-color .3s;padding:.3125rem 0;font-size:1.0625rem;font-weight:700;color:var(--tableText);z-index:2000;opacity:1;max-width:28.125rem}#IdentityVisualizerDataModal .topology-legendA{border:0rem solid blue;width:12.5rem;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;display:inline-block;top:4.6875rem;right:0rem;background:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-top:0}#IdentityVisualizerDataModal .topology-legendB{width:12.5rem;border:0rem solid blue;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;top:12.5rem;right:0rem;background:var(--navigation);display:inline-block;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-left:.625rem}#IdentityVisualizerDataModal .legend-item{width:100%;height:100%;display:inline-block}#IdentityVisualizerDataModal .legend-item-head{width:105%;height:100%;display:inline-block;border:0rem solid blue;left:-.1875rem}#IdentityVisualizerDataModal .legend-circle{height:.75rem;width:.75rem;border-radius:.9375rem;display:inline-block;margin-top:.4375rem}#IdentityVisualizerDataModal .legend-circle.unregistered{background-color:#d8dce7}#IdentityVisualizerDataModal .legend-circle.registered_not_in_use{border:.0625rem solid #08dc5a;background-color:#fff}#IdentityVisualizerDataModal .legend-circle.registered_in_use{background-color:#08dc5a}#IdentityVisualizerDataModal .legend-circle.errored{background-color:#fb0d3d}#IdentityVisualizerDataModal .legend-circle.linkerrored{background-image:url(/assets/images/visualizer/link-cut.png);background-size:contain}#IdentityVisualizerDataModal .legend-text{display:inline-block;font-size:.9375rem;font-weight:600;color:var(--tableText);padding-left:.4375rem;padding-bottom:.25rem}#IdentityVisualizerDataModal .legend-text-heading{text-align:center;display:inline-block;font-size:.875rem;font-weight:600;color:var(--tableText);padding-left:.625rem;padding-top:.125rem;padding-bottom:.125rem;color:#8a2be2}#IdentityVisualizerDataModal .legend-text2{display:inline-block;font-size:.625rem;font-weight:400;color:var(--tableText);padding-left:.125rem;padding-bottom:.25rem}#IdentityVisualizerDataModal .filters-area{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;margin-top:.625rem}#IdentityVisualizerDataModal .dateTimeField input{height:2.5rem;vertical-align:middle;margin-right:.0625rem}#IdentityVisualizerDataModal .p-datepicker table td{padding:0rem}#IdentityVisualizerDataModal .p-datepicker table td>span{padding:0rem}#IdentityVisualizerDataModal .p-timepicker{padding:.0625rem}#IdentityVisualizerDataModal .p-datepicker-header,#IdentityVisualizerDataModal .p-datepicker-header-group{padding:0rem}#IdentityVisualizerDataModal .p-datepicker .p-timepicker button:last-child{height:.9375rem}#IdentityVisualizerDataModal .p-datepicker .p-timepicker button{height:.9375rem}#IdentityVisualizerDataModal .ng-tns-c15-3{font-size:.9375rem;font-weight:700}#IdentityVisualizerDataModal .p-datepicker .p-datepicker-buttonbar{padding:0rem}#IdentityVisualizerDataModal .reset-button{height:3.125rem;width:3.125rem;margin-top:-7%;margin-left:70%;border-radius:3.125rem;margin-right:.625rem;background-size:contain;--background-image: url(/assets/svgs/refresh.svg);cursor:pointer;overflow:hidden;z-index:24;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);transition:.3s}#IdentityVisualizerDataModal .refresh-button{position:absolute;display:inline-block;height:2.6875rem;width:7.625rem;margin-top:-5.3125rem;margin-left:65%;border-radius:.625rem;margin-right:.625rem;font-color:blue;font-weight:700}#IdentityVisualizerDataModal .reset-button:hover{filter:brightness(90%);transform:scale(.97);transition:.3s}#IdentityVisualizerDataModal .reset-button:active{transform:scale(.9);transition:.3s}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#IdentityVisualizerDataModal .rotating{animation:rotating 2s linear infinite}.tool-tip-container .prop-row{display:grid;grid-template-columns:2fr 3fr;grid-gap:.625rem;grid-template-areas:\"propName propVal\";height:-moz-fit-content;height:fit-content;min-height:1.5625rem;align-items:center;padding:0 .625rem}.tool-tip-container .prop-row:nth-child(2n){background-color:var(--formBackground)}.tool-tip-container .prop-row .prop-name{grid-area:propName;font-weight:700}.tool-tip-container .prop-row .prop-val{grid-area:propVal}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i7$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }], encapsulation: i0.ViewEncapsulation.None }); }
10575
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: IdentityServicePathComponent, selector: "app-identity-visualizer", ngImport: i0, template: "<div [ngClass]=\"{ 'full-screen': fullScreen }\" class=\"modal solid\" id=\"IdentityVisualizer\">\n <div class=\"tp-data-header\">\n <div class=\"modaltitle\">Identity Service Path</div>\n <div (click)=\"hide()\" class=\"buttonBall icon-close\" id=\"EscZEndpointClose\"></div>\n <div (click)=\"toggleModalSize()\" class=\"buttonBall resize\" id=\"ResizeModalButton\"></div>\n </div>\n <div [ngClass]=\"isDarkMode==true?'darkMode':'lightMode'\" class=\"identity-topology-container\">\n <div style=\"width: 100%; height: 80px; float: left\">\n <div class=\"ep-topology-filter-container listBox row\">\n <input\n (keyup)=\"filterSearchArray()\"\n [(ngModel)]=\"selectedService\"\n [matAutocomplete]=\"auto\"\n class=\"topology-filter-input\"\n id=\"filterText\"\n matInput\n placeholder=\"Type to search identity accessible services.\"\n />\n\n <div\n (click)=\"clearSearchFilter()\"\n *ngIf=\"filterText\"\n class=\"clear-svc-icon icon-close\"\n id=\"ClearSearchFilter\"\n ></div>\n <div [hidden]=\"!noSearchResults\" class=\"no-results-warning\">No Results Found</div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"autocompleteSearch($event)\">\n <mat-option *ngFor=\"let option of autocompleteOptions\" [value]=\"option.name\">\n {{ option.name }}\n </mat-option>\n </mat-autocomplete>\n </div>\n </div>\n\n <div class=\"topotip\" id=\"epTooltip\"></div>\n\n <svg style='pointer-events:all' height=\"1000\" id=\"IdentityTopology\" width=\"1200\">\n </svg>\n <lib-loading-indicator *ngIf=\"isLoading\" [isLoading]=\"isLoading\"></lib-loading-indicator>\n\n <div class=\"topology-legendA\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Component Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Unregistered / Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">Registered, Online</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle errored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n <div class=\"topology-legendB\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Link Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">In Usage</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_not_in_use\"></div>\n <div class=\"legend-text\">Usage Date N/A</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle linkerrored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n </div>\n</div>\n", styles: ["#IdentityVisualizer{overflow:hidden;width:75%;height:85%;background-color:var(--background);border-radius:1.5625rem;z-index:1001;margin:auto;inset:0rem;position:fixed}#IdentityVisualizer .buttonBall{cursor:pointer;font-weight:600}#IdentityVisualizer .buttonBall.icon-close{position:absolute;top:1.25rem;right:1.25rem;font-size:1.4375rem;color:var(--icon)}#IdentityVisualizer .buttonBall:hover{filter:brightness(50%)}#IdentityVisualizer .clear-svc-icon{font-size:1.4375rem;font-weight:600;position:relative;top:.9375rem;right:2.5rem;color:var(--icon);cursor:pointer}#IdentityVisualizer .clear-svc-icon:hover{filter:brightness(50%)}#IdentityVisualizer.full-screen{width:100%;height:100%;border-radius:0}.ep-topology-filter-container{width:37%;display:flex;flex-direction:row;position:absolute;margin:1.25rem;padding:0}.buttonBall.resize{top:1.25rem;width:1.4375rem;height:1.4375rem;right:3.4375rem;background-image:url(/assets/svgs/Resize.svg);background-size:1.4375rem 1.4375rem;position:absolute;cursor:pointer}.identity-topology-container{display:flex;margin-left:-.3125rem;margin-top:.625rem;flex-direction:column;cursor:grab}.lightMode{background:#f5e9f2;background-image:linear-gradient(#ecd3e6 .125rem,transparent 0),linear-gradient(90deg,#ecd3e6 .125rem,transparent 0),linear-gradient(#ecd3e6 .0625rem,transparent 0),linear-gradient(90deg,#ecd3e6 .0625rem,transparent 0);background-size:2.5rem 2.5rem,2.5rem 2.5rem,.625rem .625rem,.625rem .625rem}.darkMode{background:#000a17;background-image:linear-gradient(#001127 .125rem,transparent 0),linear-gradient(90deg,#001127 .125rem,transparent 0),linear-gradient(#001127 1px,transparent 0),linear-gradient(90deg,#001127 1px,transparent 0);background-size:2.5rem 2.5rem,2.5rem 2.5rem,.625rem .625rem,.625rem .625rem}.tp-data-header{height:2.5rem;font-size:1.5625rem;font-weight:600;margin-left:1.25rem;margin-top:.625rem;margin-bottom:.3125rem;font-family:Russo One;color:var(--primaryColor);font-size:1.875rem;text-transform:uppercase;font-weight:400}.node text{font:.75rem Open Sans,Arial,sans-serif}.modaltitle{padding-top:.375rem;padding-left:.3125rem;color:var(--primaryColor)}.modalbuttons{padding-right:1.25rem}.listBox.row .close{position:fixed;display:flex;flex-direction:column;font-family:icomoon!important;font-style:normal;font-weight:600;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--icon);text-align:center;font-size:2.1875rem;line-height:2.5rem;left:35%;top:17%;width:2.5rem;height:2.5rem;background-image:url(/assets/svgs/close.svg);z-index:600;background-position:center center;background-size:75%;cursor:pointer;transition:.3s;justify-content:end;align-items:center}.tp-topo-data-header{border:0rem solid black;height:75rem;font-size:.75rem;font-weight:400;margin-left:.75rem;margin-top:.1875rem;color:var(--primaryColor)}.services-select{width:25rem;flex-shrink:0;border-radius:1.6875rem;height:3.1875rem;margin-left:1.375rem;margin-top:.625rem;background-color:#fff;border-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);color:var(--tableText);padding-left:1.25rem}select{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .9375rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:2.9375rem}.topology-filter-input{height:3.125rem;width:95%;border-radius:1.5625rem;border-color:var(--navigation);background-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding-left:1.25rem}.topotip{display:none;position:fixed;background:var(--navigation);border:.1rem;border-radius:.75rem;pointer-events:none;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);transition:background-color .3s;padding:.3125rem 0;font-size:1.0625rem;font-weight:700;color:var(--tableText);z-index:2000;opacity:1;padding:1rem}.topology-legendA{border:0rem solid blue;width:12.5rem;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;display:inline-block;top:4.6875rem;right:0rem;background:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-top:0}.topology-legendB{width:12.5rem;border:0rem solid blue;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;top:12.5rem;right:0rem;background:var(--navigation);display:inline-block;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-left:.625rem}.legend-item{width:100%;height:100%;display:inline-block}.legend-item-head{width:105%;height:100%;display:inline-block;border:0rem solid blue;left:-.1875rem}.legend-circle{height:.75rem;width:.75rem;border-radius:.9375rem;display:inline-block;margin-top:.4375rem}.legend-circle.unregistered{background-color:#d8dce7}.legend-circle.registered_not_in_use{border:.0625rem solid #08dc5a;background-color:#fff}.legend-circle.registered_in_use{background-color:#08dc5a}.legend-circle.errored{background-color:#fb0d3d}.legend-circle.linkerrored{background-image:url(/assets/images/visualizer/link-cut.png);background-size:contain}.legend-text{display:inline-block;font-size:.9375rem;font-weight:600;color:var(--tableText);padding-left:.4375rem;padding-bottom:.25rem}.legend-text-heading{text-align:center;display:inline-block;font-size:.875rem;font-weight:600;color:var(--tableText);padding-left:.625rem;padding-top:.125rem;padding-bottom:.125rem;color:#8a2be2}.legend-text2{display:inline-block;font-size:.625rem;font-weight:400;color:var(--tableText);padding-left:.125rem;padding-bottom:.25rem}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rotating{animation:rotating 2s linear infinite}.tool-tip-container .prop-row{display:grid;grid-template-columns:auto auto;grid-gap:.625rem;height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;min-height:1.5625rem;align-items:center;padding:.5rem}.tool-tip-container .prop-row:nth-child(2n){background-color:var(--formBackground)}::ng-deep .cdk-overlay-pane:not(.mat-mdc-autocomplete-panel-above) div.mat-mdc-autocomplete-panel{border-radius:14px;background:var(--background);color:var(--tableText)}::ng-deep .mat-mdc-option.mdc-list-item{align-items:center;color:var(--tableText)}::ng-deep .mat-mdc-option.mdc-list-item:hover:not(.mat-option-disabled),::ng-deep .mat-mdc-option.mdc-list-item:focus:not(.mat-option-disabled){border-color:var(--primaryColor);border-radius:14px;border:.01rem solid var(--primaryColor)}::ng-deep .mat-mdc-raised-button .mdc-button__ripple{border:.1rem solid var(--primaryColor)}::ng-deep .p-button.p-button-icon-only{width:1.357rem}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i7$1.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
10562
10576
  }
10563
10577
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: IdentityServicePathComponent, decorators: [{
10564
10578
  type: Component,
10565
- args: [{ selector: 'app-identity-visualizer', encapsulation: ViewEncapsulation.None, template: "<div [ngClass]=\"{ 'full-screen': fullScreen }\" class=\"modal solid\" id=\"IdentityVisualizerDataModal\">\n <div class=\"tp-data-header\">\n <div class=\"modaltitle\">Identity Service Path</div>\n <div (click)=\"hide()\" class=\"buttonBall icon-close\" id=\"EscZEndpointClose\"></div>\n <div (click)=\"toggleModalSize()\" class=\"buttonBall resize\" id=\"ResizeModalButton\"></div>\n </div>\n\n <div class=\"identity-topology-container\">\n\n <div style=\"width: 100%; height: 80px; float: left\">\n <div class=\"ep-topology-filter-container listBox row\">\n <input\n (keyup)=\"filterSearchArray()\"\n [(ngModel)]=\"selectedService\"\n [matAutocomplete]=\"auto\"\n class=\"topology-filter-input\"\n id=\"filterText\"\n matInput\n placeholder=\"Type to search identity accessible services.\"\n />\n\n <div\n (click)=\"clearSearchFilter()\"\n *ngIf=\"filterText\"\n class=\"clear-svc-icon icon-close\"\n id=\"ClearSearchFilter\"\n ></div>\n <div [hidden]=\"!noSearchResults\" class=\"no-results-warning\">No Results Found</div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"autocompleteSearch($event)\">\n <mat-option *ngFor=\"let option of autocompleteOptions\" [value]=\"option.name\">\n {{ option.name }}\n </mat-option>\n </mat-autocomplete>\n </div>\n </div>\n\n <div class=\"topotip\" id=\"epTooltip\"></div>\n\n <svg style='pointer-events:all' height=\"1000\" id=\"IdentityTopology\" width=\"1200\">\n </svg>\n <lib-loading-indicator *ngIf=\"isLoading\" [isLoading]=\"isLoading\"></lib-loading-indicator>\n\n <div class=\"topology-legendA\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Component Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Unregistered / Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">Registered, Online</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle errored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n <div class=\"topology-legendB\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Link Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">In Usage</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_not_in_use\"></div>\n <div class=\"legend-text\">Usage Date N/A</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle linkerrored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n </div>\n</div>\n", styles: ["#IdentityVisualizerDataModal{overflow:hidden;width:75%;height:85%;background-color:var(--background);border-radius:1.5625rem;z-index:1001;margin:auto;inset:0rem;position:fixed}#IdentityVisualizerDataModal .buttonBall{cursor:pointer;font-weight:600}#IdentityVisualizerDataModal .buttonBall.icon-close{position:absolute;top:1.25rem;right:1.25rem;font-size:1.4375rem;color:var(--icon)}#IdentityVisualizerDataModal .buttonBall:hover{filter:brightness(50%)}#IdentityVisualizerDataModal .clear-svc-icon{font-size:1.4375rem;font-weight:600;position:absolute;top:.9375rem;right:2.5rem;color:var(--icon);cursor:pointer}#IdentityVisualizerDataModal .clear-svc-icon:hover{filter:brightness(50%)}#IdentityVisualizerDataModal.full-screen{width:100%;height:100%;border-radius:0}#IdentityVisualizerDataModal .ep-topology-filter-container{width:37%;display:flex;flex-direction:row;position:absolute;margin:1.25rem;padding:0}#IdentityVisualizerDataModal .buttonBall.resize{top:1.25rem;width:1.4375rem;height:1.4375rem;right:3.4375rem;background-image:url(/assets/svgs/Resize.svg);background-size:1.4375rem 1.4375rem;position:absolute;cursor:pointer}#IdentityVisualizerDataModal .identity-topology-container{display:flex;margin-left:-.3125rem;margin-top:.625rem;flex-direction:column;cursor:grab;background:#f5e9f2;background-image:linear-gradient(#ecd3e6 .125rem,transparent 0),linear-gradient(90deg,#ecd3e6 .125rem,transparent 0),linear-gradient(#ecd3e6 .0625rem,transparent 0),linear-gradient(90deg,#ecd3e6 .0625rem,transparent 0);background-size:2.5rem 2.5rem,2.5rem 2.5rem,.625rem .625rem,.625rem .625rem}#IdentityVisualizerDataModal .tp-data-header{height:2.5rem;font-size:1.5625rem;font-weight:600;margin-left:1.25rem;margin-top:.625rem;margin-bottom:.3125rem;font-family:Russo One;color:var(--primaryColor);font-size:1.875rem;text-transform:uppercase;font-weight:400}#IdentityVisualizerDataModal .node text{font:.75rem Open Sans,Arial,sans-serif}#IdentityVisualizerDataModal .modaltitle{filter:brightness(50%);padding-top:.375rem;padding-left:.3125rem}#IdentityVisualizerDataModal .modalbuttons{padding-right:1.25rem}#IdentityVisualizerDataModal .listBox.row .close{position:fixed;display:flex;flex-direction:column;font-family:icomoon!important;font-style:normal;font-weight:600;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--icon);text-align:center;font-size:2.1875rem;line-height:2.5rem;left:35%;top:17%;width:2.5rem;height:2.5rem;background-image:url(/assets/svgs/close.svg);z-index:600;background-position:center center;background-size:75%;cursor:pointer;transition:.3s;justify-content:end;align-items:center}#IdentityVisualizerDataModal .tp-topo-data-header{border:0rem solid black;height:75rem;font-size:.75rem;font-weight:400;margin-left:.75rem;margin-top:.1875rem;color:var(--primaryColor)}#IdentityVisualizerDataModal .services-select{width:25rem;flex-shrink:0;border-radius:1.6875rem;height:3.1875rem;margin-left:1.375rem;margin-top:.625rem;background-color:#fff;border-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);color:var(--tableText);padding-left:1.25rem}#IdentityVisualizerDataModal select{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .9375rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:2.9375rem}#IdentityVisualizerDataModal .topology-filter-input{height:3.125rem;width:95%;border-radius:1.5625rem;border-color:var(--navigation);background-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding-left:1.25rem}#IdentityVisualizerDataModal .topotip{display:none;position:fixed;background:var(--navigation);border:0rem;border-radius:.75rem;pointer-events:none;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);transition:background-color .3s;padding:.3125rem 0;font-size:1.0625rem;font-weight:700;color:var(--tableText);z-index:2000;opacity:1;max-width:28.125rem}#IdentityVisualizerDataModal .topology-legendA{border:0rem solid blue;width:12.5rem;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;display:inline-block;top:4.6875rem;right:0rem;background:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-top:0}#IdentityVisualizerDataModal .topology-legendB{width:12.5rem;border:0rem solid blue;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;top:12.5rem;right:0rem;background:var(--navigation);display:inline-block;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-left:.625rem}#IdentityVisualizerDataModal .legend-item{width:100%;height:100%;display:inline-block}#IdentityVisualizerDataModal .legend-item-head{width:105%;height:100%;display:inline-block;border:0rem solid blue;left:-.1875rem}#IdentityVisualizerDataModal .legend-circle{height:.75rem;width:.75rem;border-radius:.9375rem;display:inline-block;margin-top:.4375rem}#IdentityVisualizerDataModal .legend-circle.unregistered{background-color:#d8dce7}#IdentityVisualizerDataModal .legend-circle.registered_not_in_use{border:.0625rem solid #08dc5a;background-color:#fff}#IdentityVisualizerDataModal .legend-circle.registered_in_use{background-color:#08dc5a}#IdentityVisualizerDataModal .legend-circle.errored{background-color:#fb0d3d}#IdentityVisualizerDataModal .legend-circle.linkerrored{background-image:url(/assets/images/visualizer/link-cut.png);background-size:contain}#IdentityVisualizerDataModal .legend-text{display:inline-block;font-size:.9375rem;font-weight:600;color:var(--tableText);padding-left:.4375rem;padding-bottom:.25rem}#IdentityVisualizerDataModal .legend-text-heading{text-align:center;display:inline-block;font-size:.875rem;font-weight:600;color:var(--tableText);padding-left:.625rem;padding-top:.125rem;padding-bottom:.125rem;color:#8a2be2}#IdentityVisualizerDataModal .legend-text2{display:inline-block;font-size:.625rem;font-weight:400;color:var(--tableText);padding-left:.125rem;padding-bottom:.25rem}#IdentityVisualizerDataModal .filters-area{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;margin-top:.625rem}#IdentityVisualizerDataModal .dateTimeField input{height:2.5rem;vertical-align:middle;margin-right:.0625rem}#IdentityVisualizerDataModal .p-datepicker table td{padding:0rem}#IdentityVisualizerDataModal .p-datepicker table td>span{padding:0rem}#IdentityVisualizerDataModal .p-timepicker{padding:.0625rem}#IdentityVisualizerDataModal .p-datepicker-header,#IdentityVisualizerDataModal .p-datepicker-header-group{padding:0rem}#IdentityVisualizerDataModal .p-datepicker .p-timepicker button:last-child{height:.9375rem}#IdentityVisualizerDataModal .p-datepicker .p-timepicker button{height:.9375rem}#IdentityVisualizerDataModal .ng-tns-c15-3{font-size:.9375rem;font-weight:700}#IdentityVisualizerDataModal .p-datepicker .p-datepicker-buttonbar{padding:0rem}#IdentityVisualizerDataModal .reset-button{height:3.125rem;width:3.125rem;margin-top:-7%;margin-left:70%;border-radius:3.125rem;margin-right:.625rem;background-size:contain;--background-image: url(/assets/svgs/refresh.svg);cursor:pointer;overflow:hidden;z-index:24;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);transition:.3s}#IdentityVisualizerDataModal .refresh-button{position:absolute;display:inline-block;height:2.6875rem;width:7.625rem;margin-top:-5.3125rem;margin-left:65%;border-radius:.625rem;margin-right:.625rem;font-color:blue;font-weight:700}#IdentityVisualizerDataModal .reset-button:hover{filter:brightness(90%);transform:scale(.97);transition:.3s}#IdentityVisualizerDataModal .reset-button:active{transform:scale(.9);transition:.3s}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#IdentityVisualizerDataModal .rotating{animation:rotating 2s linear infinite}.tool-tip-container .prop-row{display:grid;grid-template-columns:2fr 3fr;grid-gap:.625rem;grid-template-areas:\"propName propVal\";height:-moz-fit-content;height:fit-content;min-height:1.5625rem;align-items:center;padding:0 .625rem}.tool-tip-container .prop-row:nth-child(2n){background-color:var(--formBackground)}.tool-tip-container .prop-row .prop-name{grid-area:propName;font-weight:700}.tool-tip-container .prop-row .prop-val{grid-area:propVal}\n"] }]
10579
+ args: [{ selector: 'app-identity-visualizer', template: "<div [ngClass]=\"{ 'full-screen': fullScreen }\" class=\"modal solid\" id=\"IdentityVisualizer\">\n <div class=\"tp-data-header\">\n <div class=\"modaltitle\">Identity Service Path</div>\n <div (click)=\"hide()\" class=\"buttonBall icon-close\" id=\"EscZEndpointClose\"></div>\n <div (click)=\"toggleModalSize()\" class=\"buttonBall resize\" id=\"ResizeModalButton\"></div>\n </div>\n <div [ngClass]=\"isDarkMode==true?'darkMode':'lightMode'\" class=\"identity-topology-container\">\n <div style=\"width: 100%; height: 80px; float: left\">\n <div class=\"ep-topology-filter-container listBox row\">\n <input\n (keyup)=\"filterSearchArray()\"\n [(ngModel)]=\"selectedService\"\n [matAutocomplete]=\"auto\"\n class=\"topology-filter-input\"\n id=\"filterText\"\n matInput\n placeholder=\"Type to search identity accessible services.\"\n />\n\n <div\n (click)=\"clearSearchFilter()\"\n *ngIf=\"filterText\"\n class=\"clear-svc-icon icon-close\"\n id=\"ClearSearchFilter\"\n ></div>\n <div [hidden]=\"!noSearchResults\" class=\"no-results-warning\">No Results Found</div>\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"autocompleteSearch($event)\">\n <mat-option *ngFor=\"let option of autocompleteOptions\" [value]=\"option.name\">\n {{ option.name }}\n </mat-option>\n </mat-autocomplete>\n </div>\n </div>\n\n <div class=\"topotip\" id=\"epTooltip\"></div>\n\n <svg style='pointer-events:all' height=\"1000\" id=\"IdentityTopology\" width=\"1200\">\n </svg>\n <lib-loading-indicator *ngIf=\"isLoading\" [isLoading]=\"isLoading\"></lib-loading-indicator>\n\n <div class=\"topology-legendA\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Component Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Unregistered / Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">Registered, Online</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle errored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n <div class=\"topology-legendB\">\n <div class=\"legend-item-head\">\n <div class=\"legend-text-heading\">Link Status</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle unregistered\"></div>\n <div class=\"legend-text\">Offline</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_in_use\"></div>\n <div class=\"legend-text\">In Usage</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle registered_not_in_use\"></div>\n <div class=\"legend-text\">Usage Date N/A</div>\n </div>\n <div class=\"legend-item\">\n <div class=\"legend-circle linkerrored\"></div>\n <div class=\"legend-text\">Errored</div>\n </div>\n </div>\n\n </div>\n</div>\n", styles: ["#IdentityVisualizer{overflow:hidden;width:75%;height:85%;background-color:var(--background);border-radius:1.5625rem;z-index:1001;margin:auto;inset:0rem;position:fixed}#IdentityVisualizer .buttonBall{cursor:pointer;font-weight:600}#IdentityVisualizer .buttonBall.icon-close{position:absolute;top:1.25rem;right:1.25rem;font-size:1.4375rem;color:var(--icon)}#IdentityVisualizer .buttonBall:hover{filter:brightness(50%)}#IdentityVisualizer .clear-svc-icon{font-size:1.4375rem;font-weight:600;position:relative;top:.9375rem;right:2.5rem;color:var(--icon);cursor:pointer}#IdentityVisualizer .clear-svc-icon:hover{filter:brightness(50%)}#IdentityVisualizer.full-screen{width:100%;height:100%;border-radius:0}.ep-topology-filter-container{width:37%;display:flex;flex-direction:row;position:absolute;margin:1.25rem;padding:0}.buttonBall.resize{top:1.25rem;width:1.4375rem;height:1.4375rem;right:3.4375rem;background-image:url(/assets/svgs/Resize.svg);background-size:1.4375rem 1.4375rem;position:absolute;cursor:pointer}.identity-topology-container{display:flex;margin-left:-.3125rem;margin-top:.625rem;flex-direction:column;cursor:grab}.lightMode{background:#f5e9f2;background-image:linear-gradient(#ecd3e6 .125rem,transparent 0),linear-gradient(90deg,#ecd3e6 .125rem,transparent 0),linear-gradient(#ecd3e6 .0625rem,transparent 0),linear-gradient(90deg,#ecd3e6 .0625rem,transparent 0);background-size:2.5rem 2.5rem,2.5rem 2.5rem,.625rem .625rem,.625rem .625rem}.darkMode{background:#000a17;background-image:linear-gradient(#001127 .125rem,transparent 0),linear-gradient(90deg,#001127 .125rem,transparent 0),linear-gradient(#001127 1px,transparent 0),linear-gradient(90deg,#001127 1px,transparent 0);background-size:2.5rem 2.5rem,2.5rem 2.5rem,.625rem .625rem,.625rem .625rem}.tp-data-header{height:2.5rem;font-size:1.5625rem;font-weight:600;margin-left:1.25rem;margin-top:.625rem;margin-bottom:.3125rem;font-family:Russo One;color:var(--primaryColor);font-size:1.875rem;text-transform:uppercase;font-weight:400}.node text{font:.75rem Open Sans,Arial,sans-serif}.modaltitle{padding-top:.375rem;padding-left:.3125rem;color:var(--primaryColor)}.modalbuttons{padding-right:1.25rem}.listBox.row .close{position:fixed;display:flex;flex-direction:column;font-family:icomoon!important;font-style:normal;font-weight:600;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--icon);text-align:center;font-size:2.1875rem;line-height:2.5rem;left:35%;top:17%;width:2.5rem;height:2.5rem;background-image:url(/assets/svgs/close.svg);z-index:600;background-position:center center;background-size:75%;cursor:pointer;transition:.3s;justify-content:end;align-items:center}.tp-topo-data-header{border:0rem solid black;height:75rem;font-size:.75rem;font-weight:400;margin-left:.75rem;margin-top:.1875rem;color:var(--primaryColor)}.services-select{width:25rem;flex-shrink:0;border-radius:1.6875rem;height:3.1875rem;margin-left:1.375rem;margin-top:.625rem;background-color:#fff;border-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);color:var(--tableText);padding-left:1.25rem}select{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .9375rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:2.9375rem}.topology-filter-input{height:3.125rem;width:95%;border-radius:1.5625rem;border-color:var(--navigation);background-color:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding-left:1.25rem}.topotip{display:none;position:fixed;background:var(--navigation);border:.1rem;border-radius:.75rem;pointer-events:none;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);transition:background-color .3s;padding:.3125rem 0;font-size:1.0625rem;font-weight:700;color:var(--tableText);z-index:2000;opacity:1;padding:1rem}.topology-legendA{border:0rem solid blue;width:12.5rem;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;display:inline-block;top:4.6875rem;right:0rem;background:var(--navigation);box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-top:0}.topology-legendB{width:12.5rem;border:0rem solid blue;border-radius:.75rem;margin-bottom:.625rem;margin-right:.625rem;position:absolute;top:12.5rem;right:0rem;background:var(--navigation);display:inline-block;box-shadow:0 1.25rem 1.4375rem 0 var(--shadow);padding:0rem .625rem .3125rem;margin-left:.625rem}.legend-item{width:100%;height:100%;display:inline-block}.legend-item-head{width:105%;height:100%;display:inline-block;border:0rem solid blue;left:-.1875rem}.legend-circle{height:.75rem;width:.75rem;border-radius:.9375rem;display:inline-block;margin-top:.4375rem}.legend-circle.unregistered{background-color:#d8dce7}.legend-circle.registered_not_in_use{border:.0625rem solid #08dc5a;background-color:#fff}.legend-circle.registered_in_use{background-color:#08dc5a}.legend-circle.errored{background-color:#fb0d3d}.legend-circle.linkerrored{background-image:url(/assets/images/visualizer/link-cut.png);background-size:contain}.legend-text{display:inline-block;font-size:.9375rem;font-weight:600;color:var(--tableText);padding-left:.4375rem;padding-bottom:.25rem}.legend-text-heading{text-align:center;display:inline-block;font-size:.875rem;font-weight:600;color:var(--tableText);padding-left:.625rem;padding-top:.125rem;padding-bottom:.125rem;color:#8a2be2}.legend-text2{display:inline-block;font-size:.625rem;font-weight:400;color:var(--tableText);padding-left:.125rem;padding-bottom:.25rem}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rotating{animation:rotating 2s linear infinite}.tool-tip-container .prop-row{display:grid;grid-template-columns:auto auto;grid-gap:.625rem;height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;min-height:1.5625rem;align-items:center;padding:.5rem}.tool-tip-container .prop-row:nth-child(2n){background-color:var(--formBackground)}::ng-deep .cdk-overlay-pane:not(.mat-mdc-autocomplete-panel-above) div.mat-mdc-autocomplete-panel{border-radius:14px;background:var(--background);color:var(--tableText)}::ng-deep .mat-mdc-option.mdc-list-item{align-items:center;color:var(--tableText)}::ng-deep .mat-mdc-option.mdc-list-item:hover:not(.mat-option-disabled),::ng-deep .mat-mdc-option.mdc-list-item:focus:not(.mat-option-disabled){border-color:var(--primaryColor);border-radius:14px;border:.01rem solid var(--primaryColor)}::ng-deep .mat-mdc-raised-button .mdc-button__ripple{border:.1rem solid var(--primaryColor)}::ng-deep .p-button.p-button-icon-only{width:1.357rem}\n"] }]
10566
10580
  }], ctorParameters: function () { return [{ type: IdentityServicePathHelper }, { type: SettingsService, decorators: [{
10567
10581
  type: Inject,
10568
10582
  args: [SETTINGS_SERVICE]
@@ -12727,12 +12741,19 @@ class PreviewListComponent {
12727
12741
  this.router.navigateByUrl(item.href);
12728
12742
  event.preventDefault();
12729
12743
  }
12744
+ getHrefVal(href) {
12745
+ let hrefVal = href;
12746
+ if (hrefVal?.indexOf('/') === 0) {
12747
+ hrefVal = hrefVal.slice(1);
12748
+ }
12749
+ return './' + hrefVal;
12750
+ }
12730
12751
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PreviewListComponent, deps: [{ token: i4.Router }], target: i0.ɵɵFactoryTarget.Component }); }
12731
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PreviewListComponent, selector: "lib-preview-list", inputs: { label: "label", clickable: "clickable", isLoading: "isLoading", allNames: "allNames", items: "items", allowRemove: "allowRemove", tooltip: "tooltip", showfilter: "showfilter" }, outputs: { itemSelected: "itemSelected", itemRemoved: "itemRemoved" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div *ngIf=\"previewItems.length <= 0\" class=\"listText\">\n <span class=\"preview-name preview-placeholder\">no items to display...</span>\n </div>\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item.name || item }}</span>\n <a *ngIf=\"item.href\" [href]=\"'./' + item.href\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0rem}.listBox{background-color:var(--stroke);padding:.625rem;border-radius:var(--inputBorderRadius);height:100%;min-height:3.75rem}.listBox input{height:2.5rem;border-radius:1.6875rem;font-size:.875rem;font-weight:600;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAYAAABTTPsKAAAD4klEQVRYhc2ZyYsUSRSHvypLbRfGDfWgzngYFRR3EUQPOm5oOyMuKIoo4kk9iAriQfAPcAMvKuJBPAyiXmbAwWVUFGEYmMHlIi24ogd3cW3trpYnv4CooLKrKiuzqn5QUBmZEe/Lly9fvIjMPH36CmA4cABYAHSnsdQK/AVsBR4Y8E/ATaA30KXBYJ3agffA+Cywt8FhEZsx7jUPf/bC4BNwuc5woWYBPdTWmgti9hSwrv6MBToOrFVD92xwsqOOYFEqYAqBGzGOC5gshv07aANuNZCnM8A4IOcacsEFdjyp9lzly0KipZEBA7VYSKwEfpf7nTqU4uqpHkWYVlkInAR+ATZ4AZ4HmoErdQKeCVz0eGymO2asrpawE38D0xXHdjcfFM93aww7Avgf6CUPWyK4Dsw2cJfW7A4WA4/1P6NHcgHoV0PYfrLpwqFdTIv1vyAPvwXmyLMd8voQ4A+gaw1gu8rWENl2T3mO2AiBTfeARYphFB7TgMM1AD4sWy7V5sVyz78oBDZd0wvoZHe7HtiWIuw22fBntQ1iKVAxYFRw7PE8nVEZ2pwCbLPGdimsXbaPF7vYZYmi54A/gfneY7JSdCpwOyHYscC/QJOOLSOcA36NKg+iPIw6rNBM2Ka2bnqLBycAO1hjdfNgW2QzspbpDNj0EZintzSv6wdojdVUom9natIYAzRmXjbmyWakSgGbnigsnJdzepQngqmzXGXUd6wXam2y8aTUGOUAm/4DVnvHZmgpsDsG8G719SvF1bJRUuUCm84Au7zMkfWMl6sl6uPs5jXmmXIH6CxLRMkqu+Weh94BPwJvSvTrAzwCftCxhcFpq8AqMR4W8OXIFqk/AxPUv0lJfl/Q114gP4yGAT092BtxFrxxgL8Ay4D7OrYa4LciwKOBNRHrxKye0pdKjVcSw74eBSuV4RHXtUW0W9+HcQzHBUaVlFPUflxU+4eI9pKqBriUDqm+db9nSQwaJ4bLldUDOzyn9G904KHAxKRtpBkSpsQ3ZNL0sG1EW9r6quNw2R5Lab90vbX67ZXUS5cUcJTnZmjqtjQ2KAlD1QB/9v4PVAETbgnk5OWeSYQDVQKf9WayjKbnO9oxT03VAO8HrgZbAubpS1pU2tLHKrh/VOtGTdMVqdqQmAvs1Eo37z32LarGWrXXMAV4WW9gBGlL8sn2DS1YRo3U57TNScUvCWYJAxsDHPXarKy00vMgcD6pD5ZJ5mELkU3AQuC15+2stk/7JmEkjYnDlu+jtL/rpuZwRn0Rd/C0Zrrn+m69UauK71ulkt2EbU7HUtrFzxF9BXLpzzZLtusDZuUCvgHvMdO9Y7xsIwAAAABJRU5ErkJggg==);background-size:auto 1.3125rem;background-position:top .5rem right .75rem;background-repeat:no-repeat;margin-bottom:.625rem;padding-left:.875rem}.text{overflow-y:scroll;height:100%}.listText{width:100%;position:relative;float:left;font-size:.875rem;font-weight:600;padding-left:.625rem;padding-right:.625rem;margin-bottom:.125rem;color:var(--primary);display:flex;flex-direction:row;align-items:center;gap:.3125rem}.listText a{color:var(--primary);display:flex;flex-direction:row;align-items:center}.listText a:hover .preview-item-icon{text-decoration:underline}.listText .icon-clear{margin-top:.125rem}.listText .icon-clear:hover{color:var(--background)}::-webkit-scrollbar-thumb{background-color:var(--background)!important}.clickable{color:var(--primary);cursor:pointer}.clickable:hover,.clickable:focus{filter:brightness(90%)}.clickable:active{color:var(--icon);transform:translateY(.0625rem)}.clickable .preview-name:hover,.clickable .preview-name:focus{text-decoration:underline}.clickable .preview-name:active{text-decoration:underline}.preview-name{white-space:pre}.preview-name.preview-placeholder{font-style:italic}.preview-item-icon{margin-left:.4375rem;font-family:zac!important}.preview-more-results{margin-top:.3125rem}.spinner-container{position:absolute;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.spinner-container .spinner{display:inline-block;width:2rem;height:2rem;border-radius:50%;background:transparent;border-top:.3125rem solid var(--tableText);border-right:.3125rem solid var(--tableText);border-bottom:.3125rem solid transparent;border-left:.3125rem solid transparent;animation:loading .5s infinite linear;opacity:.7}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] }); }
12752
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PreviewListComponent, selector: "lib-preview-list", inputs: { label: "label", clickable: "clickable", isLoading: "isLoading", allNames: "allNames", items: "items", allowRemove: "allowRemove", tooltip: "tooltip", showfilter: "showfilter" }, outputs: { itemSelected: "itemSelected", itemRemoved: "itemRemoved" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div *ngIf=\"previewItems.length <= 0\" class=\"listText\">\n <span class=\"preview-name preview-placeholder\">no items to display...</span>\n </div>\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item.name || item }}</span>\n <a *ngIf=\"item.href\" [href]=\"getHrefVal(item.href)\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>\n", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0rem}.listBox{background-color:var(--stroke);padding:.625rem;border-radius:var(--inputBorderRadius);height:100%;min-height:3.75rem}.listBox input{height:2.5rem;border-radius:1.6875rem;font-size:.875rem;font-weight:600;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAYAAABTTPsKAAAD4klEQVRYhc2ZyYsUSRSHvypLbRfGDfWgzngYFRR3EUQPOm5oOyMuKIoo4kk9iAriQfAPcAMvKuJBPAyiXmbAwWVUFGEYmMHlIi24ogd3cW3trpYnv4CooLKrKiuzqn5QUBmZEe/Lly9fvIjMPH36CmA4cABYAHSnsdQK/AVsBR4Y8E/ATaA30KXBYJ3agffA+Cywt8FhEZsx7jUPf/bC4BNwuc5woWYBPdTWmgti9hSwrv6MBToOrFVD92xwsqOOYFEqYAqBGzGOC5gshv07aANuNZCnM8A4IOcacsEFdjyp9lzly0KipZEBA7VYSKwEfpf7nTqU4uqpHkWYVlkInAR+ATZ4AZ4HmoErdQKeCVz0eGymO2asrpawE38D0xXHdjcfFM93aww7Avgf6CUPWyK4Dsw2cJfW7A4WA4/1P6NHcgHoV0PYfrLpwqFdTIv1vyAPvwXmyLMd8voQ4A+gaw1gu8rWENl2T3mO2AiBTfeARYphFB7TgMM1AD4sWy7V5sVyz78oBDZd0wvoZHe7HtiWIuw22fBntQ1iKVAxYFRw7PE8nVEZ2pwCbLPGdimsXbaPF7vYZYmi54A/gfneY7JSdCpwOyHYscC/QJOOLSOcA36NKg+iPIw6rNBM2Ka2bnqLBycAO1hjdfNgW2QzspbpDNj0EZintzSv6wdojdVUom9natIYAzRmXjbmyWakSgGbnigsnJdzepQngqmzXGXUd6wXam2y8aTUGOUAm/4DVnvHZmgpsDsG8G719SvF1bJRUuUCm84Au7zMkfWMl6sl6uPs5jXmmXIH6CxLRMkqu+Weh94BPwJvSvTrAzwCftCxhcFpq8AqMR4W8OXIFqk/AxPUv0lJfl/Q114gP4yGAT092BtxFrxxgL8Ay4D7OrYa4LciwKOBNRHrxKye0pdKjVcSw74eBSuV4RHXtUW0W9+HcQzHBUaVlFPUflxU+4eI9pKqBriUDqm+db9nSQwaJ4bLldUDOzyn9G904KHAxKRtpBkSpsQ3ZNL0sG1EW9r6quNw2R5Lab90vbX67ZXUS5cUcJTnZmjqtjQ2KAlD1QB/9v4PVAETbgnk5OWeSYQDVQKf9WayjKbnO9oxT03VAO8HrgZbAubpS1pU2tLHKrh/VOtGTdMVqdqQmAvs1Eo37z32LarGWrXXMAV4WW9gBGlL8sn2DS1YRo3U57TNScUvCWYJAxsDHPXarKy00vMgcD6pD5ZJ5mELkU3AQuC15+2stk/7JmEkjYnDlu+jtL/rpuZwRn0Rd/C0Zrrn+m69UauK71ulkt2EbU7HUtrFzxF9BXLpzzZLtusDZuUCvgHvMdO9Y7xsIwAAAABJRU5ErkJggg==);background-size:auto 1.3125rem;background-position:top .5rem right .75rem;background-repeat:no-repeat;margin-bottom:.625rem;padding-left:.875rem}.text{overflow-y:scroll;height:100%}.listText{width:100%;position:relative;float:left;font-size:.875rem;font-weight:600;padding-left:.625rem;padding-right:.625rem;margin-bottom:.125rem;color:var(--primary);display:flex;flex-direction:row;align-items:center;gap:.3125rem}.listText a{color:var(--primary);display:flex;flex-direction:row;align-items:center}.listText a:hover .preview-item-icon{text-decoration:underline}.listText .icon-clear{margin-top:.125rem}.listText .icon-clear:hover{color:var(--background)}::-webkit-scrollbar-thumb{background-color:var(--background)!important}.clickable{color:var(--primary);cursor:pointer}.clickable:hover,.clickable:focus{filter:brightness(90%)}.clickable:active{color:var(--icon);transform:translateY(.0625rem)}.clickable .preview-name:hover,.clickable .preview-name:focus{text-decoration:underline}.clickable .preview-name:active{text-decoration:underline}.preview-name{white-space:pre}.preview-name.preview-placeholder{font-style:italic}.preview-item-icon{margin-left:.4375rem;font-family:zac!important}.preview-more-results{margin-top:.3125rem}.spinner-container{position:absolute;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.spinner-container .spinner{display:inline-block;width:2rem;height:2rem;border-radius:50%;background:transparent;border-top:.3125rem solid var(--tableText);border-right:.3125rem solid var(--tableText);border-bottom:.3125rem solid transparent;border-left:.3125rem solid transparent;animation:loading .5s infinite linear;opacity:.7}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] }); }
12732
12753
  }
12733
12754
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PreviewListComponent, decorators: [{
12734
12755
  type: Component,
12735
- args: [{ selector: 'lib-preview-list', template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div *ngIf=\"previewItems.length <= 0\" class=\"listText\">\n <span class=\"preview-name preview-placeholder\">no items to display...</span>\n </div>\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item.name || item }}</span>\n <a *ngIf=\"item.href\" [href]=\"'./' + item.href\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0rem}.listBox{background-color:var(--stroke);padding:.625rem;border-radius:var(--inputBorderRadius);height:100%;min-height:3.75rem}.listBox input{height:2.5rem;border-radius:1.6875rem;font-size:.875rem;font-weight:600;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAYAAABTTPsKAAAD4klEQVRYhc2ZyYsUSRSHvypLbRfGDfWgzngYFRR3EUQPOm5oOyMuKIoo4kk9iAriQfAPcAMvKuJBPAyiXmbAwWVUFGEYmMHlIi24ogd3cW3trpYnv4CooLKrKiuzqn5QUBmZEe/Lly9fvIjMPH36CmA4cABYAHSnsdQK/AVsBR4Y8E/ATaA30KXBYJ3agffA+Cywt8FhEZsx7jUPf/bC4BNwuc5woWYBPdTWmgti9hSwrv6MBToOrFVD92xwsqOOYFEqYAqBGzGOC5gshv07aANuNZCnM8A4IOcacsEFdjyp9lzly0KipZEBA7VYSKwEfpf7nTqU4uqpHkWYVlkInAR+ATZ4AZ4HmoErdQKeCVz0eGymO2asrpawE38D0xXHdjcfFM93aww7Avgf6CUPWyK4Dsw2cJfW7A4WA4/1P6NHcgHoV0PYfrLpwqFdTIv1vyAPvwXmyLMd8voQ4A+gaw1gu8rWENl2T3mO2AiBTfeARYphFB7TgMM1AD4sWy7V5sVyz78oBDZd0wvoZHe7HtiWIuw22fBntQ1iKVAxYFRw7PE8nVEZ2pwCbLPGdimsXbaPF7vYZYmi54A/gfneY7JSdCpwOyHYscC/QJOOLSOcA36NKg+iPIw6rNBM2Ka2bnqLBycAO1hjdfNgW2QzspbpDNj0EZintzSv6wdojdVUom9natIYAzRmXjbmyWakSgGbnigsnJdzepQngqmzXGXUd6wXam2y8aTUGOUAm/4DVnvHZmgpsDsG8G719SvF1bJRUuUCm84Au7zMkfWMl6sl6uPs5jXmmXIH6CxLRMkqu+Weh94BPwJvSvTrAzwCftCxhcFpq8AqMR4W8OXIFqk/AxPUv0lJfl/Q114gP4yGAT092BtxFrxxgL8Ay4D7OrYa4LciwKOBNRHrxKye0pdKjVcSw74eBSuV4RHXtUW0W9+HcQzHBUaVlFPUflxU+4eI9pKqBriUDqm+db9nSQwaJ4bLldUDOzyn9G904KHAxKRtpBkSpsQ3ZNL0sG1EW9r6quNw2R5Lab90vbX67ZXUS5cUcJTnZmjqtjQ2KAlD1QB/9v4PVAETbgnk5OWeSYQDVQKf9WayjKbnO9oxT03VAO8HrgZbAubpS1pU2tLHKrh/VOtGTdMVqdqQmAvs1Eo37z32LarGWrXXMAV4WW9gBGlL8sn2DS1YRo3U57TNScUvCWYJAxsDHPXarKy00vMgcD6pD5ZJ5mELkU3AQuC15+2stk/7JmEkjYnDlu+jtL/rpuZwRn0Rd/C0Zrrn+m69UauK71ulkt2EbU7HUtrFzxF9BXLpzzZLtusDZuUCvgHvMdO9Y7xsIwAAAABJRU5ErkJggg==);background-size:auto 1.3125rem;background-position:top .5rem right .75rem;background-repeat:no-repeat;margin-bottom:.625rem;padding-left:.875rem}.text{overflow-y:scroll;height:100%}.listText{width:100%;position:relative;float:left;font-size:.875rem;font-weight:600;padding-left:.625rem;padding-right:.625rem;margin-bottom:.125rem;color:var(--primary);display:flex;flex-direction:row;align-items:center;gap:.3125rem}.listText a{color:var(--primary);display:flex;flex-direction:row;align-items:center}.listText a:hover .preview-item-icon{text-decoration:underline}.listText .icon-clear{margin-top:.125rem}.listText .icon-clear:hover{color:var(--background)}::-webkit-scrollbar-thumb{background-color:var(--background)!important}.clickable{color:var(--primary);cursor:pointer}.clickable:hover,.clickable:focus{filter:brightness(90%)}.clickable:active{color:var(--icon);transform:translateY(.0625rem)}.clickable .preview-name:hover,.clickable .preview-name:focus{text-decoration:underline}.clickable .preview-name:active{text-decoration:underline}.preview-name{white-space:pre}.preview-name.preview-placeholder{font-style:italic}.preview-item-icon{margin-left:.4375rem;font-family:zac!important}.preview-more-results{margin-top:.3125rem}.spinner-container{position:absolute;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.spinner-container .spinner{display:inline-block;width:2rem;height:2rem;border-radius:50%;background:transparent;border-top:.3125rem solid var(--tableText);border-right:.3125rem solid var(--tableText);border-bottom:.3125rem solid transparent;border-left:.3125rem solid transparent;animation:loading .5s infinite linear;opacity:.7}\n"] }]
12756
+ args: [{ selector: 'lib-preview-list', template: "<div class=\"listBox row\">\n <input *ngIf=\"showfilter\" (keyup)=\"onKeydownEvent()\" [(ngModel)]=\"filterFor\" placeholder=\"Type to Filter\"/>\n <div class=\"text row\">\n <div *ngIf=\"previewItems.length <= 0\" class=\"listText\">\n <span class=\"preview-name preview-placeholder\">no items to display...</span>\n </div>\n <div (click)=\"selected(item)\" *ngFor=\"let item of previewItems\" [ngClass]=\"{ clickable: clickable }\" class=\"listText\">\n <div *ngIf=\"allowRemove\" class=\"icon-clear\" (click)=\"remove(item)\"></div>\n <span *ngIf=\"!item.href\" class=\"preview-name\" matTooltip=\"{{tooltip}}\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">{{ item.name || item }}</span>\n <a *ngIf=\"item.href\" [href]=\"getHrefVal(item.href)\" (click)=\"linkClicked($event, item)\" class=\"{{item.linkClass ? item.linkClass : ''}}\" matTooltip=\"{{tooltip}}\" matTooltipShowDelay=\"1000\" matTooltipPosition=\"below\">\n <span *ngIf=\"item.name\" class=\"preview-name\">{{ item.name }}<div *ngIf=\"item.iconClass\" class=\"preview-item-icon {{item.iconClass}}\" (click)=\"remove(item)\"></div></span>\n </a>\n </div>\n </div>\n</div>\n<div *ngIf=\"isLoading\" class=\"spinner-container\">\n <span class=\"spinner\"></span>\n</div>\n", styles: [":host{display:flex;flex-direction:column;height:100%;position:relative}.counter{background-color:#4c5566;color:var(--white);position:absolute;right:0rem}.listBox{background-color:var(--stroke);padding:.625rem;border-radius:var(--inputBorderRadius);height:100%;min-height:3.75rem}.listBox input{height:2.5rem;border-radius:1.6875rem;font-size:.875rem;font-weight:600;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAuCAYAAABTTPsKAAAD4klEQVRYhc2ZyYsUSRSHvypLbRfGDfWgzngYFRR3EUQPOm5oOyMuKIoo4kk9iAriQfAPcAMvKuJBPAyiXmbAwWVUFGEYmMHlIi24ogd3cW3trpYnv4CooLKrKiuzqn5QUBmZEe/Lly9fvIjMPH36CmA4cABYAHSnsdQK/AVsBR4Y8E/ATaA30KXBYJ3agffA+Cywt8FhEZsx7jUPf/bC4BNwuc5woWYBPdTWmgti9hSwrv6MBToOrFVD92xwsqOOYFEqYAqBGzGOC5gshv07aANuNZCnM8A4IOcacsEFdjyp9lzly0KipZEBA7VYSKwEfpf7nTqU4uqpHkWYVlkInAR+ATZ4AZ4HmoErdQKeCVz0eGymO2asrpawE38D0xXHdjcfFM93aww7Avgf6CUPWyK4Dsw2cJfW7A4WA4/1P6NHcgHoV0PYfrLpwqFdTIv1vyAPvwXmyLMd8voQ4A+gaw1gu8rWENl2T3mO2AiBTfeARYphFB7TgMM1AD4sWy7V5sVyz78oBDZd0wvoZHe7HtiWIuw22fBntQ1iKVAxYFRw7PE8nVEZ2pwCbLPGdimsXbaPF7vYZYmi54A/gfneY7JSdCpwOyHYscC/QJOOLSOcA36NKg+iPIw6rNBM2Ka2bnqLBycAO1hjdfNgW2QzspbpDNj0EZintzSv6wdojdVUom9natIYAzRmXjbmyWakSgGbnigsnJdzepQngqmzXGXUd6wXam2y8aTUGOUAm/4DVnvHZmgpsDsG8G719SvF1bJRUuUCm84Au7zMkfWMl6sl6uPs5jXmmXIH6CxLRMkqu+Weh94BPwJvSvTrAzwCftCxhcFpq8AqMR4W8OXIFqk/AxPUv0lJfl/Q114gP4yGAT092BtxFrxxgL8Ay4D7OrYa4LciwKOBNRHrxKye0pdKjVcSw74eBSuV4RHXtUW0W9+HcQzHBUaVlFPUflxU+4eI9pKqBriUDqm+db9nSQwaJ4bLldUDOzyn9G904KHAxKRtpBkSpsQ3ZNL0sG1EW9r6quNw2R5Lab90vbX67ZXUS5cUcJTnZmjqtjQ2KAlD1QB/9v4PVAETbgnk5OWeSYQDVQKf9WayjKbnO9oxT03VAO8HrgZbAubpS1pU2tLHKrh/VOtGTdMVqdqQmAvs1Eo37z32LarGWrXXMAV4WW9gBGlL8sn2DS1YRo3U57TNScUvCWYJAxsDHPXarKy00vMgcD6pD5ZJ5mELkU3AQuC15+2stk/7JmEkjYnDlu+jtL/rpuZwRn0Rd/C0Zrrn+m69UauK71ulkt2EbU7HUtrFzxF9BXLpzzZLtusDZuUCvgHvMdO9Y7xsIwAAAABJRU5ErkJggg==);background-size:auto 1.3125rem;background-position:top .5rem right .75rem;background-repeat:no-repeat;margin-bottom:.625rem;padding-left:.875rem}.text{overflow-y:scroll;height:100%}.listText{width:100%;position:relative;float:left;font-size:.875rem;font-weight:600;padding-left:.625rem;padding-right:.625rem;margin-bottom:.125rem;color:var(--primary);display:flex;flex-direction:row;align-items:center;gap:.3125rem}.listText a{color:var(--primary);display:flex;flex-direction:row;align-items:center}.listText a:hover .preview-item-icon{text-decoration:underline}.listText .icon-clear{margin-top:.125rem}.listText .icon-clear:hover{color:var(--background)}::-webkit-scrollbar-thumb{background-color:var(--background)!important}.clickable{color:var(--primary);cursor:pointer}.clickable:hover,.clickable:focus{filter:brightness(90%)}.clickable:active{color:var(--icon);transform:translateY(.0625rem)}.clickable .preview-name:hover,.clickable .preview-name:focus{text-decoration:underline}.clickable .preview-name:active{text-decoration:underline}.preview-name{white-space:pre}.preview-name.preview-placeholder{font-style:italic}.preview-item-icon{margin-left:.4375rem;font-family:zac!important}.preview-more-results{margin-top:.3125rem}.spinner-container{position:absolute;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.spinner-container .spinner{display:inline-block;width:2rem;height:2rem;border-radius:50%;background:transparent;border-top:.3125rem solid var(--tableText);border-right:.3125rem solid var(--tableText);border-bottom:.3125rem solid transparent;border-left:.3125rem solid transparent;animation:loading .5s infinite linear;opacity:.7}\n"] }]
12736
12757
  }], ctorParameters: function () { return [{ type: i4.Router }]; }, propDecorators: { label: [{
12737
12758
  type: Input
12738
12759
  }], clickable: [{
@@ -17500,7 +17521,11 @@ class ConfigEditorComponent {
17500
17521
  props = item?.component?.instance?.getProperties();
17501
17522
  }
17502
17523
  else if (item?.component?.instance) {
17503
- props = [{ key: item.key, value: item.component.instance.fieldValue }];
17524
+ let val = item.component.instance.fieldValue;
17525
+ if (Array.isArray(val) && val[0] && typeof val[0] === 'string') {
17526
+ val = val?.map(item => item.trim());
17527
+ }
17528
+ props = [{ key: item.key, value: val }];
17504
17529
  }
17505
17530
  props.forEach((prop) => {
17506
17531
  data[prop.key] = prop.value;
@@ -27707,6 +27732,132 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
27707
27732
  args: [SETTINGS_SERVICE]
27708
27733
  }] }]; } });
27709
27734
 
27735
+ class ProgressMeterStep {
27736
+ constructor() {
27737
+ this.index = 0;
27738
+ this.label = '';
27739
+ this.state = '';
27740
+ }
27741
+ }
27742
+ ;
27743
+ class ProgressMeterComponent {
27744
+ constructor() {
27745
+ this.errors = {};
27746
+ this.title = '';
27747
+ this.steps = [];
27748
+ this.currentStepIndex = 0;
27749
+ this.currentStepChange = new EventEmitter;
27750
+ }
27751
+ getProgressBarStyle(index) {
27752
+ const step = this.steps[index];
27753
+ const nextStep = this.steps[index + 1];
27754
+ if (step?.state === 'COMPLETE' && nextStep?.state === 'COMPLETE') {
27755
+ return true;
27756
+ }
27757
+ return false;
27758
+ }
27759
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ProgressMeterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27760
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ProgressMeterComponent, selector: "lib-progress-meter", inputs: { title: "title", steps: "steps", currentStepIndex: "currentStepIndex" }, outputs: { currentStepChange: "currentStepChange" }, ngImport: i0, template: "<div class=\"progress-meter-wrapper\">\n <div class=\"progress-meter-container\">\n <div\n *ngFor=\"let step of steps; let index = index\"\n [ngClass]=\"{ 'last-step': index === steps.length - 1 }\"\n class=\"progress-meter-step-container\"\n >\n <div class=\"progress-step-item\" [ngClass]=\"{'in-progress': currentStepIndex === step.index}\">\n <div class=\"progress-step-ball\" [ngClass]=\"{'progress-step-complete': step.state === 'COMPLETE', 'step-in-progress': step.state === 'IN_PROGRESS'}\">\n </div>\n <div *ngIf=\"step.state === 'IN_PROGRESS'\" class=\"spinner\"></div>\n <div class=\"progress-step-label\" [ngClass]=\"{'step-in-progress': step.state === 'IN_PROGRESS'}\">{{ step.label }}</div>\n </div>\n <div *ngIf=\"index !== steps.length - 1\">\n <div class=\"progress-step-bar\"\n [ngClass]=\"{\n 'progress-step-complete': getProgressBarStyle(index),\n 'step-in-progress': currentStepIndex === index + 1\n }\"\n >\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".progress-meter-wrapper{display:flex;align-items:flex-start;font-size:1rem;gap:1rem;width:100%;height:6rem}.progress-meter-wrapper .progress-meter-container{display:flex;flex-direction:row;align-items:center;justify-content:center;position:relative;width:100%;height:3.4375rem;z-index:999999999}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container{display:flex;flex-direction:row;align-items:center;justify-content:center;width:18rem;height:100%}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container.last-step{width:1.875rem}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item{display:flex;flex-direction:row;align-items:center;justify-content:center;height:100%;width:1.875rem}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-ball{width:1.875rem;height:1.875rem;border-radius:1.875rem;border:none;background-size:45%;background-position:center center;background-color:var(--placeholder);opacity:.35}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-ball.progress-step-complete{background-color:var(--green);background-image:url(/assets/images/Icon_Check.png);border:none;opacity:1}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-ball.step-in-progress{opacity:.35}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .spinner{display:inline-block;width:2rem;height:2rem;border-radius:50%;background:transparent;border-top:.25rem solid var(--stroke);border-right:.25rem solid var(--stroke);border-bottom:.25rem solid transparent;border-left:.25rem solid transparent;animation:loading .5s infinite linear;margin-left:-.125rem;margin-top:-.125rem;position:absolute}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-label{height:1.25rem;font-size:.9375rem;margin-top:.3125rem;display:flex;align-items:center;justify-content:center;position:absolute;top:3.4375rem;color:var(--tableText);text-align:center;width:9.5rem;font-weight:600;opacity:.5}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-label.step-in-progress{opacity:1}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-bar{background-color:var(--placeholder);border:none;width:16.2rem;height:.5rem;opacity:.35}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-bar.progress-step-complete{background-color:var(--green);opacity:1}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-bar.step-in-progress{opacity:1}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
27761
+ }
27762
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ProgressMeterComponent, decorators: [{
27763
+ type: Component,
27764
+ args: [{ selector: 'lib-progress-meter', template: "<div class=\"progress-meter-wrapper\">\n <div class=\"progress-meter-container\">\n <div\n *ngFor=\"let step of steps; let index = index\"\n [ngClass]=\"{ 'last-step': index === steps.length - 1 }\"\n class=\"progress-meter-step-container\"\n >\n <div class=\"progress-step-item\" [ngClass]=\"{'in-progress': currentStepIndex === step.index}\">\n <div class=\"progress-step-ball\" [ngClass]=\"{'progress-step-complete': step.state === 'COMPLETE', 'step-in-progress': step.state === 'IN_PROGRESS'}\">\n </div>\n <div *ngIf=\"step.state === 'IN_PROGRESS'\" class=\"spinner\"></div>\n <div class=\"progress-step-label\" [ngClass]=\"{'step-in-progress': step.state === 'IN_PROGRESS'}\">{{ step.label }}</div>\n </div>\n <div *ngIf=\"index !== steps.length - 1\">\n <div class=\"progress-step-bar\"\n [ngClass]=\"{\n 'progress-step-complete': getProgressBarStyle(index),\n 'step-in-progress': currentStepIndex === index + 1\n }\"\n >\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".progress-meter-wrapper{display:flex;align-items:flex-start;font-size:1rem;gap:1rem;width:100%;height:6rem}.progress-meter-wrapper .progress-meter-container{display:flex;flex-direction:row;align-items:center;justify-content:center;position:relative;width:100%;height:3.4375rem;z-index:999999999}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container{display:flex;flex-direction:row;align-items:center;justify-content:center;width:18rem;height:100%}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container.last-step{width:1.875rem}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item{display:flex;flex-direction:row;align-items:center;justify-content:center;height:100%;width:1.875rem}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-ball{width:1.875rem;height:1.875rem;border-radius:1.875rem;border:none;background-size:45%;background-position:center center;background-color:var(--placeholder);opacity:.35}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-ball.progress-step-complete{background-color:var(--green);background-image:url(/assets/images/Icon_Check.png);border:none;opacity:1}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-ball.step-in-progress{opacity:.35}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .spinner{display:inline-block;width:2rem;height:2rem;border-radius:50%;background:transparent;border-top:.25rem solid var(--stroke);border-right:.25rem solid var(--stroke);border-bottom:.25rem solid transparent;border-left:.25rem solid transparent;animation:loading .5s infinite linear;margin-left:-.125rem;margin-top:-.125rem;position:absolute}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-label{height:1.25rem;font-size:.9375rem;margin-top:.3125rem;display:flex;align-items:center;justify-content:center;position:absolute;top:3.4375rem;color:var(--tableText);text-align:center;width:9.5rem;font-weight:600;opacity:.5}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-item .progress-step-label.step-in-progress{opacity:1}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-bar{background-color:var(--placeholder);border:none;width:16.2rem;height:.5rem;opacity:.35}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-bar.progress-step-complete{background-color:var(--green);opacity:1}.progress-meter-wrapper .progress-meter-container .progress-meter-step-container .progress-step-bar.step-in-progress{opacity:1}\n"] }]
27765
+ }], ctorParameters: function () { return []; }, propDecorators: { title: [{
27766
+ type: Input
27767
+ }], steps: [{
27768
+ type: Input
27769
+ }], currentStepIndex: [{
27770
+ type: Input
27771
+ }], currentStepChange: [{
27772
+ type: Output
27773
+ }] } });
27774
+
27775
+ class ProgressWizardStep {
27776
+ constructor() {
27777
+ this.index = 0;
27778
+ this.label = '';
27779
+ }
27780
+ }
27781
+ ;
27782
+ class ProgressWizardComponent {
27783
+ constructor() {
27784
+ this.errors = {};
27785
+ this.title = '';
27786
+ this.steps = [];
27787
+ this.backButtonLabel = 'Back';
27788
+ this.nextButtonLabel = 'Next';
27789
+ this.nextButtonDisabled = false;
27790
+ this.titleImageSrc = '';
27791
+ this.showCloseButton = true;
27792
+ this.currentStepIndex = 0;
27793
+ this.currentStepIndexChange = new EventEmitter;
27794
+ this.close = new EventEmitter;
27795
+ this.done = new EventEmitter;
27796
+ this.stepChanged = new EventEmitter;
27797
+ }
27798
+ cancel() {
27799
+ this.close.emit();
27800
+ }
27801
+ confirm() {
27802
+ this.close.emit();
27803
+ }
27804
+ nextStep() {
27805
+ if (this.currentStepIndex >= (this.steps.length - 1)) {
27806
+ this.done.emit();
27807
+ return;
27808
+ }
27809
+ this.currentStepIndex++;
27810
+ this.currentStepIndexChange.emit(this.currentStepIndex);
27811
+ this.stepChanged.emit(this.steps[this.currentStepIndex]);
27812
+ }
27813
+ goToStep(stepNum) {
27814
+ this.currentStepIndex = stepNum.index;
27815
+ this.currentStepIndexChange.emit(this.currentStepIndex);
27816
+ this.stepChanged.emit(this.steps[this.currentStepIndex]);
27817
+ }
27818
+ prevStep() {
27819
+ this.currentStepIndex--;
27820
+ this.currentStepIndexChange.emit(this.currentStepIndex);
27821
+ this.stepChanged.emit(this.steps[this.currentStepIndex]);
27822
+ }
27823
+ get progressTrackHeight() {
27824
+ const heightfactor = 8.333;
27825
+ const trackNumber = ((this.steps ? this.steps.length : 1) - 1);
27826
+ const trackHeight = heightfactor * trackNumber;
27827
+ return trackHeight + 'rem';
27828
+ }
27829
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ProgressWizardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27830
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ProgressWizardComponent, selector: "lib-progress-wizard", inputs: { title: "title", steps: "steps", backButtonLabel: "backButtonLabel", nextButtonLabel: "nextButtonLabel", nextButtonDisabled: "nextButtonDisabled", titleImageSrc: "titleImageSrc", showCloseButton: "showCloseButton", currentStepIndex: "currentStepIndex" }, outputs: { currentStepIndexChange: "currentStepIndexChange", close: "close", done: "done", stepChanged: "stepChanged" }, ngImport: i0, template: "<div class=\"progress-wizard-wrapper\">\n <div class=\"progress-wizard-container\">\n <div *ngIf=\"showCloseButton\" (click)=\"cancel()\" class=\"close cancel\"></div>\n <div class=\"side-progress-bar\">\n <div class=\"progress-steps\">\n <div class=\"progress-track\" style=\"height: {{progressTrackHeight}}\"></div>\n <div *ngFor=\"let step of steps\" class=\"progress-step\" [ngClass]=\"{'step-active': step.index === currentStepIndex}\" (click)=\"goToStep(step)\">\n <div class=\"progress-step-number\">{{step.index}}</div>\n <div class=\"progress-step-number-background\"></div>\n <div class=\"progress-step-label\">{{step.label}}</div>\n </div>\n </div>\n </div>\n <div>\n <div class=\"center-content-container\">\n <div class=\"center-content\">\n <div class=\"header-title-container\" style=\"display: flex; flex-direction: row; gap: var(--gapSmall);align-items: center;\">\n <div class=\"header-title-image\" style=\"background-image: url({{titleImageSrc}});\"></div>\n <div class=\"header-title-container\">\n <div class=\"header-title\">{{title}}</div>\n </div>\n </div>\n <form name=\"form\" class=\"step-content-form\">\n <div class=\"step-content-wrapper\">\n <ng-content></ng-content>\n </div>\n <div class=\"buttons-container\">\n <div *ngIf=\"currentStepIndex === 0\">\n </div>\n <button *ngIf=\"currentStepIndex > 0\" name=\"action\" type=\"submit\" class=\"btn-primary\" (click)=\"prevStep()\">\n {{backButtonLabel}}\n </button>\n <button name=\"action\" type=\"submit\" class=\"btn-primary\" (click)=\"nextStep()\" [disabled]=\"nextButtonDisabled\">\n {{nextButtonLabel}}\n </button>\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".progress-wizard-wrapper{width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;box-shadow:-1px 1rem 1.5625rem #0003}.progress-wizard-wrapper .progress-wizard-container{width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;display:flex;flex-direction:row;position:relative}.progress-wizard-wrapper .progress-wizard-container .center-content-container{-webkit-backdrop-filter:saturate(180%) blur(1.25rem);backdrop-filter:saturate(180%) blur(1.25rem);background-color:#eceef2;padding:2.1875rem;border-radius:.5rem;box-shadow:0 0 1.5625rem #0003;display:flex;flex-direction:column;height:100%;max-width:52rem}.progress-wizard-wrapper .progress-wizard-container .center-content-container .center-content{display:flex;flex-direction:column;height:100%}.header-title{color:var(--primaryColor)!important;filter:brightness(var(--brightnessDark));opacity:1;font-family:Russo One,Arial,sans-serif;font-size:2.35rem!important;line-height:unset;font-weight:400!important;margin:0!important;text-align:center;height:100%}.header-title-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;overflow:visible}.step-content-container{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;margin-top:var(--marginXL);padding:0!important;width:100%}.step-content-container .step-label-text{text-transform:none;font-size:1.125rem;width:100%;margin-bottom:var(--marginSmall);font-weight:600}.step-content-container .step-label-text.list-instructions{font-size:1rem;font-weight:600}.header-title-image{background-image:url(/assets/svgs/zlan-logo.svg);background-size:4.25rem;height:4.25rem;width:4.25rem}.buttons-container{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-top:var(--marginXXL)}.buttons-container button{box-shadow:0 .1875rem .5625rem 0 var(--primaryColorOpaque)!important;color:#fff!important;line-height:2.5rem!important;height:3.125rem!important;border:none!important;vertical-align:middle!important;text-align:center!important;position:relative!important;z-index:1!important;display:inline-block!important;padding:0rem;margin-top:1.5625rem!important;transition:color .2s!important;font-size:.875rem!important;font-weight:600!important;font-family:Open Sans!important;text-transform:uppercase!important;border-radius:.5rem!important;min-width:10rem;background:var(--primaryColor)!important;cursor:pointer}.buttons-container button:hover{outline:0!important;box-shadow:0 .3125rem 1.25rem #0000000d!important}.buttons-container button:active{filter:brightness(95%)!important;box-shadow:none!important;transform:translateY(1px)!important}.buttons-container button.btn-primary{position:relative;width:10rem;margin-top:0!important}.buttons-container button.btn-primary:disabled{filter:grayscale(1);opacity:.5;pointer-events:none}.buttons-container .saving-button,.buttons-container .saving-button:hover{filter:grayscale(1)!important;opacity:.5!important}.side-progress-bar{display:flex;flex-direction:row;width:20rem;margin-right:-1rem;position:relative;border-top-left-radius:.5rem;border-bottom-left-radius:.5rem;background-color:#eceef2f4;align-items:flex-start}.side-progress-bar .progress-steps{display:flex;flex-direction:column;height:100%;width:100%;justify-content:flex-start;align-items:flex-start;gap:5.5rem;cursor:pointer;padding:var(--paddingXXL) 0}.side-progress-bar .progress-steps .progress-track{position:absolute;width:.175rem;background-color:var(--stroke);left:2.175rem;height:23rem;opacity:.4}.side-progress-bar .progress-steps .progress-step{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;width:100%;height:2.5rem;filter:grayscale(1)}.side-progress-bar .progress-steps .progress-step.step-active{filter:none}.side-progress-bar .progress-steps .progress-step.step-active .progress-step-number{opacity:1;box-shadow:1px 0 .8rem #0003}.side-progress-bar .progress-steps .progress-step.step-active .progress-step-label{opacity:1}.side-progress-bar .progress-steps .progress-step-number{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:600;background-color:var(--primary);border-style:solid;border-radius:2rem;border-color:#fff;color:var(--white);margin-left:1rem;border-width:.25rem;z-index:999999;opacity:.4}.side-progress-bar .progress-steps .progress-step-label{font-size:1.125rem;font-weight:600;margin-left:var(--marginSmall);opacity:.4}.side-progress-bar .progress-steps .progress-step-number-background{position:absolute;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:600;background-color:#eceef2;border-style:solid;border-radius:2rem;border-color:#fff;color:var(--white);margin-left:1rem;border-width:.25rem;z-index:999}.step-content-form{display:flex;flex-direction:column;background-color:transparent;font-family:Open Sans;height:100%}.step-content-form .step-content-wrapper{height:100%;display:flex;flex-direction:column;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1$4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] }); }
27831
+ }
27832
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ProgressWizardComponent, decorators: [{
27833
+ type: Component,
27834
+ args: [{ selector: 'lib-progress-wizard', template: "<div class=\"progress-wizard-wrapper\">\n <div class=\"progress-wizard-container\">\n <div *ngIf=\"showCloseButton\" (click)=\"cancel()\" class=\"close cancel\"></div>\n <div class=\"side-progress-bar\">\n <div class=\"progress-steps\">\n <div class=\"progress-track\" style=\"height: {{progressTrackHeight}}\"></div>\n <div *ngFor=\"let step of steps\" class=\"progress-step\" [ngClass]=\"{'step-active': step.index === currentStepIndex}\" (click)=\"goToStep(step)\">\n <div class=\"progress-step-number\">{{step.index}}</div>\n <div class=\"progress-step-number-background\"></div>\n <div class=\"progress-step-label\">{{step.label}}</div>\n </div>\n </div>\n </div>\n <div>\n <div class=\"center-content-container\">\n <div class=\"center-content\">\n <div class=\"header-title-container\" style=\"display: flex; flex-direction: row; gap: var(--gapSmall);align-items: center;\">\n <div class=\"header-title-image\" style=\"background-image: url({{titleImageSrc}});\"></div>\n <div class=\"header-title-container\">\n <div class=\"header-title\">{{title}}</div>\n </div>\n </div>\n <form name=\"form\" class=\"step-content-form\">\n <div class=\"step-content-wrapper\">\n <ng-content></ng-content>\n </div>\n <div class=\"buttons-container\">\n <div *ngIf=\"currentStepIndex === 0\">\n </div>\n <button *ngIf=\"currentStepIndex > 0\" name=\"action\" type=\"submit\" class=\"btn-primary\" (click)=\"prevStep()\">\n {{backButtonLabel}}\n </button>\n <button name=\"action\" type=\"submit\" class=\"btn-primary\" (click)=\"nextStep()\" [disabled]=\"nextButtonDisabled\">\n {{nextButtonLabel}}\n </button>\n </div>\n </form>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".progress-wizard-wrapper{width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;box-shadow:-1px 1rem 1.5625rem #0003}.progress-wizard-wrapper .progress-wizard-container{width:-moz-fit-content;width:fit-content;height:-moz-fit-content;height:fit-content;display:flex;flex-direction:row;position:relative}.progress-wizard-wrapper .progress-wizard-container .center-content-container{-webkit-backdrop-filter:saturate(180%) blur(1.25rem);backdrop-filter:saturate(180%) blur(1.25rem);background-color:#eceef2;padding:2.1875rem;border-radius:.5rem;box-shadow:0 0 1.5625rem #0003;display:flex;flex-direction:column;height:100%;max-width:52rem}.progress-wizard-wrapper .progress-wizard-container .center-content-container .center-content{display:flex;flex-direction:column;height:100%}.header-title{color:var(--primaryColor)!important;filter:brightness(var(--brightnessDark));opacity:1;font-family:Russo One,Arial,sans-serif;font-size:2.35rem!important;line-height:unset;font-weight:400!important;margin:0!important;text-align:center;height:100%}.header-title-container{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;overflow:visible}.step-content-container{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;margin-top:var(--marginXL);padding:0!important;width:100%}.step-content-container .step-label-text{text-transform:none;font-size:1.125rem;width:100%;margin-bottom:var(--marginSmall);font-weight:600}.step-content-container .step-label-text.list-instructions{font-size:1rem;font-weight:600}.header-title-image{background-image:url(/assets/svgs/zlan-logo.svg);background-size:4.25rem;height:4.25rem;width:4.25rem}.buttons-container{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-top:var(--marginXXL)}.buttons-container button{box-shadow:0 .1875rem .5625rem 0 var(--primaryColorOpaque)!important;color:#fff!important;line-height:2.5rem!important;height:3.125rem!important;border:none!important;vertical-align:middle!important;text-align:center!important;position:relative!important;z-index:1!important;display:inline-block!important;padding:0rem;margin-top:1.5625rem!important;transition:color .2s!important;font-size:.875rem!important;font-weight:600!important;font-family:Open Sans!important;text-transform:uppercase!important;border-radius:.5rem!important;min-width:10rem;background:var(--primaryColor)!important;cursor:pointer}.buttons-container button:hover{outline:0!important;box-shadow:0 .3125rem 1.25rem #0000000d!important}.buttons-container button:active{filter:brightness(95%)!important;box-shadow:none!important;transform:translateY(1px)!important}.buttons-container button.btn-primary{position:relative;width:10rem;margin-top:0!important}.buttons-container button.btn-primary:disabled{filter:grayscale(1);opacity:.5;pointer-events:none}.buttons-container .saving-button,.buttons-container .saving-button:hover{filter:grayscale(1)!important;opacity:.5!important}.side-progress-bar{display:flex;flex-direction:row;width:20rem;margin-right:-1rem;position:relative;border-top-left-radius:.5rem;border-bottom-left-radius:.5rem;background-color:#eceef2f4;align-items:flex-start}.side-progress-bar .progress-steps{display:flex;flex-direction:column;height:100%;width:100%;justify-content:flex-start;align-items:flex-start;gap:5.5rem;cursor:pointer;padding:var(--paddingXXL) 0}.side-progress-bar .progress-steps .progress-track{position:absolute;width:.175rem;background-color:var(--stroke);left:2.175rem;height:23rem;opacity:.4}.side-progress-bar .progress-steps .progress-step{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;width:100%;height:2.5rem;filter:grayscale(1)}.side-progress-bar .progress-steps .progress-step.step-active{filter:none}.side-progress-bar .progress-steps .progress-step.step-active .progress-step-number{opacity:1;box-shadow:1px 0 .8rem #0003}.side-progress-bar .progress-steps .progress-step.step-active .progress-step-label{opacity:1}.side-progress-bar .progress-steps .progress-step-number{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:600;background-color:var(--primary);border-style:solid;border-radius:2rem;border-color:#fff;color:var(--white);margin-left:1rem;border-width:.25rem;z-index:999999;opacity:.4}.side-progress-bar .progress-steps .progress-step-label{font-size:1.125rem;font-weight:600;margin-left:var(--marginSmall);opacity:.4}.side-progress-bar .progress-steps .progress-step-number-background{position:absolute;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:600;background-color:#eceef2;border-style:solid;border-radius:2rem;border-color:#fff;color:var(--white);margin-left:1rem;border-width:.25rem;z-index:999}.step-content-form{display:flex;flex-direction:column;background-color:transparent;font-family:Open Sans;height:100%}.step-content-form .step-content-wrapper{height:100%;display:flex;flex-direction:column;justify-content:center}\n"] }]
27835
+ }], ctorParameters: function () { return []; }, propDecorators: { title: [{
27836
+ type: Input
27837
+ }], steps: [{
27838
+ type: Input
27839
+ }], backButtonLabel: [{
27840
+ type: Input
27841
+ }], nextButtonLabel: [{
27842
+ type: Input
27843
+ }], nextButtonDisabled: [{
27844
+ type: Input
27845
+ }], titleImageSrc: [{
27846
+ type: Input
27847
+ }], showCloseButton: [{
27848
+ type: Input
27849
+ }], currentStepIndex: [{
27850
+ type: Input
27851
+ }], currentStepIndexChange: [{
27852
+ type: Output
27853
+ }], close: [{
27854
+ type: Output
27855
+ }], done: [{
27856
+ type: Output
27857
+ }], stepChanged: [{
27858
+ type: Output
27859
+ }] } });
27860
+
27710
27861
  /*
27711
27862
  Copyright NetFoundry Inc.
27712
27863
 
@@ -27819,7 +27970,9 @@ class OpenZitiConsoleLibModule {
27819
27970
  SessionFormComponent,
27820
27971
  APISessionsPageComponent,
27821
27972
  APISessionFormComponent,
27822
- CallbackComponent], imports: [CommonModule,
27973
+ CallbackComponent,
27974
+ ProgressMeterComponent,
27975
+ ProgressWizardComponent], imports: [CommonModule,
27823
27976
  FormsModule,
27824
27977
  MatDialogModule,
27825
27978
  MatRadioModule,
@@ -27884,7 +28037,11 @@ class OpenZitiConsoleLibModule {
27884
28037
  APISessionFormComponent,
27885
28038
  CallbackComponent,
27886
28039
  FormHeaderComponent,
27887
- JsonViewComponent] }); }
28040
+ JsonViewComponent,
28041
+ PreviewListComponent,
28042
+ TagSelectorComponent,
28043
+ ProgressMeterComponent,
28044
+ ProgressWizardComponent] }); }
27888
28045
  static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OpenZitiConsoleLibModule, providers: [
27889
28046
  { provide: SHAREDZ_EXTENSION, useClass: ExtensionsNoopService },
27890
28047
  { provide: ZITI_NAVIGATOR, useValue: {} },
@@ -28008,7 +28165,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
28008
28165
  SessionFormComponent,
28009
28166
  APISessionsPageComponent,
28010
28167
  APISessionFormComponent,
28011
- CallbackComponent
28168
+ CallbackComponent,
28169
+ ProgressMeterComponent,
28170
+ ProgressWizardComponent
28012
28171
  ],
28013
28172
  imports: [
28014
28173
  CommonModule,
@@ -28081,7 +28240,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
28081
28240
  APISessionFormComponent,
28082
28241
  CallbackComponent,
28083
28242
  FormHeaderComponent,
28084
- JsonViewComponent
28243
+ JsonViewComponent,
28244
+ PreviewListComponent,
28245
+ TagSelectorComponent,
28246
+ ProgressMeterComponent,
28247
+ ProgressWizardComponent
28085
28248
  ],
28086
28249
  providers: [
28087
28250
  { provide: SHAREDZ_EXTENSION, useClass: ExtensionsNoopService },
@@ -28097,7 +28260,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
28097
28260
  }] });
28098
28261
 
28099
28262
  const VERSION = {
28100
- "version": "3.12.4"
28263
+ "version": "3.12.6"
28101
28264
  };
28102
28265
 
28103
28266
  /*
@@ -29797,5 +29960,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
29797
29960
  * Generated bundle index. Do not edit.
29798
29961
  */
29799
29962
 
29800
- export { APISessionFormComponent, APISessionsPageComponent, ApiSessionsPageService, AuthPoliciesPageComponent, AuthPoliciesPageService, AuthPolicyFormComponent, AuthPolicyFormService, AuthService, BooleanToggleInputComponent, COMPONENTS, CallbackComponent, CardListComponent, CertificateAuthoritiesPageComponent, CertificateAuthoritiesPageService, CertificateAuthorityFormComponent, CertificateAuthorityFormService, CheckboxListInputComponent, ConfigTypeFormComponent, ConfigTypesPageComponent, ConfigurationFormComponent, ConfigurationService, ConfigurationsPageComponent, CsvDownloadService, DEACTIVATE_GUARD, DataTableFilterService, DeactivateGuardService, EDGE_ROUTER_EXTENSION_SERVICE, EDGE_ROUTER_POLICY_EXTENSION_SERVICE, EdgeRouter, EdgeRouterFormComponent, EdgeRouterFormService, EdgeRouterPoliciesPageComponent, EdgeRouterPoliciesPageService, EdgeRouterPolicyFormComponent, EdgeRouterPolicyFormService, EdgeRoutersPageComponent, EdgeRoutersPageService, Entity, ExtendableComponent, ExtensionsNoopService, FormFieldContainerComponent, FormFieldToggleComponent, FormHeaderComponent, GrowlerComponent, GrowlerModel, GrowlerModule, GrowlerService, IDENTITY_EXTENSION_SERVICE, IdentitiesPageComponent, IdentitiesPageService, Identity$1 as Identity, IdentityFormComponent, IdentityFormService, IdentityServicePathComponent, JsonViewComponent, JwtSignerFormComponent, JwtSignerFormService, JwtSignersPageComponent, JwtSignersPageService, KEY_CODES, ListPageComponent, ListPageServiceClass, LoadingIndicatorComponent, LoggerService, LoginDialogComponent, LoginServiceClass, NetworkVisualizerComponent, NodeDataService, NodeWrapperService, NoopLoginService, NoopTabInterceptorService, NumberInputComponent, ObjectComponent, OpenZitiConsoleLibModule, PasswordInputComponent, PostureCheckFormComponent, PostureChecksPageComponent, PostureChecksPageService, ProjectableForm, ProtocolAddressPortInputComponent, ResetEnrollmentService, SERVICE_EDGE_ROUTER_POLICY_EXTENSION_SERVICE, SERVICE_EXTENSION_SERVICE, SERVICE_POLICY_EXTENSION_SERVICE, SETTINGS_SERVICE, SHAREDZ_EXTENSION, SelectorInputComponent, ServiceEdgeRouterPoliciesPageComponent, ServiceEdgeRouterPoliciesPageService, ServiceEdgeRouterPolicyFormComponent, ServiceEdgeRouterPolicyFormService, ServiceFormComponent, ServiceFormService, ServicePoliciesPageComponent, ServicePoliciesPageService, ServicePolicyFormComponent, ServicePolicyFormService, ServicesPageComponent, ServicesPageService, Session, SessionFormComponent, SessionsPageComponent, SessionsPageService, SettingsService, SettingsServiceClass, SideBannerComponent, SideModalComponent, SideNavbarComponent, SideToolbarComponent, SimpleServiceComponent, StringInputComponent, TabNameService, TerminatorFormComponent, TerminatorFormService, TerminatorsPageComponent, TerminatorsPageService, TextListInputComponent, TransitRouterFormComponent, TransitRouterFormService, TransitRoutersPageComponent, TransitRoutersPageService, VERSION, ValidationService, VerifyCertificateComponent, VisualizerServiceClass, ZAC_LOGIN_SERVICE, ZAC_WRAPPER_SERVICE, ZITI_DATA_SERVICE, ZITI_DOMAIN_CONTROLLER, ZITI_NAVIGATOR, ZITI_TAB_OVERRIDES, ZITI_URLS, ZacRoutingModule, ZacWrapperComponent, ZacWrapperService, ZacWrapperServiceClass, ZitiControllerDataService, ZitiDataService, playerFactory };
29963
+ export { APISessionFormComponent, APISessionsPageComponent, ApiSessionsPageService, AuthPoliciesPageComponent, AuthPoliciesPageService, AuthPolicyFormComponent, AuthPolicyFormService, AuthService, BooleanToggleInputComponent, COMPONENTS, CallbackComponent, CardListComponent, CertificateAuthoritiesPageComponent, CertificateAuthoritiesPageService, CertificateAuthorityFormComponent, CertificateAuthorityFormService, CheckboxListInputComponent, ConfigTypeFormComponent, ConfigTypesPageComponent, ConfigurationFormComponent, ConfigurationService, ConfigurationsPageComponent, CsvDownloadService, DEACTIVATE_GUARD, DataTableFilterService, DeactivateGuardService, EDGE_ROUTER_EXTENSION_SERVICE, EDGE_ROUTER_POLICY_EXTENSION_SERVICE, EdgeRouter, EdgeRouterFormComponent, EdgeRouterFormService, EdgeRouterPoliciesPageComponent, EdgeRouterPoliciesPageService, EdgeRouterPolicyFormComponent, EdgeRouterPolicyFormService, EdgeRoutersPageComponent, EdgeRoutersPageService, Entity, ExtendableComponent, ExtensionsNoopService, FormFieldContainerComponent, FormFieldToggleComponent, FormHeaderComponent, GrowlerComponent, GrowlerModel, GrowlerModule, GrowlerService, IDENTITY_EXTENSION_SERVICE, IdentitiesPageComponent, IdentitiesPageService, Identity$1 as Identity, IdentityFormComponent, IdentityFormService, IdentityServicePathComponent, JsonViewComponent, JwtSignerFormComponent, JwtSignerFormService, JwtSignersPageComponent, JwtSignersPageService, KEY_CODES, ListPageComponent, ListPageServiceClass, LoadingIndicatorComponent, LoggerService, LoginDialogComponent, LoginServiceClass, NetworkVisualizerComponent, NodeDataService, NodeWrapperService, NoopLoginService, NoopTabInterceptorService, NumberInputComponent, ObjectComponent, OpenZitiConsoleLibModule, PasswordInputComponent, PostureCheckFormComponent, PostureChecksPageComponent, PostureChecksPageService, PreviewListComponent, ProgressMeterComponent, ProgressMeterStep, ProgressWizardComponent, ProgressWizardStep, ProjectableForm, ProtocolAddressPortInputComponent, ResetEnrollmentService, SERVICE_EDGE_ROUTER_POLICY_EXTENSION_SERVICE, SERVICE_EXTENSION_SERVICE, SERVICE_POLICY_EXTENSION_SERVICE, SETTINGS_SERVICE, SHAREDZ_EXTENSION, SelectorInputComponent, ServiceEdgeRouterPoliciesPageComponent, ServiceEdgeRouterPoliciesPageService, ServiceEdgeRouterPolicyFormComponent, ServiceEdgeRouterPolicyFormService, ServiceFormComponent, ServiceFormService, ServicePoliciesPageComponent, ServicePoliciesPageService, ServicePolicyFormComponent, ServicePolicyFormService, ServicesPageComponent, ServicesPageService, Session, SessionFormComponent, SessionsPageComponent, SessionsPageService, SettingsService, SettingsServiceClass, SideBannerComponent, SideModalComponent, SideNavbarComponent, SideToolbarComponent, SimpleServiceComponent, StringInputComponent, TabNameService, TagSelectorComponent, TerminatorFormComponent, TerminatorFormService, TerminatorsPageComponent, TerminatorsPageService, TextListInputComponent, TransitRouterFormComponent, TransitRouterFormService, TransitRoutersPageComponent, TransitRoutersPageService, VERSION, ValidationService, VerifyCertificateComponent, VisualizerServiceClass, ZAC_LOGIN_SERVICE, ZAC_WRAPPER_SERVICE, ZITI_DATA_SERVICE, ZITI_DOMAIN_CONTROLLER, ZITI_NAVIGATOR, ZITI_TAB_OVERRIDES, ZITI_URLS, ZacRoutingModule, ZacWrapperComponent, ZacWrapperService, ZacWrapperServiceClass, ZitiControllerDataService, ZitiDataService, playerFactory };
29801
29964
  //# sourceMappingURL=openziti-ziti-console-lib.mjs.map