@openziti/ziti-console-lib 1.1.1 → 1.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/openziti-ziti-console-lib.mjs +338 -82
- package/fesm2022/openziti-ziti-console-lib.mjs.map +1 -1
- package/index.d.ts +47 -13
- package/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -129,6 +129,7 @@ class ExtensionsNoopService {
|
|
|
129
129
|
constructor() {
|
|
130
130
|
this.formDataChanged = new BehaviorSubject({ isEmpty: true });
|
|
131
131
|
this.closed = new EventEmitter();
|
|
132
|
+
this.consoleActionTriggered = new EventEmitter();
|
|
132
133
|
this.closeAfterSave = true;
|
|
133
134
|
this.moreActions = [];
|
|
134
135
|
this.disabledComponents = [];
|
|
@@ -319,6 +320,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
319
320
|
}] } });
|
|
320
321
|
|
|
321
322
|
class NumberInputComponent {
|
|
323
|
+
set fieldName(name) {
|
|
324
|
+
this._fieldName = name;
|
|
325
|
+
this._idName = name.replace(/\s/g, '').toLowerCase();
|
|
326
|
+
}
|
|
322
327
|
constructor() {
|
|
323
328
|
this._fieldName = 'Field Label';
|
|
324
329
|
this._idName = 'fieldname';
|
|
@@ -330,19 +335,17 @@ class NumberInputComponent {
|
|
|
330
335
|
this.fieldValueChange = new EventEmitter();
|
|
331
336
|
this.valueChange = new Subject();
|
|
332
337
|
this._isValid = true;
|
|
333
|
-
|
|
334
|
-
set fieldName(name) {
|
|
335
|
-
this._fieldName = name;
|
|
336
|
-
this._idName = name.replace(/\s/g, '').toLowerCase();
|
|
338
|
+
this._emitEventsDebounced = debounce(this.emitEvents.bind(this), 500);
|
|
337
339
|
}
|
|
338
340
|
setIsValid(isValid) {
|
|
339
341
|
this._isValid = isValid;
|
|
340
342
|
}
|
|
341
343
|
onKeyup() {
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
344
|
+
this._emitEventsDebounced();
|
|
345
|
+
}
|
|
346
|
+
emitEvents() {
|
|
347
|
+
this.fieldValueChange.emit(this.fieldValue);
|
|
348
|
+
this.valueChange.next(this.fieldValue);
|
|
346
349
|
}
|
|
347
350
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: NumberInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
348
351
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: NumberInputComponent, isStandalone: false, selector: "lib-number-input", inputs: { fieldName: "fieldName", helpText: "helpText", fieldValue: "fieldValue", placeholder: "placeholder", parentage: "parentage", labelColor: "labelColor", fieldClass: "fieldClass", error: "error" }, outputs: { fieldValueChange: "fieldValueChange" }, ngImport: i0, template: `
|
|
@@ -361,7 +364,7 @@ class NumberInputComponent {
|
|
|
361
364
|
<input id="schema_{{parentage?parentage+'_':''}}{{_idName}}"
|
|
362
365
|
type="number" class="jsonEntry"
|
|
363
366
|
[ngClass]="{'error': error}"
|
|
364
|
-
[placeholder]="placeholder" [(ngModel)]="fieldValue" (paste)="onKeyup()" (keyup)="onKeyup()"/>
|
|
367
|
+
[placeholder]="placeholder" [(ngModel)]="fieldValue" (paste)="onKeyup()" (keyup)="onKeyup()" (change)="emitEvents()"/>
|
|
365
368
|
@if (error) {
|
|
366
369
|
<div class="error">{{error}}</div>
|
|
367
370
|
}
|
|
@@ -386,13 +389,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
386
389
|
<input id="schema_{{parentage?parentage+'_':''}}{{_idName}}"
|
|
387
390
|
type="number" class="jsonEntry"
|
|
388
391
|
[ngClass]="{'error': error}"
|
|
389
|
-
[placeholder]="placeholder" [(ngModel)]="fieldValue" (paste)="onKeyup()" (keyup)="onKeyup()"/>
|
|
392
|
+
[placeholder]="placeholder" [(ngModel)]="fieldValue" (paste)="onKeyup()" (keyup)="onKeyup()" (change)="emitEvents()"/>
|
|
390
393
|
@if (error) {
|
|
391
394
|
<div class="error">{{error}}</div>
|
|
392
395
|
}
|
|
393
396
|
</div>
|
|
394
397
|
`, standalone: false, styles: [".number-input-container{margin:var(--marginSmall) 0}.number-input-container label{margin-bottom:0rem;margin-top:0rem}.number-input-container input.error{border-color:red}.number-input-container div.error{color:red}.label-container{display:flex;gap:.3125rem;margin-bottom:var(--marginSmall);margin-top:var(--marginMedium)}\n"] }]
|
|
395
|
-
}], propDecorators: { fieldName: [{
|
|
398
|
+
}], ctorParameters: () => [], propDecorators: { fieldName: [{
|
|
396
399
|
type: Input
|
|
397
400
|
}], helpText: [{
|
|
398
401
|
type: Input
|
|
@@ -881,7 +884,7 @@ class CheckboxListInputComponent {
|
|
|
881
884
|
<input type="checkbox"
|
|
882
885
|
class="jsonEntry checkbox"
|
|
883
886
|
[ngClass]="{'error': error}"
|
|
884
|
-
[
|
|
887
|
+
[(ngModel)]="item.checked" (ngModelChange)="updateFieldVal()"/>
|
|
885
888
|
<span class="boxlabel">{{item.name}}</span>
|
|
886
889
|
</div>
|
|
887
890
|
}
|
|
@@ -889,7 +892,7 @@ class CheckboxListInputComponent {
|
|
|
889
892
|
<div class="error">{{error}}</div>
|
|
890
893
|
}
|
|
891
894
|
</div>
|
|
892
|
-
`, isInline: true, styles: [".boxlabel{text-transform:uppercase;position:absolute;padding-top:.3rem;padding-left:.25rem}input{width:1rem;height:1.5rem;border-radius:.25rem}input:checked{background-color:var(--green)!important}.jsonEntry.checkbox{width:1.5625rem;height:1.5625rem;border-radius:.9375rem;cursor:pointer;transition:background-color .5s;top:.8125rem;left:.625rem;background-color:var(--navigation);transition:var(--transition);border:.125rem var(--offWhite) solid}.jsonEntry.checkbox:checked{background-color:var(--green);background-image:url(/assets/images/check.png);background-size:45%;background-position:center center;background-repeat:no-repeat;border:none}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
895
|
+
`, isInline: true, styles: [".boxlabel{text-transform:uppercase;position:absolute;padding-top:.3rem;padding-left:.25rem}input{width:1rem;height:1.5rem;border-radius:.25rem}input:checked{background-color:var(--green)!important}.jsonEntry.checkbox{width:1.5625rem;height:1.5625rem;border-radius:.9375rem;cursor:pointer;transition:background-color .5s;top:.8125rem;left:.625rem;background-color:var(--navigation);transition:var(--transition);border:.125rem var(--offWhite) solid}.jsonEntry.checkbox:checked{background-color:var(--green);background-image:url(/assets/images/check.png);background-size:45%;background-position:center center;background-repeat:no-repeat;border:none}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
893
896
|
}
|
|
894
897
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: CheckboxListInputComponent, decorators: [{
|
|
895
898
|
type: Component,
|
|
@@ -901,7 +904,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
901
904
|
<input type="checkbox"
|
|
902
905
|
class="jsonEntry checkbox"
|
|
903
906
|
[ngClass]="{'error': error}"
|
|
904
|
-
[
|
|
907
|
+
[(ngModel)]="item.checked" (ngModelChange)="updateFieldVal()"/>
|
|
905
908
|
<span class="boxlabel">{{item.name}}</span>
|
|
906
909
|
</div>
|
|
907
910
|
}
|
|
@@ -5817,7 +5820,6 @@ class IdentitiesPageService extends ListPageServiceClass {
|
|
|
5817
5820
|
];
|
|
5818
5821
|
this.tableHeaderActions = [
|
|
5819
5822
|
{ name: 'Download All', action: 'download-all' },
|
|
5820
|
-
{ name: 'Download Selected', action: 'download-selected' },
|
|
5821
5823
|
];
|
|
5822
5824
|
this.resourceType = 'identities';
|
|
5823
5825
|
this.validate = (formData) => {
|
|
@@ -6471,6 +6473,8 @@ class EdgeRoutersPageService extends ListPageServiceClass {
|
|
|
6471
6473
|
{ label: 'Version', path: 'versionInfo.version' },
|
|
6472
6474
|
{ label: 'Revision', path: 'versionInfo.revision' },
|
|
6473
6475
|
{ label: 'Fingerprint', path: 'fingerprint' },
|
|
6476
|
+
{ label: 'Advertise TLS Address', path: 'supportedProtocols.tls' },
|
|
6477
|
+
{ label: 'Advertise WSS Address', path: 'supportedProtocols.wss' },
|
|
6474
6478
|
{ label: 'ID', path: 'id' },
|
|
6475
6479
|
];
|
|
6476
6480
|
this.selectedEdgeRouter = new EdgeRouter();
|
|
@@ -6655,6 +6659,46 @@ class EdgeRoutersPageService extends ListPageServiceClass {
|
|
|
6655
6659
|
resizable: true,
|
|
6656
6660
|
cellClass: 'nf-cell-vert-align tCol',
|
|
6657
6661
|
},
|
|
6662
|
+
{
|
|
6663
|
+
colId: 'hostname',
|
|
6664
|
+
field: 'hostname',
|
|
6665
|
+
headerName: 'Host Name',
|
|
6666
|
+
headerComponent: TableColumnDefaultComponent,
|
|
6667
|
+
resizable: true,
|
|
6668
|
+
cellClass: 'nf-cell-vert-align tCol',
|
|
6669
|
+
sortable: false,
|
|
6670
|
+
filter: false,
|
|
6671
|
+
tooltipValueGetter: (params) => {
|
|
6672
|
+
return params.value || '';
|
|
6673
|
+
}
|
|
6674
|
+
},
|
|
6675
|
+
{
|
|
6676
|
+
colId: 'version',
|
|
6677
|
+
field: 'versionInfo.version',
|
|
6678
|
+
headerName: 'Router Version',
|
|
6679
|
+
headerComponent: TableColumnDefaultComponent,
|
|
6680
|
+
resizable: true,
|
|
6681
|
+
cellClass: 'nf-cell-vert-align tCol',
|
|
6682
|
+
sortable: false,
|
|
6683
|
+
filter: false,
|
|
6684
|
+
},
|
|
6685
|
+
{
|
|
6686
|
+
colId: 'supportedProtocols',
|
|
6687
|
+
headerName: 'Advertise Address',
|
|
6688
|
+
headerComponent: TableColumnDefaultComponent,
|
|
6689
|
+
resizable: true,
|
|
6690
|
+
sortable: false,
|
|
6691
|
+
filter: false,
|
|
6692
|
+
valueGetter: (params) => {
|
|
6693
|
+
const protocols = params.data?.supportedProtocols;
|
|
6694
|
+
if (!protocols)
|
|
6695
|
+
return '';
|
|
6696
|
+
return Object.values(protocols).filter(Boolean).join(' | ');
|
|
6697
|
+
},
|
|
6698
|
+
tooltipValueGetter: (params) => params.value,
|
|
6699
|
+
tooltipShowMode: 'whenTruncated',
|
|
6700
|
+
cellStyle: { whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis' }
|
|
6701
|
+
},
|
|
6658
6702
|
this.ID_COLUMN_DEF
|
|
6659
6703
|
];
|
|
6660
6704
|
if (this.extService.processTableColumns) {
|
|
@@ -8567,10 +8611,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
8567
8611
|
limitations under the License.
|
|
8568
8612
|
*/
|
|
8569
8613
|
class ConfigurationsPageComponent extends ListPageComponent {
|
|
8570
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
8571
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
8614
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
8615
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
8572
8616
|
this.svc = svc;
|
|
8573
8617
|
this.tabNames = tabNames;
|
|
8618
|
+
this.extService = extService;
|
|
8574
8619
|
this.title = 'Configurations';
|
|
8575
8620
|
this.formDataChanged = false;
|
|
8576
8621
|
}
|
|
@@ -8605,6 +8650,7 @@ class ConfigurationsPageComponent extends ListPageComponent {
|
|
|
8605
8650
|
}
|
|
8606
8651
|
}
|
|
8607
8652
|
tableAction(event) {
|
|
8653
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
8608
8654
|
switch (event?.action) {
|
|
8609
8655
|
case 'toggleAll':
|
|
8610
8656
|
case 'toggleItem':
|
|
@@ -8629,6 +8675,14 @@ class ConfigurationsPageComponent extends ListPageComponent {
|
|
|
8629
8675
|
break;
|
|
8630
8676
|
}
|
|
8631
8677
|
}
|
|
8678
|
+
trackMenuAction(action, item) {
|
|
8679
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
8680
|
+
action,
|
|
8681
|
+
page: 'config',
|
|
8682
|
+
item,
|
|
8683
|
+
type: 'menu-action'
|
|
8684
|
+
});
|
|
8685
|
+
}
|
|
8632
8686
|
deleteItem(item) {
|
|
8633
8687
|
this.openBulkDelete([item], 'config');
|
|
8634
8688
|
}
|
|
@@ -8666,13 +8720,16 @@ class ConfigurationsPageComponent extends ListPageComponent {
|
|
|
8666
8720
|
}
|
|
8667
8721
|
});
|
|
8668
8722
|
}
|
|
8669
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigurationsPageComponent, deps: [{ token: ConfigurationsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8723
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigurationsPageComponent, deps: [{ token: ConfigurationsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8670
8724
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.17", type: ConfigurationsPageComponent, isStandalone: false, selector: "lib-configurations", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-configs-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'configurations'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Configurations defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n", styles: [".configurations{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}\n"], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }] }); }
|
|
8671
8725
|
}
|
|
8672
8726
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigurationsPageComponent, decorators: [{
|
|
8673
8727
|
type: Component,
|
|
8674
8728
|
args: [{ selector: 'lib-configurations', standalone: false, template: "<div class=\"ziti-page-container ziti-configs-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'configurations'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Configurations defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n", styles: [".configurations{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}\n"] }]
|
|
8675
|
-
}], ctorParameters: () => [{ type: ConfigurationsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
8729
|
+
}], ctorParameters: () => [{ type: ConfigurationsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
8730
|
+
type: Inject,
|
|
8731
|
+
args: [SHAREDZ_EXTENSION]
|
|
8732
|
+
}] }] });
|
|
8676
8733
|
|
|
8677
8734
|
/*
|
|
8678
8735
|
Copyright NetFoundry Inc.
|
|
@@ -11457,6 +11514,7 @@ class IdentitiesPageComponent extends ListPageComponent {
|
|
|
11457
11514
|
}
|
|
11458
11515
|
tableAction(event) {
|
|
11459
11516
|
const extensionActionFound = this.handleExtensionActions(event);
|
|
11517
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
11460
11518
|
if (extensionActionFound) {
|
|
11461
11519
|
return;
|
|
11462
11520
|
}
|
|
@@ -11533,6 +11591,14 @@ class IdentitiesPageComponent extends ListPageComponent {
|
|
|
11533
11591
|
autoFocus: false,
|
|
11534
11592
|
});
|
|
11535
11593
|
}
|
|
11594
|
+
trackMenuAction(action, item) {
|
|
11595
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
11596
|
+
action,
|
|
11597
|
+
page: 'identity',
|
|
11598
|
+
item,
|
|
11599
|
+
type: 'menu-action'
|
|
11600
|
+
});
|
|
11601
|
+
}
|
|
11536
11602
|
deleteItem(item) {
|
|
11537
11603
|
this.openBulkDelete([item], 'identity');
|
|
11538
11604
|
}
|
|
@@ -11642,6 +11708,7 @@ class EdgeRoutersPageComponent extends ListPageComponent {
|
|
|
11642
11708
|
this.formDataChanged = event;
|
|
11643
11709
|
}
|
|
11644
11710
|
tableAction(event) {
|
|
11711
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
11645
11712
|
if (this.extService?.listActions?.length > 0) {
|
|
11646
11713
|
let extensionFound = false;
|
|
11647
11714
|
this.extService?.listActions?.forEach((extAction) => {
|
|
@@ -11686,6 +11753,14 @@ class EdgeRoutersPageComponent extends ListPageComponent {
|
|
|
11686
11753
|
break;
|
|
11687
11754
|
}
|
|
11688
11755
|
}
|
|
11756
|
+
trackMenuAction(action, item) {
|
|
11757
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
11758
|
+
action,
|
|
11759
|
+
page: 'edge-router',
|
|
11760
|
+
item,
|
|
11761
|
+
type: 'menu-action'
|
|
11762
|
+
});
|
|
11763
|
+
}
|
|
11689
11764
|
downloadJWT(item) {
|
|
11690
11765
|
const jwt = this.svc.getJWT(item);
|
|
11691
11766
|
this.svc.downloadJWT(jwt, item.name);
|
|
@@ -11991,6 +12066,7 @@ class TransitRoutersPageComponent extends ListPageComponent {
|
|
|
11991
12066
|
this.formDataChanged = event;
|
|
11992
12067
|
}
|
|
11993
12068
|
tableAction(event) {
|
|
12069
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
11994
12070
|
if (this.extService?.listActions?.length > 0) {
|
|
11995
12071
|
let extensionFound = false;
|
|
11996
12072
|
this.extService?.listActions?.forEach((extAction) => {
|
|
@@ -12035,6 +12111,14 @@ class TransitRoutersPageComponent extends ListPageComponent {
|
|
|
12035
12111
|
break;
|
|
12036
12112
|
}
|
|
12037
12113
|
}
|
|
12114
|
+
trackMenuAction(action, item) {
|
|
12115
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
12116
|
+
action,
|
|
12117
|
+
page: 'transit-router',
|
|
12118
|
+
item,
|
|
12119
|
+
type: 'menu-action'
|
|
12120
|
+
});
|
|
12121
|
+
}
|
|
12038
12122
|
downloadJWT(item) {
|
|
12039
12123
|
const jwt = this.svc.getJWT(item);
|
|
12040
12124
|
this.svc.downloadJWT(jwt, item.name);
|
|
@@ -13525,6 +13609,7 @@ class ServicesPageComponent extends ListPageComponent {
|
|
|
13525
13609
|
}
|
|
13526
13610
|
}
|
|
13527
13611
|
tableAction(event) {
|
|
13612
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
13528
13613
|
const extensionActionFound = this.handleExtensionActions(event);
|
|
13529
13614
|
if (extensionActionFound) {
|
|
13530
13615
|
return;
|
|
@@ -13553,6 +13638,14 @@ class ServicesPageComponent extends ListPageComponent {
|
|
|
13553
13638
|
break;
|
|
13554
13639
|
}
|
|
13555
13640
|
}
|
|
13641
|
+
trackMenuAction(action, item) {
|
|
13642
|
+
this.extensionService?.consoleActionTriggered?.emit({
|
|
13643
|
+
action,
|
|
13644
|
+
page: 'service',
|
|
13645
|
+
item,
|
|
13646
|
+
type: 'menu-action'
|
|
13647
|
+
});
|
|
13648
|
+
}
|
|
13556
13649
|
deleteItem(item) {
|
|
13557
13650
|
this.openBulkDelete([item], 'service');
|
|
13558
13651
|
}
|
|
@@ -17646,6 +17739,10 @@ class EdgeRouterFormComponent extends ProjectableForm {
|
|
|
17646
17739
|
if (!this.formData.isVerified) {
|
|
17647
17740
|
this.formData.badges.push({ label: 'Unverified', class: 'unreg' });
|
|
17648
17741
|
}
|
|
17742
|
+
if (this.formData.versionInfo?.version) {
|
|
17743
|
+
const version = this.formData.versionInfo?.version.replace(/^v/, '').trim();
|
|
17744
|
+
this.formData.badges.push({ label: `Version: ${version}`, class: 'offline' });
|
|
17745
|
+
}
|
|
17649
17746
|
}
|
|
17650
17747
|
this.getEdgeRouterRoleAttributes();
|
|
17651
17748
|
this.svc.getAssociatedServices(this.formData.id);
|
|
@@ -17773,7 +17870,7 @@ class EdgeRouterFormComponent extends ProjectableForm {
|
|
|
17773
17870
|
provide: MatDialogRef,
|
|
17774
17871
|
useValue: {}
|
|
17775
17872
|
}
|
|
17776
|
-
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"projectable-form-wrapper\"\n (keyup.enter)=\"save($event)\"\n (keyup.escape)=\"closeModal(false)\"\n [class.projectable-form-hidden]=\"!dataInit\"\n >\n <lib-form-header\n [data]=\"formData\"\n [title]=\"formData.id ? 'Edit Edge Router: ' : 'Create New Edge Router'\"\n [moreActions]=\"moreActions\"\n (actionRequested)=\"headerActionRequested($event)\"\n [(formView)]=\"formView\"\n [class.is-scrolled]=\"isScrolled\"\n ></lib-form-header>\n <div class=\"edge-router-form-container projectable-form-container\" #formContainer>\n @if (formView === 'simple') {\n <div class=\"projectable-form-main-column form-group-row\">\n <div class=\"form-group-column three-fifths\">\n <lib-form-field-container [title]=\"'Edge Router Name'\" [label]=\"'REQUIRED'\">\n <input\n class=\"form-field-input\"\n placeholder=\"Name this edge router\"\n [ngClass]=\"{error: errors['name']}\"\n [(ngModel)]=\"formData.name\"\n autofocus\n #nameFieldInput\n />\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'Select or create Edge Router attributes'\"\n [label]=\"'OPTIONAL'\"\n [contentStyle]=\"'z-index: 99999999'\"\n [helpText]=\"'Attributes are tags applied to an resource. Apply the same tag to other Edge Routers to form a group of Edge Routers.'\"\n >\n <lib-tag-selector\n [(selectedRoleAttributes)]=\"formData.roleAttributes\"\n [availableRoleAttributes]=\"edgeRouterRoleAttributes\"\n [placeholder]=\"'Add attributes to group Edge Routers'\"\n ></lib-tag-selector>\n </lib-form-field-container>\n <ng-content select=\"[slot=column-1-slot-1]\"></ng-content>\n <lib-form-field-toggle [(toggleOn)]=\"showMore\" style=\"margin: 0px 10px\"></lib-form-field-toggle>\n @if (showMore) {\n <div class=\"form-group-column\">\n <lib-form-field-container\n [title]=\"'TUNNELER'\"\n [title2]=\"'TRAVERSAL'\"\n [layout]=\"'row'\"\n class=\"form-field-advanced\"\n >\n <div class=\"config-item\" [class.disabled]=\"!tunnelerEnabledReadOnly\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">TUNNELER ENABLED</div>\n <div (click)=\"tunnelerEnabledReadOnly && toggleTunnelerEnabled()\"\n [ngClass]=\"{ on: formData.isTunnelerEnabled,disabled: !tunnelerEnabledReadOnly }\" class=\"toggle\"\n [matTooltip]=\"!tunnelerEnabledReadOnly ? 'Disabled because already hosted by netfoundry ' : ''\"\n matTooltipPosition=\"above\" style=\"pointer-events: auto;\">\n <span [hidden]=\"!formData.isTunnelerEnabled\" class=\"on-label\">YES</span>\n <span [hidden]=\"formData.isTunnelerEnabled\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n <div class=\"config-item\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">ALLOW TRAVERSAL</div>\n <div\n (click)=\"toggleNoTraversal()\"\n [ngClass]=\"{ on: !formData.noTraversal }\"\n class=\"toggle\"\n >\n <span [hidden]=\"formData.noTraversal\" class=\"on-label\">YES</span>\n <span [hidden]=\"!formData.noTraversal\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'Custom Tags'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-custom-tags [(tags)]=\"formData.tags\"></lib-custom-tags>\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'App Data'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-json-view [(data)]=\"formData.appData\"></lib-json-view>\n </lib-form-field-container>\n </div>\n }\n </div>\n <div class=\"form-group-column two-fifths\">\n <ng-content select=\"[slot=column-2-slot-1]\"></ng-content>\n @if (hasEnrolmentToken && !extService['hideZitiRegistration']) {\n <lib-form-field-container\n [showHeader]=\"false\"\n >\n <lib-qr-code\n [identity]=\"formData\"\n [jwt]=\"formData.enrollmentJwt\"\n [token]=\"formData.enrollmentToken\"\n [expiration]=\"formData.enrollmentExpiresAt\"\n (doRefresh)=\"refreshEdgeRouter()\"\n [type]=\"'router'\"\n ></lib-qr-code>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Services'\"\n [count]=\"svc.associatedServices.length\"\n [class]=\"'hide-overflow'\"\n [helpText]=\"'Preview list of all services that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"servicesLoading\"\n [allNames]=\"svc.associatedServiceNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Identities'\"\n [count]=\"svc.associatedIdentities.length\"\n [helpText]=\"'Preview list of all Identities that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"identitiesLoading\"\n [allNames]=\"svc.associatedIdentityNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n <lib-form-field-container\n [title]=\"'API Calls'\"\n [label]=\"'OPTIONAL'\"\n >\n <div class=\"form-row\">\n <input class=\"form-field-input\" [value]=\"apiCallURL\"/>\n <div class=\"icon-copy copy-text\" (click)=\"copyToClipboard(apiCallURL)\"></div>\n </div>\n @if (formData) {\n <lib-json-view [(data)]=\"apiData\" [readOnly]=\"true\" [showCopy]=\"true\"></lib-json-view>\n }\n </lib-form-field-container>\n </div>\n </div>\n }\n @if (formView === 'raw') {\n <div class=\"form-group-column\">\n @if (formData) {\n <lib-json-view [(data)]=\"formData\"></lib-json-view>\n }\n </div>\n }\n </div>\n</div>\n@if (isLoading || !dataInit) {\n <lib-loading-indicator [isLoading]=\"isLoading || !dataInit\"></lib-loading-indicator>\n}\n", styles: [".edge-router-form-container{display:flex;flex-direction:column;height:100%;width:100%;align-items:center;gap:.9375rem}.form-field-dropdown{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .625rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:1.75rem}.disabled{opacity:.5;pointer-events:none}.toggle.disabled{cursor:not-allowed}::ng-deep .admin-toggle{width:100%;width:35%;display:flex}::ng-deep .admin-toggle .form-field-line{display:none}::ng-deep .admin-toggle .toggle{width:100%}::ng-deep .is-admin-container .form-field-title-container.title-container-2{width:35%!important}.svc-test-result{position:absolute;transition:var(--transition);height:0;width:100%;background-color:var(--background);bottom:0;font-weight:600;padding-left:.625rem;padding-right:.625rem;border-color:var(--inputBorder);border-style:solid;border-width:var(--inputBorderWidth);border-bottom-right-radius:var(--inputBorderRadius);border-bottom-left-radius:var(--inputBorderRadius);border-top-style:none}.svc-test-result.test-result-open{height:fit-content;box-shadow:0 -.125rem .6875rem 0 var(--boxShadow);padding-bottom:.9375rem;padding-top:.9375rem}.svc-test-result .close.icon-close{top:.625rem;right:.625rem;font-size:1.125rem;height:1.125rem;width:1.125rem;line-height:1.125rem}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-label{color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-line{border-color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle{border-color:var(--primaryColor);border-style:solid;border-width:var(--inputBorderWidth)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle .switch{top:.0625rem}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: FormHeaderComponent, selector: "lib-form-header", inputs: ["data", "badges", "title", "moreActions", "formView", "saveDisabled", "saveTooltip", "actionButtonText", "moreActionsText", "showHeaderToggle", "showHeaderButton", "multiActions"], outputs: ["formViewChange", "actionRequested", "multiActionRequested"] }, { kind: "component", type: FormFieldContainerComponent, selector: "lib-form-field-container", inputs: ["title", "title2", "titleIcon", "layout", "helpText", "helpText2", "label", "count", "action", "actionLabel", "class", "contentStyle", "contentClass", "showHeader", "showToggle", "headerActions", "headerToggle"], outputs: ["actionRequested", "headerToggleChange"] }, { kind: "component", type: PreviewListComponent, selector: "lib-preview-list", inputs: ["label", "clickable", "isLoading", "allNames", "items", "allowRemove", "tooltip", "showfilter", "localFilter"], outputs: ["itemSelected", "itemRemoved", "filterChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }, { kind: "component", type: FormFieldToggleComponent, selector: "lib-form-field-toggle", inputs: ["label", "orientation", "labelOn", "labelOff", "toggleOn"], outputs: ["toggleOnChange"] }, { kind: "component", type: JsonViewComponent, selector: "lib-json-view", inputs: ["data", "schema", "readOnly", "jsonInvalid", "showCopy", "showLineNumbers"], outputs: ["dataChange", "jsonChange", "jsonInvalidChange"] }, { kind: "component", type: TagSelectorComponent, selector: "lib-tag-selector", inputs: ["placeholder", "disableField", "disableCreate", "hideOption", "isLoading", "errorMessage", "focusOnInit", "selectedRoleAttributes", "selectedNamedAttributes", "hasError", "availableRoleAttributes", "availableNamedAttributes"], outputs: ["addRoleAttribute", "addNamedAttribute", "roleAttributeRemoved", "namedAttributeRemoved", "selectedRoleAttributesChange", "selectedNamedAttributesChange", "filterChange"] }, { kind: "component", type: QrCodeComponent, selector: "lib-qr-code", inputs: ["jwt", "token", "expiration", "identity", "type", "authenticators", "qrOnly", "canExpand"], outputs: ["doRefresh"] }, { kind: "component", type: CustomTagsComponent, selector: "lib-custom-tags", inputs: ["tags"], outputs: ["tagsChange"] }] }); }
|
|
17873
|
+
], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"projectable-form-wrapper\"\n (keyup.enter)=\"save($event)\"\n (keyup.escape)=\"closeModal(false)\"\n [class.projectable-form-hidden]=\"!dataInit\"\n >\n <lib-form-header\n [data]=\"formData\"\n [title]=\"formData.id ? 'Edit Edge Router: ' : 'Create New Edge Router'\"\n [moreActions]=\"moreActions\"\n (actionRequested)=\"headerActionRequested($event)\"\n [(formView)]=\"formView\"\n [class.is-scrolled]=\"isScrolled\"\n ></lib-form-header>\n <div class=\"edge-router-form-container projectable-form-container\" #formContainer>\n @if (formView === 'simple') {\n <div class=\"projectable-form-main-column form-group-row\">\n <div class=\"form-group-column three-fifths\">\n <lib-form-field-container [title]=\"'Edge Router Name'\" [label]=\"'REQUIRED'\">\n <input\n class=\"form-field-input\"\n placeholder=\"Name this edge router\"\n [ngClass]=\"{error: errors['name']}\"\n [(ngModel)]=\"formData.name\"\n autofocus\n #nameFieldInput\n />\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'Select or create Edge Router attributes'\"\n [label]=\"'OPTIONAL'\"\n [contentStyle]=\"'z-index: 99999999'\"\n [helpText]=\"'Attributes are tags applied to an resource. Apply the same tag to other Edge Routers to form a group of Edge Routers.'\"\n >\n <lib-tag-selector\n [(selectedRoleAttributes)]=\"formData.roleAttributes\"\n [availableRoleAttributes]=\"edgeRouterRoleAttributes\"\n [placeholder]=\"'Add attributes to group Edge Routers'\"\n ></lib-tag-selector>\n </lib-form-field-container>\n <ng-content select=\"[slot=column-1-slot-1]\"></ng-content>\n <lib-form-field-toggle [(toggleOn)]=\"showMore\" style=\"margin: 0px 10px\"></lib-form-field-toggle>\n @if (showMore) {\n <div class=\"form-group-column\">\n <lib-form-field-container\n [title]=\"'TUNNELER'\"\n [title2]=\"'TRAVERSAL'\"\n [layout]=\"'row'\"\n class=\"form-field-advanced\"\n >\n <div class=\"config-item\" [class.disabled]=\"!tunnelerEnabledReadOnly\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">TUNNELER ENABLED</div>\n <div (click)=\"tunnelerEnabledReadOnly && toggleTunnelerEnabled()\"\n [ngClass]=\"{ on: formData.isTunnelerEnabled,disabled: !tunnelerEnabledReadOnly }\" class=\"toggle\"\n [matTooltip]=\"!tunnelerEnabledReadOnly ? 'Disabled because already hosted by netfoundry ' : ''\"\n matTooltipPosition=\"above\" style=\"pointer-events: auto;\">\n <span [hidden]=\"!formData.isTunnelerEnabled\" class=\"on-label\">YES</span>\n <span [hidden]=\"formData.isTunnelerEnabled\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n <div class=\"config-item\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">ALLOW TRAVERSAL</div>\n <div\n (click)=\"toggleNoTraversal()\"\n [ngClass]=\"{ on: !formData.noTraversal }\"\n class=\"toggle\"\n >\n <span [hidden]=\"formData.noTraversal\" class=\"on-label\">YES</span>\n <span [hidden]=\"!formData.noTraversal\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n </lib-form-field-container>\n @if (formData?.hostname || formData?.supportedProtocols?.tls || formData?.supportedProtocols?.wss) {\n <lib-form-field-container [showHeader]=\"false\">\n @if (formData?.hostname) {\n <div class=\"config-item\">\n <div class=\"config-item-label-container\">\n <span class=\"config-title\">Domain Name</span>\n </div>\n <div class=\"config-container domain-container\">\n <div class=\"config-container-label domain-label\">\n {{ formData?.hostname }}\n </div>\n </div>\n </div>\n }\n @if (formData?.supportedProtocols?.tls || formData?.supportedProtocols?.wss) {\n <div class=\"config-item\">\n <div class=\"config-item-label-container\">\n <span class=\"config-title\">ADVERTISE ADDRESS</span>\n </div>\n <div class=\"config-container advertise-address-container\">\n <div class=\"config-container-label advertise-address-label\">\n {{ formData?.supportedProtocols?.tls }}\n <br />\n {{ formData?.supportedProtocols?.wss }}\n </div>\n </div>\n </div>\n }\n </lib-form-field-container>\n }\n <lib-form-field-container\n [title]=\"'Custom Tags'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-custom-tags [(tags)]=\"formData.tags\"></lib-custom-tags>\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'App Data'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-json-view [(data)]=\"formData.appData\"></lib-json-view>\n </lib-form-field-container>\n </div>\n }\n </div>\n <div class=\"form-group-column two-fifths\">\n <ng-content select=\"[slot=column-2-slot-1]\"></ng-content>\n @if (hasEnrolmentToken && !extService['hideZitiRegistration']) {\n <lib-form-field-container\n [showHeader]=\"false\"\n >\n <lib-qr-code\n [identity]=\"formData\"\n [jwt]=\"formData.enrollmentJwt\"\n [token]=\"formData.enrollmentToken\"\n [expiration]=\"formData.enrollmentExpiresAt\"\n (doRefresh)=\"refreshEdgeRouter()\"\n [type]=\"'router'\"\n ></lib-qr-code>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Services'\"\n [count]=\"svc.associatedServices.length\"\n [class]=\"'hide-overflow'\"\n [helpText]=\"'Preview list of all services that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"servicesLoading\"\n [allNames]=\"svc.associatedServiceNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Identities'\"\n [count]=\"svc.associatedIdentities.length\"\n [helpText]=\"'Preview list of all Identities that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"identitiesLoading\"\n [allNames]=\"svc.associatedIdentityNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n <lib-form-field-container\n [title]=\"'API Calls'\"\n [label]=\"'OPTIONAL'\"\n >\n <div class=\"form-row\">\n <input class=\"form-field-input\" [value]=\"apiCallURL\"/>\n <div class=\"icon-copy copy-text\" (click)=\"copyToClipboard(apiCallURL)\"></div>\n </div>\n @if (formData) {\n <lib-json-view [(data)]=\"apiData\" [readOnly]=\"true\" [showCopy]=\"true\"></lib-json-view>\n }\n </lib-form-field-container>\n </div>\n </div>\n }\n @if (formView === 'raw') {\n <div class=\"form-group-column\">\n @if (formData) {\n <lib-json-view [(data)]=\"formData\"></lib-json-view>\n }\n </div>\n }\n </div>\n</div>\n@if (isLoading || !dataInit) {\n <lib-loading-indicator [isLoading]=\"isLoading || !dataInit\"></lib-loading-indicator>\n}\n", styles: [".edge-router-form-container{display:flex;flex-direction:column;height:100%;width:100%;align-items:center;gap:.9375rem}.form-field-dropdown{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .625rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:1.75rem}.disabled{opacity:.5;pointer-events:none}.toggle.disabled{cursor:not-allowed}::ng-deep .admin-toggle{width:100%;width:35%;display:flex}::ng-deep .admin-toggle .form-field-line{display:none}::ng-deep .admin-toggle .toggle{width:100%}::ng-deep .is-admin-container .form-field-title-container.title-container-2{width:35%!important}.svc-test-result{position:absolute;transition:var(--transition);height:0;width:100%;background-color:var(--background);bottom:0;font-weight:600;padding-left:.625rem;padding-right:.625rem;border-color:var(--inputBorder);border-style:solid;border-width:var(--inputBorderWidth);border-bottom-right-radius:var(--inputBorderRadius);border-bottom-left-radius:var(--inputBorderRadius);border-top-style:none}.svc-test-result.test-result-open{height:fit-content;box-shadow:0 -.125rem .6875rem 0 var(--boxShadow);padding-bottom:.9375rem;padding-top:.9375rem}.svc-test-result .close.icon-close{top:.625rem;right:.625rem;font-size:1.125rem;height:1.125rem;width:1.125rem;line-height:1.125rem}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-label{color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-line{border-color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle{border-color:var(--primaryColor);border-style:solid;border-width:var(--inputBorderWidth)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle .switch{top:.0625rem}.config-container-label.domain-label,.config-container-label.advertise-address-label{text-transform:lowercase}.config-container.domain-container,.config-container.advertise-address-container{background-color:var(--stroke)}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: FormHeaderComponent, selector: "lib-form-header", inputs: ["data", "badges", "title", "moreActions", "formView", "saveDisabled", "saveTooltip", "actionButtonText", "moreActionsText", "showHeaderToggle", "showHeaderButton", "multiActions"], outputs: ["formViewChange", "actionRequested", "multiActionRequested"] }, { kind: "component", type: FormFieldContainerComponent, selector: "lib-form-field-container", inputs: ["title", "title2", "titleIcon", "layout", "helpText", "helpText2", "label", "count", "action", "actionLabel", "class", "contentStyle", "contentClass", "showHeader", "showToggle", "headerActions", "headerToggle"], outputs: ["actionRequested", "headerToggleChange"] }, { kind: "component", type: PreviewListComponent, selector: "lib-preview-list", inputs: ["label", "clickable", "isLoading", "allNames", "items", "allowRemove", "tooltip", "showfilter", "localFilter"], outputs: ["itemSelected", "itemRemoved", "filterChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }, { kind: "component", type: FormFieldToggleComponent, selector: "lib-form-field-toggle", inputs: ["label", "orientation", "labelOn", "labelOff", "toggleOn"], outputs: ["toggleOnChange"] }, { kind: "component", type: JsonViewComponent, selector: "lib-json-view", inputs: ["data", "schema", "readOnly", "jsonInvalid", "showCopy", "showLineNumbers"], outputs: ["dataChange", "jsonChange", "jsonInvalidChange"] }, { kind: "component", type: TagSelectorComponent, selector: "lib-tag-selector", inputs: ["placeholder", "disableField", "disableCreate", "hideOption", "isLoading", "errorMessage", "focusOnInit", "selectedRoleAttributes", "selectedNamedAttributes", "hasError", "availableRoleAttributes", "availableNamedAttributes"], outputs: ["addRoleAttribute", "addNamedAttribute", "roleAttributeRemoved", "namedAttributeRemoved", "selectedRoleAttributesChange", "selectedNamedAttributesChange", "filterChange"] }, { kind: "component", type: QrCodeComponent, selector: "lib-qr-code", inputs: ["jwt", "token", "expiration", "identity", "type", "authenticators", "qrOnly", "canExpand"], outputs: ["doRefresh"] }, { kind: "component", type: CustomTagsComponent, selector: "lib-custom-tags", inputs: ["tags"], outputs: ["tagsChange"] }] }); }
|
|
17777
17874
|
}
|
|
17778
17875
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: EdgeRouterFormComponent, decorators: [{
|
|
17779
17876
|
type: Component,
|
|
@@ -17782,7 +17879,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
17782
17879
|
provide: MatDialogRef,
|
|
17783
17880
|
useValue: {}
|
|
17784
17881
|
}
|
|
17785
|
-
], standalone: false, template: "<div class=\"projectable-form-wrapper\"\n (keyup.enter)=\"save($event)\"\n (keyup.escape)=\"closeModal(false)\"\n [class.projectable-form-hidden]=\"!dataInit\"\n >\n <lib-form-header\n [data]=\"formData\"\n [title]=\"formData.id ? 'Edit Edge Router: ' : 'Create New Edge Router'\"\n [moreActions]=\"moreActions\"\n (actionRequested)=\"headerActionRequested($event)\"\n [(formView)]=\"formView\"\n [class.is-scrolled]=\"isScrolled\"\n ></lib-form-header>\n <div class=\"edge-router-form-container projectable-form-container\" #formContainer>\n @if (formView === 'simple') {\n <div class=\"projectable-form-main-column form-group-row\">\n <div class=\"form-group-column three-fifths\">\n <lib-form-field-container [title]=\"'Edge Router Name'\" [label]=\"'REQUIRED'\">\n <input\n class=\"form-field-input\"\n placeholder=\"Name this edge router\"\n [ngClass]=\"{error: errors['name']}\"\n [(ngModel)]=\"formData.name\"\n autofocus\n #nameFieldInput\n />\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'Select or create Edge Router attributes'\"\n [label]=\"'OPTIONAL'\"\n [contentStyle]=\"'z-index: 99999999'\"\n [helpText]=\"'Attributes are tags applied to an resource. Apply the same tag to other Edge Routers to form a group of Edge Routers.'\"\n >\n <lib-tag-selector\n [(selectedRoleAttributes)]=\"formData.roleAttributes\"\n [availableRoleAttributes]=\"edgeRouterRoleAttributes\"\n [placeholder]=\"'Add attributes to group Edge Routers'\"\n ></lib-tag-selector>\n </lib-form-field-container>\n <ng-content select=\"[slot=column-1-slot-1]\"></ng-content>\n <lib-form-field-toggle [(toggleOn)]=\"showMore\" style=\"margin: 0px 10px\"></lib-form-field-toggle>\n @if (showMore) {\n <div class=\"form-group-column\">\n <lib-form-field-container\n [title]=\"'TUNNELER'\"\n [title2]=\"'TRAVERSAL'\"\n [layout]=\"'row'\"\n class=\"form-field-advanced\"\n >\n <div class=\"config-item\" [class.disabled]=\"!tunnelerEnabledReadOnly\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">TUNNELER ENABLED</div>\n <div (click)=\"tunnelerEnabledReadOnly && toggleTunnelerEnabled()\"\n [ngClass]=\"{ on: formData.isTunnelerEnabled,disabled: !tunnelerEnabledReadOnly }\" class=\"toggle\"\n [matTooltip]=\"!tunnelerEnabledReadOnly ? 'Disabled because already hosted by netfoundry ' : ''\"\n matTooltipPosition=\"above\" style=\"pointer-events: auto;\">\n <span [hidden]=\"!formData.isTunnelerEnabled\" class=\"on-label\">YES</span>\n <span [hidden]=\"formData.isTunnelerEnabled\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n <div class=\"config-item\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">ALLOW TRAVERSAL</div>\n <div\n (click)=\"toggleNoTraversal()\"\n [ngClass]=\"{ on: !formData.noTraversal }\"\n class=\"toggle\"\n >\n <span [hidden]=\"formData.noTraversal\" class=\"on-label\">YES</span>\n <span [hidden]=\"!formData.noTraversal\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'Custom Tags'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-custom-tags [(tags)]=\"formData.tags\"></lib-custom-tags>\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'App Data'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-json-view [(data)]=\"formData.appData\"></lib-json-view>\n </lib-form-field-container>\n </div>\n }\n </div>\n <div class=\"form-group-column two-fifths\">\n <ng-content select=\"[slot=column-2-slot-1]\"></ng-content>\n @if (hasEnrolmentToken && !extService['hideZitiRegistration']) {\n <lib-form-field-container\n [showHeader]=\"false\"\n >\n <lib-qr-code\n [identity]=\"formData\"\n [jwt]=\"formData.enrollmentJwt\"\n [token]=\"formData.enrollmentToken\"\n [expiration]=\"formData.enrollmentExpiresAt\"\n (doRefresh)=\"refreshEdgeRouter()\"\n [type]=\"'router'\"\n ></lib-qr-code>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Services'\"\n [count]=\"svc.associatedServices.length\"\n [class]=\"'hide-overflow'\"\n [helpText]=\"'Preview list of all services that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"servicesLoading\"\n [allNames]=\"svc.associatedServiceNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Identities'\"\n [count]=\"svc.associatedIdentities.length\"\n [helpText]=\"'Preview list of all Identities that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"identitiesLoading\"\n [allNames]=\"svc.associatedIdentityNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n <lib-form-field-container\n [title]=\"'API Calls'\"\n [label]=\"'OPTIONAL'\"\n >\n <div class=\"form-row\">\n <input class=\"form-field-input\" [value]=\"apiCallURL\"/>\n <div class=\"icon-copy copy-text\" (click)=\"copyToClipboard(apiCallURL)\"></div>\n </div>\n @if (formData) {\n <lib-json-view [(data)]=\"apiData\" [readOnly]=\"true\" [showCopy]=\"true\"></lib-json-view>\n }\n </lib-form-field-container>\n </div>\n </div>\n }\n @if (formView === 'raw') {\n <div class=\"form-group-column\">\n @if (formData) {\n <lib-json-view [(data)]=\"formData\"></lib-json-view>\n }\n </div>\n }\n </div>\n</div>\n@if (isLoading || !dataInit) {\n <lib-loading-indicator [isLoading]=\"isLoading || !dataInit\"></lib-loading-indicator>\n}\n", styles: [".edge-router-form-container{display:flex;flex-direction:column;height:100%;width:100%;align-items:center;gap:.9375rem}.form-field-dropdown{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .625rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:1.75rem}.disabled{opacity:.5;pointer-events:none}.toggle.disabled{cursor:not-allowed}::ng-deep .admin-toggle{width:100%;width:35%;display:flex}::ng-deep .admin-toggle .form-field-line{display:none}::ng-deep .admin-toggle .toggle{width:100%}::ng-deep .is-admin-container .form-field-title-container.title-container-2{width:35%!important}.svc-test-result{position:absolute;transition:var(--transition);height:0;width:100%;background-color:var(--background);bottom:0;font-weight:600;padding-left:.625rem;padding-right:.625rem;border-color:var(--inputBorder);border-style:solid;border-width:var(--inputBorderWidth);border-bottom-right-radius:var(--inputBorderRadius);border-bottom-left-radius:var(--inputBorderRadius);border-top-style:none}.svc-test-result.test-result-open{height:fit-content;box-shadow:0 -.125rem .6875rem 0 var(--boxShadow);padding-bottom:.9375rem;padding-top:.9375rem}.svc-test-result .close.icon-close{top:.625rem;right:.625rem;font-size:1.125rem;height:1.125rem;width:1.125rem;line-height:1.125rem}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-label{color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-line{border-color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle{border-color:var(--primaryColor);border-style:solid;border-width:var(--inputBorderWidth)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle .switch{top:.0625rem}\n"] }]
|
|
17882
|
+
], standalone: false, template: "<div class=\"projectable-form-wrapper\"\n (keyup.enter)=\"save($event)\"\n (keyup.escape)=\"closeModal(false)\"\n [class.projectable-form-hidden]=\"!dataInit\"\n >\n <lib-form-header\n [data]=\"formData\"\n [title]=\"formData.id ? 'Edit Edge Router: ' : 'Create New Edge Router'\"\n [moreActions]=\"moreActions\"\n (actionRequested)=\"headerActionRequested($event)\"\n [(formView)]=\"formView\"\n [class.is-scrolled]=\"isScrolled\"\n ></lib-form-header>\n <div class=\"edge-router-form-container projectable-form-container\" #formContainer>\n @if (formView === 'simple') {\n <div class=\"projectable-form-main-column form-group-row\">\n <div class=\"form-group-column three-fifths\">\n <lib-form-field-container [title]=\"'Edge Router Name'\" [label]=\"'REQUIRED'\">\n <input\n class=\"form-field-input\"\n placeholder=\"Name this edge router\"\n [ngClass]=\"{error: errors['name']}\"\n [(ngModel)]=\"formData.name\"\n autofocus\n #nameFieldInput\n />\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'Select or create Edge Router attributes'\"\n [label]=\"'OPTIONAL'\"\n [contentStyle]=\"'z-index: 99999999'\"\n [helpText]=\"'Attributes are tags applied to an resource. Apply the same tag to other Edge Routers to form a group of Edge Routers.'\"\n >\n <lib-tag-selector\n [(selectedRoleAttributes)]=\"formData.roleAttributes\"\n [availableRoleAttributes]=\"edgeRouterRoleAttributes\"\n [placeholder]=\"'Add attributes to group Edge Routers'\"\n ></lib-tag-selector>\n </lib-form-field-container>\n <ng-content select=\"[slot=column-1-slot-1]\"></ng-content>\n <lib-form-field-toggle [(toggleOn)]=\"showMore\" style=\"margin: 0px 10px\"></lib-form-field-toggle>\n @if (showMore) {\n <div class=\"form-group-column\">\n <lib-form-field-container\n [title]=\"'TUNNELER'\"\n [title2]=\"'TRAVERSAL'\"\n [layout]=\"'row'\"\n class=\"form-field-advanced\"\n >\n <div class=\"config-item\" [class.disabled]=\"!tunnelerEnabledReadOnly\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">TUNNELER ENABLED</div>\n <div (click)=\"tunnelerEnabledReadOnly && toggleTunnelerEnabled()\"\n [ngClass]=\"{ on: formData.isTunnelerEnabled,disabled: !tunnelerEnabledReadOnly }\" class=\"toggle\"\n [matTooltip]=\"!tunnelerEnabledReadOnly ? 'Disabled because already hosted by netfoundry ' : ''\"\n matTooltipPosition=\"above\" style=\"pointer-events: auto;\">\n <span [hidden]=\"!formData.isTunnelerEnabled\" class=\"on-label\">YES</span>\n <span [hidden]=\"formData.isTunnelerEnabled\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n <div class=\"config-item\">\n <div class=\"config-container toggle-container\">\n <div class=\"config-container-label\">ALLOW TRAVERSAL</div>\n <div\n (click)=\"toggleNoTraversal()\"\n [ngClass]=\"{ on: !formData.noTraversal }\"\n class=\"toggle\"\n >\n <span [hidden]=\"formData.noTraversal\" class=\"on-label\">YES</span>\n <span [hidden]=\"!formData.noTraversal\" class=\"off-label\">NO</span>\n <div class=\"switch\"></div>\n </div>\n </div>\n </div>\n </lib-form-field-container>\n @if (formData?.hostname || formData?.supportedProtocols?.tls || formData?.supportedProtocols?.wss) {\n <lib-form-field-container [showHeader]=\"false\">\n @if (formData?.hostname) {\n <div class=\"config-item\">\n <div class=\"config-item-label-container\">\n <span class=\"config-title\">Domain Name</span>\n </div>\n <div class=\"config-container domain-container\">\n <div class=\"config-container-label domain-label\">\n {{ formData?.hostname }}\n </div>\n </div>\n </div>\n }\n @if (formData?.supportedProtocols?.tls || formData?.supportedProtocols?.wss) {\n <div class=\"config-item\">\n <div class=\"config-item-label-container\">\n <span class=\"config-title\">ADVERTISE ADDRESS</span>\n </div>\n <div class=\"config-container advertise-address-container\">\n <div class=\"config-container-label advertise-address-label\">\n {{ formData?.supportedProtocols?.tls }}\n <br />\n {{ formData?.supportedProtocols?.wss }}\n </div>\n </div>\n </div>\n }\n </lib-form-field-container>\n }\n <lib-form-field-container\n [title]=\"'Custom Tags'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-custom-tags [(tags)]=\"formData.tags\"></lib-custom-tags>\n </lib-form-field-container>\n <lib-form-field-container\n [title]=\"'App Data'\"\n [label]=\"'OPTIONAL'\"\n class=\"form-field-advanced\"\n >\n <lib-json-view [(data)]=\"formData.appData\"></lib-json-view>\n </lib-form-field-container>\n </div>\n }\n </div>\n <div class=\"form-group-column two-fifths\">\n <ng-content select=\"[slot=column-2-slot-1]\"></ng-content>\n @if (hasEnrolmentToken && !extService['hideZitiRegistration']) {\n <lib-form-field-container\n [showHeader]=\"false\"\n >\n <lib-qr-code\n [identity]=\"formData\"\n [jwt]=\"formData.enrollmentJwt\"\n [token]=\"formData.enrollmentToken\"\n [expiration]=\"formData.enrollmentExpiresAt\"\n (doRefresh)=\"refreshEdgeRouter()\"\n [type]=\"'router'\"\n ></lib-qr-code>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Services'\"\n [count]=\"svc.associatedServices.length\"\n [class]=\"'hide-overflow'\"\n [helpText]=\"'Preview list of all services that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"servicesLoading\"\n [allNames]=\"svc.associatedServiceNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n @if (formData.id) {\n <lib-form-field-container\n [title]=\"'Associated Identities'\"\n [count]=\"svc.associatedIdentities.length\"\n [helpText]=\"'Preview list of all Identities that this Edge Router is associated with.'\"\n >\n <lib-preview-list\n [clickable]=\"false\"\n [isLoading]=\"identitiesLoading\"\n [allNames]=\"svc.associatedIdentityNames\"\n ></lib-preview-list>\n </lib-form-field-container>\n }\n <lib-form-field-container\n [title]=\"'API Calls'\"\n [label]=\"'OPTIONAL'\"\n >\n <div class=\"form-row\">\n <input class=\"form-field-input\" [value]=\"apiCallURL\"/>\n <div class=\"icon-copy copy-text\" (click)=\"copyToClipboard(apiCallURL)\"></div>\n </div>\n @if (formData) {\n <lib-json-view [(data)]=\"apiData\" [readOnly]=\"true\" [showCopy]=\"true\"></lib-json-view>\n }\n </lib-form-field-container>\n </div>\n </div>\n }\n @if (formView === 'raw') {\n <div class=\"form-group-column\">\n @if (formData) {\n <lib-json-view [(data)]=\"formData\"></lib-json-view>\n }\n </div>\n }\n </div>\n</div>\n@if (isLoading || !dataInit) {\n <lib-loading-indicator [isLoading]=\"isLoading || !dataInit\"></lib-loading-indicator>\n}\n", styles: [".edge-router-form-container{display:flex;flex-direction:column;height:100%;width:100%;align-items:center;gap:.9375rem}.form-field-dropdown{background-image:url(/assets/svgs/ArrowDown.svg);background-position:center right .625rem;background-repeat:no-repeat;background-size:1.125rem;padding-right:1.75rem}.disabled{opacity:.5;pointer-events:none}.toggle.disabled{cursor:not-allowed}::ng-deep .admin-toggle{width:100%;width:35%;display:flex}::ng-deep .admin-toggle .form-field-line{display:none}::ng-deep .admin-toggle .toggle{width:100%}::ng-deep .is-admin-container .form-field-title-container.title-container-2{width:35%!important}.svc-test-result{position:absolute;transition:var(--transition);height:0;width:100%;background-color:var(--background);bottom:0;font-weight:600;padding-left:.625rem;padding-right:.625rem;border-color:var(--inputBorder);border-style:solid;border-width:var(--inputBorderWidth);border-bottom-right-radius:var(--inputBorderRadius);border-bottom-left-radius:var(--inputBorderRadius);border-top-style:none}.svc-test-result.test-result-open{height:fit-content;box-shadow:0 -.125rem .6875rem 0 var(--boxShadow);padding-bottom:.9375rem;padding-top:.9375rem}.svc-test-result .close.icon-close{top:.625rem;right:.625rem;font-size:1.125rem;height:1.125rem;width:1.125rem;line-height:1.125rem}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-label{color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .form-field-line{border-color:var(--primaryColor)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle{border-color:var(--primaryColor);border-style:solid;border-width:var(--inputBorderWidth)}::ng-deep .admin-toggle .form-field-toggle-container:focus .toggle .switch{top:.0625rem}.config-container-label.domain-label,.config-container-label.advertise-address-label{text-transform:lowercase}.config-container.domain-container,.config-container.advertise-address-container{background-color:var(--stroke)}\n"] }]
|
|
17786
17883
|
}], ctorParameters: () => [{ type: SettingsService, decorators: [{
|
|
17787
17884
|
type: Inject,
|
|
17788
17885
|
args: [SETTINGS_SERVICE]
|
|
@@ -18111,8 +18208,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
18111
18208
|
|
|
18112
18209
|
class ConfigEditorComponent {
|
|
18113
18210
|
set configData(data) {
|
|
18211
|
+
if (this._configData === data) {
|
|
18212
|
+
return;
|
|
18213
|
+
}
|
|
18114
18214
|
this._configData = data;
|
|
18115
18215
|
this.initFormData();
|
|
18216
|
+
defer(() => {
|
|
18217
|
+
this.updateConfigData();
|
|
18218
|
+
});
|
|
18116
18219
|
}
|
|
18117
18220
|
;
|
|
18118
18221
|
get configData() {
|
|
@@ -18160,6 +18263,16 @@ class ConfigEditorComponent {
|
|
|
18160
18263
|
ngOnInit() {
|
|
18161
18264
|
this.createForm();
|
|
18162
18265
|
}
|
|
18266
|
+
ngAfterViewInit() {
|
|
18267
|
+
if (this.schema && this.dynamicForm) {
|
|
18268
|
+
this.createForm();
|
|
18269
|
+
if (this._configData && !isEmpty(this._configData)) {
|
|
18270
|
+
defer(() => {
|
|
18271
|
+
this.updateConfigData();
|
|
18272
|
+
});
|
|
18273
|
+
}
|
|
18274
|
+
}
|
|
18275
|
+
}
|
|
18163
18276
|
createForm() {
|
|
18164
18277
|
this.clearForm();
|
|
18165
18278
|
if (this.dynamicForm && this.schema) {
|
|
@@ -18185,20 +18298,18 @@ class ConfigEditorComponent {
|
|
|
18185
18298
|
let parentKey;
|
|
18186
18299
|
if (pName)
|
|
18187
18300
|
parentKey = pName.join('.');
|
|
18188
|
-
//if (parentKey && !this.formData[parentKey]) this.formData[parentKey] = {};
|
|
18189
18301
|
}
|
|
18190
18302
|
}
|
|
18191
18303
|
}
|
|
18192
18304
|
}
|
|
18193
18305
|
updateConfigData() {
|
|
18194
18306
|
if (!this.showJsonView) {
|
|
18195
|
-
|
|
18196
|
-
|
|
18197
|
-
|
|
18198
|
-
|
|
18199
|
-
|
|
18200
|
-
|
|
18201
|
-
});
|
|
18307
|
+
if (this.items && this.items.length > 0) {
|
|
18308
|
+
this.updateFormView(this.items, this.configData);
|
|
18309
|
+
if (!isEmpty(this.configData)) {
|
|
18310
|
+
this.configDataChange.emit(this.configData);
|
|
18311
|
+
}
|
|
18312
|
+
}
|
|
18202
18313
|
}
|
|
18203
18314
|
}
|
|
18204
18315
|
updateFormView(items, data = {}) {
|
|
@@ -18252,6 +18363,9 @@ class ConfigEditorComponent {
|
|
|
18252
18363
|
return data;
|
|
18253
18364
|
}
|
|
18254
18365
|
getConfigDataFromForm() {
|
|
18366
|
+
if (!this.items || this.items.length === 0) {
|
|
18367
|
+
return;
|
|
18368
|
+
}
|
|
18255
18369
|
const data = {};
|
|
18256
18370
|
this.addItemsToConfig(this.items, data);
|
|
18257
18371
|
this._configData = data;
|
|
@@ -18264,6 +18378,9 @@ class ConfigEditorComponent {
|
|
|
18264
18378
|
if (item.addedItems) {
|
|
18265
18379
|
data[item.key] = item.addedItems;
|
|
18266
18380
|
}
|
|
18381
|
+
else if (item?.component?.instance?.fieldValue) {
|
|
18382
|
+
data[item.key] = item.component.instance.fieldValue;
|
|
18383
|
+
}
|
|
18267
18384
|
else {
|
|
18268
18385
|
data[item.key] = [];
|
|
18269
18386
|
}
|
|
@@ -18272,7 +18389,7 @@ class ConfigEditorComponent {
|
|
|
18272
18389
|
const val = this.addItemsToConfig(item.items, {}, item.type);
|
|
18273
18390
|
let hasDefinition = false;
|
|
18274
18391
|
keys(val).forEach((key) => {
|
|
18275
|
-
if (isBoolean(val[key]) || (!isEmpty(val[key]) && !isNil(val[key]))) {
|
|
18392
|
+
if (isBoolean(val[key]) || isNumber(val[key]) || (!isEmpty(val[key]) && !isNil(val[key]))) {
|
|
18276
18393
|
hasDefinition = true;
|
|
18277
18394
|
}
|
|
18278
18395
|
});
|
|
@@ -18381,7 +18498,6 @@ class ConfigEditorComponent {
|
|
|
18381
18498
|
initFormData() {
|
|
18382
18499
|
if (!this.configDataInit && !isEmpty(this._configData) && !isEmpty(this.schema)) {
|
|
18383
18500
|
this.configDataInit = true;
|
|
18384
|
-
this.formDataChanged();
|
|
18385
18501
|
}
|
|
18386
18502
|
}
|
|
18387
18503
|
formDataChanged() {
|
|
@@ -18390,10 +18506,7 @@ class ConfigEditorComponent {
|
|
|
18390
18506
|
});
|
|
18391
18507
|
}
|
|
18392
18508
|
jsonDataChanged(event) {
|
|
18393
|
-
|
|
18394
|
-
this.configDataChange.emit(this.configData);
|
|
18395
|
-
this.updateFormView(this.items, this.configData);
|
|
18396
|
-
});
|
|
18509
|
+
this.configDataChange.emit(this.configData);
|
|
18397
18510
|
}
|
|
18398
18511
|
removeUndefinedProperties(data) {
|
|
18399
18512
|
if (Array.isArray(data)) {
|
|
@@ -18409,11 +18522,11 @@ class ConfigEditorComponent {
|
|
|
18409
18522
|
return data;
|
|
18410
18523
|
}
|
|
18411
18524
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigEditorComponent, deps: [{ token: SchemaService }, { token: GrowlerService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18412
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: ConfigEditorComponent, isStandalone: false, selector: "lib-config-editor", inputs: { configErrors: "configErrors", configData: "configData", showJsonView: "showJsonView", schema: "schema" }, outputs: { configErrorsChange: "configErrorsChange", configDataChange: "configDataChange" }, viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: ["dynamicform"], descendants: true, read: ViewContainerRef }, { propertyName: "editor", first: true, predicate: JsonEditorComponent, descendants: true }], ngImport: i0, template: "<div class=\"form-field-extended-fields\" [hidden]=\"showJsonView\" (mouseup)=\"formDataChangedDebounced($event)\" (keyup)=\"formDataChangedDebounced($event)\" (clickOutside)=\"formDataChangedDebounced($event)\">\n <ng-container #dynamicform></ng-container>\n</div>\n@if (showJsonView && !hideConfigJSON) {\n <lib-json-view (dataChange)=\"jsonDataChangedDebounced($event)\" [(data)]=\"configData\"></lib-json-view>\n}\n@if (showJsonView && hideConfigJSON) {\n <lib-json-view [(data)]=\"configData\"></lib-json-view>\n}", styles: [""], dependencies: [{ kind: "directive", type: i1$4.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { kind: "component", type: JsonViewComponent, selector: "lib-json-view", inputs: ["data", "schema", "readOnly", "jsonInvalid", "showCopy", "showLineNumbers"], outputs: ["dataChange", "jsonChange", "jsonInvalidChange"] }] }); }
|
|
18525
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: ConfigEditorComponent, isStandalone: false, selector: "lib-config-editor", inputs: { configErrors: "configErrors", configData: "configData", showJsonView: "showJsonView", schema: "schema" }, outputs: { configErrorsChange: "configErrorsChange", configDataChange: "configDataChange" }, viewQueries: [{ propertyName: "dynamicForm", first: true, predicate: ["dynamicform"], descendants: true, read: ViewContainerRef }, { propertyName: "editor", first: true, predicate: JsonEditorComponent, descendants: true }], ngImport: i0, template: "<div class=\"form-field-extended-fields\" [hidden]=\"showJsonView\" (mouseup)=\"formDataChangedDebounced($event)\" (keyup)=\"formDataChangedDebounced($event)\" (clickOutside)=\"formDataChangedDebounced($event)\">\n <ng-container #dynamicform></ng-container>\n</div>\n@if (showJsonView && !hideConfigJSON) {\n <lib-json-view (dataChange)=\"jsonDataChangedDebounced($event)\" [(data)]=\"configData\"></lib-json-view>\n}\n@if (showJsonView && hideConfigJSON) {\n <lib-json-view [(data)]=\"configData\"></lib-json-view>\n}\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.ClickOutsideDirective, selector: "[clickOutside]", inputs: ["clickOutsideEnabled", "attachOutsideOnClick", "delayClickOutsideInit", "emitOnBlur", "exclude", "excludeBeforeClick", "clickOutsideEvents"], outputs: ["clickOutside"] }, { kind: "component", type: JsonViewComponent, selector: "lib-json-view", inputs: ["data", "schema", "readOnly", "jsonInvalid", "showCopy", "showLineNumbers"], outputs: ["dataChange", "jsonChange", "jsonInvalidChange"] }] }); }
|
|
18413
18526
|
}
|
|
18414
18527
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigEditorComponent, decorators: [{
|
|
18415
18528
|
type: Component,
|
|
18416
|
-
args: [{ selector: 'lib-config-editor', standalone: false, template: "<div class=\"form-field-extended-fields\" [hidden]=\"showJsonView\" (mouseup)=\"formDataChangedDebounced($event)\" (keyup)=\"formDataChangedDebounced($event)\" (clickOutside)=\"formDataChangedDebounced($event)\">\n <ng-container #dynamicform></ng-container>\n</div>\n@if (showJsonView && !hideConfigJSON) {\n <lib-json-view (dataChange)=\"jsonDataChangedDebounced($event)\" [(data)]=\"configData\"></lib-json-view>\n}\n@if (showJsonView && hideConfigJSON) {\n <lib-json-view [(data)]=\"configData\"></lib-json-view>\n}" }]
|
|
18529
|
+
args: [{ selector: 'lib-config-editor', standalone: false, template: "<div class=\"form-field-extended-fields\" [hidden]=\"showJsonView\" (mouseup)=\"formDataChangedDebounced($event)\" (keyup)=\"formDataChangedDebounced($event)\" (clickOutside)=\"formDataChangedDebounced($event)\">\n <ng-container #dynamicform></ng-container>\n</div>\n@if (showJsonView && !hideConfigJSON) {\n <lib-json-view (dataChange)=\"jsonDataChangedDebounced($event)\" [(data)]=\"configData\"></lib-json-view>\n}\n@if (showJsonView && hideConfigJSON) {\n <lib-json-view [(data)]=\"configData\"></lib-json-view>\n}\n" }]
|
|
18417
18530
|
}], ctorParameters: () => [{ type: SchemaService }, { type: GrowlerService }], propDecorators: { configErrors: [{
|
|
18418
18531
|
type: Input
|
|
18419
18532
|
}], configErrorsChange: [{
|
|
@@ -20298,10 +20411,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
20298
20411
|
limitations under the License.
|
|
20299
20412
|
*/
|
|
20300
20413
|
class EdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
20301
|
-
constructor(svc, filterService, dialogForm, tabNames, consoleEvents) {
|
|
20302
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
20414
|
+
constructor(svc, filterService, dialogForm, tabNames, consoleEvents, extService) {
|
|
20415
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
20303
20416
|
this.svc = svc;
|
|
20304
20417
|
this.tabNames = tabNames;
|
|
20418
|
+
this.extService = extService;
|
|
20305
20419
|
this.routerRoleAttributes = [];
|
|
20306
20420
|
this.identityRoleAttributes = [];
|
|
20307
20421
|
this.formDataChanged = false;
|
|
@@ -20334,6 +20448,7 @@ class EdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
|
20334
20448
|
}
|
|
20335
20449
|
}
|
|
20336
20450
|
tableAction(event) {
|
|
20451
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
20337
20452
|
switch (event?.action) {
|
|
20338
20453
|
case 'toggleAll':
|
|
20339
20454
|
case 'toggleItem':
|
|
@@ -20364,6 +20479,14 @@ class EdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
|
20364
20479
|
break;
|
|
20365
20480
|
}
|
|
20366
20481
|
}
|
|
20482
|
+
trackMenuAction(action, item) {
|
|
20483
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
20484
|
+
action,
|
|
20485
|
+
page: 'edge-router-policy',
|
|
20486
|
+
item,
|
|
20487
|
+
type: 'menu-action'
|
|
20488
|
+
});
|
|
20489
|
+
}
|
|
20367
20490
|
getRoleAttributes() {
|
|
20368
20491
|
this.svc.getEdgeRouterRoleAttributes().then((result) => {
|
|
20369
20492
|
this.routerRoleAttributes = result.data;
|
|
@@ -20390,13 +20513,16 @@ class EdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
|
20390
20513
|
serviceTypeSelected(event) {
|
|
20391
20514
|
this.svc.serviceType = event;
|
|
20392
20515
|
}
|
|
20393
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: EdgeRouterPoliciesPageComponent, deps: [{ token: EdgeRouterPoliciesPageService }, { token: DataTableFilterService }, { token: i5.MatDialog }, { token: TabNameService }, { token: ConsoleEventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20516
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: EdgeRouterPoliciesPageComponent, deps: [{ token: EdgeRouterPoliciesPageService }, { token: DataTableFilterService }, { token: i5.MatDialog }, { token: TabNameService }, { token: ConsoleEventsService }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20394
20517
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: EdgeRouterPoliciesPageComponent, isStandalone: false, selector: "lib-edge-router-policies-page", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container edge-router-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'edge-router-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Edge Router Policies defined, Click the plus to add a Edge Router Policy.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
20395
20518
|
}
|
|
20396
20519
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: EdgeRouterPoliciesPageComponent, decorators: [{
|
|
20397
20520
|
type: Component,
|
|
20398
20521
|
args: [{ selector: 'lib-edge-router-policies-page', standalone: false, template: "<div class=\"ziti-page-container edge-router-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'edge-router-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Edge Router Policies defined, Click the plus to add a Edge Router Policy.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n" }]
|
|
20399
|
-
}], ctorParameters: () => [{ type: EdgeRouterPoliciesPageService }, { type: DataTableFilterService }, { type: i5.MatDialog }, { type: TabNameService }, { type: ConsoleEventsService }
|
|
20522
|
+
}], ctorParameters: () => [{ type: EdgeRouterPoliciesPageService }, { type: DataTableFilterService }, { type: i5.MatDialog }, { type: TabNameService }, { type: ConsoleEventsService }, { type: undefined, decorators: [{
|
|
20523
|
+
type: Inject,
|
|
20524
|
+
args: [SHAREDZ_EXTENSION]
|
|
20525
|
+
}] }] });
|
|
20400
20526
|
|
|
20401
20527
|
/*
|
|
20402
20528
|
Copyright NetFoundry Inc.
|
|
@@ -20842,10 +20968,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
20842
20968
|
limitations under the License.
|
|
20843
20969
|
*/
|
|
20844
20970
|
class ServicePoliciesPageComponent extends ListPageComponent {
|
|
20845
|
-
constructor(svc, filterService, dialogForm, tabNames, consoleEvents) {
|
|
20846
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
20971
|
+
constructor(svc, filterService, dialogForm, tabNames, consoleEvents, extService) {
|
|
20972
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
20847
20973
|
this.svc = svc;
|
|
20848
20974
|
this.tabNames = tabNames;
|
|
20975
|
+
this.extService = extService;
|
|
20849
20976
|
this.serviceType = '';
|
|
20850
20977
|
this.serviceRoleAttributes = [];
|
|
20851
20978
|
this.identityRoleAttributes = [];
|
|
@@ -20879,6 +21006,7 @@ class ServicePoliciesPageComponent extends ListPageComponent {
|
|
|
20879
21006
|
}
|
|
20880
21007
|
}
|
|
20881
21008
|
tableAction(event) {
|
|
21009
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
20882
21010
|
switch (event?.action) {
|
|
20883
21011
|
case 'toggleAll':
|
|
20884
21012
|
case 'toggleItem':
|
|
@@ -20904,6 +21032,14 @@ class ServicePoliciesPageComponent extends ListPageComponent {
|
|
|
20904
21032
|
break;
|
|
20905
21033
|
}
|
|
20906
21034
|
}
|
|
21035
|
+
trackMenuAction(action, item) {
|
|
21036
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
21037
|
+
action,
|
|
21038
|
+
page: 'service-policy',
|
|
21039
|
+
item,
|
|
21040
|
+
type: 'menu-action'
|
|
21041
|
+
});
|
|
21042
|
+
}
|
|
20907
21043
|
getRoleAttributes() {
|
|
20908
21044
|
this.svc.getServiceRoleAttributes().then((result) => {
|
|
20909
21045
|
this.serviceRoleAttributes = result.data;
|
|
@@ -20930,13 +21066,16 @@ class ServicePoliciesPageComponent extends ListPageComponent {
|
|
|
20930
21066
|
serviceTypeSelected(event) {
|
|
20931
21067
|
this.svc.serviceType = event;
|
|
20932
21068
|
}
|
|
20933
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ServicePoliciesPageComponent, deps: [{ token: ServicePoliciesPageService }, { token: DataTableFilterService }, { token: i5.MatDialog }, { token: TabNameService }, { token: ConsoleEventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21069
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ServicePoliciesPageComponent, deps: [{ token: ServicePoliciesPageService }, { token: DataTableFilterService }, { token: i5.MatDialog }, { token: TabNameService }, { token: ConsoleEventsService }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20934
21070
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: ServicePoliciesPageComponent, isStandalone: false, selector: "lib-service-policies-page", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-service-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'service-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Service Policies defined, Click the plus to add a Service Policy.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
20935
21071
|
}
|
|
20936
21072
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ServicePoliciesPageComponent, decorators: [{
|
|
20937
21073
|
type: Component,
|
|
20938
21074
|
args: [{ selector: 'lib-service-policies-page', standalone: false, template: "<div class=\"ziti-page-container ziti-service-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'service-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Service Policies defined, Click the plus to add a Service Policy.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n" }]
|
|
20939
|
-
}], ctorParameters: () => [{ type: ServicePoliciesPageService }, { type: DataTableFilterService }, { type: i5.MatDialog }, { type: TabNameService }, { type: ConsoleEventsService }
|
|
21075
|
+
}], ctorParameters: () => [{ type: ServicePoliciesPageService }, { type: DataTableFilterService }, { type: i5.MatDialog }, { type: TabNameService }, { type: ConsoleEventsService }, { type: undefined, decorators: [{
|
|
21076
|
+
type: Inject,
|
|
21077
|
+
args: [SHAREDZ_EXTENSION]
|
|
21078
|
+
}] }] });
|
|
20940
21079
|
|
|
20941
21080
|
class ServicePolicyFormComponent extends ProjectableForm {
|
|
20942
21081
|
constructor(settingsService, svc, zitiService, growlerService, extService, router, route, location) {
|
|
@@ -21986,10 +22125,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
21986
22125
|
limitations under the License.
|
|
21987
22126
|
*/
|
|
21988
22127
|
class ServiceEdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
21989
|
-
constructor(svc, filterService, dialogForm, tabNames, consoleEvents) {
|
|
21990
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
22128
|
+
constructor(svc, filterService, dialogForm, tabNames, consoleEvents, extService) {
|
|
22129
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
21991
22130
|
this.svc = svc;
|
|
21992
22131
|
this.tabNames = tabNames;
|
|
22132
|
+
this.extService = extService;
|
|
21993
22133
|
this.routerRoleAttributes = [];
|
|
21994
22134
|
this.serviceRoleAttributes = [];
|
|
21995
22135
|
this.formDataChanged = false;
|
|
@@ -22022,6 +22162,7 @@ class ServiceEdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
|
22022
22162
|
}
|
|
22023
22163
|
}
|
|
22024
22164
|
tableAction(event) {
|
|
22165
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
22025
22166
|
switch (event?.action) {
|
|
22026
22167
|
case 'toggleAll':
|
|
22027
22168
|
case 'toggleItem':
|
|
@@ -22047,6 +22188,14 @@ class ServiceEdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
|
22047
22188
|
break;
|
|
22048
22189
|
}
|
|
22049
22190
|
}
|
|
22191
|
+
trackMenuAction(action, item) {
|
|
22192
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
22193
|
+
action,
|
|
22194
|
+
page: 'service-edge-router-policy',
|
|
22195
|
+
item,
|
|
22196
|
+
type: 'menu-action'
|
|
22197
|
+
});
|
|
22198
|
+
}
|
|
22050
22199
|
getRoleAttributes() {
|
|
22051
22200
|
this.svc.getEdgeRouterRoleAttributes().then((result) => {
|
|
22052
22201
|
this.routerRoleAttributes = result.data;
|
|
@@ -22072,13 +22221,16 @@ class ServiceEdgeRouterPoliciesPageComponent extends ListPageComponent {
|
|
|
22072
22221
|
serviceTypeSelected(event) {
|
|
22073
22222
|
this.svc.serviceType = event;
|
|
22074
22223
|
}
|
|
22075
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ServiceEdgeRouterPoliciesPageComponent, deps: [{ token: ServiceEdgeRouterPoliciesPageService }, { token: DataTableFilterService }, { token: i5.MatDialog }, { token: TabNameService }, { token: ConsoleEventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22224
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ServiceEdgeRouterPoliciesPageComponent, deps: [{ token: ServiceEdgeRouterPoliciesPageService }, { token: DataTableFilterService }, { token: i5.MatDialog }, { token: TabNameService }, { token: ConsoleEventsService }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22076
22225
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: ServiceEdgeRouterPoliciesPageComponent, isStandalone: false, selector: "lib-service-edge-router-policies-page", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container service-edge-router-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'service-edge-router-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Service Edge Router Policies defined, Click the plus to add a Service Edge Router Policy.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
22077
22226
|
}
|
|
22078
22227
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ServiceEdgeRouterPoliciesPageComponent, decorators: [{
|
|
22079
22228
|
type: Component,
|
|
22080
22229
|
args: [{ selector: 'lib-service-edge-router-policies-page', standalone: false, template: "<div class=\"ziti-page-container service-edge-router-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'service-edge-router-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Service Edge Router Policies defined, Click the plus to add a Service Edge Router Policy.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n" }]
|
|
22081
|
-
}], ctorParameters: () => [{ type: ServiceEdgeRouterPoliciesPageService }, { type: DataTableFilterService }, { type: i5.MatDialog }, { type: TabNameService }, { type: ConsoleEventsService }
|
|
22230
|
+
}], ctorParameters: () => [{ type: ServiceEdgeRouterPoliciesPageService }, { type: DataTableFilterService }, { type: i5.MatDialog }, { type: TabNameService }, { type: ConsoleEventsService }, { type: undefined, decorators: [{
|
|
22231
|
+
type: Inject,
|
|
22232
|
+
args: [SHAREDZ_EXTENSION]
|
|
22233
|
+
}] }] });
|
|
22082
22234
|
|
|
22083
22235
|
class ServiceEdgeRouterPolicy {
|
|
22084
22236
|
constructor() {
|
|
@@ -22739,10 +22891,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
22739
22891
|
limitations under the License.
|
|
22740
22892
|
*/
|
|
22741
22893
|
class TerminatorsPageComponent extends ListPageComponent {
|
|
22742
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
22743
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
22894
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
22895
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
22744
22896
|
this.svc = svc;
|
|
22745
22897
|
this.tabNames = tabNames;
|
|
22898
|
+
this.extService = extService;
|
|
22746
22899
|
this.title = 'Terminators';
|
|
22747
22900
|
this.formDataChanged = false;
|
|
22748
22901
|
}
|
|
@@ -22770,6 +22923,7 @@ class TerminatorsPageComponent extends ListPageComponent {
|
|
|
22770
22923
|
}
|
|
22771
22924
|
}
|
|
22772
22925
|
tableAction(event) {
|
|
22926
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
22773
22927
|
switch (event?.action) {
|
|
22774
22928
|
case 'toggleAll':
|
|
22775
22929
|
case 'toggleItem':
|
|
@@ -22788,6 +22942,14 @@ class TerminatorsPageComponent extends ListPageComponent {
|
|
|
22788
22942
|
break;
|
|
22789
22943
|
}
|
|
22790
22944
|
}
|
|
22945
|
+
trackMenuAction(action, item) {
|
|
22946
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
22947
|
+
action,
|
|
22948
|
+
page: 'terminator',
|
|
22949
|
+
item,
|
|
22950
|
+
type: 'menu-action'
|
|
22951
|
+
});
|
|
22952
|
+
}
|
|
22791
22953
|
deleteItem(item) {
|
|
22792
22954
|
this.openBulkDelete([item], 'terminator');
|
|
22793
22955
|
}
|
|
@@ -22800,13 +22962,16 @@ class TerminatorsPageComponent extends ListPageComponent {
|
|
|
22800
22962
|
dataChanged(event) {
|
|
22801
22963
|
this.formDataChanged = event;
|
|
22802
22964
|
}
|
|
22803
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: TerminatorsPageComponent, deps: [{ token: TerminatorsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22965
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: TerminatorsPageComponent, deps: [{ token: TerminatorsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22804
22966
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: TerminatorsPageComponent, isStandalone: false, selector: "lib-configurations", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-terminators-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [hideAction]=\"true\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n <lib-data-table [tableId]=\"'terminators'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No terminators defined, Click the plus to add a terminator.'\"\n [filterApplied]=\"filterApplied\"\n [filterName]=\"'Address'\"\n [filterColumn]=\"'address'\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n [options]=\"{noSelect: true, noMenu: false}\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
22805
22967
|
}
|
|
22806
22968
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: TerminatorsPageComponent, decorators: [{
|
|
22807
22969
|
type: Component,
|
|
22808
22970
|
args: [{ selector: 'lib-configurations', standalone: false, template: "<div class=\"ziti-page-container ziti-terminators-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [hideAction]=\"true\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n <lib-data-table [tableId]=\"'terminators'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No terminators defined, Click the plus to add a terminator.'\"\n [filterApplied]=\"filterApplied\"\n [filterName]=\"'Address'\"\n [filterColumn]=\"'address'\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n [options]=\"{noSelect: true, noMenu: false}\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n" }]
|
|
22809
|
-
}], ctorParameters: () => [{ type: TerminatorsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
22971
|
+
}], ctorParameters: () => [{ type: TerminatorsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
22972
|
+
type: Inject,
|
|
22973
|
+
args: [SHAREDZ_EXTENSION]
|
|
22974
|
+
}] }] });
|
|
22810
22975
|
|
|
22811
22976
|
class Config {
|
|
22812
22977
|
constructor() {
|
|
@@ -23372,10 +23537,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
23372
23537
|
limitations under the License.
|
|
23373
23538
|
*/
|
|
23374
23539
|
class JwtSignersPageComponent extends ListPageComponent {
|
|
23375
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
23376
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
23540
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
23541
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
23377
23542
|
this.svc = svc;
|
|
23378
23543
|
this.tabNames = tabNames;
|
|
23544
|
+
this.extService = extService;
|
|
23379
23545
|
this.title = 'JWT Signers';
|
|
23380
23546
|
this.formDataChanged = false;
|
|
23381
23547
|
}
|
|
@@ -23430,6 +23596,7 @@ class JwtSignersPageComponent extends ListPageComponent {
|
|
|
23430
23596
|
});
|
|
23431
23597
|
}
|
|
23432
23598
|
tableAction(event) {
|
|
23599
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
23433
23600
|
switch (event?.action) {
|
|
23434
23601
|
case 'toggleAll':
|
|
23435
23602
|
case 'toggleItem':
|
|
@@ -23449,6 +23616,14 @@ class JwtSignersPageComponent extends ListPageComponent {
|
|
|
23449
23616
|
break;
|
|
23450
23617
|
}
|
|
23451
23618
|
}
|
|
23619
|
+
trackMenuAction(action, item) {
|
|
23620
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
23621
|
+
action,
|
|
23622
|
+
page: 'jwt-signer',
|
|
23623
|
+
item,
|
|
23624
|
+
type: 'menu-action'
|
|
23625
|
+
});
|
|
23626
|
+
}
|
|
23452
23627
|
checkForAssociatedEntities(selectedItems) {
|
|
23453
23628
|
this.svc.getTableData('auth-policies', this.svc.DEFAULT_PAGING).then((policies) => {
|
|
23454
23629
|
const signersWithAssociations = [];
|
|
@@ -23494,13 +23669,16 @@ class JwtSignersPageComponent extends ListPageComponent {
|
|
|
23494
23669
|
}
|
|
23495
23670
|
return filename;
|
|
23496
23671
|
}
|
|
23497
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: JwtSignersPageComponent, deps: [{ token: JwtSignersPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23672
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: JwtSignersPageComponent, deps: [{ token: JwtSignersPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
23498
23673
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: JwtSignersPageComponent, isStandalone: false, selector: "lib-jwt-signers", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-configs-container\">\n @if (_networkJwt) {\n <a\n class=\"network-jwt-link save-button\"\n href=\"data:application/ziti-jwt;charset=utf-8,{{networkJwt}}\"\n download=\"{{networkJwtFilename}}.jwt\"\n >\n Download Network JWT\n </a>\n }\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'ext-jwt-signers'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Configurations defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [".configurations{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}.network-jwt-link{position:absolute;right:5.625rem;top:1.5625rem;z-index:10001;height:var(--buttonHeightSmall);padding-left:var(--buttonImagePaddingSmall);background-position:var(--buttonImagePositionSmall);background-image:url(/assets/svgs/DownloadKey.svg);background-repeat:no-repeat;background-size:var(--buttonImageSizeSmall);color:var(--white)}\n"], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
23499
23674
|
}
|
|
23500
23675
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: JwtSignersPageComponent, decorators: [{
|
|
23501
23676
|
type: Component,
|
|
23502
23677
|
args: [{ selector: 'lib-jwt-signers', standalone: false, template: "<div class=\"ziti-page-container ziti-configs-container\">\n @if (_networkJwt) {\n <a\n class=\"network-jwt-link save-button\"\n href=\"data:application/ziti-jwt;charset=utf-8,{{networkJwt}}\"\n download=\"{{networkJwtFilename}}.jwt\"\n >\n Download Network JWT\n </a>\n }\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'ext-jwt-signers'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Configurations defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [".configurations{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}.network-jwt-link{position:absolute;right:5.625rem;top:1.5625rem;z-index:10001;height:var(--buttonHeightSmall);padding-left:var(--buttonImagePaddingSmall);background-position:var(--buttonImagePositionSmall);background-image:url(/assets/svgs/DownloadKey.svg);background-repeat:no-repeat;background-size:var(--buttonImageSizeSmall);color:var(--white)}\n"] }]
|
|
23503
|
-
}], ctorParameters: () => [{ type: JwtSignersPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
23678
|
+
}], ctorParameters: () => [{ type: JwtSignersPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
23679
|
+
type: Inject,
|
|
23680
|
+
args: [SHAREDZ_EXTENSION]
|
|
23681
|
+
}] }] });
|
|
23504
23682
|
|
|
23505
23683
|
class JwtSigner {
|
|
23506
23684
|
constructor() {
|
|
@@ -24394,10 +24572,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
24394
24572
|
limitations under the License.
|
|
24395
24573
|
*/
|
|
24396
24574
|
class AuthPoliciesPageComponent extends ListPageComponent {
|
|
24397
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
24398
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
24575
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
24576
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
24399
24577
|
this.svc = svc;
|
|
24400
24578
|
this.tabNames = tabNames;
|
|
24579
|
+
this.extService = extService;
|
|
24401
24580
|
this.title = 'Auth Policies';
|
|
24402
24581
|
this.formDataChanged = false;
|
|
24403
24582
|
}
|
|
@@ -24434,6 +24613,7 @@ class AuthPoliciesPageComponent extends ListPageComponent {
|
|
|
24434
24613
|
}
|
|
24435
24614
|
}
|
|
24436
24615
|
tableAction(event) {
|
|
24616
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
24437
24617
|
switch (event?.action) {
|
|
24438
24618
|
case 'toggleAll':
|
|
24439
24619
|
case 'toggleItem':
|
|
@@ -24468,6 +24648,14 @@ class AuthPoliciesPageComponent extends ListPageComponent {
|
|
|
24468
24648
|
break;
|
|
24469
24649
|
}
|
|
24470
24650
|
}
|
|
24651
|
+
trackMenuAction(action, item) {
|
|
24652
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
24653
|
+
action,
|
|
24654
|
+
page: 'auth-policy',
|
|
24655
|
+
item,
|
|
24656
|
+
type: 'menu-action'
|
|
24657
|
+
});
|
|
24658
|
+
}
|
|
24471
24659
|
deleteItem(item) {
|
|
24472
24660
|
this.openBulkDelete([item], 'auth-policy');
|
|
24473
24661
|
}
|
|
@@ -24480,13 +24668,16 @@ class AuthPoliciesPageComponent extends ListPageComponent {
|
|
|
24480
24668
|
dataChanged(event) {
|
|
24481
24669
|
this.formDataChanged = event;
|
|
24482
24670
|
}
|
|
24483
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: AuthPoliciesPageComponent, deps: [{ token: AuthPoliciesPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24671
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: AuthPoliciesPageComponent, deps: [{ token: AuthPoliciesPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24484
24672
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.17", type: AuthPoliciesPageComponent, isStandalone: false, selector: "lib-auth-policies", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-auth-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'auth-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Auth Policies defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n", styles: [".configurations{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}\n"], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }] }); }
|
|
24485
24673
|
}
|
|
24486
24674
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: AuthPoliciesPageComponent, decorators: [{
|
|
24487
24675
|
type: Component,
|
|
24488
24676
|
args: [{ selector: 'lib-auth-policies', standalone: false, template: "<div class=\"ziti-page-container ziti-auth-policies-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'auth-policies'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Auth Policies defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n", styles: [".configurations{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}\n"] }]
|
|
24489
|
-
}], ctorParameters: () => [{ type: AuthPoliciesPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
24677
|
+
}], ctorParameters: () => [{ type: AuthPoliciesPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
24678
|
+
type: Inject,
|
|
24679
|
+
args: [SHAREDZ_EXTENSION]
|
|
24680
|
+
}] }] });
|
|
24490
24681
|
|
|
24491
24682
|
class AuthPolicy {
|
|
24492
24683
|
constructor() {
|
|
@@ -25164,10 +25355,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
25164
25355
|
limitations under the License.
|
|
25165
25356
|
*/
|
|
25166
25357
|
class CertificateAuthoritiesPageComponent extends ListPageComponent {
|
|
25167
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
25168
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
25358
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
25359
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
25169
25360
|
this.svc = svc;
|
|
25170
25361
|
this.tabNames = tabNames;
|
|
25362
|
+
this.extService = extService;
|
|
25171
25363
|
this.title = 'Certificate Authorities';
|
|
25172
25364
|
this.formDataChanged = false;
|
|
25173
25365
|
}
|
|
@@ -25195,6 +25387,7 @@ class CertificateAuthoritiesPageComponent extends ListPageComponent {
|
|
|
25195
25387
|
}
|
|
25196
25388
|
}
|
|
25197
25389
|
tableAction(event) {
|
|
25390
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
25198
25391
|
switch (event?.action) {
|
|
25199
25392
|
case 'toggleAll':
|
|
25200
25393
|
case 'toggleItem':
|
|
@@ -25222,6 +25415,14 @@ class CertificateAuthoritiesPageComponent extends ListPageComponent {
|
|
|
25222
25415
|
break;
|
|
25223
25416
|
}
|
|
25224
25417
|
}
|
|
25418
|
+
trackMenuAction(action, item) {
|
|
25419
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
25420
|
+
action,
|
|
25421
|
+
page: 'certificate-authority',
|
|
25422
|
+
item,
|
|
25423
|
+
type: 'menu-action'
|
|
25424
|
+
});
|
|
25425
|
+
}
|
|
25225
25426
|
deleteItem(item) {
|
|
25226
25427
|
this.openBulkDelete([item], 'certificate authority');
|
|
25227
25428
|
}
|
|
@@ -25247,13 +25448,16 @@ class CertificateAuthoritiesPageComponent extends ListPageComponent {
|
|
|
25247
25448
|
});
|
|
25248
25449
|
super.gridReady(event);
|
|
25249
25450
|
}
|
|
25250
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: CertificateAuthoritiesPageComponent, deps: [{ token: CertificateAuthoritiesPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25451
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: CertificateAuthoritiesPageComponent, deps: [{ token: CertificateAuthoritiesPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25251
25452
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: CertificateAuthoritiesPageComponent, isStandalone: false, selector: "lib-auth-policies", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-cert-authorities-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'certificate-authorities'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Certificate Authorities defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [".certificate-authorities{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}\n"], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
25252
25453
|
}
|
|
25253
25454
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: CertificateAuthoritiesPageComponent, decorators: [{
|
|
25254
25455
|
type: Component,
|
|
25255
25456
|
args: [{ selector: 'lib-auth-policies', standalone: false, template: "<div class=\"ziti-page-container ziti-cert-authorities-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'certificate-authorities'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Certificate Authorities defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [".certificate-authorities{width:100%;height:100%;display:flex;flex-direction:column;position:relative;flex:1 1 auto}\n"] }]
|
|
25256
|
-
}], ctorParameters: () => [{ type: CertificateAuthoritiesPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
25457
|
+
}], ctorParameters: () => [{ type: CertificateAuthoritiesPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
25458
|
+
type: Inject,
|
|
25459
|
+
args: [SHAREDZ_EXTENSION]
|
|
25460
|
+
}] }] });
|
|
25257
25461
|
|
|
25258
25462
|
class CertificateAuthority {
|
|
25259
25463
|
constructor() {
|
|
@@ -26214,10 +26418,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
26214
26418
|
limitations under the License.
|
|
26215
26419
|
*/
|
|
26216
26420
|
class ConfigTypesPageComponent extends ListPageComponent {
|
|
26217
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
26218
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
26421
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
26422
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
26219
26423
|
this.svc = svc;
|
|
26220
26424
|
this.tabNames = tabNames;
|
|
26425
|
+
this.extService = extService;
|
|
26221
26426
|
this.title = 'Config Types';
|
|
26222
26427
|
this.formDataChanged = false;
|
|
26223
26428
|
this.reservedNames = ['host.v1', 'host.v2', 'intercept.v1', 'ziti-tunneler-client.v1', 'ziti-tunneler-server.v1'];
|
|
@@ -26246,6 +26451,7 @@ class ConfigTypesPageComponent extends ListPageComponent {
|
|
|
26246
26451
|
}
|
|
26247
26452
|
}
|
|
26248
26453
|
tableAction(event) {
|
|
26454
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
26249
26455
|
switch (event?.action) {
|
|
26250
26456
|
case 'toggleAll':
|
|
26251
26457
|
case 'toggleItem':
|
|
@@ -26270,6 +26476,14 @@ class ConfigTypesPageComponent extends ListPageComponent {
|
|
|
26270
26476
|
break;
|
|
26271
26477
|
}
|
|
26272
26478
|
}
|
|
26479
|
+
trackMenuAction(action, item) {
|
|
26480
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
26481
|
+
action,
|
|
26482
|
+
page: 'config-type',
|
|
26483
|
+
item,
|
|
26484
|
+
type: 'menu-action'
|
|
26485
|
+
});
|
|
26486
|
+
}
|
|
26273
26487
|
deleteItem(item) {
|
|
26274
26488
|
this.openBulkDelete([item], 'config type');
|
|
26275
26489
|
}
|
|
@@ -26307,13 +26521,16 @@ class ConfigTypesPageComponent extends ListPageComponent {
|
|
|
26307
26521
|
}
|
|
26308
26522
|
});
|
|
26309
26523
|
}
|
|
26310
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigTypesPageComponent, deps: [{ token: ConfigTypesPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26524
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigTypesPageComponent, deps: [{ token: ConfigTypesPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26311
26525
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: ConfigTypesPageComponent, isStandalone: false, selector: "lib-configurations", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-config-types-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'config-types'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Config Types defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
26312
26526
|
}
|
|
26313
26527
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: ConfigTypesPageComponent, decorators: [{
|
|
26314
26528
|
type: Component,
|
|
26315
26529
|
args: [{ selector: 'lib-configurations', standalone: false, template: "<div class=\"ziti-page-container ziti-config-types-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'config-types'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Config Types defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}" }]
|
|
26316
|
-
}], ctorParameters: () => [{ type: ConfigTypesPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
26530
|
+
}], ctorParameters: () => [{ type: ConfigTypesPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
26531
|
+
type: Inject,
|
|
26532
|
+
args: [SHAREDZ_EXTENSION]
|
|
26533
|
+
}] }] });
|
|
26317
26534
|
|
|
26318
26535
|
class ConfigType {
|
|
26319
26536
|
constructor() {
|
|
@@ -26828,10 +27045,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
26828
27045
|
limitations under the License.
|
|
26829
27046
|
*/
|
|
26830
27047
|
class PostureChecksPageComponent extends ListPageComponent {
|
|
26831
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
26832
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
27048
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
27049
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
26833
27050
|
this.svc = svc;
|
|
26834
27051
|
this.tabNames = tabNames;
|
|
27052
|
+
this.extService = extService;
|
|
26835
27053
|
this.title = 'Posture Checks';
|
|
26836
27054
|
this.formDataChanged = false;
|
|
26837
27055
|
}
|
|
@@ -26859,6 +27077,7 @@ class PostureChecksPageComponent extends ListPageComponent {
|
|
|
26859
27077
|
}
|
|
26860
27078
|
}
|
|
26861
27079
|
tableAction(event) {
|
|
27080
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
26862
27081
|
switch (event?.action) {
|
|
26863
27082
|
case 'toggleAll':
|
|
26864
27083
|
case 'toggleItem':
|
|
@@ -26883,6 +27102,14 @@ class PostureChecksPageComponent extends ListPageComponent {
|
|
|
26883
27102
|
break;
|
|
26884
27103
|
}
|
|
26885
27104
|
}
|
|
27105
|
+
trackMenuAction(action, item) {
|
|
27106
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
27107
|
+
action,
|
|
27108
|
+
page: 'posture-check',
|
|
27109
|
+
item,
|
|
27110
|
+
type: 'menu-action'
|
|
27111
|
+
});
|
|
27112
|
+
}
|
|
26886
27113
|
deleteItem(item) {
|
|
26887
27114
|
this.openBulkDelete([item], 'posture check');
|
|
26888
27115
|
}
|
|
@@ -26895,13 +27122,16 @@ class PostureChecksPageComponent extends ListPageComponent {
|
|
|
26895
27122
|
dataChanged(event) {
|
|
26896
27123
|
this.formDataChanged = event;
|
|
26897
27124
|
}
|
|
26898
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: PostureChecksPageComponent, deps: [{ token: PostureChecksPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27125
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: PostureChecksPageComponent, deps: [{ token: PostureChecksPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26899
27126
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: PostureChecksPageComponent, isStandalone: false, selector: "lib-configurations", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-posture-checks-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'posture-checks'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Posture Checks defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
26900
27127
|
}
|
|
26901
27128
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: PostureChecksPageComponent, decorators: [{
|
|
26902
27129
|
type: Component,
|
|
26903
27130
|
args: [{ selector: 'lib-configurations', standalone: false, template: "<div class=\"ziti-page-container ziti-posture-checks-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [showAdd]=\"!itemsSelected\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'posture-checks'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Posture Checks defined, Click the plus to add a Configuration.'\"\n [filterApplied]=\"filterApplied\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}" }]
|
|
26904
|
-
}], ctorParameters: () => [{ type: PostureChecksPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
27131
|
+
}], ctorParameters: () => [{ type: PostureChecksPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
27132
|
+
type: Inject,
|
|
27133
|
+
args: [SHAREDZ_EXTENSION]
|
|
27134
|
+
}] }] });
|
|
26905
27135
|
|
|
26906
27136
|
class PostureCheck {
|
|
26907
27137
|
constructor() {
|
|
@@ -27647,10 +27877,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
27647
27877
|
limitations under the License.
|
|
27648
27878
|
*/
|
|
27649
27879
|
class SessionsPageComponent extends ListPageComponent {
|
|
27650
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
27651
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
27880
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
27881
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
27652
27882
|
this.svc = svc;
|
|
27653
27883
|
this.tabNames = tabNames;
|
|
27884
|
+
this.extService = extService;
|
|
27654
27885
|
this.title = 'Sessions';
|
|
27655
27886
|
this.formDataChanged = false;
|
|
27656
27887
|
}
|
|
@@ -27678,6 +27909,7 @@ class SessionsPageComponent extends ListPageComponent {
|
|
|
27678
27909
|
}
|
|
27679
27910
|
}
|
|
27680
27911
|
tableAction(event) {
|
|
27912
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
27681
27913
|
switch (event?.action) {
|
|
27682
27914
|
case 'toggleAll':
|
|
27683
27915
|
case 'toggleItem':
|
|
@@ -27702,6 +27934,14 @@ class SessionsPageComponent extends ListPageComponent {
|
|
|
27702
27934
|
break;
|
|
27703
27935
|
}
|
|
27704
27936
|
}
|
|
27937
|
+
trackMenuAction(action, item) {
|
|
27938
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
27939
|
+
action,
|
|
27940
|
+
page: 'session',
|
|
27941
|
+
item,
|
|
27942
|
+
type: 'menu-action'
|
|
27943
|
+
});
|
|
27944
|
+
}
|
|
27705
27945
|
openBulkDelete(selectedItems, label) {
|
|
27706
27946
|
const updatedItems = selectedItems.map((item) => {
|
|
27707
27947
|
return {
|
|
@@ -27723,13 +27963,16 @@ class SessionsPageComponent extends ListPageComponent {
|
|
|
27723
27963
|
dataChanged(event) {
|
|
27724
27964
|
this.formDataChanged = event;
|
|
27725
27965
|
}
|
|
27726
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: SessionsPageComponent, deps: [{ token: SessionsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27966
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: SessionsPageComponent, deps: [{ token: SessionsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
27727
27967
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: SessionsPageComponent, isStandalone: false, selector: "lib-sessions", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-sessions-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [hideAction]=\"true\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'sessions'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Sessions defined'\"\n [filterApplied]=\"filterApplied\"\n [filterColumn]=\"'id'\"\n [filterName]=\"'id'\"\n [menuItems]=\"svc.menuItems\"\n [showNoItemsAdd]=\"false\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
27728
27968
|
}
|
|
27729
27969
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: SessionsPageComponent, decorators: [{
|
|
27730
27970
|
type: Component,
|
|
27731
27971
|
args: [{ selector: 'lib-sessions', standalone: false, template: "<div class=\"ziti-page-container ziti-sessions-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [hideAction]=\"true\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'sessions'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No Sessions defined'\"\n [filterApplied]=\"filterApplied\"\n [filterColumn]=\"'id'\"\n [filterName]=\"'id'\"\n [menuItems]=\"svc.menuItems\"\n [showNoItemsAdd]=\"false\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n" }]
|
|
27732
|
-
}], ctorParameters: () => [{ type: SessionsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
27972
|
+
}], ctorParameters: () => [{ type: SessionsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
27973
|
+
type: Inject,
|
|
27974
|
+
args: [SHAREDZ_EXTENSION]
|
|
27975
|
+
}] }] });
|
|
27733
27976
|
|
|
27734
27977
|
class SessionFormService {
|
|
27735
27978
|
constructor(settingsService, zitiService, growlerService, extService) {
|
|
@@ -28240,10 +28483,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
28240
28483
|
limitations under the License.
|
|
28241
28484
|
*/
|
|
28242
28485
|
class APISessionsPageComponent extends ListPageComponent {
|
|
28243
|
-
constructor(svc, filterService, tabNames, consoleEvents, dialogForm) {
|
|
28244
|
-
super(filterService, svc, consoleEvents, dialogForm);
|
|
28486
|
+
constructor(svc, filterService, tabNames, consoleEvents, dialogForm, extService) {
|
|
28487
|
+
super(filterService, svc, consoleEvents, dialogForm, extService);
|
|
28245
28488
|
this.svc = svc;
|
|
28246
28489
|
this.tabNames = tabNames;
|
|
28490
|
+
this.extService = extService;
|
|
28247
28491
|
this.title = 'API Sessions';
|
|
28248
28492
|
this.formDataChanged = false;
|
|
28249
28493
|
}
|
|
@@ -28271,6 +28515,7 @@ class APISessionsPageComponent extends ListPageComponent {
|
|
|
28271
28515
|
}
|
|
28272
28516
|
}
|
|
28273
28517
|
tableAction(event) {
|
|
28518
|
+
this.trackMenuAction(event?.action, event?.item);
|
|
28274
28519
|
switch (event?.action) {
|
|
28275
28520
|
case 'toggleAll':
|
|
28276
28521
|
case 'toggleItem':
|
|
@@ -28295,6 +28540,14 @@ class APISessionsPageComponent extends ListPageComponent {
|
|
|
28295
28540
|
break;
|
|
28296
28541
|
}
|
|
28297
28542
|
}
|
|
28543
|
+
trackMenuAction(action, item) {
|
|
28544
|
+
this.extService?.consoleActionTriggered?.emit({
|
|
28545
|
+
action,
|
|
28546
|
+
page: 'api-session',
|
|
28547
|
+
item,
|
|
28548
|
+
type: 'menu-action'
|
|
28549
|
+
});
|
|
28550
|
+
}
|
|
28298
28551
|
openBulkDelete(selectedItems, label) {
|
|
28299
28552
|
const updatedItems = selectedItems.map((item) => {
|
|
28300
28553
|
return {
|
|
@@ -28316,13 +28569,16 @@ class APISessionsPageComponent extends ListPageComponent {
|
|
|
28316
28569
|
dataChanged(event) {
|
|
28317
28570
|
this.formDataChanged = event;
|
|
28318
28571
|
}
|
|
28319
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: APISessionsPageComponent, deps: [{ token: ApiSessionsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28572
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: APISessionsPageComponent, deps: [{ token: ApiSessionsPageService }, { token: DataTableFilterService }, { token: TabNameService }, { token: ConsoleEventsService }, { token: i5.MatDialog }, { token: SHAREDZ_EXTENSION }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28320
28573
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.17", type: APISessionsPageComponent, isStandalone: false, selector: "lib-api-sessions", usesInheritance: true, ngImport: i0, template: "<div class=\"ziti-page-container ziti-api-sessions-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [hideAction]=\"true\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'api-sessions'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No API Sessions defined'\"\n [filterApplied]=\"filterApplied\"\n [filterColumn]=\"'id'\"\n [filterName]=\"'ID'\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n", styles: [""], dependencies: [{ kind: "component", type: ListPageHeaderComponent, selector: "lib-list-page-header", inputs: ["title", "tabs", "showAdd", "hideAction"], outputs: ["actionClicked"] }, { kind: "component", type: DataTableComponent, selector: "lib-data-table", inputs: ["rowData", "expandRowData", "collapseRowData", "rowValidation", "isTimeSearchAvailable", "isLoading", "tableId", "options", "validateService", "rowsToggled", "tableRefreshCount", "view", "serverSideDataSource", "allowDownload", "startCount", "endCount", "totalCount", "emptyMsg", "filterApplied", "menuItems", "headerActions", "noItemsClass", "entityTypeName", "showNoItemsAdd", "currentPage", "noItemsImage", "rowHeight", "filterName", "filterColumn", "columnDefinitions", "refreshCount"], outputs: ["actionRequested", "gridReady", "dragStart", "dragLeave", "pageChanged"] }, { kind: "component", type: LoadingIndicatorComponent, selector: "lib-loading-indicator", inputs: ["isLoading"] }] }); }
|
|
28321
28574
|
}
|
|
28322
28575
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImport: i0, type: APISessionsPageComponent, decorators: [{
|
|
28323
28576
|
type: Component,
|
|
28324
28577
|
args: [{ selector: 'lib-api-sessions', standalone: false, template: "<div class=\"ziti-page-container ziti-api-sessions-container\">\n <lib-list-page-header [title]=\"title\"\n [tabs]=\"tabs\"\n [hideAction]=\"true\"\n (actionClicked)=\"headerActionClicked($event)\"></lib-list-page-header>\n\n <lib-data-table [tableId]=\"'api-sessions'\"\n [rowData]=\"rowData\"\n [columnDefinitions]=\"columnDefs\"\n (actionRequested)=\"tableAction($event)\"\n [startCount]=\"startCount\"\n [endCount]=\"endCount\"\n [totalCount]=\"totalCount\"\n [emptyMsg]=\"'No API Sessions defined'\"\n [filterApplied]=\"filterApplied\"\n [filterColumn]=\"'id'\"\n [filterName]=\"'ID'\"\n [menuItems]=\"svc.menuItems\"\n (gridReady)=\"gridReady($event)\"\n >\n </lib-data-table>\n</div>\n@if (isLoading) {\n <lib-loading-indicator [isLoading]=\"isLoading\"></lib-loading-indicator>\n}\n" }]
|
|
28325
|
-
}], ctorParameters: () => [{ type: ApiSessionsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }
|
|
28578
|
+
}], ctorParameters: () => [{ type: ApiSessionsPageService }, { type: DataTableFilterService }, { type: TabNameService }, { type: ConsoleEventsService }, { type: i5.MatDialog }, { type: undefined, decorators: [{
|
|
28579
|
+
type: Inject,
|
|
28580
|
+
args: [SHAREDZ_EXTENSION]
|
|
28581
|
+
}] }] });
|
|
28326
28582
|
|
|
28327
28583
|
class APISessionFormService {
|
|
28328
28584
|
constructor(settingsService, zitiService, growlerService, extService) {
|
|
@@ -30611,7 +30867,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
30611
30867
|
}] });
|
|
30612
30868
|
|
|
30613
30869
|
const ZAC_VERSION = {
|
|
30614
|
-
"version": "4.1.
|
|
30870
|
+
"version": "4.1.3"
|
|
30615
30871
|
};
|
|
30616
30872
|
|
|
30617
30873
|
/*
|