@forestadmin/agent-client 1.6.2 → 1.7.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.
- package/dist/domains/action.js +62 -6
- package/dist/domains/collection.d.ts +3 -1
- package/dist/domains/collection.js +3 -2
- package/dist/errors.d.ts +14 -0
- package/dist/errors.js +34 -0
- package/dist/http-requester.d.ts +2 -1
- package/dist/http-requester.js +24 -14
- package/dist/index.d.ts +2 -1
- package/dist/index.js +39 -2
- package/package.json +2 -2
package/dist/domains/action.js
CHANGED
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
@@ -16,6 +49,24 @@ const action_field_radio_group_1 = __importDefault(require("../action-fields/act
|
|
|
16
49
|
const action_field_string_1 = __importDefault(require("../action-fields/action-field-string"));
|
|
17
50
|
const action_field_string_list_1 = __importDefault(require("../action-fields/action-field-string-list"));
|
|
18
51
|
const action_layout_root_1 = __importDefault(require("../action-layout/action-layout-root"));
|
|
52
|
+
const errors_1 = __importStar(require("../errors"));
|
|
53
|
+
// Translate the transport AgentHttpError into a semantic action error so callers route on meaning.
|
|
54
|
+
// Approval gate = 403 CustomActionRequiresApprovalError; form validation = 400/422; else unchanged.
|
|
55
|
+
function toActionError(error) {
|
|
56
|
+
if (!(error instanceof errors_1.default))
|
|
57
|
+
return error;
|
|
58
|
+
const body = (error.body ?? {});
|
|
59
|
+
const detail = body.errors?.[0]?.detail;
|
|
60
|
+
const isApproval = body.errors?.[0]?.name === 'CustomActionRequiresApprovalError' ||
|
|
61
|
+
!!error.responseText?.includes('CustomActionRequiresApprovalError');
|
|
62
|
+
if (error.status === 403 && isApproval) {
|
|
63
|
+
return new errors_1.ActionRequiresApprovalError(detail ?? 'This action requires an approval before it can run.', body.errors?.[0]?.data?.roleIdsAllowedToApprove ?? body.data?.roleIdsAllowedToApprove);
|
|
64
|
+
}
|
|
65
|
+
if (error.status === 400 || error.status === 422) {
|
|
66
|
+
return new errors_1.ActionFormValidationError(detail ?? 'The action form values were rejected.');
|
|
67
|
+
}
|
|
68
|
+
return error;
|
|
69
|
+
}
|
|
19
70
|
class Action {
|
|
20
71
|
constructor(collectionName, httpRequester, actionPath, fieldsFormStates, ids, actionId) {
|
|
21
72
|
this.collectionName = collectionName;
|
|
@@ -38,11 +89,16 @@ class Action {
|
|
|
38
89
|
type: 'custom-action-requests',
|
|
39
90
|
},
|
|
40
91
|
};
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
92
|
+
try {
|
|
93
|
+
return await this.httpRequester.query({
|
|
94
|
+
method: 'post',
|
|
95
|
+
path: this.actionPath,
|
|
96
|
+
body: requestBody,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
catch (error) {
|
|
100
|
+
throw toActionError(error);
|
|
101
|
+
}
|
|
46
102
|
}
|
|
47
103
|
async setFields(fields) {
|
|
48
104
|
for (const [fieldName, value] of Object.entries(fields)) {
|
|
@@ -140,4 +196,4 @@ class Action {
|
|
|
140
196
|
}
|
|
141
197
|
}
|
|
142
198
|
exports.default = Action;
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RvbWFpbnMvYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsbUdBQXlFO0FBQ3pFLCtHQUFvRjtBQUNwRiwyR0FBZ0Y7QUFDaEYsMkZBQWlFO0FBQ2pFLG1HQUF5RTtBQUN6RSwyRkFBaUU7QUFDakUsMkZBQWlFO0FBQ2pFLCtGQUFxRTtBQUNyRSx5R0FBOEU7QUFDOUUseUdBQThFO0FBQzlFLCtGQUFxRTtBQUNyRSx5R0FBOEU7QUFDOUUsNkZBQW1FO0FBQ25FLG9EQUFtRztBQVFuRyxtR0FBbUc7QUFDbkcsb0dBQW9HO0FBQ3BHLFNBQVMsYUFBYSxDQUFDLEtBQWM7SUFDbkMsSUFBSSxDQUFDLENBQUMsS0FBSyxZQUFZLGdCQUFjLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUVyRCxNQUFNLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFvQixDQUFDO0lBQ25ELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDeEMsTUFBTSxVQUFVLEdBQ2QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksS0FBSyxtQ0FBbUM7UUFDOUQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFFdEUsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUN2QyxPQUFPLElBQUksb0NBQTJCLENBQ3BDLE1BQU0sSUFBSSxxREFBcUQsRUFDL0QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSx1QkFBdUIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLHVCQUF1QixDQUN0RixDQUFDO0lBQ0osQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNqRCxPQUFPLElBQUksa0NBQXlCLENBQUMsTUFBTSxJQUFJLHVDQUF1QyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQVlELE1BQXFCLE1BQU07SUFTekIsWUFDRSxjQUFzQixFQUN0QixhQUE0QixFQUM1QixVQUFrQixFQUNsQixnQkFBaUMsRUFDakMsR0FBeUIsRUFDekIsUUFBaUI7UUFFakIsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLElBQUksU0FBUyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FDWCxxQkFBK0M7UUFFL0MsTUFBTSxXQUFXLEdBQUc7WUFDbEIsSUFBSSxFQUFFO2dCQUNKLFVBQVUsRUFBRTtvQkFDVixlQUFlLEVBQUUsSUFBSSxDQUFDLGNBQWM7b0JBQ3BDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztvQkFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsRUFBRTtvQkFDOUMsdUJBQXVCLEVBQUUscUJBQXFCO29CQUM5QyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2lCQUN2RTtnQkFDRCxJQUFJLEVBQUUsd0JBQXdCO2FBQy9CO1NBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQztZQUNILE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBc0I7Z0JBQ3pELE1BQU0sRUFBRSxNQUFNO2dCQUNkLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDckIsSUFBSSxFQUFFLFdBQVc7YUFDbEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixNQUFNLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBK0I7UUFDN0MsS0FBSyxNQUFNLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLFVBQVUsU0FBUywrQkFBK0IsQ0FBQyxDQUFDO1lBQ3RFLENBQUM7WUFFRCw0Q0FBNEM7WUFDNUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM5RCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxjQUFjLENBQUMsTUFBK0I7UUFDbEQsTUFBTSxhQUFhLEdBQWEsRUFBRSxDQUFDO1FBRW5DLEtBQUssTUFBTSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDeEQsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ25DLDRDQUE0QztnQkFDNUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUM5RCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNoQyxDQUFDO1FBQ0gsQ0FBQztRQUVELE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQy9DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRLENBQUMsU0FBaUI7UUFDeEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4RCxNQUFNLElBQUksR0FDUixPQUFPLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUUxRixRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyxRQUFRO2dCQUNYLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN4QyxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3RDLEtBQUssWUFBWSxDQUFDO1lBQ2xCLEtBQUssWUFBWTtnQkFDZixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM1QyxLQUFLLFlBQVksQ0FBQztZQUNsQixLQUFLLFlBQVk7Z0JBQ2YsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDNUMsS0FBSyxTQUFTO2dCQUNaLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFDLEtBQUssTUFBTTtnQkFDVCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdEMsS0FBSyxNQUFNO2dCQUNULE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN0QyxLQUFLLFFBQVEsQ0FBQztZQUNkO2dCQUNFLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVELGNBQWMsQ0FBQyxTQUFpQjtRQUM5QixPQUFPLElBQUksNkJBQWlCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBaUI7UUFDNUIsT0FBTyxJQUFJLDJCQUFlLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUFpQjtRQUNsQyxPQUFPLElBQUksa0NBQXFCLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxjQUFjLENBQUMsU0FBaUI7UUFDOUIsT0FBTyxJQUFJLDZCQUFpQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBaUI7UUFDbEMsT0FBTyxJQUFJLGtDQUFxQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsU0FBaUI7UUFDaEMsT0FBTyxJQUFJLCtCQUFtQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsU0FBaUI7UUFDaEMsT0FBTyxJQUFJLCtCQUFtQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQscUJBQXFCLENBQUMsU0FBaUI7UUFDckMsT0FBTyxJQUFJLHFDQUF3QixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsbUJBQW1CLENBQUMsU0FBaUI7UUFDbkMsT0FBTyxJQUFJLG1DQUFzQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCO1FBQzVCLE9BQU8sSUFBSSwyQkFBZSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQWlCO1FBQzVCLE9BQU8sSUFBSSwyQkFBZSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBaUI7UUFDbEMsT0FBTyxJQUFJLGtDQUFxQixDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSw0QkFBZ0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRUQsY0FBYyxDQUFDLFNBQWlCO1FBQzlCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0Y7QUF2S0QseUJBdUtDIn0=
|
|
@@ -28,7 +28,9 @@ export default class Collection extends CollectionChart {
|
|
|
28
28
|
delete<Data = unknown>(ids: RecordId[]): Promise<Data>;
|
|
29
29
|
create<Data = unknown>(attributes: Record<string, unknown>): Promise<Data>;
|
|
30
30
|
update<Data = unknown>(id: RecordId, attributes: Record<string, unknown>): Promise<Data>;
|
|
31
|
-
getOne<Data = unknown>(id: RecordId, options?: SelectOptions
|
|
31
|
+
getOne<Data = unknown>(id: RecordId, options?: SelectOptions, { skipDeserialization }?: {
|
|
32
|
+
skipDeserialization?: boolean;
|
|
33
|
+
}): Promise<Data>;
|
|
32
34
|
private getActionInfo;
|
|
33
35
|
}
|
|
34
36
|
//# sourceMappingURL=collection.d.ts.map
|
|
@@ -110,11 +110,12 @@ class Collection extends collection_chart_1.default {
|
|
|
110
110
|
body: requestBody,
|
|
111
111
|
});
|
|
112
112
|
}
|
|
113
|
-
async getOne(id, options) {
|
|
113
|
+
async getOne(id, options, { skipDeserialization = false } = {}) {
|
|
114
114
|
return this.httpRequester.query({
|
|
115
115
|
method: 'get',
|
|
116
116
|
path: `/forest/${this.name}/${(0, record_id_1.default)(id)}`,
|
|
117
117
|
query: query_serializer_1.default.serialize(options, this.name),
|
|
118
|
+
skipDeserialization,
|
|
118
119
|
});
|
|
119
120
|
}
|
|
120
121
|
getActionInfo(actionEndpoints, collectionName, actionName) {
|
|
@@ -132,4 +133,4 @@ class Collection extends collection_chart_1.default {
|
|
|
132
133
|
}
|
|
133
134
|
}
|
|
134
135
|
exports.default = Collection;
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kb21haW5zL2NvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFNQSxzREFBOEI7QUFDOUIsMEVBQWlEO0FBQ2pELDBEQUFrQztBQUNsQyx3REFBZ0M7QUFDaEMsMkZBQWlFO0FBQ2pFLDJFQUFrRDtBQUNsRCw2REFBNkM7QUFFN0MsTUFBcUIsVUFBVyxTQUFRLDBCQUFlO0lBSXJELFlBQ0UsSUFBWSxFQUNaLGFBQTRCLEVBQzVCLGVBQTRDO1FBRTVDLEtBQUssQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFFM0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7SUFDekMsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBa0IsRUFBRSxhQUFpQztRQUNoRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNuRixNQUFNLEdBQUcsR0FBRyxDQUFDLGFBQWEsRUFBRSxTQUFTLElBQUksQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDaEUsTUFBTSxDQUFDLENBQUMsRUFBRSxFQUFrQixFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQzNDLEdBQUcsQ0FBQyxtQkFBaUIsQ0FBQyxDQUFDO1FBRTFCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSwyQkFBZSxDQUMxQyxVQUFVLEVBQ1YsVUFBVSxDQUFDLFFBQVEsRUFDbkIsSUFBSSxDQUFDLElBQUksRUFDVCxJQUFJLENBQUMsYUFBYSxFQUNsQixHQUFHLEVBQ0gsVUFBVSxDQUFDLEtBQUssRUFDaEIsVUFBVSxDQUFDLE1BQU0sQ0FDbEIsQ0FBQztRQUVGLE1BQU0s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
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export default class AgentHttpError extends Error {
|
|
2
|
+
readonly status: number;
|
|
3
|
+
readonly body: unknown;
|
|
4
|
+
readonly responseText?: string;
|
|
5
|
+
constructor(status: number, body: unknown, responseText?: string);
|
|
6
|
+
}
|
|
7
|
+
export declare class ActionRequiresApprovalError extends Error {
|
|
8
|
+
readonly roleIdsAllowedToApprove?: number[];
|
|
9
|
+
constructor(message: string, roleIdsAllowedToApprove?: number[]);
|
|
10
|
+
}
|
|
11
|
+
export declare class ActionFormValidationError extends Error {
|
|
12
|
+
constructor(message: string);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=errors.d.ts.map
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable max-classes-per-file */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ActionFormValidationError = exports.ActionRequiresApprovalError = void 0;
|
|
5
|
+
// Typed transport error: status + parsed body (JSON:API `{ errors: [...] }` when available, else
|
|
6
|
+
// raw text). Callers read fields directly instead of parsing a stringified message.
|
|
7
|
+
class AgentHttpError extends Error {
|
|
8
|
+
constructor(status, body, responseText) {
|
|
9
|
+
super(`Agent responded with HTTP ${status}`);
|
|
10
|
+
this.status = status;
|
|
11
|
+
this.body = body;
|
|
12
|
+
this.responseText = responseText;
|
|
13
|
+
this.name = 'AgentHttpError';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.default = AgentHttpError;
|
|
17
|
+
// Semantic action errors: agent-client interprets the failure once so callers route on meaning, not
|
|
18
|
+
// status/body. `message` carries the agent's detail when available.
|
|
19
|
+
class ActionRequiresApprovalError extends Error {
|
|
20
|
+
constructor(message, roleIdsAllowedToApprove) {
|
|
21
|
+
super(message);
|
|
22
|
+
this.roleIdsAllowedToApprove = roleIdsAllowedToApprove;
|
|
23
|
+
this.name = 'ActionRequiresApprovalError';
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.ActionRequiresApprovalError = ActionRequiresApprovalError;
|
|
27
|
+
class ActionFormValidationError extends Error {
|
|
28
|
+
constructor(message) {
|
|
29
|
+
super(message);
|
|
30
|
+
this.name = 'ActionFormValidationError';
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.ActionFormValidationError = ActionFormValidationError;
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEseUNBQXlDOzs7QUFFekMsaUdBQWlHO0FBQ2pHLG9GQUFvRjtBQUNwRixNQUFxQixjQUFlLFNBQVEsS0FBSztJQUMvQyxZQUFxQixNQUFjLEVBQVcsSUFBYSxFQUFXLFlBQXFCO1FBQ3pGLEtBQUssQ0FBQyw2QkFBNkIsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUQxQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVcsU0FBSSxHQUFKLElBQUksQ0FBUztRQUFXLGlCQUFZLEdBQVosWUFBWSxDQUFTO1FBRXpGLElBQUksQ0FBQyxJQUFJLEdBQUcsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztDQUNGO0FBTEQsaUNBS0M7QUFFRCxvR0FBb0c7QUFDcEcsb0VBQW9FO0FBQ3BFLE1BQWEsMkJBQTRCLFNBQVEsS0FBSztJQUNwRCxZQUFZLE9BQWUsRUFBVyx1QkFBa0M7UUFDdEUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRHFCLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBVztRQUV0RSxJQUFJLENBQUMsSUFBSSxHQUFHLDZCQUE2QixDQUFDO0lBQzVDLENBQUM7Q0FDRjtBQUxELGtFQUtDO0FBRUQsTUFBYSx5QkFBMEIsU0FBUSxLQUFLO0lBQ2xELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLDJCQUEyQixDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQUxELDhEQUtDIn0=
|
package/dist/http-requester.d.ts
CHANGED
|
@@ -8,13 +8,14 @@ export default class HttpRequester {
|
|
|
8
8
|
prefix?: string;
|
|
9
9
|
url: string;
|
|
10
10
|
});
|
|
11
|
-
query<Data = unknown>({ method, path, body, query, maxTimeAllowed, contentType, }: {
|
|
11
|
+
query<Data = unknown>({ method, path, body, query, maxTimeAllowed, contentType, skipDeserialization, }: {
|
|
12
12
|
method: 'get' | 'post' | 'put' | 'delete';
|
|
13
13
|
path: string;
|
|
14
14
|
body?: Record<string, unknown>;
|
|
15
15
|
query?: Record<string, unknown>;
|
|
16
16
|
maxTimeAllowed?: number;
|
|
17
17
|
contentType?: 'application/json' | 'text/csv';
|
|
18
|
+
skipDeserialization?: boolean;
|
|
18
19
|
}): Promise<Data>;
|
|
19
20
|
stream({ path: reqPath, query, contentType, maxTimeAllowed, stream, }: {
|
|
20
21
|
path: string;
|
package/dist/http-requester.js
CHANGED
|
@@ -5,6 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const jsonapi_serializer_1 = require("jsonapi-serializer");
|
|
7
7
|
const superagent_1 = __importDefault(require("superagent"));
|
|
8
|
+
const errors_1 = __importDefault(require("./errors"));
|
|
9
|
+
function parseJson(text) {
|
|
10
|
+
if (text === undefined)
|
|
11
|
+
return undefined;
|
|
12
|
+
try {
|
|
13
|
+
return JSON.parse(text);
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return text;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
8
19
|
class HttpRequester {
|
|
9
20
|
get baseUrl() {
|
|
10
21
|
const prefix = this.options.prefix ? `/${this.options.prefix}` : '';
|
|
@@ -15,7 +26,7 @@ class HttpRequester {
|
|
|
15
26
|
this.options = options;
|
|
16
27
|
this.deserializer = new jsonapi_serializer_1.Deserializer({ keyForAttribute: 'camelCase' });
|
|
17
28
|
}
|
|
18
|
-
async query({ method, path, body, query, maxTimeAllowed, contentType, }) {
|
|
29
|
+
async query({ method, path, body, query, maxTimeAllowed, contentType, skipDeserialization, }) {
|
|
19
30
|
try {
|
|
20
31
|
const url = this.buildUrl(path);
|
|
21
32
|
const req = superagent_1.default[method](url)
|
|
@@ -27,6 +38,9 @@ class HttpRequester {
|
|
|
27
38
|
if (body)
|
|
28
39
|
req.send(body);
|
|
29
40
|
const response = await req;
|
|
41
|
+
if (skipDeserialization) {
|
|
42
|
+
return response.body;
|
|
43
|
+
}
|
|
30
44
|
try {
|
|
31
45
|
return (await this.deserializer.deserialize(response.body));
|
|
32
46
|
}
|
|
@@ -35,10 +49,13 @@ class HttpRequester {
|
|
|
35
49
|
}
|
|
36
50
|
}
|
|
37
51
|
catch (error) {
|
|
38
|
-
const
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
52
|
+
const res = error
|
|
53
|
+
.response;
|
|
54
|
+
if (!res)
|
|
55
|
+
throw error; // network/timeout/abort → no HTTP response, propagate raw
|
|
56
|
+
const text = typeof res.text === 'string' ? res.text : undefined;
|
|
57
|
+
const hasBody = !!res.body && typeof res.body === 'object' && Object.keys(res.body).length > 0;
|
|
58
|
+
throw new errors_1.default(res.status ?? 0, hasBody ? res.body : parseJson(text), text);
|
|
42
59
|
}
|
|
43
60
|
}
|
|
44
61
|
async stream({ path: reqPath, query, contentType = 'text/csv', maxTimeAllowed, stream, }) {
|
|
@@ -64,14 +81,7 @@ class HttpRequester {
|
|
|
64
81
|
return encodeURI(name).replace(/([+?*])/g, '\\$1');
|
|
65
82
|
}
|
|
66
83
|
static is404Error(error) {
|
|
67
|
-
|
|
68
|
-
return false;
|
|
69
|
-
try {
|
|
70
|
-
return JSON.parse(error.message)?.error?.status === 404;
|
|
71
|
-
}
|
|
72
|
-
catch {
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
84
|
+
return error instanceof errors_1.default && error.status === 404;
|
|
75
85
|
}
|
|
76
86
|
buildUrl(path) {
|
|
77
87
|
const normalizedPath = path.startsWith('/') ? path : `/${path}`;
|
|
@@ -79,4 +89,4 @@ class HttpRequester {
|
|
|
79
89
|
}
|
|
80
90
|
}
|
|
81
91
|
exports.default = HttpRequester;
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC1yZXF1ZXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaHR0cC1yZXF1ZXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSwyREFBa0Q7QUFDbEQsNERBQW9DO0FBRXBDLHNEQUFzQztBQUV0QyxTQUFTLFNBQVMsQ0FBQyxJQUF3QjtJQUN6QyxJQUFJLElBQUksS0FBSyxTQUFTO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFFekMsSUFBSSxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBcUIsYUFBYTtJQUdoQyxJQUFZLE9BQU87UUFDakIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRXBFLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxNQUFNLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFDbUIsS0FBYSxFQUNiLE9BQXlDO1FBRHpDLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixZQUFPLEdBQVAsT0FBTyxDQUFrQztRQUUxRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksaUNBQVksQ0FBQyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSyxDQUFpQixFQUMxQixNQUFNLEVBQ04sSUFBSSxFQUNKLElBQUksRUFDSixLQUFLLEVBQ0wsY0FBYyxFQUNkLFdBQVcsRUFDWCxtQkFBbUIsR0FTcEI7UUFDQyxJQUFJLENBQUM7WUFDSCxNQUFNLEdBQUcsR0FBRyxJQUFJLENB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
|
package/dist/index.d.ts
CHANGED
|
@@ -3,8 +3,9 @@ import type { CollectionPermissionsOverride, PermissionsOverride, SmartActionPer
|
|
|
3
3
|
import ActionFieldJson from './action-fields/action-field-json';
|
|
4
4
|
import ActionFieldStringList from './action-fields/action-field-string-list';
|
|
5
5
|
import RemoteAgentClient from './domains/remote-agent-client';
|
|
6
|
+
import AgentHttpError, { ActionFormValidationError, ActionRequiresApprovalError } from './errors';
|
|
6
7
|
import HttpRequester from './http-requester';
|
|
7
|
-
export { ActionFieldJson, ActionFieldStringList, RemoteAgentClient, HttpRequester };
|
|
8
|
+
export { ActionFieldJson, ActionFieldStringList, RemoteAgentClient, HttpRequester, AgentHttpError, ActionRequiresApprovalError, ActionFormValidationError, };
|
|
8
9
|
export type { ActionEndpointsByCollection, CollectionPermissionsOverride, PermissionsOverride, SmartActionPermissionsOverride, };
|
|
9
10
|
export declare function createRemoteAgentClient(params: {
|
|
10
11
|
overridePermissions?: (permissions: PermissionsOverride) => Promise<void>;
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
5
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.HttpRequester = exports.RemoteAgentClient = exports.ActionFieldStringList = exports.ActionFieldJson = void 0;
|
|
39
|
+
exports.ActionFormValidationError = exports.ActionRequiresApprovalError = exports.AgentHttpError = exports.HttpRequester = exports.RemoteAgentClient = exports.ActionFieldStringList = exports.ActionFieldJson = void 0;
|
|
7
40
|
exports.createRemoteAgentClient = createRemoteAgentClient;
|
|
8
41
|
const action_field_json_1 = __importDefault(require("./action-fields/action-field-json"));
|
|
9
42
|
exports.ActionFieldJson = action_field_json_1.default;
|
|
@@ -11,6 +44,10 @@ const action_field_string_list_1 = __importDefault(require("./action-fields/acti
|
|
|
11
44
|
exports.ActionFieldStringList = action_field_string_list_1.default;
|
|
12
45
|
const remote_agent_client_1 = __importDefault(require("./domains/remote-agent-client"));
|
|
13
46
|
exports.RemoteAgentClient = remote_agent_client_1.default;
|
|
47
|
+
const errors_1 = __importStar(require("./errors"));
|
|
48
|
+
exports.AgentHttpError = errors_1.default;
|
|
49
|
+
Object.defineProperty(exports, "ActionFormValidationError", { enumerable: true, get: function () { return errors_1.ActionFormValidationError; } });
|
|
50
|
+
Object.defineProperty(exports, "ActionRequiresApprovalError", { enumerable: true, get: function () { return errors_1.ActionRequiresApprovalError; } });
|
|
14
51
|
const http_requester_1 = __importDefault(require("./http-requester"));
|
|
15
52
|
exports.HttpRequester = http_requester_1.default;
|
|
16
53
|
function createRemoteAgentClient(params) {
|
|
@@ -21,4 +58,4 @@ function createRemoteAgentClient(params) {
|
|
|
21
58
|
overridePermissions: params.overridePermissions,
|
|
22
59
|
});
|
|
23
60
|
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNkJBLDBEQWFDO0FBbkNELDBGQUFnRTtBQU85RCwwQkFQSywyQkFBZSxDQU9MO0FBTmpCLHdHQUE2RTtBQU8zRSxnQ0FQSyxrQ0FBcUIsQ0FPTDtBQU52Qix3RkFBOEQ7QUFPNUQsNEJBUEssNkJBQWlCLENBT0w7QUFObkIsbURBQWtHO0FBUWhHLHlCQVJLLGdCQUFjLENBUUw7QUFFZCwwR0FWdUIsa0NBQXlCLE9BVXZCO0FBRHpCLDRHQVRrRCxvQ0FBMkIsT0FTbEQ7QUFSN0Isc0VBQTZDO0FBTTNDLHdCQU5LLHdCQUFhLENBTUw7QUFZZixTQUFnQix1QkFBdUIsQ0FBQyxNQUt2QztJQUNDLE1BQU0sYUFBYSxHQUFHLElBQUksd0JBQWEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBRTNFLE9BQU8sSUFBSSw2QkFBaUIsQ0FBQztRQUMzQixlQUFlLEVBQUUsTUFBTSxDQUFDLGVBQWU7UUFDdkMsYUFBYTtRQUNiLG1CQUFtQixFQUFFLE1BQU0sQ0FBQyxtQkFBbUI7S0FDaEQsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forestadmin/agent-client",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.7.0",
|
|
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.40.
|
|
16
|
+
"@forestadmin/forestadmin-client": "1.40.3",
|
|
17
17
|
"jsonapi-serializer": "^3.6.9",
|
|
18
18
|
"superagent": "^10.3.0"
|
|
19
19
|
},
|