@redocly/replay 0.23.0-next.2 → 0.23.0-next.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.
@@ -1,7 +1,7 @@
1
- import { s as h, r as i, e as x } from "./replay-index-BUQKXz2B.js";
2
- import { d as j, a as b, j as d } from "./replay-index-BUQKXz2B.js";
1
+ import { e as h, s as x, r as i } from "./replay-index-DmiNhCXD.js";
2
+ import { d as j, a as b, j as d } from "./replay-index-DmiNhCXD.js";
3
3
  async function u(n, e) {
4
- const t = h(), l = await i(n), c = await i(e), o = l.replace(new RegExp(`^${t}+`), "").split(t).filter(Boolean), r = c.replace(new RegExp(`^${t}+`), "").split(t).filter(Boolean), m = Math.min(o.length, r.length);
4
+ const t = x(), l = await i(n), c = await i(e), o = l.replace(new RegExp(`^${t}+`), "").split(t).filter(Boolean), r = c.replace(new RegExp(`^${t}+`), "").split(t).filter(Boolean), m = Math.min(o.length, r.length);
5
5
  let s = 0;
6
6
  for (let a = 0; a < m && o[a] === r[a]; a++)
7
7
  s++;
@@ -9,7 +9,7 @@ async function u(n, e) {
9
9
  return [...p, ...f].join(t);
10
10
  }
11
11
  async function w(n) {
12
- const e = await x(n);
12
+ const e = await h(n);
13
13
  return e ? `.${e}` : "";
14
14
  }
15
15
  export {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./replay-index-02jfHA1h.js");async function u(r,n){const t=e.sep(),l=await e.resolve(r),c=await e.resolve(n),a=l.replace(new RegExp(`^${t}+`),"").split(t).filter(Boolean),i=c.replace(new RegExp(`^${t}+`),"").split(t).filter(Boolean),m=Math.min(a.length,i.length);let s=0;for(let o=0;o<m&&a[o]===i[o];o++)s++;const p=a.slice(s).map(()=>".."),f=i.slice(s);return[...p,...f].join(t)}async function g(r){const n=await e.extname(r);return n?`.${n}`:""}exports.dirname=e.dirname;exports.isAbsolute=e.isAbsolute;exports.join=e.join;exports.resolve=e.resolve;exports.extname=g;exports.relative=u;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./replay-index-B-DxC-Su.js");async function u(r,n){const t=e.sep(),l=await e.resolve(r),c=await e.resolve(n),a=l.replace(new RegExp(`^${t}+`),"").split(t).filter(Boolean),i=c.replace(new RegExp(`^${t}+`),"").split(t).filter(Boolean),m=Math.min(a.length,i.length);let s=0;for(let o=0;o<m&&a[o]===i[o];o++)s++;const p=a.slice(s).map(()=>".."),f=i.slice(s);return[...p,...f].join(t)}async function g(r){const n=await e.extname(r);return n?`.${n}`:""}exports.dirname=e.dirname;exports.isAbsolute=e.isAbsolute;exports.join=e.join;exports.resolve=e.resolve;exports.extname=g;exports.relative=u;
package/dist/replay.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./replay-index-02jfHA1h.js"),t=require("./replay-oauth2-redirect-handler-Bqw5UUvl.js");exports.AgentLoop=e.AgentLoop;exports.AiPanelContext=e.AiPanelContext;exports.EmbeddedReplay=e.EmbeddedReplay;exports.Modal=e.Modal;exports.Replay=e.Replay;exports.ReplayOverlay=e.ReplayOverlay;Object.defineProperty(exports,"SpanStatusCode",{enumerable:!0,get:()=>e.SpanStatusCode});exports.TelemetryClient=e.TelemetryClient;exports.applyThemeToDOM=e.applyThemeToDOM;exports.getCurrentTheme=e.getCurrentTheme;exports.resolveTheme=e.resolveTheme;exports.useAiPanel=e.useAiPanel;exports.useTelemetry=e.useTelemetry;exports.useTelemetryClient=e.useTelemetryClient;exports.OAuth2Error=t.OAuth2Error;exports.handleOAuth2Redirect=t.handleOAuth2Redirect;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./replay-index-B-DxC-Su.js"),t=require("./replay-oauth2-redirect-handler-Bqw5UUvl.js");exports.AgentLoop=e.AgentLoop;exports.AiPanelContext=e.AiPanelContext;exports.EmbeddedReplay=e.EmbeddedReplay;exports.Modal=e.Modal;exports.Replay=e.Replay;exports.ReplayOverlay=e.ReplayOverlay;Object.defineProperty(exports,"SpanStatusCode",{enumerable:!0,get:()=>e.SpanStatusCode});exports.TelemetryClient=e.TelemetryClient;exports.applyThemeToDOM=e.applyThemeToDOM;exports.getCurrentTheme=e.getCurrentTheme;exports.resolveTheme=e.resolveTheme;exports.useAiPanel=e.useAiPanel;exports.useTelemetry=e.useTelemetry;exports.useTelemetryClient=e.useTelemetryClient;exports.OAuth2Error=t.OAuth2Error;exports.handleOAuth2Redirect=t.handleOAuth2Redirect;
package/dist/replay.d.ts CHANGED
@@ -1,7 +1,5 @@
1
- import { AgentCallParameters } from 'ai';
2
1
  import { AsyncApiReplay } from '@redocly/replay-asyncapi-sdk';
3
2
  import { Context } from 'react';
4
- import { GenerateTextResult } from 'ai';
5
3
  import { ImmutableObject } from '@redocly/hookstate-core';
6
4
  import { InferToolInput } from 'ai';
7
5
  import { InferToolOutput } from 'ai';
@@ -9,11 +7,10 @@ import { JSX } from 'react/jsx-runtime';
9
7
  import { NamedExoticComponent } from 'react';
10
8
  import { ReactElement } from 'react';
11
9
  import { SpanStatusCode } from '@opentelemetry/api';
12
- import { StreamTextResult } from 'ai';
13
10
  import { SystemModelMessage } from 'ai';
14
11
  import { Context as TelemetryContext } from '@opentelemetry/api';
15
12
  import { Tool } from 'ai';
16
- import { ToolExecuteFunction } from 'ai';
13
+ import { ToolLoopAgent } from 'ai';
17
14
  import { ToolLoopAgentOnFinishCallback } from 'ai';
18
15
  import { ToolLoopAgentOnStepFinishCallback } from 'ai';
19
16
  import { ToolLoopAgentSettings } from 'ai';
@@ -22,17 +19,25 @@ export declare class AgentLoop {
22
19
  private readonly toolLoopAgent;
23
20
  private readonly maxHistoryMessages;
24
21
  private readonly maxHistoryChars;
22
+ private readonly maxSteps;
23
+ private readonly context;
24
+ private readonly systemInstructions;
25
+ private readonly model;
26
+ private tools;
25
27
  constructor(config: AgentRuntimeConfig);
26
- stream(options: AgentLoopMethodParameters): Promise<StreamTextResult<ReplayToolSet, never>>;
27
- generate(options: AgentLoopMethodParameters): Promise<GenerateTextResult<ReplayToolSet, never>>;
28
- private prepareOptions;
28
+ getAgent(): ToolLoopAgent<never, ReplayToolSet, never>;
29
+ addContext(context: SystemModelMessage[]): void;
30
+ registerTools(tools: ReplayToolSet): void;
31
+ generateTitle(prompt: string, abortSignal?: AbortSignal): Promise<string>;
32
+ private prepareMessages;
33
+ private preparePrompt;
29
34
  }
30
35
 
31
- declare type AgentLoopMethodParameters = AgentCallParameters<never, ReplayToolSet>;
32
-
33
36
  declare type AgentRuntimeConfig = {
37
+ activeConversationId: string;
34
38
  model: Model;
35
- context: SystemModelMessage[];
39
+ tools: ReplayToolSet;
40
+ sendEvent: AiChatTelemetrySendEvent;
36
41
  maxSteps?: number;
37
42
  maxOutputTokens?: ToolLoopAgentConfig['maxOutputTokens'];
38
43
  maxRetries?: ToolLoopAgentConfig['maxRetries'];
@@ -40,9 +45,10 @@ declare type AgentRuntimeConfig = {
40
45
  onFinish?: ToolLoopAgentOnFinishCallback<ReplayToolSet>;
41
46
  maxHistoryMessages?: number;
42
47
  maxHistoryChars?: number;
43
- toolRegistry: ToolRegistry;
44
48
  };
45
49
 
50
+ declare type AiChatTelemetrySendEvent = <T extends AsyncApiReplay.EventType>(event: T, data: AsyncApiReplay.GetEventData<T>) => void;
51
+
46
52
  export declare const AiPanelContext: Context<AiPanelContextValue>;
47
53
 
48
54
  export declare type AiPanelContextValue = {
@@ -102,7 +108,35 @@ declare type ClientCredentialsOAuthFlowsObject = {
102
108
  declare type ConvertOperationFunction = (path: string, method: string, openAPI: any) => OpenAPIOperation_2 | undefined;
103
109
 
104
110
  declare const definitions: {
105
- run_request: Tool< {}, {
111
+ open_tab: Tool< {
112
+ action: "focus_tab" | "open_operation" | "open_collection" | "open_workflow" | "open_step" | "open_workflow_run";
113
+ tabIndex?: number | undefined;
114
+ workflowId?: string | undefined;
115
+ stepId?: string | undefined;
116
+ operationId?: string | undefined;
117
+ collectionId?: string | undefined;
118
+ }, {
119
+ error: {
120
+ message: string;
121
+ details?: unknown;
122
+ };
123
+ isError: true;
124
+ data?: undefined;
125
+ } | {
126
+ data: {
127
+ outcome: "focused" | "opened";
128
+ activeTabIndex: number;
129
+ tabId: string;
130
+ tabType: TabDataType;
131
+ };
132
+ isError: false;
133
+ error?: undefined;
134
+ }>;
135
+ run_request: Tool< {
136
+ workflowId: string;
137
+ stepId: string;
138
+ collectionId: string;
139
+ }, {
106
140
  error: {
107
141
  message: string;
108
142
  details?: unknown;
@@ -110,8 +144,273 @@ declare const definitions: {
110
144
  isError: true;
111
145
  data?: undefined;
112
146
  } | {
147
+ data: {
148
+ body?: string | undefined;
149
+ url?: string | undefined;
150
+ status?: number | undefined;
151
+ size?: number | undefined;
152
+ duration?: number | undefined;
153
+ headers?: [string, string][] | undefined;
154
+ cookies?: [string, string][] | undefined;
155
+ };
156
+ isError: false;
157
+ error?: undefined;
158
+ }>;
159
+ get_current_tab: Tool< {
160
+ sections: ("security" | "result" | "info" | "workflows" | "sourceDescriptions" | "inputs" | "steps" | "parameters" | "outputs" | "successCriteria" | "requestBody" | "severity" | "response")[];
161
+ }, {
162
+ error: {
163
+ message: string;
164
+ details?: unknown;
165
+ };
166
+ isError: true;
167
+ data?: undefined;
168
+ } | {
169
+ data: {
170
+ message: string;
171
+ };
172
+ isError: false;
173
+ error?: undefined;
174
+ }>;
175
+ search: Tool< {
176
+ path?: string | undefined;
177
+ type?: "workflow" | "collection" | "step" | "api" | "api_operation" | undefined;
178
+ method?: string | undefined;
179
+ query?: string | undefined;
180
+ apiId?: string | undefined;
181
+ workflowId?: string | undefined;
182
+ stepId?: string | undefined;
183
+ operationId?: string | undefined;
184
+ collectionId?: string | undefined;
185
+ }, unknown>;
186
+ update_security: Tool< {
187
+ workflowId: string;
188
+ stepId: string;
189
+ collectionId: string;
190
+ changes: ({
191
+ type: import("../../../../types/security").SecurityTypes.BasicAuth;
192
+ action: "add" | "update";
193
+ approved: boolean;
194
+ data?: {
195
+ password?: string | undefined;
196
+ username?: string | undefined;
197
+ } | undefined;
198
+ index?: number | undefined;
199
+ schemeId?: string | undefined;
200
+ } | {
201
+ type: import("../../../../types/security").SecurityTypes.DigestAuth;
202
+ action: "add" | "update";
203
+ approved: boolean;
204
+ data?: {
205
+ password?: string | undefined;
206
+ username?: string | undefined;
207
+ } | undefined;
208
+ index?: number | undefined;
209
+ schemeId?: string | undefined;
210
+ } | {
211
+ type: import("../../../../types/security").SecurityTypes.JWT;
212
+ action: "add" | "update";
213
+ approved: boolean;
214
+ data?: {
215
+ token?: string | undefined;
216
+ } | undefined;
217
+ index?: number | undefined;
218
+ schemeId?: string | undefined;
219
+ } | {
220
+ type: import("../../../../types/security").SecurityTypes.APIKey;
221
+ action: "add" | "update";
222
+ approved: boolean;
223
+ data?: {
224
+ key?: string | undefined;
225
+ name?: string | undefined;
226
+ location?: "header" | "query" | "cookie" | undefined;
227
+ } | undefined;
228
+ index?: number | undefined;
229
+ schemeId?: string | undefined;
230
+ } | {
231
+ type: import("../../../../types/security").SecurityTypes.OAuth2;
232
+ action: "add" | "update";
233
+ approved: boolean;
234
+ data?: {
235
+ password?: string | undefined;
236
+ username?: string | undefined;
237
+ clientId?: string | undefined;
238
+ clientSecret?: string | undefined;
239
+ grantType?: "password" | "implicit" | "clientCredentials" | "authorizationCode" | "clientCredentialsWithJwtAssertion" | "authorizationCodeWithPkce" | undefined;
240
+ tokenUrl?: string | undefined;
241
+ accessToken?: string | undefined;
242
+ authorizationUrl?: string | undefined;
243
+ callbackUrl?: string | undefined;
244
+ } | undefined;
245
+ index?: number | undefined;
246
+ schemeId?: string | undefined;
247
+ } | {
248
+ type: import("../../../../types/security").SecurityTypes.OpenIDConnect;
249
+ action: "add" | "update";
250
+ approved: boolean;
251
+ data?: {
252
+ password?: string | undefined;
253
+ username?: string | undefined;
254
+ clientId?: string | undefined;
255
+ clientSecret?: string | undefined;
256
+ openIdConnectUrl?: string | undefined;
257
+ grantType?: "password" | "implicit" | "clientCredentials" | "authorizationCode" | "clientCredentialsWithJwtAssertion" | "authorizationCodeWithPkce" | undefined;
258
+ tokenUrl?: string | undefined;
259
+ accessToken?: string | undefined;
260
+ authorizationUrl?: string | undefined;
261
+ callbackUrl?: string | undefined;
262
+ userInfoUrl?: string | undefined;
263
+ } | undefined;
264
+ index?: number | undefined;
265
+ schemeId?: string | undefined;
266
+ } | {
267
+ action: "remove";
268
+ approved: boolean;
269
+ index: number;
270
+ })[];
271
+ }, {
272
+ error: {
273
+ message: string;
274
+ details?: unknown;
275
+ };
276
+ isError: true;
277
+ data?: undefined;
278
+ } | {
279
+ data: {
280
+ changedCount: number;
281
+ };
282
+ isError: false;
283
+ error?: undefined;
284
+ }>;
285
+ update_step: Tool< {
286
+ workflowId: string;
287
+ stepId: string;
288
+ collectionId: string;
289
+ changes: ({
290
+ data: string;
291
+ field: "url";
292
+ action: "add" | "remove" | "update";
293
+ approved: boolean;
294
+ id?: string | undefined;
295
+ } | {
296
+ data: string;
297
+ field: "description";
298
+ action: "add" | "remove" | "update";
299
+ approved: boolean;
300
+ id?: string | undefined;
301
+ } | {
302
+ data: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "HEAD" | "OPTIONS";
303
+ field: "method";
304
+ action: "add" | "remove" | "update";
305
+ approved: boolean;
306
+ id?: string | undefined;
307
+ } | {
308
+ field: "parameters";
309
+ action: "add" | "remove" | "update";
310
+ approved: boolean;
311
+ data?: {
312
+ name: string;
313
+ in: "header" | "path" | "query" | "cookie";
314
+ value: string;
315
+ } | undefined;
316
+ id?: string | undefined;
317
+ } | {
318
+ field: "outputs";
319
+ action: "add" | "remove" | "update";
320
+ approved: boolean;
321
+ data?: {
322
+ name: string;
323
+ expression: string;
324
+ } | undefined;
325
+ id?: string | undefined;
326
+ } | {
327
+ field: "successCriteria";
328
+ action: "add" | "remove" | "update";
329
+ approved: boolean;
330
+ data?: {
331
+ condition: string;
332
+ type?: "regex" | "simple" | "jsonpath" | "xpath" | undefined;
333
+ context?: string | undefined;
334
+ } | undefined;
335
+ id?: string | undefined;
336
+ } | {
337
+ data: {
338
+ content: string;
339
+ contentType?: string | undefined;
340
+ };
341
+ field: "body";
342
+ action: "add" | "remove" | "update";
343
+ approved: boolean;
344
+ id?: string | undefined;
345
+ })[];
346
+ }, {
347
+ error: {
348
+ message: string;
349
+ details?: unknown;
350
+ };
351
+ isError: true;
352
+ data?: undefined;
353
+ } | {
354
+ data: {
355
+ changedFields: string[];
356
+ };
357
+ isError: false;
358
+ error?: undefined;
359
+ }>;
360
+ manage_collection: Tool< {
361
+ title: string;
362
+ action: "create_collection";
363
+ } | {
364
+ collectionId: string;
365
+ action: "delete_collection";
366
+ } | {
367
+ name: string;
368
+ collectionId: string;
369
+ action: "create_workflow";
370
+ } | {
371
+ workflowId: string;
372
+ collectionId: string;
373
+ action: "delete_workflow";
374
+ } | {
375
+ workflowId: string;
376
+ collectionId: string;
377
+ action: "create_step";
378
+ operation?: {
379
+ path: string;
380
+ method: string;
381
+ apiId: string;
382
+ operationId?: string | undefined;
383
+ } | undefined;
384
+ xOperation?: {
385
+ url: string;
386
+ method: string;
387
+ } | undefined;
388
+ stepName?: string | undefined;
389
+ } | {
390
+ workflowId: string;
391
+ stepId: string;
392
+ collectionId: string;
393
+ action: "delete_step";
394
+ } | {
395
+ action: "save_tab_to_collection";
396
+ targetCollectionId: string;
397
+ targetWorkflowId: string;
398
+ newStepName: string;
399
+ }, {
400
+ error: {
401
+ message: string;
402
+ details?: unknown;
403
+ };
404
+ isError: true;
405
+ data?: undefined;
406
+ } | {
407
+ data: {
408
+ summary: string;
409
+ workflowId?: string | undefined;
410
+ stepId?: string | undefined;
411
+ collectionId?: string | undefined;
412
+ };
113
413
  isError: false;
114
- data?: unknown;
115
414
  error?: undefined;
116
415
  }>;
117
416
  };
@@ -739,28 +1038,20 @@ declare type ReplayOverlayProps = {
739
1038
  onRequestChange?: (props: ReplayOnChangeParams) => void;
740
1039
  } & ReplayAppProps;
741
1040
 
742
- declare type ReplayTool<T extends ReplayToolNames> = Tool<ReplayToolInput<T>, ReplayToolOutput<T>> & {
743
- execute: ReplayToolExecutor<T>;
744
- };
1041
+ declare type ReplayTool<T extends ReplayToolNames> = Tool<ReplayToolInput<T>, ReplayToolOutput<T>>;
745
1042
 
746
1043
  declare type ReplayToolDefinition<T extends ReplayToolNames> = ReplayToolDefinitions[T];
747
1044
 
748
1045
  declare type ReplayToolDefinitions = typeof definitions;
749
1046
 
750
- declare type ReplayToolExecutor<T extends ReplayToolNames> = ToolExecuteFunction<ReplayToolInput<T>, ReplayToolOutput<T>>;
751
-
752
- declare type ReplayToolExecutorMap<T extends ReplayToolNames = ReplayToolNames> = Partial<{
753
- [K in T]: ReplayToolExecutor<K>;
754
- }>;
755
-
756
1047
  declare type ReplayToolInput<T extends ReplayToolNames> = InferToolInput<ReplayToolDefinition<T>>;
757
1048
 
758
1049
  declare type ReplayToolNames = keyof ReplayToolDefinitions;
759
1050
 
760
1051
  declare type ReplayToolOutput<T extends ReplayToolNames> = InferToolOutput<ReplayToolDefinition<T>>;
761
1052
 
762
- declare type ReplayToolSet<T extends ReplayToolNames = ReplayToolNames> = {
763
- [K in T]: ReplayTool<K>;
1053
+ declare type ReplayToolSet = {
1054
+ [K in ReplayToolNames]: ReplayTool<K>;
764
1055
  };
765
1056
 
766
1057
  export declare type ResolvedTheme = 'light' | 'dark';
@@ -807,6 +1098,13 @@ declare type ServerVariable = {
807
1098
 
808
1099
  export { SpanStatusCode }
809
1100
 
1101
+ declare enum TabDataType {
1102
+ Workflow = "workflow",
1103
+ WorkflowRun = "workflowRun",
1104
+ Collection = "collection",
1105
+ Step = "step"
1106
+ }
1107
+
810
1108
  export declare class TelemetryClient {
811
1109
  private _client;
812
1110
  private _isInitialized;
@@ -852,18 +1150,6 @@ export declare type Theme = 'light' | 'dark' | 'auto';
852
1150
 
853
1151
  declare type ToolLoopAgentConfig = ToolLoopAgentSettings<never, ReplayToolSet, never>;
854
1152
 
855
- declare class ToolRegistry {
856
- private readonly executors;
857
- private readonly definitions;
858
- register<T extends ReplayToolNames>(name: T, executor: ReplayToolExecutor<T>): void;
859
- registerMany<T extends ReplayToolNames>(executors: ReplayToolExecutorMap<T>): void;
860
- get<T extends ReplayToolNames>(name: T): ReplayTool<T>;
861
- list(): ReplayToolSet;
862
- private buildTool;
863
- getToolSet(): ReplayToolSet;
864
- private assignBuiltTool;
865
- }
866
-
867
1153
  declare type TracerName = 'try-it' | 'replay-openapi' | 'desktop' | 'reunite-tab';
868
1154
 
869
1155
  export declare function useAiPanel(): AiPanelContextValue;
package/dist/replay.js CHANGED
@@ -1,4 +1,4 @@
1
- import { G as s, D as t, E as l, M as r, R as o, w as m, S as n, T as p, y, z as T, x as d, F as h, B as u, C } from "./replay-index-BUQKXz2B.js";
1
+ import { w as s, x as t, E as l, M as r, R as o, y as m, S as n, T as p, z as y, C as T, D as d, F as h, G as u, H as C } from "./replay-index-DmiNhCXD.js";
2
2
  import { O as A, h as O } from "./replay-oauth2-redirect-handler-CqKZB3aV.js";
3
3
  export {
4
4
  s as AgentLoop,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/replay",
3
- "version": "0.23.0-next.2",
3
+ "version": "0.23.0-next.4",
4
4
  "type": "module",
5
5
  "main": "./dist/replay.cjs",
6
6
  "module": "./dist/replay.js",
@@ -20,11 +20,12 @@
20
20
  "react-dom": "^19.2.4",
21
21
  "react-router-dom": "^6.30.3",
22
22
  "styled-components": "^5.3.11",
23
- "@redocly/theme": "0.64.0-next.2"
23
+ "@redocly/theme": "0.64.0-next.4"
24
24
  },
25
25
  "dependencies": {
26
26
  "@ai-sdk/google": "3.0.1",
27
27
  "@ai-sdk/provider": "3.0.0",
28
+ "@ai-sdk/react": "3.0.118",
28
29
  "@codemirror/autocomplete": "^6.15.0",
29
30
  "@codemirror/lang-html": "^6.4.7",
30
31
  "@codemirror/lang-java": "^6.0.2",
@@ -47,8 +48,8 @@
47
48
  "@opentelemetry/api": "1.9.0",
48
49
  "@redocly/hookstate-core": "^4.2.1",
49
50
  "@redocly/hookstate-devtools": "^4.2.0",
50
- "@redocly/openapi-core": "2.24.0",
51
- "@redocly/respect-core": "2.24.0",
51
+ "@redocly/openapi-core": "2.25.2",
52
+ "@redocly/respect-core": "2.25.2",
52
53
  "@redocly/vscode-json-languageservice": "^3.4.9",
53
54
  "@tauri-apps/api": "2.4.1",
54
55
  "@tauri-apps/plugin-dialog": "2.0.0-rc.1",
@@ -59,7 +60,7 @@
59
60
  "ai": "6.0.111",
60
61
  "dayjs": "^1.11.7",
61
62
  "drizzle-orm": "^0.36.4",
62
- "fast-xml-parser": "5.4.1",
63
+ "fast-xml-parser": "5.5.9",
63
64
  "idb": "^8.0.2",
64
65
  "js-yaml": "4.1.1",
65
66
  "json-pointer": "^0.6.2",