@openziti/ziti-console-lib 1.5.2 → 1.5.4

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/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import * as lottie_web from 'lottie-web';
2
2
  import * as i0 from '@angular/core';
3
- import { PipeTransform, EventEmitter, InjectionToken, ViewContainerRef, ElementRef, OnInit, DoCheck, OnDestroy, AfterViewInit, ChangeDetectorRef, OnChanges, SimpleChanges, TemplateRef, Injector } from '@angular/core';
3
+ import { PipeTransform, Type, EventEmitter, InjectionToken, ViewContainerRef, ElementRef, OnInit, DoCheck, OnDestroy, AfterViewInit, AfterViewChecked, NgZone, ChangeDetectorRef, OnChanges, SimpleChanges, TemplateRef, Injector } from '@angular/core';
4
4
  import * as _angular_platform_browser from '@angular/platform-browser';
5
- import { DomSanitizer } from '@angular/platform-browser';
5
+ import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
6
6
  import * as rxjs from 'rxjs';
7
7
  import { BehaviorSubject, Subject, Subscription, Observable } from 'rxjs';
8
8
  import * as lodash from 'lodash';
@@ -15,34 +15,36 @@ import { NGXLogger } from 'ngx-logger';
15
15
  import { HttpBackend, HttpClient } from '@angular/common/http';
16
16
  import * as i2 from '@angular/common';
17
17
  import { Location } from '@angular/common';
18
- import * as i116 from '@angular/material/dialog';
18
+ import * as i128 from '@angular/material/dialog';
19
19
  import { MatDialog, MatDialogRef } from '@angular/material/dialog';
20
20
  import moment from 'moment/moment';
21
- import * as i127 from 'ag-grid-angular';
21
+ import * as i140 from 'ag-grid-angular';
22
22
  import { IHeaderAngularComp, ICellRendererAngularComp, ITooltipAngularComp } from 'ag-grid-angular';
23
23
  import { IHeaderParams, ICellRendererParams, ITooltipParams } from 'ag-grid-community';
24
- import * as i130 from 'ang-jsoneditor';
24
+ import * as i139 from '@angular/cdk/drag-drop';
25
+ import { CdkDragDrop } from '@angular/cdk/drag-drop';
26
+ import * as i143 from 'ang-jsoneditor';
25
27
  import { JsonEditorComponent } from 'ang-jsoneditor';
26
- import * as i119 from '@angular/material/datepicker';
28
+ import * as i131 from '@angular/material/datepicker';
27
29
  import { MatCalendar, MatDateRangePicker } from '@angular/material/datepicker';
28
- import * as i120 from '@angular/material/core';
30
+ import * as i132 from '@angular/material/core';
29
31
  import { DateAdapter } from '@angular/material/core';
30
- import * as i133 from 'ngx-lottie';
32
+ import * as i146 from 'ngx-lottie';
31
33
  import { AnimationOptions } from 'ngx-lottie';
32
- import * as i123 from '@angular/material/select';
34
+ import * as i135 from '@angular/material/select';
33
35
  import { MatSelect } from '@angular/material/select';
34
36
  import { OAuthService } from 'angular-oauth2-oidc';
35
37
  import moment$1 from 'moment';
36
- import * as i117 from '@angular/material/radio';
37
- import * as i121 from '@angular/material/form-field';
38
- import * as i122 from '@angular/material/input';
39
- import * as i124 from '@angular/material/button';
40
- import * as i125 from '@angular/material/icon';
41
- import * as i126 from '@angular/cdk/overlay';
42
- import * as i128 from 'angularx-qrcode';
43
- import * as i129 from 'ng-click-outside';
44
- import * as i131 from '@angular/material/tooltip';
45
- import * as i132 from '@angular/material/autocomplete';
38
+ import * as i129 from '@angular/material/radio';
39
+ import * as i133 from '@angular/material/form-field';
40
+ import * as i134 from '@angular/material/input';
41
+ import * as i136 from '@angular/material/button';
42
+ import * as i137 from '@angular/material/icon';
43
+ import * as i138 from '@angular/cdk/overlay';
44
+ import * as i141 from 'angularx-qrcode';
45
+ import * as i142 from 'ng-click-outside';
46
+ import * as i144 from '@angular/material/tooltip';
47
+ import * as i145 from '@angular/material/autocomplete';
46
48
 
47
49
  declare class SafePipe implements PipeTransform {
48
50
  private sanitized;
@@ -52,6 +54,98 @@ declare class SafePipe implements PipeTransform {
52
54
  static ɵpipe: i0.ɵɵPipeDeclaration<SafePipe, "safe", false>;
53
55
  }
54
56
 
57
+ type ListSortDir = 'asc' | 'desc' | undefined;
58
+ /**
59
+ * Context handed to component-cell input mappers.
60
+ */
61
+ interface ListCellContext<T = any> {
62
+ row: T;
63
+ value: any;
64
+ colId: string;
65
+ rowIndex: number;
66
+ /** Emit a row action (flows to the table's `actionRequested` → the page handler). */
67
+ emitAction: (action: string, item?: any) => void;
68
+ }
69
+ /**
70
+ * Shim shape passed to legacy `cellHtml` / `valueFormatter` functions so the existing
71
+ * ag-grid-era renderer bodies (which read `row.data`, `row.column.colId`, `row.value`)
72
+ * keep working unchanged.
73
+ */
74
+ interface ListLegacyCellShim {
75
+ data: any;
76
+ value?: any;
77
+ column: {
78
+ colId: string;
79
+ };
80
+ rowIndex?: number;
81
+ }
82
+ /**
83
+ * Declarative column definition for {@link ListTableComponent}. Replaces the ag-grid
84
+ * `ColDef` shape used by the legacy `lib-data-table`. Rendering precedence for a cell is:
85
+ * `cell` (a component) > `cellHtml` (sanitized markup) > `valueFormatter` (plain text) >
86
+ * the raw value at `field`.
87
+ */
88
+ interface ListColumn<T = any> {
89
+ /** Stable column id (was ag-grid `colId`). Used for persistence + tracking. */
90
+ key: string;
91
+ /** Dot-path used to read the raw value from a row. Defaults to `key`. */
92
+ field?: string;
93
+ /** Header label (was ag-grid `headerName`). */
94
+ label: string;
95
+ /** Component class rendered in each cell, hosted via NgComponentOutlet. */
96
+ cell?: Type<any>;
97
+ /** Maps a row to the `@Input()`s of the `cell` component. */
98
+ cellInputs?: (ctx: ListCellContext<T>) => Record<string, unknown>;
99
+ /** Returns sanitized HTML for the cell (legacy string renderers). */
100
+ cellHtml?: (shim: ListLegacyCellShim) => string;
101
+ /** Returns plain text for the cell. */
102
+ valueFormatter?: (shim: ListLegacyCellShim) => string;
103
+ /** Initial width in px. Omit to let the column flex to fill available space. */
104
+ width?: number;
105
+ minWidth?: number;
106
+ /** Defaults to true. */
107
+ resizable?: boolean;
108
+ /** Extra class(es) applied to every cell in the column. */
109
+ cellClass?: string;
110
+ sortable?: boolean;
111
+ /** Convenience flag mirrored from legacy `headerComponentParams.enableSorting`. */
112
+ enableSorting?: boolean;
113
+ sortDir?: ListSortDir;
114
+ /** Called on header sort click with the resolved direction (was `sortColumn`). */
115
+ onSort?: (colId: string, dir: ListSortDir) => void;
116
+ /** Called on cell click (was ag-grid `onCellClicked`). */
117
+ onCellClick?: (ctx: ListCellContext<T>) => void;
118
+ filterType?: 'TEXTINPUT' | 'SELECT' | 'COMBO' | 'DATETIME' | 'ATTRIBUTE' | 'MULTISELECT' | 'CUSTOM' | string;
119
+ /** API field the filter queries. Defaults to `field` then `key`. Use when the
120
+ * display field differs from the filterable field (e.g. key `os` → `envInfo.os`,
121
+ * key `type` (display `type.name`) → `typeId`). */
122
+ filterField?: string;
123
+ /** Placeholder shown in the filter-row control when nothing is selected. */
124
+ filterPlaceholder?: string;
125
+ filterOptions?: any[];
126
+ getFilterOptions?: () => any[];
127
+ /** Extra params for the filter controls (attribute getters, combo options, etc.). */
128
+ headerParams?: Record<string, any>;
129
+ /** Component class rendered as a hover tooltip. */
130
+ tooltip?: Type<any>;
131
+ tooltipInputs?: (ctx: ListCellContext<T>) => Record<string, unknown>;
132
+ /** Defaults to true. When false the column cannot be hidden. */
133
+ hideable?: boolean;
134
+ /** Defaults to true. When false the column cannot be drag-reordered. */
135
+ reorderable?: boolean;
136
+ /** Initial visibility (was ag-grid `hide`). */
137
+ hidden?: boolean;
138
+ }
139
+ /**
140
+ * Optional base interface for component cells hosted by {@link ListTableComponent}.
141
+ * The table sets whatever `@Input()`s a column's `cellInputs` returns; implementing this
142
+ * is not required but documents the common ones.
143
+ */
144
+ interface ListCell<T = any> {
145
+ row?: T;
146
+ value?: any;
147
+ }
148
+
55
149
  declare const SHAREDZ_EXTENSION: InjectionToken<any>;
56
150
  type ExtensionEventType = 'formDataUpdated' | 'attributesChanged' | 'service-attributes-changed' | 'identity-attributes-changed' | 'policy-type-changed' | 'policy-semantic-changed' | 'tableDataUpdated' | string;
57
151
  interface ExtensionEvent<TData = any, TResult = any> {
@@ -75,6 +169,8 @@ interface ExtensionService {
75
169
  validateData(): Promise<any>;
76
170
  formDataSaved(data: any): Promise<any>;
77
171
  processTableColumns(tableColumns: any): any[];
172
+ /** Typed hook for the new list-table columns (vs the ColDef processTableColumns above). */
173
+ processListTableColumns?(tableColumns: ListColumn[]): ListColumn[];
78
174
  }
79
175
  declare class ExtensionsNoopService implements ExtensionService {
80
176
  formDataChanged: BehaviorSubject<any>;
@@ -91,6 +187,7 @@ declare class ExtensionsNoopService implements ExtensionService {
91
187
  formDataSaved(data: any): Promise<any>;
92
188
  validateData(): Promise<any>;
93
189
  processTableColumns(tableColumns: any): any[];
190
+ processListTableColumns(tableColumns: ListColumn[]): ListColumn[];
94
191
  static ɵfac: i0.ɵɵFactoryDeclaration<ExtensionsNoopService, never>;
95
192
  static ɵprov: i0.ɵɵInjectableDeclaration<ExtensionsNoopService>;
96
193
  }
@@ -478,15 +575,21 @@ declare class DataTableFilterService {
478
575
  private activatedRoute;
479
576
  filters: FilterObj[];
480
577
  currentPage: number;
578
+ /** Rows requested per page. Defaults to the legacy page size; the list-table's
579
+ * rows-per-page control changes it via {@link changePageSize}. */
580
+ pageSize: number;
481
581
  filtersChanged: BehaviorSubject<FilterObj[]>;
482
582
  filtering: BehaviorSubject<boolean>;
483
583
  pageChanged: BehaviorSubject<any>;
584
+ pageSizeChanged: BehaviorSubject<number>;
484
585
  currentQueryParams: any[];
586
+ private static readonly URL_FILTER_PREFIX;
485
587
  constructor(location: Location, router: Router, activatedRoute: ActivatedRoute);
486
588
  updateFilter(filterObj: FilterObj): void;
487
589
  removeFilter(filterObj: FilterObj): void;
488
590
  getFilterString(key: string): string;
489
591
  changePage(page: any): void;
592
+ changePageSize(size: number): void;
490
593
  clearFilters(): void;
491
594
  storeFilters(): void;
492
595
  getStoredFilters(): any;
@@ -589,6 +692,8 @@ declare abstract class ZitiDataService {
589
692
  abstract resetPassword(oldPass: any, newPass: any, confirmPass: any): Promise<any>;
590
693
  abstract schema(data: any): Promise<any>;
591
694
  getRoleFilter(roleAttributes: any, semantic?: string): any[];
695
+ protected escapeQlString(v: any): string;
696
+ getMultiSelectFilter(val: any, columnId: any, semantic?: string): string;
592
697
  getErrorMessage(resp: any): any;
593
698
  static ɵfac: i0.ɵɵFactoryDeclaration<ZitiDataService, never>;
594
699
  static ɵprov: i0.ɵɵInjectableDeclaration<ZitiDataService>;
@@ -1004,7 +1109,7 @@ declare abstract class ListPageServiceClass {
1004
1109
  protected extensionService: ExtensionService;
1005
1110
  protected router?: Router;
1006
1111
  abstract initTableColumns(): any[];
1007
- abstract getData(filters?: FilterObj[], sort?: any, page?: any): Promise<any[]>;
1112
+ abstract getData(filters?: FilterObj[], sort?: any, page?: any, pageSize?: number): Promise<any[]>;
1008
1113
  abstract openUpdate(entity?: any): any;
1009
1114
  abstract resourceType: string;
1010
1115
  CSV_COLUMNS: {
@@ -1225,6 +1330,299 @@ declare class TabNameService {
1225
1330
  static ɵprov: i0.ɵɵInjectableDeclaration<TabNameService>;
1226
1331
  }
1227
1332
 
1333
+ /**
1334
+ * Per-instance state + localStorage persistence for {@link ListTableComponent}.
1335
+ * Uses its own `lt_<tableId>_*` keys (separate from the legacy ag-grid table) so a
1336
+ * first visit starts from the column defs' default widths, not a carried-over ag layout.
1337
+ */
1338
+ declare class ListTableService {
1339
+ tableId: string;
1340
+ /** Coordinates the toolbar dropdowns so only one (filter pill or column chooser)
1341
+ * is open at a time. Openers emit themselves; others close when they see an
1342
+ * owner that isn't them. */
1343
+ private readonly menuOpenedSubject;
1344
+ readonly menuOpened$: rxjs.Observable<unknown>;
1345
+ notifyMenuOpened(owner: unknown): void;
1346
+ private stateKey;
1347
+ private widthsKey;
1348
+ private pageSizeKey;
1349
+ private static pageSizeKeyFor;
1350
+ restorePageSize(fallback: number): number;
1351
+ savePageSize(size: number): void;
1352
+ /** Reads a table's remembered rows-per-page without an instance (for host pre-seeding). */
1353
+ static readPersistedPageSize(tableId: string, fallback: number): number;
1354
+ /**
1355
+ * Returns a shallow-cloned copy of `columns` with any persisted width, visibility,
1356
+ * and order applied. Columns not present in the saved state keep their declared
1357
+ * position (appended after the saved ones).
1358
+ */
1359
+ applyPersistedState(columns: ListColumn[]): ListColumn[];
1360
+ /** Persists the current order + visibility (and widths embedded in each entry). */
1361
+ saveState(columns: ListColumn[]): void;
1362
+ /** Persists a single column's width, then rewrites the ordered state. */
1363
+ saveWidth(colId: string, width: number, columns: ListColumn[]): void;
1364
+ /** Clears all persisted layout for this table ("Restore Default Table"). */
1365
+ reset(): void;
1366
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListTableService, never>;
1367
+ static ɵprov: i0.ɵɵInjectableDeclaration<ListTableService>;
1368
+ }
1369
+
1370
+ /**
1371
+ * A single row in a {@link ListMenuComponent}.
1372
+ *
1373
+ * `action` is the identifier the host dispatches on; `data` carries the original
1374
+ * domain object (menu item / header action / filter option) so the host can act
1375
+ * on it without the menu needing to know its shape.
1376
+ */
1377
+ interface ListMenuItem {
1378
+ /** Visible text. */
1379
+ label: string;
1380
+ /** Identifier emitted back to the host on click. */
1381
+ action: string;
1382
+ /** Optional icon class(es) rendered before the label. */
1383
+ icon?: string;
1384
+ /** Optional sanitized SVG rendered before the label (takes precedence over `icon`). */
1385
+ iconSvg?: SafeHtml;
1386
+ /** When true the row is present but visually removed (keeps list order stable). */
1387
+ hidden?: boolean;
1388
+ /** When true the row is shown but not clickable. */
1389
+ disabled?: boolean;
1390
+ /** Optional element id (preserves existing automation hooks). */
1391
+ id?: string;
1392
+ /** Original domain object this row was built from. */
1393
+ data?: any;
1394
+ }
1395
+ /**
1396
+ * Generic, theme-driven action menu popover. Presentational only: the host owns
1397
+ * open state and position and handles `(itemClick)` / `(closed)`.
1398
+ */
1399
+ declare class ListMenuComponent {
1400
+ /** Whether the menu is rendered. */
1401
+ open: boolean;
1402
+ /** Rows to render. */
1403
+ items: ListMenuItem[];
1404
+ /** Fixed-position left offset (px). */
1405
+ left: number;
1406
+ /** Fixed-position top offset (px). */
1407
+ top: number;
1408
+ /** Optional id for the menu container (automation hook). */
1409
+ menuId?: string;
1410
+ /** Emitted when a clickable row is selected. */
1411
+ itemClick: EventEmitter<{
1412
+ item: ListMenuItem;
1413
+ event: MouseEvent;
1414
+ }>;
1415
+ /** Emitted when the user clicks outside the open menu. */
1416
+ closed: EventEmitter<Event>;
1417
+ onItem(item: ListMenuItem, event: MouseEvent): void;
1418
+ onClickOutside(event: Event): void;
1419
+ trackItem: (_: number, item: ListMenuItem) => string;
1420
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListMenuComponent, never>;
1421
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListMenuComponent, "lib-list-menu", never, { "open": { "alias": "open"; "required": false; }; "items": { "alias": "items"; "required": false; }; "left": { "alias": "left"; "required": false; }; "top": { "alias": "top"; "required": false; }; "menuId": { "alias": "menuId"; "required": false; }; }, { "itemClick": "itemClick"; "closed": "closed"; }, never, never, false, never>;
1422
+ }
1423
+
1424
+ /**
1425
+ * Custom, token-skinnable list table. Columns are declared with {@link ListColumn};
1426
+ * sort, filter, and pagination flow through {@link DataTableFilterService}.
1427
+ */
1428
+ declare class ListTableComponent implements OnInit, AfterViewInit, AfterViewChecked, OnDestroy {
1429
+ svc: ListTableService;
1430
+ private tableFilterService;
1431
+ private el;
1432
+ private ngZone;
1433
+ private sanitizer;
1434
+ set tableId(id: string);
1435
+ get tableId(): string;
1436
+ private _tableId;
1437
+ set columns(value: ListColumn[]);
1438
+ rowData: any[];
1439
+ isLoading: boolean;
1440
+ options: {
1441
+ noSelect?: boolean;
1442
+ noMenu?: boolean;
1443
+ };
1444
+ startCount: any;
1445
+ endCount: any;
1446
+ totalCount: any;
1447
+ filterApplied: boolean;
1448
+ menuItems: any[];
1449
+ headerActions: any[];
1450
+ noItemsImage: string;
1451
+ showNoItemsAdd: boolean;
1452
+ noItemsReadonly: boolean;
1453
+ accessDenied: boolean;
1454
+ entityTypeName: string;
1455
+ filterName: string;
1456
+ filterColumn: string;
1457
+ actionRequested: EventEmitter<{
1458
+ action: string;
1459
+ item?: any;
1460
+ }>;
1461
+ tableReady: EventEmitter<any>;
1462
+ contextMenu?: ElementRef;
1463
+ filterZone?: ElementRef<HTMLElement>;
1464
+ filtersRow?: ElementRef<HTMLElement>;
1465
+ /** Full column list (includes hidden), after persisted state. */
1466
+ allColumns: ListColumn[];
1467
+ /** Currently rendered columns (visible + ordered). */
1468
+ visibleColumns: ListColumn[];
1469
+ /** Hidden columns, shaped for the shared hidden-columns bar (`headerName`). */
1470
+ hiddenColumns: any[];
1471
+ entityTypeLabel: string;
1472
+ openMenu: boolean;
1473
+ openHeaderMenu: boolean;
1474
+ menuLeft: number;
1475
+ menuTop: number;
1476
+ selectedItem: any;
1477
+ allToggled: boolean;
1478
+ showColumnChooser: boolean;
1479
+ searchString: string;
1480
+ activeFilters: FilterObj[];
1481
+ filtering: boolean;
1482
+ private inputChangedDebounced;
1483
+ visibleFilterColumns: ListColumn[];
1484
+ overflowFilterColumns: ListColumn[];
1485
+ showFilterOverflow: boolean;
1486
+ private filterWidths;
1487
+ private filtersDirty;
1488
+ private filterRO?;
1489
+ private observedToolbar?;
1490
+ private overflowRaf;
1491
+ private readonly FILTER_GAP;
1492
+ private readonly MORE_BTN_W;
1493
+ private resizing?;
1494
+ private readonly onPointerMove;
1495
+ private readonly onPointerUp;
1496
+ private _rawColumns;
1497
+ private _initialColumns;
1498
+ private _initialized;
1499
+ private subscription;
1500
+ constructor(svc: ListTableService, tableFilterService: DataTableFilterService, el: ElementRef, ngZone: NgZone, sanitizer: DomSanitizer);
1501
+ ngOnInit(): void;
1502
+ ngAfterViewInit(): void;
1503
+ ngAfterViewChecked(): void;
1504
+ ngOnDestroy(): void;
1505
+ get showTable(): boolean;
1506
+ /** Columns surfaced as inline filter controls in the toolbar. Text filters are
1507
+ * excluded because the free-text search box already covers the primary text field. */
1508
+ get filterableColumns(): ListColumn[];
1509
+ /** A filter column is "active" when it has an applied filter. */
1510
+ isFilterActive(col: ListColumn): boolean;
1511
+ /** Applied filters that are currently hidden in the overflow dropdown. */
1512
+ get hiddenActiveCount(): number;
1513
+ toggleFilterOverflow(event: MouseEvent): void;
1514
+ closeFilterOverflow(event?: Event): void;
1515
+ private ensureFilterResizeObserver;
1516
+ private scheduleFilterOverflow;
1517
+ private recomputeFilterOverflow;
1518
+ /** Split filter controls into inline vs. overflow, pinning active filters and
1519
+ * dropping inactive (then, only if forced, active) from the right until they fit. */
1520
+ private applyFilterSplit;
1521
+ private buildColumns;
1522
+ private updateVisible;
1523
+ trackRow: (index: number, row: any) => any;
1524
+ trackCol: (index: number, col: ListColumn) => string;
1525
+ colWidth(col: ListColumn): string | null;
1526
+ private rawValue;
1527
+ private cellContext;
1528
+ private legacyShim;
1529
+ renderMode(col: ListColumn): 'component' | 'html' | 'text';
1530
+ cellInputs(col: ListColumn, row: any, i: number): Record<string, unknown>;
1531
+ cellHtml(col: ListColumn, row: any, i: number): string;
1532
+ cellText(col: ListColumn, row: any, i: number): any;
1533
+ cellClass(col: ListColumn): string;
1534
+ onCellClick(col: ListColumn, row: any, i: number): void;
1535
+ tooltipInputs(col: ListColumn, row: any, i: number): Record<string, unknown>;
1536
+ hoverTooltip: {
1537
+ component: Type<any>;
1538
+ inputs: Record<string, unknown>;
1539
+ left: number;
1540
+ top: number;
1541
+ } | null;
1542
+ onCellHover(col: ListColumn, row: any, i: number, event: MouseEvent): void;
1543
+ onCellLeave(): void;
1544
+ toggleItem: (item: any) => void;
1545
+ /** Some rows selected but the header select-all isn't fully on (indeterminate). */
1546
+ get someSelected(): boolean;
1547
+ toggleAll(): void;
1548
+ onHeaderSort(event: {
1549
+ colId: string;
1550
+ dir: ListSortDir;
1551
+ }): void;
1552
+ hideColumn(col: ListColumn): void;
1553
+ showColumn(event: {
1554
+ column: any;
1555
+ visible: boolean;
1556
+ }): void;
1557
+ onReorder(event: CdkDragDrop<ListColumn[]>): void;
1558
+ resetTableColumns(): void;
1559
+ /** Count of columns the user has hidden beyond the defaults (drives the badge).
1560
+ * Columns hidden by default don't count, so a fresh/default load shows no badge. */
1561
+ get hiddenColumnCount(): number;
1562
+ /** True when visibility + order match the originally declared columns. */
1563
+ get columnsAtDefault(): boolean;
1564
+ /** True when the column is hidden in the originally declared defaults. */
1565
+ isDefaultHidden(col: ListColumn): boolean;
1566
+ toggleColumnChooser(event: MouseEvent): void;
1567
+ closeColumnChooser(): void;
1568
+ toggleColumnVisible(col: ListColumn): void;
1569
+ chooserReorder(event: CdkDragDrop<ListColumn[]>): void;
1570
+ startResize(col: ListColumn, event: PointerEvent): void;
1571
+ private handleResizeMove;
1572
+ private handleResizeEnd;
1573
+ private detachResizeListeners;
1574
+ openActionMenu: (event: MouseEvent, item: any) => void;
1575
+ closeActionMenu: () => void;
1576
+ openHeaderActionMenu(event: MouseEvent): void;
1577
+ hideMenuItem(menuItem: any, selectedItem: any): boolean;
1578
+ closeHeaderActionMenu: () => void;
1579
+ /** Restore-default (rotate) icon for the built-in header action. */
1580
+ private readonly RESET_TABLE_ICON;
1581
+ /** Header action menu rows: the reset action followed by host-provided header actions.
1582
+ * A host action's `icon` (SVG markup) is rendered before its label, like the row menu. */
1583
+ get headerMenuItems(): ListMenuItem[];
1584
+ onHeaderMenuClick(evt: {
1585
+ item: ListMenuItem;
1586
+ event: MouseEvent;
1587
+ }): void;
1588
+ /** Row action menu rows, built from `menuItems` against the currently selected row.
1589
+ * A menu item's `icon` (SVG markup) is rendered before its label in the menu. */
1590
+ get rowMenuItems(): ListMenuItem[];
1591
+ onRowMenuClick(evt: {
1592
+ item: ListMenuItem;
1593
+ event: MouseEvent;
1594
+ }): void;
1595
+ openCreate(): void;
1596
+ onSearchInput(): void;
1597
+ private applySearch;
1598
+ nextPage(): void;
1599
+ prevPage(): void;
1600
+ get nextDisabled(): boolean;
1601
+ get prevDisabled(): boolean;
1602
+ pageSizeOptions: number[];
1603
+ /** Default rows-per-page when nothing is remembered (the persisted choice wins). */
1604
+ initialPageSize: number;
1605
+ get pageSize(): number;
1606
+ get currentPageNum(): number;
1607
+ get totalPages(): number;
1608
+ /** Page numbers to render, with `0` marking a gap ("..."). Shows the first and
1609
+ * last page plus a window around the current page so long lists stay compact. */
1610
+ get pageWindow(): number[];
1611
+ goToPage(page: number): void;
1612
+ onPageSizeChange(size: number): void;
1613
+ /** Re-fetch the current page (re-emits the page so the host reloads its data). */
1614
+ refresh(): void;
1615
+ autoRefresh: boolean;
1616
+ readonly autoRefreshIntervalMs = 30000;
1617
+ private autoRefreshTimer?;
1618
+ toggleAutoRefresh(): void;
1619
+ private iconCache;
1620
+ private safeIcon;
1621
+ private updateEntityTypeLabel;
1622
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListTableComponent, never>;
1623
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListTableComponent, "lib-list-table", never, { "tableId": { "alias": "tableId"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "rowData": { "alias": "rowData"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "options": { "alias": "options"; "required": false; }; "startCount": { "alias": "startCount"; "required": false; }; "endCount": { "alias": "endCount"; "required": false; }; "totalCount": { "alias": "totalCount"; "required": false; }; "filterApplied": { "alias": "filterApplied"; "required": false; }; "menuItems": { "alias": "menuItems"; "required": false; }; "headerActions": { "alias": "headerActions"; "required": false; }; "noItemsImage": { "alias": "noItemsImage"; "required": false; }; "showNoItemsAdd": { "alias": "showNoItemsAdd"; "required": false; }; "noItemsReadonly": { "alias": "noItemsReadonly"; "required": false; }; "accessDenied": { "alias": "accessDenied"; "required": false; }; "entityTypeName": { "alias": "entityTypeName"; "required": false; }; "filterName": { "alias": "filterName"; "required": false; }; "filterColumn": { "alias": "filterColumn"; "required": false; }; "initialPageSize": { "alias": "initialPageSize"; "required": false; }; }, { "actionRequested": "actionRequested"; "tableReady": "tableReady"; }, never, never, false, never>;
1624
+ }
1625
+
1228
1626
  declare class ConsoleEventsService {
1229
1627
  refreshData: EventEmitter<any>;
1230
1628
  openSideModal: EventEmitter<any>;
@@ -1265,6 +1663,12 @@ declare abstract class ListPageComponent {
1265
1663
  dialogRef: any;
1266
1664
  modalOpen: boolean;
1267
1665
  gridObj: any;
1666
+ tableObj: any;
1667
+ /** Set by a new list-table page to enable per-table rows-per-page memory. When set,
1668
+ * the base pre-seeds the remembered size before the first fetch (see ngOnInit). */
1669
+ protected tableId?: string;
1670
+ /** Default rows-per-page used when nothing is remembered for {@link tableId}. */
1671
+ protected initialPageSize?: number;
1268
1672
  subscription: Subscription;
1269
1673
  private growlerSvc;
1270
1674
  protected readonly managementPermissions: ManagementPermissionsService;
@@ -1284,7 +1688,18 @@ declare abstract class ListPageComponent {
1284
1688
  protected downloadAllItems(): void;
1285
1689
  protected openBulkDelete(selectedItems: any[], entityTypeLabel?: string): void;
1286
1690
  handleExtensionActions(event: any): boolean;
1691
+ /**
1692
+ * Column set loaded into the table on init. Defaults to the service's ag-grid
1693
+ * column defs (the legacy {@link DataTableComponent}). A page that renders the
1694
+ * new {@link ListTableComponent} overrides this to return the `ListColumn` set
1695
+ * instead, leaving every other page untouched.
1696
+ */
1697
+ protected loadTableColumns(): any[];
1287
1698
  gridReady(event: any): void;
1699
+ /** Ready hook for {@link ListTableComponent}; keeps the instance for extension use. */
1700
+ tableReady(event: {
1701
+ component: ListTableComponent;
1702
+ }): void;
1288
1703
  refreshCells(): void;
1289
1704
  static ɵfac: i0.ɵɵFactoryDeclaration<ListPageComponent, never>;
1290
1705
  static ɵprov: i0.ɵɵInjectableDeclaration<ListPageComponent>;
@@ -1501,6 +1916,43 @@ declare class ListPageHeaderComponent {
1501
1916
  static ɵcmp: i0.ɵɵComponentDeclaration<ListPageHeaderComponent, "lib-list-page-header", never, { "title": { "alias": "title"; "required": false; }; "tabs": { "alias": "tabs"; "required": false; }; "showAdd": { "alias": "showAdd"; "required": false; }; "hideAction": { "alias": "hideAction"; "required": false; }; "blockCreate": { "alias": "blockCreate"; "required": false; }; "blockDelete": { "alias": "blockDelete"; "required": false; }; }, { "actionClicked": "actionClicked"; }, never, never, false, never>;
1502
1917
  }
1503
1918
 
1919
+ /**
1920
+ * Header for the new list-table pages: an icon tile + title + one-line subtitle
1921
+ * (with an optional info affordance) on the left, and a primary "Create ..." action
1922
+ * on the right, over an optional tab strip. Emits the same `add` / `delete` actions
1923
+ * as {@link ListPageHeaderComponent} so pages can swap headers without changing their
1924
+ * handlers. Project the page's icon into the tile with a `header-icon` attribute.
1925
+ */
1926
+ declare class ListTableHeaderComponent {
1927
+ title: string;
1928
+ subtitle: string;
1929
+ /** Label for the primary create button, e.g. "Create Identity". */
1930
+ createLabel: string;
1931
+ /** Optional short helper text shown behind the (i) affordance next to the title. */
1932
+ infoText: string;
1933
+ tabs: any[];
1934
+ showAdd: boolean;
1935
+ /** Hide the create control even when showAdd is true. */
1936
+ blockCreate: boolean;
1937
+ /** Hide the bulk-delete control shown when rows are selected. */
1938
+ blockDelete: boolean;
1939
+ /** When true (default) tabs navigate via routerLink and highlight by matching the
1940
+ * URL path. Set false for a consumer that owns navigation (e.g. query-param tabs):
1941
+ * tabs then only emit `tabClicked`, and the active one is driven by `activeTab`. */
1942
+ tabsUseRouter: boolean;
1943
+ /** Active tab when `tabsUseRouter` is false. Matched by identity or by the tab's
1944
+ * `id` / `value` / `url` / `label`. */
1945
+ activeTab: any;
1946
+ actionClicked: EventEmitter<string>;
1947
+ tabClicked: EventEmitter<any>;
1948
+ clickAction(value: string): void;
1949
+ onTabClick(tab: any): void;
1950
+ tabSelected(tab: any): boolean;
1951
+ private tabMatchesActive;
1952
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListTableHeaderComponent, never>;
1953
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListTableHeaderComponent, "lib-list-table-header", never, { "title": { "alias": "title"; "required": false; }; "subtitle": { "alias": "subtitle"; "required": false; }; "createLabel": { "alias": "createLabel"; "required": false; }; "infoText": { "alias": "infoText"; "required": false; }; "tabs": { "alias": "tabs"; "required": false; }; "showAdd": { "alias": "showAdd"; "required": false; }; "blockCreate": { "alias": "blockCreate"; "required": false; }; "blockDelete": { "alias": "blockDelete"; "required": false; }; "tabsUseRouter": { "alias": "tabsUseRouter"; "required": false; }; "activeTab": { "alias": "activeTab"; "required": false; }; }, { "actionClicked": "actionClicked"; "tabClicked": "tabClicked"; }, never, ["[header-icon]"], false, never>;
1954
+ }
1955
+
1504
1956
  declare class FilterBarComponent {
1505
1957
  filterService: DataTableFilterService;
1506
1958
  _filters: any[];
@@ -1544,17 +1996,28 @@ declare class IdentitiesPageService extends ListPageServiceClass {
1544
1996
  menuItems: {
1545
1997
  name: string;
1546
1998
  action: string;
1999
+ icon: string;
1547
2000
  }[];
1548
2001
  tableHeaderActions: {
1549
2002
  name: string;
1550
2003
  action: string;
2004
+ icon: string;
1551
2005
  }[];
1552
2006
  resourceType: string;
1553
2007
  constructor(settings: SettingsServiceClass, filterService: DataTableFilterService, zitiService: ZitiDataService, csvDownloadService: CsvDownloadService, growlerService: GrowlerService, dialogForm: MatDialog, extService: ExtensionService, router: Router);
1554
2008
  validate: (formData: any) => Promise<CallbackResults>;
1555
2009
  initTableColumns(): any;
2010
+ /**
2011
+ * Column set for the new `lib-list-table` (the "beta" Identities page). Mirrors
2012
+ * {@link initTableColumns} but emits the declarative `ListColumn` shape instead of
2013
+ * ag-grid `ColDef`s: component cells via `cell`/`cellInputs`, legacy string
2014
+ * renderers via `cellHtml`, and header filters declared with `filterType`.
2015
+ * Loaded by {@link IdentitiesPageComponent} when the Beta Features toggle is on;
2016
+ * the legacy {@link initTableColumns} above is left untouched for the ag-grid table.
2017
+ */
2018
+ initListTableColumns(): ListColumn[];
1556
2019
  getIdentityRoleAttributes(): Promise<any>;
1557
- getData(filters?: FilterObj[], sort?: any, page?: any): Promise<any>;
2020
+ getData(filters?: FilterObj[], sort?: any, page?: any, pageSize?: number): Promise<any>;
1558
2021
  private processData;
1559
2022
  private addActionsPerRow;
1560
2023
  hasAuthenticator(item: any): any;
@@ -1577,6 +2040,12 @@ declare class IdentitiesPageService extends ListPageServiceClass {
1577
2040
  static ɵprov: i0.ɵɵInjectableDeclaration<IdentitiesPageService>;
1578
2041
  }
1579
2042
 
2043
+ /**
2044
+ * Legacy Identities page (ag-grid `lib-data-table`). Selected by the route when the
2045
+ * "Beta Features" flag is off. Slated for removal once the new list-table page (see
2046
+ * {@link IdentitiesListPageComponent}) graduates — at which point this file and its
2047
+ * template are deleted outright.
2048
+ */
1580
2049
  declare class IdentitiesPageComponent extends ListPageComponent implements OnInit, OnDestroy {
1581
2050
  svc: IdentitiesPageService;
1582
2051
  private tabNames;
@@ -1608,6 +2077,49 @@ declare class IdentitiesPageComponent extends ListPageComponent implements OnIni
1608
2077
  static ɵcmp: i0.ɵɵComponentDeclaration<IdentitiesPageComponent, "lib-identities", never, {}, {}, never, ["[slot=list-page-subheader]"], false, never>;
1609
2078
  }
1610
2079
 
2080
+ /**
2081
+ * New Identities page, rendered on the shared `lib-list-table`. Extends the common
2082
+ * {@link ListPageComponent} (which future list-table pages extend the same way).
2083
+ * Selected by the route when the "Beta Features" flag is on; the legacy ag-grid page
2084
+ * ({@link IdentitiesPageComponent}) handles the flag-off case. The two pages carry
2085
+ * their own copies of the identity actions during the migration so the legacy one can
2086
+ * be deleted outright once this graduates.
2087
+ */
2088
+ declare class IdentitiesListPageComponent extends ListPageComponent implements OnInit, OnDestroy {
2089
+ svc: IdentitiesPageService;
2090
+ private tabNames;
2091
+ private router;
2092
+ private extService;
2093
+ title: string;
2094
+ tabs: {
2095
+ url: string;
2096
+ label: string;
2097
+ }[];
2098
+ isLoading: boolean;
2099
+ formDataChanged: boolean;
2100
+ protected readonly tableId = "identities";
2101
+ protected readonly initialPageSize = 50;
2102
+ constructor(svc: IdentitiesPageService, filterService: DataTableFilterService, dialogForm: MatDialog, tabNames: TabNameService, router: Router, consoleEvents: ConsoleEventsService, extService: ExtensionService);
2103
+ /** The new table consumes the declarative ListColumn set. */
2104
+ protected loadTableColumns(): any[];
2105
+ ngOnInit(): void;
2106
+ headerActionClicked(action: string): void;
2107
+ closeModal(event?: any): void;
2108
+ dataChanged(event: any): void;
2109
+ tableAction(event: any): void;
2110
+ downloadJWT(item: any): void;
2111
+ showQRCode(item: any): void;
2112
+ trackMenuAction(action: string, item: any): void;
2113
+ deleteItem(item: any): void;
2114
+ openIdentityVisualizer(identity: any): void;
2115
+ resetEnrollment(identity: any): void;
2116
+ reissueEnrollment(identity: any): void;
2117
+ ngOnDestroy(): void;
2118
+ canDeactivate(): boolean;
2119
+ static ɵfac: i0.ɵɵFactoryDeclaration<IdentitiesListPageComponent, never>;
2120
+ static ɵcmp: i0.ɵɵComponentDeclaration<IdentitiesListPageComponent, "lib-identities-list", never, {}, {}, never, ["[slot=list-page-subheader]"], false, never>;
2121
+ }
2122
+
1611
2123
  declare class EdgeRoutersPageService extends ListPageServiceClass {
1612
2124
  private zitiService;
1613
2125
  csvDownloadService: CsvDownloadService;
@@ -1982,6 +2494,211 @@ declare class DataTableComponent implements OnChanges, OnInit {
1982
2494
  static ɵcmp: i0.ɵɵComponentDeclaration<DataTableComponent, "lib-data-table", never, { "rowData": { "alias": "rowData"; "required": false; }; "expandRowData": { "alias": "expandRowData"; "required": false; }; "collapseRowData": { "alias": "collapseRowData"; "required": false; }; "rowValidation": { "alias": "rowValidation"; "required": false; }; "isTimeSearchAvailable": { "alias": "isTimeSearchAvailable"; "required": false; }; "isLoading": { "alias": "isLoading"; "required": false; }; "tableId": { "alias": "tableId"; "required": false; }; "options": { "alias": "options"; "required": false; }; "validateService": { "alias": "validateService"; "required": false; }; "rowsToggled": { "alias": "rowsToggled"; "required": false; }; "tableRefreshCount": { "alias": "tableRefreshCount"; "required": false; }; "view": { "alias": "view"; "required": false; }; "serverSideDataSource": { "alias": "serverSideDataSource"; "required": false; }; "allowDownload": { "alias": "allowDownload"; "required": false; }; "startCount": { "alias": "startCount"; "required": false; }; "endCount": { "alias": "endCount"; "required": false; }; "totalCount": { "alias": "totalCount"; "required": false; }; "emptyMsg": { "alias": "emptyMsg"; "required": false; }; "filterApplied": { "alias": "filterApplied"; "required": false; }; "menuItems": { "alias": "menuItems"; "required": false; }; "headerActions": { "alias": "headerActions"; "required": false; }; "noItemsClass": { "alias": "noItemsClass"; "required": false; }; "entityTypeName": { "alias": "entityTypeName"; "required": false; }; "showNoItemsAdd": { "alias": "showNoItemsAdd"; "required": false; }; "noItemsReadonly": { "alias": "noItemsReadonly"; "required": false; }; "accessDenied": { "alias": "accessDenied"; "required": false; }; "currentPage": { "alias": "currentPage"; "required": false; }; "noItemsImage": { "alias": "noItemsImage"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "filterName": { "alias": "filterName"; "required": false; }; "filterColumn": { "alias": "filterColumn"; "required": false; }; "columnDefinitions": { "alias": "columnDefinitions"; "required": false; }; "refreshCount": { "alias": "refreshCount"; "required": false; }; }, { "actionRequested": "actionRequested"; "gridReady": "gridReady"; "dragStart": "dragStart"; "dragLeave": "dragLeave"; "pageChanged": "pageChanged"; }, never, never, false, never>;
1983
2495
  }
1984
2496
 
2497
+ /**
2498
+ * Name cell for {@link ListTableComponent}: a link to the entity's detail route,
2499
+ * with optional identity/router status circles and a prefix icon. Inputs come from
2500
+ * the column's `cellInputs(ctx)`: `{ row, cellValue, cellConfig }`, where
2501
+ * `cellConfig` carries `pathRoot`, `itemProp?`, `showIdentityIcons?`,
2502
+ * `showRouterIcons?`, `getNamePrefix?`, `cellNamePreCheck?`.
2503
+ */
2504
+ declare class NameCellComponent {
2505
+ private router;
2506
+ cellParams: any;
2507
+ item: any;
2508
+ value: any;
2509
+ set row(v: any);
2510
+ set cellValue(v: any);
2511
+ set cellConfig(cfg: any);
2512
+ constructor(router: Router);
2513
+ get namePrefix(): {
2514
+ iconClass?: string;
2515
+ tooltip?: string;
2516
+ } | null;
2517
+ linkClicked(event: Event): void;
2518
+ private navigate;
2519
+ get cellText(): any;
2520
+ static ɵfac: i0.ɵɵFactoryDeclaration<NameCellComponent, never>;
2521
+ static ɵcmp: i0.ɵɵComponentDeclaration<NameCellComponent, "lib-name-cell", never, { "row": { "alias": "row"; "required": false; }; "cellValue": { "alias": "cellValue"; "required": false; }; "cellConfig": { "alias": "cellConfig"; "required": false; }; }, {}, never, never, false, never>;
2522
+ }
2523
+
2524
+ /**
2525
+ * Row selection toggle for {@link ListTableComponent}. Router / exclusive /
2526
+ * reserved / system rows cannot be toggled.
2527
+ */
2528
+ declare class SelectCellComponent {
2529
+ item: any;
2530
+ disableToggle: boolean;
2531
+ set row(v: any);
2532
+ /** Host callback invoked with the row when a selectable row is toggled. */
2533
+ toggleItem: ((item: any) => void) | undefined;
2534
+ toggle(item: any): void;
2535
+ get tooltip(): string;
2536
+ static ɵfac: i0.ɵɵFactoryDeclaration<SelectCellComponent, never>;
2537
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectCellComponent, "lib-select-cell", never, { "row": { "alias": "row"; "required": false; }; "toggleItem": { "alias": "toggleItem"; "required": false; }; }, {}, never, never, false, never>;
2538
+ }
2539
+
2540
+ /** Header cell for {@link ListTableComponent}: label, 3-state sort (asc/desc), and hide. */
2541
+ declare class ListHeaderCellComponent {
2542
+ column: ListColumn;
2543
+ sortDir: ListSortDir;
2544
+ sortChanged: EventEmitter<{
2545
+ colId: string;
2546
+ dir: ListSortDir;
2547
+ }>;
2548
+ hideColumn: EventEmitter<ListColumn<any>>;
2549
+ get enableSorting(): boolean;
2550
+ sort(): void;
2551
+ hide(event: MouseEvent): void;
2552
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListHeaderCellComponent, never>;
2553
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListHeaderCellComponent, "lib-list-header-cell", never, { "column": { "alias": "column"; "required": false; }; "sortDir": { "alias": "sortDir"; "required": false; }; }, { "sortChanged": "sortChanged"; "hideColumn": "hideColumn"; }, never, never, false, never>;
2554
+ }
2555
+
2556
+ type FilterMode = 'text' | 'single' | 'multi' | 'daterange';
2557
+ interface FilterOption {
2558
+ label: string;
2559
+ value: any;
2560
+ /** Optional class(es) to render the option as a colored chip/badge (e.g. Type). */
2561
+ chipClass?: string;
2562
+ }
2563
+ /**
2564
+ * A single control in the table's filter row. Renders the right widget for the
2565
+ * column's `filterType` (text input / single-select / multi-select / date-range)
2566
+ * and pushes changes through {@link DataTableFilterService}, whose value contract the
2567
+ * controller query-builder already understands (icontains / = / anyOf() / datetime range).
2568
+ */
2569
+ declare class ListFilterCellComponent implements OnInit, OnDestroy {
2570
+ private filterService;
2571
+ private listSvc;
2572
+ column: ListColumn;
2573
+ mode: FilterMode;
2574
+ options: FilterOption[];
2575
+ textValue: string;
2576
+ selectedValue: any;
2577
+ selectedValues: string[];
2578
+ /** In-dropdown search text for the multi-select attribute combo. */
2579
+ attrSearch: string;
2580
+ open: boolean;
2581
+ menuLeft: number;
2582
+ menuTop: number;
2583
+ menuWidth: number;
2584
+ trigger?: ElementRef<HTMLElement>;
2585
+ rangePicker?: MatDateRangePicker<Date>;
2586
+ dateRangeStart: Date | null;
2587
+ dateRangeEnd: Date | null;
2588
+ private sub;
2589
+ private textDebounced;
2590
+ constructor(filterService: DataTableFilterService, listSvc: ListTableService);
2591
+ ngOnInit(): void;
2592
+ ngOnDestroy(): void;
2593
+ get field(): string;
2594
+ get placeholder(): string;
2595
+ /** True only for the Ziti role-attribute flavor of multi-select (adds #/@ prefixing). */
2596
+ get isAttributeMode(): boolean;
2597
+ private resolveMode;
2598
+ private resolveOptions;
2599
+ /** Short display of the current selection, shown after the field label when set. */
2600
+ get valueLabel(): string;
2601
+ get hasValue(): boolean;
2602
+ isOptionSelected(opt: FilterOption): boolean;
2603
+ /** Attribute options filtered by the in-dropdown search box (multi mode). */
2604
+ get filteredOptions(): FilterOption[];
2605
+ /** A named attribute (rendered with @ + secondary color) vs a role attribute (# + primary). */
2606
+ isNamedOption(opt: FilterOption): boolean;
2607
+ /** Option label. The attribute flavor prefixes # (role) / keeps @ (named); others render plain. */
2608
+ optionLabel(opt: FilterOption): string;
2609
+ toggleMenu(event: MouseEvent): void;
2610
+ closeMenu(): void;
2611
+ onTextInput(): void;
2612
+ private emitText;
2613
+ selectOption(opt: FilterOption): void;
2614
+ toggleOption(opt: FilterOption): void;
2615
+ private emitMulti;
2616
+ selectDatePreset(opt: FilterOption): void;
2617
+ openCustomRange(event: MouseEvent): void;
2618
+ onRangeStartChanged(date: Date | null): void;
2619
+ onRangeEndChanged(date: Date | null): void;
2620
+ private emitCustomRange;
2621
+ clear(event: MouseEvent): void;
2622
+ private removeThis;
2623
+ private syncFromFilters;
2624
+ static ɵfac: i0.ɵɵFactoryDeclaration<ListFilterCellComponent, never>;
2625
+ static ɵcmp: i0.ɵɵComponentDeclaration<ListFilterCellComponent, "lib-list-filter-cell", never, { "column": { "alias": "column"; "required": false; }; }, {}, never, never, false, never>;
2626
+ }
2627
+
2628
+ /**
2629
+ * Modern hover card for the identities O/S cell — shows the environment info
2630
+ * (OS, version, release, arch) in a clean key/value layout. Rendered by
2631
+ * ListTableComponent's hover-tooltip mechanism (column `tooltip`).
2632
+ */
2633
+ declare class OsInfoTooltipComponent {
2634
+ row: any;
2635
+ get envInfo(): any;
2636
+ get osClass(): string;
2637
+ get osTitle(): string;
2638
+ /** Whether there is any environment info worth showing. */
2639
+ get hasInfo(): boolean;
2640
+ static ɵfac: i0.ɵɵFactoryDeclaration<OsInfoTooltipComponent, never>;
2641
+ static ɵcmp: i0.ɵɵComponentDeclaration<OsInfoTooltipComponent, "lib-os-info-tooltip", never, { "row": { "alias": "row"; "required": false; }; }, {}, never, never, false, never>;
2642
+ }
2643
+
2644
+ /**
2645
+ * Hover card for the identities SDK cell — shows the reported SDK details
2646
+ * (app id/version, version, type, branch, revision), the same fields the legacy
2647
+ * ag-grid SDK tooltip surfaced. Rendered by ListTableComponent's hover-tooltip
2648
+ * mechanism (column `tooltip`).
2649
+ */
2650
+ declare class SdkInfoTooltipComponent {
2651
+ row: any;
2652
+ get sdkInfo(): any;
2653
+ get title(): string;
2654
+ get hasInfo(): boolean;
2655
+ static ɵfac: i0.ɵɵFactoryDeclaration<SdkInfoTooltipComponent, never>;
2656
+ static ɵcmp: i0.ɵɵComponentDeclaration<SdkInfoTooltipComponent, "lib-sdk-info-tooltip", never, { "row": { "alias": "row"; "required": false; }; }, {}, never, never, false, never>;
2657
+ }
2658
+
2659
+ /**
2660
+ * Renders a truthy boolean as a green check + domain label (via `trueLabel`);
2661
+ * a false value renders nothing, so the column reads as a clean presence marker.
2662
+ */
2663
+ declare class BooleanCellComponent {
2664
+ value: any;
2665
+ trueLabel: string;
2666
+ get isTrue(): boolean;
2667
+ static ɵfac: i0.ɵɵFactoryDeclaration<BooleanCellComponent, never>;
2668
+ static ɵcmp: i0.ɵɵComponentDeclaration<BooleanCellComponent, "lib-boolean-cell", never, { "value": { "alias": "value"; "required": false; }; "trueLabel": { "alias": "trueLabel"; "required": false; }; }, {}, never, never, false, never>;
2669
+ }
2670
+
2671
+ type TokenStatus = 'available' | 'expired' | 'none';
2672
+ interface TokenAction {
2673
+ label: string;
2674
+ action: string;
2675
+ icon: string;
2676
+ }
2677
+ /**
2678
+ * Enrollment-token cell for the identities list. Shows a status chip (Available /
2679
+ * Expired / —) that doubles as a dropdown of enrollment actions (Download JWT, Show
2680
+ * QR, Re-issue). Actions are emitted via the cell context's `emitAction`, so they run
2681
+ * through the same page handlers as the row ⋯ menu.
2682
+ */
2683
+ declare class TokenCellComponent {
2684
+ row: any;
2685
+ emitAction?: (action: string, item?: any) => void;
2686
+ trigger?: ElementRef<HTMLElement>;
2687
+ open: boolean;
2688
+ menuLeft: number;
2689
+ menuTop: number;
2690
+ get status(): TokenStatus;
2691
+ get statusLabel(): string;
2692
+ get actions(): TokenAction[];
2693
+ toggleMenu(event: MouseEvent): void;
2694
+ closeMenu(): void;
2695
+ runAction(action: string, event: MouseEvent): void;
2696
+ private get hasEnrolmentToken();
2697
+ private get tokenExpired();
2698
+ static ɵfac: i0.ɵɵFactoryDeclaration<TokenCellComponent, never>;
2699
+ static ɵcmp: i0.ɵɵComponentDeclaration<TokenCellComponent, "lib-token-cell", never, { "row": { "alias": "row"; "required": false; }; "emitAction": { "alias": "emitAction"; "required": false; }; }, {}, never, never, false, never>;
2700
+ }
2701
+
1985
2702
  declare class TableCellSelectComponent implements ICellRendererAngularComp {
1986
2703
  cellParams: any;
1987
2704
  item: any;
@@ -2227,6 +2944,7 @@ declare class EdgeRouterFormComponent extends ProjectableForm implements OnInit,
2227
2944
  clear(): void;
2228
2945
  isTunnelerDisabled(): boolean;
2229
2946
  get tunnelerEnabledReadOnly(): boolean;
2947
+ get isCustomerHosted(): boolean;
2230
2948
  static ɵfac: i0.ɵɵFactoryDeclaration<EdgeRouterFormComponent, never>;
2231
2949
  static ɵcmp: i0.ɵɵComponentDeclaration<EdgeRouterFormComponent, "lib-edge-router-form", never, { "edgeRouterRoleAttributes": { "alias": "edgeRouterRoleAttributes"; "required": false; }; }, { "close": "close"; }, never, ["[slot=tabs-slot]", "[slot=column-1-slot-1]", "[slot=column-2-slot-1]"], false, never>;
2232
2950
  }
@@ -3242,6 +3960,7 @@ declare class NetworkVisualizerComponent extends VisualizerServiceClass implemen
3242
3960
  dragended(event: any, d: any): void;
3243
3961
  removeTreeTooltip(): void;
3244
3962
  drawTreeTooltip(event: any, s: any): void;
3963
+ escapeHtml(value: any): string;
3245
3964
  readTreeKeyValues(event: any, d: any): string;
3246
3965
  static ɵfac: i0.ɵɵFactoryDeclaration<NetworkVisualizerComponent, never>;
3247
3966
  static ɵcmp: i0.ɵɵComponentDeclaration<NetworkVisualizerComponent, "app-network-visualizer", never, {}, {}, never, never, false, never>;
@@ -4643,6 +5362,9 @@ declare class JwtSigner {
4643
5362
  targetToken: string;
4644
5363
  enrollToCertEnabled: boolean;
4645
5364
  enrollToTokenEnabled: boolean;
5365
+ enrollAuthPolicyId: string;
5366
+ enrollNameClaimsSelector: string;
5367
+ enrollAttributeClaimsSelector: string;
4646
5368
  }
4647
5369
 
4648
5370
  declare class JwtSignerFormService {
@@ -4741,6 +5463,7 @@ declare class JwtSignerFormComponent extends ProjectableForm implements OnInit,
4741
5463
  oidcAuthTokenClaims: any;
4742
5464
  oidcClaims: any;
4743
5465
  overrideFormData: any;
5466
+ authPolicies: any[];
4744
5467
  usePreviousLocation: boolean;
4745
5468
  entityType: string;
4746
5469
  entityClass: typeof JwtSigner;
@@ -4749,6 +5472,7 @@ declare class JwtSignerFormComponent extends ProjectableForm implements OnInit,
4749
5472
  oidcVerification: ElementRef;
4750
5473
  constructor(svc: JwtSignerFormService, schemaSvc: SchemaService, growlerService: GrowlerService, extService: ExtensionService, settingsService: SettingsService, zitiService: ZitiDataService, router: Router, route: ActivatedRoute, location: Location, validationService: ValidationService, authService: AuthService, oauthService: OAuthService, http: HttpClient, loginService: LoginServiceClass, dialogForm: MatDialog);
4751
5474
  ngOnInit(): void;
5475
+ getAuthPolicies(): void;
4752
5476
  ngAfterViewInit(): void;
4753
5477
  protected entityUpdated(): void;
4754
5478
  ngOnDestroy(): void;
@@ -4763,6 +5487,8 @@ declare class JwtSignerFormComponent extends ProjectableForm implements OnInit,
4763
5487
  get showAutoEnrollment(): boolean;
4764
5488
  get targetToken(): any;
4765
5489
  set targetToken(val: any);
5490
+ get enrollAuthPolicyId(): any;
5491
+ set enrollAuthPolicyId(val: any);
4766
5492
  get apiCallURL(): string;
4767
5493
  get apiData(): any;
4768
5494
  _apiData: any;
@@ -5750,6 +6476,7 @@ declare class SettingsComponent implements OnInit {
5750
6476
  hideTags: boolean;
5751
6477
  transitions: boolean;
5752
6478
  isFilterAfterSave: boolean;
6479
+ betaFeatures: boolean;
5753
6480
  primaryColor: any;
5754
6481
  secondaryColor: any;
5755
6482
  constructor();
@@ -5757,6 +6484,7 @@ declare class SettingsComponent implements OnInit {
5757
6484
  swap(): void;
5758
6485
  hide(): void;
5759
6486
  filterAfter(): void;
6487
+ betaFeaturesChanged(): void;
5760
6488
  transitionsChange(): void;
5761
6489
  updateTransitions(): void;
5762
6490
  onPrimaryColorChange(color: any): void;
@@ -7776,7 +8504,7 @@ declare class GrowlerModule {
7776
8504
  declare function playerFactory(): Promise<typeof lottie_web>;
7777
8505
  declare class OpenZitiConsoleLibModule {
7778
8506
  static ɵfac: i0.ɵɵFactoryDeclaration<OpenZitiConsoleLibModule, never>;
7779
- static ɵmod: i0.ɵɵNgModuleDeclaration<OpenZitiConsoleLibModule, [typeof SafePipe, typeof ExtendableComponent, typeof StringInputComponent, typeof NumberInputComponent, typeof BooleanToggleInputComponent, typeof ObjectComponent, typeof SelectorInputComponent, typeof TextListInputComponent, typeof ChipsInputComponent, typeof CheckboxListInputComponent, typeof ProtocolAddressPortInputComponent, typeof SideNavbarComponent, typeof PasswordInputComponent, typeof TerminatorFormComponent, typeof ConfigurationsPageComponent, typeof ConfigTypesPageComponent, typeof ConfigTypeFormComponent, typeof ListPageHeaderComponent, typeof FilterBarComponent, typeof ListPageFormComponent, typeof IdentitiesPageComponent, typeof EdgeRoutersPageComponent, typeof TransitRoutersPageComponent, typeof DataTableComponent, typeof TableCellSelectComponent, typeof TableColumnSelectComponent, typeof TableCellMenuComponent, typeof TableColumnMenuComponent, typeof TableColumnDefaultComponent, typeof TableColumnFilterComponent, typeof IdentityFormComponent, typeof EdgeRouterFormComponent, typeof TransitRouterFormComponent, typeof HiddenColumnsBarComponent, typeof ConfirmComponent, typeof NoItemsComponent, typeof SideModalComponent, typeof FormHeaderComponent, typeof FormFieldContainerComponent, typeof PreviewListComponent, typeof LoadingIndicatorComponent, typeof FormFieldToggleComponent, typeof JsonViewComponent, typeof TagSelectorComponent, typeof QrCodeComponent, typeof TableCellTokenComponent, typeof OSTooltipComponent, typeof SDKTooltipComponent, typeof OverridesComponent, typeof ResetEnrollmentComponent, typeof IdentityServicePathComponent, typeof NetworkVisualizerComponent, typeof CustomTagsComponent, typeof ServicesPageComponent, typeof ServiceFormComponent, typeof PortRangesComponent, typeof ForwardingConfigComponent, typeof CardListComponent, typeof SimpleServiceComponent, typeof CardComponent, typeof CreationSummaryDialogComponent, typeof ConfigEditorComponent, typeof ServicePoliciesPageComponent, typeof ServicePolicyFormComponent, typeof EdgeRouterPoliciesPageComponent, typeof EdgeRouterPolicyFormComponent, typeof MultiActionButtonComponent, typeof TableCellNameComponent, typeof ServiceEdgeRouterPoliciesPageComponent, typeof ServiceEdgeRouterPolicyFormComponent, typeof TerminatorsPageComponent, typeof ConfigurationFormComponent, typeof JwtSignersPageComponent, typeof JwtSignerFormComponent, typeof AuthPoliciesPageComponent, typeof AuthPolicyFormComponent, typeof PreviewSelectionsComponent, typeof CertificateAuthoritiesPageComponent, typeof CertificateAuthorityFormComponent, typeof VerifyCertificateComponent, typeof LoginDialogComponent, typeof PostureChecksPageComponent, typeof PostureCheckFormComponent, typeof SessionsPageComponent, typeof SessionFormComponent, typeof APISessionsPageComponent, typeof APISessionFormComponent, typeof CallbackComponent, typeof ProgressMeterComponent, typeof ProgressWizardComponent, typeof SettingsComponent, typeof ProfileComponent, typeof GeolocateComponent, typeof MapLegendComponent, typeof EntityCountLegendComponent, typeof CircuitHopsTableComponent, typeof RouterPathTableComponent, typeof GeolocateFilterBarComponent, typeof SidePanelContainerComponent, typeof MarkerPanelComponent, typeof LinkPanelComponent, typeof CircuitPanelComponent, typeof EntityListPanelComponent, typeof UnlocatedPanelComponent, typeof ServicesWithCircuitsPanelComponent, typeof HaStatusIndicatorComponent, typeof AttributesComponent, typeof SideNavigatorComponent, typeof HeaderBarComponent, typeof QuickAddComponent, typeof DateRangeQuickHeaderComponent, typeof FilterSelectComponent, typeof FilterSelectOptionTemplateDirective, typeof FilterSelectTriggerTemplateDirective], [typeof i2.CommonModule, typeof i3.FormsModule, typeof i116.MatDialogModule, typeof i117.MatRadioModule, typeof ZacRoutingModule, typeof i119.MatDatepickerModule, typeof i120.MatNativeDateModule, typeof i121.MatFormFieldModule, typeof i122.MatInputModule, typeof i123.MatSelectModule, typeof i124.MatButtonModule, typeof i125.MatIconModule, typeof i126.OverlayModule, typeof i127.AgGridModule, typeof i128.QRCodeComponent, typeof i129.ClickOutsideModule, typeof i130.NgJsonEditorModule, typeof i131.MatTooltipModule, typeof i132.MatAutocompleteModule, typeof i133.LottieComponent, typeof DateTimePickerComponent], [typeof ExtendableComponent, typeof SideNavbarComponent, typeof StringInputComponent, typeof SelectorInputComponent, typeof PasswordInputComponent, typeof NumberInputComponent, typeof BooleanToggleInputComponent, typeof ObjectComponent, typeof TextListInputComponent, typeof ChipsInputComponent, typeof IdentityServicePathComponent, typeof NetworkVisualizerComponent, typeof CheckboxListInputComponent, typeof ProtocolAddressPortInputComponent, typeof ConfigurationsPageComponent, typeof ConfigurationFormComponent, typeof ConfigTypesPageComponent, typeof ConfigTypeFormComponent, typeof EdgeRouterFormComponent, typeof TransitRouterFormComponent, typeof IdentitiesPageComponent, typeof EdgeRoutersPageComponent, typeof TransitRoutersPageComponent, typeof ServicesPageComponent, typeof ZacRoutingModule, typeof SideModalComponent, typeof IdentityFormComponent, typeof LoadingIndicatorComponent, typeof GrowlerModule, typeof FormFieldContainerComponent, typeof FormFieldToggleComponent, typeof ServiceFormComponent, typeof ServicePoliciesPageComponent, typeof ServicePolicyFormComponent, typeof EdgeRouterPoliciesPageComponent, typeof TerminatorsPageComponent, typeof TerminatorFormComponent, typeof JwtSignersPageComponent, typeof JwtSignerFormComponent, typeof AuthPoliciesPageComponent, typeof AuthPolicyFormComponent, typeof LoginDialogComponent, typeof PostureChecksPageComponent, typeof PostureCheckFormComponent, typeof SessionsPageComponent, typeof SessionFormComponent, typeof APISessionsPageComponent, typeof APISessionFormComponent, typeof CallbackComponent, typeof FormHeaderComponent, typeof JsonViewComponent, typeof PreviewListComponent, typeof TagSelectorComponent, typeof ProgressMeterComponent, typeof ProgressWizardComponent, typeof ConfigEditorComponent, typeof SettingsComponent, typeof ProfileComponent, typeof GeolocateComponent, typeof AttributesComponent, typeof HeaderBarComponent, typeof SideNavigatorComponent, typeof FilterSelectComponent, typeof FilterSelectOptionTemplateDirective, typeof FilterSelectTriggerTemplateDirective]>;
8507
+ static ɵmod: i0.ɵɵNgModuleDeclaration<OpenZitiConsoleLibModule, [typeof SafePipe, typeof ExtendableComponent, typeof StringInputComponent, typeof NumberInputComponent, typeof BooleanToggleInputComponent, typeof ObjectComponent, typeof SelectorInputComponent, typeof TextListInputComponent, typeof ChipsInputComponent, typeof CheckboxListInputComponent, typeof ProtocolAddressPortInputComponent, typeof SideNavbarComponent, typeof PasswordInputComponent, typeof TerminatorFormComponent, typeof ConfigurationsPageComponent, typeof ConfigTypesPageComponent, typeof ConfigTypeFormComponent, typeof ListPageHeaderComponent, typeof ListTableHeaderComponent, typeof FilterBarComponent, typeof ListPageFormComponent, typeof IdentitiesPageComponent, typeof IdentitiesListPageComponent, typeof EdgeRoutersPageComponent, typeof TransitRoutersPageComponent, typeof DataTableComponent, typeof ListTableComponent, typeof ListMenuComponent, typeof NameCellComponent, typeof SelectCellComponent, typeof ListHeaderCellComponent, typeof ListFilterCellComponent, typeof OsInfoTooltipComponent, typeof SdkInfoTooltipComponent, typeof BooleanCellComponent, typeof TokenCellComponent, typeof TableCellSelectComponent, typeof TableColumnSelectComponent, typeof TableCellMenuComponent, typeof TableColumnMenuComponent, typeof TableColumnDefaultComponent, typeof TableColumnFilterComponent, typeof IdentityFormComponent, typeof EdgeRouterFormComponent, typeof TransitRouterFormComponent, typeof HiddenColumnsBarComponent, typeof ConfirmComponent, typeof NoItemsComponent, typeof SideModalComponent, typeof FormHeaderComponent, typeof FormFieldContainerComponent, typeof PreviewListComponent, typeof LoadingIndicatorComponent, typeof FormFieldToggleComponent, typeof JsonViewComponent, typeof TagSelectorComponent, typeof QrCodeComponent, typeof TableCellTokenComponent, typeof OSTooltipComponent, typeof SDKTooltipComponent, typeof OverridesComponent, typeof ResetEnrollmentComponent, typeof IdentityServicePathComponent, typeof NetworkVisualizerComponent, typeof CustomTagsComponent, typeof ServicesPageComponent, typeof ServiceFormComponent, typeof PortRangesComponent, typeof ForwardingConfigComponent, typeof CardListComponent, typeof SimpleServiceComponent, typeof CardComponent, typeof CreationSummaryDialogComponent, typeof ConfigEditorComponent, typeof ServicePoliciesPageComponent, typeof ServicePolicyFormComponent, typeof EdgeRouterPoliciesPageComponent, typeof EdgeRouterPolicyFormComponent, typeof MultiActionButtonComponent, typeof TableCellNameComponent, typeof ServiceEdgeRouterPoliciesPageComponent, typeof ServiceEdgeRouterPolicyFormComponent, typeof TerminatorsPageComponent, typeof ConfigurationFormComponent, typeof JwtSignersPageComponent, typeof JwtSignerFormComponent, typeof AuthPoliciesPageComponent, typeof AuthPolicyFormComponent, typeof PreviewSelectionsComponent, typeof CertificateAuthoritiesPageComponent, typeof CertificateAuthorityFormComponent, typeof VerifyCertificateComponent, typeof LoginDialogComponent, typeof PostureChecksPageComponent, typeof PostureCheckFormComponent, typeof SessionsPageComponent, typeof SessionFormComponent, typeof APISessionsPageComponent, typeof APISessionFormComponent, typeof CallbackComponent, typeof ProgressMeterComponent, typeof ProgressWizardComponent, typeof SettingsComponent, typeof ProfileComponent, typeof GeolocateComponent, typeof MapLegendComponent, typeof EntityCountLegendComponent, typeof CircuitHopsTableComponent, typeof RouterPathTableComponent, typeof GeolocateFilterBarComponent, typeof SidePanelContainerComponent, typeof MarkerPanelComponent, typeof LinkPanelComponent, typeof CircuitPanelComponent, typeof EntityListPanelComponent, typeof UnlocatedPanelComponent, typeof ServicesWithCircuitsPanelComponent, typeof HaStatusIndicatorComponent, typeof AttributesComponent, typeof SideNavigatorComponent, typeof HeaderBarComponent, typeof QuickAddComponent, typeof DateRangeQuickHeaderComponent, typeof FilterSelectComponent, typeof FilterSelectOptionTemplateDirective, typeof FilterSelectTriggerTemplateDirective], [typeof i2.CommonModule, typeof i3.FormsModule, typeof i128.MatDialogModule, typeof i129.MatRadioModule, typeof ZacRoutingModule, typeof i131.MatDatepickerModule, typeof i132.MatNativeDateModule, typeof i133.MatFormFieldModule, typeof i134.MatInputModule, typeof i135.MatSelectModule, typeof i136.MatButtonModule, typeof i137.MatIconModule, typeof i138.OverlayModule, typeof i139.DragDropModule, typeof i140.AgGridModule, typeof i141.QRCodeComponent, typeof i142.ClickOutsideModule, typeof i143.NgJsonEditorModule, typeof i144.MatTooltipModule, typeof i145.MatAutocompleteModule, typeof i146.LottieComponent, typeof DateTimePickerComponent], [typeof ExtendableComponent, typeof SideNavbarComponent, typeof StringInputComponent, typeof SelectorInputComponent, typeof PasswordInputComponent, typeof NumberInputComponent, typeof BooleanToggleInputComponent, typeof ObjectComponent, typeof TextListInputComponent, typeof ChipsInputComponent, typeof IdentityServicePathComponent, typeof NetworkVisualizerComponent, typeof CheckboxListInputComponent, typeof ProtocolAddressPortInputComponent, typeof ConfigurationsPageComponent, typeof ConfigurationFormComponent, typeof ConfigTypesPageComponent, typeof ConfigTypeFormComponent, typeof EdgeRouterFormComponent, typeof TransitRouterFormComponent, typeof IdentitiesPageComponent, typeof IdentitiesListPageComponent, typeof EdgeRoutersPageComponent, typeof TransitRoutersPageComponent, typeof ServicesPageComponent, typeof ZacRoutingModule, typeof SideModalComponent, typeof IdentityFormComponent, typeof LoadingIndicatorComponent, typeof GrowlerModule, typeof FormFieldContainerComponent, typeof FormFieldToggleComponent, typeof ServiceFormComponent, typeof ServicePoliciesPageComponent, typeof ServicePolicyFormComponent, typeof EdgeRouterPoliciesPageComponent, typeof TerminatorsPageComponent, typeof TerminatorFormComponent, typeof JwtSignersPageComponent, typeof JwtSignerFormComponent, typeof AuthPoliciesPageComponent, typeof AuthPolicyFormComponent, typeof LoginDialogComponent, typeof PostureChecksPageComponent, typeof PostureCheckFormComponent, typeof SessionsPageComponent, typeof SessionFormComponent, typeof APISessionsPageComponent, typeof APISessionFormComponent, typeof CallbackComponent, typeof FormHeaderComponent, typeof JsonViewComponent, typeof PreviewListComponent, typeof TagSelectorComponent, typeof ProgressMeterComponent, typeof ProgressWizardComponent, typeof ConfigEditorComponent, typeof SettingsComponent, typeof ProfileComponent, typeof GeolocateComponent, typeof AttributesComponent, typeof HeaderBarComponent, typeof SideNavigatorComponent, typeof FilterSelectComponent, typeof FilterSelectOptionTemplateDirective, typeof FilterSelectTriggerTemplateDirective, typeof ListTableComponent, typeof ListTableHeaderComponent]>;
7780
8508
  static ɵinj: i0.ɵɵInjectorDeclaration<OpenZitiConsoleLibModule>;
7781
8509
  }
7782
8510
 
@@ -8009,6 +8737,6 @@ declare const ZAC_VERSION: {
8009
8737
  version: string;
8010
8738
  };
8011
8739
 
8012
- export { APISessionFormComponent, APISessionsPageComponent, API_RESOURCE_TO_ENTITY_PERMISSION, ApiSessionsPageService, AttributesComponent, AuthPoliciesPageComponent, AuthPoliciesPageService, AuthPolicyFormComponent, AuthPolicyFormService, AuthService, BooleanToggleInputComponent, CallbackComponent, CardListComponent, CertificateAuthoritiesPageComponent, CertificateAuthoritiesPageService, CertificateAuthorityFormComponent, CertificateAuthorityFormService, CheckboxListInputComponent, ChipsInputComponent, ConfigEditorComponent, ConfigTypeFormComponent, ConfigTypesPageComponent, ConfigurationFormComponent, ConfigurationService, ConfigurationsPageComponent, CsvDownloadService, DEACTIVATE_GUARD, DEFAULT_APP_CONFIG, DataTableFilterService, DeactivateGuardService, EDGE_ROUTER_EXTENSION_SERVICE, EDGE_ROUTER_POLICY_EXTENSION_SERVICE, EdgeRouter, EdgeRouterFormComponent, EdgeRouterFormService, EdgeRouterPoliciesPageComponent, EdgeRouterPoliciesPageService, EdgeRouterPolicyFormComponent, EdgeRouterPolicyFormService, EdgeRoutersPageComponent, EdgeRoutersPageService, Entity, ExtendableComponent, ExtensionsNoopService, FilterSelectComponent, FilterSelectOptionTemplateDirective, FilterSelectTriggerTemplateDirective, FormFieldContainerComponent, FormFieldToggleComponent, FormHeaderComponent, GeolocateComponent, GrowlerComponent, GrowlerModel, GrowlerModule, GrowlerService, HAControllerService, HaStatusIndicatorComponent, HeaderBarComponent, IDENTITY_EXTENSION_SERVICE, IdentitiesPageComponent, IdentitiesPageService, Identity$1 as Identity, IdentityFormComponent, IdentityFormService, IdentityServicePathComponent, InsecureContextError, JsonViewComponent, JwtSignerFormComponent, JwtSignerFormService, JwtSignersPageComponent, JwtSignersPageService, KEY_CODES, ListPageComponent, ListPageServiceClass, LoadingIndicatorComponent, LoggerService, LoginDialogComponent, LoginServiceClass, ManagementPermissionsService, NetworkVisualizerComponent, NodeDataService, NoopLoginService, NoopTabInterceptorService, NumberInputComponent, OIDC_CLIENT_ID, OIDC_CLIENT_ID_LEGACY, ObjectComponent, OidcEnvironmentalError, OidcSessionUnrecoverableError, OpenZitiConsoleLibModule, PasswordInputComponent, PostureCheckFormComponent, PostureChecksPageComponent, PostureChecksPageService, PreviewListComponent, ProfileComponent, ProgressMeterComponent, ProgressMeterStep, ProgressWizardComponent, ProgressWizardStep, ProjectableForm, ProtocolAddressPortInputComponent, QuickAddComponent, ResetEnrollmentService, SAVE_DENIED_BY_PERMISSION_TOOLTIP, SERVICE_EDGE_ROUTER_POLICY_EXTENSION_SERVICE, SERVICE_EXTENSION_SERVICE, SERVICE_POLICY_EXTENSION_SERVICE, SETTINGS_SERVICE, SHAREDZ_EXTENSION, SelectorInputComponent, ServiceEdgeRouterPoliciesPageComponent, ServiceEdgeRouterPoliciesPageService, ServiceEdgeRouterPolicyFormComponent, ServiceEdgeRouterPolicyFormService, ServiceFormComponent, ServiceFormService, ServicePoliciesPageComponent, ServicePoliciesPageService, ServicePolicyFormComponent, ServicePolicyFormService, ServicesPageComponent, ServicesPageService, Session, SessionFormComponent, SessionRefreshService, SessionsPageComponent, SessionsPageService, SettingsComponent, SettingsService, SettingsServiceClass, SideModalComponent, SideNavbarComponent, SideNavigatorComponent, SimpleServiceComponent, StringInputComponent, TabNameService, TagSelectorComponent, TerminatorFormComponent, TerminatorFormService, TerminatorsPageComponent, TerminatorsPageService, TextListInputComponent, TransitRouterFormComponent, TransitRouterFormService, TransitRoutersPageComponent, TransitRoutersPageService, ValidationService, VerifyCertificateComponent, VisualizerServiceClass, ZAC_LOGIN_SERVICE, ZAC_VERSION, ZITI_DATA_SERVICE, ZITI_DOMAIN_CONTROLLER, ZITI_NAVIGATOR, ZITI_TAB_OVERRIDES, ZITI_URLS, ZacRoutingModule, ZitiControllerDataService, ZitiDataService, ZitiOidcService, decodeJwtPayload, jwtExpMs, jwtIatMs, pkceChallengeS256, playerFactory, randomUrlSafeString };
8013
- export type { CanComponentDeactivate, ExtensionEvent, ExtensionEventType, ExtensionService, FilterObj, HAClusterStatus, HAController, OidcAuthContext, OidcLoginStep, OidcTokenSet, TabInterceptorService, ZitiDomainControllerService, ZitiSessionData };
8740
+ export { APISessionFormComponent, APISessionsPageComponent, API_RESOURCE_TO_ENTITY_PERMISSION, ApiSessionsPageService, AttributesComponent, AuthPoliciesPageComponent, AuthPoliciesPageService, AuthPolicyFormComponent, AuthPolicyFormService, AuthService, BooleanCellComponent, BooleanToggleInputComponent, CallbackComponent, CardListComponent, CertificateAuthoritiesPageComponent, CertificateAuthoritiesPageService, CertificateAuthorityFormComponent, CertificateAuthorityFormService, CheckboxListInputComponent, ChipsInputComponent, ConfigEditorComponent, ConfigTypeFormComponent, ConfigTypesPageComponent, ConfigurationFormComponent, ConfigurationService, ConfigurationsPageComponent, CsvDownloadService, DEACTIVATE_GUARD, DEFAULT_APP_CONFIG, DataTableFilterService, DeactivateGuardService, EDGE_ROUTER_EXTENSION_SERVICE, EDGE_ROUTER_POLICY_EXTENSION_SERVICE, EdgeRouter, EdgeRouterFormComponent, EdgeRouterFormService, EdgeRouterPoliciesPageComponent, EdgeRouterPoliciesPageService, EdgeRouterPolicyFormComponent, EdgeRouterPolicyFormService, EdgeRoutersPageComponent, EdgeRoutersPageService, Entity, ExtendableComponent, ExtensionsNoopService, FilterSelectComponent, FilterSelectOptionTemplateDirective, FilterSelectTriggerTemplateDirective, FormFieldContainerComponent, FormFieldToggleComponent, FormHeaderComponent, GeolocateComponent, GrowlerComponent, GrowlerModel, GrowlerModule, GrowlerService, HAControllerService, HaStatusIndicatorComponent, HeaderBarComponent, IDENTITY_EXTENSION_SERVICE, IdentitiesListPageComponent, IdentitiesPageComponent, IdentitiesPageService, Identity$1 as Identity, IdentityFormComponent, IdentityFormService, IdentityServicePathComponent, InsecureContextError, JsonViewComponent, JwtSignerFormComponent, JwtSignerFormService, JwtSignersPageComponent, JwtSignersPageService, KEY_CODES, ListFilterCellComponent, ListHeaderCellComponent, ListMenuComponent, ListPageComponent, ListPageServiceClass, ListTableComponent, ListTableHeaderComponent, ListTableService, LoadingIndicatorComponent, LoggerService, LoginDialogComponent, LoginServiceClass, ManagementPermissionsService, NameCellComponent, NetworkVisualizerComponent, NodeDataService, NoopLoginService, NoopTabInterceptorService, NumberInputComponent, OIDC_CLIENT_ID, OIDC_CLIENT_ID_LEGACY, ObjectComponent, OidcEnvironmentalError, OidcSessionUnrecoverableError, OpenZitiConsoleLibModule, OsInfoTooltipComponent, PasswordInputComponent, PostureCheckFormComponent, PostureChecksPageComponent, PostureChecksPageService, PreviewListComponent, ProfileComponent, ProgressMeterComponent, ProgressMeterStep, ProgressWizardComponent, ProgressWizardStep, ProjectableForm, ProtocolAddressPortInputComponent, QuickAddComponent, ResetEnrollmentService, SAVE_DENIED_BY_PERMISSION_TOOLTIP, SERVICE_EDGE_ROUTER_POLICY_EXTENSION_SERVICE, SERVICE_EXTENSION_SERVICE, SERVICE_POLICY_EXTENSION_SERVICE, SETTINGS_SERVICE, SHAREDZ_EXTENSION, SdkInfoTooltipComponent, SelectCellComponent, SelectorInputComponent, ServiceEdgeRouterPoliciesPageComponent, ServiceEdgeRouterPoliciesPageService, ServiceEdgeRouterPolicyFormComponent, ServiceEdgeRouterPolicyFormService, ServiceFormComponent, ServiceFormService, ServicePoliciesPageComponent, ServicePoliciesPageService, ServicePolicyFormComponent, ServicePolicyFormService, ServicesPageComponent, ServicesPageService, Session, SessionFormComponent, SessionRefreshService, SessionsPageComponent, SessionsPageService, SettingsComponent, SettingsService, SettingsServiceClass, SideModalComponent, SideNavbarComponent, SideNavigatorComponent, SimpleServiceComponent, StringInputComponent, TabNameService, TagSelectorComponent, TerminatorFormComponent, TerminatorFormService, TerminatorsPageComponent, TerminatorsPageService, TextListInputComponent, TokenCellComponent, TransitRouterFormComponent, TransitRouterFormService, TransitRoutersPageComponent, TransitRoutersPageService, ValidationService, VerifyCertificateComponent, VisualizerServiceClass, ZAC_LOGIN_SERVICE, ZAC_VERSION, ZITI_DATA_SERVICE, ZITI_DOMAIN_CONTROLLER, ZITI_NAVIGATOR, ZITI_TAB_OVERRIDES, ZITI_URLS, ZacRoutingModule, ZitiControllerDataService, ZitiDataService, ZitiOidcService, decodeJwtPayload, jwtExpMs, jwtIatMs, pkceChallengeS256, playerFactory, randomUrlSafeString };
8741
+ export type { CanComponentDeactivate, ExtensionEvent, ExtensionEventType, ExtensionService, FilterObj, HAClusterStatus, HAController, ListCell, ListCellContext, ListColumn, ListLegacyCellShim, ListMenuItem, ListSortDir, OidcAuthContext, OidcLoginStep, OidcTokenSet, TabInterceptorService, ZitiDomainControllerService, ZitiSessionData };
8014
8742
  //# sourceMappingURL=index.d.ts.map