@updevs/components 1.0.0-alpha.94 → 1.0.0-alpha.96
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/esm2022/button/button.component.mjs +1 -4
- package/esm2022/form-controls/select/components/single/select.component.mjs +13 -2
- package/esm2022/list/list.component.mjs +6 -3
- package/esm2022/table/abstractions/base-column.model.mjs +1 -1
- package/esm2022/table/abstractions/filters-operands.service.mjs +1 -1
- package/esm2022/table/components/filter-row/filter-row.component.mjs +37 -10
- package/esm2022/table/components/search-section/search-section.component.mjs +4 -4
- package/esm2022/table/models/filter-field.config.mjs +2 -0
- package/esm2022/table/models/operands-lists/select-filter-operands-list.model.mjs +12 -0
- package/esm2022/table/models/table-config.model.mjs +11 -1
- package/esm2022/table/models/table.config.mjs +1 -1
- package/esm2022/table/services/default-filters-operands.service.mjs +21 -17
- package/esm2022/table/services/stores/filters-operands.store.mjs +1 -1
- package/esm2022/table/tools/filters.tools.mjs +32 -16
- package/fesm2022/updevs-components-button.mjs +0 -3
- package/fesm2022/updevs-components-button.mjs.map +1 -1
- package/fesm2022/updevs-components-form-controls-select.mjs +12 -1
- package/fesm2022/updevs-components-form-controls-select.mjs.map +1 -1
- package/fesm2022/updevs-components-list.mjs +5 -2
- package/fesm2022/updevs-components-list.mjs.map +1 -1
- package/fesm2022/updevs-components-table.mjs +107 -41
- package/fesm2022/updevs-components-table.mjs.map +1 -1
- package/list/list.component.d.ts +1 -0
- package/package.json +13 -13
- package/table/abstractions/base-column.model.d.ts +2 -4
- package/table/abstractions/filters-operands.service.d.ts +2 -2
- package/table/components/filter-row/filter-row.component.d.ts +7 -4
- package/table/models/filter-field.config.d.ts +11 -0
- package/table/models/operands-lists/select-filter-operands-list.model.d.ts +6 -0
- package/table/models/table-config.model.d.ts +11 -0
- package/table/models/table.config.d.ts +11 -0
- package/table/services/default-filters-operands.service.d.ts +2 -2
- package/table/services/stores/filters-operands.store.d.ts +2 -2
- package/table/tools/filters.tools.d.ts +2 -1
package/list/list.component.d.ts
CHANGED
|
@@ -38,6 +38,7 @@ export declare class ListComponent implements OnInit, OnChanges {
|
|
|
38
38
|
ngOnChanges(changes: SimpleChanges): void;
|
|
39
39
|
onCheckboxChange(item: ListItem, isChecked: boolean): void;
|
|
40
40
|
onSelectItem(evt: any, item: ListItem): void;
|
|
41
|
+
trackByItemId(index: number, item: ListItem): any;
|
|
41
42
|
private setupItems;
|
|
42
43
|
private setupStyle;
|
|
43
44
|
private updateWrapperClasses;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@updevs/components",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.96",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@angular/common": "^18.0.1 || ^19.0.0",
|
|
6
6
|
"@angular/core": "^18.0.1 || ^19.0.0",
|
|
@@ -46,18 +46,18 @@
|
|
|
46
46
|
"esm": "./esm2022/calendar/updevs-components-calendar.mjs",
|
|
47
47
|
"default": "./fesm2022/updevs-components-calendar.mjs"
|
|
48
48
|
},
|
|
49
|
-
"./drag-and-drop": {
|
|
50
|
-
"types": "./drag-and-drop/index.d.ts",
|
|
51
|
-
"esm2022": "./esm2022/drag-and-drop/updevs-components-drag-and-drop.mjs",
|
|
52
|
-
"esm": "./esm2022/drag-and-drop/updevs-components-drag-and-drop.mjs",
|
|
53
|
-
"default": "./fesm2022/updevs-components-drag-and-drop.mjs"
|
|
54
|
-
},
|
|
55
49
|
"./card": {
|
|
56
50
|
"types": "./card/index.d.ts",
|
|
57
51
|
"esm2022": "./esm2022/card/updevs-components-card.mjs",
|
|
58
52
|
"esm": "./esm2022/card/updevs-components-card.mjs",
|
|
59
53
|
"default": "./fesm2022/updevs-components-card.mjs"
|
|
60
54
|
},
|
|
55
|
+
"./drag-and-drop": {
|
|
56
|
+
"types": "./drag-and-drop/index.d.ts",
|
|
57
|
+
"esm2022": "./esm2022/drag-and-drop/updevs-components-drag-and-drop.mjs",
|
|
58
|
+
"esm": "./esm2022/drag-and-drop/updevs-components-drag-and-drop.mjs",
|
|
59
|
+
"default": "./fesm2022/updevs-components-drag-and-drop.mjs"
|
|
60
|
+
},
|
|
61
61
|
"./dropdown": {
|
|
62
62
|
"types": "./dropdown/index.d.ts",
|
|
63
63
|
"esm2022": "./esm2022/dropdown/updevs-components-dropdown.mjs",
|
|
@@ -82,18 +82,18 @@
|
|
|
82
82
|
"esm": "./esm2022/link/updevs-components-link.mjs",
|
|
83
83
|
"default": "./fesm2022/updevs-components-link.mjs"
|
|
84
84
|
},
|
|
85
|
-
"./modal": {
|
|
86
|
-
"types": "./modal/index.d.ts",
|
|
87
|
-
"esm2022": "./esm2022/modal/updevs-components-modal.mjs",
|
|
88
|
-
"esm": "./esm2022/modal/updevs-components-modal.mjs",
|
|
89
|
-
"default": "./fesm2022/updevs-components-modal.mjs"
|
|
90
|
-
},
|
|
91
85
|
"./list": {
|
|
92
86
|
"types": "./list/index.d.ts",
|
|
93
87
|
"esm2022": "./esm2022/list/updevs-components-list.mjs",
|
|
94
88
|
"esm": "./esm2022/list/updevs-components-list.mjs",
|
|
95
89
|
"default": "./fesm2022/updevs-components-list.mjs"
|
|
96
90
|
},
|
|
91
|
+
"./modal": {
|
|
92
|
+
"types": "./modal/index.d.ts",
|
|
93
|
+
"esm2022": "./esm2022/modal/updevs-components-modal.mjs",
|
|
94
|
+
"esm": "./esm2022/modal/updevs-components-modal.mjs",
|
|
95
|
+
"default": "./fesm2022/updevs-components-modal.mjs"
|
|
96
|
+
},
|
|
97
97
|
"./paginator": {
|
|
98
98
|
"types": "./paginator/index.d.ts",
|
|
99
99
|
"esm2022": "./esm2022/paginator/updevs-components-paginator.mjs",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TextModel } from '@updevs/sdk';
|
|
2
|
-
import { DataTypeEnum } from '@updevs/sdk/stores';
|
|
2
|
+
import { DataTypeEnum, FilterTypeEnum } from '@updevs/sdk/stores';
|
|
3
3
|
import { WidthModel } from '@updevs/sdk/layout';
|
|
4
4
|
import { OptionalType, TextAlignmentType, TextDecorationType, OverflowStrategyType, FontWeightType } from '@updevs/sdk/types';
|
|
5
5
|
import { ColumnTypeEnum } from '../models/enums/column-type.enum';
|
|
@@ -10,9 +10,6 @@ export declare class BaseColumnModel {
|
|
|
10
10
|
allowSort: boolean;
|
|
11
11
|
isItalic: boolean;
|
|
12
12
|
type: ColumnTypeEnum;
|
|
13
|
-
/**
|
|
14
|
-
* Width.
|
|
15
|
-
*/
|
|
16
13
|
width?: WidthModel;
|
|
17
14
|
alignment: TextAlignmentType;
|
|
18
15
|
decoration?: TextDecorationType;
|
|
@@ -23,6 +20,7 @@ export declare class BaseColumnModel {
|
|
|
23
20
|
isHidden: boolean;
|
|
24
21
|
prefix?: TextModel;
|
|
25
22
|
suffix?: TextModel;
|
|
23
|
+
filterType?: FilterTypeEnum;
|
|
26
24
|
get dataType(): DataTypeEnum;
|
|
27
25
|
get widthClass(): string;
|
|
28
26
|
get widthSize(): number;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FilterTypeEnum } from '@updevs/sdk/stores';
|
|
2
2
|
import { NonNullableDictionaryType } from '@updevs/sdk/types';
|
|
3
3
|
import { FilterOperandConfig } from '../models/filter-operand.config';
|
|
4
4
|
export declare abstract class FiltersOperandsService {
|
|
5
5
|
abstract get isLoaded(): boolean;
|
|
6
|
-
abstract getOperands(type:
|
|
6
|
+
abstract getOperands(type: FilterTypeEnum): FilterOperandConfig[];
|
|
7
7
|
abstract getAllOperands(): NonNullableDictionaryType<FilterOperandConfig[]>;
|
|
8
8
|
}
|
|
@@ -1,28 +1,31 @@
|
|
|
1
1
|
import { OnInit, EventEmitter } from '@angular/core';
|
|
2
|
-
import { BaseSearchStore,
|
|
2
|
+
import { BaseSearchStore, FilterTypeEnum } from '@updevs/sdk/stores';
|
|
3
3
|
import { OptionalType } from '@updevs/sdk/types';
|
|
4
4
|
import { SelectItem } from '@updevs/components/form-controls/select';
|
|
5
5
|
import { BaseComponent } from '@updevs/sdk/layout';
|
|
6
6
|
import { FilterItemModel } from '../../models/filter-item.model';
|
|
7
7
|
import { BaseColumnModel } from '../../abstractions/base-column.model';
|
|
8
8
|
import { FilterOperandConfig } from '../../models/filter-operand.config';
|
|
9
|
+
import { FilterFieldConfig } from '../../models/filter-field.config';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
export declare class FilterRowComponent extends BaseComponent implements OnInit {
|
|
11
12
|
wrapperClasses: string;
|
|
12
13
|
readonly removed: EventEmitter<void>;
|
|
13
|
-
|
|
14
|
+
FilterTypeEnum: typeof FilterTypeEnum;
|
|
14
15
|
activeFilters: import("@angular/core").ModelSignal<FilterItemModel[]>;
|
|
15
16
|
rowIndex: import("@angular/core").InputSignal<number>;
|
|
16
17
|
columns: import("@angular/core").InputSignal<BaseColumnModel[]>;
|
|
17
18
|
isDisabled: import("@angular/core").InputSignal<boolean>;
|
|
18
19
|
store: import("@angular/core").InputSignal<BaseSearchStore<any> | undefined>;
|
|
20
|
+
filterFields: import("@angular/core").InputSignal<FilterFieldConfig[] | undefined>;
|
|
19
21
|
currentFilter: import("@angular/core").InputSignal<FilterItemModel | undefined>;
|
|
20
22
|
currentField: import("@angular/core").WritableSignal<OptionalType<SelectItem>>;
|
|
21
23
|
currentOperand: import("@angular/core").WritableSignal<OptionalType<FilterOperandConfig>>;
|
|
22
24
|
fieldsOptions: import("@angular/core").WritableSignal<SelectItem[]>;
|
|
23
25
|
comparisonOperatorOptions: import("@angular/core").WritableSignal<SelectItem[]>;
|
|
26
|
+
fieldAllowedValues: import("@angular/core").WritableSignal<SelectItem[]>;
|
|
24
27
|
isValueSectionEnabled: import("@angular/core").WritableSignal<boolean>;
|
|
25
|
-
get fieldType():
|
|
28
|
+
get fieldType(): FilterTypeEnum;
|
|
26
29
|
get selectedField(): OptionalType<SelectItem>;
|
|
27
30
|
get selectedOperand(): OptionalType<SelectItem>;
|
|
28
31
|
get selectedValue(): OptionalType<any>;
|
|
@@ -36,5 +39,5 @@ export declare class FilterRowComponent extends BaseComponent implements OnInit
|
|
|
36
39
|
updateValue(value?: any): void;
|
|
37
40
|
removeFilterItem(): void;
|
|
38
41
|
static ɵfac: i0.ɵɵFactoryDeclaration<FilterRowComponent, never>;
|
|
39
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FilterRowComponent, "upd-filter-row", never, { "activeFilters": { "alias": "activeFilters"; "required": true; "isSignal": true; }; "rowIndex": { "alias": "rowIndex"; "required": true; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": true; "isSignal": true; }; "store": { "alias": "store"; "required": false; "isSignal": true; }; "currentFilter": { "alias": "currentFilter"; "required": false; "isSignal": true; }; }, { "removed": "removed"; "activeFilters": "activeFiltersChange"; }, never, never, false, never>;
|
|
42
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FilterRowComponent, "upd-filter-row", never, { "activeFilters": { "alias": "activeFilters"; "required": true; "isSignal": true; }; "rowIndex": { "alias": "rowIndex"; "required": true; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": true; "isSignal": true; }; "store": { "alias": "store"; "required": false; "isSignal": true; }; "filterFields": { "alias": "filterFields"; "required": false; "isSignal": true; }; "currentFilter": { "alias": "currentFilter"; "required": false; "isSignal": true; }; }, { "removed": "removed"; "activeFilters": "activeFiltersChange"; }, never, never, false, never>;
|
|
40
43
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TextModel } from '@updevs/sdk';
|
|
2
|
+
import { FilterTypeEnum } from '@updevs/sdk/stores';
|
|
3
|
+
import { KeyValueModel } from '@updevs/sdk/core';
|
|
4
|
+
import { FilterOperandConfig } from './filter-operand.config';
|
|
5
|
+
export interface FilterFieldConfig {
|
|
6
|
+
name: string;
|
|
7
|
+
label: TextModel;
|
|
8
|
+
type: FilterTypeEnum;
|
|
9
|
+
allowedValues?: KeyValueModel[];
|
|
10
|
+
customOperands?: FilterOperandConfig[];
|
|
11
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DictionaryType } from '@updevs/sdk/types';
|
|
2
|
+
import { FilterOperandConfig } from '../filter-operand.config';
|
|
3
|
+
export declare class SelectFilterOperandsListModel {
|
|
4
|
+
static options: DictionaryType<FilterOperandConfig>;
|
|
5
|
+
static get optionsAsList(): FilterOperandConfig[];
|
|
6
|
+
}
|
|
@@ -4,6 +4,7 @@ import { BaseSearchStore } from '@updevs/sdk/stores';
|
|
|
4
4
|
import { GetByIdType } from '@updevs/sdk/types';
|
|
5
5
|
import { TableConfig } from './table.config';
|
|
6
6
|
import { BaseColumnModel } from '../abstractions/base-column.model';
|
|
7
|
+
import { FilterFieldConfig } from './filter-field.config';
|
|
7
8
|
export declare class TableConfigModel<T> implements TableConfig<T> {
|
|
8
9
|
name: string;
|
|
9
10
|
store?: BaseSearchStore<T>;
|
|
@@ -28,6 +29,16 @@ export declare class TableConfigModel<T> implements TableConfig<T> {
|
|
|
28
29
|
* Actions added to the header of the table as regular buttons.
|
|
29
30
|
*/
|
|
30
31
|
customHeaderActions: ButtonModel[];
|
|
32
|
+
/**
|
|
33
|
+
* Define custom filterable fields.
|
|
34
|
+
* If not provided and useColumnsAsFilters is true, filters will be auto-generated from columns.
|
|
35
|
+
*/
|
|
36
|
+
filterFields: FilterFieldConfig[];
|
|
37
|
+
/**
|
|
38
|
+
* Whether to use columns as filters.
|
|
39
|
+
* If false, filterFields must be provided.
|
|
40
|
+
*/
|
|
41
|
+
useColumnsAsFilters: boolean;
|
|
31
42
|
constructor(init?: TableConfig<T>);
|
|
32
43
|
getIdFunction: GetByIdType<T>;
|
|
33
44
|
}
|
|
@@ -3,6 +3,7 @@ import { ButtonModel } from '@updevs/sdk/layout';
|
|
|
3
3
|
import { BaseSearchStore } from '@updevs/sdk/stores';
|
|
4
4
|
import { GetByIdType } from '@updevs/sdk/types';
|
|
5
5
|
import { BaseColumnModel } from '../abstractions/base-column.model';
|
|
6
|
+
import { FilterFieldConfig } from './filter-field.config';
|
|
6
7
|
export interface TableConfig<T> {
|
|
7
8
|
name: string;
|
|
8
9
|
store?: BaseSearchStore<T>;
|
|
@@ -28,4 +29,14 @@ export interface TableConfig<T> {
|
|
|
28
29
|
* Actions added to the header of the table as regular buttons.
|
|
29
30
|
*/
|
|
30
31
|
customHeaderActions?: ButtonModel[];
|
|
32
|
+
/**
|
|
33
|
+
* Define custom filterable fields.
|
|
34
|
+
* If not provided and useColumnsAsFilters is true, filters will be auto-generated from columns.
|
|
35
|
+
*/
|
|
36
|
+
filterFields?: FilterFieldConfig[];
|
|
37
|
+
/**
|
|
38
|
+
* Whether to use columns as filters.
|
|
39
|
+
* If false, filterFields must be provided.
|
|
40
|
+
*/
|
|
41
|
+
useColumnsAsFilters?: boolean;
|
|
31
42
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FilterTypeEnum } from '@updevs/sdk/stores';
|
|
2
2
|
import { NonNullableDictionaryType } from '@updevs/sdk/types';
|
|
3
3
|
import { FiltersOperandsService } from '../abstractions/filters-operands.service';
|
|
4
4
|
import { FilterOperandConfig } from '../models/filter-operand.config';
|
|
@@ -10,7 +10,7 @@ export declare class DefaultFiltersOperandsService extends FiltersOperandsServic
|
|
|
10
10
|
private readonly filterOperandsStore;
|
|
11
11
|
private readonly cachedData;
|
|
12
12
|
constructor();
|
|
13
|
-
getOperands(type:
|
|
13
|
+
getOperands(type: FilterTypeEnum): FilterOperandConfig[];
|
|
14
14
|
getAllOperands(): NonNullableDictionaryType<FilterOperandConfig[]>;
|
|
15
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<DefaultFiltersOperandsService, never>;
|
|
16
16
|
static ɵprov: i0.ɵɵInjectableDeclaration<DefaultFiltersOperandsService>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { BaseStore,
|
|
1
|
+
import { BaseStore, FilterTypeEnum } from '@updevs/sdk/stores';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import { UpdTableConfigService } from '../upd-table-config.service';
|
|
4
4
|
import { FilterOperandConfig } from '../../models/filter-operand.config';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class FiltersOperandsStore extends BaseStore {
|
|
7
7
|
constructor(configService: UpdTableConfigService);
|
|
8
|
-
load(fieldType:
|
|
8
|
+
load(fieldType: FilterTypeEnum): Observable<FilterOperandConfig[]>;
|
|
9
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<FiltersOperandsStore, never>;
|
|
10
10
|
static ɵprov: i0.ɵɵInjectableDeclaration<FiltersOperandsStore>;
|
|
11
11
|
}
|
|
@@ -3,7 +3,8 @@ import { NonNullableDictionaryType } from '@updevs/sdk/types';
|
|
|
3
3
|
import { FilterItemModel } from '../models/filter-item.model';
|
|
4
4
|
import { BaseColumnModel } from '../abstractions/base-column.model';
|
|
5
5
|
import { FilterOperandConfig } from '../models/filter-operand.config';
|
|
6
|
+
import { FilterFieldConfig } from '../models/filter-field.config';
|
|
6
7
|
export declare class FilterTools {
|
|
7
8
|
static convertToFilterItem(filters: BaseFilter[], operands: NonNullableDictionaryType<FilterOperandConfig[]>): FilterItemModel[];
|
|
8
|
-
static convertToRequestFilter(filters: FilterItemModel[], columns
|
|
9
|
+
static convertToRequestFilter(filters: FilterItemModel[], filtersConfigs?: FilterFieldConfig[], columns?: BaseColumnModel[]): BaseFilter[];
|
|
9
10
|
}
|