@one-paragon/angular-utilities 1.2.11 → 1.2.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/action-state/ngrx.d.ts +1 -1
  2. package/esm2022/table-builder/classes/TableBuilderDataSource.mjs +18 -27
  3. package/esm2022/table-builder/classes/table-builder.mjs +2 -2
  4. package/esm2022/table-builder/classes/table-store.mjs +9 -13
  5. package/esm2022/table-builder/components/column-builder/column-helpers.mjs +1 -3
  6. package/esm2022/table-builder/components/gen-col-displayer/gen-col-displayer.component.mjs +11 -17
  7. package/esm2022/table-builder/components/generic-table/generic-table.component.mjs +21 -20
  8. package/esm2022/table-builder/components/generic-table/paginator.component.mjs +58 -56
  9. package/esm2022/table-builder/components/table-container/table-container.mjs +55 -51
  10. package/esm2022/table-builder/components/table-container/virtual-scroll-container.mjs +57 -34
  11. package/esm2022/table-builder/directives/tb-filter.directive.mjs +10 -19
  12. package/esm2022/table-builder/services/export-to-csv.service.mjs +6 -16
  13. package/fesm2022/one-paragon-angular-utilities.mjs +239 -242
  14. package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -1
  15. package/package.json +1 -1
  16. package/table-builder/classes/TableBuilderDataSource.d.ts +4 -4
  17. package/table-builder/classes/table-store.d.ts +5 -3
  18. package/table-builder/components/gen-col-displayer/gen-col-displayer.component.d.ts +5 -3
  19. package/table-builder/components/generic-table/generic-table.component.d.ts +3 -1
  20. package/table-builder/components/generic-table/paginator.component.d.ts +20 -19
  21. package/table-builder/components/table-container/table-container-imports.d.ts +2 -2
  22. package/table-builder/components/table-container/table-container.d.ts +10 -11
  23. package/table-builder/components/table-container/virtual-scroll-container.d.ts +15 -2
  24. package/table-builder/directives/table-wrapper.directive.d.ts +1 -1
  25. package/table-builder/directives/tb-filter.directive.d.ts +2 -3
  26. package/table-builder/services/export-to-csv.service.d.ts +1 -6
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@one-paragon/angular-utilities",
3
- "version": "1.2.11",
3
+ "version": "1.2.13",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "18.2.2",
6
6
  "@angular/core": "18.2.2",
@@ -1,12 +1,12 @@
1
1
  import { MatTableDataSource } from '@angular/material/table';
2
- import { Observable, Subscription } from 'rxjs';
2
+ import { Subscription } from 'rxjs';
3
3
  import { TableStore } from './table-store';
4
4
  import { DataStore } from './data-store';
5
+ import { Signal } from '@angular/core';
5
6
  export declare class TableBuilderDataSource<T> extends MatTableDataSource<T> {
6
- dataSrc: Observable<T[]>;
7
+ dataSrc: Signal<T[]>;
7
8
  subscription?: Subscription;
8
- constructor(dataSrc: Observable<T[]>, state: TableStore, data: DataStore);
9
- dataToShow$: Observable<T[]>;
9
+ constructor(dataSrc: Signal<T[]>, state: TableStore, data: DataStore);
10
10
  connect(): import("rxjs").BehaviorSubject<T[]>;
11
11
  disconnect(): void;
12
12
  }
@@ -85,6 +85,8 @@ export declare class TableStore extends ComponentStore<TableState> {
85
85
  private initializeOrder;
86
86
  toggleCollapseHeader: () => void;
87
87
  toggleCollapseFooter: () => void;
88
+ $collapseFooter: import("@angular/core").Signal<boolean>;
89
+ $collapseHeader: import("@angular/core").Signal<boolean>;
88
90
  addGroupByKey: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
89
91
  removeGroupByKey: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
90
92
  updateExpandedGroups: (observableOrValue: {
@@ -122,14 +124,14 @@ export declare class TableStore extends ComponentStore<TableState> {
122
124
  getIsExpanded: (columnKey: string, groupHeaderKey: string) => import("@angular/core").Signal<boolean>;
123
125
  $isVirtual: import("@angular/core").Signal<boolean>;
124
126
  $viewType: import("@angular/core").Signal<ViewType>;
125
- viewType$: Observable<ViewType>;
127
+ $orderedCodeVisibleMetaDatas: import("@angular/core").Signal<MetaData[]>;
126
128
  $orderedVisibleColumns: import("@angular/core").Signal<string[]>;
129
+ $currentPage: import("@angular/core").Signal<number>;
130
+ $pageSize: import("@angular/core").Signal<number>;
127
131
  static ɵfac: i0.ɵɵFactoryDeclaration<TableStore, never>;
128
132
  static ɵprov: i0.ɵɵInjectableDeclaration<TableStore>;
129
133
  }
130
- export declare const orderedVisibleColumns: (state: TableState) => string[];
131
134
  export declare const orderedStateVisibleMetaData: (state: TableState) => MetaData[];
132
- export declare const orderedVisibleMetaData: (metaData: Dictionary<MetaData>, userDefinedOrder: Dictionary<number>, hiddenKeys: string[]) => MetaData[];
133
135
  export declare const orderedCodeVisibleMetaData: (state: TableState) => MetaData[];
134
136
  export declare const orderStateMetaData: (state: TableState) => MetaData[];
135
137
  export declare const orderMetaData: (metaData: Dictionary<MetaData>, userDefined: Dictionary<number>) => MetaData[];
@@ -1,11 +1,13 @@
1
1
  import { DisplayCol } from '../../classes/display-col';
2
- import { Observable } from 'rxjs';
3
2
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class GenColDisplayerComponent {
6
5
  private tableState;
7
- columns$: Observable<DisplayCol[]>;
8
- constructor();
6
+ $columns: import("@angular/core").Signal<{
7
+ key: string;
8
+ displayName: string | undefined;
9
+ isVisible: boolean;
10
+ }[]>;
9
11
  reset(displayCols: DisplayCol[]): void;
10
12
  drop(event: CdkDragDrop<string[]>): void;
11
13
  unset(displayCols: DisplayCol[]): void;
@@ -41,7 +41,6 @@ export declare class GenericTableComponent implements OnInit {
41
41
  myColumns: import("@angular/core").WritableSignal<Dictionary<ColumnBuilderComponent>>;
42
42
  $showHeader: import("@angular/core").Signal<boolean>;
43
43
  offset$: Observable<number>;
44
- offsetIndex: number;
45
44
  dataView: Observable<any[]>;
46
45
  constructor();
47
46
  defaultTrackBy: (index: number, item: any) => any;
@@ -50,6 +49,9 @@ export declare class GenericTableComponent implements OnInit {
50
49
  $keys: import("@angular/core").Signal<string[]>;
51
50
  keys$: Observable<string[]>;
52
51
  ngOnInit(): void;
52
+ $usePaginator: import("@angular/core").Signal<boolean>;
53
+ $useVirtualScroll: import("@angular/core").Signal<boolean>;
54
+ $offsetIndex: import("@angular/core").Signal<number>;
53
55
  isGroupHeader(_: number, row: {
54
56
  isGroupHeader: boolean;
55
57
  }): boolean;
@@ -1,29 +1,30 @@
1
- import { AfterViewInit, OnInit, ElementRef } from '@angular/core';
2
- import { MatPaginator } from '@angular/material/paginator';
3
- import { Observable } from 'rxjs';
1
+ import { ElementRef } from '@angular/core';
2
+ import { MatPaginator, PageEvent } from '@angular/material/paginator';
4
3
  import * as i0 from "@angular/core";
5
- export declare class PaginatorComponent implements OnInit, AfterViewInit {
4
+ export declare class PaginatorComponent {
6
5
  private state;
7
6
  private data;
8
- paginator: MatPaginator;
9
- currentPageData$: Observable<CurrentPageDetails>;
7
+ $paginator: import("@angular/core").Signal<MatPaginator | undefined>;
8
+ $tableElRef: import("@angular/core").InputSignal<ElementRef<HTMLDivElement>>;
9
+ $dataLength: import("@angular/core").Signal<number>;
10
+ pageEvent$: import("rxjs").Observable<PageEvent>;
11
+ $pageEvent: import("@angular/core").Signal<PageEvent | undefined>;
12
+ $pageIndexChangeEvent: import("@angular/core").Signal<number | undefined>;
13
+ $pageSizeChangeEvent: import("@angular/core").Signal<number | undefined>;
14
+ $currentPageData: import("@angular/core").Signal<{
15
+ total: number;
16
+ currentStart: number;
17
+ currentEnd: number;
18
+ } | undefined>;
19
+ onPageIndexEffect: import("@angular/core").EffectRef;
20
+ onPageSizeEffect: import("@angular/core").EffectRef;
21
+ onMetaPageSizeEffect: import("@angular/core").EffectRef;
22
+ onDataLengthEffect: import("@angular/core").EffectRef;
10
23
  $collapseFooter: import("@angular/core").Signal<boolean>;
11
- data$: Observable<any[]>;
12
- tableElRef: ElementRef;
13
- ngOnInit(): void;
14
- ngAfterViewInit(): void;
15
- paginatorChange(): void;
16
- ourPageEvent: boolean;
17
24
  $showAllOption: import("@angular/core").Signal<boolean>;
18
25
  $showAll: import("@angular/core").Signal<boolean>;
19
26
  updatePaginator: () => void;
20
27
  showAll(): void;
21
28
  static ɵfac: i0.ɵɵFactoryDeclaration<PaginatorComponent, never>;
22
- static ɵcmp: i0.ɵɵComponentDeclaration<PaginatorComponent, "tb-paginator", never, { "data$": { "alias": "data$"; "required": false; }; "tableElRef": { "alias": "tableElRef"; "required": true; }; }, {}, never, never, true, never>;
29
+ static ɵcmp: i0.ɵɵComponentDeclaration<PaginatorComponent, "tb-paginator", never, { "$tableElRef": { "alias": "tableElRef"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
23
30
  }
24
- interface CurrentPageDetails {
25
- currentStart: number;
26
- currentEnd: number;
27
- total: number;
28
- }
29
- export {};
@@ -3,7 +3,7 @@ import { LetDirective } from "@ngrx/component";
3
3
  import { MultiSortDirective } from "../../directives";
4
4
  import { GroupByListComponent } from "../group-by-list/group-by-list.component";
5
5
  import { FilterChipsComponent } from "../table-container-filter/filter-list/filter-list.component";
6
- import { MatButtonModule } from "@angular/material/button";
6
+ import { MatTooltipModule } from "@angular/material/tooltip";
7
7
  import { GenericTableComponent } from "../generic-table/generic-table.component";
8
8
  import { GenFilterDisplayerComponent } from "../table-container-filter/gen-filter-displayer/gen-filter-displayer.component";
9
9
  import { GenColDisplayerComponent } from "../gen-col-displayer/gen-col-displayer.component";
@@ -11,4 +11,4 @@ import { SortMenuComponent } from "../sort-menu/sort-menu.component";
11
11
  import { StopPropagationDirective } from "../../../utilities";
12
12
  import { PaginatorComponent } from "../generic-table/paginator.component";
13
13
  import { VirtualScrollContainer } from "./virtual-scroll-container";
14
- export declare const containerImports: (typeof MatButtonModule | typeof NgTemplateOutlet | typeof AsyncPipe | typeof GenericTableComponent | typeof PaginatorComponent | typeof LetDirective | typeof MultiSortDirective | typeof GroupByListComponent | typeof FilterChipsComponent | typeof GenFilterDisplayerComponent | typeof GenColDisplayerComponent | typeof SortMenuComponent | typeof StopPropagationDirective | typeof VirtualScrollContainer)[];
14
+ export declare const containerImports: (typeof AsyncPipe | typeof MatTooltipModule | typeof StopPropagationDirective | typeof GenColDisplayerComponent | typeof GenFilterDisplayerComponent | typeof LetDirective | typeof FilterChipsComponent | typeof NgTemplateOutlet | typeof GenericTableComponent | typeof PaginatorComponent | typeof VirtualScrollContainer | typeof MultiSortDirective | typeof GroupByListComponent | typeof SortMenuComponent)[];
@@ -6,7 +6,7 @@ import { MatRowDef } from '@angular/material/table';
6
6
  import { CustomCellDirective, TableCustomFilterDirective, TableFilterDirective } from '../../directives';
7
7
  import { TableStore } from '../../classes/table-store';
8
8
  import { ExportToCsvService } from '../../services/export-to-csv.service';
9
- import { TableState } from '../../classes/TableState';
9
+ import { InitializationState, TableState } from '../../classes/TableState';
10
10
  import { TableWrapperDirective } from '../../directives/table-wrapper.directive';
11
11
  import { TableBuilderStateStore } from '../../ngrx/tableBuilderStateStore';
12
12
  import { TableProps } from './tableProps';
@@ -15,7 +15,7 @@ import { GenericTableComponent } from '../generic-table/generic-table.component'
15
15
  import * as i0 from "@angular/core";
16
16
  export declare class TableContainerComponent<T = any> implements OnInit, OnDestroy {
17
17
  props: TableProps;
18
- dataSubject: ReplaySubject<Observable<T[]>>;
18
+ data: BehaviorSubject<T[]>;
19
19
  state: TableStore;
20
20
  private dataStore;
21
21
  config: import("../../classes/TableBuilderConfig").TableBuilderConfig;
@@ -25,8 +25,8 @@ export declare class TableContainerComponent<T = any> implements OnInit, OnDestr
25
25
  injector: Injector;
26
26
  filterDirectives: import("@angular/core").Signal<readonly TableFilterDirective[]>;
27
27
  customFilterDirectives: import("@angular/core").Signal<readonly TableCustomFilterDirective<any>[]>;
28
- allFilterDirectives: import("@angular/core").Signal<(TableFilterDirective | TableCustomFilterDirective<any>)[]>;
29
- tableState: import("@angular/core").Signal<TableState | undefined>;
28
+ $allFilterDirectives: import("@angular/core").Signal<(TableCustomFilterDirective<any> | TableFilterDirective)[]>;
29
+ $isInitializationState: (state: InitializationState) => import("@angular/core").Signal<boolean>;
30
30
  allFilterDirectivesEffect: import("@angular/core").EffectRef;
31
31
  paginatorComponent?: PaginatorComponent;
32
32
  genericTable?: GenericTableComponent;
@@ -49,20 +49,20 @@ export declare class TableContainerComponent<T = any> implements OnInit, OnDestr
49
49
  trackBy: string;
50
50
  inputFilters?: Observable<Array<Predicate<T>>>;
51
51
  selection$: EventEmitter<any>;
52
- data: Observable<T[]>;
52
+ $data: import("@angular/core").Signal<T[]>;
53
53
  onStateReset: EventEmitter<any>;
54
54
  onSaveState: EventEmitter<any>;
55
55
  state$: Observable<import("../../classes/TableState").PersistedTableState>;
56
56
  clearSelections(): void;
57
- displayDataSubject: ReplaySubject<Observable<T[]>>;
58
- displayData: Observable<T[]>;
57
+ displayData: ReplaySubject<T[]>;
59
58
  $displayData: import("@angular/core").Signal<T[]>;
60
- collapseFooter$: Observable<boolean>;
59
+ $collapseFooter: import("@angular/core").Signal<boolean>;
60
+ $collapseHeader: import("@angular/core").Signal<boolean>;
61
61
  ngOnDestroy(): void;
62
62
  firstPage(): void;
63
63
  lastPage(): void;
64
64
  resetState(): void;
65
- initializeState(): void;
65
+ private initializeStateEffect;
66
66
  customFilters$: BehaviorSubject<Predicate<T>[]>;
67
67
  initializeData(): void;
68
68
  ngOnInit(): void;
@@ -72,9 +72,8 @@ export declare class TableContainerComponent<T = any> implements OnInit, OnDestr
72
72
  collapseAllGroups: () => void;
73
73
  ngAfterContentInit(): void;
74
74
  mapArrayFieldsMetaDatas: (meta: MetaData<T>) => MetaData<T>;
75
- collapseHeader$: Observable<boolean>;
76
75
  addFilterDirectives: (state: TableState) => void;
77
76
  $useVirtual: import("@angular/core").Signal<boolean>;
78
77
  static ɵfac: i0.ɵɵFactoryDeclaration<TableContainerComponent<any>, never>;
79
- static ɵcmp: i0.ɵɵComponentDeclaration<TableContainerComponent<any>, "tb-table-container", never, { "tableBuilder": { "alias": "tableBuilder"; "required": true; }; "tableId": { "alias": "tableId"; "required": false; }; "indexColumn": { "alias": "indexColumn"; "required": false; }; "selectionColumn": { "alias": "selectionColumn"; "required": false; }; "isSticky": { "alias": "isSticky"; "required": false; }; "stickyFooter": { "alias": "stickyFooter"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "groupHeaderTemplate": { "alias": "groupHeaderTemplate"; "required": false; }; "groupHeaderHeight": { "alias": "groupHeaderHeight"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "inputFilters": { "alias": "inputFilters"; "required": false; }; }, { "selection$": "selection$"; "data": "data"; "onStateReset": "onStateReset"; "onSaveState": "onSaveState"; "state$": "state$"; }, ["filterDirectives", "customFilterDirectives", "$customCells", "tableElRef", "customRows"], ["[before]", ".tb-header-title"], true, never>;
78
+ static ɵcmp: i0.ɵɵComponentDeclaration<TableContainerComponent<any>, "tb-table-container", never, { "tableBuilder": { "alias": "tableBuilder"; "required": true; }; "tableId": { "alias": "tableId"; "required": false; }; "indexColumn": { "alias": "indexColumn"; "required": false; }; "selectionColumn": { "alias": "selectionColumn"; "required": false; }; "isSticky": { "alias": "isSticky"; "required": false; }; "stickyFooter": { "alias": "stickyFooter"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "groupHeaderTemplate": { "alias": "groupHeaderTemplate"; "required": false; }; "groupHeaderHeight": { "alias": "groupHeaderHeight"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "inputFilters": { "alias": "inputFilters"; "required": false; }; }, { "data": "data"; "selection$": "selection$"; "onStateReset": "onStateReset"; "onSaveState": "onSaveState"; "state$": "state$"; }, ["filterDirectives", "customFilterDirectives", "$customCells", "tableElRef", "customRows"], ["[before]", ".tb-header-title"], true, never>;
80
79
  }
@@ -9,9 +9,22 @@ export declare class VirtualScrollContainer implements OnDestroy {
9
9
  viewport: import("@angular/core").Signal<CdkVirtualScrollViewport | undefined>;
10
10
  defaultOptions: VirtualScrollOptions;
11
11
  scrollStrategy: TableVirtualScrollStrategy;
12
- dataLength$: import("rxjs").Observable<number>;
12
+ $usePaginator: import("@angular/core").Signal<boolean>;
13
+ $pageSize: import("@angular/core").Signal<number>;
14
+ $currentPage: import("@angular/core").Signal<number>;
15
+ $showAll: import("@angular/core").Signal<boolean>;
16
+ $stateDataLength: import("@angular/core").Signal<number>;
17
+ $dataLength: import("@angular/core").Signal<number>;
18
+ constructor();
19
+ setViewportEffect: import("@angular/core").EffectRef;
13
20
  subscriber: import("../../../rxjs").Subscriber;
14
- _: import("@angular/core").EffectRef;
21
+ onRenderedRangeEffect: import("@angular/core").EffectRef;
22
+ onDataLengthEffect: import("@angular/core").EffectRef;
23
+ onOffsetEffect: import("@angular/core").EffectRef;
24
+ viewPort$: import("rxjs").Observable<CdkVirtualScrollViewport>;
25
+ $scrolledIndexChange: import("@angular/core").Signal<number | undefined>;
26
+ $renderedRange: import("@angular/core").Signal<import("@angular/cdk/collections").ListRange | undefined>;
27
+ $offset: import("@angular/core").Signal<number>;
15
28
  ngOnDestroy(): void;
16
29
  setSize(el: ElementRef<HTMLElement>): void;
17
30
  resizeHandler: () => void;
@@ -1,7 +1,7 @@
1
1
  import { TableCustomFilterDirective, TableFilterDirective } from "./tb-filter.directive";
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TableWrapperDirective {
4
- $registrations: import("@angular/core").WritableSignal<(TableFilterDirective | TableCustomFilterDirective<any>)[]>;
4
+ $registrations: import("@angular/core").WritableSignal<(TableCustomFilterDirective<any> | TableFilterDirective)[]>;
5
5
  register(filter: TableCustomFilterDirective | TableFilterDirective): void;
6
6
  static ɵfac: i0.ɵɵFactoryDeclaration<TableWrapperDirective, never>;
7
7
  static ɵdir: i0.ɵɵDirectiveDeclaration<TableWrapperDirective, "[tbWrapper]", never, {}, {}, never, never, true, never>;
@@ -4,7 +4,6 @@ import { CustomFilter, FilterInfo } from "../classes/filter-info";
4
4
  import { FilterType } from "../enums/filterTypes";
5
5
  import { FieldType } from "../interfaces/report-def";
6
6
  import { NgControl } from "@angular/forms";
7
- import { ComponentStore } from "@ngrx/component-store";
8
7
  import { TableWrapperDirective } from "./table-wrapper.directive";
9
8
  import * as i0 from "@angular/core";
10
9
  export declare abstract class TableCustomFilterDirective<T = any> {
@@ -17,12 +16,12 @@ export declare abstract class TableCustomFilterDirective<T = any> {
17
16
  static ɵfac: i0.ɵɵFactoryDeclaration<TableCustomFilterDirective<any>, never>;
18
17
  static ɵdir: i0.ɵɵDirectiveDeclaration<TableCustomFilterDirective<any>, " ", never, {}, {}, never, never, false, never>;
19
18
  }
20
- export declare class TableFilterDirective extends ComponentStore<FilterInfo> {
19
+ export declare class TableFilterDirective {
21
20
  protected model: NgControl | null;
22
21
  private wrapper;
23
22
  constructor();
24
23
  reset(): void;
25
- filter$: Observable<FilterInfo<any, any>>;
24
+ filter$: Subject<FilterInfo<any, any>>;
26
25
  filterType: FilterType;
27
26
  key: string;
28
27
  fieldType: FieldType;
@@ -1,19 +1,14 @@
1
- import { Observable } from 'rxjs';
2
1
  import { TableStore } from '../classes/table-store';
3
2
  import { MetaData } from '../interfaces/report-def';
4
- import { TableState } from '../classes/TableState';
5
3
  import * as i0 from "@angular/core";
6
4
  export declare class ExportToCsvService<T> {
7
5
  state: TableStore;
8
6
  private config;
9
7
  private datePipe;
10
- exportToCsv: (data: Observable<T[]>) => void;
8
+ exportToCsv: (data: T[]) => void;
11
9
  csvData: (data: Array<T>, metaData: MetaData<T>[]) => string;
12
10
  metaToField: (meta: MetaData<T>, row: T) => any;
13
11
  private transform;
14
12
  static ɵfac: i0.ɵɵFactoryDeclaration<ExportToCsvService<any>, never>;
15
13
  static ɵprov: i0.ɵɵInjectableDeclaration<ExportToCsvService<any>>;
16
14
  }
17
- export declare const removeFromMetaData: (state: TableState, keysToRemove: string[]) => MetaData[];
18
- export declare const nonExportableFields: (state: TableState) => string[];
19
- export declare const mapExportableFields: (state: TableState) => MetaData[];