@ascentgl/ads-ui 21.98.0 → 21.100.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ascentgl/ads-ui",
3
- "version": "21.98.0",
3
+ "version": "21.100.0",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": ">=21.0.0",
6
6
  "date-fns": ">=4.1.0",
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { OnChanges, SimpleChanges, OnDestroy, EventEmitter, ElementRef, SimpleChange, OnInit, AfterContentInit, Renderer2, AfterViewInit, ChangeDetectorRef, TemplateRef, DoCheck, PipeTransform, AfterViewChecked, QueryList } from '@angular/core';
2
+ import { OnChanges, SimpleChanges, OnDestroy, EventEmitter, ElementRef, SimpleChange, OnInit, AfterContentInit, Renderer2, AfterViewInit, ChangeDetectorRef, TemplateRef, DoCheck, PipeTransform, AfterViewChecked, NgZone, QueryList } from '@angular/core';
3
3
  import * as i4 from '@ascentgl/ads-icons';
4
4
  import { AdsIconRegistry, IconThemes } from '@ascentgl/ads-icons';
5
5
  import * as i2 from '@angular/common';
@@ -49,14 +49,15 @@ import * as i4$6 from '@angular/material/menu';
49
49
  import { MatMenuTrigger, MatMenuPanel, MatMenu } from '@angular/material/menu';
50
50
  import * as i6$1 from '@angular/cdk/drag-drop';
51
51
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
52
- import * as i4$7 from 'ag-grid-angular';
52
+ import * as i5$4 from 'ag-grid-angular';
53
53
  import { IHeaderAngularComp } from 'ag-grid-angular';
54
- import * as i4$8 from 'angular-split';
54
+ import * as i3$8 from '@angular/cdk/scrolling';
55
+ import * as i4$7 from 'angular-split';
55
56
  import { SplitComponent, SplitGutterInteractionEvent } from 'angular-split';
56
57
  import * as i12 from '@angular/material/toolbar';
57
- import * as i3$8 from '@angular/material/bottom-sheet';
58
+ import * as i3$9 from '@angular/material/bottom-sheet';
58
59
  import { MatBottomSheet } from '@angular/material/bottom-sheet';
59
- import * as i4$9 from '@angular/material/list';
60
+ import * as i4$8 from '@angular/material/list';
60
61
  import * as i2$2 from '@angular/material/tabs';
61
62
  import { MatTabGroup } from '@angular/material/tabs';
62
63
  import { HttpClient } from '@angular/common/http';
@@ -230,7 +231,7 @@ declare class AdsButtonModule {
230
231
 
231
232
  declare class AdsButtonContainerComponent {
232
233
  /** How buttons in the container should be placed */
233
- justify: i0.InputSignal<"center" | "flex-start" | "flex-end">;
234
+ justify: i0.InputSignal<"flex-start" | "flex-end" | "center">;
234
235
  /** The gap between elements */
235
236
  gap: i0.InputSignal<number>;
236
237
  static ɵfac: i0.ɵɵFactoryDeclaration<AdsButtonContainerComponent, never>;
@@ -2573,7 +2574,7 @@ declare class AdsExpansionPanelComponent implements AfterContentInit {
2573
2574
  /** Component width. Must include units of measure: px, %, em, rem, etc. */
2574
2575
  width: i0.InputSignal<string>;
2575
2576
  /** The Chevron Icon size () */
2576
- chevronSize: i0.InputSignal<"xs" | "base">;
2577
+ chevronSize: i0.InputSignal<"base" | "xs">;
2577
2578
  /** Header padding size () */
2578
2579
  headerPadding: i0.InputSignal<string>;
2579
2580
  /** Content padding size () */
@@ -2767,7 +2768,7 @@ declare class AdsSortMenuComponent implements OnChanges, OnDestroy {
2767
2768
  /** All column sort/filter configs (all possible columns) */
2768
2769
  columnSortFilterConfigs: ColumnSortFilterConfig[];
2769
2770
  /** Current column sort states from the table */
2770
- columnSortStates: Map<string, "asc" | "desc" | null>;
2771
+ columnSortStates: Map<string, "desc" | "asc" | null>;
2771
2772
  /** Emits when sort configuration changes (order or direction) */
2772
2773
  sortChanged: EventEmitter<SortMenuChangeEvent>;
2773
2774
  /** Emits when sorts are removed for columns */
@@ -2891,8 +2892,9 @@ declare class AdsTableComponent implements AfterViewInit, AfterViewChecked, OnCh
2891
2892
  private elementRef;
2892
2893
  private registry;
2893
2894
  private cdr;
2895
+ private ngZone;
2894
2896
  /** @ignore */
2895
- constructor(elementRef: ElementRef, registry: AdsIconRegistry, cdr: ChangeDetectorRef);
2897
+ constructor(elementRef: ElementRef, registry: AdsIconRegistry, cdr: ChangeDetectorRef, ngZone: NgZone);
2896
2898
  /** The grid's width */
2897
2899
  width: string;
2898
2900
  /** The grid's height */
@@ -2921,7 +2923,10 @@ declare class AdsTableComponent implements AfterViewInit, AfterViewChecked, OnCh
2921
2923
  defaultViewMode: 'grid' | 'list';
2922
2924
  /** Template for rendering each row in list view mode */
2923
2925
  listItemTemplate?: TemplateRef<unknown>;
2924
- /** Number of list view items to render per batch. Defaults to 50. */
2926
+ /**
2927
+ * Number of list view items to render per batch.
2928
+ * @deprecated No longer used — list view now uses CDK virtual scrolling.
2929
+ */
2925
2930
  listBatchSize: number;
2926
2931
  /** Enable custom column sort/filter menu (optional, default false for backward compatibility) */
2927
2932
  enableCustomSortFilter: boolean;
@@ -2939,23 +2944,19 @@ declare class AdsTableComponent implements AfterViewInit, AfterViewChecked, OnCh
2939
2944
  values: string[];
2940
2945
  }>;
2941
2946
  /** Event emitted when view mode changes between grid and list */
2942
- viewChanged: EventEmitter<"grid" | "list">;
2947
+ viewChanged: EventEmitter<"list" | "grid">;
2943
2948
  /** @ignore - Current view mode: grid or list */
2944
2949
  isListView: i0.WritableSignal<boolean>;
2945
- /** @ignore - Number of list rows currently rendered (grows in batches) */
2946
- private renderedListCount;
2947
- /** @ignore - Cached filtered row data for list view (avoids recalculating on every access) */
2948
- private listRowDataCache;
2949
- /** @ignore - Visible slice of list rows for incremental rendering */
2950
- visibleListRows: i0.Signal<GENERIC_COLLECTION[]>;
2951
- /** @ignore - Whether there are more rows to render */
2952
- hasMoreListRows: i0.Signal<boolean>;
2953
- /** @ignore - Sentinel element reference for IntersectionObserver */
2954
- private listSentinelQuery;
2955
- /** @ignore - IntersectionObserver for incremental list rendering */
2956
- private listSentinelObserver?;
2957
- /** @ignore - Currently observed sentinel element */
2958
- private observedSentinelEl?;
2950
+ /** @ignore - Cached filtered row data for list view */
2951
+ listRowDataCache: i0.WritableSignal<GENERIC_COLLECTION[]>;
2952
+ /** @ignore - Measured height (in px) of a single list-view item, used by CdkVirtualScrollViewport */
2953
+ listItemHeight: i0.WritableSignal<number>;
2954
+ /** @ignore - Reference to the CDK virtual scroll viewport for list view */
2955
+ private virtualScrollViewport?;
2956
+ /** @ignore - Whether the list item height has been measured after rendering */
2957
+ private _listItemHeightMeasured;
2958
+ /** @ignore - ResizeObserver for re-measuring list item height when container width changes */
2959
+ private _listResizeObserver?;
2959
2960
  /** @ignore */
2960
2961
  menuTrigger: MatMenuTrigger;
2961
2962
  /** @ignore */
@@ -2983,7 +2984,7 @@ declare class AdsTableComponent implements AfterViewInit, AfterViewChecked, OnCh
2983
2984
  /** @ignore */
2984
2985
  activeColumnMenu: i0.WritableSignal<string | null>;
2985
2986
  /** @ignore */
2986
- columnSortStates: i0.WritableSignal<Map<string, "asc" | "desc" | null>>;
2987
+ columnSortStates: i0.WritableSignal<Map<string, "desc" | "asc" | null>>;
2987
2988
  /** @ignore */
2988
2989
  columnFilterStates: i0.WritableSignal<Map<string, string[]>>;
2989
2990
  /** @ignore */
@@ -3011,16 +3012,6 @@ declare class AdsTableComponent implements AfterViewInit, AfterViewChecked, OnCh
3011
3012
  /** @ignore - Cache for getAgGridIcons() to avoid producing new object references on every CD cycle */
3012
3013
  private _agGridIconsCache;
3013
3014
  private _agGridIconsDirty;
3014
- /** @ignore - Number of list items to render synchronously on the first frame when toggling to list view */
3015
- private readonly INITIAL_LIST_RENDER_COUNT;
3016
- /** @ignore - Number of list items to add per animation frame during progressive rendering */
3017
- private readonly LIST_RENDER_CHUNK_SIZE;
3018
- /** @ignore - Handle for the pending rAF that fills the first batch, so it can be cancelled on destroy or re-toggle */
3019
- private _listRenderRafId;
3020
- /** @ignore - Target rendered count for the current progressive render pass */
3021
- private _listRenderTarget;
3022
- /** @ignore - Whether a progressive render pass is currently in progress */
3023
- private _listRenderInProgress;
3024
3015
  /** @ignore */
3025
3016
  private getBreakpoint;
3026
3017
  /** @ignore */
@@ -3035,10 +3026,16 @@ declare class AdsTableComponent implements AfterViewInit, AfterViewChecked, OnCh
3035
3026
  private refreshColumnHeaders;
3036
3027
  /** @ignore */
3037
3028
  ngAfterViewInit(): void;
3038
- /** @ignore - Re-observe sentinel when ViewChildren change (e.g. after switching to list view) */
3029
+ /** @ignore - Measure list item height after the viewport renders items */
3039
3030
  ngAfterViewChecked(): void;
3040
- /** @ignore - Set up IntersectionObserver on the sentinel element for incremental list rendering */
3041
- private observeListSentinel;
3031
+ /** @ignore - Measure the actual rendered height of a list-view item and update the virtual scroll item size */
3032
+ private measureListItemHeight;
3033
+ /** @ignore - Set up a ResizeObserver to re-measure item height when container width changes */
3034
+ private setupListResizeObserver;
3035
+ /** @ignore */
3036
+ private teardownListResizeObserver;
3037
+ /** @ignore - trackBy function for *cdkVirtualFor */
3038
+ listTrackBy: (index: number, _item: GENERIC_COLLECTION) => number;
3042
3039
  /** @ignore */
3043
3040
  private initializeColumnVisibility;
3044
3041
  /** @ignore */
@@ -3108,13 +3105,7 @@ declare class AdsTableComponent implements AfterViewInit, AfterViewChecked, OnCh
3108
3105
  filterChanged($event: FilterChangedEvent): void;
3109
3106
  /** @ignore - Toggle between grid view and list view */
3110
3107
  toggleView(): void;
3111
- /** @ignore - Cancel pending rAF for progressive list rendering */
3112
- private cancelListRenderRaf;
3113
- /** @ignore - Progressively render list items in small chunks across animation frames up to the given target */
3114
- private scheduleProgressiveRender;
3115
- /** @ignore - Progressively render list items in small chunks across animation frames */
3116
- private scheduleNextListRenderChunk;
3117
- /** @ignore - Refresh the list view data cache and reset rendered count */
3108
+ /** @ignore - Refresh the list view data cache and scroll to top */
3118
3109
  private refreshListView;
3119
3110
  /** @ignore - Get filtered and sorted row data for list view */
3120
3111
  getFilteredRowData(): GENERIC_COLLECTION[];
@@ -3376,7 +3367,7 @@ declare class AdsFilterMenuModule {
3376
3367
 
3377
3368
  declare class AdsTableModule {
3378
3369
  static ɵfac: i0.ɵɵFactoryDeclaration<AdsTableModule, never>;
3379
- static ɵmod: i0.ɵɵNgModuleDeclaration<AdsTableModule, [typeof AdsTableComponent], [typeof i2.CommonModule, typeof i4.AdsIconModule, typeof i4$7.AgGridAngular, typeof i2$1.MatDialogModule, typeof AdsSlideToggle, typeof AdsButtonModule, typeof AdsTableButtonModule, typeof AdsDividerModule, typeof i16.MatTooltip, typeof i4$6.MatMenuModule, typeof AdsColumnSortFilterMenuModule, typeof AdsFilterMenuModule, typeof AdsSortMenuModule, typeof AdsCustomHeaderModule, typeof AdsProgressSpinnerModule], [typeof AdsTableComponent]>;
3370
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AdsTableModule, [typeof AdsTableComponent], [typeof i2.CommonModule, typeof i3$8.ScrollingModule, typeof i4.AdsIconModule, typeof i5$4.AgGridAngular, typeof i2$1.MatDialogModule, typeof AdsSlideToggle, typeof AdsButtonModule, typeof AdsTableButtonModule, typeof AdsDividerModule, typeof i16.MatTooltip, typeof i4$6.MatMenuModule, typeof AdsColumnSortFilterMenuModule, typeof AdsFilterMenuModule, typeof AdsSortMenuModule, typeof AdsCustomHeaderModule, typeof AdsProgressSpinnerModule], [typeof AdsTableComponent]>;
3380
3371
  static ɵinj: i0.ɵɵInjectorDeclaration<AdsTableModule>;
3381
3372
  }
3382
3373
 
@@ -3499,7 +3490,7 @@ declare class AdsSideNavBarComponent extends AbstractSideNavBarComponent {
3499
3490
 
3500
3491
  declare class AdsSideNavBarModule {
3501
3492
  static ɵfac: i0.ɵɵFactoryDeclaration<AdsSideNavBarModule, never>;
3502
- static ɵmod: i0.ɵɵNgModuleDeclaration<AdsSideNavBarModule, [typeof AdsSideNavBarComponent], [typeof i2.CommonModule, typeof AdsPrimaryLogoModule, typeof i4$8.SplitComponent, typeof i4$8.SplitAreaComponent, typeof i3$2.RouterOutlet, typeof i3$2.RouterLink, typeof i3$2.RouterLinkActive, typeof i4.AdsIconModule, typeof AdsDividerModule], [typeof AdsSideNavBarComponent]>;
3493
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AdsSideNavBarModule, [typeof AdsSideNavBarComponent], [typeof i2.CommonModule, typeof AdsPrimaryLogoModule, typeof i4$7.SplitComponent, typeof i4$7.SplitAreaComponent, typeof i3$2.RouterOutlet, typeof i3$2.RouterLink, typeof i3$2.RouterLinkActive, typeof i4.AdsIconModule, typeof AdsDividerModule], [typeof AdsSideNavBarComponent]>;
3503
3494
  static ɵinj: i0.ɵɵInjectorDeclaration<AdsSideNavBarModule>;
3504
3495
  }
3505
3496
 
@@ -3574,7 +3565,7 @@ declare class AdsScmsSideNavBarComponent extends AbstractSideNavBarComponent {
3574
3565
 
3575
3566
  declare class AdsScmsSideNavBarModule {
3576
3567
  static ɵfac: i0.ɵɵFactoryDeclaration<AdsScmsSideNavBarModule, never>;
3577
- static ɵmod: i0.ɵɵNgModuleDeclaration<AdsScmsSideNavBarModule, [typeof AdsScmsSideNavBarComponent], [typeof i2.CommonModule, typeof i4$8.SplitComponent, typeof i4$8.SplitAreaComponent, typeof i3$2.RouterLink, typeof i3$2.RouterLinkActive, typeof i4.AdsIconModule, typeof AdsDividerModule, typeof i7.MatAccordion, typeof i7.MatExpansionPanel, typeof i7.MatExpansionPanelDescription, typeof i7.MatExpansionPanelHeader, typeof i7.MatExpansionPanelTitle, typeof AdsAscentLogoModule, typeof i16.MatTooltip, typeof AdsBreadcrumbModule, typeof i4$6.MatMenu, typeof i12.MatToolbar, typeof i4$6.MatMenuTrigger, typeof i3$1.MatIconButton, typeof i3$2.RouterOutlet], [typeof AdsScmsSideNavBarComponent]>;
3568
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AdsScmsSideNavBarModule, [typeof AdsScmsSideNavBarComponent], [typeof i2.CommonModule, typeof i4$7.SplitComponent, typeof i4$7.SplitAreaComponent, typeof i3$2.RouterLink, typeof i3$2.RouterLinkActive, typeof i4.AdsIconModule, typeof AdsDividerModule, typeof i7.MatAccordion, typeof i7.MatExpansionPanel, typeof i7.MatExpansionPanelDescription, typeof i7.MatExpansionPanelHeader, typeof i7.MatExpansionPanelTitle, typeof AdsAscentLogoModule, typeof i16.MatTooltip, typeof AdsBreadcrumbModule, typeof i4$6.MatMenu, typeof i12.MatToolbar, typeof i4$6.MatMenuTrigger, typeof i3$1.MatIconButton, typeof i3$2.RouterOutlet], [typeof AdsScmsSideNavBarComponent]>;
3578
3569
  static ɵinj: i0.ɵɵInjectorDeclaration<AdsScmsSideNavBarModule>;
3579
3570
  }
3580
3571
 
@@ -3743,7 +3734,7 @@ declare class AdsProfileDisplayModule {
3743
3734
 
3744
3735
  declare class AdsMainMenuModule {
3745
3736
  static ɵfac: i0.ɵɵFactoryDeclaration<AdsMainMenuModule, never>;
3746
- static ɵmod: i0.ɵɵNgModuleDeclaration<AdsMainMenuModule, [typeof AdsMainMenuComponent], [typeof i2.CommonModule, typeof i3$8.MatBottomSheetModule, typeof i4$9.MatListModule, typeof i4$6.MatMenuModule, typeof i4.AdsIconModule, typeof AdsMainMenuItemsModule, typeof AdsProfileDisplayModule, typeof i3$2.RouterModule], [typeof AdsMainMenuComponent]>;
3737
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AdsMainMenuModule, [typeof AdsMainMenuComponent], [typeof i2.CommonModule, typeof i3$9.MatBottomSheetModule, typeof i4$8.MatListModule, typeof i4$6.MatMenuModule, typeof i4.AdsIconModule, typeof AdsMainMenuItemsModule, typeof AdsProfileDisplayModule, typeof i3$2.RouterModule], [typeof AdsMainMenuComponent]>;
3747
3738
  static ɵinj: i0.ɵɵInjectorDeclaration<AdsMainMenuModule>;
3748
3739
  }
3749
3740