@one-paragon/angular-utilities 2.0.27 → 2.1.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/fesm2022/one-paragon-angular-utilities.mjs +98 -36
- package/fesm2022/one-paragon-angular-utilities.mjs.map +1 -1
- package/package.json +1 -1
- package/table-builder/classes/filter-info.d.ts +2 -0
- package/table-builder/classes/table-store.d.ts +6 -4
- package/table-builder/classes/table-store.helpers.d.ts +3 -3
- package/table-builder/components/column-header-menu/column-header-menu.component.d.ts +3 -1
- package/table-builder/components/filter/filter.component.d.ts +2 -0
- package/table-builder/components/generic-table/paginator.component.d.ts +1 -3
- package/table-builder/components/table-container/table-container.helpers/sort-state.helpers.d.ts +7 -3
- package/table-builder/functions/sort-data-function.d.ts +2 -2
- package/table-builder/interfaces/report-def.d.ts +15 -1
package/package.json
CHANGED
|
@@ -7,6 +7,7 @@ export interface FilterState {
|
|
|
7
7
|
filterType: FilterType;
|
|
8
8
|
filterValue?: any;
|
|
9
9
|
active?: boolean;
|
|
10
|
+
filterBy?: (t: any) => any;
|
|
10
11
|
}
|
|
11
12
|
export interface FilterInfo<T extends FieldType = any, U = any> extends FilterState {
|
|
12
13
|
key: string & keyof U;
|
|
@@ -19,6 +20,7 @@ export interface PartialFilter {
|
|
|
19
20
|
fieldType: FieldType;
|
|
20
21
|
filterType?: FilterType;
|
|
21
22
|
filterValue?: any;
|
|
23
|
+
filterBy?: (t: any) => any;
|
|
22
24
|
}
|
|
23
25
|
export interface CustomFilter<T = any> extends FilterState {
|
|
24
26
|
predicate: Predicate<T>;
|
|
@@ -8,6 +8,7 @@ import { ComponentStore } from '@ngrx/component-store';
|
|
|
8
8
|
import { Dictionary } from '../interfaces/dictionary';
|
|
9
9
|
import { NonFunctionProperties, NotPersistedTableSettings, PersistedTableSettings, TableBuilderSettings } from './table-builder-general-settings';
|
|
10
10
|
import { TableProps } from '../components/table-container/tableProps';
|
|
11
|
+
import { TableBuilderSort } from '../components/table-container/table-container.helpers/sort-state.helpers';
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
12
13
|
export declare class TableStore extends ComponentStore<TableState> {
|
|
13
14
|
constructor();
|
|
@@ -27,11 +28,12 @@ export declare class TableStore extends ComponentStore<TableState> {
|
|
|
27
28
|
$filters: Signal<Dictionary<FilterInfo<any, any> | CustomFilter<any>>>;
|
|
28
29
|
filters$: Observable<Dictionary<FilterInfo<any, any> | CustomFilter<any>>>;
|
|
29
30
|
$getFilter: (filterId: string) => Signal<FilterInfo | CustomFilter | undefined>;
|
|
30
|
-
$preSort: Signal<
|
|
31
|
-
$selectSorted: Signal<Sort[]>;
|
|
31
|
+
$preSort: Signal<TableBuilderSort[]>;
|
|
32
|
+
_$selectSorted: Signal<Sort[]>;
|
|
33
|
+
$selectSorted: Signal<TableBuilderSort[]>;
|
|
32
34
|
selectSorted$: Observable<Sort[]>;
|
|
33
|
-
$getSorts: Signal<
|
|
34
|
-
sort$: Observable<
|
|
35
|
+
$getSorts: Signal<TableBuilderSort[]>;
|
|
36
|
+
sort$: Observable<TableBuilderSort[]>;
|
|
35
37
|
$getUserDefinedTableWidth: Signal<number | undefined>;
|
|
36
38
|
getUserDefinedTableWidth$: Observable<number | undefined>;
|
|
37
39
|
$userDefinedRowHeight: Signal<number | undefined>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Sort } from "@angular/material/sort";
|
|
2
1
|
import { Dictionary } from "../interfaces/dictionary";
|
|
3
2
|
import { MetaData } from "../interfaces/report-def";
|
|
4
3
|
import { PersistedTableState, TableState } from "./TableState";
|
|
4
|
+
import { TableBuilderSort } from "../components/table-container/table-container.helpers/sort-state.helpers";
|
|
5
5
|
export declare const orderedStateVisibleMetaData: (state: TableState) => MetaData[];
|
|
6
6
|
export declare const orderedCodeVisibleMetaData: (state: TableState) => MetaData[];
|
|
7
7
|
export declare const orderStateMetaData: (state: TableState) => MetaData[];
|
|
@@ -9,7 +9,7 @@ export declare const orderMetaData: (metaData: Dictionary<MetaData>, userDefined
|
|
|
9
9
|
export declare function order(orderA: number | undefined, orderB: number | undefined): number;
|
|
10
10
|
export declare function cleanPersistedState(state: TableState, pState: PersistedTableState): {
|
|
11
11
|
filters: any;
|
|
12
|
-
sorted: Sort[];
|
|
12
|
+
sorted: import("@angular/material/sort").Sort[];
|
|
13
13
|
hiddenKeys?: string[];
|
|
14
14
|
userDefined: {
|
|
15
15
|
order: Dictionary<number>;
|
|
@@ -26,6 +26,6 @@ export declare function cleanPersistedState(state: TableState, pState: Persisted
|
|
|
26
26
|
groupBy: import("./TableState").GroupedData[];
|
|
27
27
|
};
|
|
28
28
|
export declare const mapSaveableState: (s: PersistedTableState) => PersistedTableState;
|
|
29
|
-
export declare const createPreSort: (metaDatas: Dictionary<MetaData>) =>
|
|
29
|
+
export declare const createPreSort: (metaDatas: Dictionary<MetaData>) => TableBuilderSort[];
|
|
30
30
|
export declare const mergeMeta: (orig: MetaData, merge: MetaData) => MetaData;
|
|
31
31
|
export declare const initializeOrder: (state: TableState, mds: Dictionary<MetaData>) => Dictionary<number>;
|
|
@@ -36,13 +36,15 @@ export declare class ColumnHeaderMenuComponent {
|
|
|
36
36
|
readonly Custom: "Custom";
|
|
37
37
|
};
|
|
38
38
|
$metaData: import("@angular/core").InputSignal<MetaData>;
|
|
39
|
+
$fieldType: import("@angular/core").Signal<FieldType>;
|
|
39
40
|
$trigger: import("@angular/core").Signal<MatMenuTrigger | undefined>;
|
|
40
41
|
hideField(key: string): void;
|
|
41
42
|
$metaFilterType: import("@angular/core").Signal<FilterType>;
|
|
42
43
|
$currentFilterType: import("@angular/core").WritableSignal<FilterType>;
|
|
44
|
+
$key: import("@angular/core").Signal<string>;
|
|
43
45
|
setStringFilterType(): void;
|
|
44
46
|
setFilterType(filterType: FilterType): void;
|
|
45
|
-
onEnter(filter: FilterInfo): void;
|
|
47
|
+
onEnter(filter: FilterInfo, metaData: MetaData): void;
|
|
46
48
|
static ɵfac: i0.ɵɵFactoryDeclaration<ColumnHeaderMenuComponent, never>;
|
|
47
49
|
static ɵcmp: i0.ɵɵComponentDeclaration<ColumnHeaderMenuComponent, "tb-header-menu", never, { "$metaData": { "alias": "metaData"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
48
50
|
}
|
|
@@ -40,7 +40,9 @@ export declare class FilterComponent {
|
|
|
40
40
|
$enteredFilterType: import("@angular/core").WritableSignal<FilterType | undefined>;
|
|
41
41
|
$currentFilterType: import("@angular/core").Signal<FilterType | undefined>;
|
|
42
42
|
$availableFilterTypes: import("@angular/core").Signal<FilterType[]>;
|
|
43
|
+
$filterBy: import("@angular/core").Signal<((t: any) => any) | undefined>;
|
|
43
44
|
onEnter(filter: FilterInfo, event: any): void;
|
|
45
|
+
addFilter(filter: FilterInfo): void;
|
|
44
46
|
static ɵfac: i0.ɵɵFactoryDeclaration<FilterComponent, never>;
|
|
45
47
|
static ɵcmp: i0.ɵɵComponentDeclaration<FilterComponent, "tb-filter", never, { "$filter": { "alias": "filter"; "required": true; "isSignal": true; }; }, { "close": "close"; }, never, never, true, never>;
|
|
46
48
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { MatPaginator, PageEvent } from '@angular/material/paginator';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class PaginatorComponent {
|
|
4
|
+
#private;
|
|
4
5
|
private state;
|
|
5
6
|
private data;
|
|
6
7
|
$paginator: import("@angular/core").Signal<MatPaginator | undefined>;
|
|
@@ -14,9 +15,6 @@ export declare class PaginatorComponent {
|
|
|
14
15
|
currentStart: number;
|
|
15
16
|
currentEnd: number;
|
|
16
17
|
} | undefined>;
|
|
17
|
-
onPageIndexEffect: import("@angular/core").EffectRef;
|
|
18
|
-
onPageSizeEffect: import("@angular/core").EffectRef;
|
|
19
|
-
onMetaPageSizeEffect: import("@angular/core").EffectRef;
|
|
20
18
|
onDataLengthEffect: import("@angular/core").EffectRef;
|
|
21
19
|
$collapseFooter: import("@angular/core").Signal<boolean>;
|
|
22
20
|
$showAllOption: import("@angular/core").Signal<boolean | undefined>;
|
package/table-builder/components/table-container/table-container.helpers/sort-state.helpers.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { Sort } from "@angular/material/sort";
|
|
2
|
-
export declare function updateSortState(previousSorts: SortState, currentSorts:
|
|
2
|
+
export declare function updateSortState(previousSorts: SortState, currentSorts: TableBuilderSort[]): SortState;
|
|
3
3
|
export interface SortState {
|
|
4
|
-
sortsToRun:
|
|
5
|
-
allSorts:
|
|
4
|
+
sortsToRun: TableBuilderSort[];
|
|
5
|
+
allSorts: TableBuilderSort[];
|
|
6
6
|
}
|
|
7
7
|
export declare const initIndexSymbol: unique symbol;
|
|
8
8
|
export declare const initialSortState: SortState;
|
|
9
|
+
export type TableBuilderSort = Sort & {
|
|
10
|
+
nulls?: 'first' | 'last';
|
|
11
|
+
sortBy?: (t: any) => any;
|
|
12
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Sort } from "@angular/material/sort";
|
|
2
1
|
import { Predicate } from "@angular/core";
|
|
3
|
-
|
|
2
|
+
import { TableBuilderSort } from "../components/table-container/table-container.helpers/sort-state.helpers";
|
|
3
|
+
export declare function sortData<T>(data: T[], sorted: TableBuilderSort[]): T[];
|
|
4
4
|
export declare function filterData<T>(data: T[], filters: Predicate<T>[], resetAll?: boolean): T[];
|
|
5
5
|
export declare const tbNoShowSymbol: unique symbol;
|
|
@@ -42,10 +42,24 @@ interface BaseMeta<T = any> {
|
|
|
42
42
|
additional?: Additional<T>;
|
|
43
43
|
order?: number;
|
|
44
44
|
preSort?: SortDef;
|
|
45
|
+
sortLogic?: {
|
|
46
|
+
/**
|
|
47
|
+
* defaults to last
|
|
48
|
+
*/
|
|
49
|
+
nulls?: 'first' | 'last';
|
|
50
|
+
sortBy?: ((t: T) => any) | 'use map';
|
|
51
|
+
};
|
|
52
|
+
noSort?: boolean;
|
|
45
53
|
width?: string;
|
|
46
54
|
noExport?: boolean;
|
|
55
|
+
filterLogic?: {
|
|
56
|
+
filterBy?: ((t: T) => any) | 'use map';
|
|
57
|
+
/**
|
|
58
|
+
* defaults to the MetaData's Field type
|
|
59
|
+
*/
|
|
60
|
+
filterType?: FieldType;
|
|
61
|
+
};
|
|
47
62
|
noFilter?: boolean;
|
|
48
|
-
noSort?: boolean;
|
|
49
63
|
customCell?: boolean;
|
|
50
64
|
/**
|
|
51
65
|
* @deprecated Please use map instead
|