@topolo/sdk 0.11.3 → 0.11.4
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/index.cjs +14 -6
- package/dist/index.js +14 -6
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -2230,11 +2230,12 @@ function compactExample(input) {
|
|
|
2230
2230
|
function compactActionValidation(actionId, validation) {
|
|
2231
2231
|
return { actionId, valid: validation.valid, errors: validation.errors };
|
|
2232
2232
|
}
|
|
2233
|
-
var ACTION_RESULT_MAX_DEPTH =
|
|
2234
|
-
var ACTION_RESULT_MAX_KEYS =
|
|
2235
|
-
var
|
|
2236
|
-
var
|
|
2237
|
-
var
|
|
2233
|
+
var ACTION_RESULT_MAX_DEPTH = 3;
|
|
2234
|
+
var ACTION_RESULT_MAX_KEYS = 12;
|
|
2235
|
+
var ACTION_RESULT_MAX_ORDINARY_KEYS = 5;
|
|
2236
|
+
var ACTION_RESULT_MAX_ITEMS = 3;
|
|
2237
|
+
var ACTION_RESULT_MAX_SCALARS = 60;
|
|
2238
|
+
var ACTION_RESULT_MAX_STRING = 256;
|
|
2238
2239
|
function resultKeyPriority(key) {
|
|
2239
2240
|
if (/^(id|requestId|status|state|url|slug|name|title|version)$/i.test(key)) return 0;
|
|
2240
2241
|
if (/(Id|Ids|Url|Uri|Status|State|Count|Total|Version|CreatedAt|UpdatedAt)$/i.test(key)) return 1;
|
|
@@ -2260,7 +2261,14 @@ function compactResultValue(value, depth, budget) {
|
|
|
2260
2261
|
if (typeof value === "object") {
|
|
2261
2262
|
const record = value;
|
|
2262
2263
|
const allKeys = Object.keys(record);
|
|
2263
|
-
const
|
|
2264
|
+
const ranked = allKeys.sort((left, right) => resultKeyPriority(left) - resultKeyPriority(right));
|
|
2265
|
+
const prioritized = ranked.filter((key) => resultKeyPriority(key) < 2);
|
|
2266
|
+
const ordinary = ranked.filter((key) => resultKeyPriority(key) === 2);
|
|
2267
|
+
const ordinaryLimit = depth === 0 ? ACTION_RESULT_MAX_ORDINARY_KEYS : prioritized.length ? 1 : ACTION_RESULT_MAX_ORDINARY_KEYS;
|
|
2268
|
+
const keys = [
|
|
2269
|
+
...prioritized,
|
|
2270
|
+
...ordinary.slice(0, ordinaryLimit)
|
|
2271
|
+
].slice(0, ACTION_RESULT_MAX_KEYS);
|
|
2264
2272
|
const compact = Object.fromEntries(keys.map((key) => [key, compactResultValue(record[key], depth + 1, budget)]));
|
|
2265
2273
|
if (allKeys.length > keys.length) compact["_omittedKeys"] = allKeys.length - keys.length;
|
|
2266
2274
|
return compact;
|
package/dist/index.js
CHANGED
|
@@ -2140,11 +2140,12 @@ function compactExample(input) {
|
|
|
2140
2140
|
function compactActionValidation(actionId, validation) {
|
|
2141
2141
|
return { actionId, valid: validation.valid, errors: validation.errors };
|
|
2142
2142
|
}
|
|
2143
|
-
var ACTION_RESULT_MAX_DEPTH =
|
|
2144
|
-
var ACTION_RESULT_MAX_KEYS =
|
|
2145
|
-
var
|
|
2146
|
-
var
|
|
2147
|
-
var
|
|
2143
|
+
var ACTION_RESULT_MAX_DEPTH = 3;
|
|
2144
|
+
var ACTION_RESULT_MAX_KEYS = 12;
|
|
2145
|
+
var ACTION_RESULT_MAX_ORDINARY_KEYS = 5;
|
|
2146
|
+
var ACTION_RESULT_MAX_ITEMS = 3;
|
|
2147
|
+
var ACTION_RESULT_MAX_SCALARS = 60;
|
|
2148
|
+
var ACTION_RESULT_MAX_STRING = 256;
|
|
2148
2149
|
function resultKeyPriority(key) {
|
|
2149
2150
|
if (/^(id|requestId|status|state|url|slug|name|title|version)$/i.test(key)) return 0;
|
|
2150
2151
|
if (/(Id|Ids|Url|Uri|Status|State|Count|Total|Version|CreatedAt|UpdatedAt)$/i.test(key)) return 1;
|
|
@@ -2170,7 +2171,14 @@ function compactResultValue(value, depth, budget) {
|
|
|
2170
2171
|
if (typeof value === "object") {
|
|
2171
2172
|
const record = value;
|
|
2172
2173
|
const allKeys = Object.keys(record);
|
|
2173
|
-
const
|
|
2174
|
+
const ranked = allKeys.sort((left, right) => resultKeyPriority(left) - resultKeyPriority(right));
|
|
2175
|
+
const prioritized = ranked.filter((key) => resultKeyPriority(key) < 2);
|
|
2176
|
+
const ordinary = ranked.filter((key) => resultKeyPriority(key) === 2);
|
|
2177
|
+
const ordinaryLimit = depth === 0 ? ACTION_RESULT_MAX_ORDINARY_KEYS : prioritized.length ? 1 : ACTION_RESULT_MAX_ORDINARY_KEYS;
|
|
2178
|
+
const keys = [
|
|
2179
|
+
...prioritized,
|
|
2180
|
+
...ordinary.slice(0, ordinaryLimit)
|
|
2181
|
+
].slice(0, ACTION_RESULT_MAX_KEYS);
|
|
2174
2182
|
const compact = Object.fromEntries(keys.map((key) => [key, compactResultValue(record[key], depth + 1, budget)]));
|
|
2175
2183
|
if (allKeys.length > keys.length) compact["_omittedKeys"] = allKeys.length - keys.length;
|
|
2176
2184
|
return compact;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@topolo/sdk",
|
|
3
|
-
"version": "0.11.
|
|
4
|
-
"topoloPublishedVersion": "0.11.
|
|
3
|
+
"version": "0.11.4",
|
|
4
|
+
"topoloPublishedVersion": "0.11.4",
|
|
5
5
|
"description": "Typed client SDK for the Topolo platform. Used by TopoloCli, TopoloMCP, and third-party agents.",
|
|
6
6
|
"license": "UNLICENSED",
|
|
7
7
|
"author": "Topolo",
|