@meshagent/meshagent 0.36.3 → 0.37.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/CHANGELOG.md +16 -0
- package/dist/browser/agent-client.d.ts +2 -10
- package/dist/browser/agent-client.js +2 -30
- package/dist/browser/agent.d.ts +22 -22
- package/dist/browser/agent.js +36 -16
- package/dist/browser/containers-client.d.ts +7 -19
- package/dist/browser/containers-client.js +27 -21
- package/dist/browser/data-types.d.ts +12 -0
- package/dist/browser/data-types.js +39 -1
- package/dist/browser/database-client.d.ts +134 -47
- package/dist/browser/database-client.js +359 -133
- package/dist/browser/index.d.ts +1 -0
- package/dist/browser/index.js +1 -0
- package/dist/browser/meshagent-client.js +12 -1
- package/dist/browser/participant-token.d.ts +189 -22
- package/dist/browser/participant-token.js +1001 -189
- package/dist/browser/room-client.d.ts +1 -1
- package/dist/browser/services-client.d.ts +1 -1
- package/dist/browser/version.d.ts +1 -0
- package/dist/browser/version.js +4 -0
- package/dist/esm/agent-client.d.ts +2 -10
- package/dist/esm/agent-client.js +1 -28
- package/dist/esm/agent.d.ts +22 -22
- package/dist/esm/agent.js +33 -14
- package/dist/esm/containers-client.d.ts +7 -19
- package/dist/esm/containers-client.js +27 -21
- package/dist/esm/data-types.d.ts +12 -0
- package/dist/esm/data-types.js +36 -0
- package/dist/esm/database-client.d.ts +134 -47
- package/dist/esm/database-client.js +352 -132
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/meshagent-client.js +12 -1
- package/dist/esm/participant-token.d.ts +189 -22
- package/dist/esm/participant-token.js +992 -188
- package/dist/esm/room-client.d.ts +1 -1
- package/dist/esm/services-client.d.ts +1 -1
- package/dist/esm/version.d.ts +1 -0
- package/dist/esm/version.js +1 -0
- package/dist/node/agent-client.d.ts +2 -10
- package/dist/node/agent-client.js +2 -30
- package/dist/node/agent.d.ts +22 -22
- package/dist/node/agent.js +36 -16
- package/dist/node/containers-client.d.ts +7 -19
- package/dist/node/containers-client.js +27 -21
- package/dist/node/data-types.d.ts +12 -0
- package/dist/node/data-types.js +39 -1
- package/dist/node/database-client.d.ts +134 -47
- package/dist/node/database-client.js +359 -133
- package/dist/node/index.d.ts +1 -0
- package/dist/node/index.js +1 -0
- package/dist/node/meshagent-client.js +12 -1
- package/dist/node/participant-token.d.ts +189 -22
- package/dist/node/participant-token.js +1001 -189
- package/dist/node/room-client.d.ts +1 -1
- package/dist/node/services-client.d.ts +1 -1
- package/dist/node/version.d.ts +1 -0
- package/dist/node/version.js +4 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
## [0.37.1]
|
|
2
|
+
- Added `useAuth` to the React auth package to handle OAuth redirect/callback, token refresh, and profile loading without React Query, plus a `useEnsureLogin` compatibility wrapper.
|
|
3
|
+
- React auth `useMAuthResponse` now deduplicates token exchanges per callback parameters to avoid repeated exchanges on re-renders.
|
|
4
|
+
- Breaking: React auth no longer exports React Query `QueryClient` or `QueryClientProvider`.
|
|
5
|
+
- Breaking: `useLoginScope` now delegates to `useAuth` and defaults the OAuth scope to `email`.
|
|
6
|
+
- Breaking: the `staticAuthorization` helper was removed from the React room connection utilities.
|
|
7
|
+
- React dev terminal hooks now return `RefObject`-typed `containerRef` values for stronger typing.
|
|
8
|
+
- Meshagent TS client now normalizes binary request bodies for fetch and includes TypeScript declarations for runtime entrypoint functions.
|
|
9
|
+
|
|
10
|
+
## [0.37.0]
|
|
11
|
+
- Breaking: Database client now supports `json`, `uuid`, `list`, and `struct` types with typed wrappers (DatabaseJson/DatabaseStruct/DatabaseExpression/DatabaseDate/DatabaseUuid); list/struct values must be wrapped and update now takes `values` only.
|
|
12
|
+
- Breaking: Containers build now streams build contexts (start/data chunks) with `mountPath`/`chunks` and removes `start_build`.
|
|
13
|
+
- Breaking: Toolkit/hosting refactor replaces RemoteToolkit with startHostedToolkit/HostedToolkit, removes ToolkitConfiguration and `supports_context`, and updates React/Tailwind helpers to start hosted toolkits.
|
|
14
|
+
- Participant tokens now include LLM grants and richer grant serialization (including allowed toolkits and extra payload preservation), and schema helpers add `json`/`uuid` data types.
|
|
15
|
+
- The JS SDK now exports its version constant for client-side visibility.
|
|
16
|
+
|
|
1
17
|
## [0.36.3]
|
|
2
18
|
- Storage client now supports move operations and emits file moved events.
|
|
3
19
|
- Secrets client now supports existence checks.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RoomClient } from "./room-client";
|
|
2
|
-
import { Content } from "./response";
|
|
2
|
+
import type { Content } from "./response";
|
|
3
3
|
import { ToolContentSpec } from "./tool-content-type";
|
|
4
4
|
export declare class ToolDescription {
|
|
5
5
|
title: string;
|
|
@@ -10,8 +10,7 @@ export declare class ToolDescription {
|
|
|
10
10
|
defs?: Record<string, any>;
|
|
11
11
|
thumbnailUrl?: string;
|
|
12
12
|
pricing?: string;
|
|
13
|
-
|
|
14
|
-
constructor({ title, name, description, inputSchema, inputSpec, outputSpec, outputSchema, thumbnailUrl, defs, pricing, supportsContext }: {
|
|
13
|
+
constructor({ title, name, description, inputSchema, inputSpec, outputSpec, outputSchema, thumbnailUrl, defs, pricing }: {
|
|
15
14
|
title: string;
|
|
16
15
|
name: string;
|
|
17
16
|
description: string;
|
|
@@ -22,7 +21,6 @@ export declare class ToolDescription {
|
|
|
22
21
|
thumbnailUrl?: string;
|
|
23
22
|
defs?: Record<string, any>;
|
|
24
23
|
pricing?: string;
|
|
25
|
-
supportsContext?: boolean;
|
|
26
24
|
});
|
|
27
25
|
get inputSchema(): Record<string, any> | undefined;
|
|
28
26
|
get outputSchema(): Record<string, any> | undefined;
|
|
@@ -49,12 +47,6 @@ export declare class ToolkitDescription {
|
|
|
49
47
|
name?: string;
|
|
50
48
|
}): ToolkitDescription;
|
|
51
49
|
}
|
|
52
|
-
export declare class ToolkitConfiguration {
|
|
53
|
-
name: string;
|
|
54
|
-
use?: string[] | undefined;
|
|
55
|
-
constructor(name: string, use?: string[] | undefined);
|
|
56
|
-
toJson(): Record<string, any>;
|
|
57
|
-
}
|
|
58
50
|
export declare class AgentsClient {
|
|
59
51
|
private client;
|
|
60
52
|
constructor({ room }: {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AgentsClient = exports.
|
|
3
|
+
exports.AgentsClient = exports.ToolkitDescription = exports.ToolDescription = void 0;
|
|
4
4
|
const tool_content_type_1 = require("./tool-content-type");
|
|
5
5
|
class ToolDescription {
|
|
6
|
-
constructor({ title, name, description, inputSchema, inputSpec, outputSpec, outputSchema, thumbnailUrl, defs, pricing
|
|
6
|
+
constructor({ title, name, description, inputSchema, inputSpec, outputSpec, outputSchema, thumbnailUrl, defs, pricing }) {
|
|
7
7
|
this.title = title;
|
|
8
8
|
this.name = name;
|
|
9
9
|
this.description = description;
|
|
@@ -44,7 +44,6 @@ class ToolDescription {
|
|
|
44
44
|
this.thumbnailUrl = thumbnailUrl;
|
|
45
45
|
this.defs = defs;
|
|
46
46
|
this.pricing = pricing;
|
|
47
|
-
this.supportsContext = supportsContext ?? false;
|
|
48
47
|
}
|
|
49
48
|
get inputSchema() {
|
|
50
49
|
return this.inputSpec?.schema;
|
|
@@ -85,7 +84,6 @@ class ToolkitDescription {
|
|
|
85
84
|
thumbnail_url: tool.thumbnailUrl,
|
|
86
85
|
defs: tool.defs,
|
|
87
86
|
pricing: tool.pricing,
|
|
88
|
-
supports_context: tool.supportsContext,
|
|
89
87
|
})),
|
|
90
88
|
};
|
|
91
89
|
}
|
|
@@ -110,7 +108,6 @@ class ToolkitDescription {
|
|
|
110
108
|
thumbnailUrl: tool["thumbnail_url"],
|
|
111
109
|
defs: tool["defs"],
|
|
112
110
|
pricing: tool["pricing"],
|
|
113
|
-
supportsContext: tool["supports_context"] ?? tool["supportsContext"],
|
|
114
111
|
}));
|
|
115
112
|
}
|
|
116
113
|
}
|
|
@@ -129,7 +126,6 @@ class ToolkitDescription {
|
|
|
129
126
|
thumbnailUrl: tool["thumbnail_url"],
|
|
130
127
|
defs: tool["defs"],
|
|
131
128
|
pricing: tool["pricing"],
|
|
132
|
-
supportsContext: tool["supports_context"] ?? tool["supportsContext"],
|
|
133
129
|
}));
|
|
134
130
|
}
|
|
135
131
|
}
|
|
@@ -144,30 +140,6 @@ class ToolkitDescription {
|
|
|
144
140
|
}
|
|
145
141
|
}
|
|
146
142
|
exports.ToolkitDescription = ToolkitDescription;
|
|
147
|
-
class ToolkitConfiguration {
|
|
148
|
-
constructor(name, use) {
|
|
149
|
-
this.name = name;
|
|
150
|
-
this.use = use;
|
|
151
|
-
}
|
|
152
|
-
toJson() {
|
|
153
|
-
if (!this.use) {
|
|
154
|
-
return {
|
|
155
|
-
[this.name]: {},
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
else {
|
|
159
|
-
return {
|
|
160
|
-
[this.name]: {
|
|
161
|
-
use: this.use.reduce((acc, tool) => {
|
|
162
|
-
acc[tool] = {};
|
|
163
|
-
return acc;
|
|
164
|
-
}, {}),
|
|
165
|
-
},
|
|
166
|
-
};
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
exports.ToolkitConfiguration = ToolkitConfiguration;
|
|
171
143
|
class AgentsClient {
|
|
172
144
|
constructor({ room }) {
|
|
173
145
|
this.client = room;
|
package/dist/browser/agent.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { RoomClient } from "./room-client";
|
|
2
2
|
import { RequiredToolkit } from "./requirement";
|
|
3
|
-
import { Content } from "./response";
|
|
3
|
+
import { type Content } from "./response";
|
|
4
4
|
import { ToolContentSpec } from "./tool-content-type";
|
|
5
5
|
export declare abstract class Tool {
|
|
6
6
|
readonly name: string;
|
|
@@ -23,10 +23,18 @@ export declare abstract class Tool {
|
|
|
23
23
|
get outputSchema(): Record<string, any> | undefined;
|
|
24
24
|
abstract execute(arguments_: Record<string, any>): Promise<Content>;
|
|
25
25
|
}
|
|
26
|
-
export declare
|
|
26
|
+
export declare class Toolkit {
|
|
27
|
+
readonly name: string;
|
|
28
|
+
readonly title: string;
|
|
29
|
+
readonly description: string;
|
|
30
|
+
readonly thumbnailUrl?: string;
|
|
27
31
|
readonly tools: Tool[];
|
|
28
32
|
readonly rules: string[];
|
|
29
|
-
constructor({ tools, rules }: {
|
|
33
|
+
constructor({ name, title, description, thumbnailUrl, tools, rules }: {
|
|
34
|
+
name: string;
|
|
35
|
+
title?: string;
|
|
36
|
+
description?: string;
|
|
37
|
+
thumbnailUrl?: string;
|
|
30
38
|
tools: Tool[];
|
|
31
39
|
rules?: string[];
|
|
32
40
|
});
|
|
@@ -34,28 +42,20 @@ export declare abstract class Toolkit {
|
|
|
34
42
|
getTools(): Record<string, any>;
|
|
35
43
|
execute(name: string, args: Record<string, any>): Promise<Content>;
|
|
36
44
|
}
|
|
37
|
-
export declare
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
constructor({ name, title, description, room, tools, rules }: {
|
|
44
|
-
name: string;
|
|
45
|
-
title: string;
|
|
46
|
-
description: string;
|
|
47
|
-
room: RoomClient;
|
|
48
|
-
tools: Tool[];
|
|
49
|
-
rules?: string[];
|
|
45
|
+
export declare class HostedToolkit {
|
|
46
|
+
readonly toolkit: Toolkit;
|
|
47
|
+
private readonly _stopHostedToolkit;
|
|
48
|
+
constructor({ toolkit, stopHostedToolkit }: {
|
|
49
|
+
toolkit: Toolkit;
|
|
50
|
+
stopHostedToolkit: () => Promise<void>;
|
|
50
51
|
});
|
|
51
|
-
start({ public_: isPublic }?: {
|
|
52
|
-
public_?: boolean;
|
|
53
|
-
}): Promise<void>;
|
|
54
52
|
stop(): Promise<void>;
|
|
55
|
-
private _register;
|
|
56
|
-
private _unregister;
|
|
57
|
-
private _toolCall;
|
|
58
53
|
}
|
|
54
|
+
export declare function startHostedToolkit({ room, toolkit, public_: isPublic }: {
|
|
55
|
+
room: RoomClient;
|
|
56
|
+
toolkit: Toolkit;
|
|
57
|
+
public_?: boolean;
|
|
58
|
+
}): Promise<HostedToolkit>;
|
|
59
59
|
export declare abstract class RemoteTaskRunner {
|
|
60
60
|
protected readonly client: RoomClient;
|
|
61
61
|
protected readonly name: string;
|
package/dist/browser/agent.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RemoteTaskRunner = exports.
|
|
3
|
+
exports.RemoteTaskRunner = exports.HostedToolkit = exports.Toolkit = exports.Tool = void 0;
|
|
4
|
+
exports.startHostedToolkit = startHostedToolkit;
|
|
4
5
|
const response_1 = require("./response");
|
|
5
6
|
const tool_content_type_1 = require("./tool-content-type");
|
|
6
7
|
const utils_1 = require("./utils");
|
|
@@ -54,7 +55,11 @@ class Tool {
|
|
|
54
55
|
}
|
|
55
56
|
exports.Tool = Tool;
|
|
56
57
|
class Toolkit {
|
|
57
|
-
constructor({ tools, rules = [] }) {
|
|
58
|
+
constructor({ name, title = name, description = "", thumbnailUrl, tools, rules = [] }) {
|
|
59
|
+
this.name = name;
|
|
60
|
+
this.title = title;
|
|
61
|
+
this.description = description;
|
|
62
|
+
this.thumbnailUrl = thumbnailUrl;
|
|
58
63
|
this.tools = tools;
|
|
59
64
|
this.rules = rules;
|
|
60
65
|
}
|
|
@@ -83,30 +88,38 @@ class Toolkit {
|
|
|
83
88
|
}
|
|
84
89
|
}
|
|
85
90
|
exports.Toolkit = Toolkit;
|
|
86
|
-
class
|
|
87
|
-
constructor({
|
|
88
|
-
|
|
91
|
+
class HostedToolkit {
|
|
92
|
+
constructor({ toolkit, stopHostedToolkit }) {
|
|
93
|
+
this.toolkit = toolkit;
|
|
94
|
+
this._stopHostedToolkit = stopHostedToolkit;
|
|
95
|
+
}
|
|
96
|
+
async stop() {
|
|
97
|
+
await this._stopHostedToolkit();
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
exports.HostedToolkit = HostedToolkit;
|
|
101
|
+
class _RemoteToolkitWrapper {
|
|
102
|
+
constructor({ toolkit, room }) {
|
|
103
|
+
this.toolkit = toolkit;
|
|
89
104
|
this.client = room;
|
|
90
|
-
this.name = name;
|
|
91
|
-
this.title = title;
|
|
92
|
-
this.description = description;
|
|
93
105
|
}
|
|
94
106
|
async start({ public_: isPublic = false } = {}) {
|
|
95
107
|
const handler = this._toolCall.bind(this);
|
|
96
|
-
this.client.protocol.addHandler(`room.tool_call.${this.name}`, handler);
|
|
108
|
+
this.client.protocol.addHandler(`room.tool_call.${this.toolkit.name}`, handler);
|
|
97
109
|
await this._register(isPublic);
|
|
98
110
|
}
|
|
99
111
|
async stop() {
|
|
100
112
|
await this._unregister();
|
|
101
|
-
this.client.protocol.removeHandler(`room.tool_call.${this.name}`);
|
|
113
|
+
this.client.protocol.removeHandler(`room.tool_call.${this.toolkit.name}`);
|
|
102
114
|
}
|
|
103
115
|
async _register(public_) {
|
|
104
116
|
const response = await this.client.sendRequest("room.register_toolkit", {
|
|
105
|
-
name: this.name,
|
|
106
|
-
title: this.title,
|
|
107
|
-
description: this.description,
|
|
108
|
-
tools: this.getTools(),
|
|
117
|
+
name: this.toolkit.name,
|
|
118
|
+
title: this.toolkit.title,
|
|
119
|
+
description: this.toolkit.description,
|
|
120
|
+
tools: this.toolkit.getTools(),
|
|
109
121
|
public: public_,
|
|
122
|
+
thumbnail_url: this.toolkit.thumbnailUrl,
|
|
110
123
|
});
|
|
111
124
|
const json = response.json;
|
|
112
125
|
this._registrationId = json["id"];
|
|
@@ -143,7 +156,7 @@ class RemoteToolkit extends Toolkit {
|
|
|
143
156
|
else {
|
|
144
157
|
args = rawArguments ?? {};
|
|
145
158
|
}
|
|
146
|
-
const response = await this.execute(toolName, args);
|
|
159
|
+
const response = await this.toolkit.execute(toolName, args);
|
|
147
160
|
await this.client.protocol.send("room.tool_call_response", response.pack(), messageId);
|
|
148
161
|
}
|
|
149
162
|
catch (e) {
|
|
@@ -152,7 +165,14 @@ class RemoteToolkit extends Toolkit {
|
|
|
152
165
|
}
|
|
153
166
|
}
|
|
154
167
|
}
|
|
155
|
-
|
|
168
|
+
async function startHostedToolkit({ room, toolkit, public_: isPublic = false }) {
|
|
169
|
+
const wrapper = new _RemoteToolkitWrapper({ toolkit, room });
|
|
170
|
+
await wrapper.start({ public_: isPublic });
|
|
171
|
+
return new HostedToolkit({
|
|
172
|
+
toolkit,
|
|
173
|
+
stopHostedToolkit: () => wrapper.stop(),
|
|
174
|
+
});
|
|
175
|
+
}
|
|
156
176
|
class RemoteTaskRunner {
|
|
157
177
|
constructor({ name, description, client, inputSchema, outputSchema, supportsTools = false, required = [], }) {
|
|
158
178
|
this.client = client;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ContainerMountSpec } from "./meshagent-client";
|
|
2
|
-
import { Content } from "./response";
|
|
1
|
+
import type { ContainerMountSpec } from "./meshagent-client";
|
|
2
|
+
import { type Content } from "./response";
|
|
3
3
|
import { RoomClient } from "./room-client";
|
|
4
4
|
export interface DockerSecret {
|
|
5
5
|
username: string;
|
|
@@ -138,29 +138,17 @@ export declare class ContainersClient {
|
|
|
138
138
|
writableRootFs?: boolean;
|
|
139
139
|
private?: boolean;
|
|
140
140
|
}): Promise<string>;
|
|
141
|
-
startBuild(params: {
|
|
142
|
-
tag: string;
|
|
143
|
-
mounts: ContainerMountSpec[];
|
|
144
|
-
contextPath: string;
|
|
145
|
-
dockerfilePath?: string;
|
|
146
|
-
private?: boolean;
|
|
147
|
-
credentials?: DockerSecret[];
|
|
148
|
-
contextArchivePath?: string;
|
|
149
|
-
contextArchiveRef?: string;
|
|
150
|
-
contextArchiveMountPath?: string;
|
|
151
|
-
contextArchiveArch?: string;
|
|
152
|
-
}): Promise<string>;
|
|
153
141
|
build(params: {
|
|
154
142
|
tag: string;
|
|
155
|
-
|
|
143
|
+
mountPath: string;
|
|
156
144
|
contextPath: string;
|
|
145
|
+
chunks: AsyncIterable<Uint8Array>;
|
|
157
146
|
dockerfilePath?: string;
|
|
147
|
+
optimizeImage?: boolean;
|
|
158
148
|
private?: boolean;
|
|
159
149
|
credentials?: DockerSecret[];
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
contextArchiveMountPath?: string;
|
|
163
|
-
contextArchiveArch?: string;
|
|
150
|
+
builderName?: string;
|
|
151
|
+
size?: number;
|
|
164
152
|
}): Promise<string>;
|
|
165
153
|
listBuilds(): Promise<BuildJob[]>;
|
|
166
154
|
cancelBuild(params: {
|
|
@@ -134,19 +134,28 @@ function parseBuildJob(data, operation) {
|
|
|
134
134
|
exitCode: readOptionalIntegerField(data, "exit_code", operation),
|
|
135
135
|
};
|
|
136
136
|
}
|
|
137
|
-
function
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
137
|
+
async function* buildInputStream(params) {
|
|
138
|
+
yield new response_1.BinaryContent({
|
|
139
|
+
data: new Uint8Array(0),
|
|
140
|
+
headers: {
|
|
141
|
+
kind: "start",
|
|
142
|
+
tag: params.tag,
|
|
143
|
+
mount_path: params.mountPath,
|
|
144
|
+
context_path: params.contextPath,
|
|
145
|
+
dockerfile_path: params.dockerfilePath ?? null,
|
|
146
|
+
optimize_image: params.optimizeImage ?? true,
|
|
147
|
+
private: params.private ?? false,
|
|
148
|
+
credentials: toCredentials(params.credentials ?? []),
|
|
149
|
+
builder_name: params.builderName ?? null,
|
|
150
|
+
size: params.size ?? null,
|
|
151
|
+
},
|
|
152
|
+
});
|
|
153
|
+
for await (const chunk of params.chunks) {
|
|
154
|
+
yield new response_1.BinaryContent({
|
|
155
|
+
data: new Uint8Array(chunk),
|
|
156
|
+
headers: { kind: "data" },
|
|
157
|
+
});
|
|
158
|
+
}
|
|
150
159
|
}
|
|
151
160
|
class ExecSession {
|
|
152
161
|
constructor(params) {
|
|
@@ -387,15 +396,12 @@ class ContainersClient {
|
|
|
387
396
|
}
|
|
388
397
|
return readStringField(output.json, "container_id", "run");
|
|
389
398
|
}
|
|
390
|
-
async startBuild(params) {
|
|
391
|
-
const output = await this.invoke("start_build", buildRequestPayload(params));
|
|
392
|
-
if (!(output instanceof response_1.JsonContent) || !isRecord(output.json)) {
|
|
393
|
-
throw this.unexpectedResponseError("start_build");
|
|
394
|
-
}
|
|
395
|
-
return readStringField(output.json, "build_id", "start_build");
|
|
396
|
-
}
|
|
397
399
|
async build(params) {
|
|
398
|
-
const output = await this.
|
|
400
|
+
const output = await this.room.invokeWithStreamInput({
|
|
401
|
+
toolkit: "containers",
|
|
402
|
+
tool: "build",
|
|
403
|
+
input: buildInputStream(params),
|
|
404
|
+
});
|
|
399
405
|
if (!(output instanceof response_1.JsonContent) || !isRecord(output.json)) {
|
|
400
406
|
throw this.unexpectedResponseError("build");
|
|
401
407
|
}
|
|
@@ -11,6 +11,8 @@ export declare abstract class DataType {
|
|
|
11
11
|
elementType: DataType;
|
|
12
12
|
}): VectorDataType;
|
|
13
13
|
static text(): TextDataType;
|
|
14
|
+
static json(): JsonDataType;
|
|
15
|
+
static uuid(): UuidDataType;
|
|
14
16
|
static binary(): BinaryDataType;
|
|
15
17
|
}
|
|
16
18
|
export declare class BoolDataType extends DataType {
|
|
@@ -48,6 +50,16 @@ export declare class TextDataType extends DataType {
|
|
|
48
50
|
static fromJson(data: any): TextDataType;
|
|
49
51
|
toJson(): Record<string, unknown>;
|
|
50
52
|
}
|
|
53
|
+
export declare class JsonDataType extends DataType {
|
|
54
|
+
constructor();
|
|
55
|
+
static fromJson(data: any): JsonDataType;
|
|
56
|
+
toJson(): Record<string, unknown>;
|
|
57
|
+
}
|
|
58
|
+
export declare class UuidDataType extends DataType {
|
|
59
|
+
constructor();
|
|
60
|
+
static fromJson(data: any): UuidDataType;
|
|
61
|
+
toJson(): Record<string, unknown>;
|
|
62
|
+
}
|
|
51
63
|
export declare class BinaryDataType extends DataType {
|
|
52
64
|
constructor();
|
|
53
65
|
static fromJson(data: any): BinaryDataType;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BinaryDataType = exports.TextDataType = exports.VectorDataType = exports.FloatDataType = exports.DateDataType = exports.IntDataType = exports.BoolDataType = exports.DataType = exports._dataTypes = void 0;
|
|
3
|
+
exports.BinaryDataType = exports.UuidDataType = exports.JsonDataType = exports.TextDataType = exports.VectorDataType = exports.FloatDataType = exports.DateDataType = exports.IntDataType = exports.BoolDataType = exports.DataType = exports._dataTypes = void 0;
|
|
4
4
|
exports._dataTypes = {};
|
|
5
5
|
class DataType {
|
|
6
6
|
constructor(_) { }
|
|
@@ -26,6 +26,12 @@ class DataType {
|
|
|
26
26
|
static text() {
|
|
27
27
|
return new TextDataType();
|
|
28
28
|
}
|
|
29
|
+
static json() {
|
|
30
|
+
return new JsonDataType();
|
|
31
|
+
}
|
|
32
|
+
static uuid() {
|
|
33
|
+
return new UuidDataType();
|
|
34
|
+
}
|
|
29
35
|
static binary() {
|
|
30
36
|
return new BinaryDataType();
|
|
31
37
|
}
|
|
@@ -136,6 +142,38 @@ class TextDataType extends DataType {
|
|
|
136
142
|
}
|
|
137
143
|
exports.TextDataType = TextDataType;
|
|
138
144
|
exports._dataTypes["text"] = TextDataType;
|
|
145
|
+
class JsonDataType extends DataType {
|
|
146
|
+
constructor() {
|
|
147
|
+
super();
|
|
148
|
+
}
|
|
149
|
+
static fromJson(data) {
|
|
150
|
+
if (data.type !== "json") {
|
|
151
|
+
throw new Error(`Expected type 'json', got '${data.type}'`);
|
|
152
|
+
}
|
|
153
|
+
return new JsonDataType();
|
|
154
|
+
}
|
|
155
|
+
toJson() {
|
|
156
|
+
return { type: "json" };
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
exports.JsonDataType = JsonDataType;
|
|
160
|
+
exports._dataTypes["json"] = JsonDataType;
|
|
161
|
+
class UuidDataType extends DataType {
|
|
162
|
+
constructor() {
|
|
163
|
+
super();
|
|
164
|
+
}
|
|
165
|
+
static fromJson(data) {
|
|
166
|
+
if (data.type !== "uuid") {
|
|
167
|
+
throw new Error(`Expected type 'uuid', got '${data.type}'`);
|
|
168
|
+
}
|
|
169
|
+
return new UuidDataType();
|
|
170
|
+
}
|
|
171
|
+
toJson() {
|
|
172
|
+
return { type: "uuid" };
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
exports.UuidDataType = UuidDataType;
|
|
176
|
+
exports._dataTypes["uuid"] = UuidDataType;
|
|
139
177
|
class BinaryDataType extends DataType {
|
|
140
178
|
constructor() {
|
|
141
179
|
super();
|