@cliangdev/conductor 0.22.0 → 0.23.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.
@@ -1,7 +1,10 @@
1
- import { readFile } from 'node:fs/promises';
2
- import { basename } from 'node:path';
1
+ import { readFile, mkdtemp, writeFile, rm } from 'node:fs/promises';
2
+ import { basename, extname, join } from 'node:path';
3
+ import { tmpdir } from 'node:os';
3
4
  import { apiGet, apiPost, apiPatch, putBytes, ApiError } from '../api.js';
4
5
  import { readImageDimensions } from '../../lib/image-dimensions.js';
6
+ import { probeMedia, extractPoster } from '../../lib/media-probe.js';
7
+ import { composePosterSheet } from '../../lib/poster-sheet.js';
5
8
  import { renderCreative as runLocalRender } from '../../lib/creative-render.js';
6
9
  /**
7
10
  * Conductor Creatives: a Brand Kit (tokens, copy rules, approved lines) governs one or more
@@ -148,10 +151,11 @@ export async function updateCreative(params, config) {
148
151
  const { creativeId, ...patch } = params;
149
152
  return withCreativeErrors(() => apiPatch(`${creativesBase(config)}/${creativeId}`, patch, config));
150
153
  }
151
- // --- Photos -----------------------------------------------------------------
152
- async function readPhotoSource(params) {
154
+ // --- Media (photo library: photos, video, audio) -----------------------------
155
+ const VIDEO_LENGTH_WARNING_SECONDS = 180;
156
+ async function readMediaSource(params) {
153
157
  if (params.filePath) {
154
- return { bytes: new Uint8Array(await readFile(params.filePath)), filename: basename(params.filePath) };
158
+ return { bytes: new Uint8Array(await readFile(params.filePath)), filename: basename(params.filePath), filePath: params.filePath };
155
159
  }
156
160
  const raw = params.url;
157
161
  let parsed;
@@ -169,33 +173,133 @@ async function readPhotoSource(params) {
169
173
  throw new Error(`Fetching ${raw} failed: HTTP ${response.status}`);
170
174
  }
171
175
  const bytes = new Uint8Array(await response.arrayBuffer());
172
- return { bytes, filename: basename(parsed.pathname) || 'photo' };
176
+ return { bytes, filename: basename(parsed.pathname) || 'media' };
173
177
  }
174
- export async function uploadCreativePhoto(params, config) {
178
+ function stripExtension(filename) {
179
+ const ext = extname(filename);
180
+ return ext ? filename.slice(0, -ext.length) : filename;
181
+ }
182
+ /** The fields worth an agent's context for one uploaded media item — trims whatever else the
183
+ * backend's photo library response carries (checked/blocked review metadata, timestamps, etc.). */
184
+ const MEDIA_RESULT_FIELDS = [
185
+ 'id', 'label', 'mediaKind', 'contentType', 'width', 'height', 'durationSeconds', 'hasAudio',
186
+ 'posterUrl', 'url', 'sizeBytes', 'source', 'licence', 'aiGenerated', 'uploadStatus', 'checked', 'blocked',
187
+ ];
188
+ function trimMedia(media) {
189
+ const out = {};
190
+ for (const key of MEDIA_RESULT_FIELDS) {
191
+ if (key in media)
192
+ out[key] = media[key];
193
+ }
194
+ return out;
195
+ }
196
+ async function uploadPoster(mediaId, localVideoPath, config, warnings) {
197
+ const posterPath = join(tmpdir(), `conductor-poster-${mediaId}.jpg`);
198
+ try {
199
+ await extractPoster(localVideoPath, posterPath, 1);
200
+ const posterBytes = await readFile(posterPath);
201
+ const posterMint = await apiPost(`${V2_PROJECT(config)}/marketing/photos/${mediaId}/poster`, {}, config);
202
+ await putBytes(posterMint.uploadUrl, 'image/jpeg', posterBytes);
203
+ await apiPost(`${V2_PROJECT(config)}/marketing/photos/${mediaId}/poster/confirm`, { gcsPath: posterMint.gcsPath }, config);
204
+ }
205
+ catch (err) {
206
+ warnings.push(`Could not extract or upload a poster frame: ${err instanceof Error ? err.message : String(err)}`);
207
+ }
208
+ finally {
209
+ await rm(posterPath, { force: true }).catch(() => { });
210
+ }
211
+ }
212
+ /**
213
+ * Uploads a photo, video or audio file into the project's media library from a local path or a
214
+ * public URL, detecting its kind, dimensions/duration/audio automatically, and — for a video —
215
+ * extracting and uploading a poster frame. Shared by `upload_creative_media` and the deprecated
216
+ * `upload_creative_photo` alias, so the two never drift.
217
+ */
218
+ export async function uploadCreativeMedia(params, config) {
175
219
  if (!params.filePath && !params.url) {
176
220
  throw new Error('Pass filePath (a file on this machine) or url (a public http(s) URL).');
177
221
  }
178
- const { bytes, filename } = await readPhotoSource(params);
179
- const info = readImageDimensions(bytes);
180
- if (!info) {
181
- throw new Error(`Could not read "${filename}" as a PNG, JPEG or WebP — Creative photos accept only those three formats.`);
182
- }
183
- const mint = await apiPost(`${V2_PROJECT(config)}/marketing/photos`, {
184
- label: params.label ?? filename,
185
- contentType: info.contentType,
186
- sizeBytes: bytes.byteLength,
187
- width: info.width,
188
- height: info.height,
189
- source: params.source ?? null,
190
- licence: params.licence ?? null,
191
- aiGenerated: !!params.aiGenerated,
192
- }, config);
193
- if (!mint.uploadUrl) {
194
- throw new Error('The mint response carried no uploadUrl — cannot upload bytes.');
195
- }
196
- await putBytes(mint.uploadUrl, info.contentType, bytes);
197
- return apiPost(`${V2_PROJECT(config)}/marketing/photos/${mint.id}/confirm`, { sizeBytes: bytes.byteLength }, config);
222
+ const source = await readMediaSource(params);
223
+ const label = params.label ?? stripExtension(source.filename);
224
+ const warnings = [];
225
+ const imageInfo = readImageDimensions(source.bytes);
226
+ if (imageInfo) {
227
+ const mint = await apiPost(`${V2_PROJECT(config)}/marketing/photos`, {
228
+ label,
229
+ contentType: imageInfo.contentType,
230
+ sizeBytes: source.bytes.byteLength,
231
+ width: imageInfo.width,
232
+ height: imageInfo.height,
233
+ source: params.source ?? null,
234
+ licence: params.licence ?? null,
235
+ aiGenerated: !!params.aiGenerated,
236
+ }, config);
237
+ if (!mint.uploadUrl) {
238
+ throw new Error('The mint response carried no uploadUrl — cannot upload bytes.');
239
+ }
240
+ await putBytes(mint.uploadUrl, imageInfo.contentType, source.bytes);
241
+ const confirmed = await apiPost(`${V2_PROJECT(config)}/marketing/photos/${mint.id}/confirm`, { sizeBytes: source.bytes.byteLength }, config);
242
+ return { media: trimMedia(confirmed), warnings };
243
+ }
244
+ // Not an image — probe it as video/audio, which needs a real file on disk.
245
+ let probePath = source.filePath;
246
+ let tempDir;
247
+ if (!probePath) {
248
+ tempDir = await mkdtemp(join(tmpdir(), 'conductor-media-'));
249
+ probePath = join(tempDir, source.filename || 'media');
250
+ await writeFile(probePath, source.bytes);
251
+ }
252
+ let probe;
253
+ try {
254
+ probe = await probeMedia(probePath);
255
+ }
256
+ catch (err) {
257
+ if (tempDir)
258
+ await rm(tempDir, { recursive: true, force: true }).catch(() => { });
259
+ throw new Error(`Could not read "${source.filename}" as a photo, video or audio file: ${err instanceof Error ? err.message : String(err)}`);
260
+ }
261
+ if (probe.kind !== 'VIDEO' && probe.kind !== 'AUDIO') {
262
+ if (tempDir)
263
+ await rm(tempDir, { recursive: true, force: true }).catch(() => { });
264
+ throw new Error(`"${source.filename}" is not a recognizable photo, video or audio file.`);
265
+ }
266
+ if (probe.kind === 'VIDEO' && probe.durationSeconds && probe.durationSeconds > VIDEO_LENGTH_WARNING_SECONDS) {
267
+ warnings.push(`This video is ${Math.round(probe.durationSeconds)}s long — longer than most platforms take.`);
268
+ }
269
+ try {
270
+ const mint = await apiPost(`${V2_PROJECT(config)}/marketing/photos`, {
271
+ mediaKind: probe.kind,
272
+ label,
273
+ contentType: probe.contentType,
274
+ sizeBytes: source.bytes.byteLength,
275
+ width: probe.width ?? null,
276
+ height: probe.height ?? null,
277
+ durationSeconds: probe.durationSeconds ?? null,
278
+ hasAudio: probe.kind === 'VIDEO' ? !!probe.hasAudio : undefined,
279
+ source: params.source ?? null,
280
+ licence: params.licence ?? null,
281
+ aiGenerated: !!params.aiGenerated,
282
+ }, config);
283
+ if (!mint.uploadUrl) {
284
+ throw new Error('The mint response carried no uploadUrl — cannot upload bytes.');
285
+ }
286
+ await putBytes(mint.uploadUrl, probe.contentType, source.bytes);
287
+ const confirmed = await apiPost(`${V2_PROJECT(config)}/marketing/photos/${mint.id}/confirm`, { sizeBytes: source.bytes.byteLength }, config);
288
+ let finalMedia = confirmed;
289
+ if (probe.kind === 'VIDEO') {
290
+ await uploadPoster(mint.id, probePath, config, warnings);
291
+ finalMedia = await apiGet(`${V2_PROJECT(config)}/marketing/photos/${mint.id}`, config).catch(() => confirmed);
292
+ }
293
+ return { media: trimMedia(finalMedia), warnings };
294
+ }
295
+ finally {
296
+ if (tempDir)
297
+ await rm(tempDir, { recursive: true, force: true }).catch(() => { });
298
+ }
198
299
  }
300
+ /** Deprecated alias for {@link uploadCreativeMedia}, kept so existing callers naming the old tool
301
+ * still work — same implementation, same behavior, including for photos. */
302
+ export const uploadCreativePhoto = uploadCreativeMedia;
199
303
  export async function renderCreativeTool(params, config) {
200
304
  const result = await runLocalRender({ creativeId: params.creativeId, previewOnly: !!params.previewOnly, renderer: params.renderer ?? 'mcp', workflowRunId: params.workflowRunId }, config);
201
305
  return {
@@ -224,11 +328,93 @@ function findCurrentSheetFrame(renders, version) {
224
328
  }
225
329
  return undefined;
226
330
  }
331
+ // The latest SUCCEEDED render (of the creative's current version) that actually has frames — CLIP has
332
+ // no dedicated 'sheet' frame the way a STILL previewOnly render does, so any frame set will do.
333
+ function findLatestRenderWithFrames(renders, version) {
334
+ for (const render of renders) {
335
+ if (render.state !== 'SUCCEEDED')
336
+ continue;
337
+ if (version !== undefined && render.creativeVersion !== version)
338
+ continue;
339
+ if (render.frames && render.frames.length)
340
+ return render;
341
+ }
342
+ return undefined;
343
+ }
344
+ /**
345
+ * CLIP preview: there is no server-rendered contact sheet (previewOnly renders 422 for CLIP), so this
346
+ * downloads each placement frame's poster JPEG and composes them into one small sheet locally with
347
+ * ffmpeg (see poster-sheet.ts), falling back to just the first poster on its own if composition fails
348
+ * — showing one frame beats showing nothing. Frame count is placement count, so it's always at least 1.
349
+ */
350
+ async function previewClip(creativeId, version, renders, config) {
351
+ let render = findLatestRenderWithFrames(renders, version);
352
+ if (!render) {
353
+ // previewOnly renders are refused for CLIP — the only way to get frames is a real render.
354
+ const rendered = await runLocalRender({ creativeId, previewOnly: false, renderer: 'mcp' }, config);
355
+ if (!rendered.ok || !rendered.frames.length) {
356
+ return {
357
+ renderId: rendered.renderId,
358
+ state: rendered.state,
359
+ note: `Rendering failed${rendered.error ? `: ${rendered.error}` : '.'} There is nothing to show.`,
360
+ };
361
+ }
362
+ render = { id: rendered.renderId, state: rendered.state ?? 'SUCCEEDED', frames: rendered.frames };
363
+ }
364
+ const frames = (render.frames ?? []).filter((f) => f.posterUrl);
365
+ if (!frames.length) {
366
+ return { renderId: render.id, state: render.state, note: 'The render produced no poster frame to preview.' };
367
+ }
368
+ const summary = frames
369
+ .map((f) => {
370
+ const size = f.width && f.height ? `${f.width}x${f.height}` : '';
371
+ const duration = f.durationSeconds != null ? `${f.durationSeconds}s` : '';
372
+ return `${f.placementKey}: ${[size, duration].filter(Boolean).join(', ') || 'unknown'}`;
373
+ })
374
+ .join('\n');
375
+ const dir = await mkdtemp(join(tmpdir(), 'conductor-preview-'));
376
+ try {
377
+ const posterPaths = [];
378
+ let firstPoster;
379
+ for (const frame of frames) {
380
+ const response = await fetch(frame.posterUrl);
381
+ if (!response.ok)
382
+ continue;
383
+ const bytes = Buffer.from(await response.arrayBuffer());
384
+ if (!firstPoster)
385
+ firstPoster = bytes;
386
+ const filePath = join(dir, `${frame.placementKey}.jpg`);
387
+ await writeFile(filePath, bytes);
388
+ posterPaths.push(filePath);
389
+ }
390
+ if (!posterPaths.length || !firstPoster) {
391
+ return { renderId: render.id, state: render.state, note: 'Could not download any poster frame to preview.' };
392
+ }
393
+ try {
394
+ const sheet = await composePosterSheet(posterPaths);
395
+ return { renderId: render.id, state: render.state, image: { data: sheet, mimeType: 'image/jpeg' }, note: summary };
396
+ }
397
+ catch {
398
+ return {
399
+ renderId: render.id,
400
+ state: render.state,
401
+ image: { data: firstPoster, mimeType: 'image/jpeg' },
402
+ note: `${summary}\n(Could not compose a combined sheet — showing the first placement's poster only.)`,
403
+ };
404
+ }
405
+ }
406
+ finally {
407
+ await rm(dir, { recursive: true, force: true }).catch(() => { });
408
+ }
409
+ }
227
410
  export async function previewCreative(params, config) {
228
411
  const [creative, renders] = await Promise.all([
229
412
  apiGet(`${creativesBase(config)}/${params.creativeId}`, config),
230
413
  apiGet(`${creativesBase(config)}/${params.creativeId}/renders`, config),
231
414
  ]);
415
+ if (creative?.kind === 'CLIP') {
416
+ return previewClip(params.creativeId, creative?.version, renders, config);
417
+ }
232
418
  let found = findCurrentSheetFrame(renders, creative?.version);
233
419
  if (!found) {
234
420
  const rendered = await runLocalRender({ creativeId: params.creativeId, previewOnly: true, renderer: 'mcp' }, config);
@@ -1 +1 @@
1
- {"version":3,"file":"creatives.js","sourceRoot":"","sources":["../../../src/mcp/tools/creatives.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"creatives.js","sourceRoot":"","sources":["../../../src/mcp/tools/creatives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAEhC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,aAAa,EAAyB,MAAM,0BAA0B,CAAA;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,OAAO,EAAE,cAAc,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAE/E;;;;;;GAMG;AAEH,MAAM,UAAU,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,oBAAoB,MAAM,CAAC,SAAS,EAAE,CAAA;AACrF,MAAM,aAAa,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAA;AAC7F,MAAM,eAAe,GAAG,CAAC,MAAc,EAAU,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,wBAAwB,CAAA;AAEjG,4EAA4E;AAC5E,SAAS,MAAM,CAAC,CAAU;IACxB,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAqB,CAAA;IACvD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAA;AACtC,CAAC;AAED,gHAAgH;AAChH,SAAS,oBAAoB,CAAC,KAA8B;IAC1D,OAAO;QACL,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC;QAC/B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;QACrB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC;QAC3B,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;QACrB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC/C,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACvC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC;KAC5B,CAAA;AACH,CAAC;AAED,mFAAmF;AACnF,SAAS,cAAc,CAAC,UAAmC;IACzD,OAAO;QACL,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC;QACpB,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC;QAC1B,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC;QAC5B,WAAW,EAAE,UAAU,CAAC,aAAa,CAAC;QACtC,gBAAgB,EAAE,UAAU,CAAC,kBAAkB,CAAC;QAChD,SAAS,EAAE,UAAU,CAAC,WAAW,CAAC;QAClC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC;QAC9B,qBAAqB,EAAE,UAAU,CAAC,uBAAuB,CAAC;KAC3D,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,kBAAkB,CAAI,EAAoB;IACvD,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAA;IACnB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,QAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1E,IAAI,UAAmF,CAAA;YACvF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAA6B,CAAA;gBAClE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;oBAAE,UAAU,GAAG,MAAM,CAAC,UAA+B,CAAA;YAC3F,CAAC;YAAC,MAAM,CAAC;gBACP,qEAAqE;YACvE,CAAC;YACD,MAAM,OAAO,GAAG,UAAU;gBACxB,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClF,CAAC,CAAC,GAAG,CAAC,OAAO,CAAA;YACf,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;QAC/E,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC;AAED,6EAA6E;AAE7E,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAA0B,EAAE,MAAc;IAC1E,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,yBAAyB,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAA;IACrF,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAiC,GAAG,UAAU,CAAC,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAA;IAC/G,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;IACzD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,oGAAoG,CAAC,CAAA;IACvH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,+EAA+E;AAE/E,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA+C,EAC/C,MAAc;IAEd,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAA;IACnC,IAAI,MAAM,CAAC,KAAK;QAAE,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAClD,IAAI,MAAM,CAAC,UAAU;QAAE,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;IACjE,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;IAC3B,OAAO,MAAM,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAA;AACxE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAA8B,EAAE,MAAc;IAC9E,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAChE,MAAM,CAA0B,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC;QACxF,MAAM,CAA0B,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,YAAY,EAAE,MAAM,CAAC;QAClG,MAAM,CAAiC,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACrE,MAAM,CAA0B,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,cAAc,EAAE,MAAM,CAAC;KACrG,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,GAAG;SACjB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC/E,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;IAEvG,MAAM,kBAAkB,GAAG,QAAQ,CAAC,oBAAoB,CAA8B,CAAA;IACtF,IAAI,UAA+C,CAAA;IACnD,IAAI,kBAAkB,EAAE,CAAC;QACvB,UAAU,GAAG,MAAM,MAAM,CAA0B,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,kBAAkB,EAAE,EAAE,MAAM,CAAC,CAAA;IAChH,CAAC;SAAM,CAAC;QACN,MAAM,WAAW,GAAG,MAAM,MAAM,CAC9B,GAAG,eAAe,CAAC,MAAM,CAAC,eAAe,MAAM,CAAC,UAAU,EAAE,EAC5D,MAAM,CACP,CAAA;QACD,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAC7B,CAAC;IAED,MAAM,MAAM,GAAI,WAAW,CAAC,QAAQ,CAAgD,IAAI,EAAE,CAAA;IAC1F,OAAO;QACL,GAAG,QAAQ;QACX,SAAS;QACT,QAAQ;QACR,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC;QAC7C,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;KAC3D,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAqE,EACrE,MAAc;IAEd,OAAO,kBAAkB,CAAC,GAAG,EAAE,CAC7B,OAAO,CACL,eAAe,CAAC,MAAM,CAAC,EACvB,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,EACzF,MAAM,CACP,CACF,CAAA;AACH,CAAC;AA0CD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAA4B,EAAE,MAAc;IAC/E,OAAO,kBAAkB,CAAC,KAAK,IAAI,EAAE;QACnC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO,OAAO,CACZ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,WAAW,EACvD,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EAChD,MAAM,CACP,CAAA;QACH,CAAC;QACD,OAAO,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAA;IACpF,CAAC,CAAC,CAAA;AACJ,CAAC;AAOD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAA4B,EAAE,MAAc;IAC/E,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAA;IACvC,OAAO,kBAAkB,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;AACpG,CAAC;AAED,gFAAgF;AAEhF,MAAM,4BAA4B,GAAG,GAAG,CAAA;AAWxC,KAAK,UAAU,eAAe,CAAC,MAA2C;IACxE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,OAAO,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAA;IACnI,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAa,CAAA;IAChC,IAAI,MAAW,CAAA;IACf,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,IAAI,GAAG,sBAAsB,CAAC,CAAA;IAChD,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC7E,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;IACpC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,iBAAiB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IACpE,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;IAC1D,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAA;AAClE,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC7B,OAAO,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;AACxD,CAAC;AAED;mGACmG;AACnG,MAAM,mBAAmB,GAAG;IAC1B,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU;IAC3F,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS;CACjG,CAAA;AAEV,SAAS,SAAS,CAAC,KAA8B;IAC/C,MAAM,GAAG,GAA4B,EAAE,CAAA;IACvC,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACtC,IAAI,GAAG,IAAI,KAAK;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;IACzC,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,OAAe,EAAE,cAAsB,EAAE,MAAc,EAAE,QAAkB;IACrG,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,oBAAoB,OAAO,MAAM,CAAC,CAAA;IACpE,IAAI,CAAC;QACH,MAAM,aAAa,CAAC,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;QAClD,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAA;QAC9C,MAAM,UAAU,GAAG,MAAM,OAAO,CAC9B,GAAG,UAAU,CAAC,MAAM,CAAC,qBAAqB,OAAO,SAAS,EAC1D,EAAE,EACF,MAAM,CACP,CAAA;QACD,MAAM,QAAQ,CAAC,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,CAAC,CAAA;QAC/D,MAAM,OAAO,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,qBAAqB,OAAO,iBAAiB,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAA;IAC5H,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,QAAQ,CAAC,IAAI,CAAC,+CAA+C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAClH,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACvD,CAAC;AACH,CAAC;AAgBD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,MAAiC,EAAE,MAAc;IACzF,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;IAC1F,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC7D,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACnD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,MAAM,OAAO,CACxB,GAAG,UAAU,CAAC,MAAM,CAAC,mBAAmB,EACxC;YACE,KAAK;YACL,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;YAClC,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;YAC7B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;YAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;SAClC,EACD,MAAM,CACP,CAAA;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;QAClF,CAAC;QACD,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QACnE,MAAM,SAAS,GAAG,MAAM,OAAO,CAC7B,GAAG,UAAU,CAAC,MAAM,CAAC,qBAAqB,IAAI,CAAC,EAAE,UAAU,EAC3D,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,EACtC,MAAM,CACP,CAAA;QACD,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IAClD,CAAC;IAED,2EAA2E;IAC3E,IAAI,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAA;IAC/B,IAAI,OAA2B,CAAA;IAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAA;QAC3D,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAA;QACrD,MAAM,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,KAAuB,CAAA;IAC3B,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAA;IACrC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,OAAO;YAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAChF,MAAM,IAAI,KAAK,CACb,mBAAmB,MAAM,CAAC,QAAQ,sCAAsC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC3H,CAAA;IACH,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACrD,IAAI,OAAO;YAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAChF,MAAM,IAAI,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,qDAAqD,CAAC,CAAA;IAC3F,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,GAAG,4BAA4B,EAAE,CAAC;QAC5G,QAAQ,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,CAAC,2CAA2C,CAAC,CAAA;IAC9G,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,OAAO,CACxB,GAAG,UAAU,CAAC,MAAM,CAAC,mBAAmB,EACxC;YACE,SAAS,EAAE,KAAK,CAAC,IAAI;YACrB,KAAK;YACL,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;YAClC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI;YAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI;YAC5B,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,IAAI;YAC9C,QAAQ,EAAE,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC/D,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;YAC7B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;YAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;SAClC,EACD,MAAM,CACP,CAAA;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAA;QAClF,CAAC;QACD,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QAC/D,MAAM,SAAS,GAAG,MAAM,OAAO,CAC7B,GAAG,UAAU,CAAC,MAAM,CAAC,qBAAqB,IAAI,CAAC,EAAE,UAAU,EAC3D,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,EACtC,MAAM,CACP,CAAA;QAED,IAAI,UAAU,GAAG,SAAS,CAAA;QAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;YACxD,UAAU,GAAG,MAAM,MAAM,CAA0B,GAAG,UAAU,CAAC,MAAM,CAAC,qBAAqB,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,KAAK,CACnH,GAAG,EAAE,CAAC,SAAS,CAChB,CAAA;QACH,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAA;IACnD,CAAC;YAAS,CAAC;QACT,IAAI,OAAO;YAAE,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IAClF,CAAC;AACH,CAAC;AAED;4EAC4E;AAC5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAA;AA8BtD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAgG,EAChG,MAAc;IAEd,MAAM,MAAM,GAAG,MAAM,cAAc,CACjC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,EAC7I,MAAM,CACP,CAAA;IACD,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACjB,CAAC,CAAC,yFAAyF;YAC3F,CAAC,CAAC,wDAAwD;KAC7D,CAAA;AACH,CAAC;AAED,MAAM,sBAAsB,GAAG,OAAS,CAAA,CAAC,yDAAyD;AAUlG,2GAA2G;AAC3G,yGAAyG;AACzG,SAAS,qBAAqB,CAC5B,OAAwB,EACxB,OAA2B;IAE3B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW;YAAE,SAAQ;QAC1C,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,KAAK,OAAO;YAAE,SAAQ;QACzE,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,OAAO,CAAC,CAAA;QAC3E,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,sBAAsB;YAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;IACzF,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,sGAAsG;AACtG,gGAAgG;AAChG,SAAS,0BAA0B,CAAC,OAAwB,EAAE,OAA2B;IACvF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,CAAC,KAAK,KAAK,WAAW;YAAE,SAAQ;QAC1C,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,KAAK,OAAO;YAAE,SAAQ;QACzE,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM;YAAE,OAAO,MAAM,CAAA;IAC1D,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,WAAW,CACxB,UAAkB,EAClB,OAA2B,EAC3B,OAAwB,EACxB,MAAc;IAEd,IAAI,MAAM,GAAG,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACzD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,0FAA0F;QAC1F,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,CAAC,CAAA;QAClG,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAC5C,OAAO;gBACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,IAAI,EAAE,mBAAmB,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,4BAA4B;aAClG,CAAA;QACH,CAAC;QACD,MAAM,GAAG,EAAE,EAAE,EAAE,QAAQ,CAAC,QAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,MAA0B,EAAE,CAAA;IACxH,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC/D,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,iDAAiD,EAAE,CAAA;IAC9G,CAAC;IAED,MAAM,OAAO,GAAG,MAAM;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAChE,MAAM,QAAQ,GAAG,CAAC,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QACzE,OAAO,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE,CAAA;IACzF,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAA;IAC/D,IAAI,CAAC;QACH,MAAM,WAAW,GAAa,EAAE,CAAA;QAChC,IAAI,WAA+B,CAAA;QACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,SAAU,CAAC,CAAA;YAC9C,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,SAAQ;YAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;YACvD,IAAI,CAAC,WAAW;gBAAE,WAAW,GAAG,KAAK,CAAA;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,YAAY,MAAM,CAAC,CAAA;YACvD,MAAM,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YAChC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,iDAAiD,EAAE,CAAA;QAC9G,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,CAAA;YACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QACpH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE;gBACpD,IAAI,EAAE,GAAG,OAAO,qFAAqF;aACtG,CAAA;QACH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACjE,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAA8B,EAAE,MAAc;IAClF,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC5C,MAAM,CAAsC,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC;QACpG,MAAM,CAAkB,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,UAAU,EAAE,MAAM,CAAC;KACzF,CAAC,CAAA;IAEF,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IAC3E,CAAC;IAED,IAAI,KAAK,GAAG,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IAE7D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,MAAM,CAAC,CAAA;QACpH,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACvC,OAAO;gBACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,IAAI,EAAE,6BAA6B,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,4BAA4B;aAC5G,CAAA;QACH,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,OAAO,CAAC,CAAA;QAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,qDAAqD,EAAE,CAAA;QAC5H,CAAC;QACD,KAAK,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,WAAW,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAA;IACxG,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;IAC/B,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACf,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,kDAAkD,EAAE,CAAA;IAC/G,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,sBAAsB,EAAE,CAAC;QACpD,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,IAAI,EAAE,yBAAyB,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,gFAAgF;SACzJ,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACvC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,sCAAsC,QAAQ,CAAC,MAAM,oCAAoC,EAAE,CAAA;IACtK,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAA;IAC1D,IAAI,KAAK,CAAC,UAAU,GAAG,sBAAsB,EAAE,CAAC;QAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,yFAAyF,EAAE,CAAA;IACtK,CAAC;IACD,iGAAiG;IACjG,gFAAgF;IAChF,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC5F,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAA;AACpH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAuF,EACvF,MAAc;IAEd,mGAAmG;IACnG,oDAAoD;IACpD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAA;IACjD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IACnE,CAAC;IACD,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;IAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,MAAM,CAAkB,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,UAAU,EAAE,MAAM,CAAC,CAAA;QAC9G,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;QAC7E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,mIAAmI,CACpI,CAAA;QACH,CAAC;QACD,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAA;IACtB,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,SAAS,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,CAAA;AAClH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cliangdev/conductor",
3
- "version": "0.22.0",
3
+ "version": "0.23.0",
4
4
  "description": "Agentic software development platform — AI-driven PRD, implementation, and beyond",
5
5
  "license": "SEE LICENSE IN ../LICENSE",
6
6
  "repository": {
@@ -35,6 +35,8 @@
35
35
  "chalk": "^6.0.0",
36
36
  "chokidar": "^5.0.0",
37
37
  "commander": "^15.0.0",
38
+ "ffmpeg-static": "^5.3.0",
39
+ "ffprobe-static": "^3.1.0",
38
40
  "open": "^11.0.0",
39
41
  "ora": "^9.4.0",
40
42
  "playwright-core": "1.63.0"