@thinkhive/sdk 4.1.0 → 4.2.1
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/README.md +161 -2
- package/dist/api/documents.d.ts +52 -0
- package/dist/api/documents.js +58 -0
- package/dist/api/drift.d.ts +70 -0
- package/dist/api/drift.js +71 -0
- package/dist/api/eval-runs.d.ts +126 -0
- package/dist/api/eval-runs.js +126 -0
- package/dist/api/llm-costs.d.ts +104 -0
- package/dist/api/llm-costs.js +81 -0
- package/dist/api/notifications.d.ts +103 -0
- package/dist/api/notifications.js +110 -0
- package/dist/api/sessions.d.ts +57 -0
- package/dist/api/sessions.js +49 -0
- package/dist/api/shadow-tests.d.ts +78 -0
- package/dist/api/shadow-tests.js +80 -0
- package/dist/api/signals.d.ts +177 -0
- package/dist/api/signals.js +172 -0
- package/dist/core/client.d.ts +2 -0
- package/dist/core/client.js +10 -4
- package/dist/guardrails.d.ts +70 -0
- package/dist/guardrails.js +34 -0
- package/dist/index.d.ts +105 -2
- package/dist/index.js +50 -4
- package/package.json +1 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ThinkHive SDK - Sessions API
|
|
4
|
+
*
|
|
5
|
+
* Trace session grouping for multi-turn conversation tracking
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.default = exports.sessions = void 0;
|
|
9
|
+
const client_1 = require("../core/client");
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// SESSIONS API CLIENT
|
|
12
|
+
// ============================================================================
|
|
13
|
+
/**
|
|
14
|
+
* Sessions API client for trace session grouping
|
|
15
|
+
*/
|
|
16
|
+
exports.sessions = {
|
|
17
|
+
/**
|
|
18
|
+
* List sessions for an agent
|
|
19
|
+
*
|
|
20
|
+
* @param agentId - The agent ID
|
|
21
|
+
* @param opts - Pagination options
|
|
22
|
+
* @returns List of sessions
|
|
23
|
+
*/
|
|
24
|
+
async list(agentId, opts) {
|
|
25
|
+
const params = new URLSearchParams({ agentId });
|
|
26
|
+
if (opts?.limit !== undefined)
|
|
27
|
+
params.set('limit', String(opts.limit));
|
|
28
|
+
if (opts?.offset !== undefined)
|
|
29
|
+
params.set('offset', String(opts.offset));
|
|
30
|
+
return (0, client_1.apiRequestWithData)(`/traces/sessions?${params}`, {
|
|
31
|
+
apiVersion: 'none',
|
|
32
|
+
});
|
|
33
|
+
},
|
|
34
|
+
/**
|
|
35
|
+
* Get traces for a specific session
|
|
36
|
+
*
|
|
37
|
+
* @param sessionId - The session ID
|
|
38
|
+
* @param agentId - The agent ID
|
|
39
|
+
* @returns List of traces in the session
|
|
40
|
+
*/
|
|
41
|
+
async getTraces(sessionId, agentId) {
|
|
42
|
+
const params = new URLSearchParams({ agentId, sessionId });
|
|
43
|
+
return (0, client_1.apiRequestWithData)(`/traces?${params}`, {
|
|
44
|
+
apiVersion: 'none',
|
|
45
|
+
});
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
exports.default = exports.sessions;
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3Nlc3Npb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7OztHQUlHOzs7QUFFSCwyQ0FBb0Q7QUFrQ3BELCtFQUErRTtBQUMvRSxzQkFBc0I7QUFDdEIsK0VBQStFO0FBRS9FOztHQUVHO0FBQ1UsUUFBQSxRQUFRLEdBQUc7SUFDdEI7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFlLEVBQUUsSUFBMEI7UUFNcEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxlQUFlLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELElBQUksSUFBSSxFQUFFLEtBQUssS0FBSyxTQUFTO1lBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksSUFBSSxFQUFFLE1BQU0sS0FBSyxTQUFTO1lBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRTFFLE9BQU8sSUFBQSwyQkFBa0IsRUFBQyxvQkFBb0IsTUFBTSxFQUFFLEVBQUU7WUFDdEQsVUFBVSxFQUFFLE1BQU07U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxTQUFTLENBQUMsU0FBaUIsRUFBRSxPQUFlO1FBQ2hELE1BQU0sTUFBTSxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDM0QsT0FBTyxJQUFBLDJCQUFrQixFQUFpQixXQUFXLE1BQU0sRUFBRSxFQUFFO1lBQzdELFVBQVUsRUFBRSxNQUFNO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRixDQUFDO0FBRW1CLGtCQXRDUixnQkFBUSxDQXNDTyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhpbmtIaXZlIFNESyAtIFNlc3Npb25zIEFQSVxuICpcbiAqIFRyYWNlIHNlc3Npb24gZ3JvdXBpbmcgZm9yIG11bHRpLXR1cm4gY29udmVyc2F0aW9uIHRyYWNraW5nXG4gKi9cblxuaW1wb3J0IHsgYXBpUmVxdWVzdFdpdGhEYXRhIH0gZnJvbSAnLi4vY29yZS9jbGllbnQnO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUWVBFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKiogT3B0aW9ucyBmb3IgbGlzdGluZyBzZXNzaW9ucyAqL1xuZXhwb3J0IGludGVyZmFjZSBMaXN0U2Vzc2lvbnNPcHRpb25zIHtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIG9mZnNldD86IG51bWJlcjtcbn1cblxuLyoqIEEgdHJhY2Ugc2Vzc2lvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNzaW9uIHtcbiAgc2Vzc2lvbklkOiBzdHJpbmc7XG4gIGFnZW50SWQ6IHN0cmluZztcbiAgdHJhY2VDb3VudDogbnVtYmVyO1xuICBmaXJzdFRyYWNlQXQ6IHN0cmluZztcbiAgbGFzdFRyYWNlQXQ6IHN0cmluZztcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuLyoqIEEgdHJhY2Ugd2l0aGluIGEgc2Vzc2lvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXNzaW9uVHJhY2Uge1xuICBpZDogc3RyaW5nO1xuICBhZ2VudElkOiBzdHJpbmc7XG4gIHNlc3Npb25JZDogc3RyaW5nO1xuICBpbnB1dD86IHVua25vd247XG4gIG91dHB1dD86IHVua25vd247XG4gIHN0YXR1czogc3RyaW5nO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU0VTU0lPTlMgQVBJIENMSUVOVFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFNlc3Npb25zIEFQSSBjbGllbnQgZm9yIHRyYWNlIHNlc3Npb24gZ3JvdXBpbmdcbiAqL1xuZXhwb3J0IGNvbnN0IHNlc3Npb25zID0ge1xuICAvKipcbiAgICogTGlzdCBzZXNzaW9ucyBmb3IgYW4gYWdlbnRcbiAgICpcbiAgICogQHBhcmFtIGFnZW50SWQgLSBUaGUgYWdlbnQgSURcbiAgICogQHBhcmFtIG9wdHMgLSBQYWdpbmF0aW9uIG9wdGlvbnNcbiAgICogQHJldHVybnMgTGlzdCBvZiBzZXNzaW9uc1xuICAgKi9cbiAgYXN5bmMgbGlzdChhZ2VudElkOiBzdHJpbmcsIG9wdHM/OiBMaXN0U2Vzc2lvbnNPcHRpb25zKTogUHJvbWlzZTx7XG4gICAgc2Vzc2lvbnM6IFNlc3Npb25bXTtcbiAgICBsaW1pdDogbnVtYmVyO1xuICAgIG9mZnNldDogbnVtYmVyO1xuICAgIGhhc01vcmU6IGJvb2xlYW47XG4gIH0+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgYWdlbnRJZCB9KTtcbiAgICBpZiAob3B0cz8ubGltaXQgIT09IHVuZGVmaW5lZCkgcGFyYW1zLnNldCgnbGltaXQnLCBTdHJpbmcob3B0cy5saW1pdCkpO1xuICAgIGlmIChvcHRzPy5vZmZzZXQgIT09IHVuZGVmaW5lZCkgcGFyYW1zLnNldCgnb2Zmc2V0JywgU3RyaW5nKG9wdHMub2Zmc2V0KSk7XG5cbiAgICByZXR1cm4gYXBpUmVxdWVzdFdpdGhEYXRhKGAvdHJhY2VzL3Nlc3Npb25zPyR7cGFyYW1zfWAsIHtcbiAgICAgIGFwaVZlcnNpb246ICdub25lJyxcbiAgICB9KTtcbiAgfSxcblxuICAvKipcbiAgICogR2V0IHRyYWNlcyBmb3IgYSBzcGVjaWZpYyBzZXNzaW9uXG4gICAqXG4gICAqIEBwYXJhbSBzZXNzaW9uSWQgLSBUaGUgc2Vzc2lvbiBJRFxuICAgKiBAcGFyYW0gYWdlbnRJZCAtIFRoZSBhZ2VudCBJRFxuICAgKiBAcmV0dXJucyBMaXN0IG9mIHRyYWNlcyBpbiB0aGUgc2Vzc2lvblxuICAgKi9cbiAgYXN5bmMgZ2V0VHJhY2VzKHNlc3Npb25JZDogc3RyaW5nLCBhZ2VudElkOiBzdHJpbmcpOiBQcm9taXNlPFNlc3Npb25UcmFjZVtdPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh7IGFnZW50SWQsIHNlc3Npb25JZCB9KTtcbiAgICByZXR1cm4gYXBpUmVxdWVzdFdpdGhEYXRhPFNlc3Npb25UcmFjZVtdPihgL3RyYWNlcz8ke3BhcmFtc31gLCB7XG4gICAgICBhcGlWZXJzaW9uOiAnbm9uZScsXG4gICAgfSk7XG4gIH0sXG59O1xuXG5leHBvcnQgeyBzZXNzaW9ucyBhcyBkZWZhdWx0IH07XG4iXX0=
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ThinkHive SDK - Shadow Tests API
|
|
3
|
+
*
|
|
4
|
+
* Shadow test execution for validating proposed fixes
|
|
5
|
+
*/
|
|
6
|
+
/** Data for creating a shadow test */
|
|
7
|
+
export interface CreateShadowTestData {
|
|
8
|
+
fixId: string;
|
|
9
|
+
agentId: string;
|
|
10
|
+
testName: string;
|
|
11
|
+
inputData: unknown;
|
|
12
|
+
expectedOutput: unknown;
|
|
13
|
+
}
|
|
14
|
+
/** Data for updating a shadow test */
|
|
15
|
+
export interface UpdateShadowTestData {
|
|
16
|
+
testName?: string;
|
|
17
|
+
status?: string;
|
|
18
|
+
actualOutput?: unknown;
|
|
19
|
+
passed?: boolean;
|
|
20
|
+
metadata?: Record<string, unknown>;
|
|
21
|
+
}
|
|
22
|
+
/** A shadow test record */
|
|
23
|
+
export interface ShadowTest {
|
|
24
|
+
id: string;
|
|
25
|
+
fixId: string;
|
|
26
|
+
agentId: string;
|
|
27
|
+
testName: string;
|
|
28
|
+
inputData: unknown;
|
|
29
|
+
expectedOutput: unknown;
|
|
30
|
+
actualOutput?: unknown;
|
|
31
|
+
status: string;
|
|
32
|
+
passed?: boolean;
|
|
33
|
+
createdAt: string;
|
|
34
|
+
completedAt?: string;
|
|
35
|
+
metadata?: Record<string, unknown>;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Shadow tests API client for managing shadow test execution
|
|
39
|
+
*/
|
|
40
|
+
export declare const shadowTests: {
|
|
41
|
+
/**
|
|
42
|
+
* List shadow tests for an agent
|
|
43
|
+
*
|
|
44
|
+
* @param agentId - The agent ID
|
|
45
|
+
* @returns List of shadow tests
|
|
46
|
+
*/
|
|
47
|
+
list(agentId: string): Promise<ShadowTest[]>;
|
|
48
|
+
/**
|
|
49
|
+
* Get a shadow test by ID
|
|
50
|
+
*
|
|
51
|
+
* @param id - The shadow test ID
|
|
52
|
+
* @returns The shadow test details
|
|
53
|
+
*/
|
|
54
|
+
get(id: string): Promise<ShadowTest>;
|
|
55
|
+
/**
|
|
56
|
+
* Get shadow tests for a specific fix
|
|
57
|
+
*
|
|
58
|
+
* @param fixId - The fix ID
|
|
59
|
+
* @returns List of shadow tests for the fix
|
|
60
|
+
*/
|
|
61
|
+
getByFix(fixId: string): Promise<ShadowTest[]>;
|
|
62
|
+
/**
|
|
63
|
+
* Create a new shadow test
|
|
64
|
+
*
|
|
65
|
+
* @param data - Shadow test configuration
|
|
66
|
+
* @returns The created shadow test
|
|
67
|
+
*/
|
|
68
|
+
create(data: CreateShadowTestData): Promise<ShadowTest>;
|
|
69
|
+
/**
|
|
70
|
+
* Update a shadow test
|
|
71
|
+
*
|
|
72
|
+
* @param id - The shadow test ID to update
|
|
73
|
+
* @param data - Fields to update
|
|
74
|
+
* @returns The updated shadow test
|
|
75
|
+
*/
|
|
76
|
+
update(id: string, data: UpdateShadowTestData): Promise<ShadowTest>;
|
|
77
|
+
};
|
|
78
|
+
export { shadowTests as default };
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ThinkHive SDK - Shadow Tests API
|
|
4
|
+
*
|
|
5
|
+
* Shadow test execution for validating proposed fixes
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.default = exports.shadowTests = void 0;
|
|
9
|
+
const client_1 = require("../core/client");
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// SHADOW TESTS API CLIENT
|
|
12
|
+
// ============================================================================
|
|
13
|
+
/**
|
|
14
|
+
* Shadow tests API client for managing shadow test execution
|
|
15
|
+
*/
|
|
16
|
+
exports.shadowTests = {
|
|
17
|
+
/**
|
|
18
|
+
* List shadow tests for an agent
|
|
19
|
+
*
|
|
20
|
+
* @param agentId - The agent ID
|
|
21
|
+
* @returns List of shadow tests
|
|
22
|
+
*/
|
|
23
|
+
async list(agentId) {
|
|
24
|
+
const params = new URLSearchParams({ agentId });
|
|
25
|
+
return (0, client_1.apiRequestWithData)(`/shadow-tests?${params}`, {
|
|
26
|
+
apiVersion: 'none',
|
|
27
|
+
});
|
|
28
|
+
},
|
|
29
|
+
/**
|
|
30
|
+
* Get a shadow test by ID
|
|
31
|
+
*
|
|
32
|
+
* @param id - The shadow test ID
|
|
33
|
+
* @returns The shadow test details
|
|
34
|
+
*/
|
|
35
|
+
async get(id) {
|
|
36
|
+
return (0, client_1.apiRequestWithData)(`/shadow-tests/${id}`, {
|
|
37
|
+
apiVersion: 'none',
|
|
38
|
+
});
|
|
39
|
+
},
|
|
40
|
+
/**
|
|
41
|
+
* Get shadow tests for a specific fix
|
|
42
|
+
*
|
|
43
|
+
* @param fixId - The fix ID
|
|
44
|
+
* @returns List of shadow tests for the fix
|
|
45
|
+
*/
|
|
46
|
+
async getByFix(fixId) {
|
|
47
|
+
return (0, client_1.apiRequestWithData)(`/fixes/${fixId}/shadow-tests`, {
|
|
48
|
+
apiVersion: 'none',
|
|
49
|
+
});
|
|
50
|
+
},
|
|
51
|
+
/**
|
|
52
|
+
* Create a new shadow test
|
|
53
|
+
*
|
|
54
|
+
* @param data - Shadow test configuration
|
|
55
|
+
* @returns The created shadow test
|
|
56
|
+
*/
|
|
57
|
+
async create(data) {
|
|
58
|
+
return (0, client_1.apiRequestWithData)('/shadow-tests', {
|
|
59
|
+
method: 'POST',
|
|
60
|
+
body: data,
|
|
61
|
+
apiVersion: 'none',
|
|
62
|
+
});
|
|
63
|
+
},
|
|
64
|
+
/**
|
|
65
|
+
* Update a shadow test
|
|
66
|
+
*
|
|
67
|
+
* @param id - The shadow test ID to update
|
|
68
|
+
* @param data - Fields to update
|
|
69
|
+
* @returns The updated shadow test
|
|
70
|
+
*/
|
|
71
|
+
async update(id, data) {
|
|
72
|
+
return (0, client_1.apiRequestWithData)(`/shadow-tests/${id}`, {
|
|
73
|
+
method: 'PATCH',
|
|
74
|
+
body: data,
|
|
75
|
+
apiVersion: 'none',
|
|
76
|
+
});
|
|
77
|
+
},
|
|
78
|
+
};
|
|
79
|
+
exports.default = exports.shadowTests;
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhZG93LXRlc3RzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9zaGFkb3ctdGVzdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7O0dBSUc7OztBQUVILDJDQUFvRDtBQXdDcEQsK0VBQStFO0FBQy9FLDBCQUEwQjtBQUMxQiwrRUFBK0U7QUFFL0U7O0dBRUc7QUFDVSxRQUFBLFdBQVcsR0FBRztJQUN6Qjs7Ozs7T0FLRztJQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBZTtRQUN4QixNQUFNLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDaEQsT0FBTyxJQUFBLDJCQUFrQixFQUFlLGlCQUFpQixNQUFNLEVBQUUsRUFBRTtZQUNqRSxVQUFVLEVBQUUsTUFBTTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQVU7UUFDbEIsT0FBTyxJQUFBLDJCQUFrQixFQUFhLGlCQUFpQixFQUFFLEVBQUUsRUFBRTtZQUMzRCxVQUFVLEVBQUUsTUFBTTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQWE7UUFDMUIsT0FBTyxJQUFBLDJCQUFrQixFQUFlLFVBQVUsS0FBSyxlQUFlLEVBQUU7WUFDdEUsVUFBVSxFQUFFLE1BQU07U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUEwQjtRQUNyQyxPQUFPLElBQUEsMkJBQWtCLEVBQWEsZUFBZSxFQUFFO1lBQ3JELE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLElBQUk7WUFDVixVQUFVLEVBQUUsTUFBTTtTQUNuQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFVLEVBQUUsSUFBMEI7UUFDakQsT0FBTyxJQUFBLDJCQUFrQixFQUFhLGlCQUFpQixFQUFFLEVBQUUsRUFBRTtZQUMzRCxNQUFNLEVBQUUsT0FBTztZQUNmLElBQUksRUFBRSxJQUFJO1lBQ1YsVUFBVSxFQUFFLE1BQU07U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGLENBQUM7QUFFc0Isa0JBcEVYLG1CQUFXLENBb0VPIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGlua0hpdmUgU0RLIC0gU2hhZG93IFRlc3RzIEFQSVxuICpcbiAqIFNoYWRvdyB0ZXN0IGV4ZWN1dGlvbiBmb3IgdmFsaWRhdGluZyBwcm9wb3NlZCBmaXhlc1xuICovXG5cbmltcG9ydCB7IGFwaVJlcXVlc3RXaXRoRGF0YSB9IGZyb20gJy4uL2NvcmUvY2xpZW50JztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqIERhdGEgZm9yIGNyZWF0aW5nIGEgc2hhZG93IHRlc3QgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlU2hhZG93VGVzdERhdGEge1xuICBmaXhJZDogc3RyaW5nO1xuICBhZ2VudElkOiBzdHJpbmc7XG4gIHRlc3ROYW1lOiBzdHJpbmc7XG4gIGlucHV0RGF0YTogdW5rbm93bjtcbiAgZXhwZWN0ZWRPdXRwdXQ6IHVua25vd247XG59XG5cbi8qKiBEYXRhIGZvciB1cGRhdGluZyBhIHNoYWRvdyB0ZXN0ICovXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVNoYWRvd1Rlc3REYXRhIHtcbiAgdGVzdE5hbWU/OiBzdHJpbmc7XG4gIHN0YXR1cz86IHN0cmluZztcbiAgYWN0dWFsT3V0cHV0PzogdW5rbm93bjtcbiAgcGFzc2VkPzogYm9vbGVhbjtcbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuLyoqIEEgc2hhZG93IHRlc3QgcmVjb3JkICovXG5leHBvcnQgaW50ZXJmYWNlIFNoYWRvd1Rlc3Qge1xuICBpZDogc3RyaW5nO1xuICBmaXhJZDogc3RyaW5nO1xuICBhZ2VudElkOiBzdHJpbmc7XG4gIHRlc3ROYW1lOiBzdHJpbmc7XG4gIGlucHV0RGF0YTogdW5rbm93bjtcbiAgZXhwZWN0ZWRPdXRwdXQ6IHVua25vd247XG4gIGFjdHVhbE91dHB1dD86IHVua25vd247XG4gIHN0YXR1czogc3RyaW5nO1xuICBwYXNzZWQ/OiBib29sZWFuO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgY29tcGxldGVkQXQ/OiBzdHJpbmc7XG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNIQURPVyBURVNUUyBBUEkgQ0xJRU5UXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogU2hhZG93IHRlc3RzIEFQSSBjbGllbnQgZm9yIG1hbmFnaW5nIHNoYWRvdyB0ZXN0IGV4ZWN1dGlvblxuICovXG5leHBvcnQgY29uc3Qgc2hhZG93VGVzdHMgPSB7XG4gIC8qKlxuICAgKiBMaXN0IHNoYWRvdyB0ZXN0cyBmb3IgYW4gYWdlbnRcbiAgICpcbiAgICogQHBhcmFtIGFnZW50SWQgLSBUaGUgYWdlbnQgSURcbiAgICogQHJldHVybnMgTGlzdCBvZiBzaGFkb3cgdGVzdHNcbiAgICovXG4gIGFzeW5jIGxpc3QoYWdlbnRJZDogc3RyaW5nKTogUHJvbWlzZTxTaGFkb3dUZXN0W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgYWdlbnRJZCB9KTtcbiAgICByZXR1cm4gYXBpUmVxdWVzdFdpdGhEYXRhPFNoYWRvd1Rlc3RbXT4oYC9zaGFkb3ctdGVzdHM/JHtwYXJhbXN9YCwge1xuICAgICAgYXBpVmVyc2lvbjogJ25vbmUnLFxuICAgIH0pO1xuICB9LFxuXG4gIC8qKlxuICAgKiBHZXQgYSBzaGFkb3cgdGVzdCBieSBJRFxuICAgKlxuICAgKiBAcGFyYW0gaWQgLSBUaGUgc2hhZG93IHRlc3QgSURcbiAgICogQHJldHVybnMgVGhlIHNoYWRvdyB0ZXN0IGRldGFpbHNcbiAgICovXG4gIGFzeW5jIGdldChpZDogc3RyaW5nKTogUHJvbWlzZTxTaGFkb3dUZXN0PiB7XG4gICAgcmV0dXJuIGFwaVJlcXVlc3RXaXRoRGF0YTxTaGFkb3dUZXN0PihgL3NoYWRvdy10ZXN0cy8ke2lkfWAsIHtcbiAgICAgIGFwaVZlcnNpb246ICdub25lJyxcbiAgICB9KTtcbiAgfSxcblxuICAvKipcbiAgICogR2V0IHNoYWRvdyB0ZXN0cyBmb3IgYSBzcGVjaWZpYyBmaXhcbiAgICpcbiAgICogQHBhcmFtIGZpeElkIC0gVGhlIGZpeCBJRFxuICAgKiBAcmV0dXJucyBMaXN0IG9mIHNoYWRvdyB0ZXN0cyBmb3IgdGhlIGZpeFxuICAgKi9cbiAgYXN5bmMgZ2V0QnlGaXgoZml4SWQ6IHN0cmluZyk6IFByb21pc2U8U2hhZG93VGVzdFtdPiB7XG4gICAgcmV0dXJuIGFwaVJlcXVlc3RXaXRoRGF0YTxTaGFkb3dUZXN0W10+KGAvZml4ZXMvJHtmaXhJZH0vc2hhZG93LXRlc3RzYCwge1xuICAgICAgYXBpVmVyc2lvbjogJ25vbmUnLFxuICAgIH0pO1xuICB9LFxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgc2hhZG93IHRlc3RcbiAgICpcbiAgICogQHBhcmFtIGRhdGEgLSBTaGFkb3cgdGVzdCBjb25maWd1cmF0aW9uXG4gICAqIEByZXR1cm5zIFRoZSBjcmVhdGVkIHNoYWRvdyB0ZXN0XG4gICAqL1xuICBhc3luYyBjcmVhdGUoZGF0YTogQ3JlYXRlU2hhZG93VGVzdERhdGEpOiBQcm9taXNlPFNoYWRvd1Rlc3Q+IHtcbiAgICByZXR1cm4gYXBpUmVxdWVzdFdpdGhEYXRhPFNoYWRvd1Rlc3Q+KCcvc2hhZG93LXRlc3RzJywge1xuICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICBib2R5OiBkYXRhLFxuICAgICAgYXBpVmVyc2lvbjogJ25vbmUnLFxuICAgIH0pO1xuICB9LFxuXG4gIC8qKlxuICAgKiBVcGRhdGUgYSBzaGFkb3cgdGVzdFxuICAgKlxuICAgKiBAcGFyYW0gaWQgLSBUaGUgc2hhZG93IHRlc3QgSUQgdG8gdXBkYXRlXG4gICAqIEBwYXJhbSBkYXRhIC0gRmllbGRzIHRvIHVwZGF0ZVxuICAgKiBAcmV0dXJucyBUaGUgdXBkYXRlZCBzaGFkb3cgdGVzdFxuICAgKi9cbiAgYXN5bmMgdXBkYXRlKGlkOiBzdHJpbmcsIGRhdGE6IFVwZGF0ZVNoYWRvd1Rlc3REYXRhKTogUHJvbWlzZTxTaGFkb3dUZXN0PiB7XG4gICAgcmV0dXJuIGFwaVJlcXVlc3RXaXRoRGF0YTxTaGFkb3dUZXN0PihgL3NoYWRvdy10ZXN0cy8ke2lkfWAsIHtcbiAgICAgIG1ldGhvZDogJ1BBVENIJyxcbiAgICAgIGJvZHk6IGRhdGEsXG4gICAgICBhcGlWZXJzaW9uOiAnbm9uZScsXG4gICAgfSk7XG4gIH0sXG59O1xuXG5leHBvcnQgeyBzaGFkb3dUZXN0cyBhcyBkZWZhdWx0IH07XG4iXX0=
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ThinkHive SDK - Signals API
|
|
3
|
+
*
|
|
4
|
+
* Behavioral signal management for detecting patterns in agent interactions
|
|
5
|
+
*/
|
|
6
|
+
/** Signal detection configuration */
|
|
7
|
+
export interface DetectionConfig {
|
|
8
|
+
type: string;
|
|
9
|
+
threshold?: number;
|
|
10
|
+
pattern?: string;
|
|
11
|
+
[key: string]: unknown;
|
|
12
|
+
}
|
|
13
|
+
/** Options for creating a signal */
|
|
14
|
+
export interface CreateSignalOptions {
|
|
15
|
+
description?: string;
|
|
16
|
+
isEnabled?: boolean;
|
|
17
|
+
severity?: string;
|
|
18
|
+
}
|
|
19
|
+
/** Options for updating a signal */
|
|
20
|
+
export interface UpdateSignalOptions {
|
|
21
|
+
name?: string;
|
|
22
|
+
group?: string;
|
|
23
|
+
description?: string;
|
|
24
|
+
detectionConfig?: DetectionConfig;
|
|
25
|
+
isEnabled?: boolean;
|
|
26
|
+
severity?: string;
|
|
27
|
+
}
|
|
28
|
+
/** Options for listing signals */
|
|
29
|
+
export interface ListSignalsOptions {
|
|
30
|
+
group?: string;
|
|
31
|
+
source?: string;
|
|
32
|
+
isEnabled?: boolean;
|
|
33
|
+
}
|
|
34
|
+
/** Options for getting signal stats */
|
|
35
|
+
export interface SignalStatsOptions {
|
|
36
|
+
startDate?: string;
|
|
37
|
+
endDate?: string;
|
|
38
|
+
agentId?: string;
|
|
39
|
+
}
|
|
40
|
+
/** Options for getting signal trends */
|
|
41
|
+
export interface SignalTrendsOptions {
|
|
42
|
+
startDate?: string;
|
|
43
|
+
endDate?: string;
|
|
44
|
+
agentId?: string;
|
|
45
|
+
granularity?: 'hour' | 'day' | 'week' | 'month';
|
|
46
|
+
}
|
|
47
|
+
/** Options for getting signal traces */
|
|
48
|
+
export interface SignalTracesOptions {
|
|
49
|
+
limit?: number;
|
|
50
|
+
offset?: number;
|
|
51
|
+
startDate?: string;
|
|
52
|
+
endDate?: string;
|
|
53
|
+
agentId?: string;
|
|
54
|
+
}
|
|
55
|
+
/** Options for getting signal events */
|
|
56
|
+
export interface SignalEventsOptions {
|
|
57
|
+
limit?: number;
|
|
58
|
+
offset?: number;
|
|
59
|
+
}
|
|
60
|
+
/** A behavioral signal definition */
|
|
61
|
+
export interface Signal {
|
|
62
|
+
id: string;
|
|
63
|
+
name: string;
|
|
64
|
+
group: string;
|
|
65
|
+
description?: string;
|
|
66
|
+
detectionConfig: DetectionConfig;
|
|
67
|
+
isEnabled: boolean;
|
|
68
|
+
severity?: string;
|
|
69
|
+
source?: string;
|
|
70
|
+
createdAt: string;
|
|
71
|
+
updatedAt: string;
|
|
72
|
+
}
|
|
73
|
+
/** Signal statistics */
|
|
74
|
+
export interface SignalStats {
|
|
75
|
+
signalId: string;
|
|
76
|
+
name: string;
|
|
77
|
+
eventCount: number;
|
|
78
|
+
traceCount: number;
|
|
79
|
+
lastTriggeredAt?: string;
|
|
80
|
+
}
|
|
81
|
+
/** Signal trend data point */
|
|
82
|
+
export interface SignalTrendPoint {
|
|
83
|
+
period: string;
|
|
84
|
+
eventCount: number;
|
|
85
|
+
traceCount: number;
|
|
86
|
+
}
|
|
87
|
+
/** A signal event occurrence */
|
|
88
|
+
export interface SignalEvent {
|
|
89
|
+
id: string;
|
|
90
|
+
signalId: string;
|
|
91
|
+
traceId: string;
|
|
92
|
+
detectedAt: string;
|
|
93
|
+
metadata?: Record<string, unknown>;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Signals API client for managing behavioral signal detection
|
|
97
|
+
*/
|
|
98
|
+
export declare const signals: {
|
|
99
|
+
/**
|
|
100
|
+
* List all signals with optional filters
|
|
101
|
+
*
|
|
102
|
+
* @param opts - Filter options for group, source, or enabled status
|
|
103
|
+
* @returns List of signals
|
|
104
|
+
*/
|
|
105
|
+
list(opts?: ListSignalsOptions): Promise<Signal[]>;
|
|
106
|
+
/**
|
|
107
|
+
* Create a new behavioral signal
|
|
108
|
+
*
|
|
109
|
+
* @param name - Signal name
|
|
110
|
+
* @param group - Signal group/category
|
|
111
|
+
* @param detectionConfig - Detection configuration
|
|
112
|
+
* @param opts - Additional signal options
|
|
113
|
+
* @returns The created signal
|
|
114
|
+
*/
|
|
115
|
+
create(name: string, group: string, detectionConfig: DetectionConfig, opts?: CreateSignalOptions): Promise<Signal>;
|
|
116
|
+
/**
|
|
117
|
+
* Update an existing signal
|
|
118
|
+
*
|
|
119
|
+
* @param id - Signal ID to update
|
|
120
|
+
* @param opts - Fields to update
|
|
121
|
+
* @returns The updated signal
|
|
122
|
+
*/
|
|
123
|
+
update(id: string, opts: UpdateSignalOptions): Promise<Signal>;
|
|
124
|
+
/**
|
|
125
|
+
* Delete a signal
|
|
126
|
+
*
|
|
127
|
+
* @param id - Signal ID to delete
|
|
128
|
+
*/
|
|
129
|
+
remove(id: string): Promise<void>;
|
|
130
|
+
/**
|
|
131
|
+
* Seed default signal definitions
|
|
132
|
+
*
|
|
133
|
+
* @returns List of seeded signals
|
|
134
|
+
*/
|
|
135
|
+
seedDefaults(): Promise<Signal[]>;
|
|
136
|
+
/**
|
|
137
|
+
* Get signal statistics
|
|
138
|
+
*
|
|
139
|
+
* @param opts - Date range and agent filter options
|
|
140
|
+
* @returns Signal statistics
|
|
141
|
+
*/
|
|
142
|
+
getStats(opts?: SignalStatsOptions): Promise<SignalStats[]>;
|
|
143
|
+
/**
|
|
144
|
+
* Get signal trend data over time
|
|
145
|
+
*
|
|
146
|
+
* @param opts - Date range, agent, and granularity options
|
|
147
|
+
* @returns Signal trend data points
|
|
148
|
+
*/
|
|
149
|
+
getTrends(opts?: SignalTrendsOptions): Promise<SignalTrendPoint[]>;
|
|
150
|
+
/**
|
|
151
|
+
* Get traces that triggered a specific signal
|
|
152
|
+
*
|
|
153
|
+
* @param id - Signal ID
|
|
154
|
+
* @param opts - Pagination and filter options
|
|
155
|
+
* @returns Traces associated with the signal
|
|
156
|
+
*/
|
|
157
|
+
getTraces(id: string, opts?: SignalTracesOptions): Promise<{
|
|
158
|
+
traces: any[];
|
|
159
|
+
limit: number;
|
|
160
|
+
offset: number;
|
|
161
|
+
hasMore: boolean;
|
|
162
|
+
}>;
|
|
163
|
+
/**
|
|
164
|
+
* Get events for a specific signal
|
|
165
|
+
*
|
|
166
|
+
* @param id - Signal ID
|
|
167
|
+
* @param opts - Pagination options
|
|
168
|
+
* @returns Signal events
|
|
169
|
+
*/
|
|
170
|
+
getEvents(id: string, opts?: SignalEventsOptions): Promise<{
|
|
171
|
+
events: SignalEvent[];
|
|
172
|
+
limit: number;
|
|
173
|
+
offset: number;
|
|
174
|
+
hasMore: boolean;
|
|
175
|
+
}>;
|
|
176
|
+
};
|
|
177
|
+
export { signals as default };
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ThinkHive SDK - Signals API
|
|
4
|
+
*
|
|
5
|
+
* Behavioral signal management for detecting patterns in agent interactions
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.default = exports.signals = void 0;
|
|
9
|
+
const client_1 = require("../core/client");
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// SIGNALS API CLIENT
|
|
12
|
+
// ============================================================================
|
|
13
|
+
/**
|
|
14
|
+
* Signals API client for managing behavioral signal detection
|
|
15
|
+
*/
|
|
16
|
+
exports.signals = {
|
|
17
|
+
/**
|
|
18
|
+
* List all signals with optional filters
|
|
19
|
+
*
|
|
20
|
+
* @param opts - Filter options for group, source, or enabled status
|
|
21
|
+
* @returns List of signals
|
|
22
|
+
*/
|
|
23
|
+
async list(opts) {
|
|
24
|
+
const params = new URLSearchParams();
|
|
25
|
+
if (opts?.group)
|
|
26
|
+
params.set('group', opts.group);
|
|
27
|
+
if (opts?.source)
|
|
28
|
+
params.set('source', opts.source);
|
|
29
|
+
if (opts?.isEnabled !== undefined)
|
|
30
|
+
params.set('isEnabled', String(opts.isEnabled));
|
|
31
|
+
const query = params.toString();
|
|
32
|
+
return (0, client_1.apiRequestWithData)(`/signals/${query ? `?${query}` : ''}`, {
|
|
33
|
+
apiVersion: 'v1',
|
|
34
|
+
});
|
|
35
|
+
},
|
|
36
|
+
/**
|
|
37
|
+
* Create a new behavioral signal
|
|
38
|
+
*
|
|
39
|
+
* @param name - Signal name
|
|
40
|
+
* @param group - Signal group/category
|
|
41
|
+
* @param detectionConfig - Detection configuration
|
|
42
|
+
* @param opts - Additional signal options
|
|
43
|
+
* @returns The created signal
|
|
44
|
+
*/
|
|
45
|
+
async create(name, group, detectionConfig, opts) {
|
|
46
|
+
return (0, client_1.apiRequestWithData)('/signals/', {
|
|
47
|
+
method: 'POST',
|
|
48
|
+
body: { name, group, detectionConfig, ...opts },
|
|
49
|
+
apiVersion: 'v1',
|
|
50
|
+
});
|
|
51
|
+
},
|
|
52
|
+
/**
|
|
53
|
+
* Update an existing signal
|
|
54
|
+
*
|
|
55
|
+
* @param id - Signal ID to update
|
|
56
|
+
* @param opts - Fields to update
|
|
57
|
+
* @returns The updated signal
|
|
58
|
+
*/
|
|
59
|
+
async update(id, opts) {
|
|
60
|
+
return (0, client_1.apiRequestWithData)(`/signals/${id}`, {
|
|
61
|
+
method: 'PUT',
|
|
62
|
+
body: opts,
|
|
63
|
+
apiVersion: 'v1',
|
|
64
|
+
});
|
|
65
|
+
},
|
|
66
|
+
/**
|
|
67
|
+
* Delete a signal
|
|
68
|
+
*
|
|
69
|
+
* @param id - Signal ID to delete
|
|
70
|
+
*/
|
|
71
|
+
async remove(id) {
|
|
72
|
+
return (0, client_1.apiRequest)(`/signals/${id}`, {
|
|
73
|
+
method: 'DELETE',
|
|
74
|
+
apiVersion: 'v1',
|
|
75
|
+
});
|
|
76
|
+
},
|
|
77
|
+
/**
|
|
78
|
+
* Seed default signal definitions
|
|
79
|
+
*
|
|
80
|
+
* @returns List of seeded signals
|
|
81
|
+
*/
|
|
82
|
+
async seedDefaults() {
|
|
83
|
+
return (0, client_1.apiRequestWithData)('/signals/seed', {
|
|
84
|
+
method: 'POST',
|
|
85
|
+
apiVersion: 'v1',
|
|
86
|
+
});
|
|
87
|
+
},
|
|
88
|
+
/**
|
|
89
|
+
* Get signal statistics
|
|
90
|
+
*
|
|
91
|
+
* @param opts - Date range and agent filter options
|
|
92
|
+
* @returns Signal statistics
|
|
93
|
+
*/
|
|
94
|
+
async getStats(opts) {
|
|
95
|
+
const params = new URLSearchParams();
|
|
96
|
+
if (opts?.startDate)
|
|
97
|
+
params.set('startDate', opts.startDate);
|
|
98
|
+
if (opts?.endDate)
|
|
99
|
+
params.set('endDate', opts.endDate);
|
|
100
|
+
if (opts?.agentId)
|
|
101
|
+
params.set('agentId', opts.agentId);
|
|
102
|
+
const query = params.toString();
|
|
103
|
+
return (0, client_1.apiRequestWithData)(`/signals/stats${query ? `?${query}` : ''}`, {
|
|
104
|
+
apiVersion: 'v1',
|
|
105
|
+
});
|
|
106
|
+
},
|
|
107
|
+
/**
|
|
108
|
+
* Get signal trend data over time
|
|
109
|
+
*
|
|
110
|
+
* @param opts - Date range, agent, and granularity options
|
|
111
|
+
* @returns Signal trend data points
|
|
112
|
+
*/
|
|
113
|
+
async getTrends(opts) {
|
|
114
|
+
const params = new URLSearchParams();
|
|
115
|
+
if (opts?.startDate)
|
|
116
|
+
params.set('startDate', opts.startDate);
|
|
117
|
+
if (opts?.endDate)
|
|
118
|
+
params.set('endDate', opts.endDate);
|
|
119
|
+
if (opts?.agentId)
|
|
120
|
+
params.set('agentId', opts.agentId);
|
|
121
|
+
if (opts?.granularity)
|
|
122
|
+
params.set('granularity', opts.granularity);
|
|
123
|
+
const query = params.toString();
|
|
124
|
+
return (0, client_1.apiRequestWithData)(`/signals/trends${query ? `?${query}` : ''}`, {
|
|
125
|
+
apiVersion: 'v1',
|
|
126
|
+
});
|
|
127
|
+
},
|
|
128
|
+
/**
|
|
129
|
+
* Get traces that triggered a specific signal
|
|
130
|
+
*
|
|
131
|
+
* @param id - Signal ID
|
|
132
|
+
* @param opts - Pagination and filter options
|
|
133
|
+
* @returns Traces associated with the signal
|
|
134
|
+
*/
|
|
135
|
+
async getTraces(id, opts) {
|
|
136
|
+
const params = new URLSearchParams();
|
|
137
|
+
if (opts?.limit !== undefined)
|
|
138
|
+
params.set('limit', String(opts.limit));
|
|
139
|
+
if (opts?.offset !== undefined)
|
|
140
|
+
params.set('offset', String(opts.offset));
|
|
141
|
+
if (opts?.startDate)
|
|
142
|
+
params.set('startDate', opts.startDate);
|
|
143
|
+
if (opts?.endDate)
|
|
144
|
+
params.set('endDate', opts.endDate);
|
|
145
|
+
if (opts?.agentId)
|
|
146
|
+
params.set('agentId', opts.agentId);
|
|
147
|
+
const query = params.toString();
|
|
148
|
+
return (0, client_1.apiRequestWithData)(`/signals/${id}/traces${query ? `?${query}` : ''}`, {
|
|
149
|
+
apiVersion: 'v1',
|
|
150
|
+
});
|
|
151
|
+
},
|
|
152
|
+
/**
|
|
153
|
+
* Get events for a specific signal
|
|
154
|
+
*
|
|
155
|
+
* @param id - Signal ID
|
|
156
|
+
* @param opts - Pagination options
|
|
157
|
+
* @returns Signal events
|
|
158
|
+
*/
|
|
159
|
+
async getEvents(id, opts) {
|
|
160
|
+
const params = new URLSearchParams();
|
|
161
|
+
if (opts?.limit !== undefined)
|
|
162
|
+
params.set('limit', String(opts.limit));
|
|
163
|
+
if (opts?.offset !== undefined)
|
|
164
|
+
params.set('offset', String(opts.offset));
|
|
165
|
+
const query = params.toString();
|
|
166
|
+
return (0, client_1.apiRequestWithData)(`/signals/${id}/events${query ? `?${query}` : ''}`, {
|
|
167
|
+
apiVersion: 'v1',
|
|
168
|
+
});
|
|
169
|
+
},
|
|
170
|
+
};
|
|
171
|
+
exports.default = exports.signals;
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvc2lnbmFscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7R0FJRzs7O0FBRUgsMkNBQWdFO0FBMkdoRSwrRUFBK0U7QUFDL0UscUJBQXFCO0FBQ3JCLCtFQUErRTtBQUUvRTs7R0FFRztBQUNVLFFBQUEsT0FBTyxHQUFHO0lBQ3JCOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUF5QjtRQUNsQyxNQUFNLE1BQU0sR0FBRyxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3JDLElBQUksSUFBSSxFQUFFLEtBQUs7WUFBRSxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakQsSUFBSSxJQUFJLEVBQUUsTUFBTTtZQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRCxJQUFJLElBQUksRUFBRSxTQUFTLEtBQUssU0FBUztZQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztRQUVuRixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEMsT0FBTyxJQUFBLDJCQUFrQixFQUFXLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUMxRSxVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7Ozs7O09BUUc7SUFDSCxLQUFLLENBQUMsTUFBTSxDQUNWLElBQVksRUFDWixLQUFhLEVBQ2IsZUFBZ0MsRUFDaEMsSUFBMEI7UUFFMUIsT0FBTyxJQUFBLDJCQUFrQixFQUFTLFdBQVcsRUFBRTtZQUM3QyxNQUFN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QUcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLElBQUksSUFBSSxFQUFFLE1BQU0sS0FBSyxTQUFTO1lBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBRTFFLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQyxPQUFPLElBQUEsMkJBQWtCLEVBQUMsWUFBWSxFQUFFLFVBQVUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUM1RSxVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YsQ0FBQztBQUVrQixrQkF2S1AsZUFBTyxDQXVLTyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhpbmtIaXZlIFNESyAtIFNpZ25hbHMgQVBJXG4gKlxuICogQmVoYXZpb3JhbCBzaWduYWwgbWFuYWdlbWVudCBmb3IgZGV0ZWN0aW5nIHBhdHRlcm5zIGluIGFnZW50IGludGVyYWN0aW9uc1xuICovXG5cbmltcG9ydCB7IGFwaVJlcXVlc3QsIGFwaVJlcXVlc3RXaXRoRGF0YSB9IGZyb20gJy4uL2NvcmUvY2xpZW50JztcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVFlQRVNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqIFNpZ25hbCBkZXRlY3Rpb24gY29uZmlndXJhdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXRlY3Rpb25Db25maWcge1xuICB0eXBlOiBzdHJpbmc7XG4gIHRocmVzaG9sZD86IG51bWJlcjtcbiAgcGF0dGVybj86IHN0cmluZztcbiAgW2tleTogc3RyaW5nXTogdW5rbm93bjtcbn1cblxuLyoqIE9wdGlvbnMgZm9yIGNyZWF0aW5nIGEgc2lnbmFsICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVNpZ25hbE9wdGlvbnMge1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgaXNFbmFibGVkPzogYm9vbGVhbjtcbiAgc2V2ZXJpdHk/OiBzdHJpbmc7XG59XG5cbi8qKiBPcHRpb25zIGZvciB1cGRhdGluZyBhIHNpZ25hbCAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVTaWduYWxPcHRpb25zIHtcbiAgbmFtZT86IHN0cmluZztcbiAgZ3JvdXA/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBkZXRlY3Rpb25Db25maWc/OiBEZXRlY3Rpb25Db25maWc7XG4gIGlzRW5hYmxlZD86IGJvb2xlYW47XG4gIHNldmVyaXR5Pzogc3RyaW5nO1xufVxuXG4vKiogT3B0aW9ucyBmb3IgbGlzdGluZyBzaWduYWxzICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RTaWduYWxzT3B0aW9ucyB7XG4gIGdyb3VwPzogc3RyaW5nO1xuICBzb3VyY2U/OiBzdHJpbmc7XG4gIGlzRW5hYmxlZD86IGJvb2xlYW47XG59XG5cbi8qKiBPcHRpb25zIGZvciBnZXR0aW5nIHNpZ25hbCBzdGF0cyAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduYWxTdGF0c09wdGlvbnMge1xuICBzdGFydERhdGU/OiBzdHJpbmc7XG4gIGVuZERhdGU/OiBzdHJpbmc7XG4gIGFnZW50SWQ/OiBzdHJpbmc7XG59XG5cbi8qKiBPcHRpb25zIGZvciBnZXR0aW5nIHNpZ25hbCB0cmVuZHMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmFsVHJlbmRzT3B0aW9ucyB7XG4gIHN0YXJ0RGF0ZT86IHN0cmluZztcbiAgZW5kRGF0ZT86IHN0cmluZztcbiAgYWdlbnRJZD86IHN0cmluZztcbiAgZ3JhbnVsYXJpdHk/OiAnaG91cicgfCAnZGF5JyB8ICd3ZWVrJyB8ICdtb250aCc7XG59XG5cbi8qKiBPcHRpb25zIGZvciBnZXR0aW5nIHNpZ25hbCB0cmFjZXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmFsVHJhY2VzT3B0aW9ucyB7XG4gIGxpbWl0PzogbnVtYmVyO1xuICBvZmZzZXQ/OiBudW1iZXI7XG4gIHN0YXJ0RGF0ZT86IHN0cmluZztcbiAgZW5kRGF0ZT86IHN0cmluZztcbiAgYWdlbnRJZD86IHN0cmluZztcbn1cblxuLyoqIE9wdGlvbnMgZm9yIGdldHRpbmcgc2lnbmFsIGV2ZW50cyAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduYWxFdmVudHNPcHRpb25zIHtcbiAgbGltaXQ/OiBudW1iZXI7XG4gIG9mZnNldD86IG51bWJlcjtcbn1cblxuLyoqIEEgYmVoYXZpb3JhbCBzaWduYWwgZGVmaW5pdGlvbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduYWwge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGdyb3VwOiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBkZXRlY3Rpb25Db25maWc6IERldGVjdGlvbkNvbmZpZztcbiAgaXNFbmFibGVkOiBib29sZWFuO1xuICBzZXZlcml0eT86IHN0cmluZztcbiAgc291cmNlPzogc3RyaW5nO1xuICBjcmVhdGVkQXQ6IHN0cmluZztcbiAgdXBkYXRlZEF0OiBzdHJpbmc7XG59XG5cbi8qKiBTaWduYWwgc3RhdGlzdGljcyAqL1xuZXhwb3J0IGludGVyZmFjZSBTaWduYWxTdGF0cyB7XG4gIHNpZ25hbElkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgZXZlbnRDb3VudDogbnVtYmVyO1xuICB0cmFjZUNvdW50OiBudW1iZXI7XG4gIGxhc3RUcmlnZ2VyZWRBdD86IHN0cmluZztcbn1cblxuLyoqIFNpZ25hbCB0cmVuZCBkYXRhIHBvaW50ICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hbFRyZW5kUG9pbnQge1xuICBwZXJpb2Q6IHN0cmluZztcbiAgZXZlbnRDb3VudDogbnVtYmVyO1xuICB0cmFjZUNvdW50OiBudW1iZXI7XG59XG5cbi8qKiBBIHNpZ25hbCBldmVudCBvY2N1cnJlbmNlICovXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25hbEV2ZW50IHtcbiAgaWQ6IHN0cmluZztcbiAgc2lnbmFsSWQ6IHN0cmluZztcbiAgdHJhY2VJZDogc3RyaW5nO1xuICBkZXRlY3RlZEF0OiBzdHJpbmc7XG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFNJR05BTFMgQVBJIENMSUVOVFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFNpZ25hbHMgQVBJIGNsaWVudCBmb3IgbWFuYWdpbmcgYmVoYXZpb3JhbCBzaWduYWwgZGV0ZWN0aW9uXG4gKi9cbmV4cG9ydCBjb25zdCBzaWduYWxzID0ge1xuICAvKipcbiAgICogTGlzdCBhbGwgc2lnbmFscyB3aXRoIG9wdGlvbmFsIGZpbHRlcnNcbiAgICpcbiAgICogQHBhcmFtIG9wdHMgLSBGaWx0ZXIgb3B0aW9ucyBmb3IgZ3JvdXAsIHNvdXJjZSwgb3IgZW5hYmxlZCBzdGF0dXNcbiAgICogQHJldHVybnMgTGlzdCBvZiBzaWduYWxzXG4gICAqL1xuICBhc3luYyBsaXN0KG9wdHM/OiBMaXN0U2lnbmFsc09wdGlvbnMpOiBQcm9taXNlPFNpZ25hbFtdPiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcygpO1xuICAgIGlmIChvcHRzPy5ncm91cCkgcGFyYW1zLnNldCgnZ3JvdXAnLCBvcHRzLmdyb3VwKTtcbiAgICBpZiAob3B0cz8uc291cmNlKSBwYXJhbXMuc2V0KCdzb3VyY2UnLCBvcHRzLnNvdXJjZSk7XG4gICAgaWYgKG9wdHM/LmlzRW5hYmxlZCAhPT0gdW5kZWZpbmVkKSBwYXJhbXMuc2V0KCdpc0VuYWJsZWQnLCBTdHJpbmcob3B0cy5pc0VuYWJsZWQpKTtcblxuICAgIGNvbnN0IHF1ZXJ5ID0gcGFyYW1zLnRvU3RyaW5nKCk7XG4gICAgcmV0dXJuIGFwaVJlcXVlc3RXaXRoRGF0YTxTaWduYWxbXT4oYC9zaWduYWxzLyR7cXVlcnkgPyBgPyR7cXVlcnl9YCA6ICcnfWAsIHtcbiAgICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgfSk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBiZWhhdmlvcmFsIHNpZ25hbFxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSAtIFNpZ25hbCBuYW1lXG4gICAqIEBwYXJhbSBncm91cCAtIFNpZ25hbCBncm91cC9jYXRlZ29yeVxuICAgKiBAcGFyYW0gZGV0ZWN0aW9uQ29uZmlnIC0gRGV0ZWN0aW9uIGNvbmZpZ3VyYXRpb25cbiAgICogQHBhcmFtIG9wdHMgLSBBZGRpdGlvbmFsIHNpZ25hbCBvcHRpb25zXG4gICAqIEByZXR1cm5zIFRoZSBjcmVhdGVkIHNpZ25hbFxuICAgKi9cbiAgYXN5bmMgY3JlYXRlKFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBncm91cDogc3RyaW5nLFxuICAgIGRldGVjdGlvbkNvbmZpZzogRGV0ZWN0aW9uQ29uZmlnLFxuICAgIG9wdHM/OiBDcmVhdGVTaWduYWxPcHRpb25zXG4gICk6IFByb21pc2U8U2lnbmFsPiB7XG4gICAgcmV0dXJuIGFwaVJlcXVlc3RXaXRoRGF0YTxTaWduYWw+KCcvc2lnbmFscy8nLCB7XG4gICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgIGJvZHk6IHsgbmFtZSwgZ3JvdXAsIGRldGVjdGlvbkNvbmZpZywgLi4ub3B0cyB9LFxuICAgICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB9KTtcbiAgfSxcblxuICAvKipcbiAgICogVXBkYXRlIGFuIGV4aXN0aW5nIHNpZ25hbFxuICAgKlxuICAgKiBAcGFyYW0gaWQgLSBTaWduYWwgSUQgdG8gdXBkYXRlXG4gICAqIEBwYXJhbSBvcHRzIC0gRmllbGRzIHRvIHVwZGF0ZVxuICAgKiBAcmV0dXJucyBUaGUgdXBkYXRlZCBzaWduYWxcbiAgICovXG4gIGFzeW5jIHVwZGF0ZShpZDogc3RyaW5nLCBvcHRzOiBVcGRhdGVTaWduYWxPcHRpb25zKTogUHJvbWlzZTxTaWduYWw+IHtcbiAgICByZXR1cm4gYXBpUmVxdWVzdFdpdGhEYXRhPFNpZ25hbD4oYC9zaWduYWxzLyR7aWR9YCwge1xuICAgICAgbWV0aG9kOiAnUFVUJyxcbiAgICAgIGJvZHk6IG9wdHMsXG4gICAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIH0pO1xuICB9LFxuXG4gIC8qKlxuICAgKiBEZWxldGUgYSBzaWduYWxcbiAgICpcbiAgICogQHBhcmFtIGlkIC0gU2lnbmFsIElEIHRvIGRlbGV0ZVxuICAgKi9cbiAgYXN5bmMgcmVtb3ZlKGlkOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gYXBpUmVxdWVzdDx2b2lkPihgL3NpZ25hbHMvJHtpZH1gLCB7XG4gICAgICBtZXRob2Q6ICdERUxFVEUnLFxuICAgICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB9KTtcbiAgfSxcblxuICAvKipcbiAgICogU2VlZCBkZWZhdWx0IHNpZ25hbCBkZWZpbml0aW9uc1xuICAgKlxuICAgKiBAcmV0dXJucyBMaXN0IG9mIHNlZWRlZCBzaWduYWxzXG4gICAqL1xuICBhc3luYyBzZWVkRGVmYXVsdHMoKTogUHJvbWlzZTxTaWduYWxbXT4ge1xuICAgIHJldHVybiBhcGlSZXF1ZXN0V2l0aERhdGE8U2lnbmFsW10+KCcvc2lnbmFscy9zZWVkJywge1xuICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIH0pO1xuICB9LFxuXG4gIC8qKlxuICAgKiBHZXQgc2lnbmFsIHN0YXRpc3RpY3NcbiAgICpcbiAgICogQHBhcmFtIG9wdHMgLSBEYXRlIHJhbmdlIGFuZCBhZ2VudCBmaWx0ZXIgb3B0aW9uc1xuICAgKiBAcmV0dXJucyBTaWduYWwgc3RhdGlzdGljc1xuICAgKi9cbiAgYXN5bmMgZ2V0U3RhdHMob3B0cz86IFNpZ25hbFN0YXRzT3B0aW9ucyk6IFByb21pc2U8U2lnbmFsU3RhdHNbXT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoKTtcbiAgICBpZiAob3B0cz8uc3RhcnREYXRlKSBwYXJhbXMuc2V0KCdzdGFydERhdGUnLCBvcHRzLnN0YXJ0RGF0ZSk7XG4gICAgaWYgKG9wdHM/LmVuZERhdGUpIHBhcmFtcy5zZXQoJ2VuZERhdGUnLCBvcHRzLmVuZERhdGUpO1xuICAgIGlmIChvcHRzPy5hZ2VudElkKSBwYXJhbXMuc2V0KCdhZ2VudElkJywgb3B0cy5hZ2VudElkKTtcblxuICAgIGNvbnN0IHF1ZXJ5ID0gcGFyYW1zLnRvU3RyaW5nKCk7XG4gICAgcmV0dXJuIGFwaVJlcXVlc3RXaXRoRGF0YTxTaWduYWxTdGF0c1tdPihgL3NpZ25hbHMvc3RhdHMke3F1ZXJ5ID8gYD8ke3F1ZXJ5fWAgOiAnJ31gLCB7XG4gICAgICBhcGlWZXJzaW9uOiAndjEnLFxuICAgIH0pO1xuICB9LFxuXG4gIC8qKlxuICAgKiBHZXQgc2lnbmFsIHRyZW5kIGRhdGEgb3ZlciB0aW1lXG4gICAqXG4gICAqIEBwYXJhbSBvcHRzIC0gRGF0ZSByYW5nZSwgYWdlbnQsIGFuZCBncmFudWxhcml0eSBvcHRpb25zXG4gICAqIEByZXR1cm5zIFNpZ25hbCB0cmVuZCBkYXRhIHBvaW50c1xuICAgKi9cbiAgYXN5bmMgZ2V0VHJlbmRzKG9wdHM/OiBTaWduYWxUcmVuZHNPcHRpb25zKTogUHJvbWlzZTxTaWduYWxUcmVuZFBvaW50W10+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKCk7XG4gICAgaWYgKG9wdHM/LnN0YXJ0RGF0ZSkgcGFyYW1zLnNldCgnc3RhcnREYXRlJywgb3B0cy5zdGFydERhdGUpO1xuICAgIGlmIChvcHRzPy5lbmREYXRlKSBwYXJhbXMuc2V0KCdlbmREYXRlJywgb3B0cy5lbmREYXRlKTtcbiAgICBpZiAob3B0cz8uYWdlbnRJZCkgcGFyYW1zLnNldCgnYWdlbnRJZCcsIG9wdHMuYWdlbnRJZCk7XG4gICAgaWYgKG9wdHM/LmdyYW51bGFyaXR5KSBwYXJhbXMuc2V0KCdncmFudWxhcml0eScsIG9wdHMuZ3JhbnVsYXJpdHkpO1xuXG4gICAgY29uc3QgcXVlcnkgPSBwYXJhbXMudG9TdHJpbmcoKTtcbiAgICByZXR1cm4gYXBpUmVxdWVzdFdpdGhEYXRhPFNpZ25hbFRyZW5kUG9pbnRbXT4oYC9zaWduYWxzL3RyZW5kcyR7cXVlcnkgPyBgPyR7cXVlcnl9YCA6ICcnfWAsIHtcbiAgICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgfSk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIEdldCB0cmFjZXMgdGhhdCB0cmlnZ2VyZWQgYSBzcGVjaWZpYyBzaWduYWxcbiAgICpcbiAgICogQHBhcmFtIGlkIC0gU2lnbmFsIElEXG4gICAqIEBwYXJhbSBvcHRzIC0gUGFnaW5hdGlvbiBhbmQgZmlsdGVyIG9wdGlvbnNcbiAgICogQHJldHVybnMgVHJhY2VzIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2lnbmFsXG4gICAqL1xuICBhc3luYyBnZXRUcmFjZXMoaWQ6IHN0cmluZywgb3B0cz86IFNpZ25hbFRyYWNlc09wdGlvbnMpOiBQcm9taXNlPHtcbiAgICB0cmFjZXM6IGFueVtdO1xuICAgIGxpbWl0OiBudW1iZXI7XG4gICAgb2Zmc2V0OiBudW1iZXI7XG4gICAgaGFzTW9yZTogYm9vbGVhbjtcbiAgfT4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoKTtcbiAgICBpZiAob3B0cz8ubGltaXQgIT09IHVuZGVmaW5lZCkgcGFyYW1zLnNldCgnbGltaXQnLCBTdHJpbmcob3B0cy5saW1pdCkpO1xuICAgIGlmIChvcHRzPy5vZmZzZXQgIT09IHVuZGVmaW5lZCkgcGFyYW1zLnNldCgnb2Zmc2V0JywgU3RyaW5nKG9wdHMub2Zmc2V0KSk7XG4gICAgaWYgKG9wdHM/LnN0YXJ0RGF0ZSkgcGFyYW1zLnNldCgnc3RhcnREYXRlJywgb3B0cy5zdGFydERhdGUpO1xuICAgIGlmIChvcHRzPy5lbmREYXRlKSBwYXJhbXMuc2V0KCdlbmREYXRlJywgb3B0cy5lbmREYXRlKTtcbiAgICBpZiAob3B0cz8uYWdlbnRJZCkgcGFyYW1zLnNldCgnYWdlbnRJZCcsIG9wdHMuYWdlbnRJZCk7XG5cbiAgICBjb25zdCBxdWVyeSA9IHBhcmFtcy50b1N0cmluZygpO1xuICAgIHJldHVybiBhcGlSZXF1ZXN0V2l0aERhdGEoYC9zaWduYWxzLyR7aWR9L3RyYWNlcyR7cXVlcnkgPyBgPyR7cXVlcnl9YCA6ICcnfWAsIHtcbiAgICAgIGFwaVZlcnNpb246ICd2MScsXG4gICAgfSk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIEdldCBldmVudHMgZm9yIGEgc3BlY2lmaWMgc2lnbmFsXG4gICAqXG4gICAqIEBwYXJhbSBpZCAtIFNpZ25hbCBJRFxuICAgKiBAcGFyYW0gb3B0cyAtIFBhZ2luYXRpb24gb3B0aW9uc1xuICAgKiBAcmV0dXJucyBTaWduYWwgZXZlbnRzXG4gICAqL1xuICBhc3luYyBnZXRFdmVudHMoaWQ6IHN0cmluZywgb3B0cz86IFNpZ25hbEV2ZW50c09wdGlvbnMpOiBQcm9taXNlPHtcbiAgICBldmVudHM6IFNpZ25hbEV2ZW50W107XG4gICAgbGltaXQ6IG51bWJlcjtcbiAgICBvZmZzZXQ6IG51bWJlcjtcbiAgICBoYXNNb3JlOiBib29sZWFuO1xuICB9PiB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcygpO1xuICAgIGlmIChvcHRzPy5saW1pdCAhPT0gdW5kZWZpbmVkKSBwYXJhbXMuc2V0KCdsaW1pdCcsIFN0cmluZyhvcHRzLmxpbWl0KSk7XG4gICAgaWYgKG9wdHM/Lm9mZnNldCAhPT0gdW5kZWZpbmVkKSBwYXJhbXMuc2V0KCdvZmZzZXQnLCBTdHJpbmcob3B0cy5vZmZzZXQpKTtcblxuICAgIGNvbnN0IHF1ZXJ5ID0gcGFyYW1zLnRvU3RyaW5nKCk7XG4gICAgcmV0dXJuIGFwaVJlcXVlc3RXaXRoRGF0YShgL3NpZ25hbHMvJHtpZH0vZXZlbnRzJHtxdWVyeSA/IGA/JHtxdWVyeX1gIDogJyd9YCwge1xuICAgICAgYXBpVmVyc2lvbjogJ3YxJyxcbiAgICB9KTtcbiAgfSxcbn07XG5cbmV4cG9ydCB7IHNpZ25hbHMgYXMgZGVmYXVsdCB9O1xuIl19
|
package/dist/core/client.d.ts
CHANGED
|
@@ -13,6 +13,8 @@ export interface RequestOptions {
|
|
|
13
13
|
maxRetries?: number;
|
|
14
14
|
/** Request timeout in milliseconds */
|
|
15
15
|
timeout?: number;
|
|
16
|
+
/** Use path as-is without prepending /api/ prefix (for routes like /v1/guardrails/scan) */
|
|
17
|
+
rawPath?: boolean;
|
|
16
18
|
}
|
|
17
19
|
/**
|
|
18
20
|
* Make an authenticated API request with retry logic
|