@transloadit/mcp-server 0.6.2 → 0.6.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.
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +4 -2
- package/dist/server.js.map +1 -1
- package/dist/ui/assembly-result-widget.d.ts +12 -0
- package/dist/ui/assembly-result-widget.d.ts.map +1 -1
- package/dist/ui/assembly-result-widget.js +547 -140
- package/dist/ui/assembly-result-widget.js.map +1 -1
- package/package.json +3 -1
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAWnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAWnE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAmBvB,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,qBAAqB,CAAA;IAC1C;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,sFAAsF;IACtF,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,2FAA2F;IAC3F,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAID,iEAAiE;AACjE,eAAO,MAAM,wBAAwB;;;;EAAuC,CAAA;AAE5E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE5E,6FAA6F;AAC7F,eAAO,MAAM,oBAAoB,6BAA6B,CAAA;AAk7B9D,eAAO,MAAM,0BAA0B,GACrC,UAAS,2BAAgC,KACxC,SA4oBF,CAAA"}
|
package/dist/server.js
CHANGED
|
@@ -6,7 +6,7 @@ import { buildBearerChallenge, extractBearerToken } from "./http-helpers.js";
|
|
|
6
6
|
import { assertServerOptions } from "./options.js";
|
|
7
7
|
import { mirrorSecuritySchemes } from "./tool-list.js";
|
|
8
8
|
import { buildToolMeta, resolveSecuritySchemes, resolveToolAuthMode, toolMetadata, } from "./tool-metadata.js";
|
|
9
|
-
import { registerAssemblyResultWidget, widgetContextMetaKey } from "./ui/assembly-result-widget.js";
|
|
9
|
+
import { describeAssemblySteps, registerAssemblyResultWidget, widgetContextMetaKey, } from "./ui/assembly-result-widget.js";
|
|
10
10
|
import { buildUploadInstructions, uploadInstructionSchema } from "./upload-instructions.js";
|
|
11
11
|
const defaultConsoleUrl = 'https://transloadit.com';
|
|
12
12
|
/** Signature algorithms API2 accepts for Auth Key signatures. */
|
|
@@ -474,8 +474,9 @@ const buildWidgetContext = (options, assembly) => {
|
|
|
474
474
|
const slug = isNonEmptyString(assembly.account_slug) ? assembly.account_slug : undefined;
|
|
475
475
|
const assemblyId = isNonEmptyString(assembly.assembly_id) ? assembly.assembly_id : undefined;
|
|
476
476
|
const templateId = isNonEmptyString(assembly.template_id) ? assembly.template_id : undefined;
|
|
477
|
+
const steps = describeAssemblySteps(assembly);
|
|
477
478
|
if (!slug || !consoleUrl)
|
|
478
|
-
return { authenticated: true };
|
|
479
|
+
return { authenticated: true, steps };
|
|
479
480
|
const workspaceUrl = `${consoleUrl}/c/${encodeURIComponent(slug)}`;
|
|
480
481
|
const newTemplateUrl = new URL(`${workspaceUrl}/templates/new`);
|
|
481
482
|
// The Console seeds the editor from `fromAssembly` since transloadit/content#6207, which ships
|
|
@@ -494,6 +495,7 @@ const buildWidgetContext = (options, assembly) => {
|
|
|
494
495
|
? `${workspaceUrl}/assemblies/${encodeURIComponent(assemblyId)}`
|
|
495
496
|
: undefined,
|
|
496
497
|
new_template_url: newTemplateUrl.toString(),
|
|
498
|
+
steps,
|
|
497
499
|
};
|
|
498
500
|
};
|
|
499
501
|
const isHttpImportStep = (value) => isRecord(value) && value.robot === '/http/import';
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACnE,OAAO,EACL,QAAQ,EACR,6BAA6B,EAC7B,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,GACZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,WAAW,MAAM,iBAAiB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,YAAY,GACb,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,oBAAoB,GACrB,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AAgD3F,MAAM,iBAAiB,GAAG,yBAAyB,CAAA;AAEnD,iEAAiE;AACjE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;AAI5E,6FAA6F;AAC7F,MAAM,CAAC,MAAM,oBAAoB,GAAG,0BAA0B,CAAA;AAwB9D,MAAM,cAAc,GAAG,OAAO,CAAA;AAE9B,0FAA0F;AAC1F,MAAM,0BAA0B,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AACrD,MAAM,2BAA2B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;AAIlD,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAA;AAEF,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAA;AAEF,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACvB,MAAM,EAAE,CAAC,CAAC,KAAK,CACb,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAChC,CAAC,CACH;IACD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAA;AAEF,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAA;AAEF,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC3C,8EAA8E;IAC9E,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE;CACnE,CAAC,CAAA;AAEF,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAC1C,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC;IAC1C,QAAQ,EAAE,CAAC;SACR,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KAC3C,CAAC,CACH;SACA,QAAQ,EAAE;CACd,CAAC,CAAA;AAEF,MAAM,wBAAwB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,kGAAkG;IAClG,KAAK,EAAE,qBAAqB,CAAC,QAAQ,EAAE;IACvC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE;IACjD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC1C,CAAC;KACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE;IACvE,OAAO,EAAE,yCAAyC;CACnD,CAAC,CAAA;AAEJ,MAAM,eAAe,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACnD,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACnC,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;QACf,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACnC,CAAC;CACH,CAAC,CAAA;AAEF,6FAA6F;AAC7F,0EAA0E;AAC1E,MAAM,cAAc,GAAG,CAAC;KACrB,MAAM,CAAC;IACN,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC;KACD,MAAM,EAAE,CAAA;AAIX,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE;IAC1C,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpD,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC3C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACvD,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1D,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACzD,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnE,2FAA2F;IAC3F,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACjE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAA;AAEF,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,MAAM,EAAE,CAAC;SACN,MAAM,CAAC;QACN,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QACjD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;QAC3C,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;QAC/B,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;KACzD,CAAC;SACD,QAAQ,EAAE;IACb,mBAAmB,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;IAChE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAA;AAEF,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAA;AAEF,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAA;AAEF,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzD,CAAC,CAAA;AAEF,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IACpD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAA;AAEF,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC9D,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE;IACzC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACxC,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,oBAAoB,CAAC,CAAC,CAAC,QAAQ,EAAE;IAC9F,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACxC,CAAC,CAAA;AAEF,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,EAAE,CAAC,CAAC,KAAK,CAChB,CAAC,CAAC,MAAM,CAAC;QACP,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACzB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAClC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACtC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;KACpD,CAAC,CACH;IACD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;IAChD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IAC7C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAA;AAEF,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAA;AAEF,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC/B,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;IACxC,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAA;AAEF,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAA;AAEnD,+FAA+F;AAC/F,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC;KACD,MAAM,EAAE,CAAA;AAIX,MAAM,YAAY,GAAG,CAAC,MAAgD,EAAqB,EAAE,CAC3F,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,cAAc;IACjE,OAAO,EAAE,KAAK,CAAC,OAAO;IACtB,QAAQ,EAAE,KAAK,CAAC,IAAI;IACpB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;CAC1E,CAAC,CAAC,CAAA;AAEL,MAAM,aAAa,GAAG,CAAC,KAAa,EAAW,EAAE;IAC/C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC,CAAA;AAQD,MAAM,iBAAiB,GAAG,CACxB,OAAgC,EAChC,SAA6B,EAAE,EACf,EAAE;IAClB,MAAM,OAAO,GAAgB;QAC3B,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;KAC9B,CAAA;IAED,OAAO;QACL,OAAO,EAAE,CAAC,OAAO,CAAC;QAClB,iBAAiB,EAAE,OAAO;QAC1B,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C,CAAA;AACH,CAAC,CAAA;AAED;;;;GAIG;AACH,MAAM,wBAAwB,GAAG,CAAC,MAAsB,EAAkB,EAAE;IAC1E,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAA;IACjE,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAWD;;;GAGG;AACH,MAAM,cAAc,GAAG,CACrB,OAAoC,EACpC,KAAqB,EACL,EAAE,CAClB,iBAAiB,CACf;IACE,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;CACzE,EACD;IACE,OAAO,EAAE,IAAI;IACb,IAAI,EAAE;QACJ,sBAAsB,EAAE;YACtB,oBAAoB,CAAC;gBACnB,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;gBAChD,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE;gBAC7D,MAAM,EAAE,KAAK,CAAC,MAAM;aACrB,CAAC;SACH;KACF;CACF,CACF,CAAA;AAEH,MAAM,qBAAqB,GAAG,CAAC,OAAoC,EAAkB,EAAE;AACrF,sFAAsF;AACtF,OAAO,CAAC,mBAAmB;IACzB,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE;QACtB,IAAI,EAAE,kBAAkB;QACxB,UAAU,EAAE,oBAAoB;QAChC,OAAO,EAAE,0CAA0C;QACnD,IAAI,EAAE,6DAA6D;KACpE,CAAC;IACJ,CAAC,CAAC,oBAAoB,CAAC;QACnB,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,2DAA2D;QACpE,IAAI,EAAE,gFAAgF;KACvF,CAAC,CAAA;AAER,MAAM,cAAc,GAAG,CACrB,IAAY,EACZ,OAAe,EACf,UAA4C,EAAE,EAC9C,EAAE,CACF,iBAAiB,CAAC;IAChB,MAAM,EAAE,OAAO;IACf,MAAM,EAAE;QACN;YACE,IAAI;YACJ,OAAO;YACP,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB;KACF;CACF,CAAC,CAAA;AAEJ,MAAM,aAAa,GAAG,CAAC,OAAoC,EAAU,EAAE;IACrE,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,IAAI,cAAc,WAAW,CAAC,OAAO,EAAE,CAAA;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAA;IACnC,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACnC,OAAO,GAAG,IAAI,GAAG,MAAM,EAAE,CAAA;IAC3B,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,OAAoC,EAAe,EAAE,CAC7E,IAAI,WAAW,CAAC;IACd,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK;IACjC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,KAAK;IACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;IAC1B,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC;CACnC,CAAC,CAAA;AAEJ,MAAM,cAAc,GAAG,CAAC,OAA8B,EAAE,IAAY,EAAsB,EAAE;IAC1F,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAA;IAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IACrC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,UAAU;YAAE,SAAQ;QAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAA;QACzC,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,cAAc,GAAG,CAAC,OAA8B,EAAsB,EAAE,CAC5E,kBAAkB,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAA;AAS9D,MAAM,gBAAgB,GAAG,CACvB,OAAoC,EACpC,KAAgB,EACE,EAAE;IACpB,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACxD,MAAM,SAAS,GAAG,KAAK,IAAI,KAAK,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;IAEzE,IAAI,SAAS,EAAE,CAAC;QACd,OAAO;YACL,WAAW,EAAE,QAAQ;YACrB,MAAM,EAAE,IAAI,WAAW,CAAC;gBACtB,SAAS;gBACT,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC;gBAClC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;gBAC9C,eAAe,EAAE,KAAK;gBACtB,YAAY,EAAE,OAAO,CAAC,cAAc;oBAClC,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC,cAAc,EAAE;oBACpD,CAAC,CAAC,SAAS;aACd,CAAC;SACH,CAAA;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAC5C,OAAO,EAAE,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAA;IAClD,CAAC;IAED,OAAO;QACL,WAAW,EAAE,UAAU;QACvB,MAAM,EAAE,IAAI,WAAW,CAAC;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC;YAClC,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,eAAe,EAAE,KAAK;SACvB,CAAC;KACH,CAAA;AACH,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CACpE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAA;AAE7C,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAmB,EAAE,CAC3D,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;AAE/C,MAAM,qBAAqB,GAAG,UAAU,CAAA;AAExC,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAA;AAE/F,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAsB,EAAE;IAC/D,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAI,KAAK,CAAC,KAAwE;YAC5F,EAAE,QAAQ,EAAE,UAAU,CAAA;QACxB,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAA;IAC/C,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,YAAY,GAAI,KAAiD,CAAC,QAAQ,EAAE,UAAU,CAAA;QAC5F,IAAI,OAAO,YAAY,KAAK,QAAQ;YAAE,OAAO,YAAY,CAAA;QAEzD,MAAM,KAAK,GAAI,KAA6B,CAAC,KAAK,CAAA;QAClD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACpB,MAAM,MAAM,GAAI,KAAiD,CAAC,QAAQ,EAAE,UAAU,CAAA;YACtF,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAkC,EAAE,CAC1E,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAA;AAEnD;;;GAGG;AACH,MAAM,eAAe,GAAG,CACtB,OAAoC,EACpC,KAAc,EACd,WAA2B,EAC3B,MAAgB,EACY,EAAE;IAC9B,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IACvC,kFAAkF;IAClF,2FAA2F;IAC3F,IAAI,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,gCAAgC,EAAE,CAAC;QACjF,OAAO,oBAAoB,CAAC;YAC1B,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,4EAA4E;YACrF,IAAI,EAAE,6EAA6E;SACpF,CAAC,CAAA;IACJ,CAAC;IACD,0DAA0D;IAC1D,MAAM,aAAa,GACjB,MAAM,KAAK,GAAG,IAAI,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,yBAAyB,CAAA;IACzF,6FAA6F;IAC7F,kEAAkE;IAClE,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC;QAC/B,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,OAAO,oBAAoB,CAAC;gBAC1B,IAAI,EAAE,0BAA0B;gBAChC,OAAO,EAAE,mEAAmE;gBAC5E,IAAI,EAAE,iFAAiF;aACxF,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,oBAAoB,CAAC;gBAC1B,IAAI,EAAE,wBAAwB;gBAC9B,OAAO,EAAE,0DAA0D;gBACnE,IAAI,EAAE,6EAA6E;aACpF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QAC1B,OAAO,cAAc,CAAC,OAAO,EAAE;YAC7B,IAAI,EAAE,mBAAmB;YACzB,UAAU,EAAE,eAAe;YAC3B,OAAO,EAAE,mEAAmE;YAC5E,IAAI,EAAE,+CAA+C;SACtD,CAAC,CAAA;IACJ,CAAC;SAAM,IAAI,aAAa,EAAE,CAAC;QACzB,OAAO,cAAc,CAAC,OAAO,EAAE;YAC7B,IAAI,EAAE,wBAAwB;YAC9B,UAAU,EAAE,oBAAoB;YAChC,OAAO,EAAE,2DAA2D;YACpE,IAAI,EAAE,oEAAoE;YAC1E,MAAM;SACP,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACpE,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,2FAA2F;AAC3F,MAAM,+BAA+B,GAAG,CACtC,OAAoC,EACpC,UAAkB,EACF,EAAE;IAClB,kFAAkF;IAClF,MAAM,WAAW,GAAG,GAAG,OAAO,CAAC,QAAQ,IAAI,8BAA8B,eAAe,UAAU,EAAE,CAAA;IACpG,OAAO,iBAAiB,CACtB;QACE,MAAM,EAAE,OAAO;QACf,QAAQ,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,EAAE;QACpE,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,iCAAiC;gBACvC,OAAO,EACL,8FAA8F;gBAChG,IAAI,EAAE,oFAAoF,WAAW,gCAAgC;aACtI;SACF;KACF,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAA;AACH,CAAC,CAAA;AAED,qGAAqG;AACrG,MAAM,oBAAoB,GAAG,CAAC,KAI7B,EAAkB,EAAE,CAAC,iBAAiB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;AAEhG;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,KAAe,EAAkB,EAAE;IAC9D,MAAM,QAAQ,GAAG,wBAAwB,CAAC,SAAS,CACjD,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CACtD,CAAA;IACD,OAAO,oBAAoB,CAAC;QAC1B,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EAAE,+DAA+D;QACxE,IAAI,EAAE,QAAQ,CAAC,OAAO;YACpB,CAAC,CAAC,4BAA4B,QAAQ,CAAC,IAAI,yCAAyC,QAAQ,CAAC,IAAI,iEAAiE;YAClK,CAAC,CAAC,uFAAuF;KAC5F,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,+FAA+F;AAC/F,MAAM,eAAe,GAAG,CAAC,KAAa,EAAsB,EAAE;IAC5D,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IAC1C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;IAC1B,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,SAAS,CAAA;IAC3E,OAAO,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAC1D,CAAC,CAAA;AAED,gGAAgG;AAChG,MAAM,kBAAkB,GAAG,CACzB,OAAoC,EACpC,QAAwB,EACT,EAAE;IACjB,6FAA6F;IAC7F,yFAAyF;IACzF,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,IAAI,iBAAiB,CAAC,CAAA;IAC3E,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAA;IACxF,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IAC5F,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IAC5F,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAC7C,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IAE/D,MAAM,YAAY,GAAG,GAAG,UAAU,MAAM,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAA;IAClE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,GAAG,YAAY,gBAAgB,CAAC,CAAA;IAC/D,+FAA+F;IAC/F,wFAAwF;IACxF,iGAAiG;IACjG,gFAAgF;IAChF,IAAI,UAAU,EAAE,CAAC;QACf,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,CAAA;IAC7D,CAAC;IACD,IAAI,UAAU,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;QACnD,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAA;IAC9D,CAAC;IACD,OAAO;QACL,aAAa,EAAE,IAAI;QACnB,oBAAoB,EAAE,UAAU;YAC9B,CAAC,CAAC,GAAG,YAAY,eAAe,kBAAkB,CAAC,UAAU,CAAC,EAAE;YAChE,CAAC,CAAC,SAAS;QACb,gBAAgB,EAAE,cAAc,CAAC,QAAQ,EAAE;QAC3C,KAAK;KACN,CAAA;AACH,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAoC,EAAE,CAC5E,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc,CAAA;AAEnD,MAAM,uBAAuB,GAAG,CAAC,KAA8B,EAAY,EAAE,CAC3E,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;KAClB,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;KAC5C,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;AAE1B,MAAM,qBAAqB,GAAG,CAAC,KAAc,EAAW,EAAE;IACxD,IAAI,KAAK,KAAK,WAAW;QAAE,OAAO,IAAI,CAAA;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1D,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAA;IACzE,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAQD,MAAM,YAAY,GAAG,CAAC,KAA8B,EAAgB,EAAE;IACpE,IAAI,eAAe,GAAG,KAAK,CAAA;IAC3B,IAAI,eAAe,GAAG,KAAK,CAAA;IAC3B,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,MAAM,eAAe,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;IAEtD,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,eAAe,GAAG,IAAI,CAAA;QACxB,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,SAAQ;QAC7B,IAAI,IAAI,CAAC,KAAK,KAAK,gBAAgB,EAAE,CAAC;YACpC,eAAe,GAAG,IAAI,CAAA;QACxB,CAAC;QACD,IAAI,CAAC,YAAY,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YACnC,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IAED,OAAO;QACL,eAAe;QACf,aAAa,EAAE,eAAe,CAAC,MAAM,GAAG,CAAC;QACzC,cAAc,EAAE,eAAe,IAAI,eAAe,IAAI,YAAY;KACnE,CAAA;AACH,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAC3B,aAAsC,EACtC,iBAAsD,EACtD,eAAyB,EACA,EAAE;IAC3B,MAAM,aAAa,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACjF,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;QACvC,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACrF,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACrF,aAAa,CAAC,QAAQ,CAAC,GAAG;YACxB,GAAG,YAAY;YACf,GAAG,YAAY;YACf,KAAK,EAAE,cAAc;SACtB,CAAA;IACH,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,eAAuB,EAAY,EAAE;IAC9D,MAAM,KAAK,GAAG,6BAA6B,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAC5F,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;AACnC,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CACvB,cAAmD,EACnD,SAA8C,EACrB,EAAE;IAC3B,OAAO;QACL,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;QACzB,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;KACrB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;AAC3D,MAAM,iBAAiB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;AAIjC,gFAAgF;AAChF,MAAM,iBAAiB,GAAG,CAAC,QAAgB,EAAW,EAAE,CACtD,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,IAAI,CACzC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,KAAK,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,EAAE,CAAC,CACnE,CAAA;AAEH,MAAM,wBAAwB,GAAG,CAC/B,OAAoC,EACpC,IAAqD,EACa,EAAE;IACpE,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO,EAAE,KAAK,EAAE,cAAc,CAAC,kBAAkB,EAAE,sCAAsC,CAAC,EAAE,CAAA;IAC9F,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAA;IAC7E,MAAM,gBAAgB,GAAG;QACvB,KAAK,EAAE,cAAc,CAAC,kBAAkB,EAAE,iDAAiD,EAAE;YAC3F,IAAI;SACL,CAAC;KACH,CAAA;IACD,mFAAmF;IACnF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,8BAA8B,CAAA;IACnE,IAAI,UAAU,GAAG,IAAI,CAAC,WAAW,CAAA;IAEjC,+EAA+E;IAC/E,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,CAAC;QAC7F,UAAU,GAAG,IAAI,CAAC,YAAY,CAAA;IAChC,CAAC;SAAM,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC7D,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO,gBAAgB,CAAA;QAC5C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAChC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;QACrC,MAAM,oBAAoB,GAAG,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,CAAA;QAC9D,uFAAuF;QACvF,0DAA0D;QAC1D,MAAM,gBAAgB,GACpB,OAAO,CAAC,mBAAmB,KAAK,SAAS;YACzC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,CAAC;YACzC,GAAG,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAA;QAC5D,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,EAAE,CAAA;QAChF,IACE,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;YACvD,GAAG,CAAC,QAAQ;YACZ,GAAG,CAAC,QAAQ;YACZ,GAAG,CAAC,MAAM;YACV,GAAG,CAAC,IAAI;YACR,CAAC,CAAC,oBAAoB,IAAI,CAAC,gBAAgB,IAAI,CAAC,qBAAqB,CAAC,EACtE,CAAC;YACD,OAAO,gBAAgB,CAAA;QACzB,CAAC;QAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAClF,MAAM,YAAY,GAAG,GAAG,MAAM,cAAc,CAAA;QAC5C,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;YAAE,OAAO,gBAAgB,CAAA;QACnE,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACzE,CAAC;IAED,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;IACvD,IAAI,CAAC,QAAQ,CAAC,OAAO;QAAE,OAAO,gBAAgB,CAAA;IAE9C,yFAAyF;IACzF,+FAA+F;IAC/F,OAAO;QACL,UAAU,EAAE,QAAQ,CAAC,IAAI;QACzB,WAAW,EAAE,GAAG,QAAQ,eAAe,QAAQ,CAAC,IAAI,EAAE;KACvD,CAAA;AACH,CAAC,CAAA;AAWD,MAAM,qBAAqB,GAAG,CAC5B,OAAoC,EACpC,KAAgB,EAChB,IAAqD,EAC/B,EAAE;IACxB,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IACnD,IAAI,OAAO,IAAI,UAAU;QAAE,OAAO,UAAU,CAAA;IAE5C,MAAM,SAAS,GAAG,wBAAwB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IACzD,IAAI,OAAO,IAAI,SAAS;QAAE,OAAO,SAAS,CAAA;IAE1C,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,GAAG,SAAS;KACb,CAAA;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC;KACD,WAAW,EAAE,CAAA;AAEhB,MAAM,2BAA2B,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IAC5C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC;KACD,WAAW,EAAE,CAAA;AAIhB,MAAM,oBAAoB,GAAG,CAAC,OAAgB,EAAuC,EAAE;IACrF,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAA;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAC3B,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,SAAS,CAAA;AACzE,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,QAA2B,EAAsB,EAAE;IAC5E,IAAI,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAAE,OAAO,QAAQ,CAAC,EAAE,CAAA;IACrD,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC,IAAI,CAAA;IACzD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,mBAAmB,GAAG,CAAC,QAA2B,EAAE,EAAE,CAAC,CAAC;IAC5D,EAAE,EAAE,QAAQ,CAAC,EAAE;IACf,IAAI,EAAE,QAAQ,CAAC,IAAI;IACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;IACjC,eAAe,EAAE,QAAQ,CAAC,eAAe;CAC1C,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG,KAAK,EAC7B,MAAmB,EACnB,QAA2B,EACmB,EAAE;IAChD,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IACrD,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IACzB,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAC9C,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAA;IACjC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;IACjD,OAAO,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAC3C,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,uBAAuB,GAAG,KAAK,EACnC,MAAmB,EACoB,EAAE;IACzC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAA;IAC/D,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAClC,IAAI,MAAM,EAAE,EAAE,EAAE,CAAC;QACf,2FAA2F;QAC3F,oEAAoE;QACpE,MAAM,MAAM,GAA4B,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7F,MAAM,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAA;QACtF,IAAI,gBAAgB,CAAC,EAAE,CAAC,EAAE,CAAC;YACzB,OAAO;gBACL,EAAE;gBACF,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;gBAC7E,QAAQ,EAAE,gBAAgB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;aAClF,CAAA;QACH,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,MAAM,SAAS,GAAG,2BAA2B,CAAC,SAAS,CACrD,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,CAC1E,CAAA;IACD,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC1E,IAAI,QAAQ,IAAI,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAA;IACpC,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,mGAAmG;AACnG,MAAM,kBAAkB,GAAG,CAAC,WAAuB,EAAe,EAAE,CAClE,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IACtC,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,cAAc,KAAK,GAAG,CAAC,EAAE;IAChC,GAAG,EAAE,UAAU,CAAC,YAAY;IAC5B,QAAQ,EAAE,UAAU,CAAC,SAAS;IAC9B,WAAW,EAAE,UAAU,CAAC,SAAS;CAClC,CAAC,CAAC,CAAA;AAEL,MAAM,uBAAuB,GAAG,CAAC,KAA8B,EAAW,EAAE;IAC1E,OAAO,CACL,OAAO,IAAI,KAAK;QAChB,aAAa,IAAI,KAAK;QACtB,MAAM,IAAI,KAAK;QACf,QAAQ,IAAI,KAAK;QACjB,YAAY,IAAI,KAAK;QACrB,cAAc,IAAI,KAAK,CACxB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAoC,EAAE;IAC7E,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,SAAS,CAAA;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;QACnC,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAA+B,CAAC,CAAC,CAAC,SAAS,CAAA;IACxE,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,IAAI,uBAAuB,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,KAA6B,CAAA;QACtC,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAA0B,CAAA;IACjD,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAAC,MAA4B,EAA6B,EAAE;IAC9F,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACpC,OAAO,MAAmC,CAAA;IAC5C,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAA;IACvC,OAAO,IAAiC,CAAA;AAC1C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,UAAuC,EAAE,EAC9B,EAAE;IACb,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAC5B,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,OAAO,CAAC,UAAU,IAAI,iBAAiB;QAC7C,OAAO,EAAE,OAAO,CAAC,aAAa,IAAI,WAAW,CAAC,OAAO;KACtD,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,QAAQ,GAAG,CACf,IAAc,EACd,WAAkB,EAClB,YAAoB,EACpB,QAA6B,EACvB,EAAE;QACR,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QACnC,MAAM,CAAC,YAAY,CACjB,IAAI,EACJ;YACE,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,WAAW;YACX,YAAY;YACZ,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,KAAK,EAAE,aAAa,CAAC,QAAQ,EAAE,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;SAC3E,EACD,QAAQ,CACT,CAAA;IACH,CAAC,CAAA;IAED,uFAAuF;IACvF,QAAQ,CACN,wCAAwC,EACxC,uBAAuB,EACvB,wBAAwB,EACxB,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;QACxC,MAAM,oBAAoB,GACxB,YAAqE,CAAA;QACvE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC;YACnD,oBAAoB;YACpB,GAAG,EAAE,YAAY,IAAI,KAAK;YAC1B,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;SACpC,CAAC,CAAA;QAEF,MAAM,OAAO,GAA4B;YACvC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;YACvC,cAAc,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;SAC5C,CAAA;QAED,IAAI,YAAY,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC7C,OAAO,CAAC,uBAAuB,GAAG,aAAa,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;QAC3E,CAAC;QAED,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACnC,CAAC,CACF,CAAA;IAED,QAAQ,CACN,6BAA6B,EAC7B,yBAAyB,EACzB,0BAA0B,EAC1B,KAAK,EACH,EACE,YAAY,EACZ,KAAK,EACL,WAAW,EACX,MAAM,EACN,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,YAAY,GACb,EACD,KAAK,EACL,EAAE;QACF,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACnD,IAAI,OAAO,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC,KAAK,CAAA;QAClD,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,UAAU,CAAA;QAC1C,MAAM,SAAS,GACb,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAwB,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;QAC9F,IAAI,SAAS,IAAI,OAAO,IAAI,SAAS;YAAE,OAAO,SAAS,CAAC,KAAK,CAAA;QAC7D,MAAM,YAAY,GAA+B,EAAE,CAAA;QACnD,MAAM,QAAQ,GAA2E,EAAE,CAAA;QAC3F,IAAI,gBAAoC,CAAA;QAExC,IAAI,CAAC;YACH,MAAM,UAAU,GAAgB,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,kBAAkB,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAA;YAC5F,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;YAClE,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAA;YACzC,IAAI,iBAAiB,GAAG,UAAU,CAAA;YAClC,IAAI,MAAM,GAAG,iBAAiB,CAAC,YAAY,CAAC,IAAK,EAA2B,CAAA;YAC5E,IAAI,kBAAkB,GAAG,IAAI,CAAA;YAC7B,IAAI,kBAAoD,CAAA;YACxD,IAAI,WAAgD,CAAA;YACpD,IAAI,YAAiD,CAAA;YAErD,IAAI,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAEvE,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,gBAAgB,GAAG,gBAAgB,IAAI,0BAA0B,CAAA;gBACjE,IAAI,QAAwD,CAAA;gBAC5D,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;gBACzD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,kBAAkB,GACtB,CAAC,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,CAAC;wBAClE,iBAAiB,CAAC,KAAK,CAAC,KAAK,GAAG,CAAA;oBAElC,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAA;wBACrC,MAAM,IAAI,GAAG,mBAAmB,CAAC,UAAU,CAAC;4BAC1C,CAAC,CAAC,8HAA8H;4BAChI,CAAC,CAAC,sFAAsF,CAAA;wBAC1F,OAAO,cAAc,CAAC,wBAAwB,EAAE,uBAAuB,UAAU,EAAE,EAAE;4BACnF,IAAI,EAAE,gBAAgB;4BACtB,IAAI;yBACL,CAAC,CAAA;oBACJ,CAAC;oBACD,MAAM,KAAK,CAAA;gBACb,CAAC;gBACD,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,oBAAoB,KAAK,KAAK,CAAA;gBACpE,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,oBAAoB,CACjC,QAAQ,CAAC,OAAO,EAChB,2BAA2B,CAAC,MAAM,CAAC,CACpC,CAAA;oBACD,kBAAkB,GAAG,MAA8B,CAAA;oBACnD,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAA;oBACrF,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,MAAkC,CAAC,CAAC,CAAC,EAAE,CAAA;oBACxF,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAA;gBACtC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,gCAAgC,EAAE,CAAC;wBACjF,OAAO,cAAc,CACnB,8BAA8B,EAC9B,yFAAyF,EACzF,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAC3B,CAAA;oBACH,CAAC;oBACD,MAAM,KAAK,CAAA;gBACb,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,kBAAkB,GAAG,MAAM,CAAA;gBAC3B,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,KAAiC,CAAC,CAAC,CAAC,EAAE,CAAA;gBACrF,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAM,CAAC,MAAkC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1F,CAAC;YAED,IAAI,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;gBAC/B,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;oBACxD,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;oBACpE,QAAQ,CAAC,IAAI,CAAC;wBACZ,IAAI,EAAE,wBAAwB;wBAC9B,OAAO,EAAE,4EAA4E;wBACrF,IAAI,EAAE,4KAA4K;wBAClL,IAAI,EAAE,gBAAgB,IAAI,cAAc;qBACzC,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;oBAClC,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBACxB,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;4BAC5B,QAAQ,CAAC,IAAI,CAAC;gCACZ,IAAI,EAAE,qCAAqC;gCAC3C,OAAO,EACL,8GAA8G;gCAChH,IAAI,EAAE,gBAAgB,IAAI,0BAA0B;6BACrD,CAAC,CAAA;wBACJ,CAAC;6BAAM,CAAC;4BACN,OAAO,cAAc,CACnB,8BAA8B,EAC9B,+EAA+E,EAC/E,EAAE,IAAI,EAAE,gBAAgB,IAAI,0BAA0B,EAAE,CACzD,CAAA;wBACH,CAAC;oBACH,CAAC;yBAAM,IAAI,WAAW,EAAE,CAAC;wBACvB,MAAM,CAAC,KAAK,GAAG,oBAAoB,CACjC,WAAW,EACX,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EACjD,QAAQ,CAAC,eAAe,CACQ,CAAA;oBACpC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,kBAAkB,EAAE,CAAC;gBACvB,MAAM,oBAAoB,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAA;gBAC/D,MAAM,cAAc,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;gBAC9D,MAAM,cAAc,GAAG,gBAAgB,CACrC,YAAY,EACZ,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAE,MAAkC,CAAC,CAAC,CAAC,SAAS,CACnE,CAAA;gBACD,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,cAAc,CAAC,CAAC,CAAA;gBAC1F,MAAM,gBAAgB,GACpB,YAAY,IAAI,QAAQ,CAAC,aAAa;oBACpC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,OAAO,CAAC;oBAC5D,CAAC,CAAC,aAAa,CAAA;gBAEnB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,OAAO,cAAc,CACnB,oBAAoB,EACpB,4BAA4B,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACzD;wBACE,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,sDAAsD;qBAC7D,CACF,CAAA;gBACH,CAAC;YACH,CAAC;YACD,yFAAyF;YACzF,gFAAgF;YAChF,8CAA8C;YAC9C,IAAI,UAAwC,CAAA;YAC5C,MAAM,yBAAyB,GAAG,KAAK,IAAmB,EAAE;gBAC1D,UAAU,KAAK,MAAM,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAA;gBACpD,MAAM,UAAU,CAAA;YAClB,CAAC,CAAA;YACD,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC;gBACnC,UAAU,EAAE,iBAAiB;gBAC7B,MAAM;gBACN,MAAM;gBACN,cAAc,EAAE,UAAU;gBAC1B,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB;gBACzD,gBAAgB,EAAE,KAAK;gBACvB,cAAc;gBACd,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,0BAA0B;gBAC9E,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,2BAA2B;gBACjF,iBAAiB,EAAE,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,SAAS;aACpF,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjB,wFAAwF;gBACxF,IAAI,KAAK,YAAY,QAAQ;oBAAE,MAAM,KAAK,CAAA;gBAC1C,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAA;gBAC9E,IAAI,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,EAAE,CAAC;oBAC/C,OAAO,cAAc,CAAC,qBAAqB,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;gBAC1E,CAAC;gBACD,IAAI,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC;oBACjD,OAAO,cAAc,CAAC,sBAAsB,EAAE,OAAO,EAAE;wBACrD,IAAI,EAAE,kEAAkE;qBACzE,CAAC,CAAA;gBACJ,CAAC;gBACD,OAAO,cAAc,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;YACpD,CAAC,CAAC,CAAA;YACF,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAA;YACb,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAA;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAA;YAC/B,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAA;YAElC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAA;YAChF,MAAM,aAAa,GAAkB;gBACnC,MAAM,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;gBAC5C,WAAW,EAAE,UAAU;aACxB,CAAA;YAED,MAAM,OAAO,GAAG,eAAe,CAAA;YAC/B,0FAA0F;YAC1F,mDAAmD;YACnD,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAA;YAC1F,MAAM,iBAAiB,GAAG,CAAC,mBAAmB,IAAI,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,CAAA;YAClF,IAAI,mBAAmB,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;gBAChD,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,8BAA8B;oBACpC,OAAO,EACL,oJAAoJ;iBACvJ,CAAC,CAAA;YACJ,CAAC;YACD,MAAM,cAAc,GAAG,eAAe,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;YACtF,MAAM,iBAAiB,GAAG,kBAAkB,CAAA;YAC5C,MAAM,SAAS,GAAG,iBAAiB,CAAA;YAEnC,IAAI,QAA2D,CAAA;YAC/D,sFAAsF;YACtF,sFAAsF;YACtF,IAAI,iBAAqC,CAAA;YACzC,IAAI,CAAC;gBACH,IAAI,SAAS,EAAE,CAAC;oBACd,QAAQ,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC;wBAC5C,WAAW,EAAE,SAAS,CAAC,WAAW;wBAClC,KAAK,EAAE,QAAQ;wBACf,OAAO,EAAE,UAAU;wBACnB,iBAAiB;wBACjB,OAAO;wBACP,iBAAiB;wBACjB,SAAS;wBACT,cAAc;qBACf,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC;wBACrC,MAAM;wBACN,KAAK,EAAE,QAAQ;wBACf,OAAO,EAAE,UAAU;wBACnB,iBAAiB;wBACjB,OAAO;wBACP,iBAAiB;wBACjB,SAAS;wBACT,cAAc;wBACd,eAAe,EAAE,gBAAgB;wBACjC,iBAAiB,EAAE,CAAC,OAAO,EAAE,EAAE;4BAC7B,iBAAiB,GAAG,OAAO,CAAC,WAAW,IAAI,QAAQ,CAAC,UAAU,CAAA;wBAChE,CAAC;qBACF,CAAC,CAAA;oBACF,QAAQ,GAAG,MAAM,QAAQ,CAAA;gBAC3B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,mFAAmF;gBACnF,yFAAyF;gBACzF,2DAA2D;gBAC3D,IAAI,iBAAiB,IAAI,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC;oBAC1E,OAAO,+BAA+B,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;gBACpE,CAAC;gBACD,IAAI,gBAAgB,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACvD,OAAO,cAAc,CACnB,oBAAoB,EACpB,2CAA2C,EAC3C;wBACE,IAAI,EAAE,qFAAqF;qBAC5F,CACF,CAAA;gBACH,CAAC;gBACD,MAAM,KAAK,CAAA;YACb,CAAC;YAED,IAAI,YAAY,EAAE,CAAC;gBACjB,aAAa,CAAC,OAAO,GAAG,IAAI,CAAA;YAC9B,CAAC;YAED,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;gBACrB,aAAa,CAAC,MAAM,GAAG,MAAM,CAAA;YAC/B,CAAC;iBAAM,IAAI,cAAc,KAAK,MAAM,EAAE,CAAC;gBACrC,aAAa,CAAC,MAAM,GAAG,MAAM,CAAA;YAC/B,CAAC;iBAAM,IAAI,cAAc,KAAK,YAAY,EAAE,CAAC;gBAC3C,aAAa,CAAC,MAAM,GAAG,WAAW,CAAA;YACpC,CAAC;YAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnC,aAAa,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAqC,CAAA;YAC5E,CAAC;YAED,MAAM,kBAAkB,GACtB,gBAAgB,GAAG,CAAC;gBAClB,CAAC,CAAC,uBAAuB,CACrB,QAAQ,EACR,gBAAgB,EAChB,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAChE;gBACH,CAAC,CAAC,SAAS,CAAA;YACf,IAAI,gBAAgB,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAChD,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,qCAAqC;oBAC3C,OAAO,EAAE,sEAAsE;iBAChF,CAAC,CAAA;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,kBAAkB;gBAClC,CAAC,CAAC,CAAC,+BAA+B,CAAC;gBACnC,CAAC,CAAC,iBAAiB;oBACjB,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,CAAC,+BAA+B,EAAE,iCAAiC,CAAC,CAAA;YAE1E,OAAO,iBAAiB,CACtB;gBACE,MAAM,EAAE,IAAI;gBACZ,QAAQ;gBACR,MAAM,EAAE,aAAa;gBACrB,mBAAmB,EAAE,kBAAkB;gBACvC,UAAU,EAAE,SAAS;gBACrB,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;aACrD,EACD,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,CAC5E,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,eAAe,CAC/B,OAAO,EACP,KAAK,EACL,WAAW,EACX,YAAY,CAAC,2BAA2B,CAAC,MAAM,CAChD,CAAA;YACD,IAAI,SAAS;gBAAE,OAAO,SAAS,CAAA;YAC/B,MAAM,KAAK,CAAA;QACb,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC,CACF,CAAA;IAED,QAAQ,CACN,iCAAiC,EACjC,4BAA4B,EAC5B,6BAA6B,EAC7B,KAAK,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,EAAE;QAC7C,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAA;QACnF,IAAI,OAAO,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC,KAAK,CAAA;QAE1C,IAAI,QAAwB,CAAA;QAC5B,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,eAAe,CAC/B,OAAO,EACP,KAAK,EACL,MAAM,CAAC,WAAW,EAClB,YAAY,CAAC,+BAA+B,CAAC,MAAM,CACpD,CAAA;YACD,IAAI,SAAS;gBAAE,OAAO,SAAS,CAAA;YAC/B,MAAM,KAAK,CAAA;QACb,CAAC;QAED,OAAO,iBAAiB,CAAC;YACvB,MAAM,EAAE,IAAI;YACZ,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC,CACF,CAAA;IAED,QAAQ,CACN,+BAA+B,EAC/B,0BAA0B,EAC1B,2BAA2B,EAC3B,KAAK,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,EAAE;QAC3E,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAA;QACnF,IAAI,OAAO,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC,KAAK,CAAA;QAE1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACxB,IAAI,QAAwB,CAAA;QAC5B,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,MAAM,CAAC,UAAU,EAAE;gBACxE,OAAO,EAAE,UAAU;gBACnB,QAAQ,EAAE,gBAAgB;gBAC1B,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,eAAe,CAC/B,OAAO,EACP,KAAK,EACL,MAAM,CAAC,WAAW,EAClB,YAAY,CAAC,6BAA6B,CAAC,MAAM,CAClD,CAAA;YACD,IAAI,SAAS;gBAAE,OAAO,SAAS,CAAA;YAC/B,MAAM,KAAK,CAAA;QACb,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAA;QAEpC,OAAO,iBAAiB,CACtB;YACE,MAAM,EAAE,IAAI;YACZ,QAAQ;YACR,SAAS;SACV,EACD,EAAE,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,CAC5E,CAAA;IACH,CAAC,CACF,CAAA;IAED,QAAQ,CACN,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;QACtC,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAE9D,OAAO,iBAAiB,CAAC;YACvB,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE,MAAM,CAAC,UAAU;SAC/B,CAAC,CAAA;IACJ,CAAC,CACF,CAAA;IAED,QAAQ,CACN,4BAA4B,EAC5B,uBAAuB,EACvB,wBAAwB,EACxB,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE;QAC9B,MAAM,UAAU,GAAG,CAAC,KAAa,EAAY,EAAE,CAC7C,KAAK;aACF,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,OAAO,CAAC,CAAA;QAEpB,MAAM,aAAa,GACjB,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAEzF,MAAM,SAAS,GACb,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;YACnC,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,UAAU;gBACV,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;gBACxB,CAAC,CAAC,EAAE,CAAA;QAEV,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,cAAc,CAAC,kBAAkB,EAAE,oCAAoC,CAAC,CAAA;QACjF,CAAC;QAED,MAAM,MAAM,GAMP,EAAE,CAAA;QACP,MAAM,QAAQ,GAAa,EAAE,CAAA;QAE7B,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACnB,SAAQ;YACV,CAAC;YACD,MAAM,IAAI,GAAG,YAAY,CAAC;gBACxB,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,MAAM;aACpB,CAAC,CAAA;YAEF,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,eAAe,EAAE,IAAI,CAAC,cAAc;gBACpC,eAAe,EAAE,IAAI,CAAC,cAAc;gBACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAA;QACJ,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,iBAAiB,CAAC;gBACvB,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAChB,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;aACtD,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,iBAAiB,CAAC;YACvB,MAAM,EAAE,IAAI;YACZ,MAAM;YACN,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SACtD,CAAC,CAAA;IACJ,CAAC,CACF,CAAA;IAED,QAAQ,CACN,4BAA4B,EAC5B,wBAAwB,EACxB,yBAAyB,EACzB,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,EAAE;QAC5F,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACnD,IAAI,OAAO,IAAI,UAAU;YAAE,OAAO,wBAAwB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAE5E,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC;gBACrD,IAAI;gBACJ,QAAQ,EAAE,SAAS;gBACnB,IAAI;gBACJ,KAAK;gBACL,QAAQ;gBACR,eAAe;aAChB,CAAC,CAAA;YAEF,MAAM,MAAM,GAAG,2BAA2B,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;YAC9D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;YAC7D,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAA;YACrC,MAAM,cAAc,GAAG,eAAe,IAAI,KAAK,CAAA;YAC/C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;gBACtC,IAAI,CAAC,cAAc;oBAAE,OAAO,IAAI,CAAA;gBAChC,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;gBAC9D,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;YAC1C,CAAC,CAAC,CACH,CAAA;YAED,OAAO,iBAAiB,CAAC;gBACvB,MAAM,EAAE,IAAI;gBACZ,SAAS;gBACT,IAAI;gBACJ,SAAS,EAAE,SAAS;gBACpB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM;aACzC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,eAAe,CAC/B,OAAO,EACP,KAAK,EACL,UAAU,CAAC,WAAW,EACtB,YAAY,CAAC,0BAA0B,CAAC,MAAM,CAC/C,CAAA;YACD,IAAI,SAAS;gBAAE,OAAO,wBAAwB,CAAC,SAAS,CAAC,CAAA;YACzD,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAA;YACpF,OAAO,iBAAiB,CAAC;gBACvB,MAAM,EAAE,OAAO;gBACf,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,2BAA2B;wBACjC,OAAO;qBACR;iBACF;aACF,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CACF,CAAA;IAED,QAAQ,CACN,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QACnD,IAAI,OAAO,IAAI,UAAU;YAAE,OAAO,wBAAwB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAE5E,IAAI,OAAqC,CAAA;QACzC,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,uBAAuB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,eAAe,CAC/B,OAAO,EACP,KAAK,EACL,UAAU,CAAC,WAAW,EACtB,YAAY,CAAC,uBAAuB,CAAC,MAAM,CAC5C,CAAA;YACD,IAAI,SAAS;gBAAE,OAAO,wBAAwB,CAAC,SAAS,CAAC,CAAA;YACzD,MAAM,KAAK,CAAA;QACb,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,wFAAwF;YACxF,OAAO,wBAAwB,CAC7B,iBAAiB,CACf;gBACE,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE;oBACN;wBACE,IAAI,EAAE,yBAAyB;wBAC/B,OAAO,EAAE,iEAAiE;wBAC1E,IAAI,EAAE,oEAAoE;qBAC3E;iBACF;aACF,EACD,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CACF,CAAA;QACH,CAAC;QACD,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACnC,CAAC,CACF,CAAA;IAED,4BAA4B,CAAC,MAAM,EAAE;QACnC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,UAAU,IAAI,iBAAiB,CAAC;KACrE,CAAC,CAAA;IACF,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAE7B,OAAO,MAAM,CAAA;AACf,CAAC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
+
import type { AssemblyStatus } from '@transloadit/node';
|
|
2
3
|
/** MCP Apps resource that renders `transloadit_create_assembly` and `transloadit_wait_for_assembly` results. */
|
|
3
4
|
export declare const assemblyResultWidgetUri = "ui://transloadit/assembly-result";
|
|
4
5
|
/** Mime type the MCP Apps spec requires for UI resources. */
|
|
@@ -24,11 +25,22 @@ export declare const widgetAppInfo: {
|
|
|
24
25
|
};
|
|
25
26
|
/** Result `_meta` key that carries widget-only context (never read by the model). */
|
|
26
27
|
export declare const widgetContextMetaKey = "transloadit/widget";
|
|
28
|
+
/** A Step of the Assembly's instructions, so the widget can say what produced each result. */
|
|
29
|
+
export type WidgetStep = {
|
|
30
|
+
/** The Robot, e.g. `/image/resize`, shown as the Step's label. */
|
|
31
|
+
robot: string;
|
|
32
|
+
};
|
|
27
33
|
export type WidgetContext = {
|
|
28
34
|
authenticated: boolean;
|
|
29
35
|
assembly_console_url?: string;
|
|
30
36
|
new_template_url?: string;
|
|
37
|
+
steps?: Record<string, WidgetStep>;
|
|
31
38
|
};
|
|
39
|
+
/**
|
|
40
|
+
* The Robot of each Step, read from the instructions API2 echoes in `merged_params` (Template
|
|
41
|
+
* Steps included) or `params`. Missing or unreadable instructions just leave the labels out.
|
|
42
|
+
*/
|
|
43
|
+
export declare const describeAssemblySteps: (assembly: Pick<AssemblyStatus, "merged_params" | "params">) => Record<string, WidgetStep> | undefined;
|
|
32
44
|
/**
|
|
33
45
|
* The widget document. Everything is inline (no external scripts) so it runs under the
|
|
34
46
|
* restrictive default MCP Apps sandbox CSP; the host only needs to allow result origins.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assembly-result-widget.d.ts","sourceRoot":"","sources":["../../src/ui/assembly-result-widget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"assembly-result-widget.d.ts","sourceRoot":"","sources":["../../src/ui/assembly-result-widget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD,gHAAgH;AAChH,eAAO,MAAM,uBAAuB,qCAAqC,CAAA;AAEzE,6DAA6D;AAC7D,eAAO,MAAM,4BAA4B,8BAA8B,CAAA;AAEvE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,UAIhC,CAAA;AASD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,MAAM,EAAE,MAAM,MAAM,KAAG,MAS/D,CAAA;AAED,yFAAyF;AACzF,eAAO,MAAM,qBAAqB,eAAe,CAAA;AAEjD,yDAAyD;AACzD,eAAO,MAAM,aAAa;;;CAAwE,CAAA;AAElG,qFAAqF;AACrF,eAAO,MAAM,oBAAoB,uBAAuB,CAAA;AAExD,8FAA8F;AAC9F,MAAM,MAAM,UAAU,GAAG;IACvB,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,EAAE,OAAO,CAAA;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CACnC,CAAA;AAKD;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,UAAU,IAAI,CAAC,cAAc,EAAE,eAAe,GAAG,QAAQ,CAAC,KACzD,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,SAgB/B,CAAA;AAgFD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QA8rBpC,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,4FAA4F;AAC5F,eAAO,MAAM,4BAA4B,GACvC,QAAQ,SAAS,EACjB,UAAS,2BAAgC,KACxC,IAiCF,CAAA"}
|
|
@@ -39,6 +39,32 @@ export const widgetProtocolVersion = '2026-01-26';
|
|
|
39
39
|
export const widgetAppInfo = { name: 'transloadit-assembly-result', version: packageJson.version };
|
|
40
40
|
/** Result `_meta` key that carries widget-only context (never read by the model). */
|
|
41
41
|
export const widgetContextMetaKey = 'transloadit/widget';
|
|
42
|
+
const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
43
|
+
/**
|
|
44
|
+
* The Robot of each Step, read from the instructions API2 echoes in `merged_params` (Template
|
|
45
|
+
* Steps included) or `params`. Missing or unreadable instructions just leave the labels out.
|
|
46
|
+
*/
|
|
47
|
+
export const describeAssemblySteps = (assembly) => {
|
|
48
|
+
const source = assembly.merged_params || assembly.params;
|
|
49
|
+
if (!source)
|
|
50
|
+
return undefined;
|
|
51
|
+
let params;
|
|
52
|
+
try {
|
|
53
|
+
params = JSON.parse(source);
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
if (!isRecord(params) || !isRecord(params.steps))
|
|
59
|
+
return undefined;
|
|
60
|
+
const steps = {};
|
|
61
|
+
for (const [name, step] of Object.entries(params.steps)) {
|
|
62
|
+
if (!isRecord(step) || typeof step.robot !== 'string')
|
|
63
|
+
continue;
|
|
64
|
+
steps[name] = { robot: step.robot };
|
|
65
|
+
}
|
|
66
|
+
return Object.keys(steps).length > 0 ? steps : undefined;
|
|
67
|
+
};
|
|
42
68
|
const widgetDescription = 'Shows each Assembly Step with image, video and audio previews, download links for every result file, and a Save as Template shortcut when the caller is signed in.';
|
|
43
69
|
/** Resource `_meta` in both the MCP Apps form and the legacy ChatGPT aliases. */
|
|
44
70
|
const buildAssemblyResultWidgetMeta = ({ resultDomains, redirectDomains, widgetDomain, }) => ({
|
|
@@ -60,6 +86,38 @@ const buildAssemblyResultWidgetMeta = ({ resultDomains, redirectDomains, widgetD
|
|
|
60
86
|
},
|
|
61
87
|
'openai/widgetPrefersBorder': true,
|
|
62
88
|
});
|
|
89
|
+
/** Status labels for API2's `ok` codes (alphalib `assemblyStatusOkCodeSchema`). */
|
|
90
|
+
const statusLabels = {
|
|
91
|
+
ASSEMBLY_CANCELED: { label: 'Canceled', tone: 'neutral' },
|
|
92
|
+
ASSEMBLY_COMPLETED: { label: 'Completed', tone: 'ok' },
|
|
93
|
+
ASSEMBLY_EXECUTING: { label: 'Processing', tone: 'busy' },
|
|
94
|
+
ASSEMBLY_REPLAYING: { label: 'Replaying', tone: 'busy' },
|
|
95
|
+
ASSEMBLY_UPLOADING: { label: 'Waiting for uploads', tone: 'busy' },
|
|
96
|
+
REQUEST_ABORTED: { label: 'Aborted', tone: 'neutral' },
|
|
97
|
+
};
|
|
98
|
+
// Static, trusted markup (24px grid, stroked with currentColor) inserted by the widget script.
|
|
99
|
+
const icons = {
|
|
100
|
+
alert: '<svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><path d="M12 7.5v5.5"/><path d="M12 16.5h.01"/></svg>',
|
|
101
|
+
audio: '<svg viewBox="0 0 24 24"><path d="M9 18V5l11-2v13"/><circle cx="6" cy="18" r="3"/><circle cx="17" cy="16" r="3"/></svg>',
|
|
102
|
+
caret: '<svg viewBox="0 0 24 24"><path d="m9 6 6 6-6 6"/></svg>',
|
|
103
|
+
down: '<svg viewBox="0 0 24 24"><path d="m6 9 6 6 6-6"/></svg>',
|
|
104
|
+
download: '<svg viewBox="0 0 24 24"><path d="M12 4v11"/><path d="m7 10 5 5 5-5"/><path d="M5 20h14"/></svg>',
|
|
105
|
+
file: '<svg viewBox="0 0 24 24"><path d="M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z"/><path d="M14 3v5h5"/></svg>',
|
|
106
|
+
image: '<svg viewBox="0 0 24 24"><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="9" cy="9" r="2"/><path d="m21 15-3.1-3.1a2 2 0 0 0-2.8 0L6 21"/></svg>',
|
|
107
|
+
info: '<svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="9"/><path d="M12 11v5.5"/><path d="M12 7.5h.01"/></svg>',
|
|
108
|
+
play: '<svg viewBox="0 0 24 24"><path class="solid" d="M8.5 5.8v12.4a.8.8 0 0 0 1.2.7l9.9-6.2a.8.8 0 0 0 0-1.4L9.7 5.1a.8.8 0 0 0-1.2.7z"/></svg>',
|
|
109
|
+
};
|
|
110
|
+
/** Cards shown per step and in total before the rest folds into "Show N more files". */
|
|
111
|
+
const visibleFilesPerStep = 8;
|
|
112
|
+
const visibleFilesTotal = 12;
|
|
113
|
+
/** Steps with at most this many files share one grid instead of a row each. */
|
|
114
|
+
const sparseStepFiles = 2;
|
|
115
|
+
// The usual native UI stack, without a bare system-ui first: Linux resolves that through
|
|
116
|
+
// fontconfig to whatever font matched, which can be a CJK face with a mid-line "…".
|
|
117
|
+
const fontStack = '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", system-ui, sans-serif';
|
|
118
|
+
const monoStack = 'ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace';
|
|
119
|
+
const lightTokens = '--bg: #ffffff; --surface: #fafafa; --surface-2: #f5f5f5; --border: #e5e5e5; --border-strong: #d4d4d4; --fg: #171717; --muted: #737373; --subtle: #a3a3a3; --accent: #2563eb; --ok: #16a34a; --err: #dc2626; --err-soft: #fef2f2; --err-border: #fecaca; --warn: #ca8a04; --button-bg: #171717; --button-fg: #fafafa; --skeleton: #f0f0f0; --skeleton-hi: #e5e5e5; --overlay: rgb(23 23 23 / 0.6);';
|
|
120
|
+
const darkTokens = '--bg: #171717; --surface: #1f1f1f; --surface-2: #262626; --border: #2e2e2e; --border-strong: #404040; --fg: #f5f5f5; --muted: #a3a3a3; --subtle: #737373; --accent: #60a5fa; --ok: #4ade80; --err: #f87171; --err-soft: #2a1818; --err-border: #4c2323; --warn: #facc15; --button-bg: #f5f5f5; --button-fg: #171717; --skeleton: #262626; --skeleton-hi: #303030; --overlay: rgb(0 0 0 / 0.6);';
|
|
63
121
|
/**
|
|
64
122
|
* The widget document. Everything is inline (no external scripts) so it runs under the
|
|
65
123
|
* restrictive default MCP Apps sandbox CSP; the host only needs to allow result origins.
|
|
@@ -71,59 +129,154 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
71
129
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
72
130
|
<title>Transloadit Assembly result</title>
|
|
73
131
|
<style>
|
|
74
|
-
:root {
|
|
75
|
-
|
|
76
|
-
--fg: #1a1d21; --muted: #5f6672; --bg: #ffffff; --card: #f5f7fa; --border: #e1e5eb; --accent: #1b61a7; --ok: #1f8a4c; --err: #c0392b;
|
|
77
|
-
}
|
|
78
|
-
:root[data-theme="dark"] {
|
|
79
|
-
--fg: #f1f3f5; --muted: #a2a8b3; --bg: #121417; --card: #1b1e23; --border: #2c313a; --accent: #7db8f2; --ok: #5ccf8a; --err: #f28b7d;
|
|
80
|
-
}
|
|
132
|
+
:root { color-scheme: light; ${lightTokens} --font: ${fontStack}; --mono: ${monoStack}; }
|
|
133
|
+
:root[data-theme="dark"] { color-scheme: dark; ${darkTokens} }
|
|
81
134
|
@media (prefers-color-scheme: dark) {
|
|
82
|
-
:root:not([data-theme="light"]) {
|
|
83
|
-
--fg: #f1f3f5; --muted: #a2a8b3; --bg: #121417; --card: #1b1e23; --border: #2c313a; --accent: #7db8f2; --ok: #5ccf8a; --err: #f28b7d;
|
|
84
|
-
}
|
|
135
|
+
:root:not([data-theme="light"]) { color-scheme: dark; ${darkTokens} }
|
|
85
136
|
}
|
|
86
137
|
* { box-sizing: border-box; }
|
|
87
|
-
|
|
138
|
+
html { background: var(--bg); }
|
|
139
|
+
body { margin: 0; padding: 16px; font: 14px/1.5 var(--font); color: var(--fg); background: var(--bg); -webkit-font-smoothing: antialiased; }
|
|
140
|
+
#app { display: flex; flex-direction: column; gap: 16px; }
|
|
141
|
+
:root[data-capped] #app { max-height: var(--max-height); overflow-y: auto; }
|
|
88
142
|
a { color: var(--accent); }
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
.
|
|
92
|
-
.
|
|
93
|
-
.
|
|
94
|
-
.
|
|
95
|
-
.
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
.
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
.
|
|
109
|
-
.
|
|
110
|
-
|
|
111
|
-
|
|
143
|
+
p { margin: 0; }
|
|
144
|
+
code { font: 12px/1.4 var(--mono); background: var(--surface-2); border-radius: 4px; padding: 1px 4px; }
|
|
145
|
+
.url { overflow-wrap: anywhere; }
|
|
146
|
+
.icon { display: inline-flex; flex: none; }
|
|
147
|
+
.icon svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
|
|
148
|
+
.icon svg .solid { fill: currentColor; stroke: none; }
|
|
149
|
+
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
|
|
150
|
+
|
|
151
|
+
header { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
|
|
152
|
+
.title-row { display: flex; align-items: center; gap: 12px; min-width: 0; min-height: 28px; }
|
|
153
|
+
h1 { flex: 1 1 auto; margin: 0; min-width: 0; font-size: 14px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
154
|
+
.id { font: 500 12px/1 var(--mono); color: var(--muted); }
|
|
155
|
+
a.id { text-decoration: underline; text-decoration-color: var(--border-strong); text-underline-offset: 3px; }
|
|
156
|
+
a.id:hover { color: var(--fg); text-decoration-color: currentColor; }
|
|
157
|
+
.sub-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font-size: 12px; }
|
|
158
|
+
.status { flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 1px 8px; border-radius: 999px; background: var(--surface-2); font-size: 12px; font-weight: 500; }
|
|
159
|
+
.dot { width: 6px; height: 6px; border-radius: 50%; background: var(--subtle); flex: none; }
|
|
160
|
+
.tone-ok .dot { background: var(--ok); }
|
|
161
|
+
.tone-err { color: var(--err); background: var(--err-soft); }
|
|
162
|
+
.tone-err .dot { background: var(--err); }
|
|
163
|
+
.tone-busy .dot { background: var(--accent); animation: pulse 1.4s ease-in-out infinite; }
|
|
164
|
+
.button { flex: none; display: inline-flex; align-items: center; justify-content: center; height: 28px; padding: 0 10px; border-radius: 7px; border: 1px solid var(--button-bg); background: var(--button-bg); color: var(--button-fg); font-size: 12px; font-weight: 500; text-decoration: none; white-space: nowrap; cursor: pointer; }
|
|
165
|
+
.button:hover { opacity: 0.88; }
|
|
166
|
+
|
|
167
|
+
.step { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
|
|
168
|
+
.step-head { display: flex; align-items: baseline; gap: 8px; min-width: 0; font-size: 12px; color: var(--muted); }
|
|
169
|
+
.step-head h2, .fold h2 { margin: 0; flex: none; color: var(--fg); font: 600 12px/1.5 var(--mono); }
|
|
170
|
+
.robot { min-width: 0; font: 11px/1.5 var(--mono); color: var(--subtle); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
171
|
+
.step-head .count { margin-left: auto; flex: none; }
|
|
172
|
+
.group { display: flex; flex-direction: column; gap: 8px; }
|
|
173
|
+
.files { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 8px; }
|
|
174
|
+
.file { position: relative; margin: 0; min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); overflow: hidden; }
|
|
175
|
+
.preview { position: relative; height: 120px; flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; background: var(--surface-2); color: var(--subtle); }
|
|
176
|
+
.preview img { display: block; max-width: 100%; max-height: 100%; width: auto; height: auto; }
|
|
177
|
+
.preview video { display: block; width: 100%; height: 100%; object-fit: contain; }
|
|
178
|
+
.preview > .icon svg { width: 28px; height: 28px; stroke-width: 1.5; }
|
|
179
|
+
.preview .ext { font: 600 11px/1 var(--mono); letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted); }
|
|
180
|
+
.play { position: absolute; top: 50%; left: 50%; width: 40px; height: 40px; margin: -20px 0 0 -20px; display: flex; align-items: center; justify-content: center; padding: 0 0 0 2px; border: 0; border-radius: 50%; background: var(--overlay); color: #ffffff; cursor: pointer; }
|
|
181
|
+
.play .icon svg { width: 18px; height: 18px; }
|
|
182
|
+
.play:hover, .play:focus-visible { transform: scale(1.06); }
|
|
183
|
+
.note { font-size: 12px; color: var(--muted); }
|
|
184
|
+
.caption { display: flex; align-items: center; gap: 4px; padding: 6px 4px 6px 10px; min-width: 0; flex: 1; }
|
|
185
|
+
.caption-text { display: flex; flex-direction: column; min-width: 0; flex: 1; }
|
|
186
|
+
.name { display: flex; min-width: 0; font-size: 13px; font-weight: 500; }
|
|
187
|
+
.name .base { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
188
|
+
.name .ext { flex: none; }
|
|
189
|
+
.meta { color: var(--muted); font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
190
|
+
.tag { font: 11px/1.5 var(--mono); color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
191
|
+
.step .tag, .fold .tag { display: none; }
|
|
192
|
+
.download { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 6px; color: var(--muted); }
|
|
193
|
+
.download:hover { background: var(--surface-2); color: var(--fg); }
|
|
194
|
+
.audio-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "icon text dl" "player player player"; align-items: center; gap: 6px 10px; padding: 8px 4px 8px 12px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); }
|
|
195
|
+
.audio-row > .icon { grid-area: icon; color: var(--muted); }
|
|
196
|
+
.audio-row > .caption-text { grid-area: text; }
|
|
197
|
+
.audio-row > .download { grid-area: dl; }
|
|
198
|
+
.audio-row > .player { grid-area: player; width: 100%; height: 36px; }
|
|
199
|
+
.audio-row > .note.player { height: auto; }
|
|
200
|
+
@media (min-width: 560px) {
|
|
201
|
+
.audio-row { grid-template-columns: auto minmax(0, 1fr) minmax(240px, 320px) auto; grid-template-areas: "icon text player dl"; }
|
|
202
|
+
}
|
|
203
|
+
@media (max-width: 400px) {
|
|
204
|
+
.files { grid-template-columns: minmax(0, 1fr); }
|
|
205
|
+
.file { flex-direction: row; align-items: stretch; }
|
|
206
|
+
.preview { width: 96px; height: 72px; }
|
|
207
|
+
.preview > .icon svg { width: 22px; height: 22px; }
|
|
208
|
+
.preview .note { font-size: 11px; text-align: center; }
|
|
209
|
+
.play { width: 32px; height: 32px; margin: -16px 0 0 -16px; }
|
|
210
|
+
.caption { padding-left: 12px; }
|
|
211
|
+
}
|
|
212
|
+
details.more > summary, details.fold > summary { display: flex; align-items: center; gap: 6px; padding: 2px 0; color: var(--muted); font-size: 12px; cursor: pointer; list-style: none; }
|
|
213
|
+
details > summary::-webkit-details-marker { display: none; }
|
|
214
|
+
details > summary:hover { color: var(--fg); }
|
|
215
|
+
details .caret svg { width: 14px; height: 14px; transition: transform 0.15s ease; }
|
|
216
|
+
details[open] > summary .caret svg { transform: rotate(90deg); }
|
|
217
|
+
details[open] > .group { margin-top: 8px; }
|
|
218
|
+
|
|
219
|
+
.callout { display: flex; gap: 10px; padding: 10px 12px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); font-size: 13px; overflow-wrap: break-word; }
|
|
220
|
+
.callout > .icon { margin-top: 2px; color: var(--muted); }
|
|
221
|
+
.callout-body { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
|
|
222
|
+
.callout .hint { color: var(--muted); }
|
|
223
|
+
.callout.err { background: var(--err-soft); border-color: var(--err-border); }
|
|
224
|
+
.callout.err > .icon { color: var(--err); }
|
|
225
|
+
.callout.warn > .icon { color: var(--warn); }
|
|
226
|
+
p.note { font-size: 13px; }
|
|
227
|
+
|
|
228
|
+
.more-below { display: none; }
|
|
229
|
+
:root[data-capped] .more-below { position: sticky; bottom: 0; flex: none; display: flex; align-items: flex-end; justify-content: center; gap: 4px; height: 48px; margin-top: -64px; padding-bottom: 4px; background: linear-gradient(to bottom, transparent, var(--bg) 75%); color: var(--muted); font-size: 12px; pointer-events: none; opacity: 0; transition: opacity 0.15s ease; }
|
|
230
|
+
:root[data-capped] .more-below.show { opacity: 1; }
|
|
231
|
+
.more-below .icon svg { width: 14px; height: 14px; }
|
|
232
|
+
|
|
233
|
+
.pending { display: flex; flex-direction: column; gap: 16px; }
|
|
234
|
+
.pending-label { display: flex; align-items: center; gap: 8px; height: 28px; color: var(--muted); font-size: 13px; }
|
|
235
|
+
.pending-label .dot { width: 8px; height: 8px; }
|
|
236
|
+
.running .pending-label .dot { background: var(--accent); animation: pulse 1.4s ease-in-out infinite; }
|
|
237
|
+
.sk { display: block; border-radius: 6px; background: var(--skeleton); }
|
|
238
|
+
.running .sk { background: linear-gradient(90deg, var(--skeleton) 25%, var(--skeleton-hi) 50%, var(--skeleton) 75%); background-size: 200% 100%; animation: shimmer 1.6s linear infinite; }
|
|
239
|
+
.sk-step { width: 35%; height: 12px; }
|
|
240
|
+
.sk-preview { height: 120px; border-radius: 0; }
|
|
241
|
+
.sk-lines { display: flex; flex-direction: column; gap: 6px; padding: 9px 10px 10px; flex: 1; }
|
|
242
|
+
.sk-line { height: 10px; width: 70%; }
|
|
243
|
+
.sk-line.short { width: 45%; }
|
|
244
|
+
@media (max-width: 400px) {
|
|
245
|
+
.sk-preview { width: 96px; height: 72px; flex: none; }
|
|
246
|
+
.pending .file:nth-child(2) { display: none; }
|
|
247
|
+
}
|
|
248
|
+
@keyframes pulse { 50% { opacity: 0.35; } }
|
|
249
|
+
@keyframes shimmer { from { background-position: 100% 0; } to { background-position: -100% 0; } }
|
|
250
|
+
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }
|
|
112
251
|
</style>
|
|
113
252
|
</head>
|
|
114
253
|
<body>
|
|
115
|
-
<main id="app"
|
|
254
|
+
<main id="app"></main>
|
|
116
255
|
<script>
|
|
117
256
|
(() => {
|
|
118
257
|
const app = document.getElementById('app')
|
|
258
|
+
const root = document.documentElement
|
|
119
259
|
const appInfo = ${JSON.stringify(widgetAppInfo)}
|
|
120
260
|
const protocolVersion = ${JSON.stringify(widgetProtocolVersion)}
|
|
121
261
|
const contextKey = ${JSON.stringify(widgetContextMetaKey)}
|
|
262
|
+
const statusLabels = ${JSON.stringify(statusLabels)}
|
|
263
|
+
const icons = ${JSON.stringify(icons)}
|
|
264
|
+
const visibleFilesPerStep = ${visibleFilesPerStep}
|
|
265
|
+
const visibleFilesTotal = ${visibleFilesTotal}
|
|
266
|
+
const sparseStepFiles = ${sparseStepFiles}
|
|
267
|
+
const backtick = String.fromCharCode(96)
|
|
122
268
|
const hostCapabilities = { openLinks: false }
|
|
123
269
|
let hasResult = false
|
|
270
|
+
let lastSignature = null
|
|
271
|
+
// Rendered nodes by step and by file, reused while their data is unchanged so previews are
|
|
272
|
+
// never re-created (and re-downloaded) when a host repeats or updates the result.
|
|
273
|
+
const sectionCache = new Map()
|
|
274
|
+
const itemCache = new Map()
|
|
124
275
|
|
|
125
276
|
const isRecord = (value) => typeof value === 'object' && value !== null && !Array.isArray(value)
|
|
126
277
|
const text = (value) => (typeof value === 'string' ? value : '')
|
|
278
|
+
const positive = (value) => (typeof value === 'number' && Number.isFinite(value) && value > 0 ? value : 0)
|
|
279
|
+
const plural = (count, noun) => count + ' ' + noun + (count === 1 ? '' : 's')
|
|
127
280
|
|
|
128
281
|
const safeUrl = (value) => {
|
|
129
282
|
if (typeof value !== 'string') return null
|
|
@@ -138,7 +291,7 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
138
291
|
const el = (tag, props, children) => {
|
|
139
292
|
const node = document.createElement(tag)
|
|
140
293
|
for (const [key, value] of Object.entries(props || {})) {
|
|
141
|
-
if (value === undefined || value === null) continue
|
|
294
|
+
if (value === undefined || value === null || value === false) continue
|
|
142
295
|
if (key === 'className') node.className = value
|
|
143
296
|
else if (key === 'text') node.textContent = value
|
|
144
297
|
else node.setAttribute(key, value)
|
|
@@ -149,8 +302,62 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
149
302
|
return node
|
|
150
303
|
}
|
|
151
304
|
|
|
152
|
-
const
|
|
153
|
-
|
|
305
|
+
const icon = (name) => {
|
|
306
|
+
const span = el('span', { className: 'icon', 'aria-hidden': 'true' })
|
|
307
|
+
span.innerHTML = icons[name]
|
|
308
|
+
return span
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
// URLs may break after "/", "?", "&" or "=", never inside the words around them.
|
|
312
|
+
const urlText = (url) => {
|
|
313
|
+
const node = el('span', { className: 'url' })
|
|
314
|
+
for (const part of url.split(/(?<=[/?&=])/)) {
|
|
315
|
+
node.append(part, document.createElement('wbr'))
|
|
316
|
+
}
|
|
317
|
+
return node
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
const plainText = (value) => {
|
|
321
|
+
const nodes = []
|
|
322
|
+
let last = 0
|
|
323
|
+
for (const match of value.matchAll(/https?:\\/\\/[^\\s<>]+[^\\s<>.,;:!?)]/g)) {
|
|
324
|
+
nodes.push(value.slice(last, match.index), urlText(match[0]))
|
|
325
|
+
last = match.index + match[0].length
|
|
326
|
+
}
|
|
327
|
+
nodes.push(value.slice(last))
|
|
328
|
+
return nodes.filter((node) => node !== '')
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
// Tool hints quote commands and parameters in backticks; show those as code.
|
|
332
|
+
const richText = (value) => {
|
|
333
|
+
const parts = value.split(backtick)
|
|
334
|
+
if (parts.length % 2 === 0) return plainText(value)
|
|
335
|
+
return parts.flatMap((part, index) => (index % 2 === 1 ? [el('code', { text: part })] : plainText(part)))
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
const pending = (kind, message) => {
|
|
339
|
+
const skeletonCard = () =>
|
|
340
|
+
el('div', { className: 'file' }, [
|
|
341
|
+
el('span', { className: 'sk sk-preview' }),
|
|
342
|
+
el('div', { className: 'sk-lines' }, [el('span', { className: 'sk sk-line' }), el('span', { className: 'sk sk-line short' })]),
|
|
343
|
+
])
|
|
344
|
+
app.replaceChildren(
|
|
345
|
+
el('div', { className: 'pending ' + kind, role: 'status' }, [
|
|
346
|
+
el('p', { className: 'pending-label' }, [el('span', { className: 'dot' }), message]),
|
|
347
|
+
el('span', { className: 'sk sk-step' }),
|
|
348
|
+
el('div', { className: 'files' }, [skeletonCard(), skeletonCard()]),
|
|
349
|
+
]),
|
|
350
|
+
)
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
const callout = (kind, lines, role) =>
|
|
354
|
+
el('div', { className: 'callout ' + kind, role }, [
|
|
355
|
+
icon(kind === 'err' ? 'alert' : 'info'),
|
|
356
|
+
el('div', { className: 'callout-body' }, lines.filter(Boolean)),
|
|
357
|
+
])
|
|
358
|
+
|
|
359
|
+
const showStatus = (message, kind) => {
|
|
360
|
+
app.replaceChildren(callout(kind || 'neutral', [el('p', { text: message })], 'status'))
|
|
154
361
|
}
|
|
155
362
|
|
|
156
363
|
// MCP Apps transport: JSON-RPC 2.0 over postMessage with the host (or its sandbox proxy).
|
|
@@ -159,12 +366,12 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
159
366
|
window.parent.postMessage(message, '*')
|
|
160
367
|
}
|
|
161
368
|
|
|
162
|
-
const
|
|
369
|
+
const pendingRequests = new Map()
|
|
163
370
|
let nextId = 1
|
|
164
371
|
const request = (method, params) =>
|
|
165
372
|
new Promise((resolve, reject) => {
|
|
166
373
|
const id = nextId++
|
|
167
|
-
|
|
374
|
+
pendingRequests.set(id, { resolve, reject })
|
|
168
375
|
post({ jsonrpc: '2.0', id, method, params })
|
|
169
376
|
})
|
|
170
377
|
const notify = (method, params) =>
|
|
@@ -172,10 +379,36 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
172
379
|
const respond = (id, result) => post({ jsonrpc: '2.0', id, result })
|
|
173
380
|
const respondError = (id, code, message) => post({ jsonrpc: '2.0', id, error: { code, message } })
|
|
174
381
|
|
|
382
|
+
// A capped card scrolls; the fade and count at its bottom say there is more below.
|
|
383
|
+
const moreBelowLabel = el('span')
|
|
384
|
+
const moreBelow = el('div', { className: 'more-below', 'aria-hidden': 'true' }, [moreBelowLabel, icon('down')])
|
|
385
|
+
let fileCount = 0
|
|
386
|
+
const updateMoreBelow = () => {
|
|
387
|
+
if (!('capped' in root.dataset) || app.scrollHeight - app.scrollTop - app.clientHeight <= 4) {
|
|
388
|
+
moreBelow.classList.remove('show')
|
|
389
|
+
return
|
|
390
|
+
}
|
|
391
|
+
// Everything not in view counts, including files inside folded steps.
|
|
392
|
+
const bottom = app.getBoundingClientRect().bottom
|
|
393
|
+
const inView = [...app.querySelectorAll('.file, .audio-row')].filter((node) => node.getBoundingClientRect().top <= bottom - 32).length
|
|
394
|
+
const below = fileCount - inView
|
|
395
|
+
moreBelowLabel.textContent = below > 0 ? plural(below, 'more file') + ' below' : 'More below'
|
|
396
|
+
moreBelow.classList.add('show')
|
|
397
|
+
}
|
|
398
|
+
app.addEventListener('scroll', () => requestAnimationFrame(updateMoreBelow), { passive: true })
|
|
399
|
+
|
|
400
|
+
// ChatGPT passes maxHeight directly, MCP Apps hosts inside containerDimensions.
|
|
175
401
|
const applyHostContext = (context) => {
|
|
176
402
|
if (!isRecord(context)) return
|
|
177
403
|
if (context.theme === 'dark' || context.theme === 'light') {
|
|
178
|
-
|
|
404
|
+
root.dataset.theme = context.theme
|
|
405
|
+
}
|
|
406
|
+
const dimensions = isRecord(context.containerDimensions) ? context.containerDimensions : context
|
|
407
|
+
const maxHeight = positive(dimensions.maxHeight)
|
|
408
|
+
if (maxHeight > 0) {
|
|
409
|
+
root.style.setProperty('--max-height', Math.max(maxHeight - 32, 160) + 'px')
|
|
410
|
+
root.dataset.capped = ''
|
|
411
|
+
updateMoreBelow()
|
|
179
412
|
}
|
|
180
413
|
}
|
|
181
414
|
|
|
@@ -197,25 +430,22 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
197
430
|
|
|
198
431
|
// Sandboxed frames often block popups and downloads, so every outgoing link goes through the
|
|
199
432
|
// host when it offers ui/open-link (or ChatGPT's openExternal).
|
|
200
|
-
const hostLink = (props, url) => {
|
|
201
|
-
const anchor = el('a', { href: url, target: '_blank', rel: 'noopener noreferrer', ...props })
|
|
433
|
+
const hostLink = (props, url, children) => {
|
|
434
|
+
const anchor = el('a', { href: url, target: '_blank', rel: 'noopener noreferrer', ...props }, children)
|
|
202
435
|
anchor.addEventListener('click', (event) => {
|
|
203
436
|
if (openWithHost(url)) event.preventDefault()
|
|
204
437
|
})
|
|
205
438
|
return anchor
|
|
206
439
|
}
|
|
207
440
|
|
|
208
|
-
const linkButton = (label, url, secondary) =>
|
|
209
|
-
hostLink({ className: secondary ? 'button secondary' : 'button', text: label }, url)
|
|
210
|
-
|
|
211
441
|
// Result files can land on the public bucket a moment after the Assembly reports completion,
|
|
212
442
|
// and a failed <img>/<video> never retries by itself.
|
|
213
443
|
const previewRetryDelays = [1000, 3000, 6000]
|
|
214
|
-
const retryPreview = (media, url) => {
|
|
444
|
+
const retryPreview = (media, url, fallback) => {
|
|
215
445
|
let attempt = 0
|
|
216
446
|
media.addEventListener('error', () => {
|
|
217
447
|
if (attempt >= previewRetryDelays.length) {
|
|
218
|
-
media.replaceWith(
|
|
448
|
+
media.replaceWith(...fallback())
|
|
219
449
|
return
|
|
220
450
|
}
|
|
221
451
|
setTimeout(() => {
|
|
@@ -227,116 +457,280 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
227
457
|
})
|
|
228
458
|
return media
|
|
229
459
|
}
|
|
460
|
+
const unavailable = (iconName) => () => [icon(iconName), el('span', { className: 'note', role: 'status', text: 'Preview unavailable' })]
|
|
230
461
|
|
|
462
|
+
const fileName = (file) => text(file.name) || text(file.basename) || 'file'
|
|
463
|
+
const fileUrl = (file) => safeUrl(file.ssl_url) || safeUrl(file.url)
|
|
464
|
+
const isAudio = (file) => Boolean(fileUrl(file)) && text(file.mime).startsWith('audio/')
|
|
465
|
+
|
|
466
|
+
// A still frame with one play button; the native controls only appear once someone plays it,
|
|
467
|
+
// so they never cover the frame.
|
|
468
|
+
const videoPreview = (file, url, size) => {
|
|
469
|
+
const name = fileName(file)
|
|
470
|
+
// The fragment makes browsers that skip preload (Safari) still paint the first frame.
|
|
471
|
+
const src = url + '#t=0.1'
|
|
472
|
+
const video = retryPreview(el('video', { src, preload: 'metadata', playsinline: '', 'aria-label': name, ...size }), src, unavailable('file'))
|
|
473
|
+
const play = el('button', { className: 'play', type: 'button', 'aria-label': 'Play ' + name }, [icon('play')])
|
|
474
|
+
play.addEventListener('click', () => {
|
|
475
|
+
video.controls = true
|
|
476
|
+
play.remove()
|
|
477
|
+
Promise.resolve(video.play()).catch(() => {})
|
|
478
|
+
})
|
|
479
|
+
return el('div', { className: 'preview' }, [video, play])
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
// The box has a fixed height and media declare their aspect ratio, so nothing moves while
|
|
483
|
+
// previews load; images are never scaled beyond their own size.
|
|
231
484
|
const preview = (file) => {
|
|
232
|
-
const url =
|
|
485
|
+
const url = fileUrl(file)
|
|
233
486
|
const mime = text(file.mime)
|
|
234
|
-
const
|
|
235
|
-
const
|
|
487
|
+
const width = positive(file.width)
|
|
488
|
+
const height = positive(file.height)
|
|
489
|
+
const size = width && height
|
|
490
|
+
? { width: String(width), height: String(height), style: 'aspect-ratio: ' + width + ' / ' + height }
|
|
491
|
+
: {}
|
|
236
492
|
if (url && mime.startsWith('image/')) {
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
} else if (url && mime.startsWith('audio/')) {
|
|
241
|
-
box.append(retryPreview(el('audio', { src: url, controls: '', preload: 'metadata' }), url))
|
|
242
|
-
} else {
|
|
243
|
-
box.append(el('span', { className: 'file', 'aria-hidden': 'true', text: '📄' }))
|
|
493
|
+
return el('div', { className: 'preview' }, [
|
|
494
|
+
retryPreview(el('img', { src: url, alt: fileName(file), loading: 'lazy', decoding: 'async', ...size }), url, unavailable('image')),
|
|
495
|
+
])
|
|
244
496
|
}
|
|
245
|
-
return
|
|
497
|
+
if (url && mime.startsWith('video/')) return videoPreview(file, url, size)
|
|
498
|
+
const ext = text(file.ext) || (mime.includes('/') ? mime.split('/')[1] : '')
|
|
499
|
+
return el('div', { className: 'preview' }, [icon('file'), ext ? el('span', { className: 'ext', text: ext.slice(0, 8) }) : null])
|
|
246
500
|
}
|
|
247
501
|
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
const
|
|
502
|
+
// Ellipsize the base name but keep the extension visible; the full name is in the tooltip.
|
|
503
|
+
const nameLabel = (name) => {
|
|
504
|
+
const dot = name.lastIndexOf('.')
|
|
505
|
+
const base = dot > 0 && name.length - dot <= 8 ? name.slice(0, dot) : name
|
|
506
|
+
const ext = base === name ? '' : name.slice(base.length)
|
|
507
|
+
return el('span', { className: 'name', title: name }, [el('span', { className: 'base', text: base }), ext ? el('span', { className: 'ext', text: ext }) : null])
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
// Every caption names its step; the tag only shows in the shared grid (see .step .tag), so a
|
|
511
|
+
// card can move between the two layouts without being rebuilt.
|
|
512
|
+
const captionText = (file, tag) => {
|
|
251
513
|
const details = []
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
514
|
+
const width = positive(file.width)
|
|
515
|
+
const height = positive(file.height)
|
|
516
|
+
if (width && height) details.push(width + '×' + height)
|
|
255
517
|
if (text(file.size_human)) details.push(text(file.size_human))
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
el('span', { className: '
|
|
260
|
-
|
|
518
|
+
const meta = details.join(' · ') || text(file.mime)
|
|
519
|
+
return el('span', { className: 'caption-text' }, [
|
|
520
|
+
nameLabel(fileName(file)),
|
|
521
|
+
el('span', { className: 'tag', text: tag }),
|
|
522
|
+
el('span', { className: 'meta', text: meta }),
|
|
261
523
|
])
|
|
262
|
-
return el('figure', {}, [preview(isRecord(file) ? file : {}), caption])
|
|
263
524
|
}
|
|
264
525
|
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
(
|
|
268
|
-
|
|
269
|
-
|
|
526
|
+
const downloadLink = (file) => {
|
|
527
|
+
const url = fileUrl(file)
|
|
528
|
+
if (!url) return null
|
|
529
|
+
return hostLink({ className: 'download', download: '', title: 'Download' }, url, [icon('download'), el('span', { className: 'sr', text: 'Download ' + fileName(file) })])
|
|
530
|
+
}
|
|
270
531
|
|
|
271
|
-
const
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
532
|
+
const buildItem = (file, tag) => {
|
|
533
|
+
if (isAudio(file)) {
|
|
534
|
+
const url = fileUrl(file)
|
|
535
|
+
return el('div', { className: 'audio-row' }, [
|
|
536
|
+
icon('audio'),
|
|
537
|
+
captionText(file, tag),
|
|
538
|
+
retryPreview(el('audio', { className: 'player', src: url, controls: '', preload: 'metadata', 'aria-label': fileName(file) }), url, () => [el('span', { className: 'note player', role: 'status', text: 'Preview unavailable' })]),
|
|
539
|
+
downloadLink(file),
|
|
540
|
+
])
|
|
541
|
+
}
|
|
542
|
+
return el('figure', { className: 'file' }, [
|
|
543
|
+
preview(file),
|
|
544
|
+
el('figcaption', { className: 'caption' }, [captionText(file, tag), downloadLink(file)]),
|
|
545
|
+
])
|
|
279
546
|
}
|
|
280
547
|
|
|
281
|
-
const
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
const
|
|
287
|
-
|
|
548
|
+
const item = (stepName, file, index) => {
|
|
549
|
+
const key = stepName + '\\n' + (text(file.id) || fileUrl(file) || String(index))
|
|
550
|
+
const signature = JSON.stringify(file)
|
|
551
|
+
const cached = itemCache.get(key)
|
|
552
|
+
if (cached && cached.signature === signature) return cached.node
|
|
553
|
+
const node = buildItem(file, stepName)
|
|
554
|
+
itemCache.set(key, { signature, node })
|
|
555
|
+
return node
|
|
556
|
+
}
|
|
288
557
|
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
558
|
+
// Cards in a grid, audio as full-width rows below them.
|
|
559
|
+
const group = (entries) => {
|
|
560
|
+
const cards = entries.filter((entry) => !isAudio(entry.file)).map((entry) => entry.node())
|
|
561
|
+
const rows = entries.filter((entry) => isAudio(entry.file)).map((entry) => entry.node())
|
|
562
|
+
return el('div', { className: 'group' }, [
|
|
563
|
+
cards.length > 0 ? el('div', { className: 'files' }, cards) : null,
|
|
564
|
+
...rows,
|
|
565
|
+
])
|
|
566
|
+
}
|
|
567
|
+
|
|
568
|
+
const stepEntries = (stepName, files, offset) =>
|
|
569
|
+
files.map((file, index) => ({ file, node: () => item(stepName, file, offset + index) }))
|
|
570
|
+
|
|
571
|
+
const stepLabel = (stepName, stepsMeta) => {
|
|
572
|
+
if (stepName === ':original') return ''
|
|
573
|
+
const step = isRecord(stepsMeta) && isRecord(stepsMeta[stepName]) ? stepsMeta[stepName] : {}
|
|
574
|
+
return text(step.robot)
|
|
575
|
+
}
|
|
576
|
+
|
|
577
|
+
// Folded previews are only created (and downloaded) once someone opens them.
|
|
578
|
+
const foldable = (summary, className, build) => {
|
|
579
|
+
const details = el('details', { className }, [el('summary', {}, summary)])
|
|
580
|
+
details.addEventListener('toggle', () => {
|
|
581
|
+
if (!details.open || details.childElementCount > 1) return
|
|
582
|
+
details.append(build())
|
|
583
|
+
})
|
|
584
|
+
return details
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
const buildSection = (stepName, files, visible, label) => {
|
|
588
|
+
const hidden = files.slice(visible)
|
|
589
|
+
if (visible === 0) {
|
|
590
|
+
return foldable(
|
|
591
|
+
[icon('caret'), el('h2', { text: stepName }), el('span', { text: '· ' + plural(files.length, 'file') }), label ? el('span', { className: 'robot', text: label }) : null],
|
|
592
|
+
'fold step',
|
|
593
|
+
() => group(stepEntries(stepName, files, 0)),
|
|
594
|
+
)
|
|
595
|
+
}
|
|
596
|
+
const section = el('section', { className: 'step' }, [
|
|
597
|
+
el('div', { className: 'step-head' }, [
|
|
598
|
+
el('h2', { text: stepName }),
|
|
599
|
+
label ? el('span', { className: 'robot', title: label, text: label }) : null,
|
|
600
|
+
el('span', { className: 'count', text: plural(files.length, 'file') }),
|
|
601
|
+
]),
|
|
602
|
+
group(stepEntries(stepName, files.slice(0, visible), 0)),
|
|
603
|
+
])
|
|
604
|
+
if (hidden.length > 0) {
|
|
605
|
+
section.append(
|
|
606
|
+
foldable([icon('caret'), 'Show ' + hidden.length + ' more'], 'more', () => group(stepEntries(stepName, hidden, visible))),
|
|
607
|
+
)
|
|
292
608
|
}
|
|
609
|
+
return section
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
const buildSteps = (steps, stepsMeta) => {
|
|
613
|
+
// Few files per step: one shared grid where each card names its step.
|
|
614
|
+
const total = steps.reduce((sum, [, files]) => sum + files.length, 0)
|
|
615
|
+
if (steps.length > 1 && total <= visibleFilesTotal && steps.every(([, files]) => files.length <= sparseStepFiles)) {
|
|
616
|
+
return [group(steps.flatMap(([stepName, files]) => stepEntries(stepName, files, 0)))]
|
|
617
|
+
}
|
|
618
|
+
let budget = visibleFilesTotal
|
|
619
|
+
return steps.map(([stepName, files]) => {
|
|
620
|
+
const visible = Math.min(files.length, visibleFilesPerStep, Math.max(budget, 0))
|
|
621
|
+
budget -= visible
|
|
622
|
+
const label = stepLabel(stepName, stepsMeta)
|
|
623
|
+
const signature = JSON.stringify([files, visible, label])
|
|
624
|
+
const cached = sectionCache.get(stepName)
|
|
625
|
+
if (cached && cached.signature === signature) return cached.node
|
|
626
|
+
const node = buildSection(stepName, files, visible, label)
|
|
627
|
+
sectionCache.set(stepName, { signature, node })
|
|
628
|
+
return node
|
|
629
|
+
})
|
|
630
|
+
}
|
|
631
|
+
|
|
632
|
+
// Each tool error as its message and its recovery hint.
|
|
633
|
+
const payloadErrors = (payload) =>
|
|
634
|
+
(Array.isArray(payload.errors) ? payload.errors : []).filter((error) => isRecord(error) && (text(error.message) || text(error.hint)))
|
|
635
|
+
|
|
636
|
+
const errorCallout = (error) =>
|
|
637
|
+
callout('err', [
|
|
638
|
+
text(error.message) ? el('p', {}, richText(text(error.message))) : null,
|
|
639
|
+
text(error.hint) ? el('p', { className: 'hint' }, richText(text(error.hint))) : null,
|
|
640
|
+
], 'alert')
|
|
293
641
|
|
|
642
|
+
const contentText = (result) =>
|
|
643
|
+
(Array.isArray(result.content) ? result.content : [])
|
|
644
|
+
.map((block) => (isRecord(block) && block.type === 'text' ? text(block.text) : ''))
|
|
645
|
+
.filter(Boolean)
|
|
646
|
+
.join(' ')
|
|
647
|
+
|
|
648
|
+
// An Assembly without ok or error (created, but its status unreadable) has no known status.
|
|
649
|
+
const statusOf = (assembly) => {
|
|
650
|
+
const error = text(assembly.error)
|
|
651
|
+
if (error) return { label: 'Failed', tone: 'err', code: error }
|
|
294
652
|
const ok = text(assembly.ok)
|
|
295
|
-
const
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
const
|
|
653
|
+
const known = statusLabels[ok]
|
|
654
|
+
if (known) return { label: known.label, tone: known.tone, code: ok }
|
|
655
|
+
return { label: 'Status unknown', tone: 'neutral', code: ok }
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
const buildHeader = (assembly, meta, status) => {
|
|
659
|
+
const id = text(assembly.assembly_id)
|
|
302
660
|
const consoleUrl = safeUrl(meta.assembly_console_url)
|
|
303
|
-
|
|
661
|
+
// The Console is the only human-readable view of an Assembly; its API status URL is raw JSON.
|
|
662
|
+
const idNode = !id ? null : consoleUrl
|
|
663
|
+
? hostLink({ className: 'id', title: 'Open in Console' }, consoleUrl, [id])
|
|
664
|
+
: el('span', { className: 'id', text: id })
|
|
304
665
|
const templateUrl = safeUrl(meta.new_template_url)
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
666
|
+
// Failed, unread and still-uploading Assemblies have no instructions worth saving yet.
|
|
667
|
+
const savable = status.tone !== 'err' && status.code !== '' && status.code !== 'ASSEMBLY_UPLOADING'
|
|
668
|
+
return el('header', {}, [
|
|
669
|
+
el('div', { className: 'title-row' }, [
|
|
670
|
+
el('h1', {}, ['Assembly ', idNode]),
|
|
671
|
+
meta.authenticated === true && templateUrl && savable
|
|
672
|
+
? hostLink({ className: 'button', text: 'Save as Template' }, templateUrl)
|
|
673
|
+
: null,
|
|
674
|
+
]),
|
|
675
|
+
el('div', { className: 'sub-row' }, [
|
|
676
|
+
el('span', { className: 'status tone-' + status.tone, title: status.code || null }, [el('span', { className: 'dot' }), status.label]),
|
|
677
|
+
]),
|
|
678
|
+
])
|
|
679
|
+
}
|
|
308
680
|
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
}
|
|
312
|
-
// A tool error can come with a partial Assembly (created, but its status unreadable).
|
|
681
|
+
const buildResult = (result, payload, meta) => {
|
|
682
|
+
const assembly = isRecord(payload.assembly) ? payload.assembly : null
|
|
313
683
|
const toolErrors = payloadErrors(payload)
|
|
314
|
-
|
|
315
|
-
|
|
684
|
+
if (!assembly) {
|
|
685
|
+
if (toolErrors.length > 0) return toolErrors.map(errorCallout)
|
|
686
|
+
return [callout('err', [el('p', { text: contentText(result) || 'No Assembly result was returned.' })], 'alert')]
|
|
316
687
|
}
|
|
317
688
|
|
|
689
|
+
const status = statusOf(assembly)
|
|
690
|
+
const nodes = [buildHeader(assembly, meta, status)]
|
|
691
|
+
if (status.tone === 'err') {
|
|
692
|
+
nodes.push(callout('err', [
|
|
693
|
+
el('p', {}, richText(text(assembly.message) || 'The Assembly failed.')),
|
|
694
|
+
el('p', { className: 'hint' }, [el('code', { text: status.code })]),
|
|
695
|
+
], 'alert'))
|
|
696
|
+
}
|
|
697
|
+
for (const error of toolErrors) nodes.push(errorCallout(error))
|
|
698
|
+
|
|
318
699
|
const results = isRecord(assembly.results) ? assembly.results : {}
|
|
319
|
-
const uploads = Array.isArray(assembly.uploads) ? assembly.uploads : []
|
|
320
|
-
const steps = Object.entries(results)
|
|
700
|
+
const uploads = Array.isArray(assembly.uploads) ? assembly.uploads.filter(isRecord) : []
|
|
701
|
+
const steps = Object.entries(results)
|
|
702
|
+
.map(([stepName, files]) => [stepName, Array.isArray(files) ? files.filter(isRecord) : []])
|
|
703
|
+
.filter(([, files]) => files.length > 0)
|
|
321
704
|
if (uploads.length > 0) steps.unshift([':original', uploads])
|
|
705
|
+
fileCount = steps.reduce((sum, [, files]) => sum + files.length, 0)
|
|
706
|
+
nodes.push(...buildSteps(steps, meta.steps))
|
|
322
707
|
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
708
|
+
// The busy note and any warnings read as one message.
|
|
709
|
+
const notes = []
|
|
710
|
+
if (status.tone === 'busy') notes.push('Result files appear when the Assembly completes.')
|
|
711
|
+
else if (steps.length === 0 && toolErrors.length === 0 && status.tone !== 'err') notes.push('No result files.')
|
|
712
|
+
const warnings = (Array.isArray(payload.warnings) ? payload.warnings : []).filter((warning) => isRecord(warning) && text(warning.message))
|
|
713
|
+
if (warnings.length > 0) {
|
|
714
|
+
nodes.push(callout('warn', [...notes.map((note) => el('p', { text: note })), ...warnings.map((warning) => el('p', {}, richText(text(warning.message))))]))
|
|
715
|
+
} else {
|
|
716
|
+
for (const note of notes) nodes.push(el('p', { className: 'note', text: note }))
|
|
332
717
|
}
|
|
718
|
+
nodes.push(moreBelow)
|
|
719
|
+
return nodes
|
|
720
|
+
}
|
|
333
721
|
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
722
|
+
const render = (result) => {
|
|
723
|
+
if (!isRecord(result)) return
|
|
724
|
+
const payload = isRecord(result.structuredContent) ? result.structuredContent : {}
|
|
725
|
+
const meta = isRecord(result._meta) && isRecord(result._meta[contextKey]) ? result._meta[contextKey] : {}
|
|
726
|
+
// Hosts repeat results (re-mounts, reconnects, ChatGPT's toolOutput next to the MCP Apps
|
|
727
|
+
// notification); an identical one must not touch the DOM.
|
|
728
|
+
const signature = JSON.stringify([payload, meta, Object.keys(payload).length === 0 ? contentText(result) : ''])
|
|
729
|
+
if (signature === lastSignature) return
|
|
730
|
+
lastSignature = signature
|
|
731
|
+
hasResult = true
|
|
732
|
+
app.replaceChildren(...buildResult(result, payload, meta))
|
|
733
|
+
updateMoreBelow()
|
|
340
734
|
}
|
|
341
735
|
|
|
342
736
|
const handleHostRequest = (message) => {
|
|
@@ -349,7 +743,7 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
349
743
|
|
|
350
744
|
const handleHostNotification = (message) => {
|
|
351
745
|
if (message.method === 'ui/notifications/tool-input') {
|
|
352
|
-
if (!hasResult)
|
|
746
|
+
if (!hasResult) pending('running', 'Running the Assembly…')
|
|
353
747
|
} else if (message.method === 'ui/notifications/tool-result') {
|
|
354
748
|
render(message.params)
|
|
355
749
|
} else if (message.method === 'ui/notifications/tool-cancelled') {
|
|
@@ -368,18 +762,21 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
368
762
|
else handleHostNotification(message)
|
|
369
763
|
return
|
|
370
764
|
}
|
|
371
|
-
const entry =
|
|
765
|
+
const entry = pendingRequests.get(message.id)
|
|
372
766
|
if (!entry) return
|
|
373
|
-
|
|
767
|
+
pendingRequests.delete(message.id)
|
|
374
768
|
if (message.error) entry.reject(message.error)
|
|
375
769
|
else entry.resolve(message.result)
|
|
376
770
|
})
|
|
377
771
|
|
|
378
|
-
|
|
772
|
+
pending('waiting', 'Waiting for the Assembly result…')
|
|
773
|
+
|
|
774
|
+
// ChatGPT also exposes the result through window.openai and fires openai:set_globals for any
|
|
775
|
+
// change (theme, maxHeight, …); render() ignores the ones that leave the result as it was.
|
|
379
776
|
const renderFromOpenAi = () => {
|
|
380
777
|
const openai = window.openai
|
|
381
778
|
if (!openai) return
|
|
382
|
-
applyHostContext({ theme: openai.theme })
|
|
779
|
+
applyHostContext({ theme: openai.theme, maxHeight: openai.maxHeight })
|
|
383
780
|
if (isRecord(openai.toolOutput)) {
|
|
384
781
|
render({ structuredContent: openai.toolOutput, _meta: openai.toolResponseMetadata })
|
|
385
782
|
}
|
|
@@ -387,6 +784,10 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
387
784
|
window.addEventListener('openai:set_globals', renderFromOpenAi)
|
|
388
785
|
renderFromOpenAi()
|
|
389
786
|
|
|
787
|
+
if (typeof ResizeObserver === 'function') {
|
|
788
|
+
new ResizeObserver(() => updateMoreBelow()).observe(app)
|
|
789
|
+
}
|
|
790
|
+
|
|
390
791
|
if (window.parent !== window) {
|
|
391
792
|
request('ui/initialize', {
|
|
392
793
|
appCapabilities: {},
|
|
@@ -401,16 +802,22 @@ export const assemblyResultWidgetHtml = `<!doctype html>
|
|
|
401
802
|
notify('ui/notifications/initialized')
|
|
402
803
|
})
|
|
403
804
|
.catch(() => {
|
|
404
|
-
if (!hasResult) showStatus('This host could not start the Assembly result view.', '
|
|
805
|
+
if (!hasResult) showStatus('This host could not start the Assembly result view.', 'err')
|
|
405
806
|
})
|
|
406
807
|
|
|
808
|
+
// Report the body's own height, not documentElement.scrollHeight: the latter never drops
|
|
809
|
+
// below the frame's current height, so the frame could grow but never shrink.
|
|
810
|
+
let lastSize = ''
|
|
811
|
+
const reportSize = () => {
|
|
812
|
+
const width = root.scrollWidth
|
|
813
|
+
const height = Math.ceil(document.body.getBoundingClientRect().height)
|
|
814
|
+
const size = width + 'x' + height
|
|
815
|
+
if (size === lastSize) return
|
|
816
|
+
lastSize = size
|
|
817
|
+
notify('ui/notifications/size-changed', { width, height })
|
|
818
|
+
}
|
|
407
819
|
if (typeof ResizeObserver === 'function') {
|
|
408
|
-
new ResizeObserver(()
|
|
409
|
-
notify('ui/notifications/size-changed', {
|
|
410
|
-
width: document.documentElement.scrollWidth,
|
|
411
|
-
height: document.documentElement.scrollHeight,
|
|
412
|
-
})
|
|
413
|
-
}).observe(document.body)
|
|
820
|
+
new ResizeObserver(reportSize).observe(document.body)
|
|
414
821
|
}
|
|
415
822
|
}
|
|
416
823
|
})()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assembly-result-widget.js","sourceRoot":"","sources":["../../src/ui/assembly-result-widget.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assembly-result-widget.js","sourceRoot":"","sources":["../../src/ui/assembly-result-widget.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@transloadit/mcp-server",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.4",
|
|
4
4
|
"description": "Transloadit MCP server",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -57,6 +57,7 @@
|
|
|
57
57
|
"build": "yarn lint:ts && chmod +x dist/cli.js",
|
|
58
58
|
"test:unit": "yarn --cwd ../.. tsc:utils && yarn --cwd ../.. tsc:node && ../../node_modules/.bin/vitest run ./test/unit",
|
|
59
59
|
"test:e2e": "yarn --cwd ../.. tsc:utils && yarn --cwd ../.. tsc:node && ../../node_modules/.bin/vitest run ./test/e2e",
|
|
60
|
+
"test:visual": "playwright test",
|
|
60
61
|
"check": "yarn lint:ts && yarn test:unit",
|
|
61
62
|
"prepack": "yarn build"
|
|
62
63
|
},
|
|
@@ -69,6 +70,7 @@
|
|
|
69
70
|
"zod": "^4.4.3"
|
|
70
71
|
},
|
|
71
72
|
"devDependencies": {
|
|
73
|
+
"@playwright/test": "1.64.0",
|
|
72
74
|
"@types/express": "^5.0.6",
|
|
73
75
|
"@types/node": "^25.8.0",
|
|
74
76
|
"happy-dom": "^20.9.0",
|