@servicemind.tis/tis-smart-table-viewer 2.4.9 → 2.4.12
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/servicemind.tis-tis-smart-table-viewer.mjs +32 -12
- package/fesm2022/servicemind.tis-tis-smart-table-viewer.mjs.map +1 -1
- package/lib/components/tis-smart-table-viewer/tis-smart-table-viewer.component.d.ts +7 -2
- package/lib/interfaces/smart-table-wrapper-columns-config.type.d.ts +18 -0
- package/lib/pipes/tis-currency.pipe.d.ts +1 -1
- package/lib/pipes/tis-date-time-with-seconds.pipe.d.ts +1 -1
- package/lib/pipes/tis-date-time.pipe.d.ts +1 -1
- package/lib/pipes/tis-date.pipe.d.ts +1 -1
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@ import { EventEmitter, SimpleChanges, OnDestroy, ChangeDetectorRef } from '@angu
|
|
|
2
2
|
import { FormGroup, FormControl } from '@angular/forms';
|
|
3
3
|
import { ActivatedRoute, Router } from '@angular/router';
|
|
4
4
|
import { Subscription, Observable } from 'rxjs';
|
|
5
|
-
import type { SmartTableWrapperRowsConfig } from '../../interfaces';
|
|
5
|
+
import type { SmartTableWrapperRowsConfig, ColumnValueTypeFormats } from '../../interfaces';
|
|
6
6
|
import { AnyKeyValueObject, SelectedFilterDisplayValuesType, SelectedFilterDisplayValueType, SelectedFiltersGroupedValuesType, SmartTableWrapperColumnsConfig } from '../../interfaces';
|
|
7
7
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
8
8
|
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
@@ -45,9 +45,12 @@ export declare class TisSmartTableViewerComponent implements OnDestroy {
|
|
|
45
45
|
loadDataApiBaseUrl: string;
|
|
46
46
|
startStickyColumnCount: number;
|
|
47
47
|
endStickyColumnCount: number;
|
|
48
|
+
isSearchFieldMobileResponsive: boolean;
|
|
48
49
|
loaderPosition: 'top' | 'bottom';
|
|
49
50
|
dataNotFoundConfig: DataNotFoundConfig;
|
|
50
51
|
showFilterButtonSection: boolean;
|
|
52
|
+
/** Optional per-column format config. Key = column name, Value = format string. Defaults to empty (uses built-in formats). */
|
|
53
|
+
columnValueTypeFormats: ColumnValueTypeFormats;
|
|
51
54
|
columnsCodeMapping: SmartTableWrapperColumnsConfig[];
|
|
52
55
|
autoRenderColumns: SmartTableWrapperColumnsConfig[];
|
|
53
56
|
templateRenderColumns: SmartTableWrapperColumnsConfig[];
|
|
@@ -151,6 +154,8 @@ export declare class TisSmartTableViewerComponent implements OnDestroy {
|
|
|
151
154
|
handleSortingChanges(ch: any): void;
|
|
152
155
|
private getHomeUrl;
|
|
153
156
|
getNestedValue(obj: any, path: string): any;
|
|
157
|
+
/** Returns the custom format string for a column type, or undefined if not set (uses pipe defaults). */
|
|
158
|
+
getColumnFormat(columnType: string): string | undefined;
|
|
154
159
|
private groupByFormControlAttributes;
|
|
155
160
|
updateSelectedFilterValues(values: SelectedFilterDisplayValueType | SelectedFilterDisplayValuesType): void;
|
|
156
161
|
getFinalSelectedFilterValuesToDisplay(): void;
|
|
@@ -185,5 +190,5 @@ export declare class TisSmartTableViewerComponent implements OnDestroy {
|
|
|
185
190
|
toggleExpand(element: any): void;
|
|
186
191
|
expandAllRow(): void;
|
|
187
192
|
static ɵfac: i0.ɵɵFactoryDeclaration<TisSmartTableViewerComponent, never>;
|
|
188
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TisSmartTableViewerComponent, "tis-smart-table-viewer", never, { "columnCustomizationUrlConfig": { "alias": "columnCustomizationUrlConfig"; "required": true; }; "t": { "alias": "t"; "required": true; }; "componentName": { "alias": "componentName"; "required": true; }; "mainTitle": { "alias": "mainTitle"; "required": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "breadcrumbs": { "alias": "breadcrumbs"; "required": false; }; "hideHeader": { "alias": "hideHeader"; "required": false; }; "hideTableHeader": { "alias": "hideTableHeader"; "required": false; }; "hidePaginator": { "alias": "hidePaginator"; "required": false; }; "keepFilterInUrl": { "alias": "keepFilterInUrl"; "required": false; }; "disableBorderedView": { "alias": "disableBorderedView"; "required": false; }; "displayColumnsSelectionButton": { "alias": "displayColumnsSelectionButton"; "required": false; }; "loadDataApiBaseUrl": { "alias": "loadDataApiBaseUrl"; "required": false; }; "startStickyColumnCount": { "alias": "startStickyColumnCount"; "required": false; }; "endStickyColumnCount": { "alias": "endStickyColumnCount"; "required": false; }; "loaderPosition": { "alias": "loaderPosition"; "required": false; }; "dataNotFoundConfig": { "alias": "dataNotFoundConfig"; "required": true; }; "showFilterButtonSection": { "alias": "showFilterButtonSection"; "required": false; }; "columnsCodeMapping": { "alias": "columnsCodeMapping"; "required": true; }; "defaultDisplayedColumns": { "alias": "defaultDisplayedColumns"; "required": false; }; "defaultSortObj": { "alias": "defaultSortObj"; "required": false; }; "loadingSpinnerDiameter": { "alias": "loadingSpinnerDiameter"; "required": false; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "useGlobalPageSize": { "alias": "useGlobalPageSize"; "required": false; }; "pageIndex": { "alias": "pageIndex"; "required": false; }; "filterFormGroup": { "alias": "filterFormGroup"; "required": false; }; "rowsConfig": { "alias": "rowsConfig"; "required": false; }; "hasSelectedAllRows": { "alias": "hasSelectedAllRows"; "required": false; }; "enableRowsSelection": { "alias": "enableRowsSelection"; "required": false; }; "enableAllRowsSelection": { "alias": "enableAllRowsSelection"; "required": false; }; "onlySingleSelection": { "alias": "onlySingleSelection"; "required": false; }; "selectedRowIds": { "alias": "selectedRowIds"; "required": false; }; "selectedRowKey": { "alias": "selectedRowKey"; "required": false; }; "selectedRows": { "alias": "selectedRows"; "required": false; }; "enableDragNDrop": { "alias": "enableDragNDrop"; "required": false; }; "isExpansion": { "alias": "isExpansion"; "required": false; }; "isExpandedRow": { "alias": "isExpandedRow"; "required": false; }; "expandedTemplate": { "alias": "expandedTemplate"; "required": false; }; }, { "displayedColumnsChange": "displayedColumnsChange"; "sortObjChange": "sortObjChange"; "pageSizeChange": "pageSizeChange"; "pageIndexChange": "pageIndexChange"; "onDataLoaded": "onDataLoaded"; "onSetExtraData": "onSetExtraData"; "onSetTotal": "onSetTotal"; "selectedRowsChange": "selectedRowsChange"; "allRowsSelectedChange": "allRowsSelectedChange"; "listDataSequenceChange": "listDataSequenceChange"; }, never, ["[slot='top-buttons-section']", "[slot='filter-button-section']", "[slot='filter-right-button-section']", "[slot='filter-form-section']"], false, never>;
|
|
193
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TisSmartTableViewerComponent, "tis-smart-table-viewer", never, { "columnCustomizationUrlConfig": { "alias": "columnCustomizationUrlConfig"; "required": true; }; "t": { "alias": "t"; "required": true; }; "componentName": { "alias": "componentName"; "required": true; }; "mainTitle": { "alias": "mainTitle"; "required": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "breadcrumbs": { "alias": "breadcrumbs"; "required": false; }; "hideHeader": { "alias": "hideHeader"; "required": false; }; "hideTableHeader": { "alias": "hideTableHeader"; "required": false; }; "hidePaginator": { "alias": "hidePaginator"; "required": false; }; "keepFilterInUrl": { "alias": "keepFilterInUrl"; "required": false; }; "disableBorderedView": { "alias": "disableBorderedView"; "required": false; }; "displayColumnsSelectionButton": { "alias": "displayColumnsSelectionButton"; "required": false; }; "loadDataApiBaseUrl": { "alias": "loadDataApiBaseUrl"; "required": false; }; "startStickyColumnCount": { "alias": "startStickyColumnCount"; "required": false; }; "endStickyColumnCount": { "alias": "endStickyColumnCount"; "required": false; }; "isSearchFieldMobileResponsive": { "alias": "isSearchFieldMobileResponsive"; "required": false; }; "loaderPosition": { "alias": "loaderPosition"; "required": false; }; "dataNotFoundConfig": { "alias": "dataNotFoundConfig"; "required": true; }; "showFilterButtonSection": { "alias": "showFilterButtonSection"; "required": false; }; "columnValueTypeFormats": { "alias": "columnValueTypeFormats"; "required": false; }; "columnsCodeMapping": { "alias": "columnsCodeMapping"; "required": true; }; "defaultDisplayedColumns": { "alias": "defaultDisplayedColumns"; "required": false; }; "defaultSortObj": { "alias": "defaultSortObj"; "required": false; }; "loadingSpinnerDiameter": { "alias": "loadingSpinnerDiameter"; "required": false; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "useGlobalPageSize": { "alias": "useGlobalPageSize"; "required": false; }; "pageIndex": { "alias": "pageIndex"; "required": false; }; "filterFormGroup": { "alias": "filterFormGroup"; "required": false; }; "rowsConfig": { "alias": "rowsConfig"; "required": false; }; "hasSelectedAllRows": { "alias": "hasSelectedAllRows"; "required": false; }; "enableRowsSelection": { "alias": "enableRowsSelection"; "required": false; }; "enableAllRowsSelection": { "alias": "enableAllRowsSelection"; "required": false; }; "onlySingleSelection": { "alias": "onlySingleSelection"; "required": false; }; "selectedRowIds": { "alias": "selectedRowIds"; "required": false; }; "selectedRowKey": { "alias": "selectedRowKey"; "required": false; }; "selectedRows": { "alias": "selectedRows"; "required": false; }; "enableDragNDrop": { "alias": "enableDragNDrop"; "required": false; }; "isExpansion": { "alias": "isExpansion"; "required": false; }; "isExpandedRow": { "alias": "isExpandedRow"; "required": false; }; "expandedTemplate": { "alias": "expandedTemplate"; "required": false; }; }, { "displayedColumnsChange": "displayedColumnsChange"; "sortObjChange": "sortObjChange"; "pageSizeChange": "pageSizeChange"; "pageIndexChange": "pageIndexChange"; "onDataLoaded": "onDataLoaded"; "onSetExtraData": "onSetExtraData"; "onSetTotal": "onSetTotal"; "selectedRowsChange": "selectedRowsChange"; "allRowsSelectedChange": "allRowsSelectedChange"; "listDataSequenceChange": "listDataSequenceChange"; }, never, ["[slot='top-buttons-section']", "[slot='filter-button-section']", "[slot='filter-right-button-section']", "[slot='filter-form-section']"], false, never>;
|
|
189
194
|
}
|
|
@@ -15,6 +15,24 @@ export interface SmartTableWrapperColumnsConfig {
|
|
|
15
15
|
filterFormKey?: string;
|
|
16
16
|
transformQueryParamFn?: Function;
|
|
17
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* Maps column value types to their custom format strings.
|
|
20
|
+
* - For 'date' / 'date-time' / 'date-time-with-seconds': Luxon format string (e.g. 'yyyy/MM/dd', 'dd-MM-yyyy HH:mm')
|
|
21
|
+
* - For 'quantity': Angular DecimalPipe digitsInfo string (e.g. '1.2-2', '1.0-0')
|
|
22
|
+
* - For 'money': number of decimal places (e.g. '4', '0')
|
|
23
|
+
* - For 'number': Angular DecimalPipe digitsInfo string
|
|
24
|
+
* - For 'string': unused (reserved for future use)
|
|
25
|
+
*
|
|
26
|
+
* Example:
|
|
27
|
+
* {
|
|
28
|
+
* 'date': 'yyyy/MM/dd',
|
|
29
|
+
* 'date-time': 'dd-MM-yyyy HH:mm',
|
|
30
|
+
* 'money': '2',
|
|
31
|
+
* 'quantity': '1.4-4',
|
|
32
|
+
* 'number': '1.1-1'
|
|
33
|
+
* }
|
|
34
|
+
*/
|
|
35
|
+
export type ColumnValueTypeFormats = Partial<Record<'number' | 'quantity' | 'money' | 'date' | 'date-time' | 'date-time-with-seconds', string>>;
|
|
18
36
|
export interface SmartTableWrapperRowsConfig {
|
|
19
37
|
backgroundApplyFunction?: (row: any) => string | null;
|
|
20
38
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class TisCurrencyPipe implements PipeTransform {
|
|
4
|
-
transform(value: number | string | null | undefined, decimals?: number): string;
|
|
4
|
+
transform(value: number | string | null | undefined, decimals?: number | string): string;
|
|
5
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<TisCurrencyPipe, never>;
|
|
6
6
|
static ɵpipe: i0.ɵɵPipeDeclaration<TisCurrencyPipe, "tisCurrency", false>;
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class TisDateTimeWithSecondsPipe implements PipeTransform {
|
|
4
|
-
transform(value: unknown,
|
|
4
|
+
transform(value: unknown, format?: string): string;
|
|
5
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<TisDateTimeWithSecondsPipe, never>;
|
|
6
6
|
static ɵpipe: i0.ɵɵPipeDeclaration<TisDateTimeWithSecondsPipe, "tisDateTimeWithSeconds", false>;
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class TisDateTimePipe implements PipeTransform {
|
|
4
|
-
transform(value: unknown,
|
|
4
|
+
transform(value: unknown, format?: string): string;
|
|
5
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<TisDateTimePipe, never>;
|
|
6
6
|
static ɵpipe: i0.ɵɵPipeDeclaration<TisDateTimePipe, "tisDateTime", false>;
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export declare class TisDatePipe implements PipeTransform {
|
|
4
|
-
transform(value: unknown,
|
|
4
|
+
transform(value: unknown, format?: string): string;
|
|
5
5
|
static ɵfac: i0.ɵɵFactoryDeclaration<TisDatePipe, never>;
|
|
6
6
|
static ɵpipe: i0.ɵɵPipeDeclaration<TisDatePipe, "tisDate", false>;
|
|
7
7
|
}
|