@cueframe/kernel 0.1.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. package/dist/_members/account-model/validators/contextFile.d.ts +3 -21
  2. package/dist/_members/account-model/validators/conversation.d.ts +12 -42
  3. package/dist/_members/account-model/validators/dashboardInsight.d.ts +3 -17
  4. package/dist/_members/account-model/validators/sessionToken.d.ts +10 -36
  5. package/dist/_members/account-model/validators/uploadToken.d.ts +11 -21
  6. package/dist/_members/account-model/validators/userSettings.d.ts +3 -13
  7. package/dist/_members/account-model/validators/workingComposition.d.ts +3 -19
  8. package/dist/_members/authoring/agent/errors.d.ts +8 -0
  9. package/dist/_members/authoring/capabilities.d.ts +0 -9
  10. package/dist/_members/authoring/index.d.ts +1 -1
  11. package/dist/_members/authoring/models/defaultModels.d.ts +12 -0
  12. package/dist/_members/authoring/models/modelFactory.d.ts +1 -0
  13. package/dist/_members/authoring/motion/materializeMotionPresetOps.d.ts +5 -7
  14. package/dist/_members/authoring/types.d.ts +1 -2
  15. package/dist/_members/cloud-import/CloudImportService.d.ts +3 -4
  16. package/dist/_members/cloud-import/ImportProvider.d.ts +3 -7
  17. package/dist/_members/cloud-import/cloudConfig.d.ts +0 -6
  18. package/dist/_members/cloud-import/index.d.ts +2 -4
  19. package/dist/_members/component-runtime/assetServer.d.ts +18 -0
  20. package/dist/_members/component-runtime/assetServer.d.ts.map +1 -0
  21. package/dist/_members/component-runtime/bake.d.ts +12 -0
  22. package/dist/_members/component-runtime/bake.d.ts.map +1 -0
  23. package/dist/_members/component-runtime/browserFirewall.d.ts +21 -0
  24. package/dist/_members/component-runtime/browserFirewall.d.ts.map +1 -0
  25. package/dist/_members/component-runtime/browserIdentity.d.ts +14 -0
  26. package/dist/_members/component-runtime/browserIdentity.d.ts.map +1 -0
  27. package/dist/_members/component-runtime/browserOptions.d.ts +8 -0
  28. package/dist/_members/component-runtime/browserOptions.d.ts.map +1 -0
  29. package/dist/_members/component-runtime/canonicalIdentity.d.ts +14 -0
  30. package/dist/_members/component-runtime/canonicalIdentity.d.ts.map +1 -0
  31. package/dist/_members/component-runtime/contracts.d.ts +443 -0
  32. package/dist/_members/component-runtime/contracts.d.ts.map +1 -0
  33. package/dist/_members/component-runtime/determinism.d.ts +18 -0
  34. package/dist/_members/component-runtime/determinism.d.ts.map +1 -0
  35. package/dist/_members/component-runtime/fixtures/webgpuTiledRefraction.d.ts +9 -0
  36. package/dist/_members/component-runtime/fixtures/webgpuTiledRefraction.d.ts.map +1 -0
  37. package/dist/_members/component-runtime/identity.d.ts +16 -0
  38. package/dist/_members/component-runtime/identity.d.ts.map +1 -0
  39. package/dist/_members/component-runtime/importPolicy.d.ts +3 -0
  40. package/dist/_members/component-runtime/importPolicy.d.ts.map +1 -0
  41. package/dist/_members/component-runtime/index.d.ts +11 -0
  42. package/dist/_members/component-runtime/index.d.ts.map +1 -0
  43. package/dist/_members/component-runtime/outputVerifier.d.ts +29 -0
  44. package/dist/_members/component-runtime/outputVerifier.d.ts.map +1 -0
  45. package/dist/_members/{render-harness/localRender.d.ts → component-runtime/render.d.ts} +25 -15
  46. package/dist/_members/component-runtime/render.d.ts.map +1 -0
  47. package/dist/_members/component-runtime/sourceWorkspace.d.ts +10 -0
  48. package/dist/_members/component-runtime/sourceWorkspace.d.ts.map +1 -0
  49. package/dist/_members/compose/index.d.ts +0 -5
  50. package/dist/_members/composition/graphics-plan/schemas.d.ts +299 -1309
  51. package/dist/_members/composition/primitive-catalog/index.d.ts +2 -2
  52. package/dist/_members/composition/primitive-catalog/projection.d.ts +2 -15
  53. package/dist/_members/composition/projection/behind-readiness.d.ts +4 -2
  54. package/dist/_members/composition/reframe/index.d.ts +56 -528
  55. package/dist/_members/composition/validators/brandKit.d.ts +251 -1252
  56. package/dist/_members/composition/validators/composePlan.d.ts +106 -818
  57. package/dist/_members/composition/validators/composition.d.ts +1328 -5886
  58. package/dist/_members/composition/validators/font.d.ts +35 -91
  59. package/dist/_members/composition/validators/index.d.ts +1 -0
  60. package/dist/_members/composition/validators/opaqueId.d.ts +13 -0
  61. package/dist/_members/composition/validators/project.d.ts +17 -52
  62. package/dist/_members/composition/validators/registry.d.ts +53 -135
  63. package/dist/_members/composition/validators/render.d.ts +811 -7443
  64. package/dist/_members/composition/validators/session.d.ts +41 -99
  65. package/dist/_members/composition/validators/webhook.d.ts +25 -60
  66. package/dist/_members/composition-ops/alphaLayers.d.ts +3 -2
  67. package/dist/_members/composition-ops/index.d.ts +412 -4348
  68. package/dist/_members/core/render/compositionAudioAndDepth.d.ts +6 -0
  69. package/dist/_members/core/render/compositionRender.d.ts +3 -4
  70. package/dist/_members/core/render/compositionValidation.d.ts +4 -0
  71. package/dist/_members/core/render/index.d.ts +2 -2
  72. package/dist/_members/core/render/types.d.ts +16 -8
  73. package/dist/_members/director/ai-sdk/messages.d.ts +67 -217
  74. package/dist/_members/director/domain/chat.d.ts +70 -293
  75. package/dist/_members/director/testing/contract.d.ts +10 -10
  76. package/dist/_members/errors/registry.d.ts +201 -3
  77. package/dist/_members/foundation/primitives/index.d.ts +1 -1
  78. package/dist/_members/mcp/adapter.d.ts +22 -0
  79. package/dist/_members/mcp/burnedNames.d.ts +0 -1
  80. package/dist/_members/mcp/core.d.ts +6 -3
  81. package/dist/_members/mcp/curation.d.ts +3 -34
  82. package/dist/_members/mcp/curationTypes.d.ts +34 -0
  83. package/dist/_members/mcp/generated/harness.d.ts +1 -1
  84. package/dist/_members/mcp/generated/operations.d.ts +12 -2
  85. package/dist/_members/mcp/main.d.ts +1 -0
  86. package/dist/_members/mcp/mediaContextFormat.d.ts +4 -0
  87. package/dist/_members/mcp/prompts.d.ts +1 -1
  88. package/dist/_members/mcp/query.d.ts +4 -0
  89. package/dist/_members/mcp/resources.d.ts +1 -1
  90. package/dist/_members/mcp/server.d.ts +1 -2
  91. package/dist/_members/mcp/wireSchema.d.ts +13 -0
  92. package/dist/_members/media-model/api.d.ts +123 -727
  93. package/dist/_members/media-model/generation.d.ts +141 -228
  94. package/dist/_members/media-model/index.d.ts +1 -0
  95. package/dist/_members/media-model/opaqueId.d.ts +10 -0
  96. package/dist/_members/plane/contract.d.ts +16 -19
  97. package/dist/_members/primitives/backgrounds/animated-bar-chart/config.d.ts +3 -27
  98. package/dist/_members/primitives/backgrounds/animated-line-chart/config.d.ts +2 -26
  99. package/dist/_members/primitives/backgrounds/dither-gradient-bg/config.d.ts +1 -17
  100. package/dist/_members/primitives/backgrounds/dynamic-grid/config.d.ts +6 -14
  101. package/dist/_members/primitives/backgrounds/ecosystem-constellation/config.d.ts +1 -11
  102. package/dist/_members/primitives/backgrounds/infinite-marquee/config.d.ts +1 -21
  103. package/dist/_members/primitives/backgrounds/mesh-gradient-bg/config.d.ts +2 -12
  104. package/dist/_members/primitives/backgrounds/perspective-marquee/config.d.ts +2 -26
  105. package/dist/_members/primitives/backgrounds/silk-flow-bg/config.d.ts +2 -22
  106. package/dist/_members/primitives/backgrounds/vector-field/config.d.ts +1 -17
  107. package/dist/_members/primitives/backgrounds/volumetric-rays/config.d.ts +1 -19
  108. package/dist/_members/primitives/effects/blur/config.d.ts +5 -14
  109. package/dist/_members/primitives/effects/color-grade/config.d.ts +10 -18
  110. package/dist/_members/primitives/effects/grain/config.d.ts +9 -12
  111. package/dist/_members/primitives/effects/parallax/config.d.ts +8 -12
  112. package/dist/_members/primitives/effects/particles/config.d.ts +9 -20
  113. package/dist/_members/primitives/effects/pulsing-indicator/config.d.ts +1 -13
  114. package/dist/_members/primitives/effects/spotlight-card/config.d.ts +1 -25
  115. package/dist/_members/primitives/effects/spring-pop-in/config.d.ts +1 -15
  116. package/dist/_members/primitives/effects/success-confetti/config.d.ts +2 -26
  117. package/dist/_members/primitives/effects/vignette/config.d.ts +5 -12
  118. package/dist/_members/primitives/hero-text/config.d.ts +9 -24
  119. package/dist/_members/primitives/layouts/chat-to-preview-layout/config.d.ts +1 -11
  120. package/dist/_members/primitives/layouts/infinite-bento-pan/config.d.ts +1 -9
  121. package/dist/_members/primitives/layouts/letterbox/config.d.ts +1 -9
  122. package/dist/_members/primitives/layouts/photo-grid/config.d.ts +2 -12
  123. package/dist/_members/primitives/layouts/picture-in-picture/config.d.ts +7 -12
  124. package/dist/_members/primitives/layouts/split-screen/config.d.ts +1 -7
  125. package/dist/_members/primitives/layouts/staggered-bento-grid/config.d.ts +3 -51
  126. package/dist/_members/primitives/lib/schema.d.ts +1 -1
  127. package/dist/_members/primitives/scenes/changelog-bite/config.d.ts +7 -24
  128. package/dist/_members/primitives/scenes/hero-device-assemble/config.d.ts +5 -14
  129. package/dist/_members/primitives/scenes/landing-code-showcase/config.d.ts +1 -7
  130. package/dist/_members/primitives/scenes/live-code-compilation/config.d.ts +1 -7
  131. package/dist/_members/primitives/scenes/pricing-tier-focus/config.d.ts +2 -12
  132. package/dist/_members/primitives/scenes/product-launch-trailer/config.d.ts +1 -19
  133. package/dist/_members/primitives/scenes/terminal-to-browser-deploy/config.d.ts +1 -11
  134. package/dist/_members/primitives/text/blur-reveal/config.d.ts +1 -17
  135. package/dist/_members/primitives/text/cinematic-title/config.d.ts +13 -73
  136. package/dist/_members/primitives/text/inline-highlight/config.d.ts +1 -21
  137. package/dist/_members/primitives/text/karaoke/config.d.ts +10 -93
  138. package/dist/_members/primitives/text/kinetic-type/config.d.ts +14 -49
  139. package/dist/_members/primitives/text/lower-third/config.d.ts +8 -70
  140. package/dist/_members/primitives/text/marker-highlight/config.d.ts +1 -23
  141. package/dist/_members/primitives/text/masked-slide-reveal/config.d.ts +1 -17
  142. package/dist/_members/primitives/text/matrix-decode/config.d.ts +1 -19
  143. package/dist/_members/primitives/text/quote-card/config.d.ts +1 -11
  144. package/dist/_members/primitives/text/rgb-glitch-text/config.d.ts +1 -23
  145. package/dist/_members/primitives/text/shimmer-sweep/config.d.ts +1 -17
  146. package/dist/_members/primitives/text/slot-machine-roll/config.d.ts +1 -17
  147. package/dist/_members/primitives/text/staggered-fade-up/config.d.ts +2 -24
  148. package/dist/_members/primitives/text/stat-counter/config.d.ts +6 -20
  149. package/dist/_members/primitives/text/strikethrough-replace/config.d.ts +1 -19
  150. package/dist/_members/primitives/text/text-effect/config.d.ts +10 -15
  151. package/dist/_members/primitives/text/text-fade-replace/config.d.ts +1 -17
  152. package/dist/_members/primitives/text/token-stream/config.d.ts +1 -11
  153. package/dist/_members/primitives/text/tracking-in/config.d.ts +1 -19
  154. package/dist/_members/primitives/text/typewriter/config.d.ts +1 -21
  155. package/dist/_members/primitives/transitions/chromatic-aberration-wipe/config.d.ts +5 -8
  156. package/dist/_members/primitives/transitions/code-diff-wipe/config.d.ts +1 -21
  157. package/dist/_members/primitives/transitions/directional-wipe/config.d.ts +7 -6
  158. package/dist/_members/primitives/transitions/frosted-glass-wipe/config.d.ts +1 -5
  159. package/dist/_members/primitives/transitions/glitch-cut/config.d.ts +1 -7
  160. package/dist/_members/primitives/transitions/grid-pixelate-wipe/config.d.ts +6 -12
  161. package/dist/_members/primitives/transitions/ink-wipe/config.d.ts +7 -8
  162. package/dist/_members/primitives/transitions/kinetic-type-mask/config.d.ts +1 -7
  163. package/dist/_members/primitives/transitions/light-leak/config.d.ts +1 -7
  164. package/dist/_members/primitives/transitions/luma-matte/config.d.ts +6 -6
  165. package/dist/_members/primitives/transitions/morph/config.d.ts +5 -6
  166. package/dist/_members/primitives/transitions/spatial-push/config.d.ts +7 -6
  167. package/dist/_members/primitives/transitions/swipe-transition-wipe/config.d.ts +5 -10
  168. package/dist/_members/primitives/transitions/zoom-through/config.d.ts +2 -30
  169. package/dist/_members/primitives/transitions/zoom-through-transition/config.d.ts +1 -13
  170. package/dist/_members/primitives/ui-blocks/ai-generate-overlay/config.d.ts +1 -29
  171. package/dist/_members/primitives/ui-blocks/ai-generation-canvas/config.d.ts +1 -11
  172. package/dist/_members/primitives/ui-blocks/badge-pop/config.d.ts +8 -16
  173. package/dist/_members/primitives/ui-blocks/before-after-slider/config.d.ts +1 -11
  174. package/dist/_members/primitives/ui-blocks/benchmark-bars/config.d.ts +3 -73
  175. package/dist/_members/primitives/ui-blocks/bounding-box-selector/config.d.ts +1 -15
  176. package/dist/_members/primitives/ui-blocks/browser-flow/config.d.ts +1 -7
  177. package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/config.d.ts +1 -21
  178. package/dist/_members/primitives/ui-blocks/chat-exchange/config.d.ts +1 -15
  179. package/dist/_members/primitives/ui-blocks/code-accordion/config.d.ts +2 -26
  180. package/dist/_members/primitives/ui-blocks/context-meter/config.d.ts +1 -13
  181. package/dist/_members/primitives/ui-blocks/cursor-flow/config.d.ts +2 -66
  182. package/dist/_members/primitives/ui-blocks/dashboard-populate/config.d.ts +1 -9
  183. package/dist/_members/primitives/ui-blocks/data-flow-pipes/config.d.ts +3 -97
  184. package/dist/_members/primitives/ui-blocks/device-mockup-zoom/config.d.ts +5 -14
  185. package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/config.d.ts +1 -13
  186. package/dist/_members/primitives/ui-blocks/eval-scorecard/config.d.ts +2 -36
  187. package/dist/_members/primitives/ui-blocks/glass-code-block/config.d.ts +1 -23
  188. package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/config.d.ts +3 -113
  189. package/dist/_members/primitives/ui-blocks/metric-gauge/config.d.ts +2 -34
  190. package/dist/_members/primitives/ui-blocks/morphing-modal/config.d.ts +3 -113
  191. package/dist/_members/primitives/ui-blocks/pipeline-journey/config.d.ts +1 -9
  192. package/dist/_members/primitives/ui-blocks/progress-steps/config.d.ts +6 -37
  193. package/dist/_members/primitives/ui-blocks/reasoning-trace/config.d.ts +2 -12
  194. package/dist/_members/primitives/ui-blocks/simulated-cursor/config.d.ts +2 -54
  195. package/dist/_members/primitives/ui-blocks/terminal-simulator/config.d.ts +9 -48
  196. package/dist/_members/primitives/ui-blocks/toast-notification/config.d.ts +7 -20
  197. package/dist/_members/primitives/ui-blocks/tool-call-stack/config.d.ts +2 -42
  198. package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/config.d.ts +1 -19
  199. package/dist/_members/primitives/ui-blocks/visual-docs-snippet/config.d.ts +3 -71
  200. package/dist/_members/primitives/ui-blocks/voice-waveform/config.d.ts +5 -14
  201. package/dist/_members/primitives/workspace.d.ts +1 -5
  202. package/dist/_members/render-harness/cardAssetAdmission.d.ts +3 -0
  203. package/dist/_members/render-harness/cardAssetAdmission.d.ts.map +1 -0
  204. package/dist/_members/render-harness/cardRender.d.ts.map +1 -1
  205. package/dist/_members/render-harness/index.d.ts +1 -5
  206. package/dist/_members/render-harness/index.d.ts.map +1 -1
  207. package/dist/_members/render-harness/materializeSources.d.ts.map +1 -1
  208. package/dist/_members/render-harness/remotion-runtime.d.ts +20 -0
  209. package/dist/_members/render-harness/renderInputAssets.d.ts +2 -1
  210. package/dist/_members/render-harness/renderInputAssets.d.ts.map +1 -1
  211. package/dist/_members/render-harness/resolveAssets.d.ts.map +1 -1
  212. package/dist/authoring/build-tools.js +8 -8
  213. package/dist/authoring/context.js +5 -5
  214. package/dist/authoring/models.js +3 -1
  215. package/dist/authoring/resource-routing.js +1 -1
  216. package/dist/authoring/resources.js +1 -1
  217. package/dist/authoring/tools.js +7 -7
  218. package/dist/authoring.js +28 -27
  219. package/dist/{chunk-AW57IWNW.js → chunk-4FOOBSEE.js} +53 -3
  220. package/dist/{chunk-KFECIHED.js → chunk-4JRUGT2Y.js} +41 -106
  221. package/dist/{chunk-FMODQD5P.js → chunk-4ZE564YF.js} +16 -9
  222. package/dist/chunk-5OTQ7M43.js +718 -0
  223. package/dist/{chunk-GMD33ZD7.js → chunk-6ID2J64H.js} +1 -1
  224. package/dist/{chunk-NQSMEUJ6.js → chunk-6XI57FZZ.js} +362 -212
  225. package/dist/chunk-7KEUL3FI.js +500 -0
  226. package/dist/{chunk-GIA2SVVB.js → chunk-AD5HWBCE.js} +9 -4
  227. package/dist/{chunk-DCVJWGIA.js → chunk-C5SEPOWD.js} +165 -173
  228. package/dist/chunk-CGHTMZNC.js +6 -0
  229. package/dist/chunk-DHKQ47Q6.js +57 -0
  230. package/dist/{chunk-RP4SXXLJ.js → chunk-DQKSCHFC.js} +1 -1
  231. package/dist/{chunk-TO4BFNLJ.js → chunk-EEXCDFY5.js} +1 -1
  232. package/dist/{chunk-ZT7MHRQU.js → chunk-GCQ7Z7S7.js} +15 -5
  233. package/dist/{chunk-TPA6PYN2.js → chunk-GEGRJKKO.js} +25 -10
  234. package/dist/chunk-HHFDHJ3I.js +392 -0
  235. package/dist/{chunk-ICSZF37W.js → chunk-IBMJ33EL.js} +3 -3
  236. package/dist/{chunk-TFGKUWHY.js → chunk-IHFREGFA.js} +24 -22
  237. package/dist/chunk-IJ7PVJTK.js +114 -0
  238. package/dist/{chunk-UQSOS726.js → chunk-KKEY5MIW.js} +8 -8
  239. package/dist/{chunk-ZPRBGW4Y.js → chunk-LNBVTDFR.js} +1 -1
  240. package/dist/chunk-LQUWKBST.js +195 -0
  241. package/dist/chunk-M2TLRXEO.js +41 -0
  242. package/dist/{chunk-SDCEJAO2.js → chunk-NOEBAV2G.js} +58 -2
  243. package/dist/{chunk-DL7WYISQ.js → chunk-QBKDEO7J.js} +1601 -1435
  244. package/dist/chunk-RFXR7ATW.js +244 -0
  245. package/dist/chunk-SIAXP3ZO.js +131 -0
  246. package/dist/{chunk-MCBUX5XV.js → chunk-SLN5UKLT.js} +2 -2
  247. package/dist/{chunk-GH27OS5S.js → chunk-VCBLGZQQ.js} +19 -4
  248. package/dist/{chunk-TMB5AY6Q.js → chunk-XHUYWVYK.js} +1 -1
  249. package/dist/{chunk-BZZTVOGG.js → chunk-XVBOSPZI.js} +15 -17
  250. package/dist/{chunk-HBVAZXYO.js → chunk-Y3QGYASW.js} +14 -14
  251. package/dist/{chunk-DWLNPNC4.js → chunk-ZCAQHNPI.js} +1 -1
  252. package/dist/{chunk-DJW3UGBH.js → chunk-ZN6P3KOJ.js} +90 -39
  253. package/dist/chunk-ZZRBKGDA.js +109 -0
  254. package/dist/cloud-import.js +20 -116
  255. package/dist/component-runtime/browserOptions.d.ts +1 -0
  256. package/dist/component-runtime/browserOptions.js +7 -0
  257. package/dist/component-runtime/contracts.d.ts +1 -0
  258. package/dist/component-runtime/contracts.js +49 -0
  259. package/dist/component-runtime/identity/browser.d.ts +1 -0
  260. package/dist/component-runtime/identity/browser.js +35 -0
  261. package/dist/component-runtime/identity.d.ts +1 -0
  262. package/dist/component-runtime/identity.js +21 -0
  263. package/dist/component-runtime/importPolicy.d.ts +1 -0
  264. package/dist/component-runtime/importPolicy.js +10 -0
  265. package/dist/component-runtime/render.d.ts +1 -0
  266. package/dist/component-runtime/render.js +34 -0
  267. package/dist/component-runtime.d.ts +1 -0
  268. package/dist/component-runtime.js +132 -0
  269. package/dist/compose.js +16 -30
  270. package/dist/composition/graphics-plan.js +1 -1
  271. package/dist/composition/ops.js +4 -4
  272. package/dist/composition/primitive-catalog.js +1 -3
  273. package/dist/composition/projection.js +2 -2
  274. package/dist/composition/timeline.js +2 -2
  275. package/dist/composition/validators.js +4 -2
  276. package/dist/composition-ops.js +23 -17
  277. package/dist/composition.js +17 -15
  278. package/dist/{context-JLLU3MYD.js → context-4GSDBFT3.js} +5 -5
  279. package/dist/core/render.js +8 -8
  280. package/dist/core/select.js +2 -2
  281. package/dist/core.js +6 -6
  282. package/dist/director/ai-sdk.js +3 -3
  283. package/dist/director/domain.js +2 -2
  284. package/dist/director.js +3 -3
  285. package/dist/errors.js +1 -1
  286. package/dist/mcp/adapter.js +33 -33
  287. package/dist/mcp/core.js +1 -1
  288. package/dist/mcp/curation.js +5 -1
  289. package/dist/mcp/executor.js +1 -1
  290. package/dist/mcp/server.js +4 -6
  291. package/dist/mcp/wire-schema.d.ts +1 -0
  292. package/dist/mcp/wire-schema.js +37 -0
  293. package/dist/mcp.js +6 -29
  294. package/dist/media-model/media-kind.js +98 -9
  295. package/dist/media-model.js +83 -77
  296. package/dist/nle-export.js +15 -24
  297. package/dist/plane/conformance.js +1 -1
  298. package/dist/plane/contract.js +7 -0
  299. package/dist/plane.js +1 -1
  300. package/dist/primitives/effects.js +1 -1
  301. package/dist/primitives/hero-text.js +2 -2
  302. package/dist/primitives/layouts.js +1 -1
  303. package/dist/primitives/lib/index.js +18 -18
  304. package/dist/primitives/lib/schema.js +1 -1
  305. package/dist/primitives/lib.js +18 -18
  306. package/dist/primitives/scenes.js +2 -2
  307. package/dist/primitives/text.js +2 -2
  308. package/dist/primitives.js +10 -10
  309. package/dist/render-harness/cardAssetAdmission.d.ts +1 -0
  310. package/dist/render-harness/cardAssetAdmission.js +8 -0
  311. package/dist/render-harness/renderInputAssets.d.ts +1 -0
  312. package/dist/render-harness/renderInputAssets.js +17 -0
  313. package/dist/render-harness.js +44 -572
  314. package/package.json +69 -61
  315. package/dist/_members/authoring/prompts/designReviewerPrompt.d.ts +0 -2
  316. package/dist/_members/authoring/transpileComponent.d.ts +0 -6
  317. package/dist/_members/authoring/transpileHelper.d.ts +0 -8
  318. package/dist/_members/cloud-import/MediaItemPreprocessor.d.ts +0 -18
  319. package/dist/_members/cloud-import/multipartUpload.d.ts +0 -12
  320. package/dist/_members/compose/CompositionRenderer.d.ts +0 -6
  321. package/dist/_members/compose/sceneToRenderInput.d.ts +0 -25
  322. package/dist/_members/compose/schema.d.ts +0 -30
  323. package/dist/_members/compose/tokenResolver.d.ts +0 -17
  324. package/dist/_members/convex-api/api.d.ts +0 -5
  325. package/dist/_members/convex-api/api.generated.d.ts +0 -1444
  326. package/dist/_members/convex-api/dataModel.d.ts +0 -6
  327. package/dist/_members/render-harness/browserOptions.d.ts +0 -11
  328. package/dist/_members/render-harness/browserOptions.d.ts.map +0 -1
  329. package/dist/_members/render-harness/contractRender.d.ts +0 -27
  330. package/dist/_members/render-harness/contractRender.d.ts.map +0 -1
  331. package/dist/_members/render-harness/localRender.d.ts.map +0 -1
  332. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts +0 -9
  333. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts.map +0 -1
  334. package/dist/authoring/transpileComponent.d.ts +0 -1
  335. package/dist/authoring/transpileComponent.js +0 -31
  336. package/dist/authoring/transpileHelper.d.ts +0 -1
  337. package/dist/authoring/transpileHelper.js +0 -9
  338. package/dist/chunk-6IU2UQI5.js +0 -107
  339. package/dist/chunk-EP2Y6M2J.js +0 -64
  340. package/dist/chunk-MHOQTPOB.js +0 -124
  341. package/dist/chunk-RHVLQNYF.js +0 -20
  342. package/dist/chunk-TXSFYUZH.js +0 -85
  343. package/dist/chunk-V24L35GM.js +0 -61
  344. package/dist/chunk-WZH57M53.js +0 -494
  345. package/dist/cloud-import/multipart.d.ts +0 -1
  346. package/dist/cloud-import/multipart.js +0 -8
  347. package/dist/compose/renderer.d.ts +0 -1
  348. package/dist/compose/renderer.js +0 -170
  349. package/dist/convex-api/dataModel.d.ts +0 -1
  350. package/dist/convex-api/dataModel.js +0 -0
  351. package/dist/convex-api.d.ts +0 -1
  352. package/dist/convex-api.js +0 -8
  353. package/dist/render-harness/sandboxGlobalSpecs.d.ts +0 -1
  354. package/dist/render-harness/sandboxGlobalSpecs.js +0 -13
  355. package/dist/{chunk-SAMQUUO5.js → chunk-BIBYZJL3.js} +3 -3
  356. package/dist/{chunk-23HFEKV7.js → chunk-QISFYLBB.js} +4 -4
  357. package/dist/{chunk-DYZE7JZA.js → chunk-TMIBBD5E.js} +3 -3
@@ -0,0 +1,500 @@
1
+ import {
2
+ Reframe
3
+ } from "./chunk-2B5VJZHL.js";
4
+
5
+ // ../composition/src/validators/opaqueId.ts
6
+ import { z } from "zod";
7
+ var OpaqueId = z.string();
8
+
9
+ // ../composition/src/validators/composition.ts
10
+ import { z as z2 } from "zod";
11
+ var Format = z2.object({
12
+ aspectRatio: z2.enum(["16:9", "9:16", "1:1", "4:5"]),
13
+ fps: z2.union([z2.literal(24), z2.literal(25), z2.literal(30), z2.literal(60)]).optional(),
14
+ resolution: z2.enum(["hd", "fhd", "4k"]).optional(),
15
+ platform: z2.string().optional()
16
+ });
17
+ var Trim = z2.object({
18
+ start: z2.number().nonnegative(),
19
+ end: z2.number().nonnegative()
20
+ });
21
+ var ExcludedRange = z2.object({
22
+ start: z2.number().nonnegative(),
23
+ end: z2.number().nonnegative(),
24
+ reason: z2.string().optional()
25
+ });
26
+ var MediaClipSource = z2.object({
27
+ kind: z2.literal("media"),
28
+ mediaId: OpaqueId,
29
+ trim: Trim.optional(),
30
+ excludedRanges: z2.array(ExcludedRange).optional(),
31
+ volume: z2.number().min(0).max(4).optional(),
32
+ muted: z2.boolean().optional(),
33
+ playbackRate: z2.number().positive().optional(),
34
+ sync: z2.enum(["video", "independent"]).optional(),
35
+ kenBurns: z2.enum(["in", "out", "pan-l", "pan-r", "none"]).optional(),
36
+ volumeDb: z2.number().optional(),
37
+ fadeInMs: z2.number().nonnegative().optional(),
38
+ fadeOutMs: z2.number().nonnegative().optional(),
39
+ loop: z2.boolean().optional(),
40
+ audioRole: z2.enum(["sfx", "music", "vo", "ambience"]).optional(),
41
+ duck: z2.object({
42
+ duckDb: z2.number().max(0),
43
+ attackMs: z2.number().nonnegative(),
44
+ releaseMs: z2.number().nonnegative(),
45
+ windows: z2.array(z2.object({ startMs: z2.number(), endMs: z2.number() })).optional()
46
+ }).optional(),
47
+ anchor: z2.object({
48
+ clipId: z2.string().min(1),
49
+ offsetMs: z2.number()
50
+ }).optional(),
51
+ reframe: Reframe.optional()
52
+ });
53
+ var ComponentClipSource = z2.object({
54
+ kind: z2.literal("component"),
55
+ componentId: z2.string().min(1),
56
+ props: z2.record(z2.string(), z2.unknown()),
57
+ assets: z2.record(z2.string().min(1), z2.string().min(1)).optional(),
58
+ zPlane: z2.enum(["front", "behind-subject"]).optional()
59
+ });
60
+ var OverlayClipSource = z2.object({
61
+ kind: z2.literal("overlay"),
62
+ primitiveId: z2.string().min(1),
63
+ params: z2.record(z2.string(), z2.unknown()),
64
+ zPlane: z2.enum(["front", "behind-subject"]).optional(),
65
+ anchor: z2.object({ space: z2.literal("scene"), x: z2.number().min(0).max(1), y: z2.number().min(0).max(1) }).optional(),
66
+ parallax: z2.number().min(-0.3).max(0.3).optional()
67
+ });
68
+ var EffectClipSource = z2.object({
69
+ kind: z2.literal("effect"),
70
+ primitiveId: z2.string().min(1),
71
+ params: z2.record(z2.string(), z2.unknown()).optional()
72
+ });
73
+ var AlphaLayerClipSource = z2.object({
74
+ kind: z2.literal("alpha-layer"),
75
+ componentId: z2.string().min(1),
76
+ props: z2.record(z2.string(), z2.unknown()),
77
+ assets: z2.record(z2.string().min(1), z2.string().min(1)).optional(),
78
+ zPlane: z2.enum(["front", "behind-subject"]).optional()
79
+ });
80
+ var CardClipSource = z2.object({
81
+ kind: z2.literal("card"),
82
+ html: z2.string().min(1),
83
+ tokens: z2.record(z2.string(), z2.string()).optional(),
84
+ zPlane: z2.literal("front").optional()
85
+ });
86
+ var CompositionClipSource = z2.object({
87
+ kind: z2.literal("composition"),
88
+ compositionId: z2.string().min(1),
89
+ trim: Trim.optional()
90
+ }).strict();
91
+ var ClipSource = z2.discriminatedUnion("kind", [
92
+ MediaClipSource,
93
+ ComponentClipSource,
94
+ OverlayClipSource,
95
+ EffectClipSource,
96
+ AlphaLayerClipSource,
97
+ CardClipSource,
98
+ CompositionClipSource
99
+ ]);
100
+ var Transition = z2.object({
101
+ type: z2.string().min(1),
102
+ duration: z2.number().positive()
103
+ });
104
+ var Position = z2.object({
105
+ x: z2.number(),
106
+ y: z2.number()
107
+ });
108
+ var Region = z2.object({
109
+ x: z2.number().min(0).max(1),
110
+ y: z2.number().min(0).max(1),
111
+ w: z2.number().positive().max(1),
112
+ h: z2.number().positive().max(1)
113
+ });
114
+ var ClipFit = z2.enum(["cover", "contain"]);
115
+ var PerClipEffect = z2.object({
116
+ primitiveId: z2.string().min(1),
117
+ params: z2.record(z2.string(), z2.unknown()).optional()
118
+ });
119
+ var KeyframeEasing = z2.union([
120
+ z2.enum(["linear", "ease", "easeIn", "easeOut", "easeInOut"]),
121
+ z2.object({ cubicBezier: z2.tuple([z2.number(), z2.number(), z2.number(), z2.number()]) }).strict()
122
+ ]);
123
+ var Keyframe = z2.object({
124
+ time: z2.number().nonnegative(),
125
+ value: z2.number(),
126
+ easing: KeyframeEasing.optional()
127
+ }).strict();
128
+ var KeyframeChannel = z2.array(Keyframe).min(2);
129
+ var ANIMATABLE_PARAMS = [
130
+ "opacity",
131
+ "scale",
132
+ "rotation",
133
+ "position.x",
134
+ "position.y",
135
+ "volume"
136
+ ];
137
+ var TimelineClip = z2.object({
138
+ id: z2.string().min(1),
139
+ startTime: z2.number().nonnegative(),
140
+ duration: z2.number().positive(),
141
+ source: ClipSource,
142
+ kind: z2.enum(["video", "audio", "image", "overlay", "effect"]).optional(),
143
+ opacity: z2.number().min(0).max(1).optional(),
144
+ scale: z2.number().positive().optional(),
145
+ rotation: z2.number().optional(),
146
+ position: Position.optional(),
147
+ region: Region.optional(),
148
+ fit: ClipFit.optional(),
149
+ effects: z2.array(PerClipEffect).optional(),
150
+ transitionIn: Transition.optional(),
151
+ linkGroupId: z2.string().min(1).optional(),
152
+ animate: z2.record(z2.string(), KeyframeChannel).superRefine((channels, ctx) => {
153
+ for (const key of Object.keys(channels)) {
154
+ if (!ANIMATABLE_PARAMS.includes(key)) {
155
+ ctx.addIssue({
156
+ code: z2.ZodIssueCode.custom,
157
+ path: [key],
158
+ message: `"${key}" is not an animatable param (${ANIMATABLE_PARAMS.join(", ")})`
159
+ });
160
+ }
161
+ }
162
+ }).optional()
163
+ }).strict();
164
+ var Gap = z2.object({
165
+ id: z2.string().min(1),
166
+ startTime: z2.number().nonnegative(),
167
+ duration: z2.number().positive()
168
+ }).strict();
169
+ var TrackContent = z2.unknown().transform((val, ctx) => {
170
+ const hasSource = !!val && typeof val === "object" && "source" in val;
171
+ const res = (hasSource ? TimelineClip : Gap).safeParse(val);
172
+ if (!res.success) {
173
+ ctx.issues.push(...res.error.issues);
174
+ return z2.NEVER;
175
+ }
176
+ return res.data;
177
+ });
178
+ var Track = z2.object({
179
+ id: z2.string().min(1),
180
+ kind: z2.enum(["video", "audio", "image", "overlay", "effect"]),
181
+ name: z2.string().optional(),
182
+ enabled: z2.boolean().optional(),
183
+ volume: z2.number().min(0).max(4).optional(),
184
+ contents: z2.array(TrackContent)
185
+ }).strict();
186
+ var Marker = z2.object({
187
+ id: z2.string().min(1),
188
+ startTime: z2.number().nonnegative(),
189
+ endTime: z2.number().nonnegative().optional(),
190
+ kind: z2.string().min(1),
191
+ name: z2.string().optional(),
192
+ metadata: z2.record(z2.string(), z2.unknown()).optional()
193
+ }).strict();
194
+ var AccessControl = z2.object({
195
+ public: z2.boolean().optional(),
196
+ readerOrgIds: z2.array(z2.string()).optional(),
197
+ writerOrgIds: z2.array(z2.string()).optional()
198
+ });
199
+ var LicenseDeclaration = z2.object({
200
+ type: z2.string().min(1),
201
+ source: z2.string().optional(),
202
+ notes: z2.string().optional()
203
+ });
204
+ var CompositionAccessibility = z2.object({
205
+ audioDescriptionTrackId: z2.string().optional(),
206
+ captionsTrackId: z2.string().optional(),
207
+ signLanguageTrackId: z2.string().optional(),
208
+ notes: z2.string().optional()
209
+ });
210
+ var CaptionWord = z2.object({
211
+ text: z2.string().min(1),
212
+ startMs: z2.number().nonnegative().describe("Word start on the composition timeline, in milliseconds."),
213
+ endMs: z2.number().nonnegative().describe("Word end on the composition timeline, in milliseconds."),
214
+ emphasis: z2.boolean().optional(),
215
+ annotate: z2.enum(["circle", "underline"]).optional()
216
+ });
217
+ var CaptionStyle = z2.object({
218
+ fontFamily: z2.string().min(1).optional(),
219
+ fontSize: z2.number().min(1, "captions style.fontSize is PERCENT of composition height (1-15, default 5) \u2014 px values are not accepted").max(15, "captions style.fontSize is PERCENT of composition height (1-15, default 5) \u2014 px values are not accepted").optional().describe("Font size as % of composition height (1-15, default 5). NOT px."),
220
+ fontWeight: z2.number().int().min(100).max(900).optional(),
221
+ color: z2.string().min(1).optional(),
222
+ highlightColor: z2.string().min(1).optional(),
223
+ backgroundColor: z2.string().optional(),
224
+ plate: z2.enum(["glass", "solid", "none"]).optional(),
225
+ position: z2.enum(["top", "center", "bottom"]).optional(),
226
+ textTransform: z2.enum(["none", "uppercase", "capitalize"]).optional(),
227
+ emphasisColor: z2.string().optional(),
228
+ emphasisGradient: z2.string().optional(),
229
+ emphasisScale: z2.number().positive().optional(),
230
+ emphasisFontFamily: z2.string().optional(),
231
+ emphasisFontWeight: z2.number().int().min(100).max(900).optional(),
232
+ emphasisTextTransform: z2.enum(["none", "uppercase", "capitalize"]).optional(),
233
+ emphasisLetterSpacing: z2.number().optional(),
234
+ emphasisFontStyle: z2.enum(["normal", "italic"]).optional(),
235
+ entrance: z2.enum(["none", "fade", "word-pop", "stagger-up"]).optional(),
236
+ entranceMs: z2.number().nonnegative().optional(),
237
+ entranceStaggerMs: z2.number().nonnegative().optional(),
238
+ exitMs: z2.number().nonnegative().optional(),
239
+ emphasisPlate: z2.boolean().optional(),
240
+ emphasisPlateColor: z2.string().optional(),
241
+ emphasisPlateTextColor: z2.string().optional(),
242
+ emphasisPlateAltColor: z2.string().optional(),
243
+ emphasisPlateAltTextColor: z2.string().optional(),
244
+ emphasisPlateRadius: z2.number().nonnegative().optional(),
245
+ emphasisPlatePadX: z2.number().optional(),
246
+ emphasisPlatePadY: z2.number().optional(),
247
+ annotationColor: z2.string().optional(),
248
+ maxWidthPercent: z2.number().positive().max(100, "captions style.maxWidthPercent is % of composition width (max 100)").optional()
249
+ });
250
+ var CaptionSegment = z2.object({
251
+ words: z2.array(CaptionWord)
252
+ });
253
+ var CaptionDepth = z2.enum(["front", "behind-subject"]).optional();
254
+ var CompositionCaptions = z2.discriminatedUnion("source", [
255
+ z2.object({
256
+ source: z2.literal("derived"),
257
+ from: z2.object({ clipId: z2.string() }),
258
+ segments: z2.array(CaptionSegment),
259
+ style: CaptionStyle.optional(),
260
+ zPlane: CaptionDepth
261
+ }),
262
+ z2.object({
263
+ source: z2.literal("authored"),
264
+ segments: z2.array(CaptionSegment),
265
+ style: CaptionStyle.optional(),
266
+ zPlane: CaptionDepth
267
+ })
268
+ ]);
269
+ function captionsAreBehindSubject(captions) {
270
+ return captions?.zPlane === "behind-subject";
271
+ }
272
+ function captionWords(c) {
273
+ return c.segments.flatMap((s) => s.words);
274
+ }
275
+ var Composition = z2.object({
276
+ v: z2.literal(1, {
277
+ error: (issue) => issue.input === void 0 ? 'Missing version envelope: add top-level "v": 1 to the composition.' : `Invalid version envelope: top-level "v" must be the literal 1 (got ${JSON.stringify(issue.input)}).`
278
+ }),
279
+ format: Format,
280
+ tracks: z2.array(Track),
281
+ markers: z2.array(Marker).optional(),
282
+ captions: CompositionCaptions.optional(),
283
+ sourceSuggestionId: z2.string().optional(),
284
+ license: LicenseDeclaration.optional(),
285
+ licenseVerification: z2.enum([
286
+ "attested",
287
+ "cueframe-verified",
288
+ "third-party-verified"
289
+ ]).optional(),
290
+ accessibility: CompositionAccessibility.optional(),
291
+ ownerOrgId: z2.string().optional(),
292
+ acl: AccessControl.optional()
293
+ }).strict();
294
+ var CompositionAuthorKind = z2.enum(["user", "agent", "import"]);
295
+ var CompositionVersion = z2.object({
296
+ id: z2.string().min(1),
297
+ compositionId: OpaqueId,
298
+ predecessorId: z2.string().optional(),
299
+ createdAt: z2.number(),
300
+ // epoch ms — see CONVEX_ADAPTATIONS.md
301
+ etag: z2.string().min(1),
302
+ authorKind: CompositionAuthorKind,
303
+ // load-bearing for multi-agent lineage
304
+ authorId: z2.string().optional(),
305
+ // userId for 'user', agentId for 'agent', source for 'import'
306
+ composition: Composition
307
+ });
308
+
309
+ // ../composition/src/graphics-plan/schemas.ts
310
+ import { z as z3 } from "zod";
311
+ var GRAPHICS_PLAN_VERSION = "gp-1";
312
+ var Version = z3.literal(GRAPHICS_PLAN_VERSION);
313
+ var PlanRect = Region;
314
+ var GraphicRole = z3.enum([
315
+ "title-card",
316
+ // topic-setter / opener card
317
+ "stat",
318
+ // a single headline number + label
319
+ "lower-third",
320
+ // name/title tag over the speaker
321
+ "pull-quote",
322
+ // a short quoted line
323
+ "hero",
324
+ // big behind-subject phrase (zPlane: behind-subject)
325
+ "logo-tag",
326
+ // small brand mark / watermark beat
327
+ "enumeration",
328
+ "sequence",
329
+ // an ordered chain of steps — often the POINT is that it is too long
330
+ "comparison"
331
+ // labelled values set against each other (a benchmark, a before/after)
332
+ ]);
333
+ var Copy = z3.object({
334
+ headline: z3.string().max(120).optional(),
335
+ sub: z3.string().max(200).optional(),
336
+ value: z3.string().max(40).optional(),
337
+ label: z3.string().max(80).optional(),
338
+ items: z3.array(z3.string().max(80)).max(8).optional(),
339
+ series: z3.array(z3.object({ label: z3.string().max(40), value: z3.string().max(16) })).max(8).optional()
340
+ }).strict();
341
+ var ContentBeat = z3.object({
342
+ id: z3.string().min(1),
343
+ atSec: z3.number().min(0),
344
+ durSec: z3.number().positive(),
345
+ role: GraphicRole,
346
+ copy: Copy,
347
+ intent: z3.string().min(1).max(400),
348
+ priority: z3.number().int().min(0).max(10).default(5)
349
+ }).strict();
350
+ var ContentPlan = z3.object({
351
+ version: Version,
352
+ beats: z3.array(ContentBeat)
353
+ }).strict();
354
+ var ElementRole = z3.enum([
355
+ "headline",
356
+ // primary large text
357
+ "value",
358
+ // the stat number / the one word to remember
359
+ "label",
360
+ // supporting text
361
+ "sublabel",
362
+ // secondary supporting text
363
+ "logo",
364
+ // brand mark
365
+ "accent-shape",
366
+ // decorative block/line/underline
367
+ "backdrop"
368
+ // solid fill (takeover cards only)
369
+ ]);
370
+ var StyleRole = z3.enum([
371
+ "heading",
372
+ "body",
373
+ "accent",
374
+ "surface",
375
+ "on-accent",
376
+ "on-surface"
377
+ ]);
378
+ var ZPlane = z3.enum(["front", "behind-subject"]);
379
+ var LayoutElement = z3.object({
380
+ elId: z3.string().min(1),
381
+ role: ElementRole,
382
+ box: PlanRect,
383
+ styleRole: StyleRole,
384
+ z: ZPlane.default("front"),
385
+ text: z3.string().max(200).optional(),
386
+ typeScaleStep: z3.number().int().min(0).max(8).optional()
387
+ }).strict();
388
+ var EPS = 1e-6;
389
+ var rectsOverlapEps = (a, b) => a.x < b.x + b.w - EPS && a.x + a.w > b.x + EPS && a.y < b.y + b.h - EPS && a.y + a.h > b.y + EPS;
390
+ var LayoutPlan = z3.object({
391
+ version: Version,
392
+ beatId: z3.string().min(1),
393
+ frame: z3.object({ w: z3.number().positive(), h: z3.number().positive() }).strict(),
394
+ keepOut: z3.array(PlanRect),
395
+ safe: z3.object({
396
+ titleSafe: z3.number().min(0).max(1),
397
+ actionSafe: z3.number().min(0).max(1)
398
+ }).strict(),
399
+ elements: z3.array(LayoutElement),
400
+ dropped: z3.object({ reason: z3.string().min(1) }).strict().optional()
401
+ }).strict().superRefine((plan, ctx) => {
402
+ for (const el of plan.elements) {
403
+ if (el.z === "behind-subject") continue;
404
+ const b = el.box;
405
+ if (b.x + b.w > 1 + EPS || b.y + b.h > 1 + EPS) {
406
+ ctx.addIssue({ code: z3.ZodIssueCode.custom, message: `element ${el.elId} box spills past the frame`, path: ["elements"] });
407
+ }
408
+ for (const ko of plan.keepOut) {
409
+ if (rectsOverlapEps(b, ko)) {
410
+ ctx.addIssue({ code: z3.ZodIssueCode.custom, message: `element ${el.elId} overlaps a face keep-out (text on the speaker)`, path: ["elements"] });
411
+ }
412
+ }
413
+ }
414
+ });
415
+ var EnterType = z3.enum(["reveal", "fade", "rise", "count-up", "wipe"]);
416
+ var EmphasisType = z3.enum(["pulse", "underline", "color-shift"]);
417
+ var ExitType = z3.enum(["fade", "fall", "wipe", "cut"]);
418
+ var Ease = z3.enum(["spring", "ease-out", "ease-in-out", "linear"]);
419
+ var EnterMotion = z3.object({
420
+ type: EnterType,
421
+ atMs: z3.number().min(0),
422
+ durMs: z3.number().positive(),
423
+ ease: Ease.default("spring"),
424
+ stagger: z3.number().min(0).optional()
425
+ }).strict();
426
+ var EmphasisMotion = z3.object({ type: EmphasisType, atMs: z3.number().min(0), durMs: z3.number().positive() }).strict();
427
+ var ExitMotion = z3.object({ type: ExitType, atMs: z3.number().min(0), durMs: z3.number().positive() }).strict();
428
+ var MotionElement = z3.object({
429
+ elId: z3.string().min(1),
430
+ enter: EnterMotion,
431
+ emphasis: EmphasisMotion.optional(),
432
+ exit: ExitMotion.optional()
433
+ }).strict();
434
+ var MotionPlan = z3.object({
435
+ version: Version,
436
+ beatId: z3.string().min(1),
437
+ elements: z3.array(MotionElement)
438
+ }).strict();
439
+ var GraphicsPlan = z3.object({
440
+ version: Version,
441
+ content: ContentPlan,
442
+ layouts: z3.array(LayoutPlan),
443
+ motions: z3.array(MotionPlan)
444
+ }).strict();
445
+
446
+ export {
447
+ OpaqueId,
448
+ Format,
449
+ MediaClipSource,
450
+ ComponentClipSource,
451
+ OverlayClipSource,
452
+ EffectClipSource,
453
+ AlphaLayerClipSource,
454
+ CardClipSource,
455
+ CompositionClipSource,
456
+ ClipSource,
457
+ Transition,
458
+ Region,
459
+ ClipFit,
460
+ PerClipEffect,
461
+ KeyframeEasing,
462
+ Keyframe,
463
+ KeyframeChannel,
464
+ ANIMATABLE_PARAMS,
465
+ TimelineClip,
466
+ Gap,
467
+ TrackContent,
468
+ Track,
469
+ Marker,
470
+ CaptionWord,
471
+ CaptionStyle,
472
+ CaptionSegment,
473
+ CompositionCaptions,
474
+ captionsAreBehindSubject,
475
+ captionWords,
476
+ Composition,
477
+ CompositionAuthorKind,
478
+ CompositionVersion,
479
+ GRAPHICS_PLAN_VERSION,
480
+ PlanRect,
481
+ GraphicRole,
482
+ Copy,
483
+ ContentBeat,
484
+ ContentPlan,
485
+ ElementRole,
486
+ StyleRole,
487
+ ZPlane,
488
+ LayoutElement,
489
+ LayoutPlan,
490
+ EnterType,
491
+ EmphasisType,
492
+ ExitType,
493
+ Ease,
494
+ EnterMotion,
495
+ EmphasisMotion,
496
+ ExitMotion,
497
+ MotionElement,
498
+ MotionPlan,
499
+ GraphicsPlan
500
+ };
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  CueframeError,
8
8
  encodeError
9
- } from "./chunk-AW57IWNW.js";
9
+ } from "./chunk-4FOOBSEE.js";
10
10
 
11
11
  // ../composition/src/projection/cardTokens.ts
12
12
  var CARD_MOTION_VAR_NAMES = [
@@ -154,7 +154,10 @@ function overlapsMs(aStartSec, aDurationSec, bStartSec, bDurationSec) {
154
154
  }
155
155
  function tracksOf(composition) {
156
156
  const tracks = composition?.tracks;
157
- return Array.isArray(tracks) ? tracks : [];
157
+ if (!Array.isArray(tracks)) return [];
158
+ return tracks.filter(
159
+ (track) => track.enabled !== false
160
+ );
158
161
  }
159
162
  function clipsOf(track) {
160
163
  const contents = track.contents;
@@ -210,7 +213,7 @@ async function behindReadinessForTarget(target, mattes) {
210
213
  if (!target) return { state: "no-clip" };
211
214
  const key = await matteIntentKey({ ...target.window, subjectClass: "person" });
212
215
  const entry = mattes?.[key];
213
- if (!entry?.geometryR2Key) return { state: "no-matte", target };
216
+ if (!entry?.geometryUrl && !entry?.geometryR2Key) return { state: "no-matte", target };
214
217
  const presenceFraction = entry.presenceFraction ?? 0;
215
218
  if (presenceFraction < MIN_PRESENCE_FOR_BEHIND) {
216
219
  return { state: "no-subject", target, presenceFraction };
@@ -237,7 +240,9 @@ function matteWindowsByMediaId(composition, behindWindows) {
237
240
  const startSec = typeof trim?.start === "number" ? trim.start : 0;
238
241
  const endSec = typeof trim?.end === "number" ? trim.end : startSec + clip.duration;
239
242
  if (endSec <= startSec) continue;
240
- if (!out.has(mediaId)) out.set(mediaId, { startSec, endSec });
243
+ const windows = out.get(mediaId) ?? [];
244
+ windows.push({ clipId: clip.id, startSec, endSec });
245
+ out.set(mediaId, windows);
241
246
  }
242
247
  }
243
248
  return out;