@vertesia/client 0.42.2
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/LICENSE +13 -0
- package/lib/cjs/AccountApi.js +66 -0
- package/lib/cjs/AccountApi.js.map +1 -0
- package/lib/cjs/AccountsApi.js +13 -0
- package/lib/cjs/AccountsApi.js.map +1 -0
- package/lib/cjs/AnalyticsApi.js +13 -0
- package/lib/cjs/AnalyticsApi.js.map +1 -0
- package/lib/cjs/ApiKeysApi.js +63 -0
- package/lib/cjs/ApiKeysApi.js.map +1 -0
- package/lib/cjs/CommandsApi.js +19 -0
- package/lib/cjs/CommandsApi.js.map +1 -0
- package/lib/cjs/EnvironmentsApi.js +58 -0
- package/lib/cjs/EnvironmentsApi.js.map +1 -0
- package/lib/cjs/IamApi.js +51 -0
- package/lib/cjs/IamApi.js.map +1 -0
- package/lib/cjs/InteractionBase.js +44 -0
- package/lib/cjs/InteractionBase.js.map +1 -0
- package/lib/cjs/InteractionsApi.js +184 -0
- package/lib/cjs/InteractionsApi.js.map +1 -0
- package/lib/cjs/ProjectsApi.js +48 -0
- package/lib/cjs/ProjectsApi.js.map +1 -0
- package/lib/cjs/PromptsApi.js +133 -0
- package/lib/cjs/PromptsApi.js.map +1 -0
- package/lib/cjs/RefsApi.js +14 -0
- package/lib/cjs/RefsApi.js.map +1 -0
- package/lib/cjs/RunsApi.js +79 -0
- package/lib/cjs/RunsApi.js.map +1 -0
- package/lib/cjs/StreamSource.js +17 -0
- package/lib/cjs/StreamSource.js.map +1 -0
- package/lib/cjs/TrainingApi.js +54 -0
- package/lib/cjs/TrainingApi.js.map +1 -0
- package/lib/cjs/UsersApi.js +13 -0
- package/lib/cjs/UsersApi.js.map +1 -0
- package/lib/cjs/client.js +161 -0
- package/lib/cjs/client.js.map +1 -0
- package/lib/cjs/execute.js +146 -0
- package/lib/cjs/execute.js.map +1 -0
- package/lib/cjs/index.js +22 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/package.json +3 -0
- package/lib/cjs/store/CommandsApi.js +33 -0
- package/lib/cjs/store/CommandsApi.js.map +1 -0
- package/lib/cjs/store/FilesApi.js +122 -0
- package/lib/cjs/store/FilesApi.js.map +1 -0
- package/lib/cjs/store/ObjectsApi.js +185 -0
- package/lib/cjs/store/ObjectsApi.js.map +1 -0
- package/lib/cjs/store/TypesApi.js +52 -0
- package/lib/cjs/store/TypesApi.js.map +1 -0
- package/lib/cjs/store/WorkflowsApi.js +92 -0
- package/lib/cjs/store/WorkflowsApi.js.map +1 -0
- package/lib/cjs/store/client.js +49 -0
- package/lib/cjs/store/client.js.map +1 -0
- package/lib/cjs/store/errors.js +11 -0
- package/lib/cjs/store/errors.js.map +1 -0
- package/lib/cjs/store/index.js +22 -0
- package/lib/cjs/store/index.js.map +1 -0
- package/lib/esm/AccountApi.js +63 -0
- package/lib/esm/AccountApi.js.map +1 -0
- package/lib/esm/AccountsApi.js +10 -0
- package/lib/esm/AccountsApi.js.map +1 -0
- package/lib/esm/AnalyticsApi.js +10 -0
- package/lib/esm/AnalyticsApi.js.map +1 -0
- package/lib/esm/ApiKeysApi.js +59 -0
- package/lib/esm/ApiKeysApi.js.map +1 -0
- package/lib/esm/CommandsApi.js +16 -0
- package/lib/esm/CommandsApi.js.map +1 -0
- package/lib/esm/EnvironmentsApi.js +55 -0
- package/lib/esm/EnvironmentsApi.js.map +1 -0
- package/lib/esm/IamApi.js +45 -0
- package/lib/esm/IamApi.js.map +1 -0
- package/lib/esm/InteractionBase.js +40 -0
- package/lib/esm/InteractionBase.js.map +1 -0
- package/lib/esm/InteractionsApi.js +181 -0
- package/lib/esm/InteractionsApi.js.map +1 -0
- package/lib/esm/ProjectsApi.js +45 -0
- package/lib/esm/ProjectsApi.js.map +1 -0
- package/lib/esm/PromptsApi.js +130 -0
- package/lib/esm/PromptsApi.js.map +1 -0
- package/lib/esm/RefsApi.js +10 -0
- package/lib/esm/RefsApi.js.map +1 -0
- package/lib/esm/RunsApi.js +75 -0
- package/lib/esm/RunsApi.js.map +1 -0
- package/lib/esm/StreamSource.js +13 -0
- package/lib/esm/StreamSource.js.map +1 -0
- package/lib/esm/TrainingApi.js +51 -0
- package/lib/esm/TrainingApi.js.map +1 -0
- package/lib/esm/UsersApi.js +10 -0
- package/lib/esm/UsersApi.js.map +1 -0
- package/lib/esm/client.js +154 -0
- package/lib/esm/client.js.map +1 -0
- package/lib/esm/execute.js +108 -0
- package/lib/esm/execute.js.map +1 -0
- package/lib/esm/index.js +6 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/store/CommandsApi.js +28 -0
- package/lib/esm/store/CommandsApi.js.map +1 -0
- package/lib/esm/store/FilesApi.js +117 -0
- package/lib/esm/store/FilesApi.js.map +1 -0
- package/lib/esm/store/ObjectsApi.js +181 -0
- package/lib/esm/store/ObjectsApi.js.map +1 -0
- package/lib/esm/store/TypesApi.js +48 -0
- package/lib/esm/store/TypesApi.js.map +1 -0
- package/lib/esm/store/WorkflowsApi.js +86 -0
- package/lib/esm/store/WorkflowsApi.js.map +1 -0
- package/lib/esm/store/client.js +45 -0
- package/lib/esm/store/client.js.map +1 -0
- package/lib/esm/store/errors.js +7 -0
- package/lib/esm/store/errors.js.map +1 -0
- package/lib/esm/store/index.js +6 -0
- package/lib/esm/store/index.js.map +1 -0
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/lib/types/AccountApi.d.ts +43 -0
- package/lib/types/AccountApi.d.ts.map +1 -0
- package/lib/types/AccountsApi.d.ts +6 -0
- package/lib/types/AccountsApi.d.ts.map +1 -0
- package/lib/types/AnalyticsApi.d.ts +6 -0
- package/lib/types/AnalyticsApi.d.ts.map +1 -0
- package/lib/types/ApiKeysApi.d.ts +42 -0
- package/lib/types/ApiKeysApi.d.ts.map +1 -0
- package/lib/types/CommandsApi.d.ts +10 -0
- package/lib/types/CommandsApi.d.ts.map +1 -0
- package/lib/types/EnvironmentsApi.d.ts +30 -0
- package/lib/types/EnvironmentsApi.d.ts.map +1 -0
- package/lib/types/IamApi.d.ts +39 -0
- package/lib/types/IamApi.d.ts.map +1 -0
- package/lib/types/InteractionBase.d.ts +22 -0
- package/lib/types/InteractionBase.d.ts.map +1 -0
- package/lib/types/InteractionsApi.d.ts +129 -0
- package/lib/types/InteractionsApi.d.ts.map +1 -0
- package/lib/types/ProjectsApi.d.ts +17 -0
- package/lib/types/ProjectsApi.d.ts.map +1 -0
- package/lib/types/PromptsApi.d.ts +106 -0
- package/lib/types/PromptsApi.d.ts.map +1 -0
- package/lib/types/RefsApi.d.ts +6 -0
- package/lib/types/RefsApi.d.ts.map +1 -0
- package/lib/types/RunsApi.d.ts +62 -0
- package/lib/types/RunsApi.d.ts.map +1 -0
- package/lib/types/StreamSource.d.ts +7 -0
- package/lib/types/StreamSource.d.ts.map +1 -0
- package/lib/types/TrainingApi.d.ts +27 -0
- package/lib/types/TrainingApi.d.ts.map +1 -0
- package/lib/types/UsersApi.d.ts +6 -0
- package/lib/types/UsersApi.d.ts.map +1 -0
- package/lib/types/client.d.ts +85 -0
- package/lib/types/client.d.ts.map +1 -0
- package/lib/types/execute.d.ts +32 -0
- package/lib/types/execute.d.ts.map +1 -0
- package/lib/types/index.d.ts +8 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/store/CommandsApi.d.ts +13 -0
- package/lib/types/store/CommandsApi.d.ts.map +1 -0
- package/lib/types/store/FilesApi.d.ts +41 -0
- package/lib/types/store/FilesApi.d.ts.map +1 -0
- package/lib/types/store/ObjectsApi.d.ts +76 -0
- package/lib/types/store/ObjectsApi.d.ts.map +1 -0
- package/lib/types/store/TypesApi.d.ts +13 -0
- package/lib/types/store/TypesApi.d.ts.map +1 -0
- package/lib/types/store/WorkflowsApi.d.ts +39 -0
- package/lib/types/store/WorkflowsApi.d.ts.map +1 -0
- package/lib/types/store/client.d.ts +23 -0
- package/lib/types/store/client.d.ts.map +1 -0
- package/lib/types/store/errors.d.ts +4 -0
- package/lib/types/store/errors.d.ts.map +1 -0
- package/lib/types/store/index.d.ts +5 -0
- package/lib/types/store/index.d.ts.map +1 -0
- package/package.json +36 -0
- package/src/AccountApi.ts +75 -0
- package/src/AccountsApi.ts +18 -0
- package/src/AnalyticsApi.ts +20 -0
- package/src/ApiKeysApi.ts +67 -0
- package/src/CommandsApi.ts +23 -0
- package/src/EnvironmentsApi.ts +70 -0
- package/src/IamApi.ts +68 -0
- package/src/InteractionBase.ts +44 -0
- package/src/InteractionsApi.ts +210 -0
- package/src/ProjectsApi.ts +58 -0
- package/src/PromptsApi.ts +160 -0
- package/src/RefsApi.ts +18 -0
- package/src/RunsApi.ts +103 -0
- package/src/StreamSource.ts +3 -0
- package/src/TrainingApi.ts +71 -0
- package/src/UsersApi.ts +18 -0
- package/src/client.ts +191 -0
- package/src/execute.ts +114 -0
- package/src/index.ts +8 -0
- package/src/store/CommandsApi.ts +42 -0
- package/src/store/FilesApi.ts +139 -0
- package/src/store/ObjectsApi.ts +245 -0
- package/src/store/TypesApi.ts +61 -0
- package/src/store/WorkflowsApi.ts +121 -0
- package/src/store/client.ts +61 -0
- package/src/store/errors.ts +7 -0
- package/src/store/index.ts +6 -0
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { ApiTopic, ClientBase } from '@vertesia/api-fetch-client';
|
|
2
|
+
import { ActivityCatalog, CreateWorkflowRulePayload, DSLWorkflowDefinition, DSLWorkflowSpec, ExecuteWorkflowPayload, ListWorkflowRunsPayload, ListWorkflowRunsResponse, WorkflowDefinitionRef, WorkflowRule, WorkflowRuleItem, WorkflowRunWithDetails } from '@vertesia/common';
|
|
3
|
+
|
|
4
|
+
export class WorkflowsApi extends ApiTopic {
|
|
5
|
+
|
|
6
|
+
constructor(parent: ClientBase) {
|
|
7
|
+
super(parent, "/api/v1/workflows");
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
getActivityCatalog(): Promise<ActivityCatalog> {
|
|
11
|
+
return this.get("/activity-catalog");
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
listRuns(documentId: string, eventName: string, ruleId: string): Promise<ListWorkflowRunsResponse> {
|
|
15
|
+
return this.post(`/runs`, { payload: { documentId, eventName, ruleId } });
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
searchRuns(payload: ListWorkflowRunsPayload): Promise<ListWorkflowRunsResponse> {
|
|
19
|
+
return this.post(`/runs`, { payload: payload });
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
getRunDetails(runId: string, workflowId: string): Promise<WorkflowRunWithDetails> {
|
|
23
|
+
return this.get(`/runs/${workflowId}/${runId}`, { query: { workflowId } });
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
terminate(workflowId: string, runId: string, reason?: string): Promise<{ message: string }> {
|
|
27
|
+
return this.post(`/runs/${workflowId}/${runId}/terminate`, { payload: { reason } });
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
cancel(workflowId: string, runId: string, reason?: string): Promise<{ message: string }> {
|
|
31
|
+
return this.post(`/runs/${workflowId}/${runId}/cancel`, { payload: { reason } });
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
execute(name: string, payload: ExecuteWorkflowPayload = {}): Promise<{ runIds: string[] }> {
|
|
35
|
+
return this.post(`/execute/${name}`, { payload });
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
rules = new WorkflowsRulesApi(this);
|
|
39
|
+
definitions = new WorkflowsDefinitionApi(this);
|
|
40
|
+
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
export class WorkflowsRulesApi extends ApiTopic {
|
|
45
|
+
|
|
46
|
+
constructor(parent: WorkflowsApi) {
|
|
47
|
+
super(parent, "/rules");
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
list(): Promise<WorkflowRuleItem[]> {
|
|
52
|
+
return this.get("/");
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
retrieve(id: string): Promise<WorkflowRule> {
|
|
57
|
+
return this.get(`/${id}`);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
update(id: string, payload: any): Promise<WorkflowRule> {
|
|
61
|
+
return this.put(`/${id}`, {
|
|
62
|
+
payload
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
create(payload: CreateWorkflowRulePayload): Promise<WorkflowRule> {
|
|
67
|
+
return this.post("/", {
|
|
68
|
+
payload
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
delete(id: string) {
|
|
73
|
+
return this.del(`/${id}`);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
execute(id: string, objectIds?: string[], vars?: Record<string, any>): Promise<{ runIds: string[] }> {
|
|
78
|
+
const payload: ExecuteWorkflowPayload = {
|
|
79
|
+
objectIds,
|
|
80
|
+
vars
|
|
81
|
+
};
|
|
82
|
+
return this.post(`/${id}/execute`, { payload });
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export class WorkflowsDefinitionApi extends ApiTopic {
|
|
88
|
+
|
|
89
|
+
//model: DSLWorkflowDefinition;
|
|
90
|
+
|
|
91
|
+
constructor(parent: WorkflowsApi) {
|
|
92
|
+
super(parent, "/definitions");
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
list(): Promise<WorkflowDefinitionRef[]> {
|
|
96
|
+
return this.get("/");
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
retrieve(id: string): Promise<DSLWorkflowDefinition> {
|
|
101
|
+
return this.get(`/${id}`);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
update(id: string, payload: any): Promise<DSLWorkflowDefinition> {
|
|
105
|
+
return this.put(`/${id}`, {
|
|
106
|
+
payload
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
create(payload: DSLWorkflowSpec): Promise<DSLWorkflowDefinition> {
|
|
111
|
+
return this.post("/", {
|
|
112
|
+
payload
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
delete(id: string) {
|
|
117
|
+
return this.del(`/${id}`);
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { AbstractFetchClient, RequestError } from "@vertesia/api-fetch-client";
|
|
2
|
+
import { BulkOperationPayload, BulkOperationResult } from "@vertesia/common";
|
|
3
|
+
import { CommandsApi } from "./CommandsApi.js";
|
|
4
|
+
import { ZenoClientNotFoundError } from "./errors.js";
|
|
5
|
+
import { FilesApi } from "./FilesApi.js";
|
|
6
|
+
import { ObjectsApi } from "./ObjectsApi.js";
|
|
7
|
+
import { TypesApi } from "./TypesApi.js";
|
|
8
|
+
import { WorkflowsApi } from "./WorkflowsApi.js";
|
|
9
|
+
|
|
10
|
+
export interface ZenoClientProps {
|
|
11
|
+
serverUrl?: string;
|
|
12
|
+
apikey?: string;
|
|
13
|
+
onRequest?: (request: Request) => void;
|
|
14
|
+
onResponse?: (response: Response) => void;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
function ensureDefined(serverUrl: string | undefined) {
|
|
18
|
+
if (!serverUrl) {
|
|
19
|
+
throw new Error("zeno client serverUrl is required");
|
|
20
|
+
}
|
|
21
|
+
return serverUrl;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export class ZenoClient extends AbstractFetchClient<ZenoClient> {
|
|
25
|
+
|
|
26
|
+
constructor(
|
|
27
|
+
opts: ZenoClientProps = {}
|
|
28
|
+
) {
|
|
29
|
+
super(ensureDefined(opts.serverUrl));
|
|
30
|
+
if (opts.apikey) {
|
|
31
|
+
this.withApiKey(opts.apikey);
|
|
32
|
+
}
|
|
33
|
+
this.onRequest = opts.onRequest;
|
|
34
|
+
this.onResponse = opts.onResponse;
|
|
35
|
+
this.errorFactory = (err: RequestError) => {
|
|
36
|
+
if (err.status === 404) {
|
|
37
|
+
return new ZenoClientNotFoundError(err.request, err);
|
|
38
|
+
} else {
|
|
39
|
+
return err;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
withApiKey(apiKey: string | null) {
|
|
45
|
+
return this.withAuthCallback(
|
|
46
|
+
apiKey ? () => Promise.resolve(`Bearer ${apiKey}`) : undefined
|
|
47
|
+
);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
runOperation(payload: BulkOperationPayload): Promise<BulkOperationResult> {
|
|
51
|
+
return this.post("/api/v1/operations", {
|
|
52
|
+
payload
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
objects = new ObjectsApi(this);
|
|
57
|
+
types = new TypesApi(this);
|
|
58
|
+
workflows = new WorkflowsApi(this);
|
|
59
|
+
files = new FilesApi(this);
|
|
60
|
+
commands = new CommandsApi(this);
|
|
61
|
+
}
|