@mengruo/dsh-vision-toolkit 0.1.5 → 0.1.6-beta.0

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.
Files changed (48) hide show
  1. package/assets/1.mp4 +0 -0
  2. package/assets/skill/SKILL.md +37 -5
  3. package/docs/plan-per-tool-visibility.md +82 -0
  4. package/lib/client.js +53 -3
  5. package/lib/client.js.map +1 -1
  6. package/lib/config.js +17 -0
  7. package/lib/config.js.map +1 -1
  8. package/lib/exposure.js +35 -8
  9. package/lib/exposure.js.map +1 -1
  10. package/lib/index.js +1 -1
  11. package/lib/index.js.map +1 -1
  12. package/lib/paths.js +9 -0
  13. package/lib/paths.js.map +1 -1
  14. package/lib/runtime.js +175 -1
  15. package/lib/runtime.js.map +1 -1
  16. package/lib/tools.js +116 -4
  17. package/lib/tools.js.map +1 -1
  18. package/lib/types/client/index.d.ts +24 -1
  19. package/lib/types/client/index.d.ts.map +1 -1
  20. package/lib/types/config.d.ts +26 -0
  21. package/lib/types/config.d.ts.map +1 -1
  22. package/lib/types/exposure.d.ts +14 -2
  23. package/lib/types/exposure.d.ts.map +1 -1
  24. package/lib/types/index.d.ts.map +1 -1
  25. package/lib/types/paths.d.ts +7 -0
  26. package/lib/types/paths.d.ts.map +1 -1
  27. package/lib/types/runtime.d.ts +38 -0
  28. package/lib/types/runtime.d.ts.map +1 -1
  29. package/lib/types/tools.d.ts +22 -1
  30. package/lib/types/tools.d.ts.map +1 -1
  31. package/lib/types/video.d.ts +78 -0
  32. package/lib/types/video.d.ts.map +1 -0
  33. package/lib/types/web.d.ts +1 -0
  34. package/lib/types/web.d.ts.map +1 -1
  35. package/lib/video.js +169 -0
  36. package/lib/video.js.map +1 -0
  37. package/lib/web.js +47 -4
  38. package/lib/web.js.map +1 -1
  39. package/package.json +2 -1
  40. package/src/client/index.tsx +72 -1
  41. package/src/config.ts +43 -0
  42. package/src/exposure.ts +34 -9
  43. package/src/index.ts +10 -5
  44. package/src/paths.ts +11 -0
  45. package/src/runtime.ts +196 -0
  46. package/src/tools.ts +144 -3
  47. package/src/video.ts +222 -0
  48. package/src/web.ts +53 -5
@@ -20,7 +20,26 @@ export declare const VISION_TOOL_NAMES: {
20
20
  readonly dominantColors: "vision_dominant_colors";
21
21
  readonly htmlScreenshot: "vision_html_screenshot";
22
22
  readonly concurrency: "vision_concurrency";
23
+ readonly videoInfo: "vision_video_info";
23
24
  };
25
+ /**
26
+ * Opt-in video-understanding tool name. Deliberately outside {@link VISION_TOOL_NAMES}
27
+ * so the always-registered canonical set stays unconditional; this tool enters an
28
+ * Agent only when a vision service has video support enabled.
29
+ */
30
+ export declare const VISION_VIDEO_UNDERSTAND_TOOL = "vision_video_understand";
31
+ /**
32
+ * Tool-group buckets used by the `toolVisibility` snapshot. A bucket that is
33
+ * off contributes none of its listed tools to an Agent's visible surface.
34
+ * - local: local-processing tools (no on-line fan-out, no concurrency charge).
35
+ * - online: on-line image tools plus the concurrency/status probe.
36
+ * - video: video-understanding tool (experimental).
37
+ */
38
+ export interface ToolVisibility {
39
+ local: boolean;
40
+ online: boolean;
41
+ video: boolean;
42
+ }
24
43
  /** Runtime lookup accepted by tools so Settings can atomically swap generations. */
25
44
  export type VisionToolkitRuntimeSource = VisionToolkitRuntime | (() => VisionToolkitRuntime);
26
45
  /** Browser-only metadata projector; the model-visible value remains unchanged. */
@@ -30,7 +49,9 @@ export type VisionToolkitPresentationProjector = (value: JsonValue) => JsonValue
30
49
  * @param source - Current runtime or atomic runtime lookup.
31
50
  * @param projectPresentation - Browser-only projection for Artifact capabilities.
32
51
  * @param lifecycleSignal - Plugin lifetime; aborting it cancels every active tool call.
52
+ * @param toolVisibility - Session-head visibility snapshot; a bucket that is off
53
+ * contributes none of its tools. Defaults to every bucket on.
33
54
  * @returns Native tool definitions registered as one lifecycle generation.
34
55
  */
35
- export declare function createVisionTools(source: VisionToolkitRuntimeSource, projectPresentation?: VisionToolkitPresentationProjector, lifecycleSignal?: AbortSignal): ReturnType<typeof defineTool>[];
56
+ export declare function createVisionTools(source: VisionToolkitRuntimeSource, projectPresentation?: VisionToolkitPresentationProjector, lifecycleSignal?: AbortSignal, toolVisibility?: ToolVisibility): ReturnType<typeof defineTool>[];
36
57
  //# sourceMappingURL=tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,UAAU,EAAE,KAAK,SAAS,EAA6C,MAAM,wBAAwB,CAAA;AAC9G,OAAO,EACL,oBAAoB,EAWrB,MAAM,cAAc,CAAA;AAerB,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;CAYpB,CAAA;AAsHV,oFAAoF;AACpF,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,GAAG,CAAC,MAAM,oBAAoB,CAAC,CAAA;AAE5F,kFAAkF;AAClF,MAAM,MAAM,kCAAkC,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,CAAA;AAMhF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,0BAA0B,EAClC,mBAAmB,GAAE,kCAAyD,EAC9E,eAAe,CAAC,EAAE,WAAW,GAC5B,UAAU,CAAC,OAAO,UAAU,CAAC,EAAE,CAmbjC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,UAAU,EAAE,KAAK,SAAS,EAA6C,MAAM,wBAAwB,CAAA;AAC9G,OAAO,EACL,oBAAoB,EAWrB,MAAM,cAAc,CAAA;AAgBrB,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;CAapB,CAAA;AAEV;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,4BAA4B,CAAA;AAErE;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;CACf;AA6JD,oFAAoF;AACpF,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,GAAG,CAAC,MAAM,oBAAoB,CAAC,CAAA;AAE5F,kFAAkF;AAClF,MAAM,MAAM,kCAAkC,GAAG,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,CAAA;AAMhF;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,0BAA0B,EAClC,mBAAmB,GAAE,kCAAyD,EAC9E,eAAe,CAAC,EAAE,WAAW,EAC7B,cAAc,GAAE,cAA4D,GAC3E,UAAU,CAAC,OAAO,UAAU,CAAC,EAAE,CAsfjC"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Local video support built on the bundled `ffprobe-static` binary instead of
3
+ * the pinned Python vision pipeline: metadata probing stays a plain JS
4
+ * subprocess, and the model-facing video request reuses the existing object
5
+ * storage + OpenAI-compatible (Aliyun Qwen) chat-completions transport.
6
+ * @module dsh-vision-toolkit/video
7
+ */
8
+ /** Metadata derived from one ffprobe run (path/bytes are supplied by the runtime). */
9
+ export interface VideoMetadata {
10
+ /** Container format name, e.g. "mov" or "matroska". */
11
+ format: string;
12
+ /** Format duration in seconds, or null when the stream reports none. */
13
+ durationSeconds: number | null;
14
+ /** Width of the first video stream, or null when the file carries no video. */
15
+ width: number | null;
16
+ /** Height of the first video stream, or null when the file carries no video. */
17
+ height: number | null;
18
+ /** Average frame rate of the first video stream, or null when unknown. */
19
+ frameRate: number | null;
20
+ /** Codec of the first video stream, or null when the file carries no video. */
21
+ videoCodec: string | null;
22
+ /** Codec of the first audio stream, or null when the file carries no audio. */
23
+ audioCodec: string | null;
24
+ /** Format bit rate in bits per second, or null when unknown. */
25
+ bitRate: number | null;
26
+ /** Number of video streams. */
27
+ videoStreamCount: number;
28
+ /** Number of audio streams. */
29
+ audioStreamCount: number;
30
+ }
31
+ /** Full structured result for one local video-info probe. */
32
+ export interface VideoInfo extends VideoMetadata {
33
+ /** Fence-checked absolute input path. */
34
+ path: string;
35
+ /** Input file size in bytes. */
36
+ bytes: number;
37
+ }
38
+ /** Input for the local video-info tool (no API call). */
39
+ export interface VideoInfoRequest {
40
+ video: string;
41
+ }
42
+ /** Input for the video-understanding tool (video + prompt → vision API). */
43
+ export interface VideoUnderstandRequest {
44
+ video: string;
45
+ prompt: string;
46
+ /** Video sampling frame rate passed to the model; default 2. */
47
+ fps?: number;
48
+ }
49
+ /** Result of one video-understanding call. */
50
+ export interface VideoUnderstandResult {
51
+ /** Fence-checked absolute input path. */
52
+ path: string;
53
+ /** The vision model's answer text. */
54
+ answer: string;
55
+ }
56
+ /**
57
+ * Resolve the bundled ffprobe executable. An explicit `FFPROBE_BIN` override
58
+ * wins (used by tests and unusual installs); otherwise the platform-correct
59
+ * binary shipped by `ffprobe-static` is returned. `null` means no binary is
60
+ * available and the caller must fail loud.
61
+ */
62
+ export declare function ffprobeBinaryPath(): string | null;
63
+ /** S3 object Content-Type for one video extension (browser-probing convention). */
64
+ export declare function videoMediaType(extension: string): string;
65
+ /**
66
+ * Parse the JSON printed by `ffprobe -print_format json -show_format -show_streams`
67
+ * into a compact, model-facing metadata object. Missing or malformed fields
68
+ * degrade to null rather than throwing: metadata is advisory, and the probe
69
+ * only fails when the process itself failed or returned no JSON.
70
+ */
71
+ export declare function parseFfprobeOutput(stdout: string): VideoMetadata;
72
+ /**
73
+ * Extract the answer text from one OpenAI-compatible chat-completions response
74
+ * body. Handles both string content and array content (text parts joined).
75
+ * @returns the answer text, or an empty string when the shape is unrecognized.
76
+ */
77
+ export declare function extractChatAnswer(body: string): string;
78
+ //# sourceMappingURL=video.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video.d.ts","sourceRoot":"","sources":["../../src/video.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,sFAAsF;AACtF,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAA;IACd,wEAAwE;IACxE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,+EAA+E;IAC/E,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,gFAAgF;IAChF,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,0EAA0E;IAC1E,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,gEAAgE;IAChE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,+BAA+B;IAC/B,gBAAgB,EAAE,MAAM,CAAA;IACxB,+BAA+B;IAC/B,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAED,6DAA6D;AAC7D,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAA;CACd;AAED,yDAAyD;AACzD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;CACd;AAED,4EAA4E;AAC5E,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,gEAAgE;IAChE,GAAG,CAAC,EAAE,MAAM,CAAA;CACb;AAED,8CAA8C;AAC9C,MAAM,WAAW,qBAAqB;IACpC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,sCAAsC;IACtC,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAUjD;AAED,mFAAmF;AACnF,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAiBxD;AA8BD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAuDhE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsBtD"}
@@ -91,6 +91,7 @@ export declare class VisionToolkitWebBackend {
91
91
  private deleteCredential;
92
92
  private health;
93
93
  private testStorage;
94
+ private testVideo;
94
95
  /** Handle the exact Settings route. */
95
96
  handle(req: IncomingMessage, res: ServerResponse): Promise<void>;
96
97
  }
@@ -1 +1 @@
1
- {"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"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"}
package/lib/video.js ADDED
@@ -0,0 +1,169 @@
1
+ /**
2
+ * Local video support built on the bundled `ffprobe-static` binary instead of
3
+ * the pinned Python vision pipeline: metadata probing stays a plain JS
4
+ * subprocess, and the model-facing video request reuses the existing object
5
+ * storage + OpenAI-compatible (Aliyun Qwen) chat-completions transport.
6
+ * @module dsh-vision-toolkit/video
7
+ */
8
+ import { createRequire } from 'node:module';
9
+ const require = createRequire(import.meta.url);
10
+ /**
11
+ * Resolve the bundled ffprobe executable. An explicit `FFPROBE_BIN` override
12
+ * wins (used by tests and unusual installs); otherwise the platform-correct
13
+ * binary shipped by `ffprobe-static` is returned. `null` means no binary is
14
+ * available and the caller must fail loud.
15
+ */
16
+ export function ffprobeBinaryPath() {
17
+ const override = process.env.FFPROBE_BIN?.trim();
18
+ if (override !== undefined && override.length > 0)
19
+ return override;
20
+ try {
21
+ const mod = require('ffprobe-static');
22
+ const candidate = mod?.path;
23
+ return typeof candidate === 'string' && candidate.length > 0 ? candidate : null;
24
+ }
25
+ catch {
26
+ return null;
27
+ }
28
+ }
29
+ /** S3 object Content-Type for one video extension (browser-probing convention). */
30
+ export function videoMediaType(extension) {
31
+ switch (extension) {
32
+ case '.mp4': return 'video/mp4';
33
+ case '.mov': return 'video/quicktime';
34
+ case '.webm': return 'video/webm';
35
+ case '.mkv': return 'video/x-matroska';
36
+ case '.avi': return 'video/x-msvideo';
37
+ case '.m4v': return 'video/x-m4v';
38
+ case '.mpeg':
39
+ case '.mpg': return 'video/mpeg';
40
+ case '.wmv': return 'video/x-ms-wmv';
41
+ case '.flv': return 'video/x-flv';
42
+ case '.ts':
43
+ case '.m2ts': return 'video/mp2t';
44
+ case '.3gp': return 'video/3gpp';
45
+ default: return 'application/octet-stream';
46
+ }
47
+ }
48
+ function isRecord(value) {
49
+ return value !== null && typeof value === 'object' && !Array.isArray(value);
50
+ }
51
+ function stringValue(value) {
52
+ return typeof value === 'string' && value.trim().length > 0 ? value : null;
53
+ }
54
+ function integerValue(value) {
55
+ return typeof value === 'number' && Number.isInteger(value) && value > 0 ? value : null;
56
+ }
57
+ /** Parse "num/den" or a plain float string into a frame rate, else null. */
58
+ function parseRate(raw) {
59
+ const text = stringValue(raw);
60
+ if (text === null)
61
+ return null;
62
+ const slash = text.indexOf('/');
63
+ if (slash === -1) {
64
+ const value = Number(text);
65
+ return Number.isFinite(value) && value > 0 ? value : null;
66
+ }
67
+ const numerator = Number(text.slice(0, slash));
68
+ const denominator = Number(text.slice(slash + 1));
69
+ if (!Number.isFinite(numerator) || !Number.isFinite(denominator) || denominator === 0)
70
+ return null;
71
+ const value = numerator / denominator;
72
+ return Number.isFinite(value) && value > 0 ? value : null;
73
+ }
74
+ /**
75
+ * Parse the JSON printed by `ffprobe -print_format json -show_format -show_streams`
76
+ * into a compact, model-facing metadata object. Missing or malformed fields
77
+ * degrade to null rather than throwing: metadata is advisory, and the probe
78
+ * only fails when the process itself failed or returned no JSON.
79
+ */
80
+ export function parseFfprobeOutput(stdout) {
81
+ let parsed;
82
+ try {
83
+ parsed = JSON.parse(stdout);
84
+ }
85
+ catch {
86
+ throw new Error('ffprobe returned invalid JSON');
87
+ }
88
+ if (!isRecord(parsed))
89
+ throw new Error('ffprobe returned an unexpected structure');
90
+ const streams = Array.isArray(parsed.streams) ? parsed.streams.filter(isRecord) : [];
91
+ const format = isRecord(parsed.format) ? parsed.format : {};
92
+ let videoCodec = null;
93
+ let audioCodec = null;
94
+ let width = null;
95
+ let height = null;
96
+ let frameRate = null;
97
+ let videoStreamCount = 0;
98
+ let audioStreamCount = 0;
99
+ for (const stream of streams) {
100
+ const codecType = stringValue(stream.codec_type);
101
+ const codecName = stringValue(stream.codec_name);
102
+ if (codecType === 'video') {
103
+ videoStreamCount += 1;
104
+ if (videoCodec === null) {
105
+ videoCodec = codecName;
106
+ width = integerValue(stream.width);
107
+ height = integerValue(stream.height);
108
+ frameRate = parseRate(stream.avg_frame_rate ?? stream.r_frame_rate);
109
+ }
110
+ }
111
+ else if (codecType === 'audio') {
112
+ audioStreamCount += 1;
113
+ if (audioCodec === null)
114
+ audioCodec = codecName;
115
+ }
116
+ }
117
+ const durationText = stringValue(format.duration);
118
+ const durationSeconds = durationText === null || durationText === 'N/A'
119
+ ? null
120
+ : (() => { const value = Number(durationText); return Number.isFinite(value) && value >= 0 ? value : null; })();
121
+ const formatName = stringValue(format.format_name)?.split(',')[0]?.trim() ?? null;
122
+ return {
123
+ format: formatName ?? 'unknown',
124
+ durationSeconds,
125
+ width,
126
+ height,
127
+ frameRate,
128
+ videoCodec,
129
+ audioCodec,
130
+ bitRate: integerValue(typeof format.bit_rate === 'string' ? Number(format.bit_rate) : format.bit_rate),
131
+ videoStreamCount,
132
+ audioStreamCount,
133
+ };
134
+ }
135
+ /**
136
+ * Extract the answer text from one OpenAI-compatible chat-completions response
137
+ * body. Handles both string content and array content (text parts joined).
138
+ * @returns the answer text, or an empty string when the shape is unrecognized.
139
+ */
140
+ export function extractChatAnswer(body) {
141
+ try {
142
+ const parsed = JSON.parse(body);
143
+ if (!isRecord(parsed))
144
+ return '';
145
+ const choices = parsed.choices;
146
+ if (!Array.isArray(choices) || choices.length === 0)
147
+ return '';
148
+ const first = choices[0];
149
+ if (!isRecord(first))
150
+ return '';
151
+ const message = first.message;
152
+ if (!isRecord(message))
153
+ return '';
154
+ const content = message.content;
155
+ if (typeof content === 'string')
156
+ return content;
157
+ if (Array.isArray(content)) {
158
+ return content
159
+ .filter(isRecord)
160
+ .map(part => (typeof part.text === 'string' ? part.text : ''))
161
+ .join('');
162
+ }
163
+ return '';
164
+ }
165
+ catch {
166
+ return '';
167
+ }
168
+ }
169
+ //# sourceMappingURL=video.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"video.js","sourceRoot":"","sources":["../src/video.ts"],"names":[],"mappings":"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"}
package/lib/web.js CHANGED
@@ -131,6 +131,16 @@ function parseRequest(value) {
131
131
  }
132
132
  if (value.action === 'test-storage')
133
133
  return { action: 'test-storage' };
134
+ if (value.action === 'test-video') {
135
+ const providerIndex = value.providerIndex;
136
+ if (providerIndex !== undefined && (!Number.isSafeInteger(providerIndex) || providerIndex < 0)) {
137
+ throw new TypeError('test-video.providerIndex must be a non-negative integer');
138
+ }
139
+ return {
140
+ action: 'test-video',
141
+ ...(providerIndex === undefined ? {} : { providerIndex: providerIndex }),
142
+ };
143
+ }
134
144
  throw new TypeError(`unsupported action: ${value.action}`);
135
145
  }
136
146
  function publicMessage(error) {
@@ -304,6 +314,34 @@ export class VisionToolkitWebBackend {
304
314
  throw new Error('runtime is not ready; fix Settings and save a valid configuration first');
305
315
  return this.manager.current().testObjectStorage();
306
316
  }
317
+ async testVideo(request, req) {
318
+ if (!this.manager.ready)
319
+ throw new Error('runtime is not ready; fix Settings and save a valid configuration first');
320
+ const controller = new AbortController();
321
+ const abort = () => { controller.abort(); };
322
+ req.once('aborted', abort);
323
+ req.socket.once('close', abort);
324
+ try {
325
+ const runtime = this.manager.current();
326
+ let provider;
327
+ if (request.providerIndex !== undefined) {
328
+ const resolved = resolveConfig(descriptorOf(this.ctx).value);
329
+ provider = resolved.providers[request.providerIndex];
330
+ if (provider === undefined) {
331
+ throw new Error(`provider index ${request.providerIndex} is out of range`);
332
+ }
333
+ }
334
+ return await runtime.testVideoCall({
335
+ signal: controller.signal,
336
+ workspace: runtime.upstreamVersion.runtimeHome,
337
+ sessionId: 'vision-toolkit-settings',
338
+ }, provider);
339
+ }
340
+ finally {
341
+ req.off('aborted', abort);
342
+ req.socket.off('close', abort);
343
+ }
344
+ }
307
345
  /** Handle the exact Settings route. */
308
346
  async handle(req, res) {
309
347
  if (req.method === 'GET') {
@@ -341,6 +379,9 @@ export class VisionToolkitWebBackend {
341
379
  case 'test-storage':
342
380
  responseJson(res, 200, { ok: true, value: await this.testStorage() });
343
381
  break;
382
+ case 'test-video':
383
+ responseJson(res, 200, { ok: true, value: await this.testVideo(parsed, req) });
384
+ break;
344
385
  case 'save':
345
386
  responseJson(res, 200, { ok: true, value: await this.save(parsed) });
346
387
  break;
@@ -372,14 +413,16 @@ export class VisionToolkitWebBackend {
372
413
  ? 'health-failed'
373
414
  : parsed.action === 'test-storage'
374
415
  ? 'storage-test-failed'
375
- : parsed.action === 'credential'
376
- ? 'credential-rejected'
377
- : 'settings-rejected';
416
+ : parsed.action === 'test-video'
417
+ ? 'video-test-failed'
418
+ : parsed.action === 'credential'
419
+ ? 'credential-rejected'
420
+ : 'settings-rejected';
378
421
  const updateConflict = updateError && ['update-in-progress', 'update-stale', 'update-unavailable', 'already-current'].includes(error.code);
379
422
  const updateGateway = updateError && error.code === 'update-check-failed';
380
423
  const status = settingsConflict || credentialConflict || updateConflict
381
424
  ? 409
382
- : parsed.action === 'health' || parsed.action === 'test-storage'
425
+ : parsed.action === 'health' || parsed.action === 'test-storage' || parsed.action === 'test-video'
383
426
  ? 503
384
427
  : updateGateway
385
428
  ? 502
package/lib/web.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"web.js","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAE,qBAAqB,EAA2B,MAAM,2BAA2B,CAAA;AAG1F,OAAO,EAA4B,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AACtF,OAAO,EAEL,kBAAkB,EAClB,kBAAkB,GAGnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,2BAA2B,EAC3B,iCAAiC,GAIlC,MAAM,aAAa,CAAA;AAEpB,OAAO,EACL,iBAAiB,EACjB,gCAAgC,GAIjC,MAAM,oBAAoB,CAAA;AAM3B,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACrG,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpE,qDAAqD;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG,+BAA+B,CAAA;AAE7D,+EAA+E;AAC/E,MAAM,CAAC,MAAM,oBAAoB,GAAG,qCAAqC,CAAA;AAqHzE,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AAC7E,CAAC;AAED,MAAM,gCAAiC,SAAQ,KAAK;CAAG;AAEvD,SAAS,YAAY,CAAC,GAAY;IAChC,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,iCAAiC,CAAC,CAAA;IACpG,IAAI,UAAU,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;IACpG,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,YAAY,CAAI,GAAmB,EAAE,MAAc,EAAE,IAAqB;IACjF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IAC/C,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAA;IAChE,GAAG,CAAC,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;IACrD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;IAC1C,GAAG,CAAC,SAAS,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAA;IAClD,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE,4CAA4C,CAAC,CAAA;IACtF,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IACrB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,GAAmB,EAAE,MAAc,EAAE,IAAY,EAAE,OAAe;IACtF,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;AACpE,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,GAAoB,EAAE,QAAQ,GAAG,EAAE,GAAG,IAAI;IAChE,MAAM,WAAW,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IACvF,IAAI,WAAW,KAAK,kBAAkB;QAAE,MAAM,IAAI,SAAS,CAAC,uCAAuC,CAAC,CAAA;IACpG,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAChE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAA;QACpB,IAAI,KAAK,GAAG,QAAQ;YAAE,MAAM,IAAI,UAAU,CAAC,wBAAwB,QAAQ,QAAQ,CAAC,CAAA;QACpF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnB,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,uBAAuB,CAAC,CAAA;IACrE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAY,CAAA;AACtE,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAAE,MAAM,IAAI,SAAS,CAAC,4BAA4B,CAAC,CAAA;IAC3G,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,OAAO,KAAK,CAAC,cAAc,KAAK,SAAS;YAAE,MAAM,IAAI,SAAS,CAAC,uCAAuC,CAAC,CAAA;QAC3G,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAA;QACzE,IAAI,OAAO,SAAS,KAAK,SAAS;YAAE,MAAM,IAAI,SAAS,CAAC,kCAAkC,CAAC,CAAA;QAC3F,IAAI,SAAS,IAAI,CAAC,KAAK,CAAC,cAAc;YAAE,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAA;QAC9G,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAA;QACzC,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,IAAK,aAAwB,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3G,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAA;QAC5E,CAAC;QACD,OAAO;YACL,MAAM,EAAE,QAAQ;YAChB,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,SAAS;YACT,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,aAAuB,EAAE,CAAC;SACnF,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAK,KAAK,CAAC,gBAA2B,GAAG,CAAC,EAAE,CAAC;YAC5F,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAA;QAC7E,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,8BAA8B,CAAC,CAAA;QAC/E,OAAO;YACL,MAAM,EAAE,MAAM;YACd,gBAAgB,EAAE,KAAK,CAAC,gBAA0B;YAClD,KAAK,EAAE,KAAK,CAAC,KAA4B;SAC1C,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAK,KAAK,CAAC,gBAA2B,GAAG,CAAC,EAAE,CAAC;YAC5F,MAAM,IAAI,SAAS,CAAC,4DAA4D,CAAC,CAAA;QACnF,CAAC;QACD,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ;YAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAA;QACzF,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;YAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAA;QAC7F,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;QACjC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yBAAyB,CAAC,CAAA;QACvE,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACvB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAChH,MAAM,eAAe,GAAG,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC7D,IAAI,MAAM,IAAI,eAAe,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,SAAS,CAAC,iFAAiF,CAAC,CAAA;QACxG,CAAC;QACD,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,gBAAgB,EAAE,KAAK,CAAC,gBAA0B;YAClD,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC;YAC7B,KAAK,EAAE,MAAM;SACd,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;QACzC,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnE,MAAM,IAAI,SAAS,CAAC,kDAAkD,CAAC,CAAA;QACzE,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAA;IAC9E,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc;QAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA;IACtE,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACpC,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,IAAI,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3F,MAAM,IAAI,SAAS,CAAC,yDAAyD,CAAC,CAAA;QAChF,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,CAAA;IAClF,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,cAAc;QAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA;IACtE,MAAM,IAAI,SAAS,CAAC,uBAAuB,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;AAC5D,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,KAAK,YAAY,KAAK;QAAE,OAAO,KAAK,CAAC,OAAO,CAAA;IAChD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;AACtB,CAAC;AAED,+CAA+C;AAC/C,MAAM,OAAO,uBAAuB;IAIf;IACA;IACA;IACA;IANF,OAAO,CAAkB;IAE1C,YACmB,GAAY,EACZ,OAA0B,EAC1B,SAAmC,EACnC,kBAAoC,EACrD,OAA0B;QAJT,QAAG,GAAH,GAAG,CAAS;QACZ,YAAO,GAAP,OAAO,CAAmB;QAC1B,cAAS,GAAT,SAAS,CAA0B;QACnC,uBAAkB,GAAlB,kBAAkB,CAAkB;QAGrD,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI,gCAAgC,CAAC,GAAG,EAAE,cAAc,EAAE;YAClF,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK;SAChD,CAAC,CAAA;IACJ,CAAC;IAED,sFAAsF;IACtF,kBAAkB,CAAC,IAAY,EAAE,IAAY;QAC3C,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC/C,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,MAAmC;QAC1D,IAAI,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;QACvE,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IACzF,CAAC;IAED,8EAA8E;IAC9E,KAAK,CAAC,QAAQ;QACZ,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,KAAK,GAAG,UAAU,CAAC,KAA4B,CAAA;QACrD,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;QACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QAClD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAC,QAAQ,EAAC,EAAE;YAC5E,IAAI,2BAA2B,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;YACzG,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YAC5F,OAAO;gBACL,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAChC,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC7D,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAA;QACH,CAAC,CAAC,CAAC,CAAA;QACH,MAAM,gBAAgB,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QACzH,MAAM,uBAAuB,GAAG,gBAAgB,KAAK,EAAE;YACrD,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACtE,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnF,GAAG,EAAE,gBAAgB;gBACrB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC,CAAA;QACL,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAA;QAC9C,OAAO;YACL,aAAa,EAAE,CAAC;YAChB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ;YACpC,QAAQ,EAAE;gBACR,KAAK;gBACL,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;gBACnE,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;gBACnE,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,OAAO,EAAE,MAAM;aAChB;YACD,UAAU,EAAE;gBACV,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACzC,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;gBACzE,QAAQ,EAAE,UAAU,CAAC,QAAQ;aAC9B;YACD,WAAW;YACX,uBAAuB;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAC9B,OAAO,EAAE;gBACP,aAAa,EAAE,cAAc;gBAC7B,kBAAkB,EAAE,mBAAmB;gBACvC,eAAe,EAAE,gBAAgB;gBACjC,cAAc,EAAE,eAAe;gBAC/B,MAAM;aACP;YACD,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc;SACtD,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,OAAoB;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAClF,MAAM,OAAO,GAAG,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAA4B,CAAC,CAAA;QAClF,MAAM,cAAc,GAAG,sBAAsB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QACrE,MAAM,KAAK,GAAwB;YACjC,GAAG,OAAO,CAAC,KAAK;YAChB,GAAG,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC;SAC3D,CAAA;QACD,IAAI,SAAoC,CAAA;QACxC,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;YACjC,MAAM,KAAK,CAAA;QACb,CAAC;QACD,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAC7B,iCAAiC,EACjC,KAAe,EACf,OAAO,CAAC,gBAAgB,CACzB,CAAA;QACD,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;QACzC,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,OAA0B;QACrD,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACzC,IAAI,UAAU,CAAC,QAAQ,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC;YACrD,MAAM,IAAI,qBAAqB,CAC7B,iCAAiC,EACjC,OAAO,CAAC,gBAAgB,EACxB,UAAU,CAAC,QAAQ,CACpB,CAAA;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,KAA4B,CAAC,CAAA;QACvE,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC/B,IAAI,QAAQ,CAAC,aAAa,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC;YACzG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAA;YACpF,CAAC;YACD,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;YAC1D,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;QACxB,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAA;QACnF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,gCAAgC,CACxC,yBAAyB,GAAG,gFAAgF,CAC7G,CAAA;QACH,CAAC;QACD,IAAI,2BAA2B,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;QACrF,CAAC;QACD,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1D,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,OAAgC;QAC7D,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC7C,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;IACxB,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,OAAsB,EAAE,GAAoB;QAC/D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAA;QACnH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,MAAM,KAAK,GAAG,GAAS,EAAE,GAAG,UAAU,CAAC,KAAK,EAAE,CAAA,CAAC,CAAC,CAAA;QAChD,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;QAC1B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;YACtC,IAAI,QAAsC,CAAA;YAC1C,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBACxC,MAAM,QAAQ,GAAG,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAA4B,CAAC,CAAA;gBACnF,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;gBACpD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,IAAI,KAAK,CAAC,kBAAkB,OAAO,CAAC,aAAa,kBAAkB,CAAC,CAAA;gBAC5E,CAAC;YACH,CAAC;YACD,iEAAiE;YACjE,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE;gBAClD,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,WAAW;gBAC9C,SAAS,EAAE,yBAAyB;aACrC,EAAE,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QACjC,CAAC;gBAAS,CAAC;YACT,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;YACzB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAA;QACnH,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,iBAAiB,EAAE,CAAA;IACnD,CAAC;IAED,uCAAuC;IACvC,KAAK,CAAC,MAAM,CAAC,GAAoB,EAAE,GAAmB;QACpD,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YACpE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;gBAC7F,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,sBAAsB,EAAE,yCAAyC,CAAC,CAAA;YAC3F,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC1B,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;YACnC,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,CAAA;YAC/D,OAAM;QACR,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,EAAE,0DAA0D,CAAC,CAAA;YACrG,OAAM;QACR,CAAC;QACD,IAAI,MAAuB,CAAA;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,YAAY,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,GAAG,EAAE,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,iBAAiB,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;YACnG,OAAM;QACR,CAAC;QACD,IAAI,CAAC;YACH,QAAQ,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtB,KAAK,QAAQ;oBACX,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;oBAC3E,MAAK;gBACP,KAAK,cAAc;oBACjB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;oBACrE,MAAK;gBACP,KAAK,MAAM;oBACT,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACpE,MAAK;gBACP,KAAK,YAAY;oBACf,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBAC9E,MAAK;gBACP,KAAK,mBAAmB;oBACtB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBAChF,MAAK;gBACP,KAAK,cAAc;oBACjB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;oBACvE,MAAK;gBACP,KAAK,cAAc;oBACjB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;oBACzG,MAAK;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,gBAAgB,GAAG,KAAK,YAAY,qBAAqB,CAAA;YAC/D,MAAM,kBAAkB,GAAG,KAAK,YAAY,gCAAgC,CAAA;YAC5E,MAAM,WAAW,GAAG,KAAK,YAAY,iBAAiB,CAAA;YACtD,MAAM,IAAI,GAAG,gBAAgB;gBAC3B,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,kBAAkB;oBAClB,CAAC,CAAC,qBAAqB;oBACvB,CAAC,CAAC,WAAW;wBACX,CAAC,CAAC,KAAK,CAAC,IAAI;wBACd,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ;4BAC1B,CAAC,CAAC,eAAe;4BACjB,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,cAAc;gCAChC,CAAC,CAAC,qBAAqB;gCACvB,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,YAAY;oCAC9B,CAAC,CAAC,qBAAqB;oCACvB,CAAC,CAAC,mBAAmB,CAAA;YAC/B,MAAM,cAAc,GAAG,WAAW,IAAI,CAAC,oBAAoB,EAAE,cAAc,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC1I,MAAM,aAAa,GAAG,WAAW,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,CAAA;YACzE,MAAM,MAAM,GAAG,gBAAgB,IAAI,kBAAkB,IAAI,cAAc;gBACrE,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc;oBAC9D,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,aAAa;wBACb,CAAC,CAAC,GAAG;wBACL,CAAC,CAAC,WAAW;4BACX,CAAC,CAAC,GAAG;4BACL,CAAC,CAAC,GAAG,CAAA;YACb,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;YACxG,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;CACF;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAA2G;IAE3G,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAClB,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;oBACzB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAA;oBACvD,OAAM;gBACR,CAAC;gBACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC5B,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,EAAE,0DAA0D,CAAC,CAAA;oBACrG,OAAM;gBACR,CAAC;gBACD,IAAI,SAAiB,CAAA;gBACrB,IAAI,UAA8B,CAAA;gBAClC,IAAI,SAA0C,CAAA;gBAC9C,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,kBAAkB,EAAE,qBAAqB,CAAC,CAAA;oBACzE,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;oBACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;wBAC7E,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAA;oBAC3D,CAAC;oBACD,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAA;oBACxB,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;oBAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAA;oBAC7E,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;oBACtB,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;oBACrD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAA;oBACnF,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;oBACnD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAA;oBACjF,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;oBAC1D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,IAAI,SAAS,CAAC,2CAA2C,CAAC,CAAA;oBACxF,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;oBAC7B,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;oBAC3B,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;wBACzF,SAAS,GAAG;4BACV,QAAQ;4BACR,KAAK,EAAE,OAAO;4BACd,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;yBAC1F,CAAA;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;oBAC/D,OAAM;gBACR,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;gBAC/D,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;YACtD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;YAC/D,CAAC;QACH,CAAC,CAAC,EAAE,CAAA;IACN,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CACxC,gBAA2C;IAE3C,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;gBACzB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAA;gBACvD,OAAM;YACR,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC5B,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,iBAAiB,EAAE,0DAA0D,CAAC,CAAA;gBACrG,OAAM;YACR,CAAC;YACD,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAA;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,uBAAuB,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;QACvE,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACrC,GAAY,EACZ,OAAgC,EAChC,SAAmC,EACnC,YAAgC,EAChC,WAA+G,EAC/G,gBAA2C;IAE3C,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE;QACnC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE;YACjB,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YACxE,MAAM,MAAM,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;YACtC,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;gBAChD,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;aAClD,CAAC,CAAA;YACF,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;gBAChD,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;aAChD,CAAC,CAAA;YACF,MAAM,kBAAkB,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACnD,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;aACrD,CAAC,CAAA;YACF,MAAM,kBAAkB,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACnD,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,wBAAwB,CAAC,WAAW,CAAC;aAC/C,CAAC,CAAA;YACF,MAAM,oBAAoB,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACrD,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EAAE,0BAA0B,CAAC,gBAAgB,CAAC;aACtD,CAAC,CAAA;YACF,OAAO,GAAG,EAAE;gBACV,oBAAoB,EAAE,CAAA;gBACtB,kBAAkB,EAAE,CAAA;gBACpB,kBAAkB,EAAE,CAAA;gBACpB,eAAe,EAAE,CAAA;gBACjB,eAAe,EAAE,CAAA;gBACjB,MAAM,EAAE,CAAA;YACV,CAAC,CAAA;QACH,CAAC,EAAE,gCAAgC,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"web.js","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mengruo/dsh-vision-toolkit",
3
- "version": "0.1.5",
3
+ "version": "0.1.6-beta.0",
4
4
  "description": "DeepSeek Harness-native integration for agent-vision-toolkit: image Q&A, OCR, grounding, UI restoration, pixel diff, Artifacts, and Web UI.",
5
5
  "keywords": [
6
6
  "deepseek",
@@ -97,6 +97,7 @@
97
97
  "dependencies": {
98
98
  "@aws-sdk/client-s3": "^3.700.0",
99
99
  "@aws-sdk/s3-request-presigner": "^3.700.0",
100
+ "ffprobe-static": "3.1.0",
100
101
  "saxes": "6.0.0",
101
102
  "tar": "7.5.22",
102
103
  "undici": "8.10.0",