@adminforth/agent 1.26.8 → 1.26.10
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/apiBasedTools.ts +19 -3
- package/build.log +1 -1
- package/dist/apiBasedTools.js +15 -3
- package/package.json +1 -1
package/apiBasedTools.ts
CHANGED
|
@@ -110,11 +110,17 @@ const TOOL_OVERRIDES: Record<string, ToolOverride> = {
|
|
|
110
110
|
return output;
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
+
if (!hasGetResourceDataRows(output)) {
|
|
114
|
+
logger.warn(
|
|
115
|
+
`Skipping datetime formatting for get_resource_data because response.data is not an array for resource ${getInputString(inputs, 'resourceId') ?? 'unknown'}`,
|
|
116
|
+
);
|
|
117
|
+
return output;
|
|
118
|
+
}
|
|
119
|
+
|
|
113
120
|
const localizedTimeZone = userTimeZone ?? DEFAULT_USER_TIME_ZONE;
|
|
114
|
-
|
|
115
|
-
formatDateTimeColumns(response.data, dateTimeColumnNames, localizedTimeZone);
|
|
121
|
+
formatDateTimeColumns(output.data, dateTimeColumnNames, localizedTimeZone);
|
|
116
122
|
|
|
117
|
-
return
|
|
123
|
+
return output;
|
|
118
124
|
},
|
|
119
125
|
},
|
|
120
126
|
aggregate: {
|
|
@@ -288,6 +294,14 @@ function hasToolError(output: unknown): output is { error: unknown } {
|
|
|
288
294
|
return typeof output === 'object' && output !== null && 'error' in output;
|
|
289
295
|
}
|
|
290
296
|
|
|
297
|
+
function hasGetResourceDataRows(output: unknown): output is GetResourceDataToolResponse {
|
|
298
|
+
if (typeof output !== 'object' || output === null || !('data' in output)) {
|
|
299
|
+
return false;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
return Array.isArray((output as { data?: unknown }).data);
|
|
303
|
+
}
|
|
304
|
+
|
|
291
305
|
function getDateTimeColumnNames(
|
|
292
306
|
adminforth: IAdminForth,
|
|
293
307
|
inputs: Record<string, unknown> | undefined,
|
|
@@ -726,11 +740,13 @@ async function callOpenApiSchema(params: {
|
|
|
726
740
|
toolName,
|
|
727
741
|
});
|
|
728
742
|
const hasRequestBody = !METHODS_WITHOUT_REQUEST_BODY.has(method);
|
|
743
|
+
logger.info(`Calling OpenAPI tool "${toolName}" with method ${method} at URL ${requestUrl}`);
|
|
729
744
|
const response = await fetch(hasRequestBody ? requestUrl : appendInputsToQueryString(requestUrl, body), {
|
|
730
745
|
method,
|
|
731
746
|
headers: createToolRequestHeaders(httpExtra, userTimeZone),
|
|
732
747
|
body: hasRequestBody ? JSON.stringify(body) : undefined,
|
|
733
748
|
});
|
|
749
|
+
logger.info(`Received response with status ${response.status} from OpenAPI tool "${toolName}"`);
|
|
734
750
|
|
|
735
751
|
return parseOpenApiToolResponse(response);
|
|
736
752
|
}
|
package/build.log
CHANGED
|
@@ -38,5 +38,5 @@ custom/skills/fetch_data/SKILL.md
|
|
|
38
38
|
custom/skills/mutate_data/
|
|
39
39
|
custom/skills/mutate_data/SKILL.md
|
|
40
40
|
|
|
41
|
-
sent 207,
|
|
41
|
+
sent 207,931 bytes received 562 bytes 416,986.00 bytes/sec
|
|
42
42
|
total size is 205,621 speedup is 0.99
|
package/dist/apiBasedTools.js
CHANGED
|
@@ -55,6 +55,7 @@ const TOOL_OVERRIDES = {
|
|
|
55
55
|
get_resource_data: {
|
|
56
56
|
format_tool: ({ inputs, resourceLabel }) => (`Get ${getDataPrefix(inputs)}${resourceLabel}`),
|
|
57
57
|
post_process_response: (_a) => __awaiter(void 0, [_a], void 0, function* ({ adminforth, output, inputs, userTimeZone }) {
|
|
58
|
+
var _b;
|
|
58
59
|
if (hasToolError(output)) {
|
|
59
60
|
return output;
|
|
60
61
|
}
|
|
@@ -62,10 +63,13 @@ const TOOL_OVERRIDES = {
|
|
|
62
63
|
if (dateTimeColumnNames.length === 0) {
|
|
63
64
|
return output;
|
|
64
65
|
}
|
|
66
|
+
if (!hasGetResourceDataRows(output)) {
|
|
67
|
+
logger.warn(`Skipping datetime formatting for get_resource_data because response.data is not an array for resource ${(_b = getInputString(inputs, 'resourceId')) !== null && _b !== void 0 ? _b : 'unknown'}`);
|
|
68
|
+
return output;
|
|
69
|
+
}
|
|
65
70
|
const localizedTimeZone = userTimeZone !== null && userTimeZone !== void 0 ? userTimeZone : DEFAULT_USER_TIME_ZONE;
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
return response;
|
|
71
|
+
formatDateTimeColumns(output.data, dateTimeColumnNames, localizedTimeZone);
|
|
72
|
+
return output;
|
|
69
73
|
}),
|
|
70
74
|
},
|
|
71
75
|
aggregate: {
|
|
@@ -192,6 +196,12 @@ function wipePath(target, pathParts) {
|
|
|
192
196
|
function hasToolError(output) {
|
|
193
197
|
return typeof output === 'object' && output !== null && 'error' in output;
|
|
194
198
|
}
|
|
199
|
+
function hasGetResourceDataRows(output) {
|
|
200
|
+
if (typeof output !== 'object' || output === null || !('data' in output)) {
|
|
201
|
+
return false;
|
|
202
|
+
}
|
|
203
|
+
return Array.isArray(output.data);
|
|
204
|
+
}
|
|
195
205
|
function getDateTimeColumnNames(adminforth, inputs) {
|
|
196
206
|
const resourceId = getInputString(inputs, 'resourceId');
|
|
197
207
|
const resource = adminforth.config.resources.find((res) => res.resourceId === resourceId);
|
|
@@ -493,11 +503,13 @@ function callOpenApiSchema(params) {
|
|
|
493
503
|
toolName,
|
|
494
504
|
});
|
|
495
505
|
const hasRequestBody = !METHODS_WITHOUT_REQUEST_BODY.has(method);
|
|
506
|
+
logger.info(`Calling OpenAPI tool "${toolName}" with method ${method} at URL ${requestUrl}`);
|
|
496
507
|
const response = yield fetch(hasRequestBody ? requestUrl : appendInputsToQueryString(requestUrl, body), {
|
|
497
508
|
method,
|
|
498
509
|
headers: createToolRequestHeaders(httpExtra, userTimeZone),
|
|
499
510
|
body: hasRequestBody ? JSON.stringify(body) : undefined,
|
|
500
511
|
});
|
|
512
|
+
logger.info(`Received response with status ${response.status} from OpenAPI tool "${toolName}"`);
|
|
501
513
|
return parseOpenApiToolResponse(response);
|
|
502
514
|
});
|
|
503
515
|
}
|