@dainprotocol/service-sdk 2.0.90 → 2.0.91

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.
@@ -149,28 +149,10 @@ class DainSDK {
149
149
  }
150
150
  }
151
151
  const tool = (0, convertToVercelTool_1.convertHttpToolToVercelAITool)(toolConfig);
152
- const parsedParams = tool.parameters.safeParse(params);
153
- if (!parsedParams.success) {
154
- const summary = parsedParams.error.issues
155
- .map((i) => `${i.path.join(".") || "root"}: ${i.message}`)
156
- .join("; ");
157
- const err = new Error(`Invalid parameters for ${toolId}: ${summary}`);
158
- Object.defineProperty(err, "issues", { value: parsedParams.error.issues, enumerable: false });
159
- Object.defineProperty(err, "toolInputValidationError", { value: true, enumerable: false });
160
- throw err;
161
- }
152
+ tool.parameters.parse(params);
162
153
  const result = await this.connection.callTool(toolId, params);
163
154
  const resultData = result;
164
- const parsedOutput = tool.returnSchema.safeParse(resultData.data);
165
- if (!parsedOutput.success) {
166
- const summary = parsedOutput.error.issues
167
- .map((i) => `${i.path.join(".") || "root"}: ${i.message}`)
168
- .join("; ");
169
- const err = new Error(`Invalid output for ${toolId}: ${summary}`);
170
- Object.defineProperty(err, "issues", { value: parsedOutput.error.issues, enumerable: false });
171
- Object.defineProperty(err, "toolOutputValidationError", { value: true, enumerable: false });
172
- throw err;
173
- }
155
+ tool.returnSchema.parse(resultData.data);
174
156
  return result;
175
157
  };
176
158
  }
@@ -1 +1 @@
1
- {"version":3,"file":"api-sdk.js","sourceRoot":"","sources":["../../src/client/api-sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-sdk.js","sourceRoot":"","sources":["../../src/client/api-sdk.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@ import { type Tool } from "ai";
2
2
  import { DainClientAuth } from "./client-auth";
3
3
  import { DainPlugin } from "../plugins/types";
4
4
  import { ToolInterfaceType } from "../interfaces";
5
- import { ServiceMetadata, ServiceConfig, ToolboxConfig, ToolConfig, ServiceContext, ServiceContextWithData, ToolWithJsonSchema, ServiceWidgetWithData, OAuth2ProviderInfo, ProviderInfo, DirectAuthStatus, ExampleQueries, HumanActionStep, ServiceDatasource, ServiceDatasourceWithData, ServiceAgent, RecommendationSearchRequest, RecommendationSearchResponse, RecommendationRenderRequest, RecommendationRenderResponse } from "./types";
5
+ import { ServiceMetadata, ServiceConfig, ToolboxConfig, ToolConfig, ServiceContext, ServiceContextWithData, ToolWithJsonSchema, ServiceWidgetWithData, OAuth2ProviderInfo, ProviderInfo, DirectAuthStatus, ExampleQueries, HumanActionStep, ServiceDatasource, ServiceDatasourceWithData, ServiceAgent } from "./types";
6
6
  export type { ServiceMetadata, ServiceConfig, ToolboxConfig, ToolConfig, ServiceAgent };
7
- export interface ToolCallOptions {
7
+ interface ToolCallOptions {
8
8
  onUIUpdate?: (update: {
9
9
  ui: unknown;
10
10
  }) => void;
@@ -19,19 +19,18 @@ export declare class DainServiceConnection {
19
19
  private clientAuth;
20
20
  private plugins;
21
21
  private enableStreaming;
22
- private extraHeaders;
23
22
  private readonly streamIdleTimeoutMs;
24
23
  constructor(baseUrl: string, clientAuth: DainClientAuth, options?: {
25
24
  plugins?: DainPlugin[];
26
25
  enableStreaming?: boolean;
27
- extraHeaders?: Record<string, string>;
28
26
  });
29
27
  getURI(): string;
30
28
  private processPluginInput;
31
29
  private processPluginOutput;
32
30
  private extractDataFromPluginResponse;
33
31
  private extractSingleFromPluginResponse;
34
- makeRequest<TResult = any>(method: string, path: string, body?: Record<string, unknown>): Promise<TResult>;
32
+ private buildStructuredServiceError;
33
+ makeRequest(method: string, path: string, body?: Record<string, unknown>): Promise<unknown>;
35
34
  getMetadata(): Promise<ServiceMetadata>;
36
35
  getExampleQueries(): Promise<ExampleQueries>;
37
36
  getServices(): Promise<ServiceConfig[]>;
@@ -52,23 +51,12 @@ export declare class DainServiceConnection {
52
51
  getAllToolsAsJsonSchema(): Promise<{
53
52
  tools: ToolWithJsonSchema[];
54
53
  reccomendedPrompts: string[];
55
- schemaVersion: string;
56
54
  }>;
57
- searchRecommendations(request?: RecommendationSearchRequest): Promise<RecommendationSearchResponse>;
58
- renderRecommendations(request: RecommendationRenderRequest): Promise<RecommendationRenderResponse>;
59
55
  loadToolbox(toolboxId: string, execute?: boolean): Promise<Record<string, Tool>>;
60
56
  createVercelAITool(toolInfo: ToolConfig): Tool;
61
- /**
62
- * Execute a tool via the standard `/tools/:id` endpoint.
63
- * Use this when the caller does not need a post-tool context refresh.
64
- */
65
- callTool<TResult = any>(toolId: string, params: Record<string, unknown> | undefined, options?: ToolCallOptions): Promise<TResult>;
66
- /**
67
- * Execute a tool and request a full context refresh via `/tools/:id/executeAndGetNewContext`.
68
- * Most callers should prefer `callTool`; this variant is for explicit context consumers.
69
- */
70
- callToolAndGetNewContext<TToolResult = any>(toolId: string, params: Record<string, unknown> | undefined, options?: ToolCallOptions): Promise<{
71
- toolResult: TToolResult;
57
+ callTool(toolId: string, params: Record<string, unknown>, options?: ToolCallOptions): Promise<unknown>;
58
+ callToolAndGetNewContext(toolId: string, params: Record<string, unknown>, options?: ToolCallOptions): Promise<{
59
+ toolResult: unknown;
72
60
  context: ServiceContextWithData[];
73
61
  }>;
74
62
  private _callToolWithStreaming;
@@ -109,26 +97,6 @@ export declare class DainServiceConnection {
109
97
  }>;
110
98
  listDatasources(): Promise<ServiceDatasource[]>;
111
99
  getDatasource(datasourceId: string, params: Record<string, unknown>): Promise<ServiceDatasourceWithData>;
112
- /**
113
- * Stream datasource updates over SSE.
114
- *
115
- * This is intended for "fresh" UI surfaces that want stream-first updates with
116
- * a bounded poll fallback. Callers should always provide a fallback strategy
117
- * because SSE can disconnect or be rate-limited.
118
- *
119
- * The returned AbortController can be used to close the stream.
120
- */
121
- streamDatasource(datasourceId: string, params: Record<string, unknown>, options: {
122
- onUpdate: (update: ServiceDatasourceWithData) => void;
123
- onError?: (error: Error) => void;
124
- /**
125
- * Optional requested interval for server-side streaming re-runs.
126
- * Butterfly computes an effective interval after applying platform clamps
127
- * and passes it here so services are not forced to run faster than allowed.
128
- */
129
- intervalMs?: number;
130
- signal?: AbortSignal;
131
- }): AbortController;
132
100
  postAllDatasources(): Promise<ServiceDatasource[]>;
133
101
  getToolsByInterface(interfaceType: ToolInterfaceType): Promise<ToolConfig[]>;
134
102
  getAvailableInterfaces(): Promise<ToolInterfaceType[]>;
@@ -8,20 +8,17 @@ const axios_1 = tslib_1.__importStar(require("axios"));
8
8
  const interfaces_1 = require("../interfaces");
9
9
  const schemaConversion_1 = require("../lib/schemaConversion");
10
10
  const types_1 = require("./types");
11
- const toolDiscovery_1 = require("../lib/toolDiscovery");
12
11
  class DainServiceConnection {
13
12
  baseUrl;
14
13
  clientAuth;
15
14
  plugins;
16
15
  enableStreaming;
17
- extraHeaders;
18
16
  streamIdleTimeoutMs = 60000;
19
17
  constructor(baseUrl, clientAuth, options = {}) {
20
18
  this.baseUrl = baseUrl;
21
19
  this.clientAuth = clientAuth;
22
20
  this.plugins = options.plugins || [];
23
21
  this.enableStreaming = options.enableStreaming ?? false;
24
- this.extraHeaders = options.extraHeaders || {};
25
22
  }
26
23
  getURI() {
27
24
  return this.baseUrl;
@@ -29,26 +26,16 @@ class DainServiceConnection {
29
26
  async processPluginInput(body) {
30
27
  if (this.plugins.length === 0)
31
28
  return body;
32
- const existingPlugins = body.plugins && typeof body.plugins === "object" && !Array.isArray(body.plugins)
33
- ? body.plugins
34
- : {};
35
- const { plugins: _, ...bodyWithoutPlugins } = body;
36
- const hasAllPluginPayloads = this.plugins.every((plugin) => Object.prototype.hasOwnProperty.call(existingPlugins, plugin.id));
37
- // Many callers pre-process payloads before delegating to `makeRequest`.
38
- // If all plugin payloads are already present, avoid redundant plugin work.
39
- if (hasAllPluginPayloads) {
40
- return body;
41
- }
42
- const pluginsData = { ...existingPlugins };
29
+ const pluginsData = {};
43
30
  for (const plugin of this.plugins) {
44
31
  if (plugin.processInputClient) {
45
- const pluginData = await plugin.processInputClient(bodyWithoutPlugins);
46
- if (pluginData !== undefined) {
32
+ const pluginData = await plugin.processInputClient(body);
33
+ if (pluginData) {
47
34
  pluginsData[plugin.id] = pluginData;
48
35
  }
49
36
  }
50
37
  }
51
- return { ...bodyWithoutPlugins, plugins: pluginsData };
38
+ return { ...body, plugins: pluginsData };
52
39
  }
53
40
  async processPluginOutput(data) {
54
41
  if (this.plugins.length === 0)
@@ -78,6 +65,24 @@ class DainServiceConnection {
78
65
  const { plugins: _, ...rest } = data;
79
66
  return schema.parse(rest);
80
67
  }
68
+ buildStructuredServiceError(status, statusText, responseData, fallbackMessage) {
69
+ const serverError = typeof responseData === "string"
70
+ ? responseData
71
+ : responseData && typeof responseData === "object" && typeof responseData.message === "string"
72
+ ? (responseData.message)
73
+ : fallbackMessage || statusText;
74
+ const customError = new Error(serverError);
75
+ customError.status = status;
76
+ customError.responseData = responseData;
77
+ if (responseData && typeof responseData === "object") {
78
+ const maybe = responseData;
79
+ if (typeof maybe.authorization_url === "string")
80
+ customError.authorization_url = maybe.authorization_url;
81
+ if (typeof maybe.service_url === "string")
82
+ customError.service_url = maybe.service_url;
83
+ }
84
+ return customError;
85
+ }
81
86
  async makeRequest(method, path, body = {}) {
82
87
  const processedBody = method === "POST"
83
88
  ? await this.processPluginInput(body)
@@ -90,7 +95,6 @@ class DainServiceConnection {
90
95
  headers: {
91
96
  "Content-Type": "application/json",
92
97
  ...this.clientAuth.getHeaders(),
93
- ...this.extraHeaders,
94
98
  },
95
99
  });
96
100
  return this.processPluginOutput(response.data);
@@ -103,18 +107,6 @@ class DainServiceConnection {
103
107
  : responseData?.message ?? error.message;
104
108
  const customError = new Error(serverError);
105
109
  customError.status = error.response.status;
106
- customError.responseData = responseData;
107
- // Preserve structured error hints (e.g. authorization_url) so clients can
108
- // surface consent UX instead of generic "network error" toasts.
109
- if (responseData && typeof responseData === "object") {
110
- const maybe = responseData;
111
- if (typeof maybe.authorization_url === "string") {
112
- customError.authorization_url = maybe.authorization_url;
113
- }
114
- if (typeof maybe.service_url === "string") {
115
- customError.service_url = maybe.service_url;
116
- }
117
- }
118
110
  throw customError;
119
111
  }
120
112
  throw error;
@@ -212,21 +204,11 @@ class DainServiceConnection {
212
204
  const requestBody = await this.processPluginInput({});
213
205
  const data = await this.makeRequest("POST", "/getAllToolsAsJsonSchema", requestBody);
214
206
  if (data && typeof data === 'object' && 'plugins' in data) {
215
- const { plugins: _, tools, reccomendedPrompts, schemaVersion } = data;
207
+ const { plugins: _, tools, reccomendedPrompts, ...rest } = data;
216
208
  if (Array.isArray(tools) && Array.isArray(reccomendedPrompts)) {
217
- const response = {
218
- tools: tools,
219
- reccomendedPrompts: reccomendedPrompts,
220
- schemaVersion: typeof schemaVersion === "string" ? schemaVersion : undefined,
221
- };
222
209
  return {
223
- tools: response.tools,
224
- reccomendedPrompts: response.reccomendedPrompts,
225
- schemaVersion: response.schemaVersion ||
226
- (0, toolDiscovery_1.computeToolDiscoverySchemaVersion)({
227
- tools: response.tools,
228
- reccomendedPrompts: response.reccomendedPrompts,
229
- }),
210
+ tools: tools,
211
+ reccomendedPrompts: reccomendedPrompts
230
212
  };
231
213
  }
232
214
  }
@@ -234,48 +216,8 @@ class DainServiceConnection {
234
216
  return {
235
217
  tools: returned.tools,
236
218
  reccomendedPrompts: returned.reccomendedPrompts,
237
- schemaVersion: returned.schemaVersion ||
238
- (0, toolDiscovery_1.computeToolDiscoverySchemaVersion)({
239
- tools: returned.tools,
240
- reccomendedPrompts: returned.reccomendedPrompts,
241
- }),
242
219
  };
243
220
  }
244
- async searchRecommendations(request = {}) {
245
- const parsedRequest = types_1.RecommendationSearchRequestSchema.parse(request);
246
- const requestBody = await this.processPluginInput(parsedRequest);
247
- const data = await this.makeRequest("POST", "/recommendations/search", requestBody);
248
- if (data && typeof data === "object" && "plugins" in data) {
249
- const parsed = this.extractSingleFromPluginResponse(data, types_1.RecommendationSearchResponseSchema);
250
- return parsed;
251
- }
252
- return types_1.RecommendationSearchResponseSchema.parse(data);
253
- }
254
- async renderRecommendations(request) {
255
- const parsedRequest = types_1.RecommendationRenderRequestSchema.parse(request);
256
- const requestBody = await this.processPluginInput(parsedRequest);
257
- try {
258
- const data = await this.makeRequest("POST", "/recommendations/render", requestBody);
259
- if (data && typeof data === "object" && "plugins" in data) {
260
- const parsed = this.extractSingleFromPluginResponse(data, types_1.RecommendationRenderResponseSchema);
261
- return parsed;
262
- }
263
- return types_1.RecommendationRenderResponseSchema.parse(data);
264
- }
265
- catch (error) {
266
- const maybeError = error;
267
- // Server may return 400 with structured render errors when continueOnError=false.
268
- if (maybeError.status === 400 && maybeError.responseData) {
269
- // Error responses can still be plugin-processed (encrypted/wrapped).
270
- const responseData = await this.processPluginOutput(maybeError.responseData);
271
- if (responseData && typeof responseData === "object" && "plugins" in responseData) {
272
- return this.extractSingleFromPluginResponse(responseData, types_1.RecommendationRenderResponseSchema);
273
- }
274
- return types_1.RecommendationRenderResponseSchema.parse(responseData);
275
- }
276
- throw error;
277
- }
278
- }
279
221
  async loadToolbox(toolboxId, execute = true) {
280
222
  const toolbox = await this.getToolbox(toolboxId);
281
223
  const tools = {};
@@ -300,12 +242,8 @@ class DainServiceConnection {
300
242
  },
301
243
  });
302
244
  }
303
- /**
304
- * Execute a tool via the standard `/tools/:id` endpoint.
305
- * Use this when the caller does not need a post-tool context refresh.
306
- */
307
245
  async callTool(toolId, params, options) {
308
- const processedParams = await this.processPluginInput(params ?? {});
246
+ const processedParams = await this.processPluginInput(params);
309
247
  if (this.enableStreaming) {
310
248
  const streamedResult = await this._callToolWithStreaming(toolId, processedParams, `/tools/${toolId}`, options);
311
249
  return this.sanitizeToolResponse(streamedResult, options);
@@ -313,12 +251,8 @@ class DainServiceConnection {
313
251
  const response = await this.makeRequest("POST", `/tools/${toolId}`, processedParams);
314
252
  return this.sanitizeToolResponse(response, options);
315
253
  }
316
- /**
317
- * Execute a tool and request a full context refresh via `/tools/:id/executeAndGetNewContext`.
318
- * Most callers should prefer `callTool`; this variant is for explicit context consumers.
319
- */
320
254
  async callToolAndGetNewContext(toolId, params, options) {
321
- const processedParams = await this.processPluginInput(params ?? {});
255
+ const processedParams = await this.processPluginInput(params);
322
256
  const endpoint = `/tools/${toolId}/executeAndGetNewContext`;
323
257
  if (this.enableStreaming) {
324
258
  const streamedResult = await this._callToolWithStreaming(toolId, processedParams, endpoint, options);
@@ -335,7 +269,6 @@ class DainServiceConnection {
335
269
  'Content-Type': 'application/json',
336
270
  'Accept': 'text/event-stream',
337
271
  ...this.clientAuth.getHeaders(),
338
- ...this.extraHeaders,
339
272
  },
340
273
  body: JSON.stringify(params),
341
274
  signal: abortController.signal,
@@ -343,13 +276,12 @@ class DainServiceConnection {
343
276
  const contentType = response.headers.get('content-type') || '';
344
277
  if (contentType.includes('application/json')) {
345
278
  const data = await response.json();
279
+ if (!response.ok) {
280
+ throw this.buildStructuredServiceError(response.status, response.statusText, data, response.statusText);
281
+ }
346
282
  return this.processPluginOutput(data);
347
283
  }
348
284
  if (!response.ok) {
349
- if (contentType.includes('application/json')) {
350
- const errorData = await response.json();
351
- throw new Error(`Server error: ${errorData.message || response.statusText}`);
352
- }
353
285
  throw new Error(`HTTP error: ${response.status} ${response.statusText}`);
354
286
  }
355
287
  const reader = response.body?.getReader();
@@ -596,175 +528,6 @@ class DainServiceConnection {
596
528
  const data = await this.makeRequest("POST", `/datasources/${datasourceId}`, requestBody);
597
529
  return this.extractSingleFromPluginResponse(data, types_1.ServiceDatasourceWithDataSchema);
598
530
  }
599
- /**
600
- * Stream datasource updates over SSE.
601
- *
602
- * This is intended for "fresh" UI surfaces that want stream-first updates with
603
- * a bounded poll fallback. Callers should always provide a fallback strategy
604
- * because SSE can disconnect or be rate-limited.
605
- *
606
- * The returned AbortController can be used to close the stream.
607
- */
608
- streamDatasource(datasourceId, params, options) {
609
- const abortController = new AbortController();
610
- if (options.signal) {
611
- if (options.signal.aborted) {
612
- abortController.abort();
613
- }
614
- else {
615
- options.signal.addEventListener("abort", () => abortController.abort(), {
616
- once: true,
617
- });
618
- }
619
- }
620
- const signal = abortController.signal;
621
- void (async () => {
622
- try {
623
- const requestBody = await this.processPluginInput(params);
624
- const endpoint = `/datasources/${datasourceId}/stream`;
625
- const response = await fetch(`${this.baseUrl}${endpoint}`, {
626
- method: "POST",
627
- headers: {
628
- "Content-Type": "application/json",
629
- Accept: "text/event-stream",
630
- ...this.clientAuth.getHeaders(),
631
- ...this.extraHeaders,
632
- },
633
- body: JSON.stringify({
634
- params: requestBody,
635
- intervalMs: options.intervalMs,
636
- }),
637
- signal,
638
- });
639
- if (!response.ok) {
640
- let message = `${response.status} ${response.statusText}`;
641
- try {
642
- const data = await response.json();
643
- if (data && typeof data === "object") {
644
- if ("message" in data) {
645
- message = String(data.message);
646
- }
647
- else if ("error" in data) {
648
- message = String(data.error);
649
- }
650
- }
651
- }
652
- catch { }
653
- throw new Error(`Datasource stream HTTP error: ${message}`);
654
- }
655
- const reader = response.body?.getReader();
656
- if (!reader)
657
- throw new Error("No response body");
658
- const decoder = new TextDecoder();
659
- let buffer = "";
660
- let currentEvent = null;
661
- let currentDataLines = [];
662
- const stripFieldValue = (value) => value.startsWith(" ") ? value.slice(1) : value;
663
- const handleEvent = async (eventType, rawData) => {
664
- let wrappedData = rawData;
665
- if (rawData !== "") {
666
- try {
667
- wrappedData = JSON.parse(rawData);
668
- }
669
- catch {
670
- wrappedData = rawData;
671
- }
672
- }
673
- if (eventType === "error") {
674
- const message = typeof wrappedData === "string"
675
- ? wrappedData
676
- : wrappedData?.message || rawData || "Unknown SSE error";
677
- throw new Error(`SSE error: ${message}`);
678
- }
679
- if (eventType !== "datasource-update")
680
- return;
681
- const isSignedPayload = wrappedData && typeof wrappedData === "object" && "_signature" in wrappedData;
682
- let payload = wrappedData;
683
- if (isSignedPayload) {
684
- const signedData = wrappedData;
685
- const { signature, timestamp, address } = signedData._signature || {};
686
- if (signature && timestamp && address) {
687
- const dataString = JSON.stringify(signedData.data);
688
- const isSignatureValid = this.clientAuth.verifyEventSignature(dataString, signature, timestamp, address);
689
- if (!isSignatureValid) {
690
- console.warn(`SSE event signature verification failed for datasource-update`);
691
- }
692
- }
693
- payload = signedData.data;
694
- }
695
- // Unwrap plugin-encrypted payloads, then validate schema
696
- const processed = await this.processPluginOutput(payload);
697
- const parsed = types_1.ServiceDatasourceWithDataSchema.safeParse(processed);
698
- if (!parsed.success) {
699
- const summary = parsed.error.issues
700
- .map((i) => `${i.path.join(".") || "root"}: ${i.message}`)
701
- .join("; ");
702
- const err = new Error(`Invalid datasource stream payload: ${summary}`);
703
- Object.defineProperty(err, "issues", { value: parsed.error.issues, enumerable: false });
704
- Object.defineProperty(err, "datasourceStreamValidationError", { value: true, enumerable: false });
705
- options.onError?.(err);
706
- return;
707
- }
708
- options.onUpdate(parsed.data);
709
- };
710
- const flushEvent = async () => {
711
- if (!currentEvent && currentDataLines.length === 0)
712
- return;
713
- const eventType = currentEvent || "message";
714
- const rawData = currentDataLines.join("\n");
715
- currentEvent = null;
716
- currentDataLines = [];
717
- if (!rawData)
718
- return;
719
- await handleEvent(eventType, rawData);
720
- };
721
- const processSSELines = async (lines) => {
722
- for (const line of lines) {
723
- if (line.startsWith(":"))
724
- continue;
725
- if (line.startsWith("event:")) {
726
- currentEvent = stripFieldValue(line.slice(6));
727
- }
728
- else if (line.startsWith("data:")) {
729
- currentDataLines.push(stripFieldValue(line.slice(5)));
730
- }
731
- else if (line === "") {
732
- await flushEvent();
733
- }
734
- }
735
- };
736
- while (!signal.aborted) {
737
- const { done, value } = await reader.read();
738
- if (done)
739
- break;
740
- if (!value)
741
- continue;
742
- buffer += decoder.decode(value, { stream: true });
743
- buffer = buffer.replace(/\r\n/g, "\n");
744
- const lines = buffer.split("\n");
745
- buffer = lines.pop() || "";
746
- await processSSELines(lines);
747
- }
748
- if (buffer.trim()) {
749
- buffer += "\n\n";
750
- const lines = buffer.split("\n");
751
- buffer = "";
752
- await processSSELines(lines);
753
- }
754
- try {
755
- reader.releaseLock();
756
- }
757
- catch { }
758
- }
759
- catch (error) {
760
- if (signal.aborted)
761
- return;
762
- const err = error instanceof Error ? error : new Error(String(error));
763
- options.onError?.(err);
764
- }
765
- })();
766
- return abortController;
767
- }
768
531
  async postAllDatasources() {
769
532
  const requestBody = await this.processPluginInput({});
770
533
  const data = await this.makeRequest("POST", `/datasources/all`, requestBody);