@forestadmin/agent 1.41.12 → 1.43.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.
|
@@ -57,7 +57,8 @@ class ActionRoute extends collection_route_1.default {
|
|
|
57
57
|
// As forms are dynamic, we don't have any way to ensure that we're parsing the data correctly
|
|
58
58
|
// => better send invalid data to the getForm() customer handler than to the execute() one.
|
|
59
59
|
const unsafeData = action_values_1.default.makeFormDataUnsafe(rawData);
|
|
60
|
-
const
|
|
60
|
+
const form = await this.collection.getForm(caller, this.actionName, unsafeData, filterForCaller, { includeHiddenFields: true });
|
|
61
|
+
const { fields } = generator_actions_1.default.extractFieldsAndLayout(form);
|
|
61
62
|
// Now that we have the field list, we can parse the data again.
|
|
62
63
|
const data = action_values_1.default.makeFormData(dataSource, rawData, fields);
|
|
63
64
|
const result = await this.collection.execute(caller, this.actionName, data, filterForCaller);
|
|
@@ -113,15 +114,13 @@ class ActionRoute extends collection_route_1.default {
|
|
|
113
114
|
}
|
|
114
115
|
const caller = query_string_1.default.parseCaller(context);
|
|
115
116
|
const filter = await this.getRecordSelection(context);
|
|
116
|
-
const
|
|
117
|
+
const form = await this.collection.getForm(caller, this.actionName, data, filter, {
|
|
117
118
|
changedField: body.data.attributes.changed_field,
|
|
118
119
|
searchField: body.data.attributes.search_field,
|
|
119
120
|
searchValues,
|
|
120
121
|
includeHiddenFields: false,
|
|
121
122
|
});
|
|
122
|
-
context.response.body =
|
|
123
|
-
fields: fields.map(field => generator_actions_1.default.buildFieldSchema(this.collection.dataSource, field)),
|
|
124
|
-
};
|
|
123
|
+
context.response.body = generator_actions_1.default.buildFieldsAndLayout(this.collection.dataSource, form);
|
|
125
124
|
}
|
|
126
125
|
async middlewareCustomActionApprovalRequestData(context, next) {
|
|
127
126
|
const requestBody = context.request.body;
|
|
@@ -167,4 +166,4 @@ class ActionRoute extends collection_route_1.default {
|
|
|
167
166
|
}
|
|
168
167
|
}
|
|
169
168
|
exports.default = ActionRoute;
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
169
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3JvdXRlcy9tb2RpZmljYXRpb24vYWN0aW9uL2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQU15QztBQUt6QyxrRkFBZ0U7QUFPaEUsMENBQW9FO0FBQ3BFLDZFQUFvRDtBQUNwRCxtR0FBeUU7QUFDekUsK0ZBQThFO0FBQzlFLHVHQUFvRjtBQUNwRiwyREFBd0M7QUFDeEMsK0VBQTREO0FBQzVELDhFQUFxRDtBQUVyRCxNQUFxQixXQUFZLFNBQVEsMEJBQWU7SUFLdEQsWUFDRSxRQUF1QyxFQUN2QyxPQUFpQyxFQUNqQyxVQUFzQixFQUN0QixjQUFzQixFQUN0QixVQUFrQjtRQUVsQixLQUFLLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFFN0IsSUFBSSxDQUFDLDBCQUEwQixHQUFHLElBQUksOEJBQTBCLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUFjO1FBQ3hCLGtGQUFrRjtRQUNsRixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekYsTUFBTSxJQUFJLEdBQUcsMkJBQXNCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuRSxNQUFNLElBQUksR0FBRyxhQUFhLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxXQUFXLElBQUksSUFBSSxFQUFFLENBQUM7UUFFMUUsTUFBTSxDQUFDLElBQUksQ0FDVCxHQUFHLElBQUksRUFBRSxFQUNULElBQUksQ0FBQyx5Q0FB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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ActionField, Collection, DataSource } from '@forestadmin/datasource-toolkit';
|
|
2
|
-
import { ForestServerAction, ForestServerActionField } from '@forestadmin/forestadmin-client';
|
|
1
|
+
import { ActionField, ActionFormElement, ActionLayoutElement, Collection, DataSource } from '@forestadmin/datasource-toolkit';
|
|
2
|
+
import { ForestServerAction, ForestServerActionField, ForestServerActionFormLayoutElement } from '@forestadmin/forestadmin-client';
|
|
3
3
|
export default class SchemaGeneratorActions {
|
|
4
4
|
/**
|
|
5
5
|
* 'fields' sent to forestadmin-server when we want to generate the form on demand.
|
|
@@ -8,8 +8,17 @@ export default class SchemaGeneratorActions {
|
|
|
8
8
|
static defaultFields: ForestServerActionField[];
|
|
9
9
|
static getActionSlug(name: string): string;
|
|
10
10
|
static buildSchema(collection: Collection, name: string): Promise<ForestServerAction>;
|
|
11
|
+
static buildFieldsAndLayout(dataSource: DataSource, form: ActionFormElement[]): {
|
|
12
|
+
fields: ForestServerActionField[];
|
|
13
|
+
layout: ForestServerActionFormLayoutElement[];
|
|
14
|
+
};
|
|
15
|
+
static setFieldsDefaultValue(fields: ForestServerActionField[]): void;
|
|
11
16
|
/** Build schema for given field */
|
|
12
17
|
static buildFieldSchema(dataSource: DataSource, field: ActionField): ForestServerActionField;
|
|
13
|
-
|
|
18
|
+
static buildLayoutSchema(element: ActionLayoutElement): ForestServerActionFormLayoutElement;
|
|
19
|
+
static extractFieldsAndLayout(formElements: ActionFormElement[]): {
|
|
20
|
+
fields: ActionField[];
|
|
21
|
+
layout: ActionLayoutElement[];
|
|
22
|
+
};
|
|
14
23
|
}
|
|
15
24
|
//# sourceMappingURL=generator-actions.d.ts.map
|
|
@@ -17,7 +17,12 @@ class SchemaGeneratorActions {
|
|
|
17
17
|
const actionIndex = Object.keys(collection.schema.actions).indexOf(name);
|
|
18
18
|
// Generate url-safe friendly name (which won't be unique, but that's OK).
|
|
19
19
|
const slug = SchemaGeneratorActions.getActionSlug(name);
|
|
20
|
-
|
|
20
|
+
let fields = SchemaGeneratorActions.defaultFields;
|
|
21
|
+
if (schema.staticForm) {
|
|
22
|
+
const rawForm = await collection.getForm(null, name, null, null);
|
|
23
|
+
fields = SchemaGeneratorActions.buildFieldsAndLayout(collection.dataSource, rawForm).fields;
|
|
24
|
+
SchemaGeneratorActions.setFieldsDefaultValue(fields);
|
|
25
|
+
}
|
|
21
26
|
return {
|
|
22
27
|
id: `${collection.name}-${actionIndex}-${slug}`,
|
|
23
28
|
name,
|
|
@@ -35,6 +40,19 @@ class SchemaGeneratorActions {
|
|
|
35
40
|
},
|
|
36
41
|
};
|
|
37
42
|
}
|
|
43
|
+
static buildFieldsAndLayout(dataSource, form) {
|
|
44
|
+
const { fields, layout } = SchemaGeneratorActions.extractFieldsAndLayout(form);
|
|
45
|
+
return {
|
|
46
|
+
fields: fields.map(field => SchemaGeneratorActions.buildFieldSchema(dataSource, field)),
|
|
47
|
+
layout: layout.map(layoutElement => SchemaGeneratorActions.buildLayoutSchema(layoutElement)),
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
static setFieldsDefaultValue(fields) {
|
|
51
|
+
fields.forEach(field => {
|
|
52
|
+
field.defaultValue = field.value;
|
|
53
|
+
delete field.value;
|
|
54
|
+
});
|
|
55
|
+
}
|
|
38
56
|
/** Build schema for given field */
|
|
39
57
|
static buildFieldSchema(dataSource, field) {
|
|
40
58
|
const { label, description, isRequired, isReadOnly, watchChanges, type } = field;
|
|
@@ -62,24 +80,49 @@ class SchemaGeneratorActions {
|
|
|
62
80
|
output.widgetEdit = generator_action_field_widget_1.default.buildWidgetOptions(field);
|
|
63
81
|
return output;
|
|
64
82
|
}
|
|
65
|
-
static
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
83
|
+
static buildLayoutSchema(element) {
|
|
84
|
+
switch (element.component) {
|
|
85
|
+
case 'Input':
|
|
86
|
+
return {
|
|
87
|
+
component: 'input',
|
|
88
|
+
fieldId: element.fieldId,
|
|
89
|
+
};
|
|
90
|
+
case 'HtmlBlock':
|
|
91
|
+
return {
|
|
92
|
+
component: 'htmlBlock',
|
|
93
|
+
content: element.content,
|
|
94
|
+
};
|
|
95
|
+
case 'Separator':
|
|
96
|
+
default:
|
|
97
|
+
return {
|
|
98
|
+
component: 'separator',
|
|
99
|
+
};
|
|
69
100
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
101
|
+
}
|
|
102
|
+
static extractFieldsAndLayout(formElements) {
|
|
103
|
+
let hasLayout = false;
|
|
104
|
+
const fields = [];
|
|
105
|
+
let layout = [];
|
|
106
|
+
if (!formElements)
|
|
107
|
+
return { fields: [], layout: [] };
|
|
108
|
+
formElements.forEach(element => {
|
|
109
|
+
if (element.type === 'Layout') {
|
|
110
|
+
hasLayout = true;
|
|
111
|
+
layout.push(element);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
fields.push(element);
|
|
115
|
+
layout.push({
|
|
116
|
+
type: 'Layout',
|
|
117
|
+
component: 'Input',
|
|
118
|
+
fieldId: element.label,
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
if (!hasLayout) {
|
|
123
|
+
layout = [];
|
|
81
124
|
}
|
|
82
|
-
return
|
|
125
|
+
return { fields, layout };
|
|
83
126
|
}
|
|
84
127
|
}
|
|
85
128
|
exports.default = SchemaGeneratorActions;
|
|
@@ -102,4 +145,4 @@ SchemaGeneratorActions.defaultFields = [
|
|
|
102
145
|
widgetEdit: null,
|
|
103
146
|
},
|
|
104
147
|
];
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdG9yLWFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvZm9yZXN0LXNjaGVtYS9nZW5lcmF0b3ItYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHdFQVN5QztBQU16QyxnREFBd0I7QUFFeEIsb0VBQTJDO0FBQzNDLG9FQUFtRDtBQUNuRCxvR0FBeUU7QUFFekUsTUFBcUIsc0JBQXNCO0lBcUJ6QyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQVk7UUFDL0IsT0FBTyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxVQUFzQixFQUFFLElBQVk7UUFDM0QsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFL0MsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV6RSwwRUFBMEU7UUFDMUUsTUFBTSxJQUFJLEdBQUcsc0JBQXNCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hELElBQUksTUFBTSxHQUFHLHNCQUFzQixDQUFDLGFBQWEsQ0FBQztRQUVsRCxJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUU7WUFDckIsTUFBTSxPQUFPLEdBQUcsTUFBTSxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2pFLE1BQU0sR0FBRyxzQkFBc0IsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUU1Rixz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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/agent",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.43.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"@fast-csv/format": "^4.3.5",
|
|
16
16
|
"@fastify/express": "^1.1.0",
|
|
17
|
-
"@forestadmin/datasource-customizer": "1.
|
|
18
|
-
"@forestadmin/datasource-toolkit": "1.
|
|
19
|
-
"@forestadmin/forestadmin-client": "1.
|
|
17
|
+
"@forestadmin/datasource-customizer": "1.49.0",
|
|
18
|
+
"@forestadmin/datasource-toolkit": "1.36.0",
|
|
19
|
+
"@forestadmin/forestadmin-client": "1.29.0",
|
|
20
20
|
"@koa/cors": "^5.0.0",
|
|
21
21
|
"@koa/router": "^12.0.0",
|
|
22
22
|
"@types/koa__router": "^12.0.0",
|