studiograph 1.3.48-next.275 → 1.3.48-next.277
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/agent/agent-pool.d.ts +0 -10
- package/dist/agent/agent-pool.js +0 -16
- package/dist/agent/agent-pool.js.map +1 -1
- package/dist/cli/commands/deploy.js +3 -3
- package/dist/core/artifact-bundle.d.ts +69 -0
- package/dist/core/artifact-bundle.js +305 -0
- package/dist/core/artifact-bundle.js.map +1 -0
- package/dist/core/artifact-export.d.ts +83 -0
- package/dist/core/artifact-export.js +1567 -0
- package/dist/core/artifact-export.js.map +1 -0
- package/dist/core/artifact-frame-selectors.d.ts +42 -0
- package/dist/core/artifact-frame-selectors.js +65 -0
- package/dist/core/artifact-frame-selectors.js.map +1 -0
- package/dist/core/artifact-paged-css.d.ts +64 -0
- package/dist/core/artifact-paged-css.js +253 -0
- package/dist/core/artifact-paged-css.js.map +1 -0
- package/dist/core/field-library.d.ts +62 -0
- package/dist/core/field-library.js +129 -0
- package/dist/core/field-library.js.map +1 -0
- package/dist/core/validation.d.ts +0 -2
- package/dist/core/validation.js +0 -9
- package/dist/core/validation.js.map +1 -1
- package/dist/mcp/comment-virtual-entity.d.ts +36 -0
- package/dist/mcp/comment-virtual-entity.js +71 -0
- package/dist/mcp/comment-virtual-entity.js.map +1 -0
- package/dist/mcp/oauth-registry.d.ts +62 -0
- package/dist/mcp/oauth-registry.js +85 -0
- package/dist/mcp/oauth-registry.js.map +1 -0
- package/dist/server/index.js +0 -32
- package/dist/server/index.js.map +1 -1
- package/dist/server/routes/field-library-api.d.ts +28 -0
- package/dist/server/routes/field-library-api.js +126 -0
- package/dist/server/routes/field-library-api.js.map +1 -0
- package/dist/server/routes/import-batch.d.ts +24 -0
- package/dist/server/routes/import-batch.js +33 -0
- package/dist/server/routes/import-batch.js.map +1 -0
- package/dist/server/routes/insights-api.js +0 -12
- package/dist/server/routes/insights-api.js.map +1 -1
- package/dist/services/artifact-inspect-metadata.d.ts +21 -0
- package/dist/services/artifact-inspect-metadata.js +66 -0
- package/dist/services/artifact-inspect-metadata.js.map +1 -0
- package/dist/services/asset-upload-service.d.ts +56 -0
- package/dist/services/asset-upload-service.js +200 -0
- package/dist/services/asset-upload-service.js.map +1 -0
- package/dist/services/bookmark-import-service.d.ts +49 -0
- package/dist/services/bookmark-import-service.js +250 -0
- package/dist/services/bookmark-import-service.js.map +1 -0
- package/dist/services/pdf-raster-service.js +15 -3
- package/dist/services/pdf-raster-service.js.map +1 -1
- package/dist/web/_app/immutable/assets/{0.B8rPC4xg.css → 0.EQ13aeT7.css} +1 -1
- package/dist/web/_app/immutable/assets/2.D-t-UF92.css +1 -0
- package/dist/web/_app/immutable/assets/3.NwBs3e5P.css +1 -0
- package/dist/web/_app/immutable/assets/4.BS2tc0bg.css +1 -0
- package/dist/web/_app/immutable/assets/{6.JPVpkzLZ.css → 6.qYwAAyw6.css} +1 -1
- package/dist/web/_app/immutable/assets/{BulkActionsBar.CXSM7tO7.css → BulkActionsBar.C7rAqpQH.css} +1 -1
- package/dist/web/_app/immutable/assets/{GalleryView.Cqu3-wtr.css → GalleryView.Dmr8-vDv.css} +1 -1
- package/dist/web/_app/immutable/assets/Rail.-JBakBWu.css +1 -0
- package/dist/web/_app/immutable/assets/WorkspaceView.CONYOyXk.css +1 -0
- package/dist/web/_app/immutable/chunks/{DLFxzom2.js → -MYqXlc3.js} +1 -1
- package/dist/web/_app/immutable/chunks/{S6tX02Tk2.js → 0ZPKyycn2.js} +1 -1
- package/dist/web/_app/immutable/chunks/1_BWKAKA2.js +23 -0
- package/dist/web/_app/immutable/chunks/{f4je6_HS.js → 3YDp18G-.js} +1 -1
- package/dist/web/_app/immutable/chunks/{D5j65uT2.js → 74rhfDgW.js} +1 -1
- package/dist/web/_app/immutable/chunks/{VE5_RKLz2.js → 7gF1t8ee2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{BUNY8_SF2.js → B00K2agY2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DgvSQnNC.js → B1V-QOfo.js} +3 -3
- package/dist/web/_app/immutable/chunks/{C6ID-UjV2.js → B2UIPIGl.js} +1 -1
- package/dist/web/_app/immutable/chunks/B2cjR0rG.js +83 -0
- package/dist/web/_app/immutable/chunks/{C_swMLB1.js → B4IwwfPk.js} +1 -1
- package/dist/web/_app/immutable/chunks/{9UrMYptO.js → B5TMDcGh.js} +1 -1
- package/dist/web/_app/immutable/chunks/{C2a5_T__2.js → BCZNpq4J2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{Q8guQ9VN2.js → BmDN_z28.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DiRQHWwZ.js → BmYDyPH2.js} +1 -1
- package/dist/web/_app/immutable/chunks/BnYohOts2.js +1 -0
- package/dist/web/_app/immutable/chunks/{CmPtL-Rn.js → BvyVm7-j.js} +1 -1
- package/dist/web/_app/immutable/chunks/BxeOdaUQ.js +1 -0
- package/dist/web/_app/immutable/chunks/{BKSPa6HQ.js → C-riI0_G.js} +1 -1
- package/dist/web/_app/immutable/chunks/{Bt8cy87j2.js → C1cw6R4R2.js} +1 -1
- package/dist/web/_app/immutable/chunks/C45ocJQC2.js +1 -0
- package/dist/web/_app/immutable/chunks/{BkL3LYu82.js → C6NiRa4y2.js} +1 -1
- package/dist/web/_app/immutable/chunks/C6d9nn3k.js +1 -0
- package/dist/web/_app/immutable/chunks/CB-t1Bv-.js +1 -0
- package/dist/web/_app/immutable/chunks/CBKoTv65.js +1 -0
- package/dist/web/_app/immutable/chunks/CKGHeJzq.js +1 -0
- package/dist/web/_app/immutable/chunks/{C9ryRkVa2.js → CKrBRmTC2.js} +1 -1
- package/dist/web/_app/immutable/chunks/CL_APTyv.js +1 -0
- package/dist/web/_app/immutable/chunks/{B5qWlMWh2.js → CLaT9yq1.js} +2 -2
- package/dist/web/_app/immutable/chunks/{BSR-fOIH.js → CMX-4JAz.js} +1 -1
- package/dist/web/_app/immutable/chunks/{C1mesUxk.js → CPMqv8PJ.js} +1 -1
- package/dist/web/_app/immutable/chunks/{CtJHIejx.js → CX-b8SHv.js} +1 -1
- package/dist/web/_app/immutable/chunks/CXPMb3zd.js +1 -0
- package/dist/web/_app/immutable/chunks/CX_WuP2f.js +1 -0
- package/dist/web/_app/immutable/chunks/{MaKEM0Kn.js → CY_FaG_t.js} +1 -1
- package/dist/web/_app/immutable/chunks/CgCz4Fj6.js +1 -0
- package/dist/web/_app/immutable/chunks/{DMf4tAIm.js → CkOdE5Bd.js} +1 -1
- package/dist/web/_app/immutable/chunks/{CF2gzSXD2.js → CmkjMSvD.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DYY0PGvS.js → Crt0quBQ.js} +2 -2
- package/dist/web/_app/immutable/chunks/{BiPxBmY4.js → CzeNI3Zb.js} +1 -1
- package/dist/web/_app/immutable/chunks/{CcWpAm8L2.js → D5PnviYi2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{edl5DARf2.js → D6TJ2R3g2.js} +2 -2
- package/dist/web/_app/immutable/chunks/DBGaXAP8.js +1 -0
- package/dist/web/_app/immutable/chunks/{BGsDxw5f.js → DEVYWkOJ.js} +1 -1
- package/dist/web/_app/immutable/chunks/DO_V9Cgc.js +1 -0
- package/dist/web/_app/immutable/chunks/{Mozc9LAu.js → DPI7dnke.js} +3 -3
- package/dist/web/_app/immutable/chunks/DZ2Zr5zb.js +1 -0
- package/dist/web/_app/immutable/chunks/{BxS1Rd6P.js → DfYMgOVM.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DJ61sY6B.js → DgP0Pxes.js} +1 -1
- package/dist/web/_app/immutable/chunks/DiiXREv7.js +1 -0
- package/dist/web/_app/immutable/chunks/{-GbK1dNr.js → DlfKshOf.js} +1 -1
- package/dist/web/_app/immutable/chunks/Dr_twYUI.js +2 -0
- package/dist/web/_app/immutable/chunks/{jTFWGcLj.js → DsxcA0N4.js} +1 -1
- package/dist/web/_app/immutable/chunks/Dvj33Rn2.js +1 -0
- package/dist/web/_app/immutable/chunks/{_4i2u5Wd2.js → DwszDHPe2.js} +2 -2
- package/dist/web/_app/immutable/chunks/{Cf3QI6dI2.js → DzUDGwwI.js} +1 -1
- package/dist/web/_app/immutable/chunks/{B8qQqCBx.js → G4EqbBPG.js} +1 -1
- package/dist/web/_app/immutable/chunks/MLKgHDnw.js +2 -0
- package/dist/web/_app/immutable/chunks/{B5-PDGTP.js → MhB3zB5P.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DbTLf0R2.js → NJd5Icoh.js} +1 -1
- package/dist/web/_app/immutable/chunks/OI1d8FXq2.js +2 -0
- package/dist/web/_app/immutable/chunks/{BNq2--8a.js → Oglnp7sm2.js} +1 -1
- package/dist/web/_app/immutable/chunks/{zzOOYYJS.js → lQzoCkhJ.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DIoIqCLR2.js → s_zoX4Qt2.js} +2 -2
- package/dist/web/_app/immutable/chunks/{CExa8hQs.js → wJmm88HB.js} +1 -1
- package/dist/web/_app/immutable/chunks/{DUEo40pB2.js → wM0nJ6Ky2.js} +1 -1
- package/dist/web/_app/immutable/entry/app.o4VcUjTF.js +2 -0
- package/dist/web/_app/immutable/entry/start.D7P9cxBk.js +1 -0
- package/dist/web/_app/immutable/nodes/{0.CyY9x1XV.js → 0.DBUXmaRT.js} +2 -2
- package/dist/web/_app/immutable/nodes/{1.Du-a9xBx.js → 1.BRJZkeEI.js} +1 -1
- package/dist/web/_app/immutable/nodes/{10.CrEeEOkO.js → 10.CpsRP0KH.js} +1 -1
- package/dist/web/_app/immutable/nodes/{11.VOPtqNQG.js → 11.CBjGIy87.js} +1 -1
- package/dist/web/_app/immutable/nodes/{12.cjhDT3bV.js → 12.C4lUyQel.js} +1 -1
- package/dist/web/_app/immutable/nodes/{13.CxNDddcu.js → 13.DL6S5sUM.js} +1 -1
- package/dist/web/_app/immutable/nodes/{15.BRkSAZ6Y.js → 15.DMZgT7og.js} +1 -1
- package/dist/web/_app/immutable/nodes/{16.DQk9WOSG.js → 16.CY0Tj_zD.js} +1 -1
- package/dist/web/_app/immutable/nodes/{18.sCdANB0L.js → 18.CTPruwZH.js} +1 -1
- package/dist/web/_app/immutable/nodes/{19.DaeEOcod.js → 19.AkYtItm0.js} +1 -1
- package/dist/web/_app/immutable/nodes/2.DChPiuXI.js +124 -0
- package/dist/web/_app/immutable/nodes/3.Cg_liNVb.js +6 -0
- package/dist/web/_app/immutable/nodes/4.5b8G86Jw.js +16 -0
- package/dist/web/_app/immutable/nodes/{5.Dr-NbOFL.js → 5.B-w-VDXU.js} +1 -1
- package/dist/web/_app/immutable/nodes/{6.CmXwJAqA.js → 6.cskJ2TNk.js} +1 -1
- package/dist/web/_app/immutable/nodes/{7.hp0xS5ax.js → 7.CcpBlipl.js} +1 -1
- package/dist/web/_app/immutable/nodes/{8.D60SL9o_.js → 8.Ch0vf4K-.js} +1 -1
- package/dist/web/_app/immutable/nodes/{9.BikYccd7.js → 9.BcN6PW_S.js} +1 -1
- package/dist/web/_app/version.json +1 -1
- package/dist/web/index.html +18 -18
- package/package.json +1 -1
- package/dist/web/_app/immutable/assets/2.bJqlVFXX.css +0 -1
- package/dist/web/_app/immutable/assets/3.j4ElaCLD.css +0 -1
- package/dist/web/_app/immutable/assets/4.BLOz0wHY.css +0 -1
- package/dist/web/_app/immutable/assets/AgentRunSparkle.CKB3dqsz.css +0 -1
- package/dist/web/_app/immutable/assets/Rail.BurgcCXf.css +0 -1
- package/dist/web/_app/immutable/assets/WorkspaceView.BjvD3OTy.css +0 -1
- package/dist/web/_app/immutable/chunks/2jM_FrdF.js +0 -1
- package/dist/web/_app/immutable/chunks/3e54b3S0.js +0 -1
- package/dist/web/_app/immutable/chunks/7pkBLE0o.js +0 -23
- package/dist/web/_app/immutable/chunks/B7P31uII.js +0 -1
- package/dist/web/_app/immutable/chunks/BH8Lm2ff.js +0 -1
- package/dist/web/_app/immutable/chunks/BLw5bIbe.js +0 -1
- package/dist/web/_app/immutable/chunks/BaEbafZv.js +0 -1
- package/dist/web/_app/immutable/chunks/Bo6vsMxZ.js +0 -1
- package/dist/web/_app/immutable/chunks/CAM6VKUN2.js +0 -2
- package/dist/web/_app/immutable/chunks/CGG26Xmx.js +0 -1
- package/dist/web/_app/immutable/chunks/C_vyTCDY.js +0 -1
- package/dist/web/_app/immutable/chunks/Ch20ENkw.js +0 -2
- package/dist/web/_app/immutable/chunks/CluyiOGC2.js +0 -1
- package/dist/web/_app/immutable/chunks/DGayKSDC.js +0 -1
- package/dist/web/_app/immutable/chunks/DIro3eQz.js +0 -1
- package/dist/web/_app/immutable/chunks/DKtkLJsv2.js +0 -2
- package/dist/web/_app/immutable/chunks/DWbRq2tL.js +0 -1
- package/dist/web/_app/immutable/chunks/Dm-W1U3E.js +0 -1
- package/dist/web/_app/immutable/chunks/DraPqSB5.js +0 -1
- package/dist/web/_app/immutable/chunks/DxQ5eC8d.js +0 -1
- package/dist/web/_app/immutable/chunks/TVzjLHDP2.js +0 -1
- package/dist/web/_app/immutable/chunks/nacCpTNj.js +0 -83
- package/dist/web/_app/immutable/entry/app.DD3XVAKo.js +0 -2
- package/dist/web/_app/immutable/entry/start.DKq2Li7W.js +0 -1
- package/dist/web/_app/immutable/nodes/2.CsnYWs7a.js +0 -124
- package/dist/web/_app/immutable/nodes/3.CAPxZgZu.js +0 -6
- package/dist/web/_app/immutable/nodes/4.C5P-wyzP.js +0 -16
- /package/dist/web/_app/immutable/chunks/{B9KfEsQw.js → B9KfEsQw2.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{BO6-nRV92.js → BO6-nRV9.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{BEGTD2EL2.js → BuHbdNQt2.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{CcWaWbrI.js → CcWaWbrI2.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{CsIWxmio.js → CsIWxmio2.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{MAYbL-xn.js → MAYbL-xn2.js} +0 -0
- /package/dist/web/_app/immutable/chunks/{MtN4vJa0.js → MtN4vJa02.js} +0 -0
|
@@ -81,17 +81,7 @@ export declare class AgentPool {
|
|
|
81
81
|
* no-op). This map is the durable fallback findSessionForAgent checks first.
|
|
82
82
|
*/
|
|
83
83
|
private activeTurns;
|
|
84
|
-
/**
|
|
85
|
-
* Optional predicate: returns true for a resolved sessionId that must NOT be
|
|
86
|
-
* pruned even when it's beyond the per-user keep budget. Wired by the server
|
|
87
|
-
* to the AgentTaskJobStore so a delegated task's session (which a background
|
|
88
|
-
* run + crash recovery depend on) is never evicted out from under a live job.
|
|
89
|
-
* Unset for CLI/tests → prune behaves exactly as before.
|
|
90
|
-
*/
|
|
91
|
-
private isSessionProtected?;
|
|
92
84
|
constructor(config: SharedAgentConfig);
|
|
93
|
-
/** Install the prune-protection predicate (see {@link isSessionProtected}). */
|
|
94
|
-
setSessionProtectedPredicate(fn: (sessionId: string) => boolean): void;
|
|
95
85
|
/**
|
|
96
86
|
* Get the current context for a session (used by tool closures).
|
|
97
87
|
* Returns null user if no context is set.
|
package/dist/agent/agent-pool.js
CHANGED
|
@@ -34,22 +34,10 @@ export class AgentPool {
|
|
|
34
34
|
* no-op). This map is the durable fallback findSessionForAgent checks first.
|
|
35
35
|
*/
|
|
36
36
|
activeTurns = new Map();
|
|
37
|
-
/**
|
|
38
|
-
* Optional predicate: returns true for a resolved sessionId that must NOT be
|
|
39
|
-
* pruned even when it's beyond the per-user keep budget. Wired by the server
|
|
40
|
-
* to the AgentTaskJobStore so a delegated task's session (which a background
|
|
41
|
-
* run + crash recovery depend on) is never evicted out from under a live job.
|
|
42
|
-
* Unset for CLI/tests → prune behaves exactly as before.
|
|
43
|
-
*/
|
|
44
|
-
isSessionProtected;
|
|
45
37
|
constructor(config) {
|
|
46
38
|
this.config = config;
|
|
47
39
|
this.reapTimer = setInterval(() => this.reap(), REAP_INTERVAL_MS);
|
|
48
40
|
}
|
|
49
|
-
/** Install the prune-protection predicate (see {@link isSessionProtected}). */
|
|
50
|
-
setSessionProtectedPredicate(fn) {
|
|
51
|
-
this.isSessionProtected = fn;
|
|
52
|
-
}
|
|
53
41
|
/**
|
|
54
42
|
* Get the current context for a session (used by tool closures).
|
|
55
43
|
* Returns null user if no context is set.
|
|
@@ -532,10 +520,6 @@ export class AgentPool {
|
|
|
532
520
|
return;
|
|
533
521
|
files.sort((a, b) => b.mtime - a.mtime);
|
|
534
522
|
for (const f of files.slice(keep)) {
|
|
535
|
-
// Never prune a session a live job depends on (a delegated task's run +
|
|
536
|
-
// its crash recovery). The file name is `<resolvedSessionId>.json`.
|
|
537
|
-
if (this.isSessionProtected?.(f.name.replace(/\.json$/, '')))
|
|
538
|
-
continue;
|
|
539
523
|
try {
|
|
540
524
|
unlinkSync(join(dir, f.name));
|
|
541
525
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-pool.js","sourceRoot":"","sources":["../../src/agent/agent-pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC3G,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAMrC,MAAM,eAAe,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,aAAa;AAClD,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAK,kBAAkB;AACvD,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAK,2CAA2C;AAChF,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAkGjC,MAAM,OAAO,SAAS;IACZ,IAAI,GAAG,IAAI,GAAG,EAAqB,CAAC;IACpC,SAAS,GAA0C,IAAI,CAAC;IACxD,MAAM,CAAoB;IAElC,yEAAyE;IACjE,UAAU,GAAG,IAAI,GAAG,EAAwB,CAAC;IAErD;;;;;;;;;;;;OAYG;IACK,WAAW,GAAG,IAAI,GAAG,EAAiB,CAAC;IAE/C;;;;;;OAMG;IACK,kBAAkB,CAAkC;IAE5D,YAAY,MAAyB;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,gBAAgB,CAAC,CAAC;IACpE,CAAC;IAED,+EAA+E;IAC/E,4BAA4B,CAAC,EAAkC;QAC7D,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CACb,SAAiB,EACjB,GAAiB,EACjB,EAAgC,EAChC,IAAsF;QAEtF,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;QAC/E,sEAAsE;QACtE,wEAAwE;QACxE,oEAAoE;QACpE,yEAAyE;QACzE,+DAA+D;QAC/D,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEjB,6DAA6D;QAC7D,+DAA+D;QAC/D,6DAA6D;QAC7D,+DAA+D;QAC/D,+DAA+D;QAC/D,8BAA8B;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YACxC,MAAM,KAAK,CAAC,WAAW,CAAC;YACxB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACpC,wEAAwE;YACxE,wEAAwE;YACxE,uEAAuE;YACvE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAC7C,IAAI,CAAC;gBACH,OAAO,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAClC,sEAAsE;gBACtE,wEAAwE;gBACxE,oEAAoE;gBACpE,8DAA8D;gBAC9D,IAAI,CAAC;oBACH,wEAAwE;oBACxE,yEAAyE;oBACzE,8DAA8D;oBAC9D,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACzC,uEAAuE;oBACvE,4DAA4D;oBAC5D,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBAC1B,CAAC;wBAAS,CAAC;oBACT,sEAAsE;oBACtE,uEAAuE;oBACvE,kEAAkE;oBAClE,oEAAoE;oBACpE,mEAAmE;oBACnE,kEAAkE;oBAClE,qEAAqE;oBACrE,mCAAmC;oBACnC,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACjB,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE,CAAC;wBAC/D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;4BAClB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BAC5B,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;wBAClD,CAAC;6BAAM,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;4BACvB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;wBAC9B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,oEAAoE;QACpE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAE7C,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8FAA8F;IAC9F,QAAQ,CAAC,SAAiB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC;IACjD,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,SAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,aAAa;QACX,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACrD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YACxB,wEAAwE;YACxE,qEAAqE;YACrE,wDAAwD;YACxD,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;gBACvB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,cAAc,CAAC,MAAc;QAC3B,KAAK,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACrD,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAC5B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxB,mEAAmE;gBACnE,mEAAmE;gBACnE,uEAAuE;gBACvE,iEAAiE;gBACjE,oEAAoE;gBACpE,sEAAsE;gBACtE,sEAAsE;gBACtE,mEAAmE;gBACnE,kEAAkE;gBAClE,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,KAAK,CAAC,QAAQ;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,2EAA2E;QAC3E,2EAA2E;QAC3E,6EAA6E;QAC7E,uEAAuE;QACvE,6EAA6E;QAC7E,4EAA4E;QAC5E,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,IAAI,UAAqD,CAAC;QAC1D,MAAM,OAAO,CAAC,IAAI,CAAC;YACjB,OAAO;YACP,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,GAAG,UAAU,GAAG,UAAU,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;SACzF,CAAC,CAAC;QACH,IAAI,UAAU;YAAE,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,sDAAsD;QAChG,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,8BAA8B;QACzD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED,gDAAgD;IAChD,aAAa,CAAC,MAAe;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QAChE,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC;gBAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,sDAAsD;IACtD,mBAAmB,CAAC,KAAY;QAC9B,uEAAuE;QACvE,iEAAiE;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK;gBAAE,OAAO,GAAG,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB;IAER,WAAW,CACjB,SAAiB,EACjB,MAAe,EACf,eAA0D;QAE1D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,mEAAmE;QACnE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC9C,oEAAoE;QACpE,mEAAmE;QACnE,iEAAiE;QACjE,8DAA8D;QAC9D,iEAAiE;QACjE,qDAAqD;QACrD,MAAM,WAAW,GAAG,CAClB,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAClE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,6DAA6D;YAC7D,0DAA0D;YAC1D,oDAAoD;YACpD,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,sEAAsE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACjI,CAAC,CAAC,CAAC;QAEH,gCAAgC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAE1D,uEAAuE;QACvE,uEAAuE;QACvE,mEAAmE;QACnE,wEAAwE;QACxE,wEAAwE;QACxE,oEAAoE;QACpE,iEAAiE;QACjE,kEAAkE;QAClE,qEAAqE;QACrE,wDAAwD;QACxD,IAAI,CAAC,MAAM,IAAI,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC;YAC5D,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAgB,EAAE;gBAChE,MAAM,SAAS,GAAG,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC;gBACtC,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC3B,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;wBAC5C,GAAG,EAAE,KAAK,CAAC,GAAG;wBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;wBACxB,KAAK,EAAE,KAAK,CAAC,EAAE;wBACf,KAAK,EAAE;4BACL,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC;4BAChE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;yBACrE;wBACD,UAAU,EAAE,MAAM;wBAClB,SAAS;qBACV,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC5C,SAAS;iBACV,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAc;YACvB,KAAK;YACL,SAAS;YACT,MAAM;YACN,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;YACtB,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE;YACvB,WAAW;YACX,QAAQ,EAAE,CAAC;SACZ,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,WAAW,CAAC,KAAY,EAAE,SAAiB,EAAE,MAAe;QAClE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;QAEvD,uBAAuB;QACvB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAErE,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC5D,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7D,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;oBACrC,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,8BAA8B,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACK,sBAAsB,CAAC,KAAY;QACzC,MAAM,eAAe,GAAG,IAAI,CAAC;QAC7B,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,EAAE,kBAAkB,EAAE,uBAAuB,CAAC,CAAC,CAAC;QAC7F,MAAM,IAAI,GAAG,wHAAwH,CAAC;QACtI,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,CAAU,CAAC;YACxD,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;oBAAE,SAAS;gBAC9C,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,IAAI,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;wBAAE,SAAS;oBAC1C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;oBAC1E,IAAI,OAAO;wBAAE,SAAS;oBACtB,wEAAwE;oBACxE,wEAAwE;oBACxE,wEAAwE;oBACxE,6CAA6C;oBAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC;oBACnE,IAAI,IAAI,GAAG,CAAC,CAAC;oBACb,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO;wBAAE,IAAI,IAAI,OAAO,CAAC,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC;oBAC1G,IAAI,CAAC,QAAQ,IAAI,IAAI,GAAG,eAAe;wBAAE,SAAS;oBAClD,GAAG,CAAC,OAAO,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC7C,IAAI,SAAS,IAAI,GAAG;wBAAE,OAAO,GAAG,CAAC,OAAO,CAAC;gBAC3C,CAAC;qBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;oBACxH,sEAAsE;oBACtE,sEAAsE;oBACtE,wEAAwE;oBACxE,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC;oBACjE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC,CAAC;gBACrG,CAAC;qBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;oBAClE,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;wBAChC,IAAI,KAAK,EAAE,IAAI,KAAK,UAAU;4BAAE,SAAS;wBACzC,qEAAqE;wBACrE,qEAAqE;wBACrE,iEAAiE;wBACjE,4DAA4D;wBAC5D,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;4BAChE,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI;gCAAE,SAAS;4BACtD,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,eAAe;gCAAE,SAAS;4BAC9E,KAAK,CAAC,SAAS,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;wBACtE,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,IAAI,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC;4BACnE,IAAK,KAAK,CAAC,SAAS,CAAC,GAAW,CAAC,OAAO,KAAK,IAAI;gCAAE,SAAS;4BAC5D,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,eAAe;gCAAE,SAAS;4BAC3E,KAAK,CAAC,SAAS,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;wBACnE,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,oDAAoD,CAAC,CAAC;IAClE,CAAC;IAEO,WAAW,CAAC,KAAgB;QAClC,6EAA6E;QAC7E,0EAA0E;QAC1E,2EAA2E;QAC3E,qDAAqD;QACrD,IAAI,KAAK,CAAC,OAAO;YAAE,OAAO;QAC1B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC5C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAElC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,SAAS,OAAO,CAAC,CAAC;QAC7D,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC;YACxC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,QAAQ;SACT,CAAC,EAAE,OAAO,CAAC,CAAC;QAEb,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;IACrD,CAAC;IAEO,UAAU,CAAC,MAAe;QAChC,IAAI,MAAM;YAAE,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IACjC,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,MAA0B,EAAE,SAAiB;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YAChC,sEAAsE;YACtE,uEAAuE;YACvE,0EAA0E;YAC1E,yEAAyE;YACzE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC5C,CAAC;IAED,+EAA+E;IAC/E,iBAAiB,CAAC,MAA0B;QAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS;YACtC,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC;gBAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,qCAAqC;;gBAC9E,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO;QAC7B,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC;oBAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,6EAA6E;IACrE,iBAAiB,CAAC,MAA0B,EAAE,SAAiB;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;QAChD,2EAA2E;QAC3E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAAE,OAAO;QACxD,IAAI,CAAC;YAAC,IAAI,UAAU,CAAC,IAAI,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC7E,CAAC;IAEO,aAAa,CAAC,GAAW,EAAE,IAAY;QAC7C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO;QAC7B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC;aAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;aAChC,GAAG,CAAC,CAAC,CAAC,EAAE;YACP,IAAI,CAAC;gBAAC,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAAC,CAAC;YAClE,MAAM,CAAC;gBAAC,OAAO,IAAI,CAAC;YAAC,CAAC;QACxB,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAA2C,CAAC;QAE7D,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI;YAAE,OAAO;QACjC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QACxC,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,wEAAwE;YACxE,oEAAoE;YACpE,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBAAE,SAAS;YACvE,IAAI,CAAC;gBAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAEO,IAAI;QACV,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACrC,yEAAyE;YACzE,wEAAwE;YACxE,8DAA8D;YAC9D,sEAAsE;YACtE,yCAAyC;YACzC,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC;gBAAE,SAAS;YACjC,IAAI,GAAG,GAAG,KAAK,CAAC,UAAU,GAAG,eAAe,EAAE,CAAC;gBAC7C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"agent-pool.js","sourceRoot":"","sources":["../../src/agent/agent-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -361,13 +361,13 @@ deployCommand
|
|
|
361
361
|
s.stop('Domain: generate one in Railway dashboard (Settings > Networking > Generate Domain)');
|
|
362
362
|
}
|
|
363
363
|
// Connect the Docker image — triggers the first deploy
|
|
364
|
-
s.start('Connecting node:
|
|
364
|
+
s.start('Connecting node:24 image and deploying...');
|
|
365
365
|
await railwayQuery(railwayToken.trim(), `
|
|
366
366
|
mutation($id: String!, $input: ServiceConnectInput!) {
|
|
367
367
|
serviceConnect(id: $id, input: $input) { id }
|
|
368
368
|
}
|
|
369
|
-
`, { id: serviceId, input: { image: 'node:
|
|
370
|
-
s.stop('Deploy triggered (node:
|
|
369
|
+
`, { id: serviceId, input: { image: 'node:24' } });
|
|
370
|
+
s.stop('Deploy triggered (node:24)');
|
|
371
371
|
// Save Railway IDs to workspace config (per-workspace, not global)
|
|
372
372
|
config.railway = { project_id: projectId, service_id: serviceId, environment_id: envId };
|
|
373
373
|
const wsConfigPath = join(process.cwd(), '.studiograph', 'workspace.json');
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared contract for agent-produced canvas artifacts.
|
|
3
|
+
*
|
|
4
|
+
* V1 is deliberately text-only: HTML, CSS, JS, SVG, JSON, and plain text files.
|
|
5
|
+
* Binary assets and network-dependent files are follow-up work, because this
|
|
6
|
+
* bundle is persisted in chat message metadata and rendered in a sandboxed
|
|
7
|
+
* iframe.
|
|
8
|
+
*/
|
|
9
|
+
export declare const ARTIFACT_BUNDLE_SCHEMA_VERSION = 1;
|
|
10
|
+
export declare const ARTIFACT_BUNDLE_MAX_BYTES: number;
|
|
11
|
+
export declare const ARTIFACT_KINDS: readonly ["html", "document", "slides", "social", "app", "custom"];
|
|
12
|
+
export type ArtifactKind = typeof ARTIFACT_KINDS[number];
|
|
13
|
+
export declare const ARTIFACT_VIEWPORT_MODES: readonly ["fixed", "responsive", "paged"];
|
|
14
|
+
export type ArtifactViewportMode = typeof ARTIFACT_VIEWPORT_MODES[number];
|
|
15
|
+
export declare const ARTIFACT_FULLSCREEN_FITS: readonly ["contain", "width", "none"];
|
|
16
|
+
export type ArtifactFullscreenFit = typeof ARTIFACT_FULLSCREEN_FITS[number];
|
|
17
|
+
export declare const ARTIFACT_DISPLAY_BACKGROUNDS: readonly ["neutral", "transparent"];
|
|
18
|
+
export type ArtifactDisplayBackground = typeof ARTIFACT_DISPLAY_BACKGROUNDS[number];
|
|
19
|
+
export declare const ARTIFACT_LIBRARY_KEYS: readonly ["three", "d3", "motion"];
|
|
20
|
+
export type ArtifactLibraryKey = typeof ARTIFACT_LIBRARY_KEYS[number];
|
|
21
|
+
export interface ArtifactDisplayViewport {
|
|
22
|
+
width: number;
|
|
23
|
+
height: number;
|
|
24
|
+
}
|
|
25
|
+
export interface ArtifactDisplayStepperControl {
|
|
26
|
+
selector?: string;
|
|
27
|
+
label?: string;
|
|
28
|
+
}
|
|
29
|
+
export interface ArtifactDisplayControls {
|
|
30
|
+
stepper?: ArtifactDisplayStepperControl;
|
|
31
|
+
reset?: boolean;
|
|
32
|
+
}
|
|
33
|
+
export interface ArtifactViewport {
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
mode: ArtifactViewportMode;
|
|
37
|
+
}
|
|
38
|
+
export interface ArtifactDisplay {
|
|
39
|
+
fullscreenFit?: ArtifactFullscreenFit;
|
|
40
|
+
background?: ArtifactDisplayBackground;
|
|
41
|
+
fullscreenViewport?: ArtifactDisplayViewport;
|
|
42
|
+
controls?: ArtifactDisplayControls;
|
|
43
|
+
}
|
|
44
|
+
export interface ArtifactSource {
|
|
45
|
+
repo?: string;
|
|
46
|
+
entityType?: string;
|
|
47
|
+
entityId?: string;
|
|
48
|
+
skillId?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface ArtifactBundle {
|
|
51
|
+
schemaVersion: typeof ARTIFACT_BUNDLE_SCHEMA_VERSION;
|
|
52
|
+
artifactId: string;
|
|
53
|
+
title: string;
|
|
54
|
+
kind: ArtifactKind;
|
|
55
|
+
viewport: ArtifactViewport;
|
|
56
|
+
display?: ArtifactDisplay;
|
|
57
|
+
libraries?: ArtifactLibraryKey[];
|
|
58
|
+
files: Record<string, string>;
|
|
59
|
+
entrypoint: string;
|
|
60
|
+
source?: ArtifactSource;
|
|
61
|
+
}
|
|
62
|
+
export interface ArtifactValidationResult {
|
|
63
|
+
ok: boolean;
|
|
64
|
+
bundle?: ArtifactBundle;
|
|
65
|
+
errors: string[];
|
|
66
|
+
byteSize: number;
|
|
67
|
+
}
|
|
68
|
+
export declare function validateArtifactBundle(input: unknown): ArtifactValidationResult;
|
|
69
|
+
export declare function assertArtifactBundle(input: unknown): ArtifactBundle;
|
|
@@ -0,0 +1,305 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared contract for agent-produced canvas artifacts.
|
|
3
|
+
*
|
|
4
|
+
* V1 is deliberately text-only: HTML, CSS, JS, SVG, JSON, and plain text files.
|
|
5
|
+
* Binary assets and network-dependent files are follow-up work, because this
|
|
6
|
+
* bundle is persisted in chat message metadata and rendered in a sandboxed
|
|
7
|
+
* iframe.
|
|
8
|
+
*/
|
|
9
|
+
export const ARTIFACT_BUNDLE_SCHEMA_VERSION = 1;
|
|
10
|
+
export const ARTIFACT_BUNDLE_MAX_BYTES = 512 * 1024;
|
|
11
|
+
export const ARTIFACT_KINDS = ['html', 'document', 'slides', 'social', 'app', 'custom'];
|
|
12
|
+
export const ARTIFACT_VIEWPORT_MODES = ['fixed', 'responsive', 'paged'];
|
|
13
|
+
export const ARTIFACT_FULLSCREEN_FITS = ['contain', 'width', 'none'];
|
|
14
|
+
export const ARTIFACT_DISPLAY_BACKGROUNDS = ['neutral', 'transparent'];
|
|
15
|
+
export const ARTIFACT_LIBRARY_KEYS = ['three', 'd3', 'motion'];
|
|
16
|
+
const TEXT_EXTENSIONS = new Set([
|
|
17
|
+
'.html', '.htm', '.css', '.js', '.mjs', '.svg', '.json', '.txt', '.md',
|
|
18
|
+
]);
|
|
19
|
+
const ID_RE = /^[a-zA-Z0-9][a-zA-Z0-9._:-]{0,127}$/;
|
|
20
|
+
const PATH_RE = /^[a-zA-Z0-9][a-zA-Z0-9._/-]{0,255}$/;
|
|
21
|
+
function isRecord(value) {
|
|
22
|
+
return !!value && typeof value === 'object' && !Array.isArray(value);
|
|
23
|
+
}
|
|
24
|
+
function byteLength(value) {
|
|
25
|
+
return new TextEncoder().encode(JSON.stringify(value)).length;
|
|
26
|
+
}
|
|
27
|
+
function extensionOf(path) {
|
|
28
|
+
const dot = path.lastIndexOf('.');
|
|
29
|
+
return dot === -1 ? '' : path.slice(dot).toLowerCase();
|
|
30
|
+
}
|
|
31
|
+
function isSafePath(path) {
|
|
32
|
+
if (!PATH_RE.test(path))
|
|
33
|
+
return false;
|
|
34
|
+
if (path.includes('..'))
|
|
35
|
+
return false;
|
|
36
|
+
if (path.includes('//'))
|
|
37
|
+
return false;
|
|
38
|
+
if (/^[a-z][a-z0-9+.-]*:/i.test(path))
|
|
39
|
+
return false;
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
function normalizeString(value) {
|
|
43
|
+
return typeof value === 'string' && value.trim() ? value.trim() : null;
|
|
44
|
+
}
|
|
45
|
+
function inferArtifactLibraries(files) {
|
|
46
|
+
const text = Object.entries(files)
|
|
47
|
+
.filter(([path]) => /\.(html?|m?js|css|svg)$/i.test(path))
|
|
48
|
+
.map(([, content]) => content)
|
|
49
|
+
.join('\n');
|
|
50
|
+
const inferred = [];
|
|
51
|
+
if (/\b(?:window\.)?THREE\b/.test(text) || /\bfrom\s+['"]three(?:\/[^'"]*)?['"]/.test(text)) {
|
|
52
|
+
inferred.push('three');
|
|
53
|
+
}
|
|
54
|
+
if (/\b(?:window\.)?d3\b/.test(text) || /\bfrom\s+['"]d3(?:\/[^'"]*)?['"]/.test(text)) {
|
|
55
|
+
inferred.push('d3');
|
|
56
|
+
}
|
|
57
|
+
if (/\b(?:window\.)?Motion\b/.test(text)
|
|
58
|
+
|| /\bmotion\.(?:animate|spring|inView|scroll)\b/.test(text)
|
|
59
|
+
|| /\bfrom\s+['"]motion(?:\/[^'"]*)?['"]/.test(text)) {
|
|
60
|
+
inferred.push('motion');
|
|
61
|
+
}
|
|
62
|
+
return inferred;
|
|
63
|
+
}
|
|
64
|
+
export function validateArtifactBundle(input) {
|
|
65
|
+
const errors = [];
|
|
66
|
+
const byteSize = byteLength(input);
|
|
67
|
+
if (byteSize > ARTIFACT_BUNDLE_MAX_BYTES) {
|
|
68
|
+
errors.push(`Artifact bundle exceeds ${ARTIFACT_BUNDLE_MAX_BYTES} bytes`);
|
|
69
|
+
}
|
|
70
|
+
if (!isRecord(input)) {
|
|
71
|
+
return { ok: false, errors: ['Artifact bundle must be an object', ...errors], byteSize };
|
|
72
|
+
}
|
|
73
|
+
if (input.schemaVersion !== ARTIFACT_BUNDLE_SCHEMA_VERSION) {
|
|
74
|
+
errors.push(`schemaVersion must be ${ARTIFACT_BUNDLE_SCHEMA_VERSION}`);
|
|
75
|
+
}
|
|
76
|
+
const artifactId = normalizeString(input.artifactId);
|
|
77
|
+
if (!artifactId || !ID_RE.test(artifactId)) {
|
|
78
|
+
errors.push('artifactId must be a stable alphanumeric id');
|
|
79
|
+
}
|
|
80
|
+
const title = normalizeString(input.title);
|
|
81
|
+
if (!title)
|
|
82
|
+
errors.push('title is required');
|
|
83
|
+
const kind = normalizeString(input.kind);
|
|
84
|
+
if (!kind || !ARTIFACT_KINDS.includes(kind)) {
|
|
85
|
+
errors.push(`kind must be one of: ${ARTIFACT_KINDS.join(', ')}`);
|
|
86
|
+
}
|
|
87
|
+
const viewport = input.viewport;
|
|
88
|
+
let normalizedViewport = null;
|
|
89
|
+
if (!isRecord(viewport)) {
|
|
90
|
+
errors.push('viewport is required');
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
const width = viewport.width;
|
|
94
|
+
const height = viewport.height;
|
|
95
|
+
const mode = viewport.mode;
|
|
96
|
+
if (typeof width !== 'number' || !Number.isFinite(width) || width < 120 || width > 10000) {
|
|
97
|
+
errors.push('viewport.width must be between 120 and 10000');
|
|
98
|
+
}
|
|
99
|
+
if (typeof height !== 'number' || !Number.isFinite(height) || height < 120 || height > 10000) {
|
|
100
|
+
errors.push('viewport.height must be between 120 and 10000');
|
|
101
|
+
}
|
|
102
|
+
if (typeof mode !== 'string' || !ARTIFACT_VIEWPORT_MODES.includes(mode)) {
|
|
103
|
+
errors.push(`viewport.mode must be one of: ${ARTIFACT_VIEWPORT_MODES.join(', ')}`);
|
|
104
|
+
}
|
|
105
|
+
if (typeof width === 'number' && typeof height === 'number' && typeof mode === 'string') {
|
|
106
|
+
normalizedViewport = {
|
|
107
|
+
width: Math.round(width),
|
|
108
|
+
height: Math.round(height),
|
|
109
|
+
mode: mode,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
const entrypoint = normalizeString(input.entrypoint);
|
|
114
|
+
if (!entrypoint || !isSafePath(entrypoint)) {
|
|
115
|
+
errors.push('entrypoint must be a safe relative file path');
|
|
116
|
+
}
|
|
117
|
+
const files = input.files;
|
|
118
|
+
const normalizedFiles = {};
|
|
119
|
+
if (!isRecord(files)) {
|
|
120
|
+
errors.push('files must be an object of text file paths to string contents');
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
const entries = Object.entries(files);
|
|
124
|
+
if (entries.length === 0)
|
|
125
|
+
errors.push('files must contain at least one file');
|
|
126
|
+
for (const [path, content] of entries) {
|
|
127
|
+
if (!isSafePath(path)) {
|
|
128
|
+
errors.push(`file path "${path}" must be a safe relative path`);
|
|
129
|
+
continue;
|
|
130
|
+
}
|
|
131
|
+
const ext = extensionOf(path);
|
|
132
|
+
if (!TEXT_EXTENSIONS.has(ext)) {
|
|
133
|
+
errors.push(`file "${path}" must be a supported text file`);
|
|
134
|
+
}
|
|
135
|
+
if (typeof content !== 'string') {
|
|
136
|
+
errors.push(`file "${path}" must be a string`);
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
normalizedFiles[path] = content;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
if (entrypoint && !Object.prototype.hasOwnProperty.call(normalizedFiles, entrypoint)) {
|
|
143
|
+
errors.push('entrypoint must exist in files');
|
|
144
|
+
}
|
|
145
|
+
const declaredLibraries = new Set();
|
|
146
|
+
if (input.libraries !== undefined) {
|
|
147
|
+
if (!Array.isArray(input.libraries)) {
|
|
148
|
+
errors.push('libraries must be an array when provided');
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
for (const library of input.libraries) {
|
|
152
|
+
if (typeof library !== 'string' || !ARTIFACT_LIBRARY_KEYS.includes(library)) {
|
|
153
|
+
errors.push(`libraries must contain only: ${ARTIFACT_LIBRARY_KEYS.join(', ')}`);
|
|
154
|
+
continue;
|
|
155
|
+
}
|
|
156
|
+
declaredLibraries.add(library);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
let display;
|
|
161
|
+
if (input.display !== undefined) {
|
|
162
|
+
if (!isRecord(input.display)) {
|
|
163
|
+
errors.push('display must be an object when provided');
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
display = {};
|
|
167
|
+
if (input.display.fullscreenFit !== undefined) {
|
|
168
|
+
if (typeof input.display.fullscreenFit !== 'string'
|
|
169
|
+
|| !ARTIFACT_FULLSCREEN_FITS.includes(input.display.fullscreenFit)) {
|
|
170
|
+
errors.push(`display.fullscreenFit must be one of: ${ARTIFACT_FULLSCREEN_FITS.join(', ')}`);
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
display.fullscreenFit = input.display.fullscreenFit;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
if (input.display.background !== undefined) {
|
|
177
|
+
if (typeof input.display.background !== 'string'
|
|
178
|
+
|| !ARTIFACT_DISPLAY_BACKGROUNDS.includes(input.display.background)) {
|
|
179
|
+
errors.push(`display.background must be one of: ${ARTIFACT_DISPLAY_BACKGROUNDS.join(', ')}`);
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
display.background = input.display.background;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
if (input.display.fullscreenViewport !== undefined) {
|
|
186
|
+
if (!isRecord(input.display.fullscreenViewport)) {
|
|
187
|
+
errors.push('display.fullscreenViewport must be an object when provided');
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
const width = input.display.fullscreenViewport.width;
|
|
191
|
+
const height = input.display.fullscreenViewport.height;
|
|
192
|
+
if (typeof width !== 'number' || !Number.isFinite(width) || width < 120 || width > 10000) {
|
|
193
|
+
errors.push('display.fullscreenViewport.width must be between 120 and 10000');
|
|
194
|
+
}
|
|
195
|
+
if (typeof height !== 'number' || !Number.isFinite(height) || height < 120 || height > 10000) {
|
|
196
|
+
errors.push('display.fullscreenViewport.height must be between 120 and 10000');
|
|
197
|
+
}
|
|
198
|
+
if (typeof width === 'number' && typeof height === 'number') {
|
|
199
|
+
display.fullscreenViewport = {
|
|
200
|
+
width: Math.round(width),
|
|
201
|
+
height: Math.round(height),
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
if (input.display.controls !== undefined) {
|
|
207
|
+
if (!isRecord(input.display.controls)) {
|
|
208
|
+
errors.push('display.controls must be an object when provided');
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
const controls = {};
|
|
212
|
+
let hasControls = false;
|
|
213
|
+
if (input.display.controls.stepper !== undefined) {
|
|
214
|
+
if (!isRecord(input.display.controls.stepper)) {
|
|
215
|
+
errors.push('display.controls.stepper must be an object when provided');
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
const stepper = {};
|
|
219
|
+
if (input.display.controls.stepper.selector !== undefined) {
|
|
220
|
+
const selector = normalizeString(input.display.controls.stepper.selector);
|
|
221
|
+
if (!selector || selector.length > 180) {
|
|
222
|
+
errors.push('display.controls.stepper.selector must be a non-empty string up to 180 characters');
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
stepper.selector = selector;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
if (input.display.controls.stepper.label !== undefined) {
|
|
229
|
+
const label = normalizeString(input.display.controls.stepper.label);
|
|
230
|
+
if (!label || label.length > 40) {
|
|
231
|
+
errors.push('display.controls.stepper.label must be a non-empty string up to 40 characters');
|
|
232
|
+
}
|
|
233
|
+
else {
|
|
234
|
+
stepper.label = label;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
controls.stepper = stepper;
|
|
238
|
+
hasControls = true;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
if (input.display.controls.reset !== undefined) {
|
|
242
|
+
if (typeof input.display.controls.reset !== 'boolean') {
|
|
243
|
+
errors.push('display.controls.reset must be a boolean when provided');
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
controls.reset = input.display.controls.reset;
|
|
247
|
+
hasControls = true;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
if (hasControls)
|
|
251
|
+
display.controls = controls;
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
if (Object.keys(display).length === 0)
|
|
255
|
+
display = undefined;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
let source;
|
|
259
|
+
if (input.source !== undefined) {
|
|
260
|
+
if (!isRecord(input.source)) {
|
|
261
|
+
errors.push('source must be an object when provided');
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
source = {};
|
|
265
|
+
for (const key of ['repo', 'entityType', 'entityId', 'skillId']) {
|
|
266
|
+
if (input.source[key] !== undefined) {
|
|
267
|
+
const value = normalizeString(input.source[key]);
|
|
268
|
+
if (!value)
|
|
269
|
+
errors.push(`source.${key} must be a non-empty string`);
|
|
270
|
+
else
|
|
271
|
+
source[key] = value;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
if (errors.length > 0 || !artifactId || !title || !kind || !entrypoint || !normalizedViewport) {
|
|
277
|
+
return { ok: false, errors, byteSize };
|
|
278
|
+
}
|
|
279
|
+
const libraries = Array.from(new Set([...declaredLibraries, ...inferArtifactLibraries(normalizedFiles)]));
|
|
280
|
+
return {
|
|
281
|
+
ok: true,
|
|
282
|
+
errors: [],
|
|
283
|
+
byteSize,
|
|
284
|
+
bundle: {
|
|
285
|
+
schemaVersion: ARTIFACT_BUNDLE_SCHEMA_VERSION,
|
|
286
|
+
artifactId,
|
|
287
|
+
title,
|
|
288
|
+
kind: kind,
|
|
289
|
+
viewport: normalizedViewport,
|
|
290
|
+
...(display ? { display } : {}),
|
|
291
|
+
...(libraries.length > 0 ? { libraries } : {}),
|
|
292
|
+
files: normalizedFiles,
|
|
293
|
+
entrypoint,
|
|
294
|
+
...(source ? { source } : {}),
|
|
295
|
+
},
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
export function assertArtifactBundle(input) {
|
|
299
|
+
const result = validateArtifactBundle(input);
|
|
300
|
+
if (!result.ok || !result.bundle) {
|
|
301
|
+
throw new Error(result.errors.join('; ') || 'Invalid artifact bundle');
|
|
302
|
+
}
|
|
303
|
+
return result.bundle;
|
|
304
|
+
}
|
|
305
|
+
//# sourceMappingURL=artifact-bundle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifact-bundle.js","sourceRoot":"","sources":["../../src/core/artifact-bundle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { ArtifactBundle, ArtifactLibraryKey } from './artifact-bundle.js';
|
|
2
|
+
import { type AssetResolution } from './artifact-asset-resolution.js';
|
|
3
|
+
/** The neutral gray the hosted app presents artifacts on. The web stage rule
|
|
4
|
+
* (.artifact-stage[data-view-mode='fullscreen'] in ArtifactEntityView.svelte)
|
|
5
|
+
* must use the same value — a source-sync test pins it. */
|
|
6
|
+
export declare const ARTIFACT_PRESENT_BACKDROP = "#4a4a4a";
|
|
7
|
+
/** Shared dead-band for content-size churn, in px. Single-sourced HERE (core)
|
|
8
|
+
* so the iframe runtime — which interpolates it into its injected reporter
|
|
9
|
+
* script below — and the web host's per-slot recorder (which re-exports this
|
|
10
|
+
* through artifact-view-state.ts) can never drift apart: a tuning change one
|
|
11
|
+
* side silently filtered out would ship as a no-op. */
|
|
12
|
+
export declare const CONTENT_SIZE_DEAD_BAND_PX = 8;
|
|
13
|
+
export type ArtifactExportExtension = 'html' | 'png' | 'pdf';
|
|
14
|
+
/** Where this render runs (eng review D2 — host mode is EXPLICIT):
|
|
15
|
+
* - `iframe`: a live host owns the chrome (selection outlines, zoom/pan,
|
|
16
|
+
* overview scaling, presentation controls). The runtime is interactive and
|
|
17
|
+
* emits its state to the parent via postMessage. The in-app canvas + the
|
|
18
|
+
* public share/present page.
|
|
19
|
+
* - `none`: no host. The downloaded standalone HTML and the headless
|
|
20
|
+
* Playwright render. The runtime owns minimal self-contained chrome (step
|
|
21
|
+
* frames + self-fit), capability-frozen at today's export parity — a fence,
|
|
22
|
+
* not a growth surface. */
|
|
23
|
+
export type ArtifactRenderHost = 'iframe' | 'none';
|
|
24
|
+
export type ArtifactRenderContextName = 'editor' | 'fullscreen' | 'export';
|
|
25
|
+
export type ArtifactCanvasTool = 'pointer' | 'hand';
|
|
26
|
+
export type ArtifactLibrarySourceKey = ArtifactLibraryKey | 'threeCore';
|
|
27
|
+
export type ArtifactLibrarySources = Partial<Record<ArtifactLibrarySourceKey, string>>;
|
|
28
|
+
export declare function artifactExportFilename(bundle: Pick<ArtifactBundle, 'artifactId' | 'title'>, extension?: ArtifactExportExtension): string;
|
|
29
|
+
/** How workspace-asset refs resolve in THIS render — drives both the URL
|
|
30
|
+
* rewrite and the document CSP from one value (see
|
|
31
|
+
* artifact-asset-resolution.ts). */
|
|
32
|
+
export interface ArtifactRenderContext {
|
|
33
|
+
host: ArtifactRenderHost;
|
|
34
|
+
/** The render surface. Drives the `data-artifact-context` attribute + runtime
|
|
35
|
+
* gating. For host `iframe` it defaults to `editor`. For host `none` it may
|
|
36
|
+
* be left undefined — a plain self-contained export with no context chrome
|
|
37
|
+
* (the bare `buildArtifactHtmlExport(bundle)` case). */
|
|
38
|
+
context?: ArtifactRenderContextName;
|
|
39
|
+
tool?: ArtifactCanvasTool;
|
|
40
|
+
assets?: AssetResolution;
|
|
41
|
+
librarySources?: ArtifactLibrarySources;
|
|
42
|
+
/** Base URL for the headless (Playwright) render path so root-relative
|
|
43
|
+
* `/api/assets/...` URLs resolve in a `setContent` document. The CSP's
|
|
44
|
+
* `base-uri` is widened to exactly this origin. Never set on the standalone
|
|
45
|
+
* HTML export — a downloaded file must not phone home. (host: 'none' only) */
|
|
46
|
+
baseHref?: string;
|
|
47
|
+
/** Emit the render-host styles (export-frame flattening, print pagination,
|
|
48
|
+
* in-document present backdrop). The Playwright + standalone-export paths
|
|
49
|
+
* set it; the in-app iframe never does. (host: 'none' only) */
|
|
50
|
+
includeRenderHostStyles?: boolean;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* THE single artifact document builder (eng review D2). Every render context —
|
|
54
|
+
* in-app canvas, public share/present page, downloaded standalone HTML, and the
|
|
55
|
+
* headless Playwright render — produces its HTML here, from one set of
|
|
56
|
+
* content-processing helpers and one runtime. `host` selects the document SHAPE
|
|
57
|
+
* (a live-hosted iframe srcdoc vs a self-contained file) and the runtime's
|
|
58
|
+
* capabilities; the asset CSP + URL rewrite come from the one `assets` value.
|
|
59
|
+
*/
|
|
60
|
+
export declare function buildArtifactDocument(bundle: ArtifactBundle, ctx: ArtifactRenderContext): string;
|
|
61
|
+
export interface ArtifactHtmlExportOptions {
|
|
62
|
+
context?: 'editor' | 'fullscreen' | 'export';
|
|
63
|
+
/** Base URL for the headless (Playwright) render path so root-relative
|
|
64
|
+
* `/api/assets/...` URLs resolve in a `setContent` document. The CSP's
|
|
65
|
+
* `base-uri` is widened to exactly this origin. Never set on the
|
|
66
|
+
* standalone HTML export — a downloaded file must not phone home. */
|
|
67
|
+
baseHref?: string;
|
|
68
|
+
includeRenderHostStyles?: boolean;
|
|
69
|
+
librarySources?: ArtifactLibrarySources;
|
|
70
|
+
/** How workspace-asset refs resolve in THIS render — drives both the URL
|
|
71
|
+
* rewrite and the document CSP from one value (see
|
|
72
|
+
* artifact-asset-resolution.ts). Headless PNG/PDF passes token mode; the
|
|
73
|
+
* self-contained HTML export passes relative mode. Defaults to none
|
|
74
|
+
* (no asset access). */
|
|
75
|
+
assets?: AssetResolution;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Self-contained HTML export + headless Playwright render. A thin adapter over
|
|
79
|
+
* {@link buildArtifactDocument} with `host: 'none'` — kept for its existing
|
|
80
|
+
* callers (the export route, MCP `export_artifact`, the render service). A
|
|
81
|
+
* bare call (no `context`) yields a plain self-contained file, unchanged.
|
|
82
|
+
*/
|
|
83
|
+
export declare function buildArtifactHtmlExport(bundle: ArtifactBundle, options?: ArtifactHtmlExportOptions): string;
|