@libs-ui/components-table 0.2.10-6.2 → 0.2.30-6.2
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/README.md +132 -2
- package/esm2022/index.mjs +1 -2
- package/esm2022/interfaces/function-control-event.interface.mjs +1 -1
- package/esm2022/interfaces/table-config.interface.mjs +1 -1
- package/esm2022/interfaces/template-config.interface.mjs +1 -1
- package/esm2022/pipes/calculator-column.pipe.mjs +80 -0
- package/esm2022/table.component.mjs +229 -127
- package/esm2022/templates/templates.component.mjs +49 -49
- package/fesm2022/libs-ui-components-table.mjs +343 -178
- package/fesm2022/libs-ui-components-table.mjs.map +1 -1
- package/index.d.ts +0 -1
- package/interfaces/function-control-event.interface.d.ts +2 -1
- package/interfaces/table-config.interface.d.ts +5 -1
- package/interfaces/template-config.interface.d.ts +10 -13
- package/package.json +30 -3
- package/pipes/calculator-column.pipe.d.ts +12 -0
- package/table.component.d.ts +51 -20
- package/templates/templates.component.d.ts +5 -2
- package/esm2022/templates/template.abstract.component.mjs +0 -16
- package/templates/template.abstract.component.d.ts +0 -7
|
@@ -3,11 +3,12 @@ import { TYPE_DATA_TABLE } from './table.type';
|
|
|
3
3
|
export interface ITableFunctionControlEvent {
|
|
4
4
|
reset: (clearSort?: boolean) => void;
|
|
5
5
|
callApiByService: (firstCall: boolean, resetAfterCallApi?: boolean) => void;
|
|
6
|
-
resetScroll: () => void;
|
|
6
|
+
resetScroll: (scrollPositionLeft?: number, scrollPositionTop?: number) => void;
|
|
7
7
|
removeItems: (keys: Array<unknown>, ignoreReCallFooter?: boolean) => void;
|
|
8
8
|
addItems: (items: TYPE_DATA_TABLE, addFirst: boolean, ignoreHightLight?: boolean, ignoreReCallFooter?: boolean, autoCountNewItem?: boolean) => void;
|
|
9
9
|
getCount: () => number;
|
|
10
10
|
getScrollContainer: () => VirtualScrollerComponent;
|
|
11
11
|
hideToolBarBottom: () => void;
|
|
12
12
|
resetKeySelected: () => void;
|
|
13
|
+
detectChanges: () => void;
|
|
13
14
|
}
|
|
@@ -4,12 +4,14 @@ import { TYPE_FUNCTION, TYPE_OBJECT } from "@libs-ui/interfaces-types";
|
|
|
4
4
|
import { ITableTemplateConfig } from "./template-config.interface";
|
|
5
5
|
export interface ITableHeaderConfig {
|
|
6
6
|
ngStyle?: TYPE_OBJECT;
|
|
7
|
+
keepWidthIsPxColumnIfTableWidthGrandTotalColumnsHeader?: boolean;
|
|
7
8
|
ngClass?: TYPE_OBJECT;
|
|
8
9
|
type?: TYPE_POPOVER_TYPE;
|
|
9
10
|
label?: string | TYPE_OBJECT;
|
|
10
11
|
labelConfig?: IPopover;
|
|
11
12
|
parseValue?: TYPE_FUNCTION;
|
|
12
|
-
|
|
13
|
+
tooltipsLeft?: Array<IPopover>;
|
|
14
|
+
tooltipsRight?: Array<IPopover>;
|
|
13
15
|
hasCheckbox?: boolean;
|
|
14
16
|
hasCheckboxAll?: boolean;
|
|
15
17
|
checkboxAlignCenter?: boolean;
|
|
@@ -42,6 +44,8 @@ export interface ITableHeaderConfig {
|
|
|
42
44
|
checkboxClassInclude?: string;
|
|
43
45
|
checkConditionCheckBoxHidden?: TYPE_FUNCTION<boolean>;
|
|
44
46
|
checkboxAllClassInclude?: string;
|
|
47
|
+
isShowIndexOnRow?: boolean;
|
|
48
|
+
classIncludeIndexOnRow?: string;
|
|
45
49
|
}
|
|
46
50
|
export interface ITableHeaderConfigCol {
|
|
47
51
|
ngStyle?: TYPE_OBJECT;
|
|
@@ -1,27 +1,23 @@
|
|
|
1
|
+
import { WritableSignal } from "@angular/core";
|
|
1
2
|
import { IAvatarConfig } from "@libs-ui/components-avatar";
|
|
2
3
|
import { IButton } from "@libs-ui/components-buttons-button";
|
|
3
4
|
import { IDropdown } from "@libs-ui/components-dropdown";
|
|
5
|
+
import { ILineClampConfig } from "@libs-ui/components-line-clamp";
|
|
4
6
|
import { IListConfigItem } from "@libs-ui/components-list";
|
|
5
7
|
import { IPopover } from "@libs-ui/components-popover";
|
|
6
8
|
import { ISwitchEvent } from "@libs-ui/components-switch";
|
|
7
9
|
import { TYPE_FUNCTION, TYPE_OBJECT } from "@libs-ui/interfaces-types";
|
|
8
|
-
import { IHttpRequestConfig } from "@libs-ui/services-http-request";
|
|
9
10
|
import { Observable } from "rxjs";
|
|
10
|
-
import {
|
|
11
|
+
import { LibsUiComponentsComponentOutletComponent } from "@libs-ui/components-component-outlet";
|
|
11
12
|
import { TYPE_ITEM_DATA_TABLE } from "./table.type";
|
|
12
|
-
import { WritableSignal } from "@angular/core";
|
|
13
|
-
import { ILineClampConfig } from "@libs-ui/components-line-clamp";
|
|
14
13
|
export interface ITableTemplateConfig {
|
|
15
14
|
cssWrapper: string;
|
|
16
15
|
fieldsConfig: Array<ITableFieldTemplateConfig>;
|
|
17
16
|
}
|
|
18
17
|
export interface ITableFieldTemplateConfig {
|
|
19
18
|
instance?: 'tooltip' | 'line-clamp' | 'buttons' | 'button-status' | 'switch' | 'badge' | 'other-action-show-popup' | 'shape-style' | 'image' | 'avatar' | 'button-action-show-popup';
|
|
20
|
-
instanceTooltipSpanInnerHtml?: boolean;
|
|
21
19
|
field: string;
|
|
22
20
|
parseValue?: TYPE_FUNCTION;
|
|
23
|
-
httpDetailByValue?: IHttpRequestConfig;
|
|
24
|
-
hasCallHttpDetailInContentTooltip?: boolean;
|
|
25
21
|
getTooltipIconClass?: TYPE_FUNCTION;
|
|
26
22
|
getTooltipConfig?: TYPE_FUNCTION;
|
|
27
23
|
action?: (dataField: any, item: TYPE_ITEM_DATA_TABLE, itemTableSelected?: TYPE_ITEM_DATA_TABLE) => any;
|
|
@@ -29,15 +25,13 @@ export interface ITableFieldTemplateConfig {
|
|
|
29
25
|
ngStyle?: TYPE_OBJECT;
|
|
30
26
|
getNgStyle?: TYPE_FUNCTION;
|
|
31
27
|
ngClass?: TYPE_OBJECT;
|
|
28
|
+
getNgClass?: TYPE_FUNCTION;
|
|
32
29
|
ignoreClassMarginLeft?: boolean;
|
|
33
30
|
lineClampConfig?: ILineClampConfig;
|
|
34
|
-
maxWidthTooltip?: number;
|
|
35
|
-
maxHeightTooltip?: number;
|
|
36
31
|
getDisableValueSwitch?: TYPE_FUNCTION;
|
|
37
32
|
getActiveValueSwitch?: TYPE_FUNCTION;
|
|
38
33
|
switchAction?: (switchData: ISwitchEvent, item: TYPE_ITEM_DATA_TABLE) => void;
|
|
39
34
|
buttons?: Array<WritableSignal<IButton>>;
|
|
40
|
-
buttonDropDown?: WritableSignal<IButton>;
|
|
41
35
|
getButtonsByItem?: TYPE_FUNCTION<Array<WritableSignal<IButton>>>;
|
|
42
36
|
showButtonHoverMode?: boolean;
|
|
43
37
|
getDisable?: TYPE_FUNCTION;
|
|
@@ -46,11 +40,14 @@ export interface ITableFieldTemplateConfig {
|
|
|
46
40
|
getImageSrc?: (value: any, item?: TYPE_OBJECT, lang?: string, isError?: boolean) => Observable<string>;
|
|
47
41
|
rows?: Array<ITableTemplateConfig>;
|
|
48
42
|
rowsTemplateCssWrapper?: string;
|
|
49
|
-
getComponentOutlet?: () => Observable<
|
|
43
|
+
getComponentOutlet?: () => Observable<LibsUiComponentsComponentOutletComponent | any>;
|
|
44
|
+
getDataComponentOutlet?: TYPE_FUNCTION;
|
|
50
45
|
}
|
|
51
46
|
export interface ITableFieldTemplateConfigDropdown extends IDropdown {
|
|
52
|
-
|
|
53
|
-
|
|
47
|
+
button?: WritableSignal<IButton>;
|
|
48
|
+
getListConfig?: TYPE_FUNCTION<IListConfigItem>;
|
|
49
|
+
listKeysDisableItem?: Array<string>;
|
|
50
|
+
listHiddenInputSearch?: boolean;
|
|
54
51
|
maxHeight?: number;
|
|
55
52
|
ignoreArrow?: boolean;
|
|
56
53
|
position?: {
|
package/package.json
CHANGED
|
@@ -1,9 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libs-ui/components-table",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.306.2",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": "
|
|
6
|
-
"@angular/core": "
|
|
5
|
+
"@angular/common": ">=18.0.0",
|
|
6
|
+
"@angular/core": ">=18.0.0",
|
|
7
|
+
"@libs-ui/components-buttons-button": "0.2.306.2",
|
|
8
|
+
"@iharbeck/ngx-virtual-scroller": "15.2.0",
|
|
9
|
+
"@libs-ui/interfaces-types": "0.2.306.2",
|
|
10
|
+
"@libs-ui/components-buttons-sort": "0.2.306.2",
|
|
11
|
+
"@libs-ui/components-popover": "0.2.306.2",
|
|
12
|
+
"@libs-ui/components-avatar": "0.2.306.2",
|
|
13
|
+
"@libs-ui/components-dropdown": "0.2.306.2",
|
|
14
|
+
"@libs-ui/components-line-clamp": "0.2.306.2",
|
|
15
|
+
"@libs-ui/components-list": "0.2.306.2",
|
|
16
|
+
"@libs-ui/components-switch": "0.2.306.2",
|
|
17
|
+
"@libs-ui/services-http-request": "0.2.306.2",
|
|
18
|
+
"rxjs": "~7.8.0",
|
|
19
|
+
"@libs-ui/components-checkbox-group": "0.2.306.2",
|
|
20
|
+
"@libs-ui/components-checkbox-single": "0.2.306.2",
|
|
21
|
+
"@libs-ui/components-scroll-overlay": "0.2.306.2",
|
|
22
|
+
"@libs-ui/components-spinner": "0.2.306.2",
|
|
23
|
+
"@libs-ui/icons": "0.2.306.2",
|
|
24
|
+
"@libs-ui/pipes-call-function-in-template": "0.2.306.2",
|
|
25
|
+
"@libs-ui/pipes-check-selected-by-key": "0.2.306.2",
|
|
26
|
+
"@libs-ui/utils": "0.2.306.2",
|
|
27
|
+
"@ngx-translate/core": "^15.0.0",
|
|
28
|
+
"@libs-ui/components-buttons-status": "0.2.306.2",
|
|
29
|
+
"@libs-ui/pipes-clone-object": "0.2.306.2",
|
|
30
|
+
"@libs-ui/pipes-security-trust": "0.2.306.2",
|
|
31
|
+
"@libs-ui/components-badge": "0.2.306.2",
|
|
32
|
+
"@libs-ui/pipes-convert-object-to-signal": "0.2.306.2",
|
|
33
|
+
"@libs-ui/pipes-get-value-of-object": "0.2.306.2"
|
|
7
34
|
},
|
|
8
35
|
"sideEffects": false,
|
|
9
36
|
"module": "fesm2022/libs-ui-components-table.mjs",
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { PipeTransform } from '@angular/core';
|
|
2
|
+
import { ITableHeaderConfig } from '../interfaces/table-config.interface';
|
|
3
|
+
import { TYPE_OBJECT } from '@libs-ui/interfaces-types';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class LibsUiTableCalculatorColumnPipe implements PipeTransform {
|
|
6
|
+
transform(header: ITableHeaderConfig | undefined, offsetWidth: number, headerLeftConfig?: Array<ITableHeaderConfig>, headerRightConfig?: Array<ITableHeaderConfig>): TYPE_OBJECT | undefined;
|
|
7
|
+
private getWidthPxOfStyle;
|
|
8
|
+
private getWidthPercentOfStyle;
|
|
9
|
+
private getStyleUpdate;
|
|
10
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LibsUiTableCalculatorColumnPipe, never>;
|
|
11
|
+
static ɵpipe: i0.ɵɵPipeDeclaration<LibsUiTableCalculatorColumnPipe, "LibsUiTableCalculatorColumnPipe", true>;
|
|
12
|
+
}
|
package/table.component.d.ts
CHANGED
|
@@ -1,38 +1,41 @@
|
|
|
1
|
-
import { ElementRef, OnDestroy, OnInit, WritableSignal } from
|
|
1
|
+
import { ElementRef, OnDestroy, OnInit, WritableSignal } from '@angular/core';
|
|
2
2
|
import { IButton } from '@libs-ui/components-buttons-button';
|
|
3
3
|
import { ISort } from '@libs-ui/components-buttons-sort';
|
|
4
|
-
import { ICheckboxItem } from
|
|
5
|
-
import { ICheckboxEvent } from
|
|
4
|
+
import { ICheckboxItem } from '@libs-ui/components-checkbox-group';
|
|
5
|
+
import { ICheckboxEvent } from '@libs-ui/components-checkbox-single';
|
|
6
6
|
import { IDropdownFunctionControlEvent, IEmitSelectKey } from '@libs-ui/components-dropdown';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
7
|
+
import { IListConfigItem } from '@libs-ui/components-list';
|
|
8
|
+
import { TYPE_POPOVER_EVENT } from '@libs-ui/components-popover';
|
|
9
|
+
import { IHttpResponseError, IPaging, TYPE_OBJECT } from '@libs-ui/interfaces-types';
|
|
10
|
+
import { IHttpRequestConfig } from '@libs-ui/services-http-request';
|
|
11
|
+
import { IButtonBarEvent, IConfigSelectMoreItem, IConfigTemplateItemCollapseExpand, IHoverButtonActionEvent, ILoadMoreEvent, ISortEvent, ITabelButtonActionEvent, ITableFooterConfig, ITableHeaderConfig, TYPE_DATA_FILTER_TABLE, TYPE_ITEM_DATA_TABLE, TYPE_NEW_DATA_TABLE, TYPE_TABLE_FILTER } from './interfaces';
|
|
12
|
+
import { ITableFunctionControlEvent } from './interfaces/function-control-event.interface';
|
|
13
|
+
import { ITableNoDataConfig } from './interfaces/no-data-config.interface';
|
|
13
14
|
import * as i0 from "@angular/core";
|
|
14
15
|
export declare class LibsUiComponentsTableComponent implements OnInit, OnDestroy {
|
|
15
16
|
/** PROPERTY */
|
|
16
17
|
protected classHeaderContainer: import("@angular/core").Signal<string>;
|
|
18
|
+
protected classHeaderLeftContainer: import("@angular/core").Signal<string>;
|
|
17
19
|
protected keysSelected: WritableSignal<any[]>;
|
|
18
20
|
protected loading: WritableSignal<boolean>;
|
|
19
21
|
protected stores: WritableSignal<WritableSignal<TYPE_OBJECT>[]>;
|
|
20
22
|
protected items: WritableSignal<WritableSignal<TYPE_OBJECT>[]>;
|
|
21
|
-
protected itemFooter: WritableSignal<TYPE_OBJECT>;
|
|
23
|
+
protected itemFooter: WritableSignal<TYPE_OBJECT | undefined>;
|
|
22
24
|
protected itemOfIndexHover?: TYPE_ITEM_DATA_TABLE;
|
|
23
25
|
protected keySearch: WritableSignal<string>;
|
|
24
26
|
protected totalItemInBackend: WritableSignal<number>;
|
|
25
27
|
protected hasItemHightLight: WritableSignal<boolean>;
|
|
26
28
|
protected totalItemDisplay: import("@angular/core").Signal<any>;
|
|
29
|
+
protected listConfigMoreItem: import("@angular/core").Signal<IListConfigItem>;
|
|
27
30
|
private hasScroll;
|
|
28
31
|
private instanceSort;
|
|
29
32
|
private hasActionButtonDropdownContent;
|
|
30
|
-
|
|
33
|
+
protected pagingStore: WritableSignal<IPaging | undefined>;
|
|
31
34
|
private loadedLastItem;
|
|
32
35
|
private storeParamsCallApi;
|
|
33
36
|
private timeoutLeaveItem;
|
|
34
37
|
private functionControlSelectMoreItem?;
|
|
35
|
-
private
|
|
38
|
+
private mouseEnterHeader;
|
|
36
39
|
/** INPUT */
|
|
37
40
|
readonly timeHighlighNewItem: import("@angular/core").InputSignalWithTransform<number, number | undefined>;
|
|
38
41
|
readonly headerLeft: import("@angular/core").InputSignalWithTransform<ITableHeaderConfig[], ITableHeaderConfig[] | undefined>;
|
|
@@ -48,9 +51,12 @@ export declare class LibsUiComponentsTableComponent implements OnInit, OnDestroy
|
|
|
48
51
|
readonly bufferAmount: import("@angular/core").InputSignalWithTransform<number, number | undefined>;
|
|
49
52
|
readonly totalItem: import("@angular/core").InputSignal<number | undefined>;
|
|
50
53
|
readonly isDashBorder: import("@angular/core").InputSignal<boolean | undefined>;
|
|
51
|
-
readonly
|
|
54
|
+
readonly classHeaderContainerInclude: import("@angular/core").InputSignal<string | undefined>;
|
|
55
|
+
readonly classHeaderLeftInclude: import("@angular/core").InputSignal<string | undefined>;
|
|
52
56
|
readonly classBodyInclude: import("@angular/core").InputSignalWithTransform<string, string | undefined>;
|
|
53
57
|
readonly classFooterInclude: import("@angular/core").InputSignalWithTransform<string, string | undefined>;
|
|
58
|
+
readonly classTableContainerInclude: import("@angular/core").InputSignalWithTransform<string, string | undefined>;
|
|
59
|
+
readonly classBarInclude: import("@angular/core").InputSignal<string>;
|
|
54
60
|
readonly fieldKey: import("@angular/core").InputSignalWithTransform<string, string | undefined>;
|
|
55
61
|
readonly defaultKeysSelected: import("@angular/core").InputSignal<any[] | undefined>;
|
|
56
62
|
readonly labelBarNoSelectItem: import("@angular/core").InputSignal<string>;
|
|
@@ -67,12 +73,27 @@ export declare class LibsUiComponentsTableComponent implements OnInit, OnDestroy
|
|
|
67
73
|
readonly classLabelBarNoSelectItem: import("@angular/core").InputSignal<string | undefined>;
|
|
68
74
|
readonly ignoreClassBgHeader: import("@angular/core").InputSignal<boolean | undefined>;
|
|
69
75
|
readonly noDataConfig: import("@angular/core").InputSignal<ITableNoDataConfig>;
|
|
76
|
+
readonly showScrollTablePinnedIfNoData: import("@angular/core").InputSignal<boolean | undefined>;
|
|
70
77
|
readonly ignoreBorderItemLast: import("@angular/core").InputSignal<boolean | undefined>;
|
|
71
78
|
readonly isHiddenHeaderWhenNodata: import("@angular/core").InputSignal<boolean | undefined>;
|
|
72
79
|
readonly maxItemSelected: import("@angular/core").InputSignalWithTransform<number, number | undefined>;
|
|
73
80
|
readonly configSelectMoreItem: import("@angular/core").InputSignal<IConfigSelectMoreItem | undefined>;
|
|
74
81
|
readonly onlyShowNoResult: import("@angular/core").InputSignal<boolean | undefined>;
|
|
75
82
|
readonly ignoreBorderItem: import("@angular/core").InputSignal<boolean | undefined>;
|
|
83
|
+
readonly activityLoadData: import("@angular/core").InputSignalWithTransform<"scroll-infinity" | "click-pagination", "scroll-infinity" | "click-pagination" | undefined>;
|
|
84
|
+
readonly paginationSetting: import("@angular/core").InputSignal<{
|
|
85
|
+
position?: "top" | "bottom";
|
|
86
|
+
classIncludeContainer?: string;
|
|
87
|
+
classIncludeItem?: string;
|
|
88
|
+
disable?: boolean;
|
|
89
|
+
numberPageDispaly?: number;
|
|
90
|
+
showTotalPage?: boolean;
|
|
91
|
+
showInputGotoPage?: boolean;
|
|
92
|
+
modeDisplayTotalPageAndGotoPage?: "top" | "bottom" | "left" | "right";
|
|
93
|
+
classDisplayTotalPageAndGotoPage?: string;
|
|
94
|
+
} | undefined>;
|
|
95
|
+
readonly templateNoData: import("@angular/core").InputSignal<any>;
|
|
96
|
+
readonly templateNoResult: import("@angular/core").InputSignal<any>;
|
|
76
97
|
/** OUTPUT */
|
|
77
98
|
readonly outLoadMore: import("@angular/core").OutputEmitterRef<ILoadMoreEvent>;
|
|
78
99
|
readonly outScrollIsGone: import("@angular/core").OutputEmitterRef<ILoadMoreEvent>;
|
|
@@ -94,9 +115,15 @@ export declare class LibsUiComponentsTableComponent implements OnInit, OnDestroy
|
|
|
94
115
|
protected footerLeftElementRef: import("@angular/core").Signal<ElementRef<any> | undefined>;
|
|
95
116
|
private bodyElementRef;
|
|
96
117
|
private bodyComponentRef;
|
|
118
|
+
/**INJECT */
|
|
97
119
|
private httpRequestService;
|
|
120
|
+
private destroyRef;
|
|
121
|
+
private cdr;
|
|
98
122
|
constructor();
|
|
99
123
|
ngOnInit(): void;
|
|
124
|
+
protected getIndexRow: (data: {
|
|
125
|
+
value: TYPE_ITEM_DATA_TABLE;
|
|
126
|
+
}) => import("rxjs").Observable<number>;
|
|
100
127
|
private getScrollContainer;
|
|
101
128
|
private callApiByService;
|
|
102
129
|
protected fakeResponseApi(): TYPE_OBJECT;
|
|
@@ -105,15 +132,12 @@ export declare class LibsUiComponentsTableComponent implements OnInit, OnDestroy
|
|
|
105
132
|
private checkExistItem;
|
|
106
133
|
private removeItems;
|
|
107
134
|
private getCount;
|
|
108
|
-
protected handlerScroll(e: any): void;
|
|
109
|
-
protected handlerScrollBottom(e: Event): void;
|
|
110
|
-
private loadMore;
|
|
111
135
|
private loadMoreSuccess;
|
|
112
136
|
protected handlerChangeAllChecked(): void;
|
|
113
137
|
protected handlerChangeCheckedAllItems(event: ICheckboxEvent): void;
|
|
114
138
|
private checkCancelConditionCheckedItem;
|
|
115
139
|
protected handlerChangeItemChecked(event: ICheckboxItem, item: TYPE_OBJECT): void;
|
|
116
|
-
protected handlerChangeSort(sort: ISort): void
|
|
140
|
+
protected handlerChangeSort(sort: ISort): Promise<void>;
|
|
117
141
|
private handlerSortLocal;
|
|
118
142
|
protected handlerFunctionControlMoreSelectItem(functionControl: IDropdownFunctionControlEvent): void;
|
|
119
143
|
protected handlerSelectedMoreItem(event: IEmitSelectKey | undefined): void;
|
|
@@ -125,13 +149,20 @@ export declare class LibsUiComponentsTableComponent implements OnInit, OnDestroy
|
|
|
125
149
|
protected setIndexHover(e: Event, item: WritableSignal<TYPE_OBJECT>): void;
|
|
126
150
|
protected resetIndexHoverWhenMouseLeave(e?: Event): void;
|
|
127
151
|
protected resetIndexHover(e?: Event): void;
|
|
128
|
-
protected
|
|
129
|
-
protected
|
|
152
|
+
protected handlerMouseLeaveContainer(event: Event): void;
|
|
153
|
+
protected handlerMouseEnterHeader(event: Event): void;
|
|
154
|
+
protected handlerMouseLeaveHeader(event: Event): void;
|
|
155
|
+
protected handlerMouseEnterFooter(event: Event): void;
|
|
156
|
+
protected handlerMouseLeaveFooter(event: Event): void;
|
|
157
|
+
protected handlerScrollHeader(e: Event): void;
|
|
158
|
+
protected handlerScrollBody(e: Event): void;
|
|
159
|
+
protected handlerScrollBottom(e: Event): void;
|
|
160
|
+
protected handlerChangePage(page: number): void;
|
|
130
161
|
private resetScroll;
|
|
131
162
|
private reset;
|
|
132
163
|
private checkScroll;
|
|
133
164
|
protected get BodyElement(): HTMLElement | undefined;
|
|
134
165
|
ngOnDestroy(): void;
|
|
135
166
|
static ɵfac: i0.ɵɵFactoryDeclaration<LibsUiComponentsTableComponent, never>;
|
|
136
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<LibsUiComponentsTableComponent, "libs_ui-components-table", never, { "timeHighlighNewItem": { "alias": "timeHighlighNewItem"; "required": false; "isSignal": true; }; "headerLeft": { "alias": "headerLeft"; "required": false; "isSignal": true; }; "headerRight": { "alias": "headerRight"; "required": false; "isSignal": true; }; "configTemplateItemCollapseExpand": { "alias": "configTemplateItemCollapseExpand"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "ignoreBorderFooter": { "alias": "ignoreBorderFooter"; "required": false; "isSignal": true; }; "customPositionFooter": { "alias": "customPositionFooter"; "required": false; "isSignal": true; }; "footerLeft": { "alias": "footerLeft"; "required": false; "isSignal": true; }; "footerRight": { "alias": "footerRight"; "required": false; "isSignal": true; }; "disableCheckbox": { "alias": "disableCheckbox"; "required": false; "isSignal": true; }; "enableUnequalChildrenSizes": { "alias": "enableUnequalChildrenSizes"; "required": false; "isSignal": true; }; "bufferAmount": { "alias": "bufferAmount"; "required": false; "isSignal": true; }; "totalItem": { "alias": "totalItem"; "required": false; "isSignal": true; }; "isDashBorder": { "alias": "isDashBorder"; "required": false; "isSignal": true; }; "
|
|
167
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LibsUiComponentsTableComponent, "libs_ui-components-table", never, { "timeHighlighNewItem": { "alias": "timeHighlighNewItem"; "required": false; "isSignal": true; }; "headerLeft": { "alias": "headerLeft"; "required": false; "isSignal": true; }; "headerRight": { "alias": "headerRight"; "required": false; "isSignal": true; }; "configTemplateItemCollapseExpand": { "alias": "configTemplateItemCollapseExpand"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "ignoreBorderFooter": { "alias": "ignoreBorderFooter"; "required": false; "isSignal": true; }; "customPositionFooter": { "alias": "customPositionFooter"; "required": false; "isSignal": true; }; "footerLeft": { "alias": "footerLeft"; "required": false; "isSignal": true; }; "footerRight": { "alias": "footerRight"; "required": false; "isSignal": true; }; "disableCheckbox": { "alias": "disableCheckbox"; "required": false; "isSignal": true; }; "enableUnequalChildrenSizes": { "alias": "enableUnequalChildrenSizes"; "required": false; "isSignal": true; }; "bufferAmount": { "alias": "bufferAmount"; "required": false; "isSignal": true; }; "totalItem": { "alias": "totalItem"; "required": false; "isSignal": true; }; "isDashBorder": { "alias": "isDashBorder"; "required": false; "isSignal": true; }; "classHeaderContainerInclude": { "alias": "classHeaderContainerInclude"; "required": false; "isSignal": true; }; "classHeaderLeftInclude": { "alias": "classHeaderLeftInclude"; "required": false; "isSignal": true; }; "classBodyInclude": { "alias": "classBodyInclude"; "required": false; "isSignal": true; }; "classFooterInclude": { "alias": "classFooterInclude"; "required": false; "isSignal": true; }; "classTableContainerInclude": { "alias": "classTableContainerInclude"; "required": false; "isSignal": true; }; "classBarInclude": { "alias": "classBarInclude"; "required": false; "isSignal": true; }; "fieldKey": { "alias": "fieldKey"; "required": false; "isSignal": true; }; "defaultKeysSelected": { "alias": "defaultKeysSelected"; "required": false; "isSignal": true; }; "labelBarNoSelectItem": { "alias": "labelBarNoSelectItem"; "required": false; "isSignal": true; }; "labelBarButtons": { "alias": "labelBarButtons"; "required": false; "isSignal": true; }; "classLabelBarButtons": { "alias": "classLabelBarButtons"; "required": false; "isSignal": true; }; "barButtons": { "alias": "barButtons"; "required": false; "isSignal": true; }; "sortLocal": { "alias": "sortLocal"; "required": false; "isSignal": true; }; "filterOrSortLocal": { "alias": "filterOrSortLocal"; "required": false; "isSignal": true; }; "httpRequestData": { "alias": "httpRequestData"; "required": false; "isSignal": true; }; "httpRequestDataFooter": { "alias": "httpRequestDataFooter"; "required": false; "isSignal": true; }; "newData": { "alias": "newData"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "ignoreBar": { "alias": "ignoreBar"; "required": false; "isSignal": true; }; "classLabelBarNoSelectItem": { "alias": "classLabelBarNoSelectItem"; "required": false; "isSignal": true; }; "ignoreClassBgHeader": { "alias": "ignoreClassBgHeader"; "required": false; "isSignal": true; }; "noDataConfig": { "alias": "noDataConfig"; "required": false; "isSignal": true; }; "showScrollTablePinnedIfNoData": { "alias": "showScrollTablePinnedIfNoData"; "required": false; "isSignal": true; }; "ignoreBorderItemLast": { "alias": "ignoreBorderItemLast"; "required": false; "isSignal": true; }; "isHiddenHeaderWhenNodata": { "alias": "isHiddenHeaderWhenNodata"; "required": false; "isSignal": true; }; "maxItemSelected": { "alias": "maxItemSelected"; "required": false; "isSignal": true; }; "configSelectMoreItem": { "alias": "configSelectMoreItem"; "required": false; "isSignal": true; }; "onlyShowNoResult": { "alias": "onlyShowNoResult"; "required": false; "isSignal": true; }; "ignoreBorderItem": { "alias": "ignoreBorderItem"; "required": false; "isSignal": true; }; "activityLoadData": { "alias": "activityLoadData"; "required": false; "isSignal": true; }; "paginationSetting": { "alias": "paginationSetting"; "required": false; "isSignal": true; }; "templateNoData": { "alias": "templateNoData"; "required": false; "isSignal": true; }; "templateNoResult": { "alias": "templateNoResult"; "required": false; "isSignal": true; }; }, { "outLoadMore": "outLoadMore"; "outScrollIsGone": "outScrollIsGone"; "outLoading": "outLoading"; "outClickButtonAction": "outClickButtonAction"; "outSort": "outSort"; "outClickBarButton": "outClickBarButton"; "outHoverButtonAction": "outHoverButtonAction"; "outKeysSelected": "outKeysSelected"; "outFunctionsControl": "outFunctionsControl"; "outLoadDataComplete": "outLoadDataComplete"; "outTotalItem": "outTotalItem"; "outLoadDataError": "outLoadDataError"; }, never, ["div.libs-ui-table-bar-left", "div.libs-ui-table-bar-right"], true, never>;
|
|
137
168
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
|
1
2
|
import { IButton } from '@libs-ui/components-buttons-button';
|
|
2
3
|
import { IDropdownFunctionControlEvent, IEmitMultiKey, IEmitSelectKey } from '@libs-ui/components-dropdown';
|
|
3
4
|
import { TYPE_POPOVER_EVENT } from '@libs-ui/components-popover';
|
|
@@ -5,7 +6,7 @@ import { ISwitchEvent } from '@libs-ui/components-switch';
|
|
|
5
6
|
import { TYPE_ITEM_DATA_TABLE } from '../interfaces';
|
|
6
7
|
import { ITableFieldTemplateConfig, ITableTemplateConfig } from '../interfaces/template-config.interface';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
|
-
export declare class LibsUiComponentsTableTemplatesComponent {
|
|
9
|
+
export declare class LibsUiComponentsTableTemplatesComponent implements OnDestroy {
|
|
9
10
|
private lockClick;
|
|
10
11
|
private functionControls;
|
|
11
12
|
protected isImageError: boolean | undefined;
|
|
@@ -13,13 +14,15 @@ export declare class LibsUiComponentsTableTemplatesComponent {
|
|
|
13
14
|
readonly configs: import("@angular/core").InputSignal<ITableTemplateConfig[] | undefined>;
|
|
14
15
|
readonly templateCssWrapper: import("@angular/core").InputSignal<string | undefined>;
|
|
15
16
|
readonly item: import("@angular/core").InputSignal<TYPE_ITEM_DATA_TABLE>;
|
|
16
|
-
protected handlerItemClick(event: Event | TYPE_POPOVER_EVENT | undefined, config: ITableFieldTemplateConfig
|
|
17
|
+
protected handlerItemClick(event: Event | TYPE_POPOVER_EVENT | undefined, config: ITableFieldTemplateConfig): Promise<void>;
|
|
17
18
|
protected clickButtonAction(button: IButton): Promise<void>;
|
|
18
19
|
protected handlerSwitch(switchItem: ISwitchEvent, config: ITableFieldTemplateConfig): Promise<void>;
|
|
19
20
|
protected handlerSelectItemDropdown(fieldConfig: ITableFieldTemplateConfig, index: number, data?: IEmitSelectKey): Promise<void>;
|
|
20
21
|
protected handlerSelectItemsDropdown(fieldConfig: ITableFieldTemplateConfig, index: number, data?: IEmitMultiKey): Promise<void>;
|
|
21
22
|
protected handlerImageError(event: Event): Promise<void>;
|
|
22
23
|
protected handlerFunctionControl(event: IDropdownFunctionControlEvent, index: number): Promise<void>;
|
|
24
|
+
private handleLockClick;
|
|
25
|
+
ngOnDestroy(): void;
|
|
23
26
|
static ɵfac: i0.ɵɵFactoryDeclaration<LibsUiComponentsTableTemplatesComponent, never>;
|
|
24
27
|
static ɵcmp: i0.ɵɵComponentDeclaration<LibsUiComponentsTableTemplatesComponent, "libs_ui-components-table-templates", never, { "isHover": { "alias": "isHover"; "required": false; "isSignal": true; }; "configs": { "alias": "configs"; "required": false; "isSignal": true; }; "templateCssWrapper": { "alias": "templateCssWrapper"; "required": false; "isSignal": true; }; "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
25
28
|
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Component, input } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class LibsUiComponentsTableTemplateAbstractComponent {
|
|
4
|
-
item = input.required();
|
|
5
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsTableTemplateAbstractComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: LibsUiComponentsTableTemplateAbstractComponent, selector: "libs_ui-components-table-templates_abstract", inputs: { item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: ``, isInline: true });
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LibsUiComponentsTableTemplateAbstractComponent, decorators: [{
|
|
9
|
-
type: Component,
|
|
10
|
-
args: [{
|
|
11
|
-
// eslint-disable-next-line @angular-eslint/component-selector
|
|
12
|
-
selector: 'libs_ui-components-table-templates_abstract',
|
|
13
|
-
template: ``
|
|
14
|
-
}]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuYWJzdHJhY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy11aS9jb21wb25lbnRzL3RhYmxlL3NyYy90ZW1wbGF0ZXMvdGVtcGxhdGUuYWJzdHJhY3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVFqRCxNQUFNLE9BQU8sOENBQThDO0lBQ2hELElBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF3QixDQUFDO3dHQUQ1Qyw4Q0FBOEM7NEZBQTlDLDhDQUE4QyxtTkFGL0MsRUFBRTs7NEZBRUQsOENBQThDO2tCQUwxRCxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLDZDQUE2QztvQkFDdkQsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGlucHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFRZUEVfSVRFTV9EQVRBX1RBQkxFIH0gZnJvbSBcIi4uL2ludGVyZmFjZXNcIjtcblxuQENvbXBvbmVudCh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnbGlic191aS1jb21wb25lbnRzLXRhYmxlLXRlbXBsYXRlc19hYnN0cmFjdCcsXG4gIHRlbXBsYXRlOiBgYFxufSlcbmV4cG9ydCBjbGFzcyBMaWJzVWlDb21wb25lbnRzVGFibGVUZW1wbGF0ZUFic3RyYWN0Q29tcG9uZW50IHtcbiAgcmVhZG9ubHkgaXRlbSA9IGlucHV0LnJlcXVpcmVkPFRZUEVfSVRFTV9EQVRBX1RBQkxFPigpO1xufSJdfQ==
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { TYPE_ITEM_DATA_TABLE } from "../interfaces";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export declare class LibsUiComponentsTableTemplateAbstractComponent {
|
|
4
|
-
readonly item: import("@angular/core").InputSignal<TYPE_ITEM_DATA_TABLE>;
|
|
5
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<LibsUiComponentsTableTemplateAbstractComponent, never>;
|
|
6
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<LibsUiComponentsTableTemplateAbstractComponent, "libs_ui-components-table-templates_abstract", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, false, never>;
|
|
7
|
-
}
|