@mediusinc/mng-commons 5.4.0-rc.3 → 5.4.0-rc.5
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/core/data-list/data-list-params-helpers.d.ts +1 -1
- package/core/data-list/data-list.model.d.ts +1 -0
- package/core/helpers/type-helpers.d.ts +12 -0
- package/esm2022/core/data-list/data-list-params-helpers.mjs +29 -5
- package/esm2022/core/data-list/data-list.model.mjs +1 -1
- package/esm2022/core/helpers/type-helpers.mjs +1 -1
- package/esm2022/filter/descriptors/filter-generic.descriptor.mjs +21 -0
- package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +1 -1
- package/esm2022/filter/descriptors/filter.descriptor.mjs +40 -1
- package/esm2022/filter/index.mjs +3 -1
- package/esm2022/filter/models/filter-generic-property.model.mjs +2 -0
- package/esm2022/form/components/dropdown/dropdown.component.mjs +159 -10
- package/esm2022/table/api/descriptors/table.descriptor.mjs +51 -2
- package/esm2022/table/components/column-filter/column-filter.component.mjs +2 -2
- package/esm2022/table/components/filter/filter-active-tag/filter-active-tag.component.mjs +4 -1
- package/esm2022/table/components/filter/filter-form/filter-form.component.mjs +42 -9
- package/esm2022/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.mjs +95 -11
- package/esm2022/table/components/table/table.component.mjs +57 -13
- package/esm2022/table/helpers/filters.mjs +32 -2
- package/esm2022/table/services/table-feature-config.token.mjs +1 -1
- package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +2 -2
- package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +11 -10
- package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +16 -2
- package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +2 -1
- package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +23 -3
- package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +2 -2
- package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +3 -3
- package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +3 -4
- package/esm2022/tableview/editor/components/formly/fields/formly-field-type.abstract.component.mjs +2 -1
- package/fesm2022/mediusinc-mng-commons-core.mjs +28 -4
- package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-filter.mjs +61 -1
- package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-form.mjs +156 -7
- package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table-api.mjs +50 -1
- package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table.mjs +230 -45
- package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +26 -10
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview.mjs +29 -8
- package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
- package/filter/descriptors/filter-generic.descriptor.d.ts +11 -0
- package/filter/descriptors/filter.descriptor.d.ts +21 -2
- package/filter/index.d.ts +2 -0
- package/filter/models/filter-generic-property.model.d.ts +7 -0
- package/form/components/dropdown/dropdown.component.d.ts +27 -1
- package/i18n/en.json +4 -0
- package/i18n/sl.json +4 -0
- package/package.json +1 -1
- package/table/api/descriptors/table.descriptor.d.ts +33 -1
- package/table/components/filter/filter-form/filter-form.component.d.ts +11 -2
- package/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.d.ts +21 -1
- package/table/components/table/table.component.d.ts +20 -5
- package/table/helpers/filters.d.ts +9 -1
- package/table/services/table-feature-config.token.d.ts +1 -0
- package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +6 -4
- package/tableview/api/editor/descriptors/field.descriptor.d.ts +10 -1
- package/version-info.json +5 -5
package/esm2022/tableview/editor/components/formly/fields/formly-field-type.abstract.component.mjs
CHANGED
|
@@ -5,6 +5,7 @@ import { BehaviorSubject } from 'rxjs';
|
|
|
5
5
|
import { startWith } from 'rxjs/operators';
|
|
6
6
|
import { CommonsInternalError } from '@mediusinc/mng-commons/core';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
+
// eslint-disable-next-line @angular-eslint/prefer-standalone
|
|
8
9
|
export class ACommonsFormlyFieldType extends FieldType {
|
|
9
10
|
constructor() {
|
|
10
11
|
super(...arguments);
|
|
@@ -41,4 +42,4 @@ export class ACommonsFormlyFieldType extends FieldType {
|
|
|
41
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ACommonsFormlyFieldType, decorators: [{
|
|
42
43
|
type: Directive
|
|
43
44
|
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LWZpZWxkLXR5cGUuYWJzdHJhY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vdGFibGV2aWV3L3NyYy9lZGl0b3IvY29tcG9uZW50cy9mb3JtbHkvZmllbGRzL2Zvcm1seS1maWVsZC10eXBlLmFic3RyYWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLFNBQVMsRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFFOUQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDOztBQUdqRSw2REFBNkQ7QUFFN0QsTUFBTSxPQUFnQix1QkFDbEIsU0FBUSxTQUF1RDtJQUZuRTs7UUFLdUIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6Qyw2QkFBd0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RCx1QkFBa0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsWUFBWSxFQUFFLENBQUM7S0E4Qi9FO0lBNUJHLElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUF3QixDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWlCLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQWEsT0FBTztRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBZ0QsQ0FBQztJQUN2RSxDQUFDO0lBRUQsSUFBYSxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLElBQUksRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMvQixNQUFNLElBQUksb0JBQW9CLENBQUMsNENBQTRDLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQzVGLENBQUM7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsR0FBRyxJQUFtRCxDQUFDO1FBQ2hGLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVM7WUFBRSxNQUFNLElBQUksb0JBQW9CLENBQUMscUNBQXFDLENBQUMsQ0FBQztRQUVyRyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVM7YUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDdEYsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7OEdBcENpQix1QkFBdUI7a0dBQXZCLHVCQUF1Qjs7MkZBQXZCLHVCQUF1QjtrQkFENUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGVzdHJveVJlZiwgRGlyZWN0aXZlLCBPbkluaXQsIGluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5pbXBvcnQge0ZpZWxkVHlwZX0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge3N0YXJ0V2l0aH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge0NvbW1vbnNJbnRlcm5hbEVycm9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtBRmllbGREZXNjcmlwdG9yLCBDb21tb25zRm9ybWx5RmllbGRDb25maWcsIENvbW1vbnNGb3JtbHlGb3JtT3B0aW9ucywgQ29tbW9uc0Zvcm1seUZvcm1TdGF0ZSwgRWRpdG9yRGVzY3JpcHRvckluc3R9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGV2aWV3L2FwaSc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvcHJlZmVyLXN0YW5kYWxvbmVcbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFDb21tb25zRm9ybWx5RmllbGRUeXBlPE1vZGVsLCBFZGl0b3JNb2RlbCwgRGVzY3JpcHRvciA9IEFGaWVsZERlc2NyaXB0b3I8TW9kZWwsIEVkaXRvck1vZGVsPj5cbiAgICBleHRlbmRzIEZpZWxkVHlwZTxDb21tb25zRm9ybWx5RmllbGRDb25maWc8TW9kZWwsIEVkaXRvck1vZGVsPj5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdFxue1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByb3RlY3RlZCBmb3JtU3RhdGVEaXNhYmxlZFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICAgIHByb3RlY3RlZCBmb3JtU3RhdGVEaXNhYmxlZCQgPSB0aGlzLmZvcm1TdGF0ZURpc2FibGVkU3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICAgIGdldCBkZXNjcmlwdG9yKCk6IERlc2NyaXB0b3Ige1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wcy5kZXNjcmlwdG9yIGFzIERlc2NyaXB0b3I7XG4gICAgfVxuXG4gICAgZ2V0IGVkaXRvckRlc2NyaXB0b3IoKTogRWRpdG9yRGVzY3JpcHRvckluc3Q8RWRpdG9yTW9kZWwsIGFueT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcm9wcy5lZGl0b3JEZXNjcmlwdG9yITtcbiAgICB9XG5cbiAgICBvdmVycmlkZSBnZXQgb3B0aW9ucygpOiBDb21tb25zRm9ybWx5Rm9ybU9wdGlvbnM8RWRpdG9yTW9kZWw+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQub3B0aW9ucyBhcyBDb21tb25zRm9ybWx5Rm9ybU9wdGlvbnM8RWRpdG9yTW9kZWw+O1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGdldCBmb3JtU3RhdGUoKTogQ29tbW9uc0Zvcm1seUZvcm1TdGF0ZTxFZGl0b3JNb2RlbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5mb3JtU3RhdGUgPz8ge307XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGlmICghdGhpcy5wcm9wcy5lZGl0b3JEZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgQ29tbW9uc0ludGVybmFsRXJyb3IoYEVkaXRvciBkZXNjcmlwdG9yIGlzIG5vdCBkZWZpbmVkIGZvciBrZXkgJHt0aGlzLmtleX0uYCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnByb3BzLmZpZWxkQ29tcG9uZW50ID0gdGhpcyBhcyBBQ29tbW9uc0Zvcm1seUZpZWxkVHlwZTxNb2RlbCwgRWRpdG9yTW9kZWw+O1xuICAgICAgICBpZiAoIXRoaXMuZm9ybVN0YXRlLmRpc2FibGVkJCkgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKCdmb3JtU3RhdGUuZGlzYWJsZWQkIG11c3QgYmUgZGVmaW5lZCcpO1xuXG4gICAgICAgIHRoaXMuZm9ybVN0YXRlLmRpc2FibGVkJFxuICAgICAgICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMuZm9ybVN0YXRlLmRpc2FibGVkID8/IGZhbHNlKSwgdGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHZhbHVlID0+IHRoaXMuZm9ybVN0YXRlRGlzYWJsZWRTdWJqZWN0Lm5leHQodmFsdWUpKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -853,7 +853,7 @@ function fromTableLoadToDataListParams(event) {
|
|
|
853
853
|
params.search = event.globalFilter;
|
|
854
854
|
}
|
|
855
855
|
else if (Array.isArray(event.globalFilter) && event.globalFilter.length > 0) {
|
|
856
|
-
params.search = event.globalFilter
|
|
856
|
+
params.search = event.globalFilter[0];
|
|
857
857
|
}
|
|
858
858
|
if (Array.isArray(event.multiSortMeta) && event.multiSortMeta.length > 0) {
|
|
859
859
|
params.sort = event.multiSortMeta.map(m => ({ property: m.field, ascending: m.order >= 0 }));
|
|
@@ -872,6 +872,11 @@ function fromTableLoadToDataListParams(event) {
|
|
|
872
872
|
filter.matchMode = eventFilter.matchMode;
|
|
873
873
|
filter.caseSensitive = eventFilter.caseSensitive;
|
|
874
874
|
}
|
|
875
|
+
// handle search case sensitivity to be also written on searchCaseSensitive
|
|
876
|
+
if (key === 'global' && typeof params.search === 'string' && filter.caseSensitive !== undefined) {
|
|
877
|
+
params.searchCaseSensitive = filter.caseSensitive;
|
|
878
|
+
return acc;
|
|
879
|
+
}
|
|
875
880
|
return { ...acc, [key]: filter };
|
|
876
881
|
}, {});
|
|
877
882
|
}
|
|
@@ -898,7 +903,7 @@ function dataListParamsToUrlQuery(params, defaults = {
|
|
|
898
903
|
urlParams['offset'] = params.offset;
|
|
899
904
|
}
|
|
900
905
|
if (params.search && params.search !== defaults?.search) {
|
|
901
|
-
urlParams['q'] = params.search
|
|
906
|
+
urlParams['q'] = `${params.searchCaseSensitive ? `cs:` : ''}${params.search}`;
|
|
902
907
|
}
|
|
903
908
|
if (params.sort && Array.isArray(params.sort) && params.sort.length > 0) {
|
|
904
909
|
if (defaults?.sort == null ||
|
|
@@ -911,6 +916,10 @@ function dataListParamsToUrlQuery(params, defaults = {
|
|
|
911
916
|
}
|
|
912
917
|
if (params.filters) {
|
|
913
918
|
Object.keys(params.filters).forEach(k => {
|
|
919
|
+
// global search filter is already included in the 'q' parameter, no need to include it here
|
|
920
|
+
if (k === 'global') {
|
|
921
|
+
return;
|
|
922
|
+
}
|
|
914
923
|
const paramFilter = params.filters[k];
|
|
915
924
|
const defaultFilter = defaults?.filters?.[k];
|
|
916
925
|
if (defaultFilter &&
|
|
@@ -1046,7 +1055,7 @@ function dataListParamsFilterToUrlQuery(paramFilter, allowNull = false) {
|
|
|
1046
1055
|
* @param {Params} urlParams - The URL query parameters.
|
|
1047
1056
|
* @return {DataListParams} - The converted DataListParams object.
|
|
1048
1057
|
*/
|
|
1049
|
-
function fromUrlQueryToDataListParams(urlParams) {
|
|
1058
|
+
function fromUrlQueryToDataListParams(urlParams, searchAsGlobal = false) {
|
|
1050
1059
|
const params = {};
|
|
1051
1060
|
Object.entries(urlParams).forEach(([urlParamKey, urlParamValue]) => {
|
|
1052
1061
|
if (urlParamKey === 'limit') {
|
|
@@ -1062,7 +1071,22 @@ function fromUrlQueryToDataListParams(urlParams) {
|
|
|
1062
1071
|
}
|
|
1063
1072
|
}
|
|
1064
1073
|
else if (urlParamKey === 'q') {
|
|
1065
|
-
|
|
1074
|
+
if (typeof urlParamValue === 'string' && urlParamValue.length > 0) {
|
|
1075
|
+
const searchQuery = urlParamValue.startsWith('cs:') || urlParamValue.startsWith('ci:') ? urlParamValue.substring(3) : urlParamValue;
|
|
1076
|
+
const caseSensitive = urlParamValue.startsWith('cs:');
|
|
1077
|
+
params.search = searchQuery;
|
|
1078
|
+
params.searchCaseSensitive = caseSensitive;
|
|
1079
|
+
if (searchAsGlobal) {
|
|
1080
|
+
if (!params.filters) {
|
|
1081
|
+
params.filters = {};
|
|
1082
|
+
}
|
|
1083
|
+
params.filters['global'] = {
|
|
1084
|
+
value: searchQuery,
|
|
1085
|
+
matchMode: FilterMatchMode.Contains,
|
|
1086
|
+
caseSensitive: caseSensitive
|
|
1087
|
+
};
|
|
1088
|
+
}
|
|
1089
|
+
}
|
|
1066
1090
|
}
|
|
1067
1091
|
else if (urlParamKey === 'sort') {
|
|
1068
1092
|
if (typeof urlParamValue === 'string') {
|