@forestadmin/datasource-customizer 1.29.2 → 1.30.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.
|
@@ -7,6 +7,8 @@ export default class ActionCollectionDecorator extends CollectionDecorator {
|
|
|
7
7
|
execute(caller: Caller, name: string, data: RecordData, filter: Filter): Promise<ActionResult>;
|
|
8
8
|
getForm(caller: Caller, name: string, data?: RecordData, filter?: Filter, metas?: {
|
|
9
9
|
changedField: string;
|
|
10
|
+
searchField?: string;
|
|
11
|
+
searchValue?: string;
|
|
10
12
|
}): Promise<ActionField[]>;
|
|
11
13
|
protected refineSchema(subSchema: CollectionSchema): CollectionSchema;
|
|
12
14
|
private getContext;
|
|
@@ -14,5 +16,7 @@ export default class ActionCollectionDecorator extends CollectionDecorator {
|
|
|
14
16
|
private dropIfs;
|
|
15
17
|
private dropDeferred;
|
|
16
18
|
private evaluate;
|
|
19
|
+
private isHandler;
|
|
20
|
+
private isSearchOptionsHandler;
|
|
17
21
|
}
|
|
18
22
|
//# sourceMappingURL=collection.d.ts.map
|
|
@@ -41,10 +41,13 @@ class ActionCollectionDecorator extends datasource_toolkit_1.CollectionDecorator
|
|
|
41
41
|
const context = this.getContext(caller, action, formValues, filter, used, metas?.changedField);
|
|
42
42
|
// Convert DynamicField to ActionField in successive steps.
|
|
43
43
|
let dynamicFields;
|
|
44
|
-
dynamicFields = action.form
|
|
44
|
+
dynamicFields = action.form
|
|
45
|
+
.map(c => ({ ...c }))
|
|
46
|
+
.filter(field => [undefined, field.label].includes(metas?.searchField)); // in the case of
|
|
47
|
+
// a search hook, we don't want to rebuild all the fields. only the one searched
|
|
45
48
|
dynamicFields = await this.dropDefaults(context, dynamicFields, formValues);
|
|
46
49
|
dynamicFields = await this.dropIfs(context, dynamicFields);
|
|
47
|
-
const fields = await this.dropDeferred(context, dynamicFields);
|
|
50
|
+
const fields = await this.dropDeferred(context, metas?.searchValue, dynamicFields);
|
|
48
51
|
for (const field of fields) {
|
|
49
52
|
// customer did not define a handler to rewrite the previous value => reuse current one.
|
|
50
53
|
if (field.value === undefined)
|
|
@@ -73,7 +76,7 @@ class ActionCollectionDecorator extends datasource_toolkit_1.CollectionDecorator
|
|
|
73
76
|
}
|
|
74
77
|
async dropDefaults(context, fields, data) {
|
|
75
78
|
const unvaluedFields = fields.filter(field => data[field.label] === undefined);
|
|
76
|
-
const defaults = await Promise.all(unvaluedFields.map(field => this.evaluate(context, field.defaultValue)));
|
|
79
|
+
const defaults = await Promise.all(unvaluedFields.map(field => this.evaluate(context, null, field.defaultValue)));
|
|
77
80
|
unvaluedFields.forEach((field, index) => {
|
|
78
81
|
data[field.label] = defaults[index];
|
|
79
82
|
});
|
|
@@ -82,22 +85,36 @@ class ActionCollectionDecorator extends datasource_toolkit_1.CollectionDecorator
|
|
|
82
85
|
}
|
|
83
86
|
async dropIfs(context, fields) {
|
|
84
87
|
// Remove fields which have falsy if
|
|
85
|
-
const ifValues = await Promise.all(fields.map(field => !field.if || this.evaluate(context, field.if)));
|
|
88
|
+
const ifValues = await Promise.all(fields.map(field => !field.if || this.evaluate(context, null, field.if)));
|
|
86
89
|
const newFields = fields.filter((_, index) => ifValues[index]);
|
|
87
90
|
newFields.forEach(field => delete field.if);
|
|
88
91
|
return newFields;
|
|
89
92
|
}
|
|
90
|
-
async dropDeferred(context, fields) {
|
|
93
|
+
async dropDeferred(context, searchValue, fields) {
|
|
91
94
|
const newFields = fields.map(async (field) => {
|
|
92
95
|
const keys = Object.keys(field);
|
|
93
|
-
const values = await Promise.all(Object.values(field).map(value => this.evaluate(context, value)));
|
|
96
|
+
const values = await Promise.all(Object.values(field).map(value => this.evaluate(context, searchValue, value)));
|
|
94
97
|
return keys.reduce((memo, key, index) => ({ ...memo, [key]: values[index] }), {});
|
|
95
98
|
});
|
|
96
99
|
return Promise.all(newFields);
|
|
97
100
|
}
|
|
98
|
-
async evaluate(context, value) {
|
|
99
|
-
|
|
101
|
+
async evaluate(context, searchValue, value) {
|
|
102
|
+
if (this.isHandler(value)) {
|
|
103
|
+
// Only the options key of the dynamic search dropdown widget accept a searchValue
|
|
104
|
+
if (this.isSearchOptionsHandler(value)) {
|
|
105
|
+
return value(context, searchValue);
|
|
106
|
+
}
|
|
107
|
+
return value(context);
|
|
108
|
+
}
|
|
109
|
+
return value;
|
|
110
|
+
}
|
|
111
|
+
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
112
|
+
isHandler(value) {
|
|
113
|
+
return typeof value === 'function';
|
|
114
|
+
}
|
|
115
|
+
isSearchOptionsHandler(value) {
|
|
116
|
+
return value.name === 'options';
|
|
100
117
|
}
|
|
101
118
|
}
|
|
102
119
|
exports.default = ActionCollectionDecorator;
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kZWNvcmF0b3JzL2FjdGlvbnMvY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQVV5QztBQUV6QywwREFBMkM7QUFDM0MsOERBQW1EO0FBQ25ELHNFQUE2QztBQUk3QyxNQUFxQix5QkFBMEIsU0FBUSx3Q0FBbUI7SUFBMUU7O1FBR1UsWUFBTyxHQUFxQyxFQUFFLENBQUM7SUFnTHpELENBQUM7SUE5S0MsU0FBUyxDQUFDLElBQVksRUFBRSxNQUF3QjtRQUM5QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRVEsS0FBSyxDQUFDLE9BQU8sQ0FDcEIsTUFBYyxFQUNkLElBQVksRUFDWixJQUFnQixFQUNoQixNQUFjO1FBRWQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFFN0UsOERBQThEO1FBQzlELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFRLENBQUM7UUFDckUsTUFBTSxhQUFhLEdBQUcsSUFBSSx3QkFBYSxFQUFFLENBQUM7UUFDMUMsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztRQUU1RCxPQUFPLENBQ0wsTUFBTSxJQUFJO1lBQ1IsSUFBSSxFQUFFLFNBQWtCO1lBQ3hCLFdBQVcsRUFBRSxJQUFJLEdB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
|
|
@@ -2,11 +2,12 @@ import { CompositeId, Json } from '@forestadmin/datasource-toolkit';
|
|
|
2
2
|
type UnionKeys<T> = T extends T ? keyof T : never;
|
|
3
3
|
type StrictUnionHelper<T, TAll> = T extends any ? T & Partial<Record<Exclude<UnionKeys<TAll>, keyof T>, never>> : never;
|
|
4
4
|
type StrictUnion<T> = StrictUnionHelper<T, T>;
|
|
5
|
-
type DropdownOption<TValue = string> = {
|
|
5
|
+
export type DropdownOption<TValue = string> = {
|
|
6
6
|
value: TValue | null;
|
|
7
7
|
label: string;
|
|
8
8
|
} | TValue;
|
|
9
|
-
export type
|
|
9
|
+
export type Handler<Context = unknown, Result = unknown> = ((context: Context) => Promise<Result>) | ((context: Context) => Result);
|
|
10
|
+
export type ValueOrHandler<Context = unknown, Result = unknown> = Handler<Context, Result> | Promise<Result> | Result;
|
|
10
11
|
type BaseDynamicField<Type, Context, Result> = {
|
|
11
12
|
type: Type;
|
|
12
13
|
label: string;
|
|
@@ -43,6 +44,13 @@ type DropdownDynamicFieldConfiguration<Context = unknown, TValue = string> = Lim
|
|
|
43
44
|
placeholder?: string;
|
|
44
45
|
search?: 'static' | 'disabled';
|
|
45
46
|
};
|
|
47
|
+
export type SearchOptionsHandler<Context = unknown, TValue = string> = ((context: Context, searchValue: string) => DropdownOption<TValue>[]) | ((context: Context, searchValue: string) => Promise<DropdownOption<TValue>[]>);
|
|
48
|
+
type DropdownDynamicSearchFieldConfiguration<Context = unknown, TValue = string> = {
|
|
49
|
+
widget: 'Dropdown';
|
|
50
|
+
options: SearchOptionsHandler<Context, TValue>;
|
|
51
|
+
placeholder?: string;
|
|
52
|
+
search: 'dynamic';
|
|
53
|
+
};
|
|
46
54
|
type CheckboxDynamicFieldConfiguration = {
|
|
47
55
|
widget: 'Checkbox';
|
|
48
56
|
};
|
|
@@ -106,6 +114,6 @@ type CurrencyInputFieldConfiguration<Context> = {
|
|
|
106
114
|
};
|
|
107
115
|
type RadioButtonFieldConfiguration<Context = unknown, TValue = string> = LimitedValueDynamicFieldConfiguration<Context, 'RadioGroup', TValue>;
|
|
108
116
|
type CheckboxesFieldConfiguration<Context = unknown, TValue = string> = LimitedValueDynamicFieldConfiguration<Context, 'CheckboxGroup', TValue>;
|
|
109
|
-
export type DynamicField<Context = unknown> = StrictUnion<BooleanDynamicField<Context> | (BooleanDynamicField<Context> & CheckboxDynamicFieldConfiguration) | CollectionDynamicField<Context> | EnumDynamicField<Context> | EnumListDynamicField<Context> | FileDynamicField<Context> | FileListDynamicField<Context> | JsonDynamicField<Context> | NumberDynamicField<Context> | (NumberDynamicField<Context> & NumberInputFieldConfiguration<Context>) | (NumberDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, number>) | (NumberDynamicField<Context> & RadioButtonFieldConfiguration<Context, number>) | (NumberDynamicField<Context> & CurrencyInputFieldConfiguration<Context>) | NumberListDynamicField<Context> | (NumberListDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, number>) | (NumberListDynamicField<Context> & CheckboxesFieldConfiguration<Context, number>) | (NumberListDynamicField<Context> & ArrayNumberInputFieldConfiguration<Context>) | StringDynamicField<Context> | (DateDynamicField<Context> & DatePickerInputFieldConfiguration<Context>) | (StringDynamicField<Context> & TextInputFieldConfiguration) | (StringDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, string>) | (StringDynamicField<Context> & RadioButtonFieldConfiguration<Context, string>) | (StringDynamicField<Context> & TextAreaFieldConfiguration) | (StringDynamicField<Context> & RichTextFieldConfiguration) | (StringDynamicField<Context> & ColorPickerFieldConfiguration) | StringListDynamicField<Context> | (StringListDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, string>) | (StringListDynamicField<Context> & CheckboxesFieldConfiguration<Context, string>) | (StringListDynamicField<Context> & ArrayTextInputFieldConfiguration)>;
|
|
117
|
+
export type DynamicField<Context = unknown> = StrictUnion<BooleanDynamicField<Context> | (BooleanDynamicField<Context> & CheckboxDynamicFieldConfiguration) | CollectionDynamicField<Context> | EnumDynamicField<Context> | EnumListDynamicField<Context> | FileDynamicField<Context> | FileListDynamicField<Context> | JsonDynamicField<Context> | NumberDynamicField<Context> | (NumberDynamicField<Context> & NumberInputFieldConfiguration<Context>) | (NumberDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, number>) | (NumberDynamicField<Context> & DropdownDynamicSearchFieldConfiguration<Context, number>) | (NumberDynamicField<Context> & RadioButtonFieldConfiguration<Context, number>) | (NumberDynamicField<Context> & CurrencyInputFieldConfiguration<Context>) | NumberListDynamicField<Context> | (NumberListDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, number>) | (NumberListDynamicField<Context> & DropdownDynamicSearchFieldConfiguration<Context, number>) | (NumberListDynamicField<Context> & CheckboxesFieldConfiguration<Context, number>) | (NumberListDynamicField<Context> & ArrayNumberInputFieldConfiguration<Context>) | StringDynamicField<Context> | (DateDynamicField<Context> & DatePickerInputFieldConfiguration<Context>) | (StringDynamicField<Context> & TextInputFieldConfiguration) | (StringDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, string>) | (StringDynamicField<Context> & DropdownDynamicSearchFieldConfiguration<Context, string>) | (StringDynamicField<Context> & RadioButtonFieldConfiguration<Context, string>) | (StringDynamicField<Context> & TextAreaFieldConfiguration) | (StringDynamicField<Context> & RichTextFieldConfiguration) | (StringDynamicField<Context> & ColorPickerFieldConfiguration) | StringListDynamicField<Context> | (StringListDynamicField<Context> & DropdownDynamicFieldConfiguration<Context, string>) | (StringListDynamicField<Context> & DropdownDynamicSearchFieldConfiguration<Context, string>) | (StringListDynamicField<Context> & CheckboxesFieldConfiguration<Context, string>) | (StringListDynamicField<Context> & ArrayTextInputFieldConfiguration)>;
|
|
110
118
|
export {};
|
|
111
119
|
//# sourceMappingURL=fields.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/datasource-customizer",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.30.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"@types/uuid": "^9.0.0"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@forestadmin/datasource-toolkit": "1.
|
|
31
|
+
"@forestadmin/datasource-toolkit": "1.23.0",
|
|
32
32
|
"file-type": "^16.5.4",
|
|
33
33
|
"luxon": "^3.2.1",
|
|
34
34
|
"object-hash": "^3.0.0",
|