@forestadmin/agent-client 1.4.20 → 1.4.22
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/dist/action-fields/field-form-states.d.ts +5 -3
- package/dist/action-fields/field-form-states.js +48 -11
- package/dist/domains/action.d.ts +4 -5
- package/dist/domains/action.js +4 -2
- package/dist/domains/collection.d.ts +1 -1
- package/dist/domains/collection.js +6 -6
- package/dist/http-requester.d.ts +2 -0
- package/dist/http-requester.js +17 -3
- package/dist/query-serializer.d.ts +21 -0
- package/dist/query-serializer.js +45 -3
- package/package.json +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import
|
|
1
|
+
import type { ForestSchemaAction, ForestServerActionFormLayoutElement } from '@forestadmin/forestadmin-client';
|
|
2
|
+
import HttpRequester from '../http-requester';
|
|
3
3
|
import ActionFieldMultipleChoice from './action-field-multiple-choice';
|
|
4
4
|
import FieldGetter from './field-getter';
|
|
5
5
|
export default class FieldFormStates {
|
|
@@ -10,7 +10,9 @@ export default class FieldFormStates {
|
|
|
10
10
|
private readonly httpRequester;
|
|
11
11
|
private readonly ids;
|
|
12
12
|
private readonly layout;
|
|
13
|
-
|
|
13
|
+
private readonly hooks?;
|
|
14
|
+
private readonly fallbackFields?;
|
|
15
|
+
constructor(actionName: string, actionPath: string, collectionName: string, httpRequester: HttpRequester, ids: string[], hooks?: ForestSchemaAction['hooks'], fallbackFields?: ForestSchemaAction['fields']);
|
|
14
16
|
getFieldValues(): Record<string, unknown>;
|
|
15
17
|
getMultipleChoiceField(name: string): ActionFieldMultipleChoice;
|
|
16
18
|
getField(name: string): FieldGetter | undefined;
|
|
@@ -3,10 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const http_requester_1 = __importDefault(require("../http-requester"));
|
|
6
7
|
const action_field_multiple_choice_1 = __importDefault(require("./action-field-multiple-choice"));
|
|
7
8
|
const field_getter_1 = __importDefault(require("./field-getter"));
|
|
8
9
|
class FieldFormStates {
|
|
9
|
-
constructor(actionName, actionPath, collectionName, httpRequester, ids) {
|
|
10
|
+
constructor(actionName, actionPath, collectionName, httpRequester, ids, hooks, fallbackFields) {
|
|
10
11
|
this.fields = [];
|
|
11
12
|
this.actionName = actionName;
|
|
12
13
|
this.actionPath = actionPath;
|
|
@@ -14,6 +15,8 @@ class FieldFormStates {
|
|
|
14
15
|
this.httpRequester = httpRequester;
|
|
15
16
|
this.ids = ids;
|
|
16
17
|
this.layout = [];
|
|
18
|
+
this.hooks = hooks;
|
|
19
|
+
this.fallbackFields = fallbackFields;
|
|
17
20
|
}
|
|
18
21
|
getFieldValues() {
|
|
19
22
|
return this.fields.reduce((acc, f) => {
|
|
@@ -39,7 +42,9 @@ class FieldFormStates {
|
|
|
39
42
|
if (!field)
|
|
40
43
|
throw new Error(`Field "${name}" not found in action "${this.actionName}"`);
|
|
41
44
|
field.getPlainField().value = value;
|
|
42
|
-
|
|
45
|
+
if (!this.hooks || this.hooks.change.length > 0) {
|
|
46
|
+
await this.loadChanges(name);
|
|
47
|
+
}
|
|
43
48
|
}
|
|
44
49
|
async loadInitialState() {
|
|
45
50
|
const requestBody = {
|
|
@@ -52,14 +57,46 @@ class FieldFormStates {
|
|
|
52
57
|
type: 'action-requests',
|
|
53
58
|
},
|
|
54
59
|
};
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
60
|
+
try {
|
|
61
|
+
const queryResults = await this.httpRequester.query({
|
|
62
|
+
method: 'post',
|
|
63
|
+
path: `${this.actionPath}/hooks/load`,
|
|
64
|
+
body: requestBody,
|
|
65
|
+
});
|
|
66
|
+
this.clearFieldsAndLayout();
|
|
67
|
+
this.layout.push(...(queryResults.layout ?? []));
|
|
68
|
+
this.addFields(queryResults.fields);
|
|
69
|
+
}
|
|
70
|
+
catch (error) {
|
|
71
|
+
// When hooks.load is false, the behavior differs between backends:
|
|
72
|
+
//
|
|
73
|
+
// - Node agent (@forestadmin/agent): always responds to POST /hooks/load
|
|
74
|
+
// with the form fields, even when hooks.load is false in the schema.
|
|
75
|
+
// In this case the call above succeeds and fields are loaded normally.
|
|
76
|
+
//
|
|
77
|
+
// - Ruby agent (forest_liana): does NOT register a route for /hooks/load
|
|
78
|
+
// when hooks.load is false. The POST returns a 404.
|
|
79
|
+
// In this case we catch the 404 and continue with an empty form,
|
|
80
|
+
// which matches the expected behavior (no dynamic fields to load).
|
|
81
|
+
//
|
|
82
|
+
// We always attempt the call so Node users get their fields,
|
|
83
|
+
// and only swallow 404 errors for Ruby users. Other errors (401, 500,
|
|
84
|
+
// network failures) are rethrown so they surface properly.
|
|
85
|
+
if (this.hooks && !this.hooks.load && http_requester_1.default.is404Error(error)) {
|
|
86
|
+
this.clearFieldsAndLayout();
|
|
87
|
+
if (this.fallbackFields?.length) {
|
|
88
|
+
this.addFields(this.fallbackFields.map(f => ({
|
|
89
|
+
field: f.field,
|
|
90
|
+
type: f.type,
|
|
91
|
+
isRequired: f.isRequired ?? false,
|
|
92
|
+
isReadOnly: false,
|
|
93
|
+
value: f.defaultValue,
|
|
94
|
+
})));
|
|
95
|
+
}
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
throw error;
|
|
99
|
+
}
|
|
63
100
|
}
|
|
64
101
|
addFields(plainFields) {
|
|
65
102
|
plainFields.forEach(f => this.fields.push(new field_getter_1.default(f)));
|
|
@@ -91,4 +128,4 @@ class FieldFormStates {
|
|
|
91
128
|
}
|
|
92
129
|
}
|
|
93
130
|
exports.default = FieldFormStates;
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZm9ybS1zdGF0ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9uLWZpZWxkcy9maWVsZC1mb3JtLXN0YXRlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQU1BLHVFQUE4QztBQUM5QyxrR0FBdUU7QUFDdkUsa0VBQXlDO0FBRXpDLE1BQXFCLGVBQWU7SUFXbEMsWUFDRSxVQUFrQixFQUNsQixVQUFrQixFQUNsQixjQUFzQixFQUN0QixhQUE0QixFQUM1QixHQUFhLEVBQ2IsS0FBbUMsRUFDbkMsY0FBNkM7UUFFN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEtBQUssU0FBUztnQkFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBRWhFLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ1QsQ0FBQztJQUVELHNCQUFzQixDQUFDLElBQVk7UUFD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
|
package/dist/domains/action.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type ActionField from '../action-fields/action-field';
|
|
2
2
|
import type FieldFormStates from '../action-fields/field-form-states';
|
|
3
3
|
import type HttpRequester from '../http-requester';
|
|
4
|
+
import type { ForestSchemaAction } from '@forestadmin/forestadmin-client';
|
|
4
5
|
import ActionFieldCheckbox from '../action-fields/action-field-checkbox';
|
|
5
6
|
import ActionFieldCheckboxGroup from '../action-fields/action-field-checkbox-group';
|
|
6
7
|
import ActionFieldColorPicker from '../action-fields/action-field-color-picker';
|
|
@@ -20,10 +21,7 @@ export type BaseActionContext = {
|
|
|
20
21
|
};
|
|
21
22
|
export type ActionEndpointsByCollection = {
|
|
22
23
|
[collectionName: string]: {
|
|
23
|
-
[actionName: string]:
|
|
24
|
-
name: string;
|
|
25
|
-
endpoint: string;
|
|
26
|
-
};
|
|
24
|
+
[actionName: string]: Pick<ForestSchemaAction, 'id' | 'name' | 'endpoint' | 'hooks' | 'fields'>;
|
|
27
25
|
};
|
|
28
26
|
};
|
|
29
27
|
export default class Action {
|
|
@@ -31,8 +29,9 @@ export default class Action {
|
|
|
31
29
|
private readonly httpRequester;
|
|
32
30
|
protected readonly fieldsFormStates: FieldFormStates;
|
|
33
31
|
private readonly ids;
|
|
32
|
+
private readonly actionId;
|
|
34
33
|
private actionPath;
|
|
35
|
-
constructor(collectionName: string, httpRequester: HttpRequester, actionPath: string, fieldsFormStates: FieldFormStates, ids?: (string | number)[]);
|
|
34
|
+
constructor(collectionName: string, httpRequester: HttpRequester, actionPath: string, fieldsFormStates: FieldFormStates, ids?: (string | number)[], actionId?: string);
|
|
36
35
|
execute(signedApprovalRequest?: Record<string, unknown>): Promise<{
|
|
37
36
|
success: string;
|
|
38
37
|
html?: string;
|
package/dist/domains/action.js
CHANGED
|
@@ -17,12 +17,13 @@ const action_field_string_1 = __importDefault(require("../action-fields/action-f
|
|
|
17
17
|
const action_field_string_list_1 = __importDefault(require("../action-fields/action-field-string-list"));
|
|
18
18
|
const action_layout_root_1 = __importDefault(require("../action-layout/action-layout-root"));
|
|
19
19
|
class Action {
|
|
20
|
-
constructor(collectionName, httpRequester, actionPath, fieldsFormStates, ids) {
|
|
20
|
+
constructor(collectionName, httpRequester, actionPath, fieldsFormStates, ids, actionId) {
|
|
21
21
|
this.collectionName = collectionName;
|
|
22
22
|
this.httpRequester = httpRequester;
|
|
23
23
|
this.ids = ids ?? undefined;
|
|
24
24
|
this.actionPath = actionPath;
|
|
25
25
|
this.fieldsFormStates = fieldsFormStates;
|
|
26
|
+
this.actionId = actionId;
|
|
26
27
|
}
|
|
27
28
|
async execute(signedApprovalRequest) {
|
|
28
29
|
const requestBody = {
|
|
@@ -32,6 +33,7 @@ class Action {
|
|
|
32
33
|
ids: this.ids,
|
|
33
34
|
values: this.fieldsFormStates.getFieldValues(),
|
|
34
35
|
signed_approval_request: signedApprovalRequest,
|
|
36
|
+
...(this.actionId !== undefined && { smart_action_id: this.actionId }),
|
|
35
37
|
},
|
|
36
38
|
type: 'custom-action-requests',
|
|
37
39
|
},
|
|
@@ -138,4 +140,4 @@ class Action {
|
|
|
138
140
|
}
|
|
139
141
|
}
|
|
140
142
|
exports.default = Action;
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RvbWFpbnMvYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBS0EsbUdBQXlFO0FBQ3pFLCtHQUFvRjtBQUNwRiwyR0FBZ0Y7QUFDaEYsMkZBQWlFO0FBQ2pFLG1HQUF5RTtBQUN6RSwyRkFBaUU7QUFDakUsMkZBQWlFO0FBQ2pFLCtGQUFxRTtBQUNyRSx5R0FBOEU7QUFDOUUseUdBQThFO0FBQzlFLCtGQUFxRTtBQUNyRSx5R0FBOEU7QUFDOUUsNkZBQW1FO0FBWW5FLE1BQXFCLE1BQU07SUFTekIsWUFDRSxjQUFzQixFQUN0QixhQUE0QixFQUM1QixVQUFrQixFQUNsQixnQkFBaUMsRUFDakMsR0FBeUIsRUFDekIsUUFBaUI7UUFFakIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksU0FBUyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FDWCxxQkFBK0M7UUFFL0MsTUFBTSxXQUFXLEdBQUc7WUFDbEIsSUFBSSxFQUFFO2dCQUNKLFVBQVUsRUFBRTtvQkFDVixlQUFlLEVBQUUsSUFBSSxDQUFDLGNBQWM7b0JBQ3BDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztvQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsRUFBRTtvQkFDOUMsdUJBQXVCLEVBQUUscUJBQXFCO29CQUM5QyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTLElBQUksRUFBRSxlQUFl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
|
|
@@ -28,6 +28,6 @@ export default class Collection extends CollectionChart {
|
|
|
28
28
|
delete<Data = unknown>(ids: string[] | number[]): Promise<Data>;
|
|
29
29
|
create<Data = unknown>(attributes: Record<string, unknown>): Promise<Data>;
|
|
30
30
|
update<Data = unknown>(id: string | number, attributes: Record<string, unknown>): Promise<Data>;
|
|
31
|
-
private
|
|
31
|
+
private getActionInfo;
|
|
32
32
|
}
|
|
33
33
|
//# sourceMappingURL=collection.d.ts.map
|
|
@@ -16,10 +16,10 @@ class Collection extends collection_chart_1.default {
|
|
|
16
16
|
this.actionEndpoints = actionEndpoints;
|
|
17
17
|
}
|
|
18
18
|
async action(actionName, actionContext) {
|
|
19
|
-
const
|
|
19
|
+
const actionInfo = this.getActionInfo(this.actionEndpoints, this.name, actionName);
|
|
20
20
|
const ids = (actionContext?.recordIds ?? [actionContext?.recordId]).filter(Boolean).map(String);
|
|
21
|
-
const fieldsFormStates = new field_form_states_1.default(actionName,
|
|
22
|
-
const action = new action_1.default(this.name, this.httpRequester,
|
|
21
|
+
const fieldsFormStates = new field_form_states_1.default(actionName, actionInfo.endpoint, this.name, this.httpRequester, ids, actionInfo.hooks, actionInfo.fields);
|
|
22
|
+
const action = new action_1.default(this.name, this.httpRequester, actionInfo.endpoint, fieldsFormStates, ids, actionInfo.id);
|
|
23
23
|
await fieldsFormStates.loadInitialState();
|
|
24
24
|
return action;
|
|
25
25
|
}
|
|
@@ -106,7 +106,7 @@ class Collection extends collection_chart_1.default {
|
|
|
106
106
|
body: requestBody,
|
|
107
107
|
});
|
|
108
108
|
}
|
|
109
|
-
|
|
109
|
+
getActionInfo(actionEndpoints, collectionName, actionName) {
|
|
110
110
|
const collection = actionEndpoints[collectionName];
|
|
111
111
|
if (!collection)
|
|
112
112
|
throw new Error(`Collection ${collectionName} not found in schema`);
|
|
@@ -117,8 +117,8 @@ class Collection extends collection_chart_1.default {
|
|
|
117
117
|
if (!action.endpoint) {
|
|
118
118
|
throw new Error(`Action ${actionName} not found in collection ${collectionName}`);
|
|
119
119
|
}
|
|
120
|
-
return action.endpoint;
|
|
120
|
+
return { id: action.id, endpoint: action.endpoint, hooks: action.hooks, fields: action.fields };
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
exports.default = Collection;
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb21haW5zL2NvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFNQSxzREFBOEI7QUFDOUIsMEVBQWlEO0FBQ2pELDBEQUFrQztBQUNsQyx3REFBZ0M7QUFDaEMsMkZBQWlFO0FBQ2pFLDJFQUFrRDtBQUVsRCxNQUFxQixVQUFXLFNBQVEsMEJBQWU7SUFJckQsWUFDRSxJQUFZLEVBQ1osYUFBNEIsRUFDNUIsZUFBNEM7UUFFNUMsS0FBSyxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsZUFBZSxHQUFHLGVBQWUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFrQixFQUFFLGFBQWlDO1FBQ2hFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ25GLE1BQU0sR0FBRyxHQUFHLENBQUMsYUFBYSxFQUFFLFNBQVMsSUFBSSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFaEcsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLDJCQUFlLENBQzFDLFVBQVUsRUFDVixVQUFVLENBQUMsUUFBUSxFQUNuQixJQUFJLENBQUMsSUFBSSxFQUNULElBQUksQ0FBQyxhQUFhLEVBQ2xCLEdBQUcsRUFDSCxVQUFVLENBQUMsS0FBSyxFQUNoQixVQUFVLENBQUMsTUFBTSxDQUNsQixDQUFDO1FBRUYsTUFBTSxNQUFNLEdBQUcsSUFBSSxnQkFBTSxDQUN2QixJQUFJLENBQUMsSUFBSSxFQUNULElBQUksQ0FBQyxh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
|
package/dist/http-requester.d.ts
CHANGED
package/dist/http-requester.js
CHANGED
|
@@ -17,7 +17,7 @@ class HttpRequester {
|
|
|
17
17
|
}
|
|
18
18
|
async query({ method, path, body, query, maxTimeAllowed, contentType, }) {
|
|
19
19
|
try {
|
|
20
|
-
const url =
|
|
20
|
+
const url = this.buildUrl(path);
|
|
21
21
|
const req = superagent_1.default[method](url)
|
|
22
22
|
.timeout(maxTimeAllowed ?? 10000)
|
|
23
23
|
.set('Authorization', `Bearer ${this.token}`)
|
|
@@ -42,7 +42,7 @@ class HttpRequester {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
async stream({ path: reqPath, query, contentType = 'text/csv', maxTimeAllowed, stream, }) {
|
|
45
|
-
const url =
|
|
45
|
+
const url = this.buildUrl(reqPath);
|
|
46
46
|
return new Promise((resolve, reject) => {
|
|
47
47
|
superagent_1.default
|
|
48
48
|
.get(url)
|
|
@@ -63,6 +63,20 @@ class HttpRequester {
|
|
|
63
63
|
static escapeUrlSlug(name) {
|
|
64
64
|
return encodeURI(name).replace(/([+?*])/g, '\\$1');
|
|
65
65
|
}
|
|
66
|
+
static is404Error(error) {
|
|
67
|
+
if (!(error instanceof Error))
|
|
68
|
+
return false;
|
|
69
|
+
try {
|
|
70
|
+
return JSON.parse(error.message)?.error?.status === 404;
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
buildUrl(path) {
|
|
77
|
+
const normalizedPath = path.startsWith('/') ? path : `/${path}`;
|
|
78
|
+
return new URL(`${this.baseUrl}${HttpRequester.escapeUrlSlug(normalizedPath)}`).toString();
|
|
79
|
+
}
|
|
66
80
|
}
|
|
67
81
|
exports.default = HttpRequester;
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1yZXF1ZXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaHR0cC1yZXF1ZXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwyREFBa0Q7QUFDbEQsNERBQW9DO0FBRXBDLE1BQXFCLGFBQWE7SUFHaEMsSUFBWSxPQUFPO1FBQ2pCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUVwRSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsTUFBTSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELFlBQ21CLEtBQWEsRUFDYixPQUF5QztRQUR6QyxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2IsWUFBTyxHQUFQLE9BQU8sQ0FBa0M7UUFFMUQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLGlDQUFZLENBQUMsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUssQ0FBaUIsRUFDMUIsTUFBTSxFQUNOLElBQUksRUFDSixJQUFJLEVBQ0osS0FBSyxFQUNMLGNBQWMsRUFDZCxXQUFXLEdBUVo7UUFDQyxJQUFJLENBQUM7WUFDSCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRWhDLE1BQU0sR0FBRyxHQUFHLG9CQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDO2lCQUNoQyxPQUFPLENBQUMsY0FBYyxJQUFJLEtBQU0sQ0FBQztpQkFDakMsR0FBRyxDQUFDLGVBQWUsRUFBRSxVQUFVLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDNUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxXQUFXLElBQUksa0JBQWtCLENB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
|
|
@@ -2,7 +2,28 @@ import type { SelectOptions } from './types';
|
|
|
2
2
|
export default class QuerySerializer {
|
|
3
3
|
static serialize(query: SelectOptions, collectionName: string): Record<string, unknown>;
|
|
4
4
|
private static formatSort;
|
|
5
|
+
/**
|
|
6
|
+
* Serialize filters to JSON with snake_case operators and aggregators.
|
|
7
|
+
*
|
|
8
|
+
* Internally, operators use PascalCase (e.g. `Equal`, `GreaterThan`) to match
|
|
9
|
+
* the datasource-toolkit convention. However, HTTP backends expect snake_case:
|
|
10
|
+
* - Ruby (forest_liana): requires `equal`, `greater_than`, etc.
|
|
11
|
+
* - Node (@forestadmin/agent): accepts snake_case via ConditionTreeParser.toPascalCase()
|
|
12
|
+
*
|
|
13
|
+
* Converting to snake_case here ensures compatibility with both backends.
|
|
14
|
+
*/
|
|
5
15
|
private static formatFilters;
|
|
16
|
+
/**
|
|
17
|
+
* Recursively walk the condition tree and convert operators/aggregators to snake_case.
|
|
18
|
+
*/
|
|
19
|
+
private static toSnakeCaseOperators;
|
|
20
|
+
/**
|
|
21
|
+
* Convert PascalCase to snake_case.
|
|
22
|
+
* Two passes handle different patterns:
|
|
23
|
+
* - Pass 1: lowercase→uppercase boundaries (e.g. `greaterThan` → `greater_Than`)
|
|
24
|
+
* - Pass 2: uppercase sequences (e.g. `IContains` → `I_Contains`, `PreviousXDays` → `PreviousX_Days`)
|
|
25
|
+
*/
|
|
26
|
+
private static toSnakeCase;
|
|
6
27
|
private static formatFields;
|
|
7
28
|
}
|
|
8
29
|
//# sourceMappingURL=query-serializer.d.ts.map
|
package/dist/query-serializer.js
CHANGED
|
@@ -10,7 +10,6 @@ class QuerySerializer {
|
|
|
10
10
|
return {};
|
|
11
11
|
return {
|
|
12
12
|
...query,
|
|
13
|
-
...query.filters,
|
|
14
13
|
sort: QuerySerializer.formatSort(query.sort),
|
|
15
14
|
filters: QuerySerializer.formatFilters(query.filters),
|
|
16
15
|
searchExtended: !!query.shouldSearchInRelation,
|
|
@@ -24,10 +23,53 @@ class QuerySerializer {
|
|
|
24
23
|
return undefined;
|
|
25
24
|
return sort.ascending ? sort.field : `-${sort.field}`;
|
|
26
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Serialize filters to JSON with snake_case operators and aggregators.
|
|
28
|
+
*
|
|
29
|
+
* Internally, operators use PascalCase (e.g. `Equal`, `GreaterThan`) to match
|
|
30
|
+
* the datasource-toolkit convention. However, HTTP backends expect snake_case:
|
|
31
|
+
* - Ruby (forest_liana): requires `equal`, `greater_than`, etc.
|
|
32
|
+
* - Node (@forestadmin/agent): accepts snake_case via ConditionTreeParser.toPascalCase()
|
|
33
|
+
*
|
|
34
|
+
* Converting to snake_case here ensures compatibility with both backends.
|
|
35
|
+
*/
|
|
27
36
|
static formatFilters(filters) {
|
|
28
37
|
if (!filters)
|
|
29
38
|
return undefined;
|
|
30
|
-
return JSON.stringify(filters);
|
|
39
|
+
return JSON.stringify(QuerySerializer.toSnakeCaseOperators(filters));
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Recursively walk the condition tree and convert operators/aggregators to snake_case.
|
|
43
|
+
*/
|
|
44
|
+
static toSnakeCaseOperators(node) {
|
|
45
|
+
if (!node || typeof node !== 'object')
|
|
46
|
+
return node;
|
|
47
|
+
const obj = node;
|
|
48
|
+
if ('operator' in obj) {
|
|
49
|
+
return {
|
|
50
|
+
...obj,
|
|
51
|
+
operator: QuerySerializer.toSnakeCase(obj.operator),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
if ('aggregator' in obj && Array.isArray(obj.conditions)) {
|
|
55
|
+
return {
|
|
56
|
+
aggregator: obj.aggregator.toLowerCase(),
|
|
57
|
+
conditions: obj.conditions.map(c => QuerySerializer.toSnakeCaseOperators(c)),
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
return obj;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Convert PascalCase to snake_case.
|
|
64
|
+
* Two passes handle different patterns:
|
|
65
|
+
* - Pass 1: lowercase→uppercase boundaries (e.g. `greaterThan` → `greater_Than`)
|
|
66
|
+
* - Pass 2: uppercase sequences (e.g. `IContains` → `I_Contains`, `PreviousXDays` → `PreviousX_Days`)
|
|
67
|
+
*/
|
|
68
|
+
static toSnakeCase(value) {
|
|
69
|
+
return value
|
|
70
|
+
.replace(/([a-z])([A-Z])/g, '$1_$2')
|
|
71
|
+
.replace(/([A-Z])([A-Z][a-z])/g, '$1_$2')
|
|
72
|
+
.toLowerCase();
|
|
31
73
|
}
|
|
32
74
|
static formatFields(collectionName, fields) {
|
|
33
75
|
if (!fields)
|
|
@@ -74,4 +116,4 @@ class QuerySerializer {
|
|
|
74
116
|
}
|
|
75
117
|
}
|
|
76
118
|
exports.default = QuerySerializer;
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktc2VyaWFsaXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9xdWVyeS1zZXJpYWxpemVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBR0Esc0VBQTZDO0FBRTdDLE1BQXFCLGVBQWU7SUFDbEMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFvQixFQUFFLGNBQXNCO1FBQzNELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFdEIsT0FBTztZQUNMLEdBQUcsS0FBSztZQUNSLElBQUksRUFBRSxlQUFlLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDNUMsT0FBTyxFQUFFLGVBQWUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNyRCxjQUFjLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxzQkFBc0I7WUFDOUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUUsSUFBSTtZQUNwQyxjQUFjLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxNQUFNO1lBQ3hDLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDNUYsQ0FBQztJQUNKLENBQUM7SUFFTyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQXFCO1FBQzdDLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTyxTQUFTLENBQUM7UUFFNUIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ssTUFBTSxDQUFDLGFBQWEsQ0FBQyxPQUFxQztRQUNoRSxJQUFJLENB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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/agent-client",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.22",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "GPL-3.0",
|
|
6
6
|
"publishConfig": {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
},
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"@forestadmin/datasource-toolkit": "1.53.1",
|
|
16
|
-
"@forestadmin/forestadmin-client": "1.38.
|
|
16
|
+
"@forestadmin/forestadmin-client": "1.38.4",
|
|
17
17
|
"jsonapi-serializer": "^3.6.9",
|
|
18
18
|
"superagent": "^10.3.0"
|
|
19
19
|
},
|