@hypercli.com/sdk 2026.4.13-3 → 2026.4.13-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/agent.d.ts +350 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +620 -0
- package/dist/agent.js.map +1 -0
- package/dist/agents.d.ts +433 -0
- package/dist/agents.d.ts.map +1 -0
- package/dist/agents.js +1140 -0
- package/dist/agents.js.map +1 -0
- package/dist/billing.d.ts +72 -0
- package/dist/billing.d.ts.map +1 -0
- package/dist/billing.js +93 -0
- package/dist/billing.js.map +1 -0
- package/dist/browser.d.ts +25 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +33 -0
- package/dist/browser.js.map +1 -0
- package/dist/client.d.ts +67 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +100 -0
- package/dist/client.js.map +1 -0
- package/dist/config.d.ts +46 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +235 -0
- package/dist/config.js.map +1 -0
- package/dist/errors.d.ts +9 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +15 -0
- package/dist/errors.js.map +1 -0
- package/dist/files.d.ts +60 -0
- package/dist/files.d.ts.map +1 -0
- package/dist/files.js +128 -0
- package/dist/files.js.map +1 -0
- package/dist/gateway.d.ts +2 -0
- package/dist/gateway.d.ts.map +1 -0
- package/dist/gateway.js +2 -0
- package/dist/gateway.js.map +1 -0
- package/dist/http.d.ts +42 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +238 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +42 -0
- package/dist/index.js.map +1 -0
- package/dist/instances.d.ts +94 -0
- package/dist/instances.d.ts.map +1 -0
- package/dist/instances.js +197 -0
- package/dist/instances.js.map +1 -0
- package/dist/job/base.d.ts +80 -0
- package/dist/job/base.d.ts.map +1 -0
- package/dist/job/base.js +200 -0
- package/dist/job/base.js.map +1 -0
- package/dist/job/comfyui.d.ts +75 -0
- package/dist/job/comfyui.d.ts.map +1 -0
- package/dist/job/comfyui.js +454 -0
- package/dist/job/comfyui.js.map +1 -0
- package/dist/job/gradio.d.ts +48 -0
- package/dist/job/gradio.d.ts.map +1 -0
- package/dist/job/gradio.js +90 -0
- package/dist/job/gradio.js.map +1 -0
- package/dist/jobs.d.ts +153 -0
- package/dist/jobs.d.ts.map +1 -0
- package/dist/jobs.js +352 -0
- package/dist/jobs.js.map +1 -0
- package/dist/keys.d.ts +83 -0
- package/dist/keys.d.ts.map +1 -0
- package/dist/keys.js +69 -0
- package/dist/keys.js.map +1 -0
- package/dist/logs.d.ts +54 -0
- package/dist/logs.d.ts.map +1 -0
- package/dist/logs.js +256 -0
- package/dist/logs.js.map +1 -0
- package/dist/models.d.ts +15 -0
- package/dist/models.d.ts.map +1 -0
- package/dist/models.js +19 -0
- package/dist/models.js.map +1 -0
- package/dist/openclaw/gateway.d.ts +269 -0
- package/dist/openclaw/gateway.d.ts.map +1 -0
- package/dist/openclaw/gateway.js +2021 -0
- package/dist/openclaw/gateway.js.map +1 -0
- package/dist/renders.d.ts +187 -0
- package/dist/renders.d.ts.map +1 -0
- package/dist/renders.js +360 -0
- package/dist/renders.js.map +1 -0
- package/dist/user.d.ts +49 -0
- package/dist/user.d.ts.map +1 -0
- package/dist/user.js +57 -0
- package/dist/user.js.map +1 -0
- package/dist/voice.d.ts +31 -0
- package/dist/voice.d.ts.map +1 -0
- package/dist/voice.js +36 -0
- package/dist/voice.js.map +1 -0
- package/dist/x402.d.ts +79 -0
- package/dist/x402.d.ts.map +1 -0
- package/dist/x402.js +295 -0
- package/dist/x402.js.map +1 -0
- package/package.json +2 -1
package/dist/config.js
ADDED
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
function getNodeRequire() {
|
|
2
|
+
try {
|
|
3
|
+
return (0, eval)('require');
|
|
4
|
+
}
|
|
5
|
+
catch {
|
|
6
|
+
return null;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
function getNodeConfigPaths() {
|
|
10
|
+
const req = getNodeRequire();
|
|
11
|
+
if (!req)
|
|
12
|
+
return null;
|
|
13
|
+
try {
|
|
14
|
+
const { homedir } = req('os');
|
|
15
|
+
const { join } = req('path');
|
|
16
|
+
const configDir = join(homedir(), '.hypercli');
|
|
17
|
+
return {
|
|
18
|
+
configDir,
|
|
19
|
+
configFile: join(configDir, 'config'),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export const CONFIG_DIR = getNodeConfigPaths()?.configDir || '.hypercli';
|
|
27
|
+
export const CONFIG_FILE = getNodeConfigPaths()?.configFile || '.hypercli/config';
|
|
28
|
+
export const DEFAULT_API_URL = 'https://api.hypercli.com';
|
|
29
|
+
export const DEFAULT_WS_URL = 'wss://api.hypercli.com';
|
|
30
|
+
export const DEFAULT_AGENTS_API_BASE_URL = 'https://api.hypercli.com/agents';
|
|
31
|
+
export const DEFAULT_AGENTS_WS_URL = 'wss://api.agents.hypercli.com/ws';
|
|
32
|
+
export const DEV_AGENTS_API_BASE_URL = 'https://api.dev.hypercli.com/agents';
|
|
33
|
+
export const DEV_AGENTS_WS_URL = 'wss://api.agents.dev.hypercli.com/ws';
|
|
34
|
+
export const WS_LOGS_PATH = '/orchestra/ws/logs'; // WebSocket path for job logs
|
|
35
|
+
// GHCR images
|
|
36
|
+
export const GHCR_IMAGES = 'ghcr.io/compute3ai/images';
|
|
37
|
+
export const COMFYUI_IMAGE = `${GHCR_IMAGES}/comfyui`;
|
|
38
|
+
function normalizeAgentsApiBase(url) {
|
|
39
|
+
const raw = (url || '').trim();
|
|
40
|
+
if (!raw)
|
|
41
|
+
return DEFAULT_AGENTS_API_BASE_URL;
|
|
42
|
+
const parsed = new URL(raw.includes('://') ? raw : `https://${raw}`);
|
|
43
|
+
const normalizedPath = parsed.pathname.replace(/\/+$/, '');
|
|
44
|
+
const host = parsed.host.toLowerCase();
|
|
45
|
+
if (normalizedPath.endsWith('/agents')) {
|
|
46
|
+
return `${parsed.origin}${normalizedPath}`;
|
|
47
|
+
}
|
|
48
|
+
if (normalizedPath.endsWith('/api')) {
|
|
49
|
+
if (host === 'api.agents.hypercli.com') {
|
|
50
|
+
return DEFAULT_AGENTS_API_BASE_URL;
|
|
51
|
+
}
|
|
52
|
+
if (host === 'api.agents.dev.hypercli.com') {
|
|
53
|
+
return DEV_AGENTS_API_BASE_URL;
|
|
54
|
+
}
|
|
55
|
+
return `${parsed.origin}${normalizedPath.slice(0, -4)}/agents`;
|
|
56
|
+
}
|
|
57
|
+
if (host === 'api.agents.hypercli.com' || host === 'api.hypercli.com' || host === 'api.hyperclaw.app') {
|
|
58
|
+
return DEFAULT_AGENTS_API_BASE_URL;
|
|
59
|
+
}
|
|
60
|
+
if (host === 'api.agents.dev.hypercli.com' ||
|
|
61
|
+
host === 'api.dev.hypercli.com' ||
|
|
62
|
+
host === 'api.dev.hyperclaw.app' ||
|
|
63
|
+
host === 'dev-api.hyperclaw.app') {
|
|
64
|
+
return DEV_AGENTS_API_BASE_URL;
|
|
65
|
+
}
|
|
66
|
+
return `${raw.replace(/\/+$/, '')}/agents`;
|
|
67
|
+
}
|
|
68
|
+
function defaultAgentsWsUrl(apiBase) {
|
|
69
|
+
const resolvedApiBase = normalizeAgentsApiBase(apiBase);
|
|
70
|
+
const parsed = new URL(resolvedApiBase.includes('://') ? resolvedApiBase : `https://${resolvedApiBase}`);
|
|
71
|
+
const host = parsed.host.toLowerCase();
|
|
72
|
+
if (host === 'api.agents.hypercli.com' || host === 'api.hypercli.com' || host === 'api.hyperclaw.app') {
|
|
73
|
+
return DEFAULT_AGENTS_WS_URL;
|
|
74
|
+
}
|
|
75
|
+
if (host === 'api.agents.dev.hypercli.com' ||
|
|
76
|
+
host === 'api.dev.hypercli.com' ||
|
|
77
|
+
host === 'api.dev.hyperclaw.app' ||
|
|
78
|
+
host === 'dev-api.hyperclaw.app') {
|
|
79
|
+
return DEV_AGENTS_WS_URL;
|
|
80
|
+
}
|
|
81
|
+
return resolvedApiBase.replace(/^https:\/\//, 'wss://').replace(/^http:\/\//, 'ws://').replace(/\/+$/, '') + '/ws';
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Load config from ~/.hypercli/config
|
|
85
|
+
*/
|
|
86
|
+
function loadConfigFile() {
|
|
87
|
+
const config = {};
|
|
88
|
+
const req = getNodeRequire();
|
|
89
|
+
if (!req) {
|
|
90
|
+
return config;
|
|
91
|
+
}
|
|
92
|
+
try {
|
|
93
|
+
const { existsSync, readFileSync } = req('fs');
|
|
94
|
+
if (!existsSync(CONFIG_FILE)) {
|
|
95
|
+
return config;
|
|
96
|
+
}
|
|
97
|
+
const content = readFileSync(CONFIG_FILE, 'utf-8');
|
|
98
|
+
for (const line of content.split('\n')) {
|
|
99
|
+
const trimmed = line.trim();
|
|
100
|
+
if (trimmed && !trimmed.startsWith('#') && trimmed.includes('=')) {
|
|
101
|
+
const [key, ...valueParts] = trimmed.split('=');
|
|
102
|
+
config[key.trim()] = valueParts.join('=').trim();
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
// Ignore read errors
|
|
108
|
+
}
|
|
109
|
+
return config;
|
|
110
|
+
}
|
|
111
|
+
function readEnvValue(key) {
|
|
112
|
+
if (typeof process === 'undefined' || !process?.env) {
|
|
113
|
+
return undefined;
|
|
114
|
+
}
|
|
115
|
+
return process.env[key];
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Get config value: env var > config file > default
|
|
119
|
+
*/
|
|
120
|
+
export function getConfigValue(key, defaultValue) {
|
|
121
|
+
// Try environment variable first
|
|
122
|
+
const envVal = readEnvValue(key);
|
|
123
|
+
if (envVal) {
|
|
124
|
+
return envVal;
|
|
125
|
+
}
|
|
126
|
+
// Try config file
|
|
127
|
+
const config = loadConfigFile();
|
|
128
|
+
const fileVal = config[key];
|
|
129
|
+
if (fileVal) {
|
|
130
|
+
return fileVal;
|
|
131
|
+
}
|
|
132
|
+
return defaultValue;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Get API key from env or config file
|
|
136
|
+
*/
|
|
137
|
+
export function getApiKey() {
|
|
138
|
+
return getConfigValue('HYPER_API_KEY') || getConfigValue('HYPERCLI_API_KEY');
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Get agent API key, preferring the restricted agent token.
|
|
142
|
+
*/
|
|
143
|
+
export function getAgentApiKey() {
|
|
144
|
+
return getConfigValue('HYPER_AGENTS_API_KEY') || getApiKey();
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Get API URL
|
|
148
|
+
*/
|
|
149
|
+
export function getApiUrl() {
|
|
150
|
+
return getConfigValue('HYPER_API_BASE') || getConfigValue('HYPERCLI_API_URL', DEFAULT_API_URL) || DEFAULT_API_URL;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Get WebSocket URL
|
|
154
|
+
*/
|
|
155
|
+
export function getWsUrl() {
|
|
156
|
+
const ws = getConfigValue('HYPERCLI_WS_URL');
|
|
157
|
+
if (ws) {
|
|
158
|
+
return ws;
|
|
159
|
+
}
|
|
160
|
+
// Derive from API URL
|
|
161
|
+
const apiUrl = getApiUrl();
|
|
162
|
+
return apiUrl.replace('https://', 'wss://').replace('http://', 'ws://');
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Get HyperClaw agents API base URL
|
|
166
|
+
*/
|
|
167
|
+
export function getAgentsApiBaseUrl(dev = false) {
|
|
168
|
+
const fallback = dev ? DEV_AGENTS_API_BASE_URL : DEFAULT_AGENTS_API_BASE_URL;
|
|
169
|
+
const configured = getConfigValue('AGENTS_API_BASE_URL');
|
|
170
|
+
if (configured) {
|
|
171
|
+
return normalizeAgentsApiBase(configured);
|
|
172
|
+
}
|
|
173
|
+
if (dev) {
|
|
174
|
+
return fallback;
|
|
175
|
+
}
|
|
176
|
+
const productBase = getConfigValue('HYPER_API_BASE') || getConfigValue('HYPERCLI_API_URL');
|
|
177
|
+
if (productBase) {
|
|
178
|
+
return normalizeAgentsApiBase(productBase);
|
|
179
|
+
}
|
|
180
|
+
return fallback;
|
|
181
|
+
}
|
|
182
|
+
export function getAgentsApiBaseUrlFromProductBase(productBase) {
|
|
183
|
+
return normalizeAgentsApiBase(productBase);
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Get HyperClaw agents WebSocket URL
|
|
187
|
+
*/
|
|
188
|
+
export function getAgentsWsUrl(dev = false) {
|
|
189
|
+
const configured = getConfigValue('AGENTS_WS_URL');
|
|
190
|
+
if (configured) {
|
|
191
|
+
return configured;
|
|
192
|
+
}
|
|
193
|
+
return defaultAgentsWsUrl(getAgentsApiBaseUrl(dev));
|
|
194
|
+
}
|
|
195
|
+
export function getAgentsWsUrlFromProductBase(productBase) {
|
|
196
|
+
return defaultAgentsWsUrl(getAgentsApiBaseUrlFromProductBase(productBase));
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Save configuration to ~/.hypercli/config
|
|
200
|
+
*/
|
|
201
|
+
export function configure(apiKey, apiUrl, agentsApiBaseUrl, agentsWsUrl) {
|
|
202
|
+
const req = getNodeRequire();
|
|
203
|
+
if (!req) {
|
|
204
|
+
throw new Error('configure() is only available in Node.js environments');
|
|
205
|
+
}
|
|
206
|
+
const { existsSync, writeFileSync, mkdirSync, chmodSync } = req('fs');
|
|
207
|
+
// Create directory if it doesn't exist
|
|
208
|
+
if (!existsSync(CONFIG_DIR)) {
|
|
209
|
+
mkdirSync(CONFIG_DIR, { recursive: true });
|
|
210
|
+
}
|
|
211
|
+
// Load existing config
|
|
212
|
+
const config = loadConfigFile();
|
|
213
|
+
// Update values
|
|
214
|
+
config['HYPER_API_KEY'] = apiKey;
|
|
215
|
+
if (apiUrl) {
|
|
216
|
+
config['HYPER_API_BASE'] = apiUrl;
|
|
217
|
+
}
|
|
218
|
+
if (agentsApiBaseUrl) {
|
|
219
|
+
config['AGENTS_API_BASE_URL'] = agentsApiBaseUrl;
|
|
220
|
+
}
|
|
221
|
+
if (agentsWsUrl) {
|
|
222
|
+
config['AGENTS_WS_URL'] = agentsWsUrl;
|
|
223
|
+
}
|
|
224
|
+
// Write config file
|
|
225
|
+
const lines = Object.entries(config).map(([k, v]) => `${k}=${v}`);
|
|
226
|
+
writeFileSync(CONFIG_FILE, lines.join('\n') + '\n', 'utf-8');
|
|
227
|
+
// Set permissions to 0600 (owner read/write only)
|
|
228
|
+
try {
|
|
229
|
+
chmodSync(CONFIG_FILE, 0o600);
|
|
230
|
+
}
|
|
231
|
+
catch {
|
|
232
|
+
// Ignore permission errors (Windows doesn't support chmod)
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;aAEf,UAAU,EAAE,MAAM;aAClB,MAAM,EAAE,MAAM;gBADd,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM;CAMjC"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API error with status code and detail message
|
|
3
|
+
*/
|
|
4
|
+
export class APIError extends Error {
|
|
5
|
+
statusCode;
|
|
6
|
+
detail;
|
|
7
|
+
constructor(statusCode, detail) {
|
|
8
|
+
super(`API Error ${statusCode}: ${detail}`);
|
|
9
|
+
this.statusCode = statusCode;
|
|
10
|
+
this.detail = detail;
|
|
11
|
+
this.name = 'APIError';
|
|
12
|
+
Object.setPrototypeOf(this, APIError.prototype);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IAEf;IACA;IAFlB,YACkB,UAAkB,EAClB,MAAc;QAE9B,KAAK,CAAC,aAAa,UAAU,KAAK,MAAM,EAAE,CAAC,CAAC;QAH5B,eAAU,GAAV,UAAU,CAAQ;QAClB,WAAM,GAAN,MAAM,CAAQ;QAG9B,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;CACF"}
|
package/dist/files.d.ts
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Files API - upload assets for use in renders
|
|
3
|
+
*/
|
|
4
|
+
import type { HTTPClient } from './http.js';
|
|
5
|
+
export interface File {
|
|
6
|
+
id: string;
|
|
7
|
+
userId: string;
|
|
8
|
+
filename: string;
|
|
9
|
+
contentType: string;
|
|
10
|
+
fileSize: number;
|
|
11
|
+
url: string;
|
|
12
|
+
state: string | null;
|
|
13
|
+
error: string | null;
|
|
14
|
+
createdAt: string | null;
|
|
15
|
+
}
|
|
16
|
+
export declare class Files {
|
|
17
|
+
private http;
|
|
18
|
+
constructor(http: HTTPClient);
|
|
19
|
+
/**
|
|
20
|
+
* Upload a file for use in renders
|
|
21
|
+
*/
|
|
22
|
+
upload(filePath: string): Promise<File>;
|
|
23
|
+
/**
|
|
24
|
+
* Upload file bytes directly
|
|
25
|
+
*/
|
|
26
|
+
uploadBytes(content: Buffer, filename: string, contentType: string): Promise<File>;
|
|
27
|
+
/**
|
|
28
|
+
* Upload a file from a URL (async backend processing)
|
|
29
|
+
*/
|
|
30
|
+
uploadUrl(url: string, path?: string): Promise<File>;
|
|
31
|
+
/**
|
|
32
|
+
* Upload a file from base64-encoded data (async backend processing)
|
|
33
|
+
*/
|
|
34
|
+
uploadB64(data: string, filename: string, contentType?: string, path?: string): Promise<File>;
|
|
35
|
+
/**
|
|
36
|
+
* Get file metadata and URL
|
|
37
|
+
*/
|
|
38
|
+
get(fileId: string): Promise<File>;
|
|
39
|
+
/**
|
|
40
|
+
* Delete an uploaded file
|
|
41
|
+
*/
|
|
42
|
+
delete(fileId: string): Promise<any>;
|
|
43
|
+
/**
|
|
44
|
+
* Wait for an async upload to complete
|
|
45
|
+
*/
|
|
46
|
+
waitReady(fileId: string, timeout?: number, pollInterval?: number): Promise<File>;
|
|
47
|
+
/**
|
|
48
|
+
* Check if file is ready
|
|
49
|
+
*/
|
|
50
|
+
isReady(file: File): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Check if file upload failed
|
|
53
|
+
*/
|
|
54
|
+
isFailed(file: File): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Check if file is processing
|
|
57
|
+
*/
|
|
58
|
+
isProcessing(file: File): boolean;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=files.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAI5C,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAgBD,qBAAa,KAAK;IACJ,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEpC;;OAEG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB7C;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQxF;;OAEG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1D;;OAEG;IACG,SAAS,CACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC;IAShB;;OAEG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxC;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAI1C;;OAEG;IACG,SAAS,CACb,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAAc,EACvB,YAAY,GAAE,MAAa,GAC1B,OAAO,CAAC,IAAI,CAAC;IAoBhB;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAI5B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAI7B;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;CAGlC"}
|
package/dist/files.js
ADDED
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { readFileSync } from 'fs';
|
|
2
|
+
import { basename } from 'path';
|
|
3
|
+
function fileFromDict(data) {
|
|
4
|
+
return {
|
|
5
|
+
id: data.id || '',
|
|
6
|
+
userId: data.user_id || '',
|
|
7
|
+
filename: data.filename || '',
|
|
8
|
+
contentType: data.content_type || '',
|
|
9
|
+
fileSize: data.file_size || 0,
|
|
10
|
+
url: data.url || '',
|
|
11
|
+
state: data.state || null,
|
|
12
|
+
error: data.error || null,
|
|
13
|
+
createdAt: data.created_at || null,
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export class Files {
|
|
17
|
+
http;
|
|
18
|
+
constructor(http) {
|
|
19
|
+
this.http = http;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Upload a file for use in renders
|
|
23
|
+
*/
|
|
24
|
+
async upload(filePath) {
|
|
25
|
+
const content = readFileSync(filePath);
|
|
26
|
+
const filename = basename(filePath);
|
|
27
|
+
// Guess content type
|
|
28
|
+
let contentType = 'application/octet-stream';
|
|
29
|
+
if (filename.endsWith('.png'))
|
|
30
|
+
contentType = 'image/png';
|
|
31
|
+
else if (filename.endsWith('.jpg') || filename.endsWith('.jpeg'))
|
|
32
|
+
contentType = 'image/jpeg';
|
|
33
|
+
else if (filename.endsWith('.gif'))
|
|
34
|
+
contentType = 'image/gif';
|
|
35
|
+
else if (filename.endsWith('.webp'))
|
|
36
|
+
contentType = 'image/webp';
|
|
37
|
+
else if (filename.endsWith('.mp3'))
|
|
38
|
+
contentType = 'audio/mpeg';
|
|
39
|
+
else if (filename.endsWith('.wav'))
|
|
40
|
+
contentType = 'audio/wav';
|
|
41
|
+
else if (filename.endsWith('.mp4'))
|
|
42
|
+
contentType = 'video/mp4';
|
|
43
|
+
else if (filename.endsWith('.webm'))
|
|
44
|
+
contentType = 'video/webm';
|
|
45
|
+
return this.uploadBytes(content, filename, contentType);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Upload file bytes directly
|
|
49
|
+
*/
|
|
50
|
+
async uploadBytes(content, filename, contentType) {
|
|
51
|
+
const files = {
|
|
52
|
+
file: { filename, content, contentType },
|
|
53
|
+
};
|
|
54
|
+
const data = await this.http.postMultipart('/api/files/multi', files);
|
|
55
|
+
return fileFromDict(data);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Upload a file from a URL (async backend processing)
|
|
59
|
+
*/
|
|
60
|
+
async uploadUrl(url, path) {
|
|
61
|
+
const payload = { url };
|
|
62
|
+
if (path)
|
|
63
|
+
payload.path = path;
|
|
64
|
+
const data = await this.http.post('/api/files/url', payload);
|
|
65
|
+
return fileFromDict(data);
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Upload a file from base64-encoded data (async backend processing)
|
|
69
|
+
*/
|
|
70
|
+
async uploadB64(data, filename, contentType, path) {
|
|
71
|
+
const payload = { data, filename };
|
|
72
|
+
if (contentType)
|
|
73
|
+
payload.content_type = contentType;
|
|
74
|
+
if (path)
|
|
75
|
+
payload.path = path;
|
|
76
|
+
const result = await this.http.post('/api/files/b64', payload);
|
|
77
|
+
return fileFromDict(result);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Get file metadata and URL
|
|
81
|
+
*/
|
|
82
|
+
async get(fileId) {
|
|
83
|
+
const data = await this.http.get(`/api/files/${fileId}`);
|
|
84
|
+
return fileFromDict(data);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Delete an uploaded file
|
|
88
|
+
*/
|
|
89
|
+
async delete(fileId) {
|
|
90
|
+
return await this.http.delete(`/api/files/${fileId}`);
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Wait for an async upload to complete
|
|
94
|
+
*/
|
|
95
|
+
async waitReady(fileId, timeout = 60000, pollInterval = 1000) {
|
|
96
|
+
const start = Date.now();
|
|
97
|
+
while (Date.now() - start < timeout) {
|
|
98
|
+
const file = await this.get(fileId);
|
|
99
|
+
if (file.state === 'done') {
|
|
100
|
+
return file;
|
|
101
|
+
}
|
|
102
|
+
if (file.state === 'failed') {
|
|
103
|
+
throw new Error(`File upload failed: ${file.error}`);
|
|
104
|
+
}
|
|
105
|
+
await new Promise(resolve => setTimeout(resolve, pollInterval));
|
|
106
|
+
}
|
|
107
|
+
throw new Error(`File ${fileId} did not complete within ${timeout}ms`);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Check if file is ready
|
|
111
|
+
*/
|
|
112
|
+
isReady(file) {
|
|
113
|
+
return file.state === 'done';
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Check if file upload failed
|
|
117
|
+
*/
|
|
118
|
+
isFailed(file) {
|
|
119
|
+
return file.state === 'failed';
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Check if file is processing
|
|
123
|
+
*/
|
|
124
|
+
isProcessing(file) {
|
|
125
|
+
return file.state === 'processing';
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"files.js","sourceRoot":"","sources":["../src/files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway.d.ts","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
|
package/dist/gateway.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateway.js","sourceRoot":"","sources":["../src/gateway.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
|
package/dist/http.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export interface RequestOptions {
|
|
2
|
+
method: string;
|
|
3
|
+
url: string;
|
|
4
|
+
headers?: Record<string, string>;
|
|
5
|
+
body?: any;
|
|
6
|
+
params?: Record<string, string | number | Array<string | number>>;
|
|
7
|
+
retries?: number;
|
|
8
|
+
backoff?: number;
|
|
9
|
+
timeout?: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Make an HTTP request with retry logic for transient errors
|
|
13
|
+
*/
|
|
14
|
+
export declare function requestWithRetry(options: RequestOptions): Promise<Response>;
|
|
15
|
+
/**
|
|
16
|
+
* HTTP Client for making authenticated requests to the API
|
|
17
|
+
*/
|
|
18
|
+
export declare class HTTPClient {
|
|
19
|
+
private baseUrl;
|
|
20
|
+
private apiKey;
|
|
21
|
+
private timeout;
|
|
22
|
+
constructor(baseUrl: string, apiKey: string, timeout?: number);
|
|
23
|
+
private get headers();
|
|
24
|
+
get<T = any>(path: string, params?: Record<string, string | number | Array<string | number>>): Promise<T>;
|
|
25
|
+
post<T = any>(path: string, body?: any): Promise<T>;
|
|
26
|
+
postBytes(path: string, body?: any): Promise<Uint8Array>;
|
|
27
|
+
patch<T = any>(path: string, body?: any): Promise<T>;
|
|
28
|
+
delete<T = any>(path: string): Promise<T>;
|
|
29
|
+
/**
|
|
30
|
+
* POST with multipart form data for file uploads
|
|
31
|
+
*/
|
|
32
|
+
postMultipart<T = any>(path: string, files: Record<string, {
|
|
33
|
+
filename: string;
|
|
34
|
+
content: Buffer;
|
|
35
|
+
contentType: string;
|
|
36
|
+
}>, params?: Record<string, string>): Promise<T>;
|
|
37
|
+
/**
|
|
38
|
+
* Streaming POST for SSE responses
|
|
39
|
+
*/
|
|
40
|
+
streamPost(path: string, body?: any): AsyncGenerator<string>;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC,CAwEjF;AAuCD;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAc;IAMpE,OAAO,KAAK,OAAO,GAKlB;IAEK,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAWzG,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAWnD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC;IAWxD,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC;IAWpD,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAU/C;;OAEG;IACG,aAAa,CAAC,CAAC,GAAG,GAAG,EACzB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,EACjF,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,OAAO,CAAC,CAAC,CAAC;IAkCb;;OAEG;IACI,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC;CA6CpE"}
|