@parall/daemon 1.56.1 → 1.57.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/bundle/manifest.json +11 -11
- package/bundle/parall-browser-pod.js +207 -41
- package/bundle/parall-claude-agent.js +276 -70
- package/bundle/parall-codex-agent.js +276 -70
- package/bundle/parall-daemon.js +258 -56
- package/package.json +6 -6
package/bundle/parall-daemon.js
CHANGED
|
@@ -178,6 +178,13 @@ var init_browser_viewer = __esm({
|
|
|
178
178
|
}
|
|
179
179
|
});
|
|
180
180
|
|
|
181
|
+
// ts/sdk/dist/browser-use.js
|
|
182
|
+
var init_browser_use = __esm({
|
|
183
|
+
"ts/sdk/dist/browser-use.js"() {
|
|
184
|
+
"use strict";
|
|
185
|
+
}
|
|
186
|
+
});
|
|
187
|
+
|
|
181
188
|
// ts/sdk/dist/attachment-types.js
|
|
182
189
|
var init_attachment_types = __esm({
|
|
183
190
|
"ts/sdk/dist/attachment-types.js"() {
|
|
@@ -225,6 +232,8 @@ var init_constants = __esm({
|
|
|
225
232
|
// Users
|
|
226
233
|
USERS_ME: `${API_BASE}/users/me`,
|
|
227
234
|
USER_AVATAR: `${API_BASE}/users/me/avatar`,
|
|
235
|
+
PERSONAL_API_KEYS: `${API_BASE}/users/me/api-keys`,
|
|
236
|
+
PERSONAL_API_KEY: (keyId) => `${API_BASE}/users/me/api-keys/${keyId}`,
|
|
228
237
|
USER: (id) => `${API_BASE}/users/${id}`,
|
|
229
238
|
// WebSocket ticket
|
|
230
239
|
WS_TICKET: `${API_BASE}/ws/ticket`,
|
|
@@ -239,6 +248,24 @@ var init_constants = __esm({
|
|
|
239
248
|
TEAM_MEMBERS: (orgId, teamId) => `${API_BASE}/orgs/${orgId}/teams/${teamId}/members`,
|
|
240
249
|
TEAM_MEMBER: (orgId, teamId, userId) => `${API_BASE}/orgs/${orgId}/teams/${teamId}/members/${userId}`,
|
|
241
250
|
ORG_MEMBERS_ONLINE: (orgId) => `${API_BASE}/orgs/${orgId}/members/online`,
|
|
251
|
+
LLM_PROVIDERS: (orgId) => `${API_BASE}/orgs/${orgId}/llm-providers`,
|
|
252
|
+
LLM_PROVIDER: (orgId, providerId) => `${API_BASE}/orgs/${orgId}/llm-providers/${providerId}`,
|
|
253
|
+
ORG_LLM_MODELS: (orgId) => `${API_BASE}/orgs/${orgId}/llm-models`,
|
|
254
|
+
ORG_LLM_MODEL: (orgId, modelRowId) => `${API_BASE}/orgs/${orgId}/llm-models/${modelRowId}`,
|
|
255
|
+
/**
|
|
256
|
+
* Platform catalog merged with this org's own model rows. Pass `runtime` to
|
|
257
|
+
* filter org-added models to the ones that runtime can actually reach —
|
|
258
|
+
* without it a picker can offer a model the write path rejects.
|
|
259
|
+
*/
|
|
260
|
+
ORG_MODEL_CATALOG: (orgId, runtime, includeModel) => {
|
|
261
|
+
const params = new URLSearchParams();
|
|
262
|
+
if (runtime)
|
|
263
|
+
params.set("runtime", runtime);
|
|
264
|
+
if (includeModel)
|
|
265
|
+
params.set("include_model", includeModel);
|
|
266
|
+
const qs = params.toString();
|
|
267
|
+
return `${API_BASE}/orgs/${orgId}/models${qs ? `?${qs}` : ""}`;
|
|
268
|
+
},
|
|
242
269
|
ORG_MEMBER: (orgId, userId) => `${API_BASE}/orgs/${orgId}/members/${userId}`,
|
|
243
270
|
ORG_MEMBER_CHATS: (orgId, memberId) => `${API_BASE}/orgs/${orgId}/members/${memberId}/chats`,
|
|
244
271
|
ORG_MEMBER_TASKS: (orgId, memberId) => `${API_BASE}/orgs/${orgId}/members/${memberId}/tasks`,
|
|
@@ -1017,6 +1044,63 @@ var init_wechat_client = __esm({
|
|
|
1017
1044
|
}
|
|
1018
1045
|
});
|
|
1019
1046
|
|
|
1047
|
+
// ts/sdk/dist/llm-provider-client.js
|
|
1048
|
+
var LLMProviderClient;
|
|
1049
|
+
var init_llm_provider_client = __esm({
|
|
1050
|
+
"ts/sdk/dist/llm-provider-client.js"() {
|
|
1051
|
+
"use strict";
|
|
1052
|
+
init_constants();
|
|
1053
|
+
init_wechat_client();
|
|
1054
|
+
LLMProviderClient = class extends WechatClient {
|
|
1055
|
+
async getLLMProviders(orgId) {
|
|
1056
|
+
const response = await this.request("GET", ENDPOINTS.LLM_PROVIDERS(orgId));
|
|
1057
|
+
return response.data;
|
|
1058
|
+
}
|
|
1059
|
+
async createLLMProvider(orgId, data) {
|
|
1060
|
+
return this.request("POST", ENDPOINTS.LLM_PROVIDERS(orgId), data);
|
|
1061
|
+
}
|
|
1062
|
+
/** Omitting `api_key` leaves the stored credential untouched. */
|
|
1063
|
+
async updateLLMProvider(orgId, providerId, data) {
|
|
1064
|
+
return this.request("PATCH", ENDPOINTS.LLM_PROVIDER(orgId, providerId), data);
|
|
1065
|
+
}
|
|
1066
|
+
/** Fails with PROVIDER_IN_USE while model rows still point at it. */
|
|
1067
|
+
async deleteLLMProvider(orgId, providerId) {
|
|
1068
|
+
return this.request("DELETE", ENDPOINTS.LLM_PROVIDER(orgId, providerId));
|
|
1069
|
+
}
|
|
1070
|
+
async getOrgLLMModels(orgId) {
|
|
1071
|
+
const response = await this.request("GET", ENDPOINTS.ORG_LLM_MODELS(orgId));
|
|
1072
|
+
return response.data;
|
|
1073
|
+
}
|
|
1074
|
+
async createOrgLLMModel(orgId, data) {
|
|
1075
|
+
return this.request("POST", ENDPOINTS.ORG_LLM_MODELS(orgId), data);
|
|
1076
|
+
}
|
|
1077
|
+
/**
|
|
1078
|
+
* Patches a model row in place. Repointing a provider or fixing an upstream
|
|
1079
|
+
* name this way avoids the delete-and-recreate window, during which an
|
|
1080
|
+
* org-only model has no upstream at all and its pinned agents fail.
|
|
1081
|
+
*/
|
|
1082
|
+
async updateOrgLLMModel(orgId, modelRowId, data) {
|
|
1083
|
+
return this.request("PATCH", ENDPOINTS.ORG_LLM_MODEL(orgId, modelRowId), data);
|
|
1084
|
+
}
|
|
1085
|
+
async deleteOrgLLMModel(orgId, modelRowId) {
|
|
1086
|
+
return this.request("DELETE", ENDPOINTS.ORG_LLM_MODEL(orgId, modelRowId));
|
|
1087
|
+
}
|
|
1088
|
+
/**
|
|
1089
|
+
* The catalog as this org sees it: platform models with the org's rows
|
|
1090
|
+
* merged in. Distinct from the public model catalog, which stays org-agnostic
|
|
1091
|
+
* and cacheable — use this one wherever an org context exists.
|
|
1092
|
+
*
|
|
1093
|
+
* Pass `runtime` on a picker: org-added models are then filtered to what that
|
|
1094
|
+
* runtime's protocol can reach, matching the server-side pin validation.
|
|
1095
|
+
*/
|
|
1096
|
+
async getOrgModelCatalog(orgId, runtime, includeModel) {
|
|
1097
|
+
const response = await this.request("GET", ENDPOINTS.ORG_MODEL_CATALOG(orgId, runtime, includeModel));
|
|
1098
|
+
return response.data;
|
|
1099
|
+
}
|
|
1100
|
+
};
|
|
1101
|
+
}
|
|
1102
|
+
});
|
|
1103
|
+
|
|
1020
1104
|
// ts/sdk/dist/attachment-client.js
|
|
1021
1105
|
function isRetryableCompletionError(error) {
|
|
1022
1106
|
if (!error || typeof error !== "object" || !("status" in error))
|
|
@@ -1029,9 +1113,9 @@ var init_attachment_client = __esm({
|
|
|
1029
1113
|
"ts/sdk/dist/attachment-client.js"() {
|
|
1030
1114
|
"use strict";
|
|
1031
1115
|
init_constants();
|
|
1032
|
-
|
|
1116
|
+
init_llm_provider_client();
|
|
1033
1117
|
COMPLETION_RETRY_DELAYS_MS = [250, 750];
|
|
1034
|
-
AttachmentClient = class extends
|
|
1118
|
+
AttachmentClient = class extends LLMProviderClient {
|
|
1035
1119
|
async getUploadPresignUrl(orgId, req) {
|
|
1036
1120
|
return this.request("POST", ENDPOINTS.UPLOAD_PRESIGN(orgId), req);
|
|
1037
1121
|
}
|
|
@@ -1061,14 +1145,110 @@ var init_attachment_client = __esm({
|
|
|
1061
1145
|
}
|
|
1062
1146
|
});
|
|
1063
1147
|
|
|
1064
|
-
// ts/sdk/dist/
|
|
1148
|
+
// ts/sdk/dist/wiki-upload.js
|
|
1149
|
+
function createWikiUploadFormData(params) {
|
|
1150
|
+
const form = new FormData();
|
|
1151
|
+
form.append("path", params.path);
|
|
1152
|
+
form.append("file", params.file);
|
|
1153
|
+
if (params.message)
|
|
1154
|
+
form.append("message", params.message);
|
|
1155
|
+
if (params.uploadId)
|
|
1156
|
+
form.append("upload_id", params.uploadId);
|
|
1157
|
+
if (params.conflict)
|
|
1158
|
+
form.append("conflict", params.conflict);
|
|
1159
|
+
if ("contentRoute" in params && params.contentRoute) {
|
|
1160
|
+
form.append("content_route", params.contentRoute);
|
|
1161
|
+
}
|
|
1162
|
+
return form;
|
|
1163
|
+
}
|
|
1164
|
+
function sendMultipartRequest(options) {
|
|
1165
|
+
if (options.onProgress && typeof XMLHttpRequest !== "undefined") {
|
|
1166
|
+
return multipartXHR(options, options.onProgress);
|
|
1167
|
+
}
|
|
1168
|
+
const timeoutSignal = AbortSignal.timeout(options.timeoutMs);
|
|
1169
|
+
const signal = options.signal ? AbortSignal.any([options.signal, timeoutSignal]) : timeoutSignal;
|
|
1170
|
+
return fetch(options.url, {
|
|
1171
|
+
method: options.method,
|
|
1172
|
+
headers: options.headers,
|
|
1173
|
+
body: options.body,
|
|
1174
|
+
signal
|
|
1175
|
+
});
|
|
1176
|
+
}
|
|
1177
|
+
function multipartXHR(options, onProgress) {
|
|
1178
|
+
return new Promise((resolve9, reject) => {
|
|
1179
|
+
const xhr = new XMLHttpRequest();
|
|
1180
|
+
let settled = false;
|
|
1181
|
+
const finish = (fn) => {
|
|
1182
|
+
if (settled)
|
|
1183
|
+
return;
|
|
1184
|
+
settled = true;
|
|
1185
|
+
options.signal?.removeEventListener("abort", abortFromSignal);
|
|
1186
|
+
fn();
|
|
1187
|
+
};
|
|
1188
|
+
const abortFromSignal = () => xhr.abort();
|
|
1189
|
+
xhr.open(options.method, options.url, true);
|
|
1190
|
+
xhr.timeout = options.timeoutMs;
|
|
1191
|
+
for (const [name, value] of Object.entries(options.headers)) {
|
|
1192
|
+
xhr.setRequestHeader(name, value);
|
|
1193
|
+
}
|
|
1194
|
+
xhr.upload.onprogress = (event) => {
|
|
1195
|
+
try {
|
|
1196
|
+
onProgress(event.loaded, event.lengthComputable ? event.total : 0);
|
|
1197
|
+
} catch {
|
|
1198
|
+
}
|
|
1199
|
+
};
|
|
1200
|
+
xhr.onload = () => finish(() => {
|
|
1201
|
+
const responseHeaders = new Headers();
|
|
1202
|
+
for (const line of xhr.getAllResponseHeaders().trim().split(/[\r\n]+/)) {
|
|
1203
|
+
if (!line)
|
|
1204
|
+
continue;
|
|
1205
|
+
const separator = line.indexOf(":");
|
|
1206
|
+
if (separator > 0) {
|
|
1207
|
+
responseHeaders.append(line.slice(0, separator).trim(), line.slice(separator + 1).trim());
|
|
1208
|
+
}
|
|
1209
|
+
}
|
|
1210
|
+
const responseBody = xhr.status === 204 || xhr.responseText === "" ? null : xhr.responseText;
|
|
1211
|
+
resolve9(new Response(responseBody, {
|
|
1212
|
+
status: xhr.status,
|
|
1213
|
+
statusText: xhr.statusText,
|
|
1214
|
+
headers: responseHeaders
|
|
1215
|
+
}));
|
|
1216
|
+
});
|
|
1217
|
+
xhr.onerror = () => finish(() => reject(new TypeError("Network request failed")));
|
|
1218
|
+
xhr.ontimeout = () => finish(() => reject(new DOMException("Request timed out", "TimeoutError")));
|
|
1219
|
+
xhr.onabort = () => finish(() => reject(new DOMException("Request aborted", "AbortError")));
|
|
1220
|
+
if (options.signal?.aborted) {
|
|
1221
|
+
finish(() => reject(new DOMException("Request aborted", "AbortError")));
|
|
1222
|
+
return;
|
|
1223
|
+
}
|
|
1224
|
+
options.signal?.addEventListener("abort", abortFromSignal, { once: true });
|
|
1225
|
+
xhr.send(options.body);
|
|
1226
|
+
});
|
|
1227
|
+
}
|
|
1228
|
+
var init_wiki_upload = __esm({
|
|
1229
|
+
"ts/sdk/dist/wiki-upload.js"() {
|
|
1230
|
+
"use strict";
|
|
1231
|
+
}
|
|
1232
|
+
});
|
|
1233
|
+
|
|
1234
|
+
// ts/sdk/dist/wiki-changeset.js
|
|
1065
1235
|
function normalizeWikiChangeset(changeset) {
|
|
1066
1236
|
return {
|
|
1067
1237
|
...changeset,
|
|
1238
|
+
head_branch: changeset.head_branch ?? null,
|
|
1239
|
+
base_commit: changeset.base_commit ?? null,
|
|
1240
|
+
merge_commit: changeset.merge_commit ?? null,
|
|
1068
1241
|
changed_paths: changeset.changed_paths ?? [],
|
|
1069
1242
|
file_changes: changeset.file_changes ?? []
|
|
1070
1243
|
};
|
|
1071
1244
|
}
|
|
1245
|
+
var init_wiki_changeset = __esm({
|
|
1246
|
+
"ts/sdk/dist/wiki-changeset.js"() {
|
|
1247
|
+
"use strict";
|
|
1248
|
+
}
|
|
1249
|
+
});
|
|
1250
|
+
|
|
1251
|
+
// ts/sdk/dist/client.js
|
|
1072
1252
|
function buildApiError(res, rawErrorBody) {
|
|
1073
1253
|
const errorBody = rawErrorBody !== null && typeof rawErrorBody === "object" ? rawErrorBody : {};
|
|
1074
1254
|
const errorObj = errorBody.error && typeof errorBody.error === "object" ? errorBody.error : void 0;
|
|
@@ -1106,6 +1286,8 @@ var init_client = __esm({
|
|
|
1106
1286
|
init_browser_viewer();
|
|
1107
1287
|
init_constants();
|
|
1108
1288
|
init_attachment_client();
|
|
1289
|
+
init_wiki_upload();
|
|
1290
|
+
init_wiki_changeset();
|
|
1109
1291
|
ParallClient = class _ParallClient extends AttachmentClient {
|
|
1110
1292
|
baseUrl;
|
|
1111
1293
|
wikiBaseUrl;
|
|
@@ -1310,23 +1492,27 @@ var init_client = __esm({
|
|
|
1310
1492
|
* Multipart upload variant of `request`. Same auth / refresh / error
|
|
1311
1493
|
* handling, but lets the caller hand us a prepared `FormData` (file +
|
|
1312
1494
|
* text fields) and skips the JSON content-type. Used by
|
|
1313
|
-
* uploadWikiFile / uploadWikiFileToChangeset — wiki
|
|
1495
|
+
* uploadWikiFile / uploadWikiFileToChangeset — wiki file uploads can
|
|
1314
1496
|
* hit the 100 MiB cap, so a longer 5-minute timeout is used so a
|
|
1315
1497
|
* 50 MiB blob on a slow connection doesn't get chopped at 15 s.
|
|
1316
1498
|
*/
|
|
1317
|
-
async multipartRequest(method, path23, body, retried = false) {
|
|
1499
|
+
async multipartRequest(method, path23, body, retried = false, opts) {
|
|
1318
1500
|
if (!retried) {
|
|
1319
1501
|
await this.ensureFreshToken(path23);
|
|
1320
1502
|
}
|
|
1321
1503
|
const { "Content-Type": _drop, ...headers } = this.buildHeaders(path23);
|
|
1322
1504
|
void _drop;
|
|
1505
|
+
const timeoutMs = opts?.timeoutMs ?? 5 * 60 * 1e3;
|
|
1323
1506
|
let res;
|
|
1324
1507
|
try {
|
|
1325
|
-
res = await
|
|
1508
|
+
res = await sendMultipartRequest({
|
|
1326
1509
|
method,
|
|
1510
|
+
url: `${this.baseUrlFor(path23)}${path23}`,
|
|
1327
1511
|
headers,
|
|
1328
1512
|
body,
|
|
1329
|
-
|
|
1513
|
+
timeoutMs,
|
|
1514
|
+
signal: opts?.signal,
|
|
1515
|
+
onProgress: opts?.onProgress
|
|
1330
1516
|
});
|
|
1331
1517
|
} catch (err) {
|
|
1332
1518
|
throw _ParallClient.normalizeFetchError(err);
|
|
@@ -1337,7 +1523,7 @@ var init_client = __esm({
|
|
|
1337
1523
|
if (!retried && !isAuthPath && this.getRefreshToken) {
|
|
1338
1524
|
const refreshed = await this.tryRefresh();
|
|
1339
1525
|
if (refreshed) {
|
|
1340
|
-
return this.multipartRequest(method, path23, body, true);
|
|
1526
|
+
return this.multipartRequest(method, path23, body, true, opts);
|
|
1341
1527
|
}
|
|
1342
1528
|
}
|
|
1343
1529
|
if (this.onTokenExpired && !isAuthPath) {
|
|
@@ -1416,6 +1602,18 @@ var init_client = __esm({
|
|
|
1416
1602
|
async deleteAvatar() {
|
|
1417
1603
|
return this.request("DELETE", ENDPOINTS.USER_AVATAR);
|
|
1418
1604
|
}
|
|
1605
|
+
// ---- Personal API keys (org-scoped; JWT session required) ----
|
|
1606
|
+
/** Mints an org-scoped personal API key. The plaintext is returned once and never again. */
|
|
1607
|
+
async createPersonalApiKey(req) {
|
|
1608
|
+
return this.request("POST", ENDPOINTS.PERSONAL_API_KEYS, req);
|
|
1609
|
+
}
|
|
1610
|
+
async listPersonalApiKeys() {
|
|
1611
|
+
const res = await this.request("GET", ENDPOINTS.PERSONAL_API_KEYS);
|
|
1612
|
+
return res.data;
|
|
1613
|
+
}
|
|
1614
|
+
async revokePersonalApiKey(keyId) {
|
|
1615
|
+
return this.request("DELETE", ENDPOINTS.PERSONAL_API_KEY(keyId));
|
|
1616
|
+
}
|
|
1419
1617
|
async uploadAgentAvatar(orgId, agentId, file) {
|
|
1420
1618
|
const fd = new FormData();
|
|
1421
1619
|
fd.append("file", file);
|
|
@@ -2634,26 +2832,21 @@ var init_client = __esm({
|
|
|
2634
2832
|
* through createWikiChangeset / updateWikiChangeset.
|
|
2635
2833
|
*/
|
|
2636
2834
|
async uploadWikiFile(orgId, wikiId, params) {
|
|
2637
|
-
const fd =
|
|
2638
|
-
|
|
2639
|
-
|
|
2640
|
-
|
|
2641
|
-
|
|
2642
|
-
return this.multipartRequest("POST", ENDPOINTS.WIKI_UPLOADS(orgId, wikiId), fd);
|
|
2835
|
+
const fd = createWikiUploadFormData(params);
|
|
2836
|
+
return this.multipartRequest("POST", ENDPOINTS.WIKI_UPLOADS(orgId, wikiId), fd, false, {
|
|
2837
|
+
signal: params.signal,
|
|
2838
|
+
onProgress: params.onProgress
|
|
2839
|
+
});
|
|
2643
2840
|
}
|
|
2644
2841
|
/**
|
|
2645
|
-
* Upload a
|
|
2646
|
-
* author-only).
|
|
2647
|
-
*
|
|
2648
|
-
*
|
|
2842
|
+
* Upload a file into a changeset's feature branch (read scope +
|
|
2843
|
+
* author-only). The default remains binary-only; contentRoute `auto`
|
|
2844
|
+
* opts into reviewable text for the Web library upload flow. On merge the
|
|
2845
|
+
* branch contents squash into the default branch.
|
|
2649
2846
|
*/
|
|
2650
2847
|
async uploadWikiFileToChangeset(orgId, wikiId, changesetId, params) {
|
|
2651
|
-
const fd =
|
|
2652
|
-
|
|
2653
|
-
fd.append("file", params.file);
|
|
2654
|
-
if (params.message)
|
|
2655
|
-
fd.append("message", params.message);
|
|
2656
|
-
return this.multipartRequest("POST", ENDPOINTS.WIKI_CHANGESET_FILES(orgId, wikiId, changesetId), fd);
|
|
2848
|
+
const fd = createWikiUploadFormData(params);
|
|
2849
|
+
return this.multipartRequest("POST", ENDPOINTS.WIKI_CHANGESET_FILES(orgId, wikiId, changesetId), fd, false, { signal: params.signal, onProgress: params.onProgress });
|
|
2657
2850
|
}
|
|
2658
2851
|
/** Remove a binary file from the default branch. Text files must use a
|
|
2659
2852
|
* changeset delete action. The blob stays reachable via git history. */
|
|
@@ -3542,6 +3735,13 @@ var init_client = __esm({
|
|
|
3542
3735
|
}
|
|
3543
3736
|
});
|
|
3544
3737
|
|
|
3738
|
+
// ts/sdk/dist/llm-provider-types.js
|
|
3739
|
+
var init_llm_provider_types = __esm({
|
|
3740
|
+
"ts/sdk/dist/llm-provider-types.js"() {
|
|
3741
|
+
"use strict";
|
|
3742
|
+
}
|
|
3743
|
+
});
|
|
3744
|
+
|
|
3545
3745
|
// ts/sdk/dist/subject.js
|
|
3546
3746
|
var init_subject = __esm({
|
|
3547
3747
|
"ts/sdk/dist/subject.js"() {
|
|
@@ -3915,9 +4115,11 @@ var init_dist = __esm({
|
|
|
3915
4115
|
"ts/sdk/dist/index.js"() {
|
|
3916
4116
|
"use strict";
|
|
3917
4117
|
init_browser_viewer();
|
|
4118
|
+
init_browser_use();
|
|
3918
4119
|
init_attachment_types();
|
|
3919
4120
|
init_client();
|
|
3920
4121
|
init_constants();
|
|
4122
|
+
init_llm_provider_types();
|
|
3921
4123
|
init_subject();
|
|
3922
4124
|
init_task_label_types();
|
|
3923
4125
|
init_types();
|
|
@@ -48686,7 +48888,7 @@ var require_headers = __commonJS({
|
|
|
48686
48888
|
}
|
|
48687
48889
|
}
|
|
48688
48890
|
};
|
|
48689
|
-
var
|
|
48891
|
+
var Headers2 = class _Headers {
|
|
48690
48892
|
#guard;
|
|
48691
48893
|
/**
|
|
48692
48894
|
* @type {HeadersList}
|
|
@@ -48827,13 +49029,13 @@ var require_headers = __commonJS({
|
|
|
48827
49029
|
target.#headersList = list;
|
|
48828
49030
|
}
|
|
48829
49031
|
};
|
|
48830
|
-
var { getHeadersGuard, setHeadersGuard, getHeadersList, setHeadersList } =
|
|
48831
|
-
Reflect.deleteProperty(
|
|
48832
|
-
Reflect.deleteProperty(
|
|
48833
|
-
Reflect.deleteProperty(
|
|
48834
|
-
Reflect.deleteProperty(
|
|
48835
|
-
iteratorMixin("Headers",
|
|
48836
|
-
Object.defineProperties(
|
|
49032
|
+
var { getHeadersGuard, setHeadersGuard, getHeadersList, setHeadersList } = Headers2;
|
|
49033
|
+
Reflect.deleteProperty(Headers2, "getHeadersGuard");
|
|
49034
|
+
Reflect.deleteProperty(Headers2, "setHeadersGuard");
|
|
49035
|
+
Reflect.deleteProperty(Headers2, "getHeadersList");
|
|
49036
|
+
Reflect.deleteProperty(Headers2, "setHeadersList");
|
|
49037
|
+
iteratorMixin("Headers", Headers2, headersListSortAndCombine, 0, 1);
|
|
49038
|
+
Object.defineProperties(Headers2.prototype, {
|
|
48837
49039
|
append: kEnumerableProperty,
|
|
48838
49040
|
delete: kEnumerableProperty,
|
|
48839
49041
|
get: kEnumerableProperty,
|
|
@@ -48851,7 +49053,7 @@ var require_headers = __commonJS({
|
|
|
48851
49053
|
webidl.converters.HeadersInit = function(V, prefix, argument) {
|
|
48852
49054
|
if (webidl.util.Type(V) === webidl.util.Types.OBJECT) {
|
|
48853
49055
|
const iterator = Reflect.get(V, Symbol.iterator);
|
|
48854
|
-
if (!util.types.isProxy(V) && iterator ===
|
|
49056
|
+
if (!util.types.isProxy(V) && iterator === Headers2.prototype.entries) {
|
|
48855
49057
|
try {
|
|
48856
49058
|
return getHeadersList(V).entriesList;
|
|
48857
49059
|
} catch {
|
|
@@ -48872,7 +49074,7 @@ var require_headers = __commonJS({
|
|
|
48872
49074
|
fill,
|
|
48873
49075
|
// for test.
|
|
48874
49076
|
compareHeaderName,
|
|
48875
|
-
Headers,
|
|
49077
|
+
Headers: Headers2,
|
|
48876
49078
|
HeadersList,
|
|
48877
49079
|
getHeadersGuard,
|
|
48878
49080
|
setHeadersGuard,
|
|
@@ -48886,7 +49088,7 @@ var require_headers = __commonJS({
|
|
|
48886
49088
|
var require_response = __commonJS({
|
|
48887
49089
|
"ts/node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/response.js"(exports2, module2) {
|
|
48888
49090
|
"use strict";
|
|
48889
|
-
var { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = require_headers();
|
|
49091
|
+
var { Headers: Headers2, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = require_headers();
|
|
48890
49092
|
var { extractBody, cloneBody, mixinBody, streamRegistry, bodyUnusable } = require_body();
|
|
48891
49093
|
var util = require_util2();
|
|
48892
49094
|
var nodeUtil = __require("node:util");
|
|
@@ -48908,7 +49110,7 @@ var require_response = __commonJS({
|
|
|
48908
49110
|
var assert = __require("node:assert");
|
|
48909
49111
|
var { isomorphicEncode, serializeJavascriptValueToJSONString } = require_infra();
|
|
48910
49112
|
var textEncoder = new TextEncoder("utf-8");
|
|
48911
|
-
var
|
|
49113
|
+
var Response2 = class _Response {
|
|
48912
49114
|
/** @type {Headers} */
|
|
48913
49115
|
#headers;
|
|
48914
49116
|
#state;
|
|
@@ -48962,7 +49164,7 @@ var require_response = __commonJS({
|
|
|
48962
49164
|
}
|
|
48963
49165
|
init = webidl.converters.ResponseInit(init);
|
|
48964
49166
|
this.#state = makeResponse({});
|
|
48965
|
-
this.#headers = new
|
|
49167
|
+
this.#headers = new Headers2(kConstruct);
|
|
48966
49168
|
setHeadersGuard(this.#headers, "response");
|
|
48967
49169
|
setHeadersList(this.#headers, this.#state.headersList);
|
|
48968
49170
|
let bodyWithType = null;
|
|
@@ -49080,13 +49282,13 @@ var require_response = __commonJS({
|
|
|
49080
49282
|
response.#state = newState;
|
|
49081
49283
|
}
|
|
49082
49284
|
};
|
|
49083
|
-
var { getResponseHeaders, setResponseHeaders, getResponseState, setResponseState } =
|
|
49084
|
-
Reflect.deleteProperty(
|
|
49085
|
-
Reflect.deleteProperty(
|
|
49086
|
-
Reflect.deleteProperty(
|
|
49087
|
-
Reflect.deleteProperty(
|
|
49088
|
-
mixinBody(
|
|
49089
|
-
Object.defineProperties(
|
|
49285
|
+
var { getResponseHeaders, setResponseHeaders, getResponseState, setResponseState } = Response2;
|
|
49286
|
+
Reflect.deleteProperty(Response2, "getResponseHeaders");
|
|
49287
|
+
Reflect.deleteProperty(Response2, "setResponseHeaders");
|
|
49288
|
+
Reflect.deleteProperty(Response2, "getResponseState");
|
|
49289
|
+
Reflect.deleteProperty(Response2, "setResponseState");
|
|
49290
|
+
mixinBody(Response2, getResponseState);
|
|
49291
|
+
Object.defineProperties(Response2.prototype, {
|
|
49090
49292
|
type: kEnumerableProperty,
|
|
49091
49293
|
url: kEnumerableProperty,
|
|
49092
49294
|
status: kEnumerableProperty,
|
|
@@ -49102,7 +49304,7 @@ var require_response = __commonJS({
|
|
|
49102
49304
|
configurable: true
|
|
49103
49305
|
}
|
|
49104
49306
|
});
|
|
49105
|
-
Object.defineProperties(
|
|
49307
|
+
Object.defineProperties(Response2, {
|
|
49106
49308
|
json: kEnumerableProperty,
|
|
49107
49309
|
redirect: kEnumerableProperty,
|
|
49108
49310
|
error: kEnumerableProperty
|
|
@@ -49235,9 +49437,9 @@ var require_response = __commonJS({
|
|
|
49235
49437
|
}
|
|
49236
49438
|
}
|
|
49237
49439
|
function fromInnerResponse(innerResponse, guard) {
|
|
49238
|
-
const response = new
|
|
49440
|
+
const response = new Response2(kConstruct);
|
|
49239
49441
|
setResponseState(response, innerResponse);
|
|
49240
|
-
const headers = new
|
|
49442
|
+
const headers = new Headers2(kConstruct);
|
|
49241
49443
|
setResponseHeaders(response, headers);
|
|
49242
49444
|
setHeadersList(headers, innerResponse.headersList);
|
|
49243
49445
|
setHeadersGuard(headers, guard);
|
|
@@ -49289,14 +49491,14 @@ var require_response = __commonJS({
|
|
|
49289
49491
|
converter: webidl.converters.HeadersInit
|
|
49290
49492
|
}
|
|
49291
49493
|
]);
|
|
49292
|
-
webidl.is.Response = webidl.util.MakeTypeAssertion(
|
|
49494
|
+
webidl.is.Response = webidl.util.MakeTypeAssertion(Response2);
|
|
49293
49495
|
module2.exports = {
|
|
49294
49496
|
isNetworkError,
|
|
49295
49497
|
makeNetworkError,
|
|
49296
49498
|
makeResponse,
|
|
49297
49499
|
makeAppropriateNetworkError,
|
|
49298
49500
|
filterResponse,
|
|
49299
|
-
Response,
|
|
49501
|
+
Response: Response2,
|
|
49300
49502
|
cloneResponse,
|
|
49301
49503
|
fromInnerResponse,
|
|
49302
49504
|
getResponseState
|
|
@@ -49309,7 +49511,7 @@ var require_request2 = __commonJS({
|
|
|
49309
49511
|
"ts/node_modules/.pnpm/undici@7.24.8/node_modules/undici/lib/web/fetch/request.js"(exports2, module2) {
|
|
49310
49512
|
"use strict";
|
|
49311
49513
|
var { extractBody, mixinBody, cloneBody, bodyUnusable } = require_body();
|
|
49312
|
-
var { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = require_headers();
|
|
49514
|
+
var { Headers: Headers2, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = require_headers();
|
|
49313
49515
|
var util = require_util2();
|
|
49314
49516
|
var nodeUtil = __require("node:util");
|
|
49315
49517
|
var {
|
|
@@ -49578,7 +49780,7 @@ var require_request2 = __commonJS({
|
|
|
49578
49780
|
requestFinalizer.register(ac, { signal, abort }, abort);
|
|
49579
49781
|
}
|
|
49580
49782
|
}
|
|
49581
|
-
this.#headers = new
|
|
49783
|
+
this.#headers = new Headers2(kConstruct);
|
|
49582
49784
|
setHeadersList(this.#headers, request3.headersList);
|
|
49583
49785
|
setHeadersGuard(this.#headers, "request");
|
|
49584
49786
|
if (mode === "no-cors") {
|
|
@@ -49919,7 +50121,7 @@ var require_request2 = __commonJS({
|
|
|
49919
50121
|
setRequestState(request3, innerRequest);
|
|
49920
50122
|
setRequestDispatcher(request3, dispatcher);
|
|
49921
50123
|
setRequestSignal(request3, signal);
|
|
49922
|
-
const headers = new
|
|
50124
|
+
const headers = new Headers2(kConstruct);
|
|
49923
50125
|
setRequestHeaders(request3, headers);
|
|
49924
50126
|
setHeadersList(headers, innerRequest.headersList);
|
|
49925
50127
|
setHeadersGuard(headers, guard);
|
|
@@ -52363,8 +52565,8 @@ var require_cookies = __commonJS({
|
|
|
52363
52565
|
var { parseSetCookie } = require_parse2();
|
|
52364
52566
|
var { stringify } = require_util5();
|
|
52365
52567
|
var { webidl } = require_webidl();
|
|
52366
|
-
var { Headers } = require_headers();
|
|
52367
|
-
var brandChecks = webidl.brandCheckMultiple([
|
|
52568
|
+
var { Headers: Headers2 } = require_headers();
|
|
52569
|
+
var brandChecks = webidl.brandCheckMultiple([Headers2, globalThis.Headers].filter(Boolean));
|
|
52368
52570
|
function getCookies(headers) {
|
|
52369
52571
|
webidl.argumentLengthCheck(arguments, 1, "getCookies");
|
|
52370
52572
|
brandChecks(headers);
|
|
@@ -53105,7 +53307,7 @@ var require_connection = __commonJS({
|
|
|
53105
53307
|
var { parseExtensions, isClosed, isClosing, isEstablished, isConnecting, validateCloseCodeAndReason } = require_util6();
|
|
53106
53308
|
var { makeRequest } = require_request2();
|
|
53107
53309
|
var { fetching } = require_fetch();
|
|
53108
|
-
var { Headers, getHeadersList } = require_headers();
|
|
53310
|
+
var { Headers: Headers2, getHeadersList } = require_headers();
|
|
53109
53311
|
var { getDecodeSplit } = require_util3();
|
|
53110
53312
|
var { WebsocketFrameSend } = require_frame();
|
|
53111
53313
|
var assert = __require("node:assert");
|
|
@@ -53127,7 +53329,7 @@ var require_connection = __commonJS({
|
|
|
53127
53329
|
useURLCredentials: true
|
|
53128
53330
|
});
|
|
53129
53331
|
if (options.headers) {
|
|
53130
|
-
const headersList = getHeadersList(new
|
|
53332
|
+
const headersList = getHeadersList(new Headers2(options.headers));
|
|
53131
53333
|
request3.headersList = headersList;
|
|
53132
53334
|
}
|
|
53133
53335
|
const keyValue = crypto2.randomBytes(16).toString("base64");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@parall/daemon",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.57.1",
|
|
4
4
|
"description": "Parall local agent runtime — daemon supervisor + bridge runtimes, bundled as standalone JS files",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
"@aws-sdk/client-s3": "3.984.0",
|
|
34
34
|
"@pinixai/bb-browser-pro": "0.15.0",
|
|
35
35
|
"ws": "^8.18.0",
|
|
36
|
-
"@parall/agent-core": "1.
|
|
37
|
-
"@parall/sdk": "1.
|
|
38
|
-
"@parall/claude-agent": "1.
|
|
39
|
-
"@parall/
|
|
40
|
-
"@parall/
|
|
36
|
+
"@parall/agent-core": "1.57.1",
|
|
37
|
+
"@parall/sdk": "1.57.1",
|
|
38
|
+
"@parall/claude-agent": "1.57.1",
|
|
39
|
+
"@parall/openclaw-agent": "1.57.1",
|
|
40
|
+
"@parall/codex-agent": "1.57.1"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/node": "^22.0.0",
|