@one-paragon/angular-utilities 2.0.15 → 2.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/one-paragon-angular-utilities.mjs +553 -440
- package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -1
- package/package.json +1 -1
- package/table-builder/classes/table-builder-general-settings.d.ts +25 -11
- package/table-builder/classes/table-builder.d.ts +14 -9
- package/table-builder/classes/table-store.d.ts +3 -1
- package/table-builder/components/column-builder/column-builder.component.d.ts +1 -1
- package/table-builder/components/generic-table/generic-table.component.d.ts +4 -1
- package/table-builder/components/reset-menu/reset-menu.component.d.ts +1 -1
- package/table-builder/components/scroll-strategy.d.ts +25 -10
- package/table-builder/components/table-container/table-container.d.ts +40 -21
- package/table-builder/components/table-container/table-container.helpers/data-state.helpers.d.ts +3 -2
- package/table-builder/components/table-container/table-container.helpers/groupBy.helpers.d.ts +10 -3
- package/table-builder/components/table-container/virtual-scroll-container.d.ts +5 -8
- package/table-builder/directives/table-wrapper.directive.d.ts +1 -1
- package/table-builder/directives/tb-filter.directive.d.ts +4 -1
- package/table-builder/functions/sort-data-function.d.ts +0 -1
- package/table-builder/interfaces/report-def.d.ts +3 -3
- package/table-builder/services/transform-creator.d.ts +4 -12
- package/table-builder/table-builder.module.d.ts +6 -13
- package/utilities/directives/styler.d.ts +4 -4
- package/utilities/pipes/phone.pipe.d.ts +1 -0
package/package.json
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Predicate } from "@angular/core";
|
|
2
|
+
import { Dictionary } from "../interfaces/dictionary";
|
|
3
|
+
import { StylerStyle } from "../../utilities/directives/styler";
|
|
4
|
+
export interface TableBuilderSettings<T = any> {
|
|
5
|
+
headerSettings?: Partial<TableWrapperHeaderSettings>;
|
|
6
|
+
footerSettings?: Partial<TableWrapperFooterSettings>;
|
|
7
|
+
columnHeaderSettings?: Partial<TableColumnHeaderSettings>;
|
|
8
|
+
columnFooterSettings?: Partial<TableColumnFooterSettings>;
|
|
9
|
+
tableSettings?: Partial<TableSettings<T>>;
|
|
10
|
+
}
|
|
2
11
|
export declare class GeneralTableSettings implements TableBuilderSettings {
|
|
3
12
|
headerSettings: TableWrapperHeaderSettings;
|
|
4
13
|
footerSettings: TableWrapperFooterSettings;
|
|
5
14
|
columnHeaderSettings: TableColumnHeaderSettings;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
export interface TableBuilderSettings {
|
|
10
|
-
headerSettings?: Partial<TableWrapperHeaderSettings>;
|
|
11
|
-
footerSettings?: Partial<TableWrapperFooterSettings>;
|
|
12
|
-
columnHeaderSettings?: Partial<TableColumnHeaderSettings>;
|
|
13
|
-
tableSettings?: Partial<TableSettings>;
|
|
14
|
-
injector?: Injector;
|
|
15
|
+
columnFooterSettings: TableColumnFooterSettings;
|
|
16
|
+
tableSettings: TableSettings<any>;
|
|
15
17
|
}
|
|
16
18
|
export declare class TableWrapperHeaderSettings {
|
|
17
19
|
hideExport: boolean;
|
|
@@ -27,10 +29,18 @@ export declare class TableWrapperFooterSettings {
|
|
|
27
29
|
collapse: boolean;
|
|
28
30
|
}
|
|
29
31
|
export declare class TableColumnHeaderSettings {
|
|
32
|
+
stickyHeaderRow: boolean;
|
|
30
33
|
noFilters: boolean;
|
|
31
34
|
noHeader: boolean;
|
|
32
35
|
}
|
|
33
|
-
export declare class
|
|
36
|
+
export declare class TableColumnFooterSettings {
|
|
37
|
+
stickyFooterRow: boolean;
|
|
38
|
+
}
|
|
39
|
+
export declare class TableSettings<T = any> {
|
|
40
|
+
tableId?: string | undefined;
|
|
41
|
+
trackBy?: string | undefined;
|
|
42
|
+
includeIndexColumn: boolean;
|
|
43
|
+
includeSelectionColumn: boolean;
|
|
34
44
|
usePaginator: boolean | undefined;
|
|
35
45
|
useVirtualScroll: boolean | undefined;
|
|
36
46
|
paginatorSettings: Partial<PaginatorOptions> | undefined;
|
|
@@ -38,6 +48,8 @@ export declare class TableSettings {
|
|
|
38
48
|
rowHeight: TbSize | undefined;
|
|
39
49
|
groupHeaderHeight?: TbSize;
|
|
40
50
|
minColumnWidth: TbSize | undefined;
|
|
51
|
+
rowClasses: Dictionary<Predicate<T> | true> | undefined;
|
|
52
|
+
rowStyles: StylerStyle<T> | undefined;
|
|
41
53
|
}
|
|
42
54
|
export declare class PersistedTableSettings {
|
|
43
55
|
constructor(tableSettings?: NonFunctionProperties<PersistedTableSettings>);
|
|
@@ -63,6 +75,8 @@ export declare class NotPersistedTableSettings {
|
|
|
63
75
|
rowHeight?: TbSize | undefined;
|
|
64
76
|
headerHeight?: TbSize;
|
|
65
77
|
minColumnWidth?: TbSize | undefined;
|
|
78
|
+
rowClasses?: Dictionary<Predicate<any> | true> | undefined;
|
|
79
|
+
rowStyles?: StylerStyle | undefined;
|
|
66
80
|
}
|
|
67
81
|
export declare class VirtualScrollOptions {
|
|
68
82
|
rowHeight: TbSize;
|
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { MetaData, ReportDef } from '../interfaces/report-def';
|
|
3
3
|
import { TableBuilderSettings } from './table-builder-general-settings';
|
|
4
|
-
import { Signal } from '@angular/core';
|
|
4
|
+
import { Injector, Signal } from '@angular/core';
|
|
5
5
|
export declare class TableBuilder<T = any> {
|
|
6
|
-
|
|
7
|
-
data
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
#private;
|
|
7
|
+
private data;
|
|
8
|
+
private metaData?;
|
|
9
|
+
private settings;
|
|
10
|
+
$metaData: Signal<MetaData<T>[] | undefined>;
|
|
11
|
+
$settings: Signal<TableBuilderSettings<any> | undefined>;
|
|
12
|
+
metaNeedsPrep: boolean;
|
|
13
|
+
dataIsObservable: boolean;
|
|
14
|
+
settingsIsObservable: boolean;
|
|
15
|
+
$initialized: import("@angular/core").WritableSignal<boolean>;
|
|
16
|
+
constructor(data: TableBuilderArgs<T[]>, metaData?: TableBuilderArgs<MetaData<T, any>[]> | undefined, settings?: TableBuilderArgs<TableBuilderSettings<T>>);
|
|
17
|
+
prep(injector: Injector): void;
|
|
18
|
+
$data: Signal<T[]>;
|
|
11
19
|
createMetaData(obj: any): MetaData[];
|
|
12
|
-
coerceToObservable<T>(arg: TableBuilderArgs<T>, settings: Observable<TableBuilderSettings>): Observable<T>;
|
|
13
|
-
coerceSettingsToObservable(settings: TableBuilderArgs<TableBuilderSettings>): Observable<TableBuilderSettings>;
|
|
14
|
-
assertInjector(s: TableBuilderSettings): void;
|
|
15
20
|
}
|
|
16
21
|
export declare const CreateTableBuilder: (reportDef$: Observable<ReportDef>) => TableBuilder;
|
|
17
22
|
type TableBuilderArgs<T> = T | Observable<T> | Signal<T>;
|
|
@@ -30,6 +30,7 @@ export declare class TableStore extends ComponentStore<TableState> {
|
|
|
30
30
|
$preSort: Signal<Sort[]>;
|
|
31
31
|
$selectSorted: Signal<Sort[]>;
|
|
32
32
|
selectSorted$: Observable<Sort[]>;
|
|
33
|
+
$getSorts: Signal<Sort[]>;
|
|
33
34
|
sort$: Observable<Sort[]>;
|
|
34
35
|
$getUserDefinedTableWidth: Signal<number | undefined>;
|
|
35
36
|
getUserDefinedTableWidth$: Observable<number | undefined>;
|
|
@@ -42,6 +43,7 @@ export declare class TableStore extends ComponentStore<TableState> {
|
|
|
42
43
|
$groupByKeys: Signal<string[]>;
|
|
43
44
|
groupByKeys$: Observable<string[]>;
|
|
44
45
|
expandedGroups$: Observable<GroupedData[]>;
|
|
46
|
+
$expandGroups: Signal<GroupedData[]>;
|
|
45
47
|
$getIsExpanded: (columnKey: string, groupHeaderKey: string) => Signal<boolean>;
|
|
46
48
|
$currentPage: Signal<number>;
|
|
47
49
|
$pageSize: Signal<number>;
|
|
@@ -57,7 +59,7 @@ export declare class TableStore extends ComponentStore<TableState> {
|
|
|
57
59
|
readonly resetPart: (observableOrValue: "Sorting" | "Filters" | "Group By" | "Hidden Columns" | "Column Widths" | "Column Order" | "Row Height" | "Header Height" | "Page Size" | "Show All" | Observable<"Sorting" | "Filters" | "Group By" | "Hidden Columns" | "Column Widths" | "Column Order" | "Row Height" | "Header Height" | "Page Size" | "Show All">) => import("rxjs").Subscription;
|
|
58
60
|
readonly updateStateFromPersistedState: (observableOrValue: PersistedTableState | Observable<PersistedTableState>) => import("rxjs").Subscription;
|
|
59
61
|
private updateStateFunc;
|
|
60
|
-
readonly setTableSettings: (observableOrValue: TableBuilderSettings | Observable<TableBuilderSettings
|
|
62
|
+
readonly setTableSettings: (observableOrValue: TableBuilderSettings<any> | Observable<TableBuilderSettings<any>>) => import("rxjs").Subscription;
|
|
61
63
|
readonly setMetaData: (observableOrValue: MetaData[] | Observable<MetaData[]>) => import("rxjs").Subscription;
|
|
62
64
|
readonly showColumn: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
|
|
63
65
|
readonly hideColumn: (observableOrValue: string | Observable<string>) => import("rxjs").Subscription;
|
|
@@ -6,7 +6,7 @@ import { Dictionary } from '@ngrx/entity';
|
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export declare class ColumnBuilderComponent {
|
|
8
8
|
FieldType: typeof FieldType;
|
|
9
|
-
private
|
|
9
|
+
private config;
|
|
10
10
|
private table;
|
|
11
11
|
private state;
|
|
12
12
|
private templateService;
|
|
@@ -12,7 +12,7 @@ export declare class GenericTableComponent {
|
|
|
12
12
|
protected state: TableStore;
|
|
13
13
|
private dataStore;
|
|
14
14
|
private viewContainer;
|
|
15
|
-
private
|
|
15
|
+
private config;
|
|
16
16
|
private _injector;
|
|
17
17
|
smallFooter: number;
|
|
18
18
|
$headerRow: import("@angular/core").Signal<MatHeaderRowDef | undefined>;
|
|
@@ -41,6 +41,7 @@ export declare class GenericTableComponent {
|
|
|
41
41
|
drop(event: CdkDragDrop<string[]>): void;
|
|
42
42
|
$usePaginator: import("@angular/core").Signal<boolean>;
|
|
43
43
|
$useVirtualScroll: import("@angular/core").Signal<boolean>;
|
|
44
|
+
$virtualStart: import("@angular/core").Signal<number>;
|
|
44
45
|
$offsetIndex: import("@angular/core").Signal<number>;
|
|
45
46
|
isGroupHeader(_: number, row: {
|
|
46
47
|
isGroupHeader: boolean;
|
|
@@ -67,6 +68,8 @@ export declare class GenericTableComponent {
|
|
|
67
68
|
$groupHeaderHeight: import("@angular/core").Signal<string | undefined>;
|
|
68
69
|
$footerHeight: import("@angular/core").Signal<string | undefined>;
|
|
69
70
|
$stickyFooter: import("@angular/core").Signal<boolean | undefined>;
|
|
71
|
+
$rowStyles: import("@angular/core").Signal<import("../../../utilities").StylerStyle>;
|
|
72
|
+
$rowClasses: import("@angular/core").Signal<Dictionary<true | import("@angular/core").Predicate<any>>>;
|
|
70
73
|
static ɵfac: i0.ɵɵFactoryDeclaration<GenericTableComponent, never>;
|
|
71
74
|
static ɵcmp: i0.ɵɵComponentDeclaration<GenericTableComponent, "tb-generic-table", never, { "$displayDataLength": { "alias": "displayDataLength"; "required": true; "isSignal": true; }; "$data": { "alias": "data"; "required": true; "isSignal": true; }; "$rows": { "alias": "rows"; "required": false; "isSignal": true; }; "$columnInfos": { "alias": "columnInfos"; "required": true; "isSignal": true; }; "$dataSource": { "alias": "dataSource"; "required": true; "isSignal": true; }; "$trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; }, { "selection$": "selection"; }, never, never, true, never>;
|
|
72
75
|
}
|
|
@@ -15,7 +15,7 @@ export declare class ResetMenuComponent {
|
|
|
15
15
|
$widthsSet: import("@angular/core").Signal<number>;
|
|
16
16
|
$rowHeightSet: import("@angular/core").Signal<number | undefined>;
|
|
17
17
|
headerHeightSet: import("@angular/core").Signal<number | undefined>;
|
|
18
|
-
pageSizeSet: import("@angular/core").Signal<
|
|
18
|
+
pageSizeSet: import("@angular/core").Signal<boolean | 0 | undefined>;
|
|
19
19
|
showAllSet: import("@angular/core").Signal<boolean | undefined>;
|
|
20
20
|
$set: import("@angular/core").Signal<("Sorting" | "Filters" | "Group By" | "Hidden Columns" | "Column Widths" | "Column Order" | "Row Height" | "Header Height" | "Page Size" | "Show All")[]>;
|
|
21
21
|
resetable: readonly ["Sorting", "Filters", "Group By", "Hidden Columns", "Column Widths", "Column Order", "Row Height", "Header Height", "Page Size", "Show All"];
|
|
@@ -1,30 +1,45 @@
|
|
|
1
1
|
import { CdkVirtualScrollViewport, VirtualScrollStrategy } from '@angular/cdk/scrolling';
|
|
2
|
-
import {
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
3
|
import { VirtualScrollContainer } from './table-container/virtual-scroll-container';
|
|
4
4
|
import { Signal } from '@angular/core';
|
|
5
|
+
import { DataStore } from '../classes/data-store';
|
|
5
6
|
export declare class TableVirtualScrollStrategy implements VirtualScrollStrategy {
|
|
6
7
|
#private;
|
|
7
|
-
|
|
8
|
-
private
|
|
8
|
+
constructor(scrollContainer: VirtualScrollContainer, dataStore: DataStore);
|
|
9
|
+
private dataStore;
|
|
9
10
|
private readonly indexChange;
|
|
10
|
-
|
|
11
|
+
scrolledIndexChange: import("rxjs").Observable<number>;
|
|
12
|
+
private viewport;
|
|
13
|
+
private $dataLength;
|
|
14
|
+
$dataLengthChange: import("@angular/core").WritableSignal<{
|
|
15
|
+
curr: number;
|
|
16
|
+
previous: number;
|
|
17
|
+
}>;
|
|
11
18
|
$rowHeight: Signal<number>;
|
|
12
19
|
$rowHeightChange: import("@angular/core").WritableSignal<{
|
|
13
20
|
curr: number;
|
|
14
21
|
previous: number;
|
|
15
22
|
}>;
|
|
16
23
|
$headerHeight: Signal<number>;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
24
|
+
$headerHeightChange: import("@angular/core").WritableSignal<{
|
|
25
|
+
curr: number;
|
|
26
|
+
previous: number;
|
|
27
|
+
}>;
|
|
28
|
+
contentScrolled$: Subject<number>;
|
|
20
29
|
sub: import("../../rxjs").Subscriber;
|
|
21
30
|
onContentScrolled(): void;
|
|
31
|
+
$currentRange: import("@angular/core").WritableSignal<{
|
|
32
|
+
start: number;
|
|
33
|
+
end: number;
|
|
34
|
+
}>;
|
|
35
|
+
private updateContent;
|
|
36
|
+
update(trigger: ScrollStrategyTrigger, viewport: CdkVirtualScrollViewport, needsScroll?: boolean): void;
|
|
37
|
+
attach(viewport: CdkVirtualScrollViewport): void;
|
|
22
38
|
onDataLengthChanged(): void;
|
|
23
|
-
setDataLength(length: number): void;
|
|
24
39
|
detach(): void;
|
|
25
40
|
onContentRendered(): void;
|
|
26
41
|
onRenderedOffsetChanged(): void;
|
|
27
42
|
scrollToIndex(index: number, behavior: ScrollBehavior): void;
|
|
28
|
-
private updateContent;
|
|
29
|
-
update(trigger: string): void;
|
|
30
43
|
}
|
|
44
|
+
type ScrollStrategyTrigger = 'scroll' | 'data length' | 'header height' | 'row height';
|
|
45
|
+
export {};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Predicate, TemplateRef,
|
|
2
|
-
import { BehaviorSubject, Observable } from 'rxjs';
|
|
1
|
+
import { Predicate, TemplateRef, Injector, ElementRef } from '@angular/core';
|
|
3
2
|
import { TableBuilder } from '../../classes/table-builder';
|
|
4
3
|
import { MatRowDef } from '@angular/material/table';
|
|
5
4
|
import { CustomCellDirective, TableCustomFilterDirective, TableFilterDirective } from '../../directives';
|
|
6
5
|
import { TableStore } from '../../classes/table-store';
|
|
6
|
+
import { GroupedData } from '../../classes/TableState';
|
|
7
7
|
import { CustomFilter, FilterInfo } from '../../classes/filter-info';
|
|
8
8
|
import { TableWrapperDirective } from '../../directives/table-wrapper.directive';
|
|
9
9
|
import { TableBuilderStateStore } from '../../ngrx/tableBuilderStateStore';
|
|
@@ -14,7 +14,7 @@ import { GenericTableComponent } from '../generic-table/generic-table.component'
|
|
|
14
14
|
import { SelectionChange } from '@angular/cdk/collections';
|
|
15
15
|
import { MatMenu } from '@angular/material/menu';
|
|
16
16
|
import * as i0 from "@angular/core";
|
|
17
|
-
export declare class TableContainerComponent<T = any>
|
|
17
|
+
export declare class TableContainerComponent<T = any> {
|
|
18
18
|
#private;
|
|
19
19
|
state: TableStore;
|
|
20
20
|
private dataStore;
|
|
@@ -33,27 +33,24 @@ export declare class TableContainerComponent<T = any> implements OnDestroy {
|
|
|
33
33
|
$menu: import("@angular/core").Signal<MatMenu>;
|
|
34
34
|
menuInjector: Injector;
|
|
35
35
|
$tableBuilder: import("@angular/core").InputSignal<TableBuilder<T>>;
|
|
36
|
-
$
|
|
37
|
-
$
|
|
38
|
-
$inputFilters: import("@angular/core").
|
|
39
|
-
predicateInputFilters$: Observable<((...args: any[]) => any)[]>;
|
|
36
|
+
$tableIdInput: import("@angular/core").InputSignal<string | undefined>;
|
|
37
|
+
$trackByInput: import("@angular/core").InputSignal<string | undefined>;
|
|
38
|
+
$inputFilters: import("@angular/core").InputSignal<(Predicate<T> | CustomFilter<T> | FilterInfo<any, T>)[]>;
|
|
40
39
|
$filterInfoInputs: import("@angular/core").Signal<(FilterInfo<any, any> | CustomFilter<any>)[]>;
|
|
41
|
-
$
|
|
42
|
-
$
|
|
43
|
-
$
|
|
44
|
-
$
|
|
40
|
+
$indexColumnInput: import("@angular/core").InputSignal<boolean>;
|
|
41
|
+
$selectionColumnInput: import("@angular/core").InputSignal<boolean>;
|
|
42
|
+
$stickyHeaderInput: import("@angular/core").InputSignal<boolean>;
|
|
43
|
+
$stickyFooterInput: import("@angular/core").InputSignal<boolean>;
|
|
45
44
|
$groupHeaderTemplate: import("@angular/core").InputSignal<TemplateRef<any> | undefined>;
|
|
46
45
|
$groupHeaderHeight: import("@angular/core").InputSignal<number | undefined>;
|
|
47
46
|
$pageSize: import("@angular/core").InputSignal<number | undefined>;
|
|
48
|
-
$props: import("@angular/core").Signal<TableProps>;
|
|
49
47
|
selection$: import("@angular/core").OutputEmitterRef<SelectionChange<T>>;
|
|
50
48
|
onStateReset$: import("@angular/core").OutputEmitterRef<null>;
|
|
51
49
|
onSaveState$: import("@angular/core").OutputEmitterRef<null>;
|
|
52
|
-
_state$: Observable<import("../../classes/TableState").PersistedTableState>;
|
|
53
50
|
state$: import("@angular/core").OutputRef<import("../../classes/TableState").PersistedTableState>;
|
|
54
|
-
_data$: BehaviorSubject<T[]>;
|
|
55
|
-
data$: import("@angular/core").OutputRef<T[]>;
|
|
56
51
|
$data: import("@angular/core").Signal<T[]>;
|
|
52
|
+
data$: import("@angular/core").OutputRef<T[]>;
|
|
53
|
+
private $displayData;
|
|
57
54
|
clearSelections(): void;
|
|
58
55
|
firstPage(): void;
|
|
59
56
|
lastPage(): void;
|
|
@@ -67,18 +64,40 @@ export declare class TableContainerComponent<T = any> implements OnDestroy {
|
|
|
67
64
|
protected $collapsedFooter: import("@angular/core").Signal<boolean>;
|
|
68
65
|
protected $collapsedHeader: import("@angular/core").Signal<boolean>;
|
|
69
66
|
protected $displayDataLength: import("@angular/core").Signal<number>;
|
|
67
|
+
$tableBuilderSettings: import("@angular/core").Signal<import("../../classes/table-builder-general-settings").TableBuilderSettings<any> | undefined>;
|
|
68
|
+
$trackBy: import("@angular/core").Signal<string | undefined>;
|
|
69
|
+
$tableId: import("@angular/core").Signal<string | undefined>;
|
|
70
|
+
$includeSelectionColumn: import("@angular/core").Signal<boolean>;
|
|
71
|
+
$includeIndexColumn: import("@angular/core").Signal<boolean>;
|
|
72
|
+
$stickyHeader: import("@angular/core").Signal<boolean>;
|
|
73
|
+
$stickyFooter: import("@angular/core").Signal<boolean>;
|
|
74
|
+
$props: import("@angular/core").Signal<TableProps>;
|
|
70
75
|
private $persistedState;
|
|
71
76
|
private $allFilterDirectives;
|
|
72
|
-
private allNotSavableFilterDirectivesFilters$;
|
|
73
|
-
private tableBuilderMetaData$;
|
|
74
77
|
private $tableBuilderMetaData;
|
|
75
78
|
private $allMetaDatas;
|
|
76
|
-
private $
|
|
77
|
-
|
|
78
|
-
private
|
|
79
|
+
private $preds;
|
|
80
|
+
private $predicateFiltersState;
|
|
81
|
+
private $savableFiltersState;
|
|
82
|
+
private $allFilterStatesTimeStamped;
|
|
83
|
+
private $sortStateTimeStamped;
|
|
84
|
+
private $allData;
|
|
85
|
+
private $allDataTimeStamped;
|
|
86
|
+
private $allTimeStamped;
|
|
87
|
+
private $sortedAndFilteredData;
|
|
88
|
+
$timestampedGroups: import("@angular/core").Signal<{
|
|
89
|
+
value: string[];
|
|
90
|
+
timestamp: number;
|
|
91
|
+
}>;
|
|
92
|
+
$timestampedExpanded: import("@angular/core").Signal<{
|
|
93
|
+
value: GroupedData[];
|
|
94
|
+
timestamp: number;
|
|
95
|
+
}>;
|
|
96
|
+
private $dataAndGroupsTimestamped;
|
|
97
|
+
private $filteredSortedAndGrouped;
|
|
79
98
|
private $isInitializationState;
|
|
80
99
|
static headerId: string;
|
|
81
100
|
headerId: string;
|
|
82
101
|
static ɵfac: i0.ɵɵFactoryDeclaration<TableContainerComponent<any>, never>;
|
|
83
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TableContainerComponent<any>, "tb-table-container", never, { "$tableBuilder": { "alias": "tableBuilder"; "required": true; "isSignal": true; }; "$
|
|
102
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TableContainerComponent<any>, "tb-table-container", never, { "$tableBuilder": { "alias": "tableBuilder"; "required": true; "isSignal": true; }; "$tableIdInput": { "alias": "tableId"; "required": false; "isSignal": true; }; "$trackByInput": { "alias": "trackBy"; "required": false; "isSignal": true; }; "$inputFilters": { "alias": "inputFilters"; "required": false; "isSignal": true; }; "$indexColumnInput": { "alias": "indexColumn"; "required": false; "isSignal": true; }; "$selectionColumnInput": { "alias": "selectionColumn"; "required": false; "isSignal": true; }; "$stickyHeaderInput": { "alias": "stickyHeader"; "required": false; "isSignal": true; }; "$stickyFooterInput": { "alias": "stickyFooter"; "required": false; "isSignal": true; }; "$groupHeaderTemplate": { "alias": "groupHeaderTemplate"; "required": false; "isSignal": true; }; "$groupHeaderHeight": { "alias": "groupHeaderHeight"; "required": false; "isSignal": true; }; "$pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; }, { "selection$": "selection"; "onStateReset$": "onStateReset"; "onSaveState$": "onSaveState"; "state$": "state"; "data$": "data"; }, ["$filterDirectives", "$customFilterDirectives", "_$customRows", "$customCells"], ["[before]", ".tb-header-title"], true, never>;
|
|
84
103
|
}
|
package/table-builder/components/table-container/table-container.helpers/data-state.helpers.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { Observable } from "rxjs";
|
|
1
|
+
import { Observable, Timestamp } from "rxjs";
|
|
2
2
|
import { SortState } from "./sort-state.helpers";
|
|
3
3
|
import { FilterPredicateState } from "./filter-state.helpers";
|
|
4
4
|
import { MetaData } from "../../../interfaces/report-def";
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const _sortAndFilterData: <T>(data: Observable<T[]>, sortState: Observable<SortState>, filterState: Observable<FilterPredicateState<T>>) => Observable<T[]>;
|
|
6
|
+
export declare const sortAndFilterData: <T>(data: Timestamp<T[]>, filters: Timestamp<FilterPredicateState<T>>, sort: Timestamp<SortState>, firstRun: boolean, resultData: T[]) => T[];
|
|
6
7
|
export declare const createDataCleaners: <T>(metadatas: MetaData<T>[], mutate?: boolean) => (data: T) => T;
|
package/table-builder/components/table-container/table-container.helpers/groupBy.helpers.d.ts
CHANGED
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import { Timestamp } from "rxjs";
|
|
2
2
|
import { Group, GroupedData } from "../../../classes/TableState";
|
|
3
|
-
export declare function updateGroupByState(
|
|
3
|
+
export declare function updateGroupByState<T = any>(groupedData: any[], { data, groups, expanded }: {
|
|
4
|
+
data: Timestamp<T[]>;
|
|
5
|
+
groups: Timestamp<string[]>;
|
|
6
|
+
expanded: Timestamp<GroupedData[]>;
|
|
7
|
+
}, firstRun: boolean): {
|
|
4
8
|
displayData: any[];
|
|
5
9
|
groupedData: any[];
|
|
6
10
|
};
|
|
7
|
-
|
|
11
|
+
export declare function _updateGroupByState({ groupedData }: GroupByState, [data, groups, expanded]: [Timestamp<any[]>, Timestamp<string[]>, Timestamp<GroupedData[]>], index: number): {
|
|
12
|
+
displayData: any[];
|
|
13
|
+
groupedData: any[];
|
|
14
|
+
};
|
|
15
|
+
export interface GroupByState {
|
|
8
16
|
displayData: any[];
|
|
9
17
|
groupedData: any[];
|
|
10
18
|
}
|
|
@@ -14,4 +22,3 @@ export declare const initialGroupByState: {
|
|
|
14
22
|
};
|
|
15
23
|
export declare const getAllGroupHeaderNames: (data: any[]) => import("lodash").Dictionary<Group[]>;
|
|
16
24
|
export declare const getAllGroupHeaderNamesByKeys: (data: any[], keys: string[]) => import("lodash").Dictionary<Group[]>;
|
|
17
|
-
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { ElementRef, OnDestroy } from '@angular/core';
|
|
2
2
|
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
|
|
3
|
-
import { Subject } from 'rxjs';
|
|
4
3
|
import { TableVirtualScrollStrategy } from '../scroll-strategy';
|
|
5
4
|
import { VirtualScrollOptions } from '../../classes/table-builder-general-settings';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
@@ -20,16 +19,12 @@ export declare class VirtualScrollContainer implements OnDestroy {
|
|
|
20
19
|
viewPort$: import("rxjs").Observable<CdkVirtualScrollViewport>;
|
|
21
20
|
$scrolledIndexChange: import("@angular/core").Signal<number | undefined>;
|
|
22
21
|
$renderedRange: import("@angular/core").Signal<import("@angular/cdk/collections").ListRange | undefined>;
|
|
23
|
-
$virtualScrollOptions: import("@angular/core").Signal<VirtualScrollOptions>;
|
|
22
|
+
$virtualScrollOptions: import("@angular/core").Signal<VirtualScrollOptions | undefined>;
|
|
23
|
+
$optionsSet: import("@angular/core").Signal<boolean>;
|
|
24
24
|
$dataLength: import("@angular/core").Signal<number>;
|
|
25
25
|
constructor();
|
|
26
|
-
setViewportEffect: import("@angular/core").EffectRef;
|
|
27
|
-
subscriber: import("../../../rxjs").Subscriber;
|
|
28
|
-
$offset: import("@angular/core").Signal<number>;
|
|
29
26
|
ngOnDestroy(): void;
|
|
30
|
-
setSize(el: ElementRef<HTMLElement
|
|
31
|
-
calcDynamic$: Subject<ElementRef<any>>;
|
|
32
|
-
$calcDynamic: import("@angular/core").Signal<ElementRef<any> | undefined>;
|
|
27
|
+
setSize(el: ElementRef<HTMLElement>, trigger: SetSizeTrigger): void;
|
|
33
28
|
calcDynamic(el: ElementRef<HTMLElement>): void;
|
|
34
29
|
setHeight(height: number, el: ElementRef<HTMLElement>): void;
|
|
35
30
|
resizeHandler: () => void;
|
|
@@ -41,3 +36,5 @@ export declare class VirtualScrollContainer implements OnDestroy {
|
|
|
41
36
|
static ɵfac: i0.ɵɵFactoryDeclaration<VirtualScrollContainer, never>;
|
|
42
37
|
static ɵcmp: i0.ɵɵComponentDeclaration<VirtualScrollContainer, "tb-virtual-scroll-container", never, {}, {}, ["genericTable"], ["*"], true, never>;
|
|
43
38
|
}
|
|
39
|
+
type SetSizeTrigger = 'initial' | 'rendered range' | 'resize';
|
|
40
|
+
export {};
|
|
@@ -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<(
|
|
4
|
+
$registrations: import("@angular/core").WritableSignal<(TableFilterDirective | TableCustomFilterDirective)[]>;
|
|
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>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Predicate, SimpleChanges } from "@angular/core";
|
|
1
|
+
import { Predicate, Signal, SimpleChanges } from "@angular/core";
|
|
2
2
|
import { Observable, ReplaySubject } from "rxjs";
|
|
3
3
|
import { CustomFilter, FilterInfo } from "../classes/filter-info";
|
|
4
4
|
import { FilterType } from "../enums/filterTypes";
|
|
@@ -8,6 +8,7 @@ import { TableWrapperDirective } from "./table-wrapper.directive";
|
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
export declare abstract class TableCustomFilterDirective {
|
|
10
10
|
abstract filter$: Observable<CustomFilter>;
|
|
11
|
+
abstract $filter: Signal<CustomFilter | undefined>;
|
|
11
12
|
filterId: string;
|
|
12
13
|
savable: boolean;
|
|
13
14
|
abstract active: boolean;
|
|
@@ -21,6 +22,7 @@ export declare class TableFilterDirective {
|
|
|
21
22
|
constructor();
|
|
22
23
|
reset(): void;
|
|
23
24
|
filter$: ReplaySubject<FilterInfo<any, any>>;
|
|
25
|
+
$filter: Signal<FilterInfo<any, any> | undefined>;
|
|
24
26
|
filterType: FilterType;
|
|
25
27
|
key: string;
|
|
26
28
|
fieldType: FieldType;
|
|
@@ -48,6 +50,7 @@ export declare class TableFilterStringContainsDirective extends TableFilterDirec
|
|
|
48
50
|
}
|
|
49
51
|
export declare abstract class TableCustomFilterDirectiveBase<T = any> extends TableCustomFilterDirective {
|
|
50
52
|
filter$: ReplaySubject<CustomFilter<any>>;
|
|
53
|
+
$filter: Signal<CustomFilter<any> | undefined>;
|
|
51
54
|
filter: CustomFilter;
|
|
52
55
|
_predicate: Predicate<T>;
|
|
53
56
|
set predicate(val: Predicate<T>);
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Sort } from "@angular/material/sort";
|
|
2
2
|
import { Predicate } from "@angular/core";
|
|
3
|
-
export type direc = 'asc' | 'desc' | boolean;
|
|
4
3
|
export declare function sortData<T>(data: T[], sorted: Sort[]): T[];
|
|
5
4
|
export declare function filterData<T>(data: T[], filters: Predicate<T>[], resetAll?: boolean): T[];
|
|
6
5
|
export declare const tbNoShowSymbol: unique symbol;
|
|
@@ -118,11 +118,11 @@ export interface Additional<T = any> {
|
|
|
118
118
|
dateFormat?: string;
|
|
119
119
|
dateTimeOptions?: DateTimeOptions;
|
|
120
120
|
filterOptions?: FilterOptions;
|
|
121
|
-
styles?: StylerStyle
|
|
121
|
+
styles?: StylerStyle<T>;
|
|
122
122
|
columnPartStyles?: {
|
|
123
123
|
header?: Dictionary<string>;
|
|
124
|
-
body?: StylerStyle
|
|
125
|
-
innerBody?: StylerStyle
|
|
124
|
+
body?: StylerStyle<T>;
|
|
125
|
+
innerBody?: StylerStyle<T>;
|
|
126
126
|
footer?: Dictionary<string>;
|
|
127
127
|
};
|
|
128
128
|
columnPartClasses?: {
|
|
@@ -1,15 +1,7 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import { MetaData } from '../interfaces/report-def';
|
|
3
|
-
import
|
|
3
|
+
import { TableBuilderConfig } from '../classes/TableBuilderConfig';
|
|
4
4
|
export declare function isPipe(o: any): o is PipeTransform;
|
|
5
|
-
export declare
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
private phonePipe;
|
|
9
|
-
private config;
|
|
10
|
-
createTransformer(metaData: MetaData<any, any>, noIcons?: boolean, forItem?: boolean): ((value: any, ...args: any[]) => any);
|
|
11
|
-
createItemTransformer: <T = any, AdditionalFields extends string[] = []>(metaData: MetaData<T, AdditionalFields>, noIcons?: boolean, mutate?: boolean) => (t: T) => void;
|
|
12
|
-
createItemTransformers: <T = any, AdditionalFields extends string[] = []>(metaDatas: MetaData<T, AdditionalFields>[], noIcons?: boolean, mutate?: boolean) => (t: T) => T;
|
|
13
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<TransformCreator, never>;
|
|
14
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<TransformCreator>;
|
|
15
|
-
}
|
|
5
|
+
export declare function createTransformer(metaData: MetaData<any, any>, config: TableBuilderConfig, noIcons?: boolean, forItem?: boolean): ((value: any, ...args: any[]) => any);
|
|
6
|
+
export declare function createItemTransformer<T = any, AdditionalFields extends string[] = []>(metaData: MetaData<T, AdditionalFields>, config: TableBuilderConfig, noIcons?: boolean, mutate?: boolean): (t: T) => void;
|
|
7
|
+
export declare function createItemTransformers<T = any, AdditionalFields extends string[] = []>(metaDatas: MetaData<T, AdditionalFields>[], config: TableBuilderConfig, noIcons?: boolean, mutate?: boolean): (t: T) => T;
|
|
@@ -1,21 +1,14 @@
|
|
|
1
1
|
import { ModuleWithProviders } from '@angular/core';
|
|
2
2
|
import { TableBuilderConfig } from './classes/TableBuilderConfig';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "
|
|
5
|
-
import * as i2 from "
|
|
6
|
-
import * as i3 from "
|
|
7
|
-
import * as i4 from "
|
|
8
|
-
import * as i5 from "
|
|
9
|
-
import * as i6 from "./components/generic-table/generic-table.component";
|
|
10
|
-
import * as i7 from "./directives/custom-cell-directive";
|
|
11
|
-
import * as i8 from "./components/filter/filter.component";
|
|
12
|
-
import * as i9 from "./directives/tb-filter.directive";
|
|
13
|
-
import * as i10 from "./directives/table-wrapper.directive";
|
|
14
|
-
import * as i11 from "./directives/resize-column.directive";
|
|
15
|
-
import * as i12 from "../utilities/module";
|
|
4
|
+
import * as i1 from "./components/table-container/table-container";
|
|
5
|
+
import * as i2 from "./directives/custom-cell-directive";
|
|
6
|
+
import * as i3 from "./directives/tb-filter.directive";
|
|
7
|
+
import * as i4 from "./directives/table-wrapper.directive";
|
|
8
|
+
import * as i5 from "../utilities/module";
|
|
16
9
|
export declare class TableBuilderModule {
|
|
17
10
|
static forRoot(config: TableBuilderConfig): ModuleWithProviders<TableBuilderModule>;
|
|
18
11
|
static ɵfac: i0.ɵɵFactoryDeclaration<TableBuilderModule, never>;
|
|
19
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<TableBuilderModule, never, [typeof i1.
|
|
12
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<TableBuilderModule, never, [typeof i1.TableContainerComponent, typeof i2.CustomCellDirective, typeof i3.TableFilterDirective, typeof i3.TableFilterStringContainsDirective, typeof i4.TableWrapperDirective], [typeof i1.TableContainerComponent, typeof i2.CustomCellDirective, typeof i3.TableFilterStringContainsDirective, typeof i4.TableWrapperDirective, typeof i5.UtilitiesModule]>;
|
|
20
13
|
static ɵinj: i0.ɵɵInjectorDeclaration<TableBuilderModule>;
|
|
21
14
|
}
|
|
@@ -6,11 +6,11 @@ export declare class StylerDirective {
|
|
|
6
6
|
private renderer;
|
|
7
7
|
$stylesApplied: import("@angular/core").WritableSignal<Dictionary<string>>;
|
|
8
8
|
$element: import("@angular/core").InputSignal<any>;
|
|
9
|
-
$styler: import("@angular/core").InputSignal<StylerStyle
|
|
9
|
+
$styler: import("@angular/core").InputSignal<StylerStyle<any>>;
|
|
10
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<StylerDirective, never>;
|
|
11
11
|
static ɵdir: i0.ɵɵDirectiveDeclaration<StylerDirective, "[styler]", never, { "$element": { "alias": "element"; "required": true; "isSignal": true; }; "$styler": { "alias": "styler"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
12
12
|
}
|
|
13
|
-
export type StylerStyle = Dictionary<string | {
|
|
14
|
-
condition?: ((t:
|
|
15
|
-
value: ((t:
|
|
13
|
+
export type StylerStyle<T = any> = Dictionary<string | {
|
|
14
|
+
condition?: ((t: T) => boolean) | true;
|
|
15
|
+
value: ((t: T) => string) | string;
|
|
16
16
|
}>;
|